• Disclaimer: This Vendor's Forum is a paid-for commercial area. Unlike the rest of diyAudio, the Vendor has complete control of what may or may not be posted in this forum. If you wish to discuss technical matters outside the bounds of what is permitted by the Vendor, please use the non-commercial areas of diyAudio to do so.

A multi-channel interface from PC - the Missing Link

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
So there is hope for BBB yet...

You can actually get eight channels out of your computer using the BBB. Russ has been meaning to post about this, so I will let him follow on...

That would be great. :up: I would be interested in Russ' objective option in how this option would compare to the other two possibilities I mention above.

@ArtsyAllen, I'd be interested to read of your uses for DSP. I'm running three BIIIse/Legatos via teleporters from my BBB. The BBB pulls stereo from the server and then actively divides it for multiple amps and their drivers. I've had some success with various IIR and simple FIR filters in the BBB. My next goal (though on the back burner for now) is to experiment with more powerful externally-processed FIR phase correction filters at the server level. These would "pre-treat" the stereo PCM signal that subsequently is processed by IIR filters at the level of the BBB.

My DSP outlook has changed a lot since I now have a Buffalo III and First One Amplifier. So giving You a link to one of my other threads would not be too helpful, as I have not updated them with the new discoveries. For one, I do not need to do near as much processing. In fact, I was doing everything FIR (including EQ), but the way I was doing it sounded too processed thru the new system above. Yet, the extra processing "clarified" my old rig. Now I run EQ and delay IIR via JRiver's PEQ and do phase adjustments in rePhase. I do everything manually and still have a lot to learn, in fact, re-learn. What I can say, is You are on the right track running just phase adjustments with FIR. RePhase is a nice piece of software, as it has a graphical interface so You can see what You are doing. What I want to experiment with next are the "windowing" options (Not to be confused with timing options in measurement software), like "retanguler", "blackman", "hamming", etc. Unfortunately, rePhase does not have good documentation, but there is a massively long thread about it, if You have patience:

http://www.diyaudio.com/forums/mult...hase-linearization-eq-fir-filtering-tool.html

Be aware that the BBB can output 8 channels of PCM but only 4 channels of DSD - it cannot render 6 DSD channels if you were to generate those signals in a PC. There is some interest by a few brave users to employ the BBB as a network audio adapter to render DSD as produced by HQPlayer software. This software can convert PCM to DSD (in hopes of eliminating some sources of noise). That work is ongoing - I'd be a contributor in that effort but for my 3-way active speakers...

I noticed that on Richidoo's post earlier in this thread, that BBB can only Output 4 channels of DSD. You mention HQPlayer. I know JRiver can convert PCM to DSD also, so I would think BBB would render that DSD also. May I ask, what are your subjective/objective impressions of DSD? You must find it favorable, as You are willing to contribute your time to that cause. How are You going to get your six channels of DSD, daisy chain two BBBs?
 
Member
Joined 2007
Paid Member
You mention HQPlayer. I know JRiver can convert PCM to DSD also, so I would think BBB would render that DSD also. May I ask, what are your subjective/objective impressions of DSD? You must find it favorable, as You are willing to contribute your time to that cause. How are You going to get your six channels of DSD, daisy chain two BBBs?

There are subjective opinions 'out there' on both the AKM DAC chip that converts PCM to DSD and on the JRiver conversion - they report that HQPlayer can be adjusted to sound better. As always, everybody's mileage varies. I've only dabbled with DSD because I don't understand exactly where in the reproduction path its 'design' is most beneficial. I suspect that high on the list is speaker cones, which are things that I mess with... For my main system I'm much more likely to swap in ES9038s than throwing out the BBB and adapting a different SOC computer as a 6 channel DSD player.

They say 3 moves equals a fire and I believe it. I've recently moved again and need to re-build speakers for the new space. But I'll get back to optimizing the BBB-based signal path ASAP. Cheers!

Frank
 
May I ask, what are your subjective/objective impressions of DSD? You must find it favorable, as You are willing to contribute your time to that cause. How are You going to get your six channels of DSD, daisy chain two BBBs?

I have installed the HQplayer endpoint on the BBB/Botic/Hermes/ect. Using Roon as the player I was disappointed in DSD converted by HQplayer. I realize that there are many different setting available and I did hear some differences when playing with that. A major issue I have with DSD is the "bump" between the tracks so I did not spend much time tweaking.

I did feel that PCM up sampled to 96k with HQplayer sounded excellent - better than with JRiver. My 30 days are up with HQplayer but I understand that Roon will soon be updated to include these features.
 
I suspect that high on the list is speaker cones, which are things that I mess with... For my main system I'm much more likely to swap in ES9038s than throwing out the BBB and adapting a different SOC computer as a 6 channel DSD player.

They say 3 moves equals a fire and I believe it. I've recently moved again and need to re-build speakers for the new space.

Yes, speakers are my current weak link too. I have three systems I am working on: a full-range cheap line array, a full-range rear horn (Avebury) and a 3-way open baffle system. I use a subwoofer with all the systems (making the open baffle system a 4-way). Now with DSP, I can take all these systems to new levels, so I am learning a lot about each different design, and preparing to build the ultimate system. :D At some point, I will have time to post my discoveries.

I did not realize Russ was working on a new Buffalo design with the ESS9038. This might be the reason why a multi-channel interface has not been a top priority. It also makes me a little reluctant to go with the BBB, as it is old tech and is limited. On the other hand, if I wait this out a bit, I may be able to procure more Buffalo III's for those wishing to upgrade to the Buffalo IV's.
 
Roon, HQplayer verses JRiver...

I have installed the HQplayer endpoint on the BBB/Botic/Hermes/ect. Using Roon as the player I was disappointed in DSD converted by HQplayer... ...I did feel that PCM up sampled to 96k with HQplayer sounded excellent - better than with JRiver...

Thanks pixelpusher, for the impressions. I do find it interesting how different pieces of software sound. JRiver does have one massive advantage for me over Roon, in that it can work with Video. But I am curious to wonder if maybe I could stream my 8 channels of audio out of my PC in their native sample rates into the Russ' configured eight channel version of BBB and use HQplayer with-in the BBB to up-sample my eight channels to the DACs? Could have the best of both worlds then. :) You have sparked my curiosity enough to try HQplayer once I have the hardware to work with these higher rates. :up:
 
Member
Joined 2007
Paid Member
Nope - HQPlayer requires serious CPU power for most of its processing. BBB was chosen as a renderer because it can slave to external clocks, which *eliminates* a destructive reclocking step. With HQPlayer for PCM you are just resampling but with very high precision. If it sounds better, great! But why? That's similar to my question with PCM -> DSD conversion: what hardware defect is being minimized? ...and can I address that system defect directly?


Sent from my iPad using Tapatalk HD
 
Question to the link we are looking for...

If it sounds better, great! But why? That's similar to my question with PCM -> DSD conversion: what hardware defect is being minimized? ...and can I address that system defect directly?

This is indeed a good question! I am know where near knowledgeable enough in digital circuits to know where to even start. But as far as designing what we are looking for as a multi-channel interface, these are the kinds of questions that need to be addressed...

BBB was chosen as a renderer because it can slave to external clocks, which *eliminates* a destructive reclocking step.

So, Frank, are You using an external clock, like Cronus, with your BBB? The reason I am curious about this is, it looks like the TPA Cronus board can only handle two channels, so even if we have a way of inputting eight channels into the BBB, the Cronus board would not work. But Ian's FIDO board might (although, I am not sure how it will interface with the BBB).

As You are more knowledgeable in this area, what are your thoughts on Ian's FIDO project? As the XMOS chips can slave from a master clock, what are the advantages verses disadvantages of using this over the BBB? Does it render like the BBB? As You can tell, I have a lot to learn yet. :eek:
 
XMOS verses BBB

I need to figure this clocking, re-clocking, master clocking deal out. Because I am not clear on how it all works with different hardware. :eek:

With SPDIF, if I run out of my computer motherboard, the motherboard is the master clock and the Buffalo III "re-clocks" that signal. If I run out of my M-audio SPDIF, the M-Audio is the master clock and the Buffalo III "re-clocks" that signal. But is the M-Audio creating a new master clock, or is it "re-clocking" the the stream from the PC? It is a USB DAC.

As Frank mentioned "rendering" I am trying to figure out where that happens with different uses of hardware. It seems important to have the master clock where the "rendering" takes place. The BBB can render a stream out of the PC. Can the XMOS do that? Needless to say, I will be studying what an XMOS can do later tonight.

Just thinking aloud here. Maybe if others see how unknowledgeable I am in these matters, they too, will not be embarrassed. :eek:
 
Member
Joined 2007
Paid Member
I need to figure this clocking, re-clocking, master clocking deal out. Because I am not clear on how it all works with different hardware. :eek:

With SPDIF, if I run out of my computer motherboard, the motherboard is the master clock and the Buffalo III "re-clocks" that signal. If I run out of my M-audio SPDIF, the M-Audio is the master clock and the Buffalo III "re-clocks" that signal. But is the M-Audio creating a new master clock, or is it "re-clocking" the the stream from the PC? It is a USB DAC.

As Frank mentioned "rendering" I am trying to figure out where that happens with different uses of hardware. It seems important to have the master clock where the "rendering" takes place. The BBB can render a stream out of the PC. Can the XMOS do that? Needless to say, I will be studying what an XMOS can do later tonight.

Just thinking aloud here. Maybe if others see how unknowledgeable I am in these matters, they too, will not be embarrassed. :eek:

SPDIF from your computer or other source is a synchronous, continuous data stream that can be at any of several frequencies. It can suffer some degradation, both during its production by the motherboard and during its transmission to the DAC. The clock in your motherboard would be considered the master.

With USB, for example to an XMOS chip for conversion to I2S, the data is asynchronous and sent/received in packets. They are 'rendered' into a continuous I2S or other stream by the XMOS board, which provides the master clock. Some XMOS boards are set up to switch clocks as needed, some are not.

The BBB also accepts asynchronous packets and renders them with the aid of easily programmable linux software. It will accept an external clock (raw crystal oscillation) that can be switched and its frequency can be the exact one to match the recording equipment's frequency. With Cronus, the actual oscillators being used are customizable. Output is continuous I2S or other PCM for consumption by the DAC.

Buffalo can upsample any external signal to a much higher frequency in order to help time align the samples, in which case it uses its own dedicated clock, or it can be used without that feature and must then accept an external master clock from whatever appliance rendered the I2S. Either way, the goal of all of this is to reproduce the sound wave *exactly* in the domain of time...
 
Member
Joined 2007
Paid Member
Sorry, I kinda overlooked your previous question.
As You are more knowledgeable in this area, what are your thoughts on Ian's FIDO project? As the XMOS chips can slave from a master clock, what are the advantages verses disadvantages of using this over the BBB?

Everything I know about Ian's I2S FIFO project is published on the hifiduino blog. :eek:
I have dabbled with a different inexpensive but nice XMOS board with adaptive clocks and isolation, but that project is on hold while much more important stuff gets done.

My real reason for using the BBB is *all the other stuff it can do for you*!!! ...like a) I2C communication with the DAC chips for volume control and other on-the-fly adaptations and b) myriad system control possibilities using existing mobile device software plus custom python scripts, and even c) rendering USB input from another appliance. Thread: http://www.diyaudio.com/forums/twisted-pear/281776-control-bbb-based-audio-appliances.html

Also, the BBB is producing my crossover filtration, and does it correctly regardless of the sample frequency of the original music file. Thread: http://www.diyaudio.com/forums/twisted-pear/277564-ladspa-filters-digital-crossovers-bbb.html

All of the code I use is freely available.

Cheers,

Frank
 
Thanks, Frank, for the very through response. Your information is very helpful to tie all this together, as I am sure I am not the only one who has gotten lost down this rabbit hole.

...that project is on hold while much more important stuff gets done.

Funny You mention that, as I was hoping to get my completed buffalo III into the HiFi modo chassis I bought for it. But it is hard to plan a layout until I know what I am doing for an interface. I am not sure if I want the interface in the chassis with the DACs or in the separate enclosure, then use teleporters to feed the DACs. I also do not know how many DACs I wish to put in an enclosure. I can fit all eight in one enclosure if I use 2 DACs in stereo and 1 DAC in quad and all IVY output stages. But I would like to try the Legato at least on one. So that already limits me to six DAC channels in one chassis... God forbid if I decide to try a Broskie Unbalancer on one. :bulb:

All that to say: I really need more time to think about this. :)

Besides, this is not the weakest link in my system right now. I have four speaker systems to complete. I have been spending the last couple of days in the wood shop. I feel more at home creating some saw dust. ;)

At least I have some stuff to review here on the really cold days, :up:
 
Thanks Miero (and kudos for all your work) but using BBB as a "renderer" with a PC computer as mentioned before here is not something i've seen before- and i have no clue how that works.:confused:

If it can be made to be used as a "soundcard" it might be a cost effective solution to go multichannel considering the reclocking and and multiple I2s outputs from hermes-Chronus .

A BBB can do filtering as shown by Francolargo but a pc has quite bit more processing power (I'm using mac btw -i could change to linux if needed)
 
Member
Joined 2007
Paid Member
Looks like i was'nt doing the right search just seen this : https://www.engineered.ch/products/mr-mod/#cc-m-product-13252632422 so i'll try to see how a media renderer works...

First, even though their quality may be very good, the prices of the renderer and it's interface in your link are *way* above what a little Linux board costs.

Second, just to be clear... Rendering is basically the process of taking packets of music data - which can be transmitted separately from one another - and creating from them a continuous stream that represents the real-time of the music. In a rendered stream, each sample of data is positioned in the domain of time. This positioning can be more or less precise, which affects the quality of the sound. The three most common types of real-time (or synchronous data) stream are SPDIF and I2S, with DSD streams being more challenging using a Mac but also very nice.

Finally, if you want to carry out multi-channel signal processing on a server before rendering into a synchronous stream (especially from a Mac) I believe your easiest high quality solution is HQPlayer software. There are various solutions to render these data, called NAAs, and the BBB is one of them. ...just search HQPlayer and you'll have a nice bit of reading to do... But from a practical standpoint, you should think ahead and decide if you have the need and desire to manage all of the manipulations from the standpoint of acoustics in your listening area. Integrating multiple point-sources of sound into a beautiful and pleasing experience is not trivial! IMHO, the remarkable sensation of 'sound space' is the single most pleasing quality of truly high fidelity sound. ;)

Best,

Frank
 
Thanks for your answer Frank! I've just seen a 380 pages long thread on HQ Player so i will have some reading indeed :)
We must be sensitive to some similar aspects in music since soundstaging is very important to me as well. I am not after 7.1 or 5.1 or something like that but rather active digital XO - i realise i should have been more explicit!
Best,
Thomas
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.