I2S over HDMI (PS audio) and resampling with sox

Hello,

I begin by explaining my use of the pi. I want to make it a sound server with remote control (android app) and use it’s i2s outpout, because this infercace is an emergent hifi standart, since psaudio propose an open inferface with an hdmi cable for i2s :
diyaudio.com/forums/digital- … audio.html

Moved from RaspyFi’s forum, since that’s pretty interesting.
Author: GhostMM666
Link: http://www.raspyfi.com/forum/everything-else/i2s-over-hdmi-ps-audio-and-resampling-with-sox/

Some manufacturer propose compatible board for this :
http://www.fidelix.jp/technology/I2S.html
http://www.audiophonics.fr/aune-kit-module-dentree-hdmi-vers-i2s-p-8404.html

If i understand it right we just have to connect the P5 headers of our pi to this, to obtain a good i2s outpout for hifi purpose, compatible with a growing number of equipement (for now, one of the only music server compatible is the sonore rendu : http://www.sonore.us/index7.htmland it cost nerly 1600€ with this i2s hdmi option, and also a growing list of dac)

I know that an alsa driver for i2s has been written, but i don’t know if it’s work with this?

Another question, at diyaudio they are making a dac constituate of some separate (different projects…) boards. An I2S Fifo kit, constituate of the fifo board, a clock and an isolator :
http://www.diyaudio.com/forums/digital-line-level/192465-asynchronous-i2s-fifo-project-ultimate-weapon-fight-jitter.html

They also have made a board which is an I2S to PCM converter :
http://www.diyaudio.com/forums/digital-line-level/220407-drive-nos-ad1865-62-pcm1704-02-63-tda1541-fifo-universal-i2s-pcm-driver-board.html

As they speak better than me (extract from the datashit of the board) :

« Many people still like the sound of traditional MULTIBIT audio DACs, such as AD1865/62, PCM1704/02, PCM63, TDA1541/A, and many others, because they convert digital music into analog in a different way than popular DELTA-SIGMA DACs.
However, most of those MULTIBIT DACs were designed having to work with digital filter chip through an interface we called “PCM”, which transmits left and right data simultaneously. In this case, the problem would be that the sound quality and the maximum Fs of MULTIBIT DACs can be limited by the performance of the hardware based over sampling digital filter chip due to the low internal calculating accuracy, the resource saving interpolating algorithm, and the old higher jitter hardware technology.
In order to boost the sound quality by introducing low jitter technology and to play higher Fs music, we need to get rid of the limitation of that digital filter chip by driving the MULTIBIT DAC from higher performance software base real-time up-sampling filter or high Fs music stream directly. So, we need a jitter optimized device to run MULTIBIT DAC at NOS mode from an I2S bus.

This I2S to PCM converter board was developed exactly for this purpose under the requirement of audiophiles. »

They also working on some multibit dac core board and I/V, so i think at this end this will become a complete dac ;) However, they clearly say that for optimal quality, we need to bypass the digital filter (or use nos) of our dac with a better software resampler. it seems we have a very good resampler in linux with sox that can easily work with mpd :
http://soundcheck-audio.blogspot.fr/2011/04/tt-resampling.html

So, could we use the pi as a dsp to real-time resample ? With the Ian boards and multi-bit dac, you can send 32/384khz (8x). However some modern usb dac don’t support this, it seems to come from a limitation of the usb inferface, some usb board has update recently their firmware (waveio do it in september). However it’s still profitable for owner of nos dac (or owner of dac where you can bypass the digital filters) that want to have a better resampler than integrate circuit or dsp.

So the question is : the 700 mhz of the pi is enough for this kind of resampling with sox ? Their is also the limiations of the i2s alsa driver, that seems limited at 24bit/(96 or 192?).

Your question is pretty interesting and long.
It deserves an equally long and interesting reply, which now I’m too tired to comply… :smiley:

But this is going to be interesting. I just say now, i2s trought HDMI is nonsense… Rpi has i2s output, which is supported by volumio. And there are also some very good i2s dacs out there, specifically made for the pi.

I’m using some of them and I’ll write down my impressions soon.

For the next answers I just take some sleep, need it !

I suppose the i2s dac that you talking about is a good idea if you want something “integrate”, in this case you have the dac, rpi, i/v… in one case. The problem is for me that these dac, even if they seems pretty decent, seels to be med-fi king of dac.
I want to build a sound server in the style of the sonore, external of the dac and this hdmi i2s is build for that. We can build a sound server with a pi (or equivalent), a power supply and these i2s hdmi board, finnaly have the same fonctionnality as the sonore-psaudio music wave couple for a fraction of the price. I also want the sound server independant, because my dac case will be quiet full when the dac will be ready.

Hi GhostMM,
I see from the thread on DIYaudio that you ordered Ian’s FIFO kit in the last GB round.
Have you received it yet? What do you think? Is it a good kit.
I need a clock source for my ESS9023 DAC and this looks like a perfect solution which I could expand with in future if I wanted to get a balanced DAC.
I’d love to see what you think of it working with the Pi.

Cheers

I read your old project and article here about I2S over HDMI Cable.
It was an interesting project for me, too.
While I’m searching some of information about that, JAVS from south Korea has a world wide patent for that.
So if you want to use for your projects as a Commercial product, I think you need some kind of agreement from that company.
Actually I don’t know much about patent, legal… whatever. hm…

We developed a small driver board for sending I2S signals over an HDMI cable. So far, I have it working to send I2S out of a RaspberryPi (at up to 24/192) into our DAC. This (of course) is not an HDMI signal, it’s just using an HDMI cable to carry the signal. Some companies (Like M2Tech) use Ethernet cables to carry an I2S Signal.

Very interesting thread!

Indeed I have the same in mind. Connecting the Raspi to a DAC (PS Audio) by I2S over HDMI. Is the board you mentioned already available? I also wonder if this works with the Raspi, as it ist only providing Bitclock, L/R-Clock and Data. Master clock isn’t available on the Raspi’s P5 connector.

Does anyone have the aune I2S to HDMI available through audiophonics.fr running? http://www.audiophonics.fr/en/kits-modules-diy-dac/aune-kit-module-dentree-hdmi-vers-i2s-p-8404.html

Hi fm-maniac. Yes, our board is thoroughly tested and available. We used it for a long time in our music servers. It is not a RaspberryPi specific device, mind you. It accepts 5 connections, and passes I2S out over an HDMI cable.

Those 5 connections are:

5V +
GND
LRCLCK
BCLCK
DATA

Kevin

Kevin, does it accept the 3V3 IO levels from the Pi. Are there level converters on it? Can I find (purchase) it anywhere on the net?

BR

Michael

Hi Michael,

I have one in use on a RPi at the moment. It takes 5V power and GND from the Pi directly to the send board. It also takes the 3 I2S signals directly from the Pi into the send board.

You can find it on the web here:
musicapristina.com/transducer.aspx
Scroll down and look for “Add-ons.”

Kevin