Computer Audio Players

Discussion in 'Computer Audiophile: Software, Configs, Tools' started by JoshMorr, Oct 4, 2015.

  1. SSL

    SSL Friend

    Pyrate
    Joined:
    Nov 12, 2015
    Likes Received:
    1,239
    Trophy Points:
    93
    No one needs to go full nwavguy and start having filmed blind ABX tests to "prove" claims. That's not what we're about here.

    I simply view this as the same level of distraction as USB decrapification or to a lesser extent tube rolling. Don't lose the forest for the trees type thing.
     
  2. lm4der

    lm4der A very good sport - Friend

    Pyrate
    Joined:
    Sep 26, 2015
    Likes Received:
    1,461
    Trophy Points:
    113
    Location:
    Seattle, WA
    Kudos for rolling with the punches. The audio-players-sounding-different thing (assuming wasapi/asio and a few other things are setup correctly) is pretty fringe even for the wackos around here, so you are sort of picking a challenging topic ;) I'm interested to hear how your blind-test goes.
     
  3. GoodEnoughGear

    GoodEnoughGear Evil Dr. Shultz‎

    Pyrate
    Joined:
    Oct 25, 2015
    Likes Received:
    3,070
    Trophy Points:
    113
    Location:
    Cape Town, South Africa
    Hey Renekton - no, I'm not questioning your credibility, you haven't claimed to be a professor or anything like that :). I'm providing some other factors that could influence what you're hearing that are not connected at all to the playback system, that could account for 1% difference. I'm also basing my comment on my many years in software development and my understanding of how the audio stack works...it should result in any player providing 'bit-perfect' playback through a common lower-level API like ASIO or WASAPI being identical.

    That said, the thing I like about SBAF is that we allow for things that we may not know yet. If you have the energy for this test, then by all means I think you should give it a go. But perhaps we can shed a bit more light on the theory first and include some other variations or factors to think about. There are a lot of subjective aspects as well as physical circumstances (like temperature, sinus pressure etc.) that affect things.

    It may sound silly, but for shits and giggles you could try a kind of 'negative' test. Use exactly the same player/config, but listen to your test track(s) with the lights on, and then with the lights off. See if you can 'make' yourself hear a difference. If you can, then you have an illustration of how a purely subjective factor can affect what we think we hear.

    I'll also dig up a few theory posts that should be relevant to your understanding of the playback process.

    I like your attitude, though - there is no replacement for personal experience and experimentation, if for no other reason than to find out what YOU like.
     
  4. GoodEnoughGear

    GoodEnoughGear Evil Dr. Shultz‎

    Pyrate
    Joined:
    Oct 25, 2015
    Likes Received:
    3,070
    Trophy Points:
    113
    Location:
    Cape Town, South Africa
    OK, first and maybe most important post. This is measurement done by @atomicbob (who is a treasure trove of information) to see whether USB bit perfect playback is in fact bit perfect. He is testing the USB chain, but this is relevant to your case, because his conclusion is that USB (as long as it's not a crap implementation) allows for bit-perfect transmission of audio data. In my opinion, this would be the same result for any competent player using WASAPI or ASIO. You'll notice he doesn't test a bunch of players and versions, but that in itself is meaningful - if there are typically differences at a bit level, it would be highly unlikely that he would get this result with the first player he used, no?

    http://www.superbestaudiofriends.or...erfaces-and-bears-oh-my.62/page-38#post-75946

    Edit - spelling
     
  5. GoodEnoughGear

    GoodEnoughGear Evil Dr. Shultz‎

    Pyrate
    Joined:
    Oct 25, 2015
    Likes Received:
    3,070
    Trophy Points:
    113
    Location:
    Cape Town, South Africa
    Here is the MSDN (Microsoft Developer Network) article on how WASAPI works with a hardware device whose driver allows for offloading of the audio processing from the operating system. This is the case with an external DAC...youll see that the stream bypasses all the internal OS stuff and is sent directly to the hardware device (DAC/Amp). All the player is doing is sending a stream of bits, there is no audio rendering or processing done at all on the computer. Unless you have the audio player resampling or applying some other digital-domain effect (in other words modifying the bits) there should be no difference between any number of players doing this work.

    https://msdn.microsoft.com/en-us/windows/hardware/drivers/audio/architectural-overview

    [​IMG]
     
  6. SSL

    SSL Friend

    Pyrate
    Joined:
    Nov 12, 2015
    Likes Received:
    1,239
    Trophy Points:
    93
    When is the sample clock applied to the stream? That is, at what point would jitter enter the equation? Is that done at the API level, USB bus, or ...?
     
  7. GoodEnoughGear

    GoodEnoughGear Evil Dr. Shultz‎

    Pyrate
    Joined:
    Oct 25, 2015
    Likes Received:
    3,070
    Trophy Points:
    113
    Location:
    Cape Town, South Africa
    There will be others here who know this in more detail, so I stand to be corrected, but I understand this would be taken care of in the WASAPI layer. Clocking is actually a little more complex depending on the specific implementation...the low level APIs for implementing a WASAPI driver (from what I can gather) allow for the reference clock to be supplied via an interface, meaning it could be the System clock (worst case) or a dedicated clock elsewhere in the system or potentially even outside (external refernce clock). But essentially it happens in the WASAPI layer. Then there will be a PLL type lock on this clock from the client device (DAC) IF it does not do its own reclocking, which most DACs do today, espoecially if it supports an async interface to get the audio stream.
     
  8. Torq

    Torq MOT: Headphone.com

    Pyrate
    Joined:
    Jan 15, 2016
    Likes Received:
    8,193
    Trophy Points:
    113
    Location:
    Seattle, WA
    For a USB connection using the USB 2.0 Audio Specification there is no "sample clock" in the data stream, just bit-depth and sample rate in the sub-frame data. It's a packet based delivery system. It's up to the receiver (in the DAC) to buffer those packets and then clock the sample data they contain out of the buffer based on the control information that accompanies the audio sample blocks.

    The UAC2 spec defines how timing should be computed based on the audio frame sync word and the reported playback delay of the endpoint but this is largely irrelevant for a single DAC on a USB connection. That information is present, primarily, for multi-device synchronization purposes. And even when relevant it's still processed on the DAC end (this is why Master Word Clocks exist ... so that all receiving DACs are slaved to a common time-base in order to perform the correct calculations on the sync data to play in unison) - it's just data as far as the source in concerned and is part of the same packets as those carrying the sample data itself.

    This means that the computer hardware and the player software will not be a factor in jitter as it relates to the audio stream and it's processing in the DAC. Only the DAC's internal clocking (out of the buffer and into the I2S connection) has any relevance to AUDIO (sample-clock) jitter here. The computer's hardware, and USB interface firmware (depending on chipset/implementation type) can/will impact jitter in the USB data delivery, but that's irrelevant to the audio/sample clock. As long as data arrives fast enough to keep the receive buffer in the DAC fed you're fine ... and if not, you'll get dropouts, not sample-clock jitter.

    ..

    If you're using a TOSLINK or COAX S/PDIF connection, the clock will almost always be generated in hardware or microcode in a controller/chipset. It certainly won't be modulated by the software player. The player will just specify the sample rate and then populate the bit-depth flags in the S/PDIF output frames (and that's generally taken care of by an API abstracting a driver setting for you ... you just keep stuffing a buffer with data and let the OS's subsystems do the hard work).
     
    Last edited: Jan 4, 2017
  9. m.i.c.k.e.y

    m.i.c.k.e.y Facebook Friend

    Joined:
    Mar 25, 2016
    Likes Received:
    150
    Trophy Points:
    43
    Location:
    Eternal City
    I am not that savvy about the technicalities /technologies involved. But I know what I hear and I know what I like.

    Was curious and been comparing (for years) about this Foobar/JRiver thing. And on my ears, I like Foobar's cleaner presentation on sound reproduction (by a hair). But it ends there. It can't touch JRiver's capabilities on multimedia reproduction (audio, streaming, film/movie, TV, image, browser) and ease of use/UI. Picture this: watching a 4K film w/ audio upsampled to DSD256.

    It's a one stop shop, Foobar can't do that (and you need other Apps to play other media). For this I always stayed with JRiver. Not that I
     
  10. Kattefjaes

    Kattefjaes Mostly Harmless

    Pyrate
    Joined:
    Sep 5, 2016
    Likes Received:
    4,521
    Trophy Points:
    113
    Location:
    London, UK
    Wait, did he just offer to film his mother for us? That escalated quickly.
     
  11. beemerphile

    beemerphile Friend

    Pyrate Contributor
    Joined:
    Dec 19, 2015
    Likes Received:
    755
    Trophy Points:
    93
    Location:
    Danielsville, GA USA
    Wow. Fourteen pages about the complexities involved in convincing a distracted personal computer to cough up music with something resembling fidelity. More power to you folk who have the spare brain cells to figure all that out. Takes all I have to make my heart pump and my lungs go in and out. I fought with JRiver on Windows; iTunes on Windows and Mac; and a never ending stream of hardware tweaks and upgrades until I couldn't stand it (or do it) anymore. The player quits after an OS upgrade because it needs a version upgrade or a new USB driver. My big number JRiver version gets EOL'ed and I have to buy an update. iTunes doesn't like my database of 5,000 FLAC files and wants me to convert them all to ALAC. So I bought a couple of Auralic Aries Mini boxes. Hook them up with S/PDIF and USB can kiss my ass. Five Ben Franklins each with a free year of Tidal HiFi. They find music on my network I thought I'd lost. Now if they need an update, Xuanqian Wang seems to call them while I'm asleep and tell them what they need to know. Mo' betta for my time-addled brain.
     
  12. GoodEnoughGear

    GoodEnoughGear Evil Dr. Shultz‎

    Pyrate
    Joined:
    Oct 25, 2015
    Likes Received:
    3,070
    Trophy Points:
    113
    Location:
    Cape Town, South Africa
    I'm way too OCD for that...I need to know what's where and what's doing what. maybe one day... :).
     
  13. lm4der

    lm4der A very good sport - Friend

    Pyrate
    Joined:
    Sep 26, 2015
    Likes Received:
    1,461
    Trophy Points:
    113
    Location:
    Seattle, WA
    I can't help but start down the road of Bill & Ted nostalgia.

    Missy: Hi, Bill. Want a ride?
    Bill: Sure, Missy.
    [she draws a blank stare at Bill]
    Bill: I mean, Mom.
    [she smiles and puts on her Ray-Bans]
    Ted: [whispering to Bill] Your stepmom's cute.
    Bill: Shut up, Ted.
    Ted: Remember when she was a senior and we were freshmen?
    Bill: Shut up, Ted!
     
    Last edited: Jan 5, 2017
  14. Torq

    Torq MOT: Headphone.com

    Pyrate
    Joined:
    Jan 15, 2016
    Likes Received:
    8,193
    Trophy Points:
    113
    Location:
    Seattle, WA
    Sticking purely with USB Audio for now ...

    Since USB Audio 2.0 output can be proven to be bit-perfect (i.e. the samples in are the same as what comes out), and where bit-level issues arise they are easily and reliably detectable* (via in-stream CRC), and the sample-clock isn't even under the control of the player or, even, the OS, API, drivers or USB hardware interfaces, so it can't effect jitter directly there are really only two ways in which a software player can affect the sound:

    First, it might alter the bit-level data. This could be deliberate, via EQ, DSP or other specific, intended, effects. Or it could be inadvertent ... which in modern systems generally means an incompetent implementation. This is easy to determine, however, and we can assume (and prove if necessary) that all reasonable players that claim bit-perfect output can actually deliver it.

    Second, the load/demand the player (and every other process running!) puts on the overall system (CPU, RAM, GPU, I/O etc.) will cause fluctuations (noise) in the power rails which might, ultimately, find their way to the physical (electrical) connection to the DAC and influence the analog electronics it contains somehow. PCs are extremely noisy from an electrical perspective, so this isn't much of a stretch - in theory. In practice, while it's easy to see such noise at the USB output, it's MUCH harder to do anything consistent in software that will meaningfully affect it!

    Unless your computer is running a single, real-time, process and has no interrupt-bound operations occurring, load and the power demands that result from it varying, is very hard to predict. It's highly unlikely that making just one process super-efficient or "clean" on a modern desktop OS will have any directly discernible, or meaningful, effect on the overall power/noise profile of the system as a whole unless it was quite demanding in the first place.

    And then the noise will vary with every operation the machine performs (including invisible-to-the-user stuff like NTP updates, cache maintenance, memory compression, responding to network traffic, garbage collection), which will tend towards peaky, if low-level, load. The practical upshot of which is that it's almost unfathomably unlikely that you'd ever get a CONSISTENT effect (e.g. better resolution, bigger stage, cleaner treble) from using one player over another even if those players were affecting the sound.

    This is without considering the effects of random noise and the effects it has on the electronics of the DAC which, again, is unlikely to be the same from one DAC to another.

    Reducing electrical noise in the physical interface to the DAC can have measurable differences in overall performance (whether they are audible is another matter), but you need to do more than just change one piece of software on a system to have a reliable and specific, effect.

    --

    *They're not correctable, however, as USB Audio does not support re-transmit not does it carry ECC information.
     
  15. lm4der

    lm4der A very good sport - Friend

    Pyrate
    Joined:
    Sep 26, 2015
    Likes Received:
    1,461
    Trophy Points:
    113
    Location:
    Seattle, WA
    ^^ excellent writeup @Torq
     
  16. Renekton

    Renekton Acquaintance

    Joined:
    Jan 12, 2016
    Likes Received:
    89
    Trophy Points:
    18
    Location:
    Bulgaria
    Oh dear.
    ...
    I did three 10 try blind tests. RESULTS: 4/10, 5/10, 5/10. Random.org was used to generate a random number form 0 to 1. My mom played me foobar for 0 and Jriver for 1. I had no Idea If I was guessing correctly until each set of 10 tries ended. The third set was in ideal conditions - I had good sleep, I drank coffee and I smoked some green.

    Where do I even start... I'll leave the apologetic part for later, the interesting thing is that during the all the testing I genuinely thought I heard the differences. Well, @Im4der was right, comparing players turns out to be fringe, maybe even worse than cables. Thank you @GoodEnoughGear (you were right, I'ts so damn easy to get influaced) and @Torq (I guess you're right, sir Life-After-Yggdrasil, electrical noise and jitter can not be (easily) influanced by software) and everyone else for responding to my GUTB-preachy-schiitpost with legit discussion.

    So as I was saying, for over a week I was so damn sure I can hear a clear difference between the players, as you all saw (yes, my ears are pretty red, of course) I even described the "difference". I guess (as GoodEnoughGear kind of predicted) the different interfaces made me perceive each player as different, like, feeling differently emotionally for each player. Or other brain stuff. End result: placebo.

    Umm... sorry? Apparently I have much to learn. I imagine part of the problem is that I cannot afford to try many different pieces of audio gear, so I got really hyped up when I could "hear the difference" between players.

    BTW I emailed Alex Peychev (from APL) about what I "heard", and he didn't really buy it (good job Alex), BUT he said that wasapi sounds "softer" than ASIO and that ASIO is the best way to bring audio from a PC to a DAC... Actually I have more to share - I auditioned Alex Peychev's home speaker setup, his studio monitors (briefly) and his LCD-X (briefly, but only out of a "small" APL DAC into my magni 1) and my mom's HD598 on the same DAC and amp. In his email he also told me he has finished his headphone output stage (amp) for said dac and next time I go we will listen to the headphones out of it. When that happens, in which thread do you guys suggest that I post my impressions??? For now I can say that the speakers were amazing (flat, low distortion, dynamic) and it's there that me and my mom heard the difference between a PC (USB) and an APL custom CD player feeding said speakers. Alex played the same track on both, of course. PC was grainy, harsh, bright. Now I don't wanna say "I failed the blind test but I'm 100% sure about this one", nonono, I'm alergic to being "sure" from now on. However the important data point here is that my mom said it was very different and she liked the CD player a lot. Also we got to hear his vynil setup for a track or two. My mom loved it. More about the speakers: 4way setup: supertweeter, tweeter (crossed over from 2.4kHz upwards), woofer and sub. Two passive membranes on the back (in stead of ports). I had no idea such things exist.

    Damn it guys, you have so much experience that the wisdom just comes naturally to you. I'm not there yet ;_;
    I hope this here post at least slightly compensates for my earlier rambles.
    I love you all, even those of you who don't love me back!
     
  17. Garns

    Garns Friend

    Pyrate
    Joined:
    Jul 9, 2016
    Likes Received:
    2,483
    Trophy Points:
    93
    Location:
    Sydney, AUS
    If you want to compare audio players and see if there's a difference, I am all in favour of it: it's free, it's easy to do, and at worst you can conclude that there is no difference. I long since gave up on trying to figure out what "should" and "should not" affect the sound. You just have to try stuff and trust your ears. I agree that trying players out is a bit fringe, and whenever I have done so I have never heard a difference myself. But I have managed to hear for myself that different firmware revisions on DAPs sound different, and that different drivers for soundcards sound different, so this isn't a million miles away.

    In this situation I am not sure if blind testing is helpful. Blind testing is pretty stressful and messes up the way we usually perceive sound. If you think you heard a difference sighted, and have a clear preference, then you may as well go with the one you prefer. At worst there is no difference, at best there is a difference and you have chosen the one you prefer.

    The problem is when something is fringe and also expensive. If cables were less stupidly priced then I think there would be much less of an issue believing that cables make a difference. The problem is that the difference is not proportionate to the cost.
     
  18. rainer.skill

    rainer.skill New

    Joined:
    Jan 6, 2017
    Likes Received:
    7
    Trophy Points:
    8
    Location:
    Germany
    Does it make sense to upgrade to a really good dac and headphone amp if spotify is used as a source (it's not flac / lossless). Or would the source just be too bad so that better dacs / amps wouldnt have any audible effect?
     
  19. Azteca

    Azteca Friend

    Pyrate
    Joined:
    Sep 26, 2015
    Likes Received:
    1,581
    Trophy Points:
    93
    Location:
    Cincinnati, Ohio
    I listen to the higher quality tier of Spotify all the time and it sounds pretty good. Go for it. But if you're talking really big bucks you may as well spring for that lossless tidal subscription if you want to be sure. But Spotify is excellent with their genre playlists and artist radio stations. Tidal falls short in comparison.
     
  20. beemerphile

    beemerphile Friend

    Pyrate Contributor
    Joined:
    Dec 19, 2015
    Likes Received:
    755
    Trophy Points:
    93
    Location:
    Danielsville, GA USA
    True that. Even Pandora beats Tidal on curation. Hopefully they will pick up their game.
     

Share This Page