Home Streaming Audio Netwerk Streamingsystemen – orde in de chaos!

Streamingsystemen – orde in de chaos!

46
Streamingsystemen – orde in de chaos!

De grote spelers

Inhoud

Gapless, sync play, multiroom… etc….

Streaming audio is een complexe aangelegenheid. In de ‘early days’ was het spelen van een stukje muziek over een netwerk al heel wat. Maar naarmate de jaren vorderen, willen we meer… en meer… en meer. Denk aan Gapless playback (geen pauzes tussen nummers…noodzakelijk bij mixalbums bijvoorbeeld), sync play voor multiroom audio. En later ook stereo-pairing van speakers. Om maar te zwijgen over de integratie van talloze streamingdiensten.

Dit zijn dingen die we anno nu allemaal vrij normaal vinden. Maar ga tien jaar terug en u zult zien dat het landschap er toen heel anders uitzag. En nog zijn er spelers die geen gapless playback ondersteunen – kuch… Audiolab met DTS PlayFi… kuch… Maar laten we eens naar wat systemen kijken.

Way back – UPnP

Een tijd terug waren er niet heel veel goede protocollen om streaming audio – en video – mogelijk te maken. Dat kwam eigenlijk pas met UPnP en DLNA (een soort van uitbreiding op UPnP). UPnP staat voor “Universal Plug and Play”. In praktijk kwam dat neer op Universal Plug and Pray… want in de begindagen was het 100% onzeker of u het apparaat ging tegenkomen in het netwerk. Niet gek: het gros van de netwerkapparatuur had de UPnP extensie helemaal niet. Denk aan de router die toch echt ermee om moet kunnen gaan.

Maar zoals vaak het geval is: de tijd heelt alle wonden en UPnP werd beter en beter. Anno nu werkt het gewoon prima. Mede doordat de infrastuctuur in het gros van de woningen gewoon modern genoeg is om het te laten werken.

Weet echter dat UPnP niet per-sé bedoeld is voor audiostreaming. UPnP maakt de ‘discovery’ van netwerkapparaten eenvoudig, waardoor een pc of ander netwerkapparaat snel een nieuw apparaat kan vinden én weet wat het kan doen. Denk aan een mediaserver op de NAS. Die vertelt aan andere apparaten in het netwerk bijvoorbeeld wát hij precies is, dát hij beschikbaar is, wat zijn IP-adres is én op welke poort ze hem kunnen benaderen. Dat is handig.

En zo babbelen wel meer netwerkapparaten met elkaar. Streamers, tv’s, smart home hubs, computers, telefoons, tablets, stofzuigers, zonnepanelen, ga zo maar door. En dankzij UPnP weten we heel snel wat er allemaal in het netwerk zit, wat de instellingen van de apparaten zijn én wat ze kunnen. Super… maar in basis dus géén audiostreaming protocol…

Maar daar heeft DLNA – Digital Living Network Alliance – verandering in gebracht. DLNA is – simpel gezegd – een uitbreiding op UPnP en zorgt ervoor dat apparaten die gelicenseerd zijn aan bepaalde standaarden moeten voldoen. Het is opgericht door merken uit de CE-industrie om connected apparaten wat gemakkelijker te laten samenwerken. Wel gewenst in die tijd (2003). Ook gokken we dat de DRM – digital rights management – wel een gunstige toevoeging was (onder meer Sony was onderdeel van de club, en die heeft wel wat aan DRM :-)). Echter moeten we zeggen dat DLNA het leven wel gemakkelijker heeft gemaakt. Streaming is er wel volwassener door geworden.

UPnP / DLNA is zonder twijfel een cruciale standaard in de wereld van mediastreaming. Met name UPnP vormt de basis voor heel veel streamers (NAIM, dCS, Cambridge Audio, AVM, Heos, Yamaha, et cetera). En custom software of niet: in de kern zit vaak het UPnP protocol. Er is echter een handvol die écht een eigen protocol heeft geschreven. Daar komen we straks op terug.

OpenHome

Er zijn dus vrij veel systemen die werken met UPnP. En systemen die daar weer op gebaseerd zijn. Denk aan OpenHome. Spelers van Linn (de ontwikkelaar van OpenHome), Auralic en bijvoorbeeld Lumin en Esoteric (die het Lumin platform gebruikt). OpenHome moet wat optimalisaties brengen aan het UPnP protocol, waardoor audiostreaming wat beter verloopt. Zie het een beetje als UPnP ‘on steroids’. En daar is niets mis mee: waarom een wiel opnieuw uitvinden als je het ook gewoon kan tweaken?

Het mooie is dat OpenHome door zijn ‘roots’ in UPnP, compatible is met veel UPnP controller-apps. Hebt u een favoriet dan werkt dat. Denk aan de DS Audio app van Synology. Echter zijn er ook apps die met OpenHome werken, denk aan BubbleUPnP. Bubble heeft zowel een server-pakket (voor installatie op bijvoorbeeld een NAS) als een controller en spelersoftware (zit ook in de smartphone-app verwerkt). Het is wellicht een wat ‘nerdy’ app, maar werkt als een trein.

We gebruiken BubbleUPnP vaak bij streamers die geen Roon ondersteunen en werken met UPnP of OpenHome. De reden is dat BubbleUPnP ook Tidal en Qobuz kan streamen naar een speler toe. Zo hoeven we geen accounts in te voeren in de speler én kunnen we ook Tidal en Qobuz gebruiken bij spelers die dat niet native kunnen spelen. Een handige feature dus.

De Apple-tegenhanger van BubbleUPnP is Mconnect. Nu heeft uw auteur geen iPhone of iPad, maar zijn collega’s hebben al laten weten dat Mconnect prima werkt.

Roon

De lezers van Alpha Audio weten dat we al heel lang met Roon spelen. Roon werkt vooral heel erg handig, omdat het koppelen van spelers ontzettend snel en gemakkelijk gaat én de bibliotheek naadloos integreert met Tidal en Qobuz. Ook prettig.

ROON heeft zijn eigen protocol: RAAT. Roon Advanced Audio Transport. Dit is géén UPnP en om die reden kan Roon ook geen UPnP spelers zien of bedienen. De enige integratie die Roon toelaat buiten RAAT is Apple Airplay, Chromecast én Sonos. Het kan tevens via Casting naar een Chromecast albumart laten zien.

Het doel van Roon met RAAT is simpel: stabiele streams over kabel en wifi én grote, brede ondersteuning aan de spelerkant. Ook minder krachtige hardware moet met Roon kunnen werken. En dat is wel gelukt. Er zijn zogenaamde ‘endpoints’ (spelers) die op een oude ARM-chip of oudere FPGA werken. Zonder problemen. Het draait als een zonnetje op een Rasberry Pi.

Wat ook anders werkt, is dat de clock in de speler of aangesloten dac dominant is: die bepaalt de stream. Niet de server.

VitOS

Nu heeft Roon zelf heel wat mogelijkheden om een server of speler werkend te krijgen. Denk aan Roon Rock, Roon Server, Roon bridge, de desktop controller of de app natuurlijk. Maar wie – om wat voor reden dan ook – iets anders wil, of specifiek met een Rasberry wil werken, kan kijken naar VitOS. Dit, custom, uitgeklede Linux besturingssysteem draait op een Rasberry en heeft Roon Bridge geïntegreerd. Een ‘on stop shop’ dus!

Diretta

We hebben de ontwikkelaar van Diretta in 2019 gesproken op de High End Muchen. Hij had een heel klein standje in één van de hallen. Echter zijn verhaal vond ik interessant. Diretta is namelijk een compleet herschreven streamingprotocol wat zich focust op stabiele timing en een constante stroom van data.

De reden dat Diretta daar zo op focust, is dat het sturen van data in bursts – wat bijvoorbeeld UPnP doet – zorgt voor piekbelasting. Bijvoorbeeld van de chips op de netwerkkaarten, maar ook de CPU. En dat zorgt weer voor pieken in ruis. Iets wat – volgens Diretta – lastig te filteren is.

We weten dat ruis de grootste vijand is van goede weergave. We hebben genoeg metingen verricht aan swiches en filters om te weten dat er een verband is tussen ruis en weergavekwaliteit. Ook kleine hoeveelheden common mode is hoorbaar in een systeem met genoeg resolutie.

We vinden het Diretta protocol daarom bijzonder interessant. Het is Рnaast Roon Рeen van de weinige protocollen dat duidelijk maakt dat het voor kwaliteit gaat ̩n probeert te onderbouwen dat hun oplossing werkt.

Er zijn nog niet heel veel spelers met Diretta. Als we naar de partnerlist kijken, zien we Spec, Luxmann, SoulNote en bijvoorbeeld Sforzato. We gaan eens kijken of we een speler van Spec kunnen proberen.

LMS

LMS РLogitech Media Server Рis nog steeds een populair systeem. De software is oud, maar kan nog steeds gedownload worden ̩n werkt nog prima onder Windows, MAC en Linux. De apps voor NAS zijn via een omweg wel te krijgen, maar we zien heel wat fora vol staan met issues. Ons advies: installeer het via Docker of op een pc met Linux, Windows of MAC OS.

Nu werken we al meer dan een decennia niet meer met LMS, dus we weten niet hoe het in de praktijk werkt of presteert. Dat gaan we zeker nog een keer proberen, aangezien er toch lezers zijn die er nog steeds meer werken én zeggen dat het gewoonweg beter klinkt. We zijn benieuwd naar uw ervaringen.

Airplay

Airplay kennen we allemaal wel. Apple heeft dat mooi in de markt gezet. Airplay kan je zien als een tegenhanger van UPnP en Chromecast. Het maakt het streamen van media ontzettend gemakkelijk omdat je in de controller (de app waarvanuit je wil spelen) simpelweg op het Airplay-logo tikt en een speler kiest. Airplay kan net zoals UPnP en Chromecast zowel audio als video streamen.

Airplay is gebaseerd op het Apple Bonjour-protocol (zero config) voor het vinden van spelers, en UDP en RTSP (real time streaming protocol) voor het versturen van media. De streams zijn AES versleuteld. Apple heeft natuurlijk wel zijn eigen sausje over de protocol-stack heen gegooid. De AirPort Express gebruikt bijvoorbeeld RAOP – Remote Audio Output Protocol – wat een aangepaste versie is van RTSP.

Er is wel een flinke beperking bij Airplay. Allereerst is de resolutie beperkt tot 16 bit / 44.1 kHz. 48 kHz is ondersteund bij videocontent. Kortom: Airplay kan g̩̩n high-res. Daarbij horen redelijk wat gebruikers een verschil tussen een Airplay-stream en de originele stream direct van server naar speler. Wij ook. Airplay claimt lossless compressie te gebruiken, maar wij hebben het gevoel dat er toch wat misgaat. Roon Рdie volledig Airplay ondersteunt Рgeeft tevens aan dat het geen lossless stream is.

Gelukkig zijn er alternatieven voor Airplay. Audirvana bijvoorbeeld is een goede speler, speciaal voor Apple. Maar daarover later meer. Heel veel streamers accepteren streams via Airplay, wat natuurlijk fijn is voor gebruikers, aangezien het ontzettend gemakkelijk werkt. Er is ook een merk dat Airplay heeft geoptimaliseerd, waardoor het beter klinkt: La Rosita.

Chromecast

Chromecast is in feite de Android-tegenhanger van Apple Airplay. Chromecast kan – net als Apple Airplay 2 – audio en video streamen. En ook bij Chromecast gaat het met een simpele druk op een logo om vervolgens een speler te kiezen.

Chromecast gebruikt een eigen protocol: Google Cast. Voor discovery gebruikt de Chromecast mDNS: multicast domain name system. Voor het streamen zelf heeft Google dus zijn eigen protocol-stack waar niet heel veel details over te vinden zijn. Echter zal het gebaseerd zijn op een vorm van multicast en rtsp. Het verschil tussen Apple en Android in dit geval, is dat Chromecast sneller reageert. Apple buffert vooraf al twee seconden, wat vertraging geeft na een actie. Chromecast doet dat niet.

Chromecast ondersteunt high-res audio (24 bit / 96 kHz) en 4K tv-streams. Er zijn grote audiomerken die in basis Chromecast gebruiken. Denk aan Primare. Ook Roon kan via Chromecast audio streamen. En kan Chromecast als ‘display’ gebruiken voor mooie, grote coverart. Een leuke feature.

Gesloten ecosystemen

We hebben nu alle grote en interessante streaming (of multimedia) protocollen wel behandeld, denken we. Mocht er eentje missen, dan horen we het graag.

Naast deze protocollen, zijn er natuurlijk de nodige gesloten systemen van fabrikanten zelf. Denk aan Aurender, BluOS en Sonos, om maar een paar bekende te noemen (ze ondersteunen veelal wel Airplay). Weet dat ook deze systemen in basis op bestaande technologie leunen. BluOS werkt op basis van multicast-technolgie, om maar een voorbeeld te noemen. Dat moet ook wel, anders zou het wellicht niet werken met bestaande infrastructuur bij gebruikers thuis én het zou véél en véél te complex worden.

Nu valt er natuurlijk heel wat te zeggen voor zowel open als gesloten systemen. Open geeft vrijheid, gesloten zorgt ervoor dat de fabrikant meer focus kan leggen op stabiliteit en kwaliteit. Maar je boet in op vrijheid. De keuze is aan de gebruikers. Waar liggen de prioriteiten? Wat vindt u zelf belangrijk?

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.

×