Welcome Guest ( Log In | Register )

> Hydrogenaudio Forum Rules

- No Warez. This includes warez links, cracks and/or requests for help in getting illegal software or copyrighted music tracks!
- No Spamming or Trolling on the boards, this includes useless posts, trying to only increase post count or trying to deliberately create a flame war.
- No Hateful or Disrespectful posts. This includes: bashing, name-calling or insults directed at a board member.
- Click here for complete Hydrogenaudio Terms of Service

Closed TopicStart new topic
Improving foobar's bit-perfect sound reproduction, You thought it was impossible ? Read on then...
post Jul 3 2008, 14:33
Post #1

troll / ban evasion

Group: Banned
Posts: 244
Joined: 22-April 08
Member No.: 52991

Hi eveybody,

(foreword : in this topic I am NOT taking sides - just delivering some information to whom it may concern)

1. The problem

Well, we almost all know that foobar can deliver bit-perfect playback via Kernel Streaming or ASIO (there's even WASAPI now for Vista). So where's the point ? Isn't bit-perfect... well, perfect ? blink.gif

The point itself doesn't reside entirely within foobar, but also within Windows itself. dry.gif To keep it simple, let's just say that Windows' disk interference can alter sound reproduction : not by altering the bits themselves (since we're talking bit-perfect playback), but by altering the frequency at which the bits are delivered (this is generally referred as digital jitter). Digital jitter is sometimes audible and sometimes not : it depends of course on your ears and your hi-fi system. But the fact is that it exists anyway (this is a fact that has been proven a long time ago). So if we're looking for perfection, bit-perfect playback is a must... but it may not be enough.

2. A first solution

To avoid digital jitter, the first approach is called "memory playback" : the music is preloaded in RAM memory (not just a part of the file but the whole file(s), even before the playback begins). Another complementary approach can be getting rid of every part of Windows that can interfere with the sound reproduction (even in KS / ASIO mode) : for example replacing explorer.exe with something else.

Long story short, some folks at Sourceforge have been thinking about all this, and have released cMP (cics Memory Player). cMP is an open-source memory playback utility that can be used together with a player like foobar, in order to (theroretically) perfect the sound reproduction (provided you have a high-end audio system capable of actually making you hear the difference).
cMP 1.0 is available for download here : http://sourceforge.net/project/platformdow...group_id=111495
The manual (short, easy to read) is here : http://photos.imageevent.com/cics/cmp/Introducing%20cMP.pdf

Now let's get to the interesting part.

3. What about foobar then ?

cMP can be used together with a player... but AFAIK it just uses the player as... a mere player, not as a library management software. That means cMP has its own (and very simplified) interface. So for all of us who use foobar as a library management software, cMP doesn't seem to be the ideal solution. sad.gif

Yet the ideas that lead to cMP development remain interesting IMHO, and maybe they could lead to some future improvements in foobar's core ? Best of both worlds, that would be the idea. For example a user-configurable "memory playback" option where we could really define the amount of RAM that we'd like to allocate for playback (if we have 2 GB, we could be tempted to use almost 1 GB for playback, which would allow to preload either a whole music CD in decompressed WAV form or several 24-bit multichannel files in decompressed WAVX form).

Another solution would be to let foobar "as is", and simply develop a "lighter version" of cMP (without interface) that could somewhat replace explorer.exe while still allowing to use foobar as both a player AND a library management software. cool.gif

4. Another example

Still not convinced ? Well, let's take a look at this other project then : XXHighEnd.

This is about some new 'high-end' audio-player (commercial unfortunately), developed by a guy (some Peter... again ! biggrin.gif ) who was a former foobar user that wanted to improve sound reproduction while preserving bit-perfect. In his own words : "I know this sounds stupid, knowing - or assuming that bit perfect = bit perfect. But sadly, this is not so. This is not so at all because all is influenced by jitter. So you could well say that all XX is doing, is eliminating jitter"... rolleyes.gif

You can read more about it here : http://www.xxhighend.nl and more particularly this topic : http://www.phasure.com/index.php?topic=112.0

Again, it's not the guy's approach (commercial) that interests me, but rather the idea of improving sound reproduction towards a "double fidelity" approach : data fidelity (bit-perfect) and time fidelity (less digital jitter).

Well, enough said for now. Again, I'm not taking sides here. I just think all this information may lead to an interesting discussion - between open-minded people I hope - about the future of foobar's core OR the development of a lighter version of cMP that could run as an intermediary layer between foobar and Windows core. I guess most people won't be interested in this topic - but I hope there are some who will feel concerned. I also hope some foobar techies will be willing to participate.

I know this topic could lead to some over-passionate debate, so I would ask folks from all sides to remain calm and respectful, and to dissociate myths from facts without over-confidence. To be honest, I don't know if this topic will be useless or not : only time will tell. So thanks in advance for your constructive contribution.
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:


RSS Lo-Fi Version Time is now: 28th November 2015 - 14:04