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: 01 January 2010 by Mr Underhill
Errata:

Posted a link on the CMP2 website and got this response from Ryeland.


Many thanks for the link. Just for the record:

1. The paragraph starting "To assist, cics has written two Java-based programs for generating and managing cue files . . ." and the following one are not quite accurate. The program (Recursive Cue Creator - 2009's Utility of the Year as far as I'm concerned) was written by AA list member Alan Jordan.

2. A tiny quibble. The replacement for the Explorer shell is called cMP (cics Music Player) and the player, as you note, cPlay. It's the two together that were named cMP2, i.e. cMP squared.

Not that it greatly matters but that's surrogates for you. (Give 'em 'alf a bleedin' chance and they'll even go saarf of the river after midnight . . . ) *

Dave

* Don't ask - it's a London thing. See OP's profile.
Posted on: 01 January 2010 by js
I don't see upsampling asymmetrically to 192k as anything beneficial for your DAC as the oversampled stream will not be identical to what the converter would see from the 44k output. Foobar is also a significantly lower resource player. I also haven't been a fan of ASIO4all compared to true KS or ASIO but I can't argue with your results in this environment. Smile I like the dedicated part. Even though these players don't always like a WAV library, you really should try ripping some files directly to wav and comparing to FLAC. If you're trying to minimize processes, this one is directly involved in playback and also will involve additional buffers. I'd compare the players again with wav. That you prefer the async upsampling may continue but it's also possible that it's just nicer sounding to you which is also great as I may be also have a bias. The best upsampling I've heard does use higher rates like 176 or 192 but usually the better software/hardware do both to maintain symmetry. Are you using upsampling in Foobar?

I just checked my task manager at home on W7 and with just that open CPU usage averaged 1% with less than 1g of ram taken. CPU did jump up to 5% momentarily but most of the CPU usage and a some RAM was from the task manager itself. Of course there's more to it than that but I also suspect that your using more resources in the cPlay configuration and FLAC than you would from Foobar/WAV in a resource managed OS. So much to consider. Confused
Posted on: 01 January 2010 by Mr Underhill
Hi JS,

I'll redo the listening with straight WAV.

As for upsampling: I obviously have been unclear - I have turned it off!

I prefer no upsampling. However, that organic feel it delivers is provided via CMP2.

I found cPlay + upsampling added a feel of warmth, but made the music turgid and uninteresting, lacking bite. Sorry, this is getting like describing the taste of a wine!

Happy New Year!

M
Posted on: 01 January 2010 by js
Big Grin And to you!
Posted on: 04 January 2010 by Graham Russell
quote:
Originally posted by Mr Underhill:
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.

M


I've managed to get CMP2 and cPlay working on a XP SP3 system. This is not a dedicated music system so I haven't delved into turning off system stuff. However, it immediately sounds great.

cPlay has the option of selecting the playback frequency. Does anyone know if it's possible to get cPlay to pass through the original sample freq? I have a few 24/96 downloads and I'd prefer to not have to adjust playback settings if possible.

I will be getting an ESI Juli@ card very soon so perhaps a dedicated ASIO driver rather than asio4all will help with this???

Any other tips and suggestions for playback settings?

Cheers
Graham
Posted on: 04 January 2010 by Graham Russell
Just swapped player from cPlay to Foobar2000. Got more playback controls and it sounds great Big Grin

Obviously locking the computer down and playing back from memory makes a difference.

Graham
Posted on: 04 January 2010 by Mr Underhill
Hi Graham,

Not to sure about your last post - so you switched from cPlay to Foobar2000, and your running cmp2?

..Foobar2000 + memory player?


Settings for cPlay:

If you are using Asio4all this has setup instructions in the manual.

cPlay - is less than explicit, BUT I think the way it works is that if you select 44.1 then, assuming this is the lowest sampling rate in your files, nothing will be upsampled.

If you select 96Khz then all files that are LESS than this will be upsampled, and those that are equal or greater will be passed through.

The various upsampling methodologies can be selected.

Alan has just posted a new version if cPlay List Editor, which allows greater control of upsampling:

http://www.audioasylum.com/for...essages/6/67938.html

M
Posted on: 04 January 2010 by Graham Russell
M

Yes, I meant I replaced cPlay with Foobar while still running CMP2.

I really don't want any upsampling during playback.

In cPlay there doesn't seem any way to turn off DSP during playback. Foobar seems to offer more control over this. Which sounds better? Not sure yet and will wait til I get all the hardware together before making a decision.

I'd really like files to be played back at their "native" sampling rate and have the playback hardware detect and react to the sampling rate. From what I've read the Juli@ asio driver can do this. Hopefully I'll find out very soon....

This is much more fun that putting a CD in the 555 Smile
Posted on: 05 January 2010 by goldfinch
Thanks Underhill for such an informative post,
I use JRiver 14 and I found similar experience with its upsampling utility, it kills music in some way, it is great to see PC users in the forum,
Glad to see growing interest in PC-based servers among so many Mac users!
Posted on: 05 January 2010 by Occean
Cheers for the write up - I am going to give this a go!
Posted on: 05 January 2010 by secret gardener
Like goldfinch I am also using JRiver 14 as a library management system as I am impressed by its tagging and playlist capabilities.

Having recently switched to a Ripnas Statement I can now banish the straightforward PC from the listening room.

I came to this site to learn more about the Nain dac and its possible use in my system.

Like Mr Underhill I am a convert to the M2Tech HiFace and Asio4ALL, which I came to by accident while looking for an ASIO driver or wrapper to suit the native ASIO support of JRiver.

It is a good way of routing an s/pdif output into my existing Music Fidelity TriVista dac.

And it means I can review the Naim dac and if an improvement it slips into my present arrangement with a cable swapover and no griping about the lack of usb or firewire connections.

As the Ripnas is headless a cheap Asus netbook serves as a remote control.

The next step will be to try an alternative ASIO driver recommended by js, which should ensure playback of HiRes files which Asio4ALL is not guaranteed to deliver as bit perfect output.

My thanks to those who are posting their findings here and helping to spread appreciation of good quality sound from hard-drive based systems that avoid the Hifi manufacturer's ripping and library management and playback systems.

Paul
Posted on: 05 January 2010 by js
If you do try it with Foobar. Make sure you have your music access and foobar open before you start cMP. You won't be playing from memeory but in a minimized resource environment. I'll also give it a go in a good setup at some point and get back. Memory player sounds interseting but the resampling puts me off.
Posted on: 05 January 2010 by Mr Underhill
quote:
Originally posted by Graham Russell:

This is much more fun that putting a CD in the 555 Smile


Graham,

How do they compare?

M
Posted on: 05 January 2010 by Graham Russell
quote:
Originally posted by Mr Underhill:
quote:
Originally posted by Graham Russell:

This is much more fun that putting a CD in the 555 Smile


Graham,

How do they compare?

M


I'll give it a try and let you know.

My Juli@ card will hopefully arrive tomorrow so I can compare that to the coax S/PDIF on the motherboard that I'm using right now.
Posted on: 05 January 2010 by Graham Russell
quote:
Originally posted by Graham Russell:

I'll give it a try and let you know.



I wish I hadn't done that.

Using ASIO4ALL with cPlay/CMP it sounds pretty much the same as the 555!! This is with a lowly Lavry dac. I dread to think how much better it would sound with the Juli@/ASIO and a better dac Smile
Posted on: 05 January 2010 by goldfinch
Thats good!
I think I should give a try to cplay/CMP with my Lynx AES16 Winker
I found a noticeable improvement when I upgraded from an M-audio 192 to the Lynx card, but that was through MediaMonkey,
Posted on: 05 January 2010 by Graham Russell
I would certainly give CMP a go. It's dead easy to install.

When I finish building the silent PC I will have a go at stripping down the OS as described on the CMP2 website.
Posted on: 05 January 2010 by Mr Underhill
Thanks Graham.

I've got to say that I am VERY pleased with what I'm listening to.

M
Posted on: 06 January 2010 by Mr Underhill
I wrote the above - which I now think is WRONG!!

quote:
Originally posted by Mr Underhill:
Settings for cPlay:
cPlay - is less than explicit, BUT I think the way it works is that if you select 44.1 then, assuming this is the lowest sampling rate in your files, nothing will be upsampled.

If you select 96Khz then all files that are LESS than this will be upsampled, and those that are equal or greater will be passed through.

M


I turned on the diagnostics within cPlay and READ the output.

If you select 44.1 and play a 44.1 file it states 'resampler bypassed'.

It does NOT say this for a 96 file!

If I select a 96 file from within CMP with 44.1 selected within cPlay, and then alter it to 96 - I need to STOP cPlay and RESELECT the file in CMP in order to get cPlay to NOT resample - or at least state that it is not.

Hope this is not opaque.

M
Posted on: 06 January 2010 by js
It's not and a huge inconvenience. I'm always a bit surprised by sounds the same as statements. I've rarely found different bits to sound that similar regardless of quality. I'll compare to the Wavelab player/Foobar etc in the next couple of days and get back.
On it's own, I don't find cMP actually does much about resources. Open the task manager, click on performance and then open cMP. You may not notice any average change. Of course this may depend on how well you PC is arranged and managed to begin with. No one can tell in use but I already have many unneeded services and startup options turned off.

None of this means that it can't sound better in a good system or purpose built PC but you'd assume it would make a bigger difference in a standard config. Like I said, I'll give er a go soon with true ASIO.
Posted on: 06 January 2010 by Mr Underhill
Graham,

Can you tell me how you set up Foobar and CMP?

I altered the CMP pth file so that cue files were passed to Foobar.

This resulted in Foobar being called - but doing nothing.

I decided my rubyripper generated cue files may be an issue - and so deleted them and regenerated a new set.

I then tested these, calling foobar from a command window feeding in the cue file - which worked.

When I tried to call from CMP it worked - intermittently! And even then, when I closed Foobar CMP did not re-open.


I have learned some more about Foobar and CMP, but still no success.

I am now intending to uninstall cPlay & Asio4all, in case they are interfering.

Any advice? How do you have them configued?

Are you running on XP?

Thx,

M
Posted on: 06 January 2010 by Graham Russell
M

Yes, I'm running XP.

I didn't do anything special to get Foobar to work from CMP. I just modified the CMP config file as per documentation.

I have cPlay and Foobar happily installed on the system together.

Where are you in the UK. It would be interesting to chat offline to share thoughts etc. All the bits for my silent PC have shipped so subject to delivery I will be building it very soon Smile

Graham
Posted on: 06 January 2010 by Mr Underhill
Hi Graham,

Assuming you are Lightwater, Surrey then about 15 miles from you!

Do you want to drop my an email?

thepalantir at hotmail dot com

M
Posted on: 06 January 2010 by Graham Russell
Email sent...
Posted on: 07 January 2010 by Mr Underhill
....and replied!