Home Streaming Audio Netwerk Streamingsystemen – orde in de chaos!

Streamingsystemen – orde in de chaos!

46
Streamingsystemen – orde in de chaos!

Inleiding

Inhoud

Wie zoekt naar welke streamingsystemen (protocollen) er allemaal zijn, zal binnen tien minuten hoofdpijn krijgen. Er is namelijk heel erg veel… zo lijkt. Maar weet dat veel ‘custom’ systemen een afgeleide zijn van een andere, bestaande techniek. Wij zetten alle grote, relevante streaming protocollen voor u op een rijtje. Zo weet u ook direct welk systeem bij u past. En waar u dus wellicht op kunt focussen. 

UPnP, DLNA, ROON, OpenHome, Diretta, LMS…Chromecast, Airplay… wat een chaos! En dan heb je nog ‘super-software’ die beter moet klinken. Denk aan Audirvana, JPlay (zowel server als player), Foobar met speciale plugins of natuurlijk Jriver. We kunnen ons goed voorstellen dat u compleet de weg kwijt bent.

De basis

De basis van streaming ligt in een paar dingen:

  • Spelers, servers en controlers (afstandsbedieningen) vinden
  • Spelers en servers stabiel verbinden
  • Controlers in de gaten houden voor opdrachten
  • Data gecontroleerd en stabiel van server naar speler krijgen
  • Spelerprogressie goed bijhouden

Nu is dit vrij kort door de bocht en speelt er op de achtergrond nog veel meer. Denk aan controles van datastreams, protocollen voor datacorrectie, buffering, etc. Maar dat is voor u niet zo heel boeiend. Onder aan de streep gaat het erom dat u muziek kunt spelen, toch?

46 REACTIES

  1. Ligt het aan mij of is het gebruik van Roon overbodig? Tenminste ik gebruik Minimserver voor het indexeren van de muziekbestanden op de NAS in combinatie met Bubble uPnP server (draait ook op de NAS). Als controller gebruik ik de Linn app op de iPad. Hiermee bedien 2 media renderers, te weten een Primare Pre60 en een Sonos amp 1e generatie. In de controller app van Linn wordt keurig en razendsnel de indexering weergegeven van de Mimimserver.

    Het mooie van de bubbleserver is dat alle muziekbestanden, ongeacht file format of bitrate, kan afspelen op iedere streamer. Kan een streamer bijv. 24 bit niet aan (zoals Sonos) of een file format niet aan (bijv. een APE file), dan zet bubbleserver het bestand razendsnel om naar een WAV file en in een bitrate dat de streamer wel aan kan. Op deze manier kun je dus simpelweg een 24 bit file afspelen op een oude Sonos. Het is zelfs mogelijk om multichannel bestanden te downmixen naar stereo.

    Ook kun je de Qobuz streamingsdienst gebruiken in de hoogste mogelijk audiokwaliteit (bitrate en sample rate). Per renderer kun je eventueel instellen welke bitrate of sampler rate de streamer maximaal aan kan. Dit is erg handig bij Sonos. Want je hoeft dan nergens op te letten. Wil je een 24 bit/192kHz van Qobuz afspelen op Sonos dan wordt het bestand simpelweg omgezet naar een WAV file 16 bit/48kHZ (wat namelijk de max is bij Sonos). De onboard streamer van mijn Primare Pre60 kan alles en staat dus op maximale bit- en sample rate.

    Anyway, eerlijk gezegd snap ik het gebruik van Roon dus niet goed. In feite doet de combinatie Minimserver, Bubbleserver en de Linn controller app exact hetzelfde als Roon. Maar tegen een fractie van de kosten. Daarbij is de Bubbleserver gebruikersvriendelijker en trekt het geen zware wissel op hardware resources. Zowel Minimserver als Bubbleserver zijn makkelijk te draaien op mindere krachtige of oude NAS systemen. Bij mij werkt het althans ronduit perfect.

    Mijn enige kosten zijn de licentiekosten van Minimserver. In het eerste jaar zijn de licentiekosten 28 GBP (Engelse pond) en jaarlijkse verlenging kost het 10 GBP per jaar! Mij staat bij dat Bubbleserver gratis is of iets van 5 euro kost. Dat is absoluut een fractie van de kosten van de Roon. Roon vraagt maar liefst 129 euro per jaar of 14,99 euro per maand (als je niet in 1 keer de 129 euro per jaar kunt ophoesten). Een flink bedrag voor een app dat minder gebruiksvriendelijk is en lang niet op alle NAS systemen kan draaien.

    Kortom, Minimserver i.c.m. Bubbleserver en een willekeurige controller app zoals van Linn is de beste (absoluut gelijkwaardig aan Roon) oplossing en goedkoopste oplossing als het gaat om streamen vanaf je NAS en het streamen van Qobuz. En nee, ik heb geen aandelen in beide bedrijven maar ik vind het zonde dat Roon als DE (enige) oplossing wordt gezien terwijl Minimserver/Bubbleserver exact dezelfde functionaliteiten biedt tegen een fractie van de kosten van Roon.

    Ps. Voor alle duidelijkheid. Je kunt je Sonos apparatuur (1e en 2e generatie) volledig bedienen met een UPnP controller (zoals de Linncontroller) in combinatie met Bubbleserver en alle muziek files op afspelen. Je bent absoluut niet aangewezen op de software van Sonos. Sterker nog, ik heb op mijn iPhone en iPad niet eens de Sonos app staat. Is volledig overbodig.

    • Dag Richard,

      Roon schaf je aan voor het gemak. Installatie is supersimpel. En dan is er de naadloze integratie van online services in je eigen bibliotheek. Ook krijg je veel meta-informatie rondom de artiest mee. Ik vind dat persoonlijk heel erg leuk om te lezen. Tel daar ook nog de uitstekende Roon-radio bij op en je hebt toch wel een andere beleving dan Bubble. Overigens gebruik ik zelf ook Bubble in combinatie met Minim voor streamers die geen Roon ondersteunen. Werkt zeker goed. Maar qua app en gebruiksgemak écht niet te vergelijken. Zelfs het erg mooie pakket Audirvana doet dat nog niet zo goed als Roon.

  2. Na weer een leuke zondag live stream (D-klasse versterkers) zat ik samen met een aantal clubleden na te praten. We hadden het over Diretta en wat de lol daar nu eigenlijk van is. Uiteraard ga je dan zoeken want ik heb Diretta ook al een keer bij Alpha-Audio voorbij zien komen. Helaas wordt het alleen in de tekst genoemd. Eigenlijk is er alleen redelijk wat over te vinden op een franstalig forum en daar lijken ook veel positieve gebruikers te zijn. Is het misschien leuk om Diretta een keer in een test mee te nemen?

  3. Hoi Jaap.
    Wat ik belangrijk vind is dat de muziek en speellijst blijft doorspelen als de controller (telefoon of tablet) niet meer verbonden is.
    Ik weet dat dit bij Roon zo werkt. Momenteel gebruik ik BubbleUPNP op mijn telefoon en daar stopt de muziek/afspeellijst als deze niet meer verbonden is.
    Werkt BluOS zoals Roon? En/of zou het met de inzet van een BubbleUPNP-server installatie wel mogelijk zijn?

    • Hallo Bas. BlueOS werkt net als Roon. BubbleUPnPServer is een schilletje over Qobuz en je eigen UPnPserver heen. Tidal login werkt niet meer met BubbleUPnPServer, althans, de laatste keer dat ik het probeerde niet.

      Als je BubbleUPnPServer gebruikt en je sluit je telefoon af, dan blijft de stream doorspelen. Dat betekent wel dat BubbleUPnPServer dus op een computer of NAS moet draaien die wel aan blijft staan!

      Technisch: De BubbleUPnP app is zowel de server als de afstandsbediening, tegelijkertijd. Als de computer waarop de server draait uit gaat (je telefoon in dit geval), dan stopt de muziekstroom.

      Bij Roon, BluOS en ook BubbleUPnP server is je telefoon alleen nog maar de afstandsbediening.

  4. Voor wat betreft DLNA/UPnP.
    De organisatie achter DLNA heeft zich zelf in 2017 opgeheven.
    Men was van oordeel dat de doelstellingen bereikt waren.
    Eigenlijk is DLNA blijven steken daar waar UPnP ophield.
    UPnP was en is streaming AV, DLNA had de pretentie om alle apparatuur in het huishouden te integreren.
    Ik vermoed dat ze ingehaald zijn door de tijd met namen door IoT.

    UPnP is tegenwoordig onderdeel van OCF https://openconnectivity.org/

  5. Hi Jaap,

    Diretta werkt ook perfect icm NUC (host) —> GentooPlayer (target op een RPi) .. tijd mee gespeeld op de Pi2AES en de beste DIY oplossing die ik tegen ben gekomen. Het mooie is dat je een ethernetverbinding kan gebruiken die enkel en alleen de bitstream transporteert tussen host en target. Mocht je meer info willen over de opzet, let me know

  6. Ik begrijp nog niet helemaal, als streaming novice, wat ROON voor mij zou kunnen doen. Ik keek net even naar de subscription prijzen van Roon en daar schrok ik wel van. Dan heb je dus naast een qobuz en/of tidal abonnement nog een ROON abonnement nodig. Begrijp ik het goed dat ROON alleen een interface biedt waarop je zowel streaming als lokaal opgeslagen audio kunt organiseren / spelen? Wat is dan de meerwaarde tov bijvoorbeeld BluOS / SONOS etc.? Verandert ROON iets aan de afspeelkwaliteit, of klinkt een Qobuz stream via bluos hetzelfde als via ROON?

    Kortom, wat heb je als hifi liefhebber aan ROON en wat je heb je hiervoor nodig? Ik laat me graag enthousiast maken…;-)

    • Roon is vooral goed in metadata. Ze beheren een bibliotheek met rijke informatie van ieder album, waardoor je meer informatie te zien krijgt. Op basis van de titel, genre, artiest e.d. komt de software met suggesties voor muziek.

      Dat doen Tidal, Spotify en Qobuz ook, maar ik hoor van veel mensen dat de kwaliteit van die aanbevelingen door Roon beter is. Dat wordt vaak aangeduid als de ‘radio’ functie in die apps.

      Roon beheert zowel streaming services als je lokale bestanden en maakt daar een naadloze bibliotheek van. Dat doet Audirvana ook, maar niet zo mooi naadloos geïntegreerd als Roon. Volumio, niet genoemd in het artikel, is software die dat ook kan. BluOS, Jriver e.d. dus ook.

      RAAT stuurt alle muziek als in PCM formaat naar de streamer. Op de Roon Core server wordt alle inkomende muziek, of het nu een stream is of een lokaal bestand, al omgezet naar PCM formaat. Streams zijn meestal FLAC en die wordt on the fly omgezet. Als je streamer PCM krijgt gevoed hoeft de streamer minder hard te werken en dat zorgt weer (iets) betere geluidskwaliteit. Dat doet Audirvana ook. Dan speelt de kwaliteit van de software (Roon, Audirvana) mee. Dat is iets wat we nog gaan bekijken, zie de kalender met de livestreams.

      Verder kan je met Roon multi-room spelen als je verschillende streamers hebt die allemaal Roon ondersteunen, iets wat Sonos ook doet en wat vaak als sterk punt van Sonos wordt gezien.

      Is Roon z’n geld waard, in vergelijk met de alternatieven? Tsja, goede vraag. Het ziet er gelikt uit en het gemak van alles geïntegreerd in één app is groot. BluOS en Volumio is goede concurrentie, maar iets minder gelikt. BluOS is apparaat gebonden, Roon en Volumio niet.

      Maar het blijft sterk afhankelijk van je streamer of streamer module wat werkt. Een streamer die niet Roon-ready is wordt al snel gedoe, Volumio mikt op de Raspberry Pi markt en komt met nieuwe budget vriendelijke oplossingen in het najaar.

  7. Dag Jaap,

    Bedankt voor dit leerrijke en interessante artikel. Het geeft een duidelijk overzicht van de mogelijkheden bij streaming en ik heb duidelijk bijgeleerd.. .
    Graag enkele bedenkingen of ervaringen hierbij.

    Audirvana heeft ook een pakket dat op windows draait en is onlangs vernieuwd tot een pakket met abonnement “Audirvana Studio”. Een proefversie voor 30 dagen is mogelijk.
    Een promotie argument dat Audirvana gebruikt is dat ook Kernel streaming mogelijk is, wat een betere klankervaring dan Asio of Wasapi zou opleveren.
    Ik heb deze Kernel streaming in Audirvana geprobeerd maar dit had een ongewenste interactie met de op mijn laptop geïnstalleerde JPlay Femto die ook ingesteld stond op een Kernel speler. (Kernel streaming wordt aangeraden als default door JPlay).
    Uiteindelijk heb ik de Audirvana Studio dan maar terug verwijderd.
    De beide pakketten op 1 PC zijn blijkbaar niet compatibel.

    JPlay Femto levert uitstekende klankkwaliteit maar soms gebeurt het dat het programma opnieuw moet geïnstalleerd worden omdat de server JPlay Femto niet meer wordt gevonden.
    Reden hiervoor is onbekend maar ik vermoed dat dit meestal te maken heeft met een windows 10 update die gebeurd is.

    Het belooft een unieke, interessante vergelijkende studie te worden.
    Veel succes!

    Vriendelijke groeten,

    Bart

  8. Hartelijk dank Jaap voor dit overzichtelijk en interessant artikel! Waar ik niet goed aan uit raak is aan die ‘gapless playback’. Een heikel punt dat vaak onder de mat geveegd wordt, nochtans een ‘sine qua non’ voor de meeste audiofielen. Waaraan ligt het dat ‘gapless playback’ mogelijk of onmogelijk is? Ligt dat aan de afspeelapparatuur (hardware), de mediasoftware, het streaming-protocol of een combinatie van deze factoren? Als ik het goed begrijp ondersteunt ‘Chromecast’ bv. geen ‘gapless playback’. Het streamen van Qobuz naar mijn ‘Linn Majik’-speler werkt gapless als ik deze vanop mijn tablet aanstuur met de ‘BubbleDS for Linn Open Home’-app. De standaard ‘BubbleUPnP’-app speelt dan weer niet gapless. Het doet vermoeden dat het streaming protocol een dikke vinger in de pap heeft. Maar dat is wellicht niet het volledige verhaal? Bedankt mocht je tijd vinden voor wat toelichting.

    • Het is een ‘single threaded’ versus ‘multi threaded’ technisch verhaal. Om het simpel te houden leg ik het niet technisch correct uit, maar dan is het misschien te volgen.

      In de meeste protocollen is er overhead, zeg maar verwerkingsruimte, nodig om het ene bestand na het andere bestand te streamen. Er zit altijd een pauze tussen. Die pauze is best lang in computertermen.

      Wat gapless spelende software doet, is dat ze twee streams naar de speler opzetten. Op de ene stream speelt het wat je hoort en op de andere stream staat het volgende nummer vast klaar. Op moment dat de codec van het bestand aangeeft dat het volgende nummer aansluitend moet zijn zorgt de software ervoor dat het volgende nummer op de tweede stream precies op het juiste moment overneemt. Het is een technisch trucje om rond de beperking van het protocol heen te werken.

      Dat is de reden dat verschillende software op dezelfde speler die over hetzelfde protocol communiceert wel of geen gap laat horen.

      • Als ik weer even kort zoek naar wat er nodig is, blijven de ‘headers’ boven komen. Er is een header nodig om aan te geven wanneer een track eindigt, zodat de server weet wanneer het de volgende track moet pakken voor buffering. De speler moet dat ook ondersteunen, want die moet voordat de track eindigt, de volgende track kunnen ontvangen. Dus ja: wat martijn zegt… het is een soort ‘multi-threaded’ streaming.

        • Kan het zijn dat je Frames bedoelt?
          Daarvan is de lengte namelijk bekend.
          Het vervelende is dat sommige audio formaten een fixed frame hebben (MP3) dus je weet precies hoe lang het is maar het is nooit volledig gevuld dus krijg je een witje.

          Het blijft een wat rare zaak dat DLNA geen gapless kent maar UPnP wel (SetNextAVTransport schijnt het toverwoord te zijn)

    • Bedankt Marijn en Jaap, alweer iets opgestoken! Ik zou toch iedereen die de aanschaf van een streaming-configuratie overweegt aanraden om zich goed te informeren over de mogelijkheid van het ‘gapless’ spelen. Ik beperk me nu tot het streamen van ‘Qobuz’ omdat ik daar het meest ervaring mee heb. Ik heb de indruk dat wanneer de streamer als hardware-apparaat geen ingebouwde ‘Qobuz’-functionaliteit heeft (bv. ‘Marantz’) dat de zogenaamde ‘omwegen’ via universele niet-merkgebonden protocollen als ‘UPnP/DLNA’ of ‘Chromecast’ weliswaar toelaten om ‘Qobuz’ te streamen naar het apparaat maar dan NIET ‘gapless’.

      • Hallo Erwin,

        Dat hangt van je streamer af. Ik stream gapless Qobuz over UPnP naar mijn oude Naim ND5XS met BubbleUPnPServer (en laat Bubble de stream converteren van FLAC naar PCM).

        Ik heb hetzelfde geprobeerd met andere streamers die ik voor een review thuis had. Een Primare met hun Prisma streaming platform ging niet goed, bijvoorbeeld. Maar voor Prisma heb je dat ook niet nodig, het was puur uitproberen van mijn kant. Hetzelfde gold voor de Platin hub (die Buchardt en System Audio gebruiken), maar die hub heeft sowieso een uitdaging met gapless streamen.

        Je hebt gelijk: goed van te voren informeren en ook gedemonstreerd krijgen dat het werkt.

        • Bedankt Martijn voor de reactie. Het is blijkbaar nog ingewikkelder en genuanceerder dan ik dacht. Nu eens niet, dan weer wel, naargelang de streamer. Ik vind het jammer dat in veel hifi-reviews deze kwestie onderbelicht blijft. Het illustreert jouw en mijn punt: ga er niet op voorhand van uit dat gapless playback wel zal lukken maar test het eerst daadwerkelijk.

          • Wij zullen het altijd benoemen als een speler NIET gapless speelt. Geen zorgen. Ik speel zelf best wat mixalbums (progressive rock, trance, elektronische muziek, etc.). En Martijn speelt veel klassiek. Het zal dus zeker opvallen.

      • Dag Erwin,

        Ik heb een Marantz streamer dac netwerkspeler die geen Qobuz ondersteunt en gebruik de MConnect app op IOS. Hiermee is het perfect mogelijk om gapless playlists af te spelen. Als player gebruik ik dan de Marantz zelf of JPlay Femto op de laptop via Usb verbonden met de Marantz.
        Hopelijk ben jij hiermee geholpen!

        Vriendelijke groeten

        Bart

        • Dag Bart, bedankt voor de tip! Ik heb deze namiddag de ‘MConnect’ app getest op mijn Linn Majik streamer. Gapless playback was, op deze streamer althans, niet mogelijk. De instelling was nochtans geactiveerd. Niet erg, ik behelp me gewoon verder met de ‘BubbleDS’ app.

          Ik test die ‘MConnect’ app binnenkort op de Marantz netwerkspeler van mijn vriendin. In ieder geval, goed dat het bij jou wél lukt. Misschien werkt de IOS versie anders? Je verwijst ook naar een usb-audio connectie via een laptop of PC. Ik heb daar ook een beetje ervaring mee en ik heb met usb-audio nooit problemen ervaren wat het gapless spelen betreft. De ‘Qobuz’ desktop app bijvoorbeeld werkt als softwarematig vertrekpunt vlekkeloos.

          • Dag Erwin,

            Bijkomende test i.v.m gapless playback gedaan met MConnect op IOS.
            Streaming van ‘Rachmaninov Variations’ van Daniil Trifonov is een uitstekende test . Bedankt hiervoor!
            Ditmaal gestreamd vanuit Qobuz d.m.v IOS app MConnect naar laptop waarop JRiver geïnstalleerd staat.
            De code gapless bij de instellingen van MConnect moet wel aan staan.
            Resultaat is OK. Perfect gapless!
            Ook streaming van Playlists uit Qobuz werkt perfect gapless.
            Hopelijk ben jij hiermee geholpen!

            Vriendelijke groeten

            Bart

          • Bedankt Bart voor de tip!

            Ik heb de ‘MConnect’-app (Android versie) getest op de ‘Marantz’ netwerkspeler (NA8005). ‘Marantz’ heeft geen ingebouwde ‘Qobuz’ functionaliteit. Maar langs deze weg ging het streamen van ‘Qobuz’ perfect én deze keer gapless!

            Na wat zoekwerk op het internet vond ik ook een methode om via de ‘BubbleUPnP’-app de ‘Marantz’ gapless aan de praat te krijgen: More –> Settings –> Renderers settings (configure settings for each renderer) –> Select renderer –> apparaat kiezen –> Proxy Qobuz tracks: aanvinken.

            Beide manieren werkten op de ‘Marantz’ maar NIET op de ‘Linn Majik’. Waarmee nog maar eens aangetoond is wat een kluwen het is. Gelukkig ondersteunt de ‘Linn Majik’ wél ‘Qobuz’ dus er zijn andere manieren om gapless te streamen (bv ‘Bubble DS for Linn’ of de eigen ‘Kazoo’-app van Linn).

            Ook dank aan al wie reageerde en meedenkt over die ‘gapless’-kwestie.

      • Goed laten informeren is inderdaad de beste tip! Zelfs fabrikanten zetten vaak niet eens in de specificaties of gapless playback nou wel of niet ondersteund is. Sowieso ondersteunen UPnP/DLNA streamers het standaard niet, omdat het hier gaat om ‘bestand-na-bestand’ protocollen. Je hebt een extra laagje nodig die als het ware één lang bestand aan biedt, vergelijkbaar met een internet radio station. Zoiets -ik ken de details niet- zal de BubbleUPnP app ook wel doen. Gesloten systemen met een eigen OS pakken het vaak beter aan: bijvoorbeeld Sonos en BluOs zijn netjes gapless.

        Tot slot vind ik het echt niet van deze tijd om streamers te verkopen waarbij het niet is geïmplementeerd. Gapless is echt een probleem dat al jaaaaren geleden is opgelost. Ik zet mijn hoop maar op meerdere ‘connect’ implementaties, zoals die er al zijn voor Spotify en Tidal.

      • Hallo Toon.

        Een tip die ik (denk ik) op deze site ontdekte. Een handig voorbeeld om gapless playback te testen is de ‘Deutsche Grammophon’ opname van de ‘Rachmaninov Variations’ gespeeld door Daniil Trifonov (piano) met ‘The Philadelphia Orchestra’ o.l.v. Yannick Nézet-Séguin (opname beschikbaar op de meeste streaming platforms). Bij gapless playback vloeien de verschillende korte bewegingen van de compositie naadloos in elkaar over, zoals bedoeld door de componist. Indien er geen gapless playback mogelijk is valt er tussen de variaties telkens een korte maar hinderlijke stilte. ‘The Dark Side of the Moon’ van Pink Floyd is een ander klassiek voorbeeld.