[MSC] De Pitch!

Door Gertjuhjan op donderdag 13 maart 2014 21:12 - Reacties (16)
Categorie: MediaSyncControl, Views: 5.555

In mijn vorige blog heb ik beschreven dat ik bezig was met een ontwikkeling van software. Het doel van de ontwikkeling is het verbeteren van mijn programmeerervaring in nieuwere technieken zoals .NET 4.0/4.5, WPF, WCF en mobiele applicaties.

Pitch

Dat is natuurlijk allemaal leuk en aardig, maar ik heb natuurlijk nog niet verteld waar ik nu mee bezig ben. Het wordt een applicatie die video's kan afspelen. Dat zegt natuurlijk niets, want daar zijn er natuurlijk honderden van. Op de volgende punten wil ik mij gaan onderscheiden:
  • Mediamanagement: De software houdt precies bij welke media je kijkt in je bibliotheek, welke media je al gezien hebt en houdt bij waar je bent gebleven, zodat je gemakkelijk verder kunt kijken waar je gebleven was.
  • Synchroon kijken: Gemakkelijk bekijken van je media, één druk op de knop en verder kijken op je mobiele device en terug naar je pc.
  • Gebruiksgemak: Ik wil een gemakkelijk interface maken die er ook nog mooi uit ziet.
  • Slimme functies: Toon aan de hand van gekeken media welke media op dat moment aan de beurt zijn. Bijvoorbeeld de eerste nieuwe aflevering van een serie of een net toegevoegde film of de openstaande afleveringen.
  • Connectie met online mediadatabase: Ik wil een connectie met een online mediadatabase zoals bijvoorbeeld IMDB leggen zodat er direct metadata van media kan worden getoond.
  • Missende media: Terugkoppeling van missende media, mochten er nieuwe afleveringen van een serie zijn, of vervolgen op films uitkomen, wordt er direct getoond dat je deze kan bemachtigen
Zelf vind ik met deze lijst een aardige basis heb op een succesvol software programma, er zullen vast nog een hoop open eindes zijn en bepaalde functies zullen vast ook wel in andere videoplayers zitten.

Wat heb ik al?

Ik ben al een paar weken bezig met de ontwikkeling van de software(met grote tussenpozen en naast andere hobbies) en heb al een aantal functionaliteiten werkend.
  • Videoplayer: De videoplayer werkt al, layout van de controls, wordt nog aangepast zoals de iconen en etc, maar de functionaliteit zit er al in.https://dl.dropboxusercontent.com/u/23271365/MediaSyncControl/v%200.1/Mediaplayer.png
  • Toevoegen van media: Het is mogelijk om media toe te voegen en op te slaan in de database.https://dl.dropboxusercontent.com/u/23271365/MediaSyncControl/v%200.1/AddMedia.png
  • Bijhouden van status: De status van de serie wordt automatisch bij gehouden. De software detecteerd en slaat op waar je bent gebleven zodat je later via één druk op de knop verder kan kijken.
  • Media Selecteren: De lijst met media wordt getoond en het percentage van de media wordt getoond van wat je gekeken hebt. Dit verdient nog niet de schoonheidsprijs en wil hier nog flink aanpassingen aan doen.https://dl.dropboxusercontent.com/u/23271365/MediaSyncControl/v%200.1/EpisodeSelector.png

Aanpassingen op korte termijn

  • Episodeselector: Dit paneel zal een overhaul krijgen met betere layout voor het tonen van media.
  • Fullscreen kijken:Op dit moment is het nog niet mogelijk om fullscreen te kijken
  • Tabbladen: De tabbladen zullen verwijderd worden, er zal aan de rechterkant een menu uitschuiven zodra je met de muis bij de rand komt, hier worden dan opties getoond
  • Database: Ik maak nu gebruik van een sql database. Maar deze staan niet op de standaard pc's geinstalleerd. Dus ik ben aan het kijken of dit de juiste oplossing is en of er betere alternatieven zijn.
  • Disclaimer: Ik ga een disclaimer maken die mij niet verantwoordelijk maakt voor issues die ontstaan bij gebruik van de software.
  • Alpha-Release: Er zal binnenkort een alpha release worden gemaakt, moet nog even kijken of dit voor de database aanpassing of daarna pas gebeurd
  • Code open source maken:
Zaken zoals de mobiele applicaties zijn voor een latere releases. Eerst wil ik de windowsapplicatie goed op orde maken.

Conclusie

Ik hoop dat jullie het een interresant blog vinden en dat jullie met mij meegaan in dit avontuur. Mochten er vragen zijn, dan hoor ik dat natuurlijk graag, mochten je nog ideëen hebben, dan hoor ik dat natuurlijk ook graag.

Volgende: Win een gratis 3d-printer! 08-'15 Win een gratis 3d-printer!
Volgende: Schrijven van nieuwe software! 03-'14 Schrijven van nieuwe software!

Reacties


Door Tweakers user TeGek, donderdag 13 maart 2014 23:42

Wat is jouw grote voordeel tegenover de concurrent(b.v. XBMC/Netflix) De meeste functies bestaan al in de tegen hangende producten, albeit soms erg verdeeld(in deel in xbmc, een ander deel in Sickbeard, en ander deel alleen voor netflix).

Door Tweakers user CodeCaster, vrijdag 14 maart 2014 00:04

TeGek schreef op donderdag 13 maart 2014 @ 23:42:
Wat is jouw grote voordeel tegenover de concurrent
Dit. Jij gaat in je eentje niet de gevestigde orde genaamd XMBC omstoten, alleen al om het feit dat in dat product ettelijke manjaren werk zitten.

Als dit een showcaseblog wordt voor je XBMC-killer, bereid je dan maar voor op een horde minder positieve reacties. Zie andere softwareblogs voor voorbeelden.

Het zou interessanter zijn als je in eerste instantie vertelt wát je gaat maken en waarom. Daarnaast is het altijd leuk om te lezen welke technische en functionele problemen je bent tegengekomen tijdens het ontwerpen en implementeren, en hoe je deze hebt opgelost en waarom je voor die manier hebt gekozen. :)

Door Tweakers user Gertjuhjan, vrijdag 14 maart 2014 00:34

Bedankt voor jullie reacties. Ik heb volgens mij nergens geschreven dat ik de gevestigde orde wil omstoten.
Het is voor mij een hobbyproject om mijn programmeerervaring te verbreden en daarnaast zat ik thuis met een probleem die ik wilde tackelen. Ik ben op dit moment constant mijn mappen aan het passen van mijn media zodat ik kan zien wat ik gezien heb en wanneer ik uit moet kijken naar bijvoorbeeld een nieuwe aflevering.

Ik heb nog nooit zelfstandig een project gestart wat ik daadwerkelijk ook anderen ga laten gebruiken. Dus voor mij is het een leertraject. En van jullie reacties kan ik alleen maar ervaring op doen.

Door Tweakers user sfranken, vrijdag 14 maart 2014 02:00

Eh, een media applicatie die Windows only is. Een beetje jammer aangezien XBMC en VLC bijvoorbeeld allemaal multiplatform zijn. Windows heeft z'n langste tijd ook op de desktop wel gehad gok ik zo. Binnen nu en vijf jaar sowieso.

Door Tweakers user i-chat, vrijdag 14 maart 2014 07:17

sfranken schreef op vrijdag 14 maart 2014 @ 02:00:
Eh, een media applicatie die Windows only is. Een beetje jammer aangezien XBMC en VLC bijvoorbeeld allemaal multiplatform zijn. Windows heeft z'n langste tijd ook op de desktop wel gehad gok ik zo. Binnen nu en vijf jaar sowieso.
DAT dus,

hoe wil je de kopeling maken, via de clowd? via lokaal wifi, via een usb kabeltje. en dan nog clients voor tenminste android en ios, waarbij je het dan eigenlijk als plugin in je eigen player moet kunnen laden anders willen mensen dit niet, ik voorzie eigenlijk maar 1 mogelijkheid om dit bruikbaarder te maken en dat is als je er een volwaardige content streaming server van zou maken die zelf data ook op kan hallen uit bijv torrent news groepen en bijv spotify.

des al niet te min ben ik zeer benieuwd naar waarom je juist voor een media speler topassing hebt gekozen als je met .NET code aan de gang wilt.

Door Tweakers user ProAce, vrijdag 14 maart 2014 07:40

Ik vindt het een leuk project d:)b

Dit zijn nou net de problemen waar ik altijd mee zit, en de functies die ik er graag in wil hebben :)

Kom maar op met die alpha/beta om te testen.

Door Tweakers user Gertjuhjan, vrijdag 14 maart 2014 07:43

Dank je voor jullie reacties. Zoals ik al eerder heb vermeld, het idee is voort gevloeid uit een probleem dat ik thuis had. Hier draait geen Linux. Zelf ben ik er niet van overtuigd dat de niet-tweakers allemaal over zullen stappen naar Linux, misschien een klein deel naar Apple.
Wel is het altijd mogelijk om te ontwikkelen naar linux d.m.v. het Monoframework/Xamarin. Dit kan ik in de toekomst nog altijd bekijken.

Torrents
Nee, ik ben niet van plan om er een automatisch downloadprogramma van te maken. Dat is een te grijs gebied en heb geen zin in de juridische afwikkeling. De functionaliteit zal zich beperken tot tonen van de media die je nog mist. Dan is het aan de gebruiker zelf te bepalen op welke manier deze dat gaan aanvullen, bijvoorbeeld door het kopen van een dvd-box.

Koppeling naar mobiel
Op dit moment heb ik nog alleen de videoplayer in windows. Deze haalt de data op vanuit mijn NAS die toegevoegd is als netwerkschijf. Ik heb een aantal opties al uit zitten denken, maar hier zal ik in de toekomst nog een blog over uitwijden. Want inderdaad, er zijn nog hier een hoop open eindes. Ga ik streamen, of stuur ik alleen een link met ip-adres en locatie via FTP, of laat ik een server de content streamen vanuit eigen applicatie. Dit heeft voor nu nog geen prioriteit, als ik zo ver ben zal ik hier een blog over schrijven.

Door Tweakers user Gertjuhjan, vrijdag 14 maart 2014 08:07

ProAce schreef op vrijdag 14 maart 2014 @ 07:40:
Ik vindt het een leuk project d:)b

Dit zijn nou net de problemen waar ik altijd mee zit, en de functies die ik er graag in wil hebben :)

Kom maar op met die alpha/beta om te testen.
Dankje ProAce, Positieve reactie is ook altijd leuk om te zien:)

Zodra ik weet hoe ik om ga met databases, zal ik een alpha release hier posten:)

Door Tweakers user Jogai, vrijdag 14 maart 2014 09:03

In plaats van WCF zou ik kijken of je web API kan inzetten. WCF is nogal veel configuratie etc terwijl web api makkelijker is, en zeker voor externe clients op allerlei platformen. Zie ook: http://www.dotnetrocks.com/default.aspx?showNum=942
Database: SQL compact is heel simpel bij te leveren: http://www.microsoft.com/...oad/details.aspx?id=17876
Of sql lite, werkt ook prima en is makkelijk mee te leveren. Dat is dan weer makkelijker op meerdere platformen in te zetten.

Door Tweakers user Gertjuhjan, vrijdag 14 maart 2014 09:16

Via webapi zou inderdaad ook een oplossing zijn. Maar vooral voor mijn ervaring met WCF wil ik graag gebruik maken van WCF.

SQL Lite en Compact zal ik naar kijken. Hartelijk dank:)

Door Tweakers user FlowinG, vrijdag 14 maart 2014 11:14

Leuk! Altijd erg leerzaam om dit soort projecten uit te voeren!

Ik kan erg aanraden om eens in de code base van Media Portal (http://www.team-mediaportal.com/) te kijken. Die applicatie is ook volledig .NET.

Wat betreft databases, voor zo'n applicatie is een document DB meer geschikt dan een relationele (SQL) databases. Kijk dan eens naar RavenDB: fantastische en ook volledig .NET. Als alternatief kan je natuurlijk ook naar MongoDB of CouchDB kijken (en er zijn nog meer alternatieven:) ). Succes!

Door Tweakers user Gertjuhjan, vrijdag 14 maart 2014 11:59

Ah bedankt!
Zijn deze databases ook te benaderen via entity framework?
Dit kan ik natuurlijk ook zelf uitzoeken.

[Reactie gewijzigd op vrijdag 14 maart 2014 12:25]


Door Tweakers user thedon46, vrijdag 14 maart 2014 14:50

wat is eigenlijk het verschil met plex?

https://plex.tv/

Door Tweakers user Gertjuhjan, vrijdag 14 maart 2014 14:53

Houdt plex bij wat er al gekeken is en kan je eventueel na afsluiten verder kijken waar je gebleven bent?

Door Tweakers user Ample Energy, vrijdag 14 maart 2014 20:26

Geen idee of Plex dat kan, maar XBMC toch wel? In ieder geval het onthouden waar je gebleven bent. En onthouden wat je al gekeken hebt doe je zelf toch al? :+ Anders kan je het net zo goed opnieuw kijken.

Ik vind het wel een leuk project. Ik ben alleen wel bang dat je het programma uiteindelijk niet gaat gebruiken, omdat codecs en dergelijke blijven veranderen. Neem bijvoorbeeld VLC. Gigantische speler, maar zelfs zij krijgen het niet vaak voor elkaar fatsoenlijk .ape en .cue af te spelen. Zelfs bitstreaming van HD audio wordt niet ondersteund. Dat kan je in de loop van de jaren natuurlijk allemaal inbouwen, maar dan zou ik zelf liever MPC HC downloaden.

Je leert er echter wel een hele berg van natuurlijk. En wij daarmee ook :P

Over de koppeling met mobiele apparaten: aangezien het een eigen ontwikkelde applicatie is die op je eigen NAS draait zou je misschien kunnen denken aan encryptie en VPN en dergelijke? Dat vind ik zelf erg leuke onderwerpen en als ik zelf een hobbyproject om media mee te kunnen afspelen zou starten zou ik daar vooral naar kijken. Maar doe maar wat je leuk vindt natuurlijk, zo blijven de blogs het leukste om te lezen :)

Door Tweakers user thedon46, zaterdag 15 maart 2014 15:40

Gertjuhjan schreef op vrijdag 14 maart 2014 @ 14:53:
[...]


Houdt plex bij wat er al gekeken is en kan je eventueel na afsluiten verder kijken waar je gebleven bent?
ja dat doet plex,

ik kijk vooral plex op mijn telefoon, die weet tot op de seconde nauwkeurig waar ik gebleven was met kijken.
Als ik dan weer thuis ben synchroniseer ik en dan zorgt die weer dat er altijd een x aantal onbekeken afleveringen zijn van een bepaalde serie die ik volg en gooit de bekeken media weer weg

Reageren is niet meer mogelijk