14
Installatie handleiding MMSProxyService Juli 2014 Blad 1 van 14 Inhoudsopgave 1 Inleiding ............................................................................................................................................ 2 2 Installatie MMSproxyService ............................................................................................................ 3 2.1 Systeemvereisten voor MMSProxyService ............................................................................... 3 2.1.1 Operating System ............................................................................................................. 3 2.1.2 Het Microsoft .NET Framework 4.0 .................................................................................. 3 2.1.3 Vrije schijfruimte............................................................................................................... 3 2.2 Installatie .................................................................................................................................. 3 2.3 Controle .................................................................................................................................... 3 2.4 De-installatie ............................................................................................................................. 4 3 GemistvoorNMT toevoegen op de networked media tank.............................................................. 5 3.1 Op de 100 en 200 serie ............................................................................................................. 5 3.2 Op de 300/400 serie ................................................................................................................. 5 4 Instellingen op de website ................................................................................................................ 6 5 Instellingen in configuratie bestand ................................................................................................. 7 6 Achtergrond informatie MMSProxyService ...................................................................................... 9 7 Diverse opmerkingen ........................................................................................................................ 9 7.1 ffmpeg....................................................................................................................................... 9 7.2 M3U8 ........................................................................................................................................ 9 7.3 Logging ...................................................................................................................................... 9 7.4 Internet toegang en netwerk instellingen .............................................................................. 10 7.5 Uitgaande verbindingen ......................................................................................................... 10 7.6 Inkomende verbindingen........................................................................................................ 10 8 Versie historie ................................................................................................................................. 11 MMSProxyService is geschreven door Henk Kelder, email: henk @gemistvoornmt.nl . Dit programma hoort bij de website http://www.gemistvoornmt.nl

Installatie handleiding MMSProxyService

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 1 Blad 1 van 14

Inhoudsopgave

1 Inleiding ............................................................................................................................................ 2

2 Installatie MMSproxyService ............................................................................................................ 3

2.1 Systeemvereisten voor MMSProxyService ............................................................................... 3

2.1.1 Operating System ............................................................................................................. 3

2.1.2 Het Microsoft .NET Framework 4.0 .................................................................................. 3

2.1.3 Vrije schijfruimte............................................................................................................... 3

2.2 Installatie .................................................................................................................................. 3

2.3 Controle .................................................................................................................................... 3

2.4 De-installatie ............................................................................................................................. 4

3 GemistvoorNMT toevoegen op de networked media tank .............................................................. 5

3.1 Op de 100 en 200 serie ............................................................................................................. 5

3.2 Op de 300/400 serie ................................................................................................................. 5

4 Instellingen op de website ................................................................................................................ 6

5 Instellingen in configuratie bestand ................................................................................................. 7

6 Achtergrond informatie MMSProxyService ...................................................................................... 9

7 Diverse opmerkingen ........................................................................................................................ 9

7.1 ffmpeg ....................................................................................................................................... 9

7.2 M3U8 ........................................................................................................................................ 9

7.3 Logging ...................................................................................................................................... 9

7.4 Internet toegang en netwerk instellingen .............................................................................. 10

7.5 Uitgaande verbindingen ......................................................................................................... 10

7.6 Inkomende verbindingen ........................................................................................................ 10

8 Versie historie ................................................................................................................................. 11

MMSProxyService is geschreven door Henk Kelder, email: henk @gemistvoornmt.nl.

Dit programma hoort bij de website http://www.gemistvoornmt.nl

Page 2: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 2 Blad 2 van 14

1 Inleiding

Dit programma maakt onderdeel uit van een mogelijkheid die ik ontwikkeld heb om programma’s van

de verschillende ‘uitzending gemist’ sites te kunnen bekijken op mijn Networked Media Tank.

Netwerkmediatanks zijn mediaservers die ontwikkeld zijn door Syabas. De oplossing geldt voor de

100 en 200 serie en ook voor apparaten die onder een ander merk in licentie zijn gemaakt. Ik noem

de HDX1000, Eminent en andere merken.

Ook voor de nieuwere modellen, de 300 en 400 series werk ik aan een oplossing, al werkt deze

volgens een ander principe dan de oplossing voor de oudere modellen.

Het zijn prima apparaten, maar er zijn beperkingen in hun mogelijkheden. Zo kan de ingebouwde

webbrowser op de 100 en 200 serie geen javascript aan. Op de 300 en 400 series is helemaal geen

browser meer aanwezig.

Ook ondersteunen de apparaten de streaming protocollen zoals HLS, MMS, RTMP of pseudo http

streaming niet of niet in voldoende mate. Dit verschilt bovendien per model.

MMSProxyService is een programma (eigenlijk een windows service) dat ik geschreven heb dat deze

protocollen wel ondersteunt. Als u dit programma op een windows PC in uw thuisnetwerk installeert

wordt het mogelijk om de verschillende programma’s op uw NMT te bekijken. De windows PC waar

MMSProxyService op draait moet aan staan als u programma’ s wilt bekijken op uw NMT.

Als MMSProxyService actief is, meldt dit programma zich periodiek bij de website

www.gemistvoornmt.nl. De website ‘weet’ dan dat bij u thuis een actieve versie van de service is.

De website voor 100 en 200 series spelers

Als u www.gemistvoornmt.nl via uw NMT bezoekt dan herkent de site dat u dat doet vanaf uw NMT.

Als de site dan ook nog ‘weet’ dat u een actieve MMSProxyService thuis heeft, dan worden de links

naar programma’s automatisch zo samengesteld dat uw NMT de programma’s die de NMT niet zelf

kan afhandelen niet bij de omroepen probeert op te halen, maar aan MMSProxyService ‘vraagt’ dit te

doen. Vervolgens wordt het programma stream via http gedownload naar de NMT toe.

Verder in dit document lees u hoe www.gemistvoornmt.nl op uw NMT ingesteld kan worden.

De app voor 300/400 serie

Om GemistvoorNMT op uw 300/400 serie te gebruiken installeert u de App vanaf de App Market. De

App Market vind u in het menu van uw mediaspeler.

De 300 serie ondersteunt de meeste protocollen zoals MMS, Streaming over http, RTMP wel.

MMSProxyService is in principe hier dan ook niet bij nodig, maar als u MMSProxyService wel

installeert (of al geïnstalleerd heeft) kan de App hier wel gebruik van maken!

Page 3: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 3 Blad 3 van 14

2 Installatie MMSproxyService

2.1 Systeemvereisten voor MMSProxyService

2.1.1 Operating System

Eén van de volgende operating systemen:

Windows XP

Windows Vista

Windows 7

Windows Server 2003

Windows Server 2008

2.1.2 Het Microsoft .NET Framework 4.0

MMSProxyService is geschreven in Microsoft.NET versie 4.0. Dit framework wordt automatisch

geinstalleerd tijdens de installatie van MMSProxyService.

Controleer na installatie, als het niet werkt, de applicatielog onder systeembeheer.

Foutmeldingen kunnen duiden op een onjuiste installatie van .NET.

2.1.3 Vrije schijfruimte

MMSProxyService maakt tijdens het werken tijdelijke bestanden aan in de TMP folder. Deze worden

per stream die bekeken wordt maximaal 512 Mb. Zodra er niet meer naar een stream wordt gekeken

wordt het bestand weer verwijderd. Deze locatie is in het configuratiebestand te wijzigen.

2.2 Installatie

De-installeer een eventueel eerder geïnstalleerde versie.

Voer SetupMMSProxyService.msi uit. (Deze is te downloaden op

http://www.gemistvoornmt.nl/setupmmsproxyservice.msi)

Onder Windows Vista en Windows 7 kan net nodig zijn UAC tijdelijk uit te schakelen.

MMSProxyService zou tijdens de installatie automatisch gestart moeten worden, maar dat

gebeurt niet altijd. Vooral bij een upgrade is het soms nodig de service met de hand te

starten. In het Start menu is – na installatie – hiervoor een optie aanwezig.

Tijdens de installatie wordt deze handleiding ook in c:\program files\mmsproxyservice

geplaatst.

2.3 Controle

Controleer of alles werkt. Start op de PC je favoriete browser en ga naar

http://www.gemistvoornmt.nl/NoMMSProxy.aspx. Je ziet nu gegevens over de installatie van

MMSProxyService. Als het goed is ziet u zoiets als:

Page 4: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 4 Blad 4 van 14

Dit betekent dat alles goed geïnstalleerd is en werkt. Zie je geen groene checkmark dan kan de

firewall op de PC waar MMSProxyService op geïnstalleerd is dwarsliggen. De firewall moet in- en

uitgaand verkeer voor deze service toestaan.

2.4 De-installatie

Kies ‘Uninstall MMSProxyService’ uit het Start menu OF:

Verwijder de service via de ‘software’ control panel toepassing van Windows (ook wel bvgenoemd:

Programma’s installeren of verwijderen’).

Page 5: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 5 Blad 5 van 14

3 GemistvoorNMT toevoegen op de networked media tank

3.1 Op de 100 en 200 serie

Voeg op je NMT bij webservices “Uitzending Gemist” toe. Url is : http://www.gemistvoornmt.nl .

Start de webservice op :

Klik op MMSProxy in het menu. Je moet nu – net als op de pc - weer je gegevens over je proxy zien.

Als er een groen checkmark staat is alles goed ingesteld. Zo niet, dan zul je je netwerk na moeten

kijken : bijv. zit de NMT op een ander subnet dan de PC met de proxy. Ook kan de firewall op de

MMSProxyService PC dwarsliggen. De firewall moet in- en uitgaand verkeer voor deze service

toestaan.

N.B.. Voor PCH-C200/A200 moet je bij instellingen de MMSProxy altijd gebruiken aanvinken!

Je kunt nu uitzending gemist van de publieke én commerciële omroepen bekijken. Misschien ten

overvloede: Je PC moet aanstaan tijdens het kijken.

3.2 Op de 300/400 serie

Op deze modellen kan gebruik worden gemaakt van de APP. Deze installeer je via de App Market op

je speler.

Op de 300/400 serie is het niet simpel mogelijk te controleren of MMSProxyService bereikbaar is

vanaf de speler. Als e.e.a. niet werkt is dat natuurlijk een indicatie. Ook kan je de logbestanden

controleren die MMSProxyService schrijft. Deze logbestanden worden later in dit document

toegelicht.

Page 6: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 6 Blad 6 van 14

4 Instellingen op de website

Op http://www.gemistvoornmt.nl/Settings.aspx kunnen er verschillende zaken worden ingesteld.

Wat precies wisselt. Op de site zelf is de informatie het meest actueel.

Ga naar http://www.gemistvoornmt.nl/app.

Page 7: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 7 Blad 7 van 14

5 Instellingen in configuratie bestand

In het bestand MMSProxyService.exe.config zijn een paar instellingen opgenomen die het gedrag van

de service wat kunnen beïnvloeden. Je vindt dit bestand in de folder waar MMSProxyService is

geinstalleerd (meestal C:\Program Files\MMSproxyService).

Het bestand heeft de volgende indeling:

<?xml version="1.0"?>

<configuration>

<appSettings>

<add key="sleutelnaam" value="waardenaam"/>

</appSettings>

<startup>

Het gaat om de regels met <add key… > hier kunnen meerdere regels van bestaan. De volgende

sleutelnamen bestaan nu:

sleutelnaam Mogelijk waarden

Registerurl De url waar de service zich bij moet aanmelden. Eventueel

meerdere urls gescheiden door puntkomma.

Standaardwaarde:

http://www.gemistvoornmt.nl/registerMMSProxy.aspx

OrphanedDownloadsSecs De tijd dat een download doorloopt als er geen afnemers

meer zijn. Default 45 seconden.

MaxChacheMB De maximale grootte in Mb van een ge’cache’de stream.

Per stream wordt een cache-bestand aangemaakt in de

TMP map. Zodra een dergelijk bestand groter wordt en er

is maar één afnemer, dan wordt het bestand weer in

grootte terug gezet naar 0 bytes.

Standaard waarde : 512.

KeepDownloadedFiles Optioneel. Indien aanwezig moet het ‘True’ of ‘False’ zijn.

Bepaalt of een programma bewaard blijft in de TMP map.

Heeft alleen zin als je weet wat je doet.

TempDir Optioneel. Een eventuele waarde moet een map zijn waar

tijdelijke bestanden opgeslagen kunnen worden.

Bijvoorbeeld: D:\TEMP.

Page 8: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 8 Blad 8 van 14

ServeIPs Optioneel. Bevat één of meer ipadressen gescheiden door

puntcomma. B.v. “1.0.0.0;1.0.0.1”.

Maakt het mogelijk als je wil dat MMSProxyService andere

WAN ipadressen bedient. Dit betekent dat

MMSProxyService vanaf de opgegeven ipadressen

bereikbaar moet zijn. Voor meer informatie hierover mail

me.

UseAsynchroneSockets True of False. Default is False.

Hiermee kan je instellen dat je liever gebruik worden

gemaakt van Synchrone Sockets ipv ASynchone. Het gaat

hier om de dataverbinding met de PCH.

In theorie wordt hiermee de data efficienter afgeleverd bij

de speler, maar bij sommige gebruikers breken de

programma’s hierdoor vroegtijdig af.

SendTimeout De optie is alleen relevant als je geen gebruik maakt van

Synchrone sockets en bepaalt hoelang de service probeert

een datapakket naar de speler te sturen. Defaultwaarde =

120 seconden.

Regulier kan het voorkomen dat een speler soms even

blokkeert en een tijd geen gegevens accepteert terwijl de

connectie niet verbroken wordt. Bij de C-300 zie ik dat

soms gebeuren. Deze instelling is om te voorkomen dat de

service eindeloos blijft wachten.

N.B. Deze parameter vervangt MaxSendEfforts uit eerdere

versies.

Page 9: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 9 Blad 9 van 14

6 Achtergrond informatie MMSProxyService

Na installatie is er op de computer een nieuwe service aanwezig met de naam ‘MMSProxyService’.

Deze service is, als het goed is, tijdens de installatie gestart en zal voortaan bij opstarten van de PC

automatisch gestart worden.

Mogelijk is dat ongewenst. In dat geval is het mogelijk om via systeembeheer in te stellen dat de

service handmatig gestart moet worden en moet je telkens, voor er gebruik van de service wordt

gemaakt, ‘StartService.cmd’ uit het startmenu uitvoeren (Kan ook doorbij ‘Uitvoeren’ het

commando ‘net start mmsproxyservice’ in te geven.).

Zodra de service start bepaalt hij een vrije port en maakt hij zichzelf bij de website

www.gemistvoornmt.nl bekend. Deze website ‘weet’ dan twee dingen:

Het WAN IP-adres. Dat is het IP adres zoals de buitenwereld de pc’s op uw locale netwerk ziet

en dat je van je Internet provider ‘krijgt’.

Het LAN IP-adres van de computer waarop de service draait. Dit is het unieke adres van de

windows computer op uw lokale netwerk.

Zodra de website vanaf je WAN IP-adres een request binnen krijgt, controleert de website of er voor

dit IP-adres een MMSProxyService bekend is. Zo ja, dan worden alle links zo opgebouwd dat, als je

klikt op zo’n link, het verzoek naar de MMSProxyService wordt gestuurd en die gaat op zijn beurt de

stream openen.

Voor de App geldt ongeveer hetzelfde maar daar is geen sprake van een website maar van een lijst

met uitzendingen die via de App zichtbaar worden.

7 Diverse opmerkingen

7.1 ffmpeg

Sinds versie 1.3.0 maakt MMSProxyService gebruik van ffmpeg voor RTMP streaming. Dit programma

wordt ongewijzigd gebruikt.

7.2 M3U8

Sinds versie 1.4.0 kan MMSProxyService ook overweg met HLS of M3U8 adaptive steaming playlists.

Omdat de aanname is dat MMSProxyService in de thuissituatie wordt gebruikt selecteert

MMSProxyService de stream met de beste kwaliteit.

Sinds versie 1.5.0 kan MMSProxyService ook met AES-128 encrypted streams overweg.

7.3 Logging

De service schrijft logbestanden in de map, waarin hij is geplaatst. Deze bestanden zijn bedoeld om

in geval van problemen te kunnen assisteren. Voor elke dag in de week wordt een bestand gemaakt

en na 7 dagen worden bestanden dus weer overschreven.

Page 10: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 10 Blad 10 van 14

Deze logbestanden hebben als naam: MMSProxyService.exe naam-van-de-dag.log . Bijvoorbeeld:

MMSProxyService.exe Monday.log

7.4 Internet toegang en netwerk instellingen

In de meeste gevallen zijn geen bijzondere instellingen nodig. Dit onderdeel is slechts als achtergrond

informatie.

7.5 Uitgaande verbindingen

Zodra de service start maakt hij zich bekend bij de website www.gemistvoornmt.nl. Dit gebeurt via

een normale webpagina aanroep over poort 80 (http request).

Vervolgens wordt dit elke acht uur herhaald zodat de website ‘weet’ dat de service nog in actief is.

Zodra de service wordt gestopt meldt deze zich weer via een normale webpagina aanroep af bij de

website. De website geeft hierna weer de melding dat er een hulpprogramma nodig is.

De service benadert de uitzendingen bij de omroepen via http://, via mms:// en soms via rtmp://.

http gaat via tcp port 80 uitgaand

mms gaat via tcp port 1755 uitgaand

rtmp gaat via tcp port 1935 uitgaand

Zorg ervoor dat de poorten niet geblokkeerd worden door firewalls of andere instellingen.

7.6 Inkomende verbindingen

MMSProxyService opent de eerste vrije poort tussen de 81 en 200 en gebruikt deze poort om te

‘luisteren’ naar een inkomend verzoek van de Network Media Tank of mogelijk een Internet browser.

Deze poort hoeft niet benaderbaar te zijn vanaf het Internet, maar wel vanaf het locale netwerk.

MMSProxyService maakt sinds versie 1.1.5 zelf een uitzondering aan voor de Windows Firewall zodat

de port vanaf andere computers bereikbaar is, maar doet dit niet voor andere firewall software.

Zorg er dus voor dat andere beveiligingssoftware (Norton, Symantec e.d.) toegang tot deze poorten

niet blokkeert. Dit is vaak het probleem waardoor het niet werkt.

In de Eventviewer –> Application log meldt MMSProxyService welke poort er gebruikt wordt. Dit

staat ook in het logbestand. Zie eerder, paragraaf ‘Logging’.

Page 11: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 11 Blad 11 van 14

8 Versie historie

Initiële versie

Poort 80 wordt niet meer gebruikt om problemen met IIS te voorkomen

Handshaking ingebouwd om zeker te weten dat registratie plaatsgevonden heeft.

MMSProxyservice geeft nu zijn lan ip adres door via een querystring i.p.v. een http header.

Wat foutjes rondom de logging van het aanmelden opgelost.

Extra logging ingebouwd tbv opsporen van fouten.

Socket send routine meer robuust gemaakt en afhandeling voor situaties dat de sendbuffers

vol zijn.

Soms registreerde de service zichzelf met een IPv6 ipadres ipv met een IPv4.

MMSProxyService kan zich nu bij meerdere websites registreren

Logging opnieuw aangepast

Fout opgelost die in sommige omstandigheden kan leiden tot het stoppen van de

videostream.

Ingebouwd dat mmsh:// wordt herkend als mms over http.

Aantal wijzigingen mbt parsen van een MMSH stream.

Kleine wijziging i.v.m. Popcornhour C200 waarop het nog steeds niet werkt.

Frequentie waarmee de service zich meldt bij website teruggebracht naar 8 uur, terwijl

registratie 24 uur geldig blijft.

http HEAD Request aangepast zodat de (theoretisch grootte) wordt teruggemeld in de

Content-Length header. Dit omdat gebleken is dat de C200 dit HEAD request soms gebruikt.

Ondersteuning ingebouwd voor Range: bytes=xxxx-xxxx ingebouw header requests omdat de

C-200 hiervan nogal heftig gebruik maakt;

Na nieuwe firmware voor C-200 op 8 januari 2010 werkt MMSproxy niet meer. Deze versie

bevat een iets gewijzigde reactie op een http Head request in de hoop dat het hiermee beter

gaat.

Minutieus de reacties van MMSProxyService gelijk gemaakt aan de reacties van Internet

Information Services 5.0 bij download van een .WMV bestand. Immers, als de C-200 een

bestand via IIS wil afspelen, moet het toch ook lukken via MMSproxyService? .. hoop ik

Gebleken is dat deze versie inderdaad werkt met de Popcornhour C-200.

Logica toegevoegd zodat de website op de MMSProxy pagina een groene checkmark kan

laten zien als MMSProxy te benaderen is.

Stream selectie & partiële header bloks afhandeling ingebouwd.. (Waarmee tweedekamer

streams mogelijk moeten zijn)

Diverse wijzigingen. Meest in het oog springende is dat streams op de harde schijf gecached

worden. Dit zou het mogelijk moeten maken om ook op de C-200 live streams te bekijken.

1.1.2 Verschillende parameters instelbaar gemaakt;

Content-Transfer=Chunked mogelijk gemaakt bij MMSH

Fouten in versie 1.1.0 en 1.1.1 opgelost die allemaal te maken hadden met C-200 werking.

1.1.3 De frequentie waarmee MMSProxyService zichzelf bij de website aanmeldt teruggebracht.

1.1.4 In mijn pogingen een efficiëntere streamselectie te doen had ik ingebouwd dat de MMS

afhandeling probeert bij elke stream een taal te zoeken. Bij sommige streams van de publieke

Page 12: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 12 Blad 12 van 14

omroepen blijkt er geen taalinfo te zijn in de ASF data. MMSProxyService gaf hier vervolgens

een fout en de stream wilde niet afspelen Afhandeling zo aangepast dat MMSProxyService

controleert of er taalinfo is voor dat hij probeert er gebruik van te maken.

1.1.5 MMSProxyService maakt nu zelf een uitzondering aan voor de windows firewall.

MMSProxyService schijft foutmeldingen nu eerst in zijn eigen logbestand voor hij probeert ze

in de Application Log te schrijven.

1.1.6 Gewijzigde installer

1.1.7 Een ‘foutje’ hersteld waarbij de url’s van de live streams van de NOS van de olympische

spelen niet goed werden herkend.

1.1.8 ‘Fout’ verwijderd uit config bestand wat maakte dat MMSProxyService zich ook probeerde te

registreren bij mijn locale test webserver.. oops;

KeepDownloadedFiles config setting toegevoegd..

1.1.9 Ondersteuning voor .wvx bestanden toegevoegd in verband met gewijzigde afhandeling bij

RTL.

1.1.10 Het aanmaken van een firewall uitzondering heb ik verplaatst naar een andere plek in de code

zodat als het de eerste keer mislukt de service het nogmaals probeert.

1.1.11 De bepaling van het ‘primaire ip-adres’ ging niet altijd goed. De routine die dit doet heb ik

aangepast zodat ook naar de default gateway wordt gekeken.

1.1.12 De in de vorige versie aangepaste routine voor IP adres bepaling ging helaas niet altijd goed.

In gevallen waarbij IPv6 geinstalleerd is gaat het soms mis.. Deze versie doet dat beter.

1.2.1 In deze versie is een eerste poging ingebouwd om .mp4 bestanden af te handelen. Dit is

voornamelijk bedoeld voor de –DRM loze - mp4’s die RTL aanbiedt.

1.2.2 In deze versie is de http streaming voor MP4 wat robuuster gemaakt en zijn de interne buffers

wat vergroot.

1.2.3 Bij het MMSH protocol (MMS over http) bij de aanvraag naar een MMS server de instructie

opgenomen met 15-voudige snelheid te streamen. De server doet dat niet – waarde is te

hoog – maar komt wel met een hogere waarde.. (hoop ik) waardoor mogelijk op de C-200 e.d.

het programma eerder begint met spelen.

1.2.4 Verschillende wijzigingen aan het installatieprogramma:

Installatie kan nu ook een upgrade

Automatisch starten service na installed

MMSProxyService probeert - in geval van MMS - nu altijd eerst of streamen via MMSH

mogelijk is, voor MMS geprobeerd wordt.

1.2.5. Upgrade installatie bleek toch geen goed plan.. Te grote kans op fouten

MP4 afhandeling verder aangepast zodat ‘Resume on bookmark’ en ook navigeren (vooruit,

achteruit, spring naar %) werkt.

1.2.6 Opnieuw een wijziging voor het bepalen van het ‘eigen’ ip adres. MMSProxyService maakt nu

even een verbinding met de website waar hij zich wil registreren en kijkt dan even met welk

lokaal ip adres die connectie is opgezet.

1.2.7 De manier is aangepast hoe voor de Windows firewall op Vista en Windows 7 een

uitzondering wordt aangemaakt. Nu wordt slechts één rule aangemaakt;

Opnieuw de manier van lokaal ip-adres detectie aangepast. In de huidige variant wordt ip-

adres 127.0.0.1 expliciet uitgesloten.

Page 13: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 13 Blad 13 van 14

1.2.8 Verwijzingen naar www.microchange.nl vervangen door verwijzingen naar

www.gemistvoornmt.nl.

1.3.0 RTMP ondersteuning toegevoegd.

Mogelijkheid toegevoegd TMP files op een andere plek op te slaan.

De installatie wordt niet meer als zip-bestand, maar als msi-bestand op de website gezet.

1.3.1 Mogelijkheid toegevoegd dat MMSProxyService andere dat het default WAN ipadres bedient.

Zie ServeIPs in configuratie paragraaf.

1.3.2 Kleine aanpassing in wijze van versturen van de datastream

1.3.3 Fout gecorrigeerd in de afhandeling van out-of-buffer situatie.

1.3.4 Streaming nog verder gedebugged.

Bugs opgelost waardoor de uitzending halvewege stopte. (op het moment dat

MMSproxyService de stream helemaal verzonden dacht te hebben, maar er nog data in

sendbuffers zat)

Optie ingebouwd te kunnen wisselen naar Synchrone Sockets.

1.3.5 Ingebouwd dat een RTMP link ook zonder & in de URL goed wordt afgehandeld. Dit is nodig

voor de afhandeling van Nickelodeon.

1.3.6 Logica ingebouwd die maximaal één lopende verbinding naar een gegeven apparaat toestaat.

Dit is bedoeld om effectiever te kunnen streamen.

1.3.7 De defaultwaarde van OrphanedDownloadSecs verhoogd naar 45 seconden;

De defaultwaarde van UseAsychroneSockets naar is nu voortaan False. Kreeg toch teveel

‘klachten’.

Een kleine aanpassing gedaan op de manier hoe de video wordt aangeboden aan de NMT

nadat MMSProxyService zelf de video al helemaal binnen had. MMSProxy wachtte in dat

geval na elk datablock 50 milliseconden voor het volgende blok verstuurd werd. Na wat

rekenwerk kwam ik erachter dat die factor te hoog is waardoor de video op het einde kan

gaan horten en stoten..

Sinds de vorige release (1.3.6.) werden de logfiles op de verkeerde plek geschreven. Dat heb

ik aangepast.

1.3.8 Via MMSProxy gestreamde Nickelodeon afleveringen braken na 1 minuut af. Gefixed. Dit gold

overigens alleen voor streams via RTMP. GemistvoorNMT.nl biedt de Nickelodeon

tegenwoordig via MP4 over http aan.

1.4.0 In deze versie heb ik indersteuning voor adaptive streaming via een M3U8 playlist ingebouwd.

Vooralsnog experimenteel.

1.4.3 Wat kleine aanpassingen in het M3U8 mechanisme,

Een aanpassing in de streaming voor NMT’s vanaf de 200 serie: Er wordt een timeout van

1000ms seconden gezet op het verzenden van INFO. (socket.SendTimeout = 1000)

1.4.4 De in de vorige wijziging gezette timeout van 1 seconde blijkt toch te kort. De streams spelen

niet door op de C-300. Gewijzigd naar 30 seconden.

1.4.5 Voor het ophalen van een stream en het doorsturen van een stroom naar de mediaspeler

worden nu twee apart threads gebruikt. Veel tijd besteed aan testen en zorgen dat de

streams zowel stabiel op 100 serie als op 300 serie zijn.

1.4.6 Youtube ondersteuning ingebouwd.

1.4.7 Een kleine aanpassing in de interne verwerking .

1.4.8 Youtube werkte niet meer. (&signature query parm toegevoegd)

Page 14: Installatie handleiding MMSProxyService

Installatie handleiding MMSProxyService

Juli 2014 Pagina 14 Blad 14 van 14

1.4.9 Fout hersteld in versie 1.4.8 waardoor de aanpassing uit 1.4.7 niet meer werkte. Stupid me.

1.4.10 De parameters MaxRetries gewijzigd in SendTimout. Met de nieuwe parameter wordt een

tijdspanne ingesteld in plaats van een aantal retries.

Fout uit HLS (M3U8) afhandeling opgelost.

1.4.11 RTMP streaming uitgebreid zodat MTV ook afgehandeld kan worden.

1.4.12 MTV blijkt niet alleen RTMP te doen, maar ook RTMPE en andere varianten. Deze zijn nu ook

in versie 1.4.12 opgenomen.

1.4.13 In versie 1.4.12 was een nieuwe versie van FFMPEG opgenomen. Deze werd onjuist

aangestuurd waardoor RTMP niet (altijd) werkte.

1.5.0 Deze ondersteunt HLS streams (M3U8) die met AES-128 geëncrypt zijn.

1.5.1 Deze versie kan echte HLS live streams aan. Versie 1.5.0 en eerder stopte na een paar

seconden bij live steams.

1.6.0 De afhandeling voor HLS wat verfijnd;

Mogelijk gemaakt de programma’s van de NPO via MMSProxyService kunnen worden

bekeken. Het gaat specifiek om streams met extentie .m4v.

Fout verwijderd waardoor resetten van tijdelijke buffer niet goed werkt. Vooral bij livestream

kijken van belang

1.6.1 Afhandeling voor (live)streaming via HLS (=m3u8) verder aangescherpt. Live TV werkt nu op

zowel mijn oude PCH 110 en een C-300 met forum firmware van 27 september 2013. Ook

NPO en RTL kunnen via HLS op de PCH110 gestreamd worden.

1.6.2 Een bug hersteld die kon optreden als een RTMP stream geen data opleverde.

MMSProxyService weigerde na zo’n mislukte poging alle verzoeken tot de service opnieuw

gestart werd.