Post burning amp bump 🙂
I had a few folks who were interested to know more about my system. Also, a few who were interested in buying ready-made imaged SD cards. If you are, just let me know here.
I had a few folks who were interested to know more about my system. Also, a few who were interested in buying ready-made imaged SD cards. If you are, just let me know here.
I don't have a Raspberry Pi yet. Do you think it could be adapted to output via two of the USB ports (two audio streams L+R per port) rather than HDMI, i.e digital crossover feeding two USB dacs ?
Regards
Dave
Regards
Dave
I don't have a Raspberry Pi yet. Do you think it could be adapted to output via two of the USB ports (two audio streams L+R per port) rather than HDMI, i.e digital crossover feeding two USB dacs ?
Regards
Dave
I use the Pi platform with multiple USB adaptive mode DACs to get multichannel output. Works great. Don't use asynchronous mode DACs for this purpose, however, as they will drift out of sync.
Thanks. Have you got a link to any articles that explain how to configure Raspberry Pi to do this.
Regards
Dave
Regards
Dave
Thanks. Have you got a link to any articles that explain how to configure Raspberry Pi to do this.
Regards
Dave
No, but I can probably explain it here in enough detail to get you in the ballpark.
You connect the DACs to the Pi and they will appear as cards in the ALSA audio system. You can see these using the command
Code:
aplay -l
So, in summary, the audio data flows like this:
input > eacsound processing into channels, crossover filters implemented > DACs output
You might want to read this web page that talks about some of the DSP processing stuff using ecasound:
Digital Crossover/EQ with Open-Source Software: HOWTO | Richard's Stuff
This is a great introduction on how to use the Pi as your DSP crossover.
I use the Pi platform with multiple USB adaptive mode DACs to get multichannel output. Works great. Don't use asynchronous mode DACs for this purpose, however, as they will drift out of sync.
What causes them to drift out of sync and is there anyway to fix this ? If possible, I would prefer to use asynchronous usb.
What causes them to drift out of sync and is there anyway to fix this ? If possible, I would prefer to use asynchronous usb.
An asynchronous DAC has its own clock. Any two clocks will never have exactly the same frequency/clock rate, so eventually they will drift apart in time.
By using adaptive mode DACs, they are essentially basing their timing off of the data flow, and that is being governed by the clock in the Pi (although not directly). Therefore, all DACs on the same system will stay in sync. It's even possible to use software like NTP to control the clock rate of multiple R-Pis to keep them synchronized each other or with a time reference. In this way it is possible to have multiple systems with multiple DACs that all stay relatively well synchronized forever (relative to errors that are significant to audio reproduction at least).
HiFiMeDiy sells a couple of good adaptive mode USB DACs (I own both of these):
HiFimeDIY Sabre USB DAC ES9023 96kHz/24bit
HiFime Sabre 9018 USB DAC
Ebay is also a source for adaptive mode DACs. If you are willing to live with 16/48 playback look for a combination of the PCM2706 USB receiver and ES9023 DAC - just do a search of the auction text for those IC numbers. For playback up to 96k look for an SA9023 configured for USB adaptive mode (it can do both adaptive and async modes) with the ES9023 or ES9018.
What I like about using USB DACs is that you can start with a less expensive one and then upgrade later to more expensive options if you want higher sample rates, a DAC that can use an external power supply, or whatever.
If you are looking for bit perfect playback of 192k files or DSD, then you are probably out of luck since I do not know of a USB adaptive mode receiver that works at these rates and formats.
Last edited:
Getting back to the original sentiment of the thread, to use the Pi as a player and DSP unit, why not just use a multichannel USB DAC? MiniDSP sells an 8-channel one that works well under Linux:
https://www.minidsp.com/products/usb-audio-interface/u-dac8
In this case there is only one DAC so it doesn't matter if it uses adaptive mode or asynchronous mode.
The U-DAC8 is a nice product, however, at $275 I find it rather expensive (hey, I am a cheap a$$ DIYer!) and it doesn't really fit my needs. For me the low cost, adaptive mode DACs are perfect and I don't find the sound quality lacking in any way.
https://www.minidsp.com/products/usb-audio-interface/u-dac8
In this case there is only one DAC so it doesn't matter if it uses adaptive mode or asynchronous mode.
The U-DAC8 is a nice product, however, at $275 I find it rather expensive (hey, I am a cheap a$$ DIYer!) and it doesn't really fit my needs. For me the low cost, adaptive mode DACs are perfect and I don't find the sound quality lacking in any way.
To further Charlie's sentiments. If you need multichannel out, a USB dac with multiple channels is the easiest way to go. If you don't mind a little kernel hacking, then you can get an hdmi "stripper" or Dac such as this one: SKSL HDMI Digital Audio to Analog Converter 7.1 Decoder Amplifier Support 3 Modes for Audio Output and Blu-ray Player Machines https://www.amazon.com/dp/B019RF7ZVA/ref=cm_sw_r_cp_api_FavAyb98C98E3
Sent from my iPhone using Tapatalk
Sent from my iPhone using Tapatalk
To further Charlie's sentiments. If you need multichannel out, a USB dac with multiple channels is the easiest way to go. If you don't mind a little kernel hacking, then you can get an hdmi "stripper" or Dac such as this one: SKSL HDMI Digital Audio to Analog Converter 7.1 Decoder Amplifier Support 3 Modes for Audio Output and Blu-ray Player Machines https://www.amazon.com/dp/B019RF7ZVA/ref=cm_sw_r_cp_api_FavAyb98C98E3
Sent from my iPhone using Tapatalk
I would check into any product like this very carefully before buying.
I purchased an "HDMI extractor" which would supposedly allow me to have access to the HDMI audio channels. My goal was to use the HDMI audio as output and then connect these to amplifiers. Unfortunately I found out the hard way that this only worked when it was connected to some equipment that was 7.1 channel capable (like a TV or home theater receiver). This seemed to be because some info is sent back down the HMDI cable to the Pi from whatever is connected to it. I did not do any kernel customization (I think this is not worth the time since you can't easily update the OS without redoing all of that) and so I could not get the audio out from the unit. My $$$ were wasted.
Now I stick with USB DACs because they are "plug and play" and no OS driver or kernel customization is necessary.
I would check into any product like this very carefully before buying.
I purchased an "HDMI extractor" which would supposedly allow me to have access to the HDMI audio channels. My goal was to use the HDMI audio as output and then connect these to amplifiers. Unfortunately I found out the hard way that this only worked when it was connected to some equipment that was 7.1 channel capable (like a TV or home theater receiver). This seemed to be because some info is sent back down the HMDI cable to the Pi from whatever is connected to it. I did not do any kernel customization (I think this is not worth the time since you can't easily update the OS without redoing all of that) and so I could not get the audio out from the unit. My $$$ were wasted.
Now I stick with USB DACs because they are "plug and play" and no OS driver or kernel customization is necessary.
I ended up with that hdmi extractor at the 2015 burning amp raffle 🙂
It's actually what we used to connect @wavebourn 's 3 tube amps at the end of BA2016! It works fine as long as you have the hacked rpi kernel - the stock kernel doesn't allow the rpi to output 8 channels of pcm over the hdmi. My alternative kernel does, so you can use the hdmi output for 8 channels of pcm goodness.
But... As mentioned earlier, usb dacs are much, much easier to deal with because you don't have to alter the kernel.
Sent from my iPhone using Tapatalk
Awesome! Glad it went to good use.I ended up with that hdmi extractor at the 2015 burning amp raffle 🙂
Did you ever happen to measure the performance, e.g. frequency response, distortion, noise floor, etc? I have always been curious about that because these specs are rarely provided by the MFG for this kind of component.
Full Duplex w/USB
Hi all,
I have been enthusiastically working with an Odroid C1+ and now a C2 trying to get an implementation that will allow me use my much loved Hafler DH-110 and B & O Beogram turntable through the DSP system. I am using a derivation of Richard Taylor's ecasound-based system.
For reasons beyond my skill level I cannot get the USB card I am using to perform analog in/DSP/analog out. The system works great if I have digital files already on the SD card but I get nothing but nothing or static if I try to input a line level signal to the USB card.
I am beginning to wonder if it is a hardware problem in how they implement USB?
Has anyone here successfully done the analog in/DSP/analog out?
On another site, which memory fails me now (maybe this one), a poster said he could use mpd from an analog input. Never explained how though. I am fine on the ecasound, routing to multiple outputs part but am flummoxed by the analog in to the USB card.
Color me frustrated.
James
Hi all,
I have been enthusiastically working with an Odroid C1+ and now a C2 trying to get an implementation that will allow me use my much loved Hafler DH-110 and B & O Beogram turntable through the DSP system. I am using a derivation of Richard Taylor's ecasound-based system.
For reasons beyond my skill level I cannot get the USB card I am using to perform analog in/DSP/analog out. The system works great if I have digital files already on the SD card but I get nothing but nothing or static if I try to input a line level signal to the USB card.
I am beginning to wonder if it is a hardware problem in how they implement USB?
Has anyone here successfully done the analog in/DSP/analog out?
On another site, which memory fails me now (maybe this one), a poster said he could use mpd from an analog input. Never explained how though. I am fine on the ecasound, routing to multiple outputs part but am flummoxed by the analog in to the USB card.
Color me frustrated.
James
Full Duplex USB
Hi again,
I posted a note to the Hardkernel site and got the response I expected.
The C2 is not set up for full duplex USB I/O. They link to another post where someone has figured out a hack to a I2S pin. See link here, if you care too:
ODROID Forum • View topic - USB Sound Card Full-Duplex
I feel like Don Quixote trying to get this to work in pursuit of using the active crossover for my vinyl source. I was thinking it through and realized that I really love the LP sound because it is natural and does not go through analog/digital conversion. Which means . . . . .
Trying to get the analog output of the turntable into and out of a USB card means it was going through an analog in/digital/analog out conversion. The very thing I was trying to avoid. 😱
I will let this rest a bit before I dive back in. At present, my turntable sounds terrific running through my system and I can play with the other stuff too.
But still - has anyone gotten full duplex to work? (there I go again).
Thanks all.
James
Hi again,
I posted a note to the Hardkernel site and got the response I expected.
The C2 is not set up for full duplex USB I/O. They link to another post where someone has figured out a hack to a I2S pin. See link here, if you care too:
ODROID Forum • View topic - USB Sound Card Full-Duplex
I feel like Don Quixote trying to get this to work in pursuit of using the active crossover for my vinyl source. I was thinking it through and realized that I really love the LP sound because it is natural and does not go through analog/digital conversion. Which means . . . . .
Trying to get the analog output of the turntable into and out of a USB card means it was going through an analog in/digital/analog out conversion. The very thing I was trying to avoid. 😱
I will let this rest a bit before I dive back in. At present, my turntable sounds terrific running through my system and I can play with the other stuff too.
But still - has anyone gotten full duplex to work? (there I go again).
Thanks all.
James
Hi again,
I posted a note to the Hardkernel site and got the response I expected.
The C2 is not set up for full duplex USB I/O. They link to another post where someone has figured out a hack to a I2S pin. See link here, if you care too:
ODROID Forum • View topic - USB Sound Card Full-Duplex
I feel like Don Quixote trying to get this to work in pursuit of using the active crossover for my vinyl source. I was thinking it through and realized that I really love the LP sound because it is natural and does not go through analog/digital conversion. Which means . . . . .
Trying to get the analog output of the turntable into and out of a USB card means it was going through an analog in/digital/analog out conversion. The very thing I was trying to avoid. 😱
I will let this rest a bit before I dive back in. At present, my turntable sounds terrific running through my system and I can play with the other stuff too.
But still - has anyone gotten full duplex to work? (there I go again).
Thanks all.
James
Sad to say, I can't help with the odroid. But I have gotten this to work with the raspberry pi. (with help from Charlie 🙂 )
First, I'm using this audio interface
http://a.co/55pfNk7
Plug in, reboot, look at
Code:
aplay-l
Code:
**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 7/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: CODEC [USB Audio CODEC], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
Card 1 is the new one.
Now to get the new input to the output (which in my case is "default"):
Code:
ecasound -f:16,2,48000 -i:alsahw,1,0
You can set ecasound to run in the background as well. Now my turntable goes into the pi, gets eq'ed and split into 7 channels, and drives the speakers 🙂
Full Duplex
Hi,
Well, that is encouraging. My USB card cannot execute that simple ecasound command on the Odroid - or I am doing something wrong.
But I have used as simple a command as that and it failed to make audio. The card blinks like it is going, ecasound says it is going but there is no sound.
So, I will order one of those little do-hickies and see how it works for me.
There is hope.
Thanks,
James
Hi,
Well, that is encouraging. My USB card cannot execute that simple ecasound command on the Odroid - or I am doing something wrong.
But I have used as simple a command as that and it failed to make audio. The card blinks like it is going, ecasound says it is going but there is no sound.
So, I will order one of those little do-hickies and see how it works for me.
There is hope.
Thanks,
James
Well, your input and output may have different names than mine. Can you run "aplay -l" and "arecord -l" and paste the output here?
Sent from my iPhone using Tapatalk
Sent from my iPhone using Tapatalk
Hi, Booting it back up now. I have been down this road many times but what the heck right? I will post in a minute or two.
I just realized that I do not know how to capture characters when in SSH.
Interestingly, it now shows the usb card as default. I had turned it all the way off yesterday so I would not smash it into the wall. I had made changes to the files to try ot make the USB default, then rebooted. Maybe I should have turned it all the way off?
Let me see if I can get a command working here. Nope, when i run aplay -l I get the USB card as 0. When I run aplay -L, I get the onboard HDMI and the USB as defaults. Clearly, I have messed something up.
Nope, the command above does not work for me. I probably need to reinstall and start over.
Interestingly, it now shows the usb card as default. I had turned it all the way off yesterday so I would not smash it into the wall. I had made changes to the files to try ot make the USB default, then rebooted. Maybe I should have turned it all the way off?
Let me see if I can get a command working here. Nope, when i run aplay -l I get the USB card as 0. When I run aplay -L, I get the onboard HDMI and the USB as defaults. Clearly, I have messed something up.
Nope, the command above does not work for me. I probably need to reinstall and start over.
To capture screen text try this:I just realized that I do not know how to capture characters when in SSH.
Interestingly, it now shows the usb card as default. I had turned it all the way off yesterday so I would not smash it into the wall. I had made changes to the files to try ot make the USB default, then rebooted. Maybe I should have turned it all the way off?
Let me see if I can get a command working here. Nope, when i run aplay -l I get the USB card as 0. When I run aplay -L, I get the onboard HDMI and the USB as defaults. Clearly, I have messed something up.
Nope, the command above does not work for me. I probably need to reinstall and start over.
click and hold left mouse key at start of text and drag mouse to highlight a section of text.
When you release the left key the text should remain highlighted.
Right click and choose "copy" from the contextual menu, or look for the copy command from a drop down menu at the top of the window
It will be much clearer if you post your output.
There is no way that between using aplay -l and aplay -L things would change so I am very skeptical.
Do you even have ecasound installed? Try
ecasound --version and see if that works or fails
Keep posting and we can help you figure it all out.
- Home
- Source & Line
- PC Based
- Tutorial: Raspberry Pi as Music Server, DSP, and Crossover