web analytics

Een ‘quick and dirty’ test van mediasoftware – ROON – JRiver – Foobar – WMP

Alighn samples

Maakt een software pakket nu uit in klank? Wij vinden het wel een interessante vraag. Want je zou denken van wel! Maar waar zit het dan? Wij beginnen onze zoektocht met een test die het voor nu even simpel houdt. We spelen dezelfde file via diverse pakketten af en nemen het via een digitale loopback op in Adobe Audition.

“ROON klinkt waardeloos!” “JRiver klinkt véél beter dan Audirvana”. “Jplay is het beste van allemaal”. Je leest soms aardige statements op de sociale media. En ook op Alpha Audio zelf. Nu horen we zeker wel verschillen in software, maar dat is veelal firmware op een speler zelf. Niet zozeer software op een mediaserver. Al sluiten we niet uit dat ook dat mogelijk is. Immers: sommige software kan pre-processen en dat kan natuurlijk verschil maken.

Een simpele keten

Laten we eerst even uitleggen hoe streaming audio over een netwerk in basis werkt. Hoe ziet zo’n keten er nu uit? We zetten het even op een rijtje:

  • Ergens staat een mediaserver. Dat kan op een NAS zijn, maar ook een PC, of zelfs een streamingdienst (in feite ook een soort mediaserver).
  • De muziekdata (het nummer wat u wilt spelen) wordt opgevraagd door een speler. Dat kan een muziekstreamer zijn, maar ook een telefoon, pc, etc.
  • Deze data gaat over een netwerk – bekabeld of draadloos – van de mediaserver naar de muziekspeler
  • De bediening van de speler kan een app zijn op een telefoon of tablet. Maar het kan ook een softwarepakket zijn op een laptop, pc, etc.

Nu zult u begrijpen dat de file die u afspeelt uit bits en bytes bestaat: 1’en en 0’en. Deze file wordt door de server in stukjes gehakt om het mogelijk te maken deze data over een netwerk te versturen. Eén datapakket is – mits niets is aangepast in het netwerk – ongeveer 1500 bytes. In dat datapakket zit nog extra informatie verwerkt om aan te geven waar het pakket vandaan komt, waar het naar toe moet, wat er in het pakket verwerkt zit en in geval van TCP-verkeer: een CRC check om er zeker van te zijn dat de data ook klopt. Is er iets kapot, dan weet de ontvanger dat en vraagt hij / zij het opnieuw aan. Top!

Een netwerk is datatechnisch dus aardig robuust. U moet best gekke dingen doen om data corrupt te krijgen.

De simpele test

Nu blijven we in deze simpele test in het digitale domein. Dit omdat het praktisch onmogelijk is via een speler naar het analoge domein te gaan en dan weer de boel digitaal te maken: een A/D-converter is namelijk niet zo stabiel dat elke conversie exact gelijk is. Die A/D-converters bestaan (nog) niet. Kortom: voor nu blijven we even binnen het digitale domein.

Overigens kunnen we op deze manier wél uitsluiten of de mediaserver / NAS een verschil maakt. We schakelen namelijk van ROON naar Jriver, Foobar en Windows Media Player. Tevens kunnen we uitsluiten of die front-ends (de software op de PC) iets doet met het digitale signaal.

De keten is ook nu vrij simpel gehouden:

  • We gebruiken in deze test dezelfde bronbestanden.
  • De testfile staat op een Synology NAS: een live-opname van Tim Knol in 24 bit / 96 kHz
  • De ROON-server is een Ryzen-gebaseerde pc die op Ubuntu Server draait met ROON-server geïnstalleerd
  • We draaien alle tests op onze werk-pc (Threadripper 3960X met 64GB RAM)
  • Als geluidskaart zetten we een ESI MAYA44EX in. Deze maakt een digitale loop die Adobe Audtion oppakt en opneemt.
    • De datastroom ‘verlaat’ dus niet de geluidskaart: Audition pakt direct de datastroom op.
  • De files laden we in een multitrack om ze gelijk te zetten.
  • Elke export is het verschil van de master-file en de opname die 180 graden uit fase staat.

De sampling

We hebben voor deze ‘quick and dirty’ test dus een paar software-oplossingen gebruikt:

  • ROON – ASIO – FIle vanaf ROON-server (dezelfde map als die de rest gebruikt)
  • JRiver 29 – Wasapi – File vanaf NAS
  • Foobar – Wasapi – File via SMB vanaf NAS
  • Windows Media player – Wasapi – File via SMB vanaf NAS

Aanvullend hebben we als extra ook ROON de samplingrate laten terugbrengen van 96 kHz naar 48 kHz om te kijken of het impact heeft. (Spoiler: Ja).

Download de samples

Check hier alle samples. Let op dit is 1.9 GB!

Conclusie

We zien een klein beetje residu bij alle ‘normale’ opnames. Wij vermoeden dat dit een bij-effect is van de 32bit floating point opnames. Als we die over de 24 bit master leggen, is er een klein verschil. Dit vermoeden wordt versterkt als we de mixdowns over elkaar heen leggen en er één uit fase zetten: er blijft niets meer over. Oftewel: het ‘residu’ is bij elke opname gelijk. Dat is te toevallig.

Er is wel een flink verschil met de file als ROON terug samplet van 96 naar 48 kHz. Zie onderstaande screenshot.

Dit laat zien dat sample rate conversie alles behalve lossless is. En dat geeft ROON ook netjes aan. Let hier dus mee op.

En nu?

Wat we kunnen concluderen is dat er binnen het digitale domein écht geen verschil is. Of u nu ROON, JRiver, Foobar, WMP of elk ander pakket gebruikt: ze zijn bitperfect. Als u gaat processen zijn er natuurlijk wél verschillen. De één doet dat beter dan de ander. De vraag is of processing überhaupt wenselijk is.

Dat we nu geen verschillen hebben waargenomen, neemt niet weg dat een speler anders kan reageren op een bepaalde mediaserver. Het ligt er namelijk wel aan hoe een mediaserver de data aanlevert. Hoe constant gebeurt dit? Hoeveel processingkracht is nodig om de datastroom te verwerken? ROON gebruikt bijvoorbeeld RAAT. Dat is anders dan een standaard UPnP-server. Aurender heeft ook zijn eigen protocol. Kortom: daar kúnnen verschillen ontstaan.

Wordt vervolgt!

 

21 reacties

  1. De beschrijving van deze test is m.i. wat vaag.

    ROON – ASIO. Vermoedelijk bit perfect maar dat hangt af van de wijze waarop de fabrikant ASIO implementeert in de DAC. Multiple audio streams (dus mixen) of fixed sample rate (dus resampling) komen ook voor.
    JRiver 29 – Wasapi. Het staat er niet bij maar ik neem aan dat dit Exclusive mode is.
    Foobar – Wasapi . Idem
    Windows Media player – Wasapi. Hoe dat vastgesteld is, is mij niet duidelijk, zou ook DS kunnen zijn. Hoe dan ook het is per definitie Shared mode dus loopt alles door de Win mixer (conversie naar float, mix, dither, conversie naar integer). Welke settings daarbij gebruik zijn is niet gespecificeerd.

    Hoe dan ook, als mij assumpties correct zijn dan hebben we met JRiver en Foobar twee voorbeelden van bit perfect. Met WMP hebben we een voorbeeld van niet bitperfect.
    Dat roept bij mij de vraag of de conclusie “Wat we kunnen concluderen is dat er binnen het digitale domein écht geen verschil is. Of u nu ROON, JRiver, Foobar, WMP of elk ander pakket gebruikt: ze zijn bitperfect. “ correct is.

  2. Ik vind Euphony Stylus een erg mooi pakket. In dit pakket kun je schakelen tussen Roon core en Stylus core. Roon klinkt wat strakker en Stylus juist wat ruimtelijker. Afhankelijk van de rust in de soundstage kun je voorkeur hebben voor de één of de ander. Sowieso is de Roon remote app vele malen beter dan Euphony, toch gebruik ik voor 90% Euphony vanwege de ruimtelijke weergave.

    In het verleden gebruikte ik Jriver en ik kan my herinneren dat versie 18.194 voor mij de best klinkende firmware was. Iedere versie bracht een duidelijk verschil in de weergave, terwijl er qua structuur (hie de hardware gebruikt werd) vaak niets veranderde. Het enige wat wij daar uit op konden maken is dat software een bepaalde belasting zou zijn voor de hardware, waardoor de belasting en temperatuur in bepaalde onderdelen kon verschillen.

    Met heel veel experimenten bleek dat met name de processor temperatuur een belangrijke factor bleek. Deze kan het beste onder de 30 a 35 graden blijven. Een processor zonder GPU heeft de voorkeur.

    Hiernaast draait alles om schakelruis, iedere voeding iedere processor ieder geheugen iedere SSD en ieder klokje zorgt voor ruis. Dit maakt dat hoe beter de software en de files zijn opgezet en hoe meer een pakket dedicated is voor de taak hoe minder de elektronische componenten belast zullen worden. Hiernaast wordt een computersysteem ook verdacht van het maken van vele interne fouten. Dit is gebleken doordat de processor sterk ontlast kan worden door een high end klok op het moederbord. In mijn geval zakte de processor last van 8% naar 0,3% tijdens het afspelen van een native file. Dit alleen al door het vervangen van de klokken op het moederbord.

    Kortom software pakketten zullen altijd een bepaalde impact hebben op de sound zolang er schakelruis op het signaal terecht komt. Zelfs als het ene pakket vandaag beter klinkt dan de ander, dan kan dit morgen anders zijn door een update.

    Ik zou het wel interessant vinden om de processor temperatuur en de last mee te nemen in het vergelijk tussen de verschillende pakketten.

    Super interessante test Jaap!

  3. Ik weet niet of het vergelijkbaar is met de 4 geteste software/apps, omdat het volgens mij niet pre-processed. Maar anders zou ik het mooi vinden als BubbleUpnp in de vervolgtest wordt meegenomen. Dat gebruik ik al jaren met veel plezier.

      1. BubbleUPnP kan ook Qobuz aanbieden als stream over UPnP. BubbleUPnPServer doet hetzelfde, maar dan niet als app, maar als OpenHome UPnP server. Ik gebruik server op mijn Synology om Qobuz te streamen, aangezien mijn ‘antieke’ streamer geen Qobuz integratie heeft en geen Chromecast, Bluetooth of Airplay.

        De BubbleUPnP app is ook ‘gewoon’ een UPnP controller app.

  4. Dag Jaap,

    Bedankt voor de gebruikelijke professionele aanpak van deze test!

    Enkele vragen en bedenkingen hierbij die enkel positief bedoeld zijn.

    Jouw conclusie is: binnen het digitale domein zijn geen verschillen waar te nemen voor de besproken software.

    Zou het niet interessant zijn om de verschillende software pakketten als bron voor jouw referentiesysteem te gebruiken en dan te luisteren naar de al dan niet verschillen in geluidsbeeld of klankbehandeling?

    Volgens mijn ervaring verwacht ik een miniem of geen verschil tussen de gebruikte software pakketten. Misschien klinkt Roon iets anders.

    Wat vooral een ander resultaat geeft is het gebruik van Kernel Streaming welke aanbevolen wordt door het nieuwe Audirvana, Jplay met JplayFemto en ook door Linn.
    Hierbij wordt wel degelijk iets aan het klankbeeld veranderd.
    Het zou interessant zijn om indien mogelijk deze pakketten met kernel streaming ook eens uit te testen.

    Bedankt

    Groeten

    Bart

    1. Dag Bart,

      Dank voor je feedback. We gaan zeker door pakken. Dit is pas het begin van deze reis :-). Uiteindelijk is het de bedoeling om alle grotere pakketten naast elkaar te zetten en ook de klank te samplen. Ik heb alweer 1000 ideeën over de mogelijke metingen en tests. :-).

  5. Dag Jaap,

    “Windows Media player – Wasapi”

    Is dit Shared of Exclusive mode?
    Ik weet niet beter dan dat je in WMP geen driver kunt kiezen, wel een audio device.

    Kun je iets doen aan de leesbaarheid van de grafieken?
    De donkere achtergrond maakt het moeilijk leesbaar.
    De grafieken buiten de galerie expanderen niet en zijn daardoor volledig onleesbaar.

    Groet
    Vincent

      1. Ik vraag dit omdat in shared mode Win audio alles dithered.
        Dan ben je per definitie niet bit perfect.
        Als Win audio op 24 bit staat , dan verwacht ik dither in bitje 24 maar mogelijk verzuipt dat in de ruis.

        PS: ik bedoelde de screenshots.

  6. Interessante test. Zelf ben ik stappen verder gegaan en op het pad van protocollen als Diretta gekomen – heeft alles te maken met het time domain en constante dataverwerking. Tevens zijn zaken als het minimaliseren van (windows) processen essentieel.. gebruik van Win11PE (versie die volledig in het ram-geheugen laadt) biedt hier mogelijkheden toe. Enfin, relatief lage investeringen voor mooie stappen in SQ. Wel voor de audio nerd die daar maar net zin/tijd voor heeft.

      1. Misschien dan ook maar gelijk het verschil pakken tussen de Windows uitvoering van ROON en Linux of IOS, dan heb je wel gelijk het probleem met die ASIO effecten in beeld mogelijk.
        Het feit is dan wel dat ik het liefst de meest schone opzet verkies boven de meest krachtige PC. Ik merk dat zelf wel dat ook de opzet met Roon ook niet zo zwaar hoeft te zijn, en heb nu ook een opzet met een direct vergelijk tussen ROON en JPlay op een voorversterker en kan direct schakelen tussen de 2 uitgangen, en beoordelen. 😉
        Oftewel, we zijn op dit moment met hetzelfde bezig.

        1. Dag Hannesie,

          Wat zijn je bevindingen in de vergelijking tussen Roon en JPlay?
          Heb je ook JPlayFemto in het netwerk in de vergelijking meegenomen?
          Mijn ervaring is dat deze nog beter presteert dan JPlay op de PC.
          Ik ben benieuwd.

          Bart

          1. Mijn ervaring nu is dat ik wat verschil hoor, en dat b.v. bij zang het iets meer articulatie in de stem hoor. Heb bewust een kleine PC als server genomen die ook prima werkte met ROON Rock en een losse USB schijf.
            De Femto server en speler zijn in vergelijking dan veel moeilijker te configureren dan ROON, en dat zijn toch pittige verschillen.
            Op mijn server met ROON kan ik dan de muziek als NFS (Netwerk file system) exporteren, en dan kan het ook via de UPnP gebruikt worden.
            De opzet zoals met ROON heeft voor mij dan wel de voorkeur, het gemak waarmee ik alle andere apparaten dan kan aankoppelen met Android en andere PC’s geeft zoveel meer bedieningsgemak dat het kleine verschil makkelijk te overkomen is.
            De combinatie met de Jplay driver en ROON op de kleine PC was niet mogelijk omdat daar de OpenGL 3.0 niet werd ondersteund, en het dan helaas niet echt te vergelijken was.

            Heb dan ook mede hierom nog steeds de voorkeur om het met Linux te doen, alles goed en strak te configureren. Stabiel en geen hoge eisen voor de hardware, het loopt constant en zonder problemen.

            1. Nog even aanvullend, de 2 DAC’s die van een zelfde fabrikant en opzet (Soekris) zijn dan naast/boven elkaar, en stonden aangesloten op dezelfde voorversterker, en door het schakelen tussen de 2 ingangen was het mogelijk dan dezelfde muziek te beluisteren. Dat was dan niet synchroon, maar wel op een zelfde volume afgeregeld.
              Beide ook dezelfde USB input van de Amanero interface.

Geef een antwoord