CMP2 / cPlay and asio4all / Foobar2000 and Kernel Streaming

Posted by: Mr Underhill on 01 January 2010

Thought I'd write up my experiments over the last few days comparing CMP2/cPlay to Foobar2000. In writing this I am fully cognescent of the fact that comparing software players is even MORE complicated than writing about the relative merits of pieces of HiFi!

In HiFi you have a fixed point in the article itself, this is then complicated by everything from the quality of the mains to the interconnects that string things together.

In software you also have everything from the PC hosting the software to the layers of services that interface the program to the underlying hardware! Not to mention HOW you decide to rip your media!

This is one of the reasons why I really like the theory of the relative purity of CMP2.

CMP2 can be found here:

cPlay

The 'Enjoy The Music' computer audio software of the year in 2008; but does it make any difference?


Foobar2000 + Kernel Streaming

Very easy install and configuration. Double click the exe, download the KS dll and place it in the described directory. Set the output options and you're off and running.

FB is VERY configurable, but my aim was sound quality and so I am running the graphics in minimal mode.

Setting up the playlists is easy. The files appear to be streamed out at the recorded rates - but I have NOT tested this.

As mentioned in my thread 'Digital Front Ends: Thoughts and the HiFace.' I used the procedure for stripping down XP to a minimal install, this is what I loaded Foobar2000 + Kernal Streaming onto, and was very impressed; beats my Naim DVD5 into a pummelled mess.

Using 'Les Miserables' as an example:
I have always loved this musical and have the double CD of the 10 year anniversary that was held at the Royal Albert Hall. The music is full of multiple singers singing different lyrics off one another. In listening via Foobar2000 two things struck me IMMEDIATELY:

1. The quality of the bass, in terms of depth and control, had leapt forward; and
2. The separation of the musical threads had increased - I could follow the competing lyrics with ease.

BUT, I still had the feeling that I was listening to a HiFi, and these are very HiFi observations - not simply getting into the MUSIC; which is what I feel with my LP12.

So, how about cPlay?


cPlay + Asio4all

I didn't think cPlay was an option AT ALL. Using the M2Tech HiFace you use bespoke drivers, and so asio appears to be off the menu, but then I read this:

HiFace and asio4all

Encouraged I loaded up asio4all and cPlay - and got action!

The install is as easy as Foobar2000, but the interface is more primitive. cPlay relies on cue files, that is text files that list files in a special format, these are generated automatically by many ripping pieces of software - such as rubyripper.

To assist cics has written to java based programs for generating and managing cue files, and so I had to install Java as well. Once installed both programs functioned as promised.

Things to note:
Cue files generated by rubyripper live within the directory where the files reside, and so do NOT have an absolute file path.
Cics programs can generate cue files to a central cue file repositary, these do have the FULL file path.
Cics programs can generate cue files with no name, e.g. ' - .cue', these then over-write each other - be mindful.

The CMP2 website has advice about cPlay setup, one thing that is NOT explicitley stated:
You select an OUTPUT rate, from 44.1 to 192.
If the file you play is of this rate it is just passed through. If it is lower it is UPSAMPLED.

Again, what is NOT stated is what happens when you play a file of a HIGHER rate. Is it DOWN-SAMPLED? I have posted a question to clarify, I hope it is passed through unaltered. This is important for me for reasons explained in my example review below.

cPlay offers a number of schemes for upsampling, depending on the processing power available. I have NOT tried all the variations, but I have a feel for what is on offer.

Using 'Diana Krall - A Night in Paris' and 'Led Zepplin - IV' as examples:
I am NOT a fan of Diana Krall, but I do enjoy this album as she sticks to the great American songbook, and does it with aplomb.
I had selected an output of 192KHz, and the rip was of my CD, and so at 44.1KHz 16bit.
I select the VHQ upsampling.
This will then have been handled within the Benchmark DAC1 I use.

I really was VERY taken with the analogue sound that was produced - excellent, at least in some ways.

I then played the Led Zep, and could here what the upsampling was doing, but it was removing BITE. It all sounded a bit, well, BORING.

I moved back to Foobar, which was very good, in the ways described above.

I then moved back to cPlay, but set the output to 44.1 - and so avoided upsampling, and matched Foobar2000.

Upsampling definitely is interesting, and I can hear why it could be excellent when applied to the right music in the right way - but I am wary that the effect may need to be managed on a case-by-case basis.

So, what is I load up CMP2?


CMP2 + cPlay + Asio4all

Even stripping down Windoze you are left with certain processes that the OS needs to fulfill its generalist requirement, such as explorer - try killing it and see what happens.

Cics wrote CMP2 as a minimalist Windoze shell. This shell has only ONE purpose, present a minimal window for listing cue files, and feed these into cPlay. It kills explorer, and allows you to optionally do the same to svchost and lsass.

Now here is where I ran into a few blue screens of death, normally pointing at the USB drivers. However, I don't think that was really the cause.

I had turned off the Windows audio service - that is the integrated soundcard. However, starting cPlay via CMP2 I noticed that it hadn't picked up my stand-alone cPlay configuration.

After my third blue screen I started digging around the ini files, hoping that I might find the CMP2 settings, and edit the relevant file - I failed.

I booted the laptop with the HiFace in situ. Opend CMP2 and selected a cue file. Opening cPlay I went to the advanced menu and turned off the auto detected internal soundcard.

Things now are working fine - but I am concerned that this setup may be somewhat delicate. But what about the sound?


Using my choir carol service and Jools Holland - Best of Friends:
Bottom line is that this is the BEST digital I have ever heard.
This has all the HiFi aspects described above, but also the organic feel introduced by upsampling - but without over-egging it. Iam running with an output of 44.1, to avoid upsampling - but I will be experimenting further.


Conclusion

Foobar2000 and Kernel Streaming produce some great music, and have a simple interface that can be honed by the user.
cPlay and Asio4all has a clunkier interface, but more options for shaping the sound.
CMP2 plus cPlay and asio4all has it all. As long as you have a PC you can dedicate to music, and you are not after bells and whistles in terms of internet access, streaming etc.

Been working my way through a lot of files over the last two days. In fact ripping all my CDs to flac, and re-organsing the file structure, and generating and manually editing cue files.

M
Posted on: 07 January 2010 by Mr Underhill
Foobar2000 + CMP

I ended up deinstalling:

Asio4all, Foobar, cPlay & cMP

and reinstalling Foobar2000 & cMP.

Edited cMP pth file.

Now working as described.

..sounding good.

M
Posted on: 07 January 2010 by Graham Russell
For me a key difference between cPlay and Foobar is that Foobar is able to pass through the frequency of the file whereas cPlay needs a sample frequency set and will resample if the file being played is not the same. This can result in cPlay upsampling and downsampling. Therefore, Foobar is better at handling 44khz and 96khz files.
Posted on: 09 January 2010 by Graham Russell
Juli@ arrived today. After wrestling with the drivers it's running. I'm still waiting for the bits for my silent PC so I've installed it in a system I use in my photo studio.

Quick listening via Foobar is very positive. As mentioned earlier Foobar and Juli@ asio driver auto sense frequency of music being played. The sample rate correctly changes from 44.1khz to 96khz on the Lavry as I change from low res to high res music Smile

I've also put the Lavry into Narrow as I assume the stream coming out of the Juli@ is pretty much as good as it gets.

Time to have a play with CMP and cPlay


Graham
Posted on: 09 January 2010 by Mr Underhill
quote:
Originally posted by Graham Russell:
... Foobar is better at handling 44khz and 96khz files.


I agree.

Look forward to your ongoing reports:

Julia vs HiFace.

M
Posted on: 09 January 2010 by Graham Russell
quote:
Originally posted by Mr Underhill:
quote:
Originally posted by Graham Russell:
... Foobar is better at handling 44khz and 96khz files.


I agree.

Look forward to your ongoing reports:

Julia vs HiFace.

M


If I can get my hands on a HiFace can put then head to head in the same system Smile
Posted on: 09 January 2010 by Mr Underhill
Well ....that's NOT a problem!
Smile

M
Posted on: 09 January 2010 by js
Good luck guys. It still seems to me that an outboard interface could have an advantage if it can be powered by a nice linear supply and has a decoupled COAX out. Especially with some advanced clocking. Of course, results matter more than theory. Smile
Posted on: 09 January 2010 by Graham Russell
Let's see how the listening tests go. I need to hook up with Mr Underhill...
Posted on: 14 January 2010 by Graham Russell
I finally got the bits today for my silent PC. All built and running with a stripped down XP operating system. Having a listen with CMP/cPlay/Juli@. Very happy with what I'm hearing so far. I expect I will refine the OS environment but I want to spend some time listening to this baseline set up.

I think I've finally got extremely low, bit perfect playback. Bit perfect is pretty easy, but jitter takes OS tuning to reduce.

Graham
Posted on: 14 January 2010 by pcstockton
Cool Graham!!!!! I wish the CMP model was around when i built/modified my Dell. I did everything I could to mitigate noise. Reading this has me reconsidering a rebuild in a new case.

I am not very interested in Cplay. But the CMP sounds pretty cool.

How is this used with Foobar? There is mention above about people using Foobar with the CMP shell? Is that right? If so, can anyone describe what to do?

thanks.
p
Posted on: 14 January 2010 by pcstockton
another question....

whats up with all of the re/up sampling? Can you turn it off?

I have downloaded and played with things on my lapper, but hesitant to bring it over to my main system where I can use it with an ASIO device.
Posted on: 15 January 2010 by Graham Russell
CMP manages the music library. So if using Foobar as the player, it is just a player. I haven't found a way of running Foobar normally under CMP shell.

I've not found a way to bypass the resampling in cPlay. This is not ideal, but setting it to 96khz with SRC resampling it sounds really good. This will upsample 44.1 music but pass through 96khz.

The GUI for CMP and cPlay is very very simple. I am likely to hide my silent PC away and use VNC to talk to it. These simple GUIs are ideal.
Posted on: 15 January 2010 by pcstockton
Luckily were are all well over 1000 posts.
Posted on: 15 January 2010 by pcstockton
What is the difference between "using Foobar as a player" and "running Foobar normally".

Does it not look and act the same when use with CMP?
Posted on: 15 January 2010 by js
I don't really understand why you would be this careful about keeping prcesses down and then use a lossless compression which requires an additional level of processing and buffers on playback directly involved with the stream.

When we're talking about Foobar, we're basically talking lossless as .wav though good sounding on this player is pretty useless via it's library. Now that's not to say there's anything wrong with FLAC or cMP as this isn't meant to be a format opinion discussion. It just seems counter productive to the principal of cMP to use lossless in Foobar or have upsampling like that of their own associated player. Confused It's like one of those products that is designed by commitee where two factions have different ideas of what the goal is or what's important to the end result. Again, proof is in the performance but I am a bit perplexed by the contradiction of purpose.
Posted on: 16 January 2010 by likesmusic
dBpoweramp have beta releases of their Renaissance media player available. It is, they say, "designed to be the most efficient (in terms of memory footprint and resources used) audio player ever designed", so this may particularly appeal to those of you wanting to minimise resources. It can also be used as a upnp renderer and has Linn DS extensions, so should support gapless playback.
Posted on: 16 January 2010 by pcstockton
JS,

I dont know anything about it. Without trying how could you know if it sounds bad, the same or even better? As you always say, experience often trumps theory.
Posted on: 16 January 2010 by Mr Underhill
Hi PC,

Not been around for a few days - work.

I couldn't find what you were referencing but I believe that:

Running foobar normally =
Just running it within the op system as usual.

As a player =
Setting up CMP so that when you select a playlist it feeds it into foobar.

In the latter case CMP kills a number of services, including explorer.

cics thinking is to reduce the OS footprint as much as possible. If you read the cMP webpages he goes into detail.

As you state, the proof is in the listening.

M
Posted on: 16 January 2010 by pcstockton
Underhill,

When running Foobar from within the CMP shell, will it look and act like it does when running it in Explorer?
thanks!
-p
Posted on: 16 January 2010 by Graham Russell
quote:
Originally posted by pcstockton:
Underhill,

When running Foobar from within the CMP shell, will it look and act like it does when running it in Explorer?
thanks!
-p

I'm investigating this right now. CMP does the memory buffering stuff for Foobar as Foobar doesn't have the capability. I suspect evwn if Foobar can browse it's library some of the benefits would be reduced as tracks/albums are not being loaded into memory. The reduced footprint of CMP would help though.

I'll report back when I've found out some more.
Posted on: 16 January 2010 by pcstockton
Thanks Graham.

I just tried myself and couldn't get anything to play. It said something about "32 bit only". I tried everything.

I am a fish out of water with this thing.

I couldnt even get cplay and cmp to work together.

In fact i am not even sure if I know what they are supposed to do. I had cue lists loaded into BOTH cmp and cplay. Are they both players? Confusing.

Not my bag.
Posted on: 16 January 2010 by Graham Russell
CMP needs the cue files to understand what music is available. Once an album is chosen the list is passed to the play - defaults to cPlay.

The docs describe how to replace cPlay with Foobar.

cPlay has it's own memory management. Foobar doesn't so needs CMP to preload stuff before starting Foobar.
Posted on: 16 January 2010 by Graham Russell
OK....

Foobar is not able to access it's library music when started from CMP. CMP passes Foobar a cue list for the chosen album.

I'm not convinced all the resampling in cPlay is a good thing. Foobar is able to play music in the native format without resampling or applying any other adjustments.

CMP + Foobar seems a bit of a faff to get memory playback. J River Media Center seems to offer all this without the agro Smile

I have stripped down XP and today replaced winlogon with minlogon as described in CMP2 pages. Every little helps Smile
Posted on: 28 January 2010 by hoverdonkey
Hello!

Has anyone managed a comparison of Hiface vs Juli@ yet?