Thanks Chanh. Looking forward to getting it all working and hearing the fruits of my labours...
I'm also now running the botic/upmpdcli combination from eMMC; the 'flash' script miero references on his website worked perfectly and quickly.
I've also set a upnpdcli 'friendlyname' but need to come up with a suitable .png image for an icon. The default upmpdcli icon is the Linn logo and I wouldn't want anyone to think I owned one of their devices🙂
Ray
I'm also now running the botic/upmpdcli combination from eMMC; the 'flash' script miero references on his website worked perfectly and quickly.
I've also set a upnpdcli 'friendlyname' but need to come up with a suitable .png image for an icon. The default upmpdcli icon is the Linn logo and I wouldn't want anyone to think I owned one of their devices🙂
Ray
Hi Ray,
Can confirm Miero's Botic driver and Jean-Francios's upmpdcli work extremely well with BBB with I2S outputting into my DDDAC. Seriously, people must try to believe how good this (BBB, Botic and upmpdcli.) collaboration realistically is!
Chanh
Hi Chanh, how are you controlling volume on your dac stack?
Ray
Hi Chanh, how are you controlling volume on your dac stack?
Ray
Hi Ray,
I use a Conrad Johnson Preamp. I think it is best to have MPD output in full dynamic volume and having a nice pre to handle the rest.
Here is my current setup, I look to introduce Acko S03, is2 isolator, reclocking with full Sync mode to my DDDAC in couple weeks once the UFL adaptors are received. 😉
https://vimeo.com/111493055
Sorry for the poor quality video.
Chanh
Hi Ray,
I use a Conrad Johnson Preamp. I think it is best to have MPD output in full dynamic volume and having a nice pre to handle the rest.
Here is my current setup, I look to introduce Acko S03, is2 isolator, reclocking with full Sync mode to my DDDAC in couple weeks once the UFL adaptors are received. 😉
https://vimeo.com/111493055
Sorry for the poor quality video.
Chanh
So, at the moment you are routing the I2S off the BBB directly to the DAC stack? What sample rate is you source file?
So, at the moment you are routing the I2S off the BBB directly to the DAC stack? What sample rate is you source file?
Correct. I played all sample rates and it seems playing fine. Though 44.1 sounded like a little edginess, but liveable. 😉
Correct. I played all sample rates and it seems playing fine. Though 44.1 sounded like a little edginess, but liveable. 😉
I was wondering how you found 44.1 sound files as the BBB resamples them to 48khz which is less than optimal. I have listened to the BBB (with Botic driver) direct to a 9023 DAC just to check it out. Sounded OK but I didn't do any long term listening.
I assume that even 48khz files would benefit from reclocking due to sub-optimal clock on the BBB.
Personally, purely personal perception here, I found ESS Sabre chip always been a little fatigue for extended listening duration. Perhaps it's too much details/resolutions for my taste but others love it. I like Doede's Design better because of its musical and is not sounding too electronic.
I able to know in couple weeks if the S03 will brought some benefits? On principle it seems like a good idea but until a practical listening session, it's still a myth.
I able to know in couple weeks if the S03 will brought some benefits? On principle it seems like a good idea but until a practical listening session, it's still a myth.
I am following this thread with great interest. This is a little on the fringe of the topic but I have used an ESS Sabre (TPA Buffalo II) in different configurations and much depends on the chip's implementation. Shunt regulated power is really important, but will not necessarily relieve 'fatigue'. I use a discrete I/V stage, which helps with that, as does natively HD (i.e. > 44.1kHz) sources. In the PC source, I up sampled all 44.1 to 96kHz with good results, while 44.1 -> 48 was less pleasing.Personally, purely personal perception here, I found ESS Sabre chip always been a little fatigue for extended listening duration. Perhaps it's too much details/resolutions for my taste but others love it. I like Doede's Design better because of its musical and is not sounding too electronic.
So, two questions that are on topic:
1. If I take the plunge to the BBB, does it have the power to upsample everything to 96 and also do some simple DSP filtering before outputting I2S?
2. How good is the BBB clock, and is this a potential target for 'tweaking'?
TIA!
Frank
OT aside: Curiously, using the ESS Sabre I obtained improvement in the SQ and 'fatigue' of 44.1 files (after up sampling to 96) when I worked 'distortion bugs' out of my speaker cones! ...equal to adding shunt-regulated power to the DAC chip... Whereas, those speaker cone tweaks did not improve native 96kHz files nearly as much. While that's WAY OT, it supports the idea that the DAC chip alone is not 'the ring that rules them all'. 😉
Hi Frank,I
So, two questions that are on topic:
1. If I take the plunge to the BBB, does it have the power to upsample everything to 96 and also do some simple DSP filterm ing before outputting I2S?
2. How good is the BBB clock, and is this a potential target for 'tweaking'?
😉
Upsampling can be carried out via Jriver, though it is unsure it would degrade the sound? I prefer 'None Over Sampling' or NOS implementation, hence went to DDDAC direction.
As for external clocks relevant to sample frequencies, why not checkout Acko S03 groupbuy thread? I believe he is also releasing a Cape for BBB which works nicely with Miero's Botic driver.
Chanh
Thanks Chanh,
I'm interested in 2 channels in/4 channels out from BBB, so as to biamp from any of several sources. Clearly, BBB in DIY audio is a 'disruptive technology', so I have ordered one for evaluation. Keep up the good work!
Frank
I'm interested in 2 channels in/4 channels out from BBB, so as to biamp from any of several sources. Clearly, BBB in DIY audio is a 'disruptive technology', so I have ordered one for evaluation. Keep up the good work!
Frank
Thanks Chanh,
I'm interested in 2 channels in/4 channels out from BBB, so as to biamp from any of several sources. Clearly, BBB in DIY audio is a 'disruptive technology', so I have ordered one for evaluation. Keep up the good work!
Frank
Frank, you might want to check out this development, it has the potential for digital crossover filters within the DAC boards;
R2R For The REST of US | H i F i D U I N O
Ray
I think it is best to have MPD output in full dynamic volume...
I agree if the mpd volume control results in truncation/resolution loss, but what if it had 32bit (or higher!) resolution? I've no idea if that would be possible on a BBB but it would work for me in my minimal setup and is one of the reasons I'm keen to explore the possibilities presented by the Edel NMR.
Ray
Thanks JF! Haha.. Clearly showed my poor knowledge in Linux...! Right now JRiver play file via UpMPD player. Can I assume that it is your upmpdcli? If so the sound quality is awesome, virtually the same quality to MPD direct or RuneAudio but with much greater flexibility/user friendly interface. Love it!
Will try redo the image again! The appropriate methodology.
Thanks again to Miero & JF.
Chanh
Yes, UpMpd is the default UPnP renderer "friendly name" for upmpdcli.
About sound quality: upmdcli does not touch the audio data at all, it is not in the audio path, it just tells MPD what to do.
So MPD (and maybe JRiver) is to be thanked for the sound quality. Upmpdcli is just about ease of use. It is available on the last Runeaudio version too by the way.
Frank, you might want to check out this development, it has the potential for digital crossover filters within the DAC boards;
R2R For The REST of US | H i F i D U I N O
Ray
Thanks for the link, Ray! I have no quibble with the SQ of my current batch of DACs. I just wish for more flexibility in enjoying them, rather than having to route everything through a PC for XO processing. I'm looking forward to playing with BBB, though my coding days are WAY in the past... 😕 I'll have all winter to work out the details and will be following trail blazers such as yourself.
Frank
Thanks, Miero, for the link to Richard Taylor's tutorial on building crossovers using ecasound. I am eager to begin testing some of the possibilities for an embedded XO and have ordered a BBB, which is in transit. The main problem I face is unfamiliarity with Linux - I used Unix with reasonable facility but only in a previous century! 😀 Also, the Linux sound architecture is a bit daunting, to say the least! So I have a few questions just to help get oriented, if you don't mind...
1. In your online instructions, you state, "The bbbplay is configured to resample data to 96kHz/32bit and send it to BBB where then it is distributed to all I2S channels."
Does this use libsamplerate, and which settings? In a previous build I used Erik de Castro Lopo's SRC in Windows (same code as libsamplerate) to bump 44.1 up to 96 and it sounds very good played through the Buffalo DAC. ...easily good enough that poor source engineering is more obvious than any reproduction artifacts!
2. Richard Taylor suggests integrating ecasound filters into MPD, which I believe would be a very direct solution. In your build, have you enabled pipes [with –enable-pipe-output]?
3. I would like to run the high- and low-pas filters after resampling to 96kHz. Do you agree? In Botic, what sample rate PCM data would feed the ecasound filters?
4. Below is Richard Taylor's ecasound command for MPD. Do you have any suggestions or 'tricks' to simplify or improve it? Never mind the specific filters he has chosen in the .ecp configuration files. I worry about making the pipe work, having the correct sample rate designation and the correct output designators for I2S [e.g. "-chorder:1,2,0,0" and "-o:alsa,surround51😀evice" below]. My goal is for 3 stereo channels of I2S: a 'clean' stereo channel (for headphones), and one each that has been high-passed and low-passed - all at 96kHz. I don't need DSD.
audio_output {
type "pipe"
name "DSP crossover/eq"
format "44100:32:2"
mixer_type "software"
command "ecasound -q -z:nodb -z:mixmode,sum
-a😛re -f:s32_le,2,44100 -i:stdin -pf:/etc/pre.ecp -o:loop,1
-a:woofer,tweeter -i:loop,1
-a:woofer -pf:/etc/woofer.ecp -chorder:1,2,0,0
-a:tweeter -pf:/etc/tweeter.ecp -chorder:0,0,1,2
-a:woofer,tweeter -f:16,4,44100 -o:alsa,surround51😀evice
}
It seems the code has hidden meanings (infiltration by emoticons!).
Many thanks in advance for any answers and tips! 🙂
Frank
1. In your online instructions, you state, "The bbbplay is configured to resample data to 96kHz/32bit and send it to BBB where then it is distributed to all I2S channels."
Does this use libsamplerate, and which settings? In a previous build I used Erik de Castro Lopo's SRC in Windows (same code as libsamplerate) to bump 44.1 up to 96 and it sounds very good played through the Buffalo DAC. ...easily good enough that poor source engineering is more obvious than any reproduction artifacts!

2. Richard Taylor suggests integrating ecasound filters into MPD, which I believe would be a very direct solution. In your build, have you enabled pipes [with –enable-pipe-output]?
3. I would like to run the high- and low-pas filters after resampling to 96kHz. Do you agree? In Botic, what sample rate PCM data would feed the ecasound filters?
4. Below is Richard Taylor's ecasound command for MPD. Do you have any suggestions or 'tricks' to simplify or improve it? Never mind the specific filters he has chosen in the .ecp configuration files. I worry about making the pipe work, having the correct sample rate designation and the correct output designators for I2S [e.g. "-chorder:1,2,0,0" and "-o:alsa,surround51😀evice" below]. My goal is for 3 stereo channels of I2S: a 'clean' stereo channel (for headphones), and one each that has been high-passed and low-passed - all at 96kHz. I don't need DSD.
audio_output {
type "pipe"
name "DSP crossover/eq"
format "44100:32:2"
mixer_type "software"
command "ecasound -q -z:nodb -z:mixmode,sum
-a😛re -f:s32_le,2,44100 -i:stdin -pf:/etc/pre.ecp -o:loop,1
-a:woofer,tweeter -i:loop,1
-a:woofer -pf:/etc/woofer.ecp -chorder:1,2,0,0
-a:tweeter -pf:/etc/tweeter.ecp -chorder:0,0,1,2
-a:woofer,tweeter -f:16,4,44100 -o:alsa,surround51😀evice
}
It seems the code has hidden meanings (infiltration by emoticons!).
Many thanks in advance for any answers and tips! 🙂
Frank
francolargo: I'm not able to provide support for ecasound, because I do not use it.
But here are some hints that might help you.
Peek inside the http://bbb.ieero.com/botic1/bbbplay and you can see following data flow:
- sox resamples original file to 32bit, signed integer, 2 channel and 96kHz by default
- resampled data is sent to BBB via ssh (remote shell with audio data feed into its input)
- received data are played to first sound card with realtime priority and stereo distributed to all 8 channels
This resampling is using SoX algorithm (known as libsox or libsoxr) with very high quality settings "-v" argument of rate which, is the best I know. One disadvantage is that it is slow, so that's reason why resampling is done at desktop computer and not BBB.
But I'm not sure this unwanted answer will help you... 🙂
But here are some hints that might help you.
Peek inside the http://bbb.ieero.com/botic1/bbbplay and you can see following data flow:
- sox resamples original file to 32bit, signed integer, 2 channel and 96kHz by default
- resampled data is sent to BBB via ssh (remote shell with audio data feed into its input)
- received data are played to first sound card with realtime priority and stereo distributed to all 8 channels
This resampling is using SoX algorithm (known as libsox or libsoxr) with very high quality settings "-v" argument of rate which, is the best I know. One disadvantage is that it is slow, so that's reason why resampling is done at desktop computer and not BBB.
But I'm not sure this unwanted answer will help you... 🙂
Heya miero,
So output is always going to be re sampled through the Botic driver? Once the cape is available, will it not be playing at native rates?
Just a little confused!
Thanks,
Drew.
So output is always going to be re sampled through the Botic driver? Once the cape is available, will it not be playing at native rates?
Just a little confused!
Thanks,
Drew.
- Home
- More Vendors...
- Twisted Pear
- Support for Botic Linux driver