Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter

Disabled Account
Joined 2002
However, I do prefer analog PSUs even for the RPi power. I adopted Ian's LinearPis in my latest streamer build.

Hello
What is an analog supply? You mean lineair supply?
I think the most accepted idea is that SMPS must be used carefully. If it wont have a bad influence on the circuit it is ''feeding '' then it will distract the neighbouring ones.
Greetings, Eduard
 
Yep, as @jimk04 says, specifically I would be needing to modify the 0,7s standard delay to 0,2s delay as my tv (connected via toslink to the receiver pi) is able to postpone video/anticipate audio by max 0,2s only. It would be great to me and hopefully this feature would be helpful to many others. Do you think this might be a feasible option to be introduced? Thanks a lot for what you do, how you do it.
 
I think its safe to say the delay is already at the minimum and Ian would not make the delay more than required to fill the buffer at the highest rate. the only way you can fill it quicker, is to upsample everything to the highest rate your dac and your particular dac and clocks will handle. 384kHz, will fill a RAM buffer of equal size, 8 x quicker than 48kHz. the only way to lessen the delay, would be to decrease the size of the buffer, or the level the buffer fills to before it starts to play.
 
I think its safe to say the delay is already at the minimum and Ian would not make the delay more than required to fill the buffer at the highest rate. the only way you can fill it quicker, is to upsample everything to the highest rate your dac and your particular dac and clocks will handle. 384kHz, will fill a RAM buffer of equal size, 8 x quicker than 48kHz. the only way to lessen the delay, would be to decrease the size of the buffer, or the level the buffer fills to before it starts to play.

FifoPi has 64M memory, while McFifo has 256M. I'm the only one so far who uses such big memory to design a Fifo re-clocker (all other solutions only 256K memory). That makes FifoPi/McFifo to be the only solution that is capable of handling variable delay time without adding pressure to the hardware. And also, FifoPi/McFifo are the only solution that can keep the same amount of delay time for all different sampling frequencies Fs.

Ian
 
  • Like
Reactions: 1 user
FifoPi has 64M memory, while McFifo has 256M. I'm the only one so far who uses such big memory to design a Fifo re-clocker (all other solutions only 256K memory). That makes FifoPi/McFifo to be the only solution that is capable of handling variable delay time without adding pressure to the hardware. And also, FifoPi/McFifo are the only solution that can keep the same amount of delay time for all different sampling frequencies Fs.

Ian

So if they keep the same delay time for all different frequencies, does that mean you adjust the level it fills the memory to, before starting to play? So, for example, the highest rate 384khz fills the Fifopi 64Mb buffer completely before playing, but 96khz only fills 16Mb? your large buffer works great for audio, no denying that, but for the same reason it's problematic for video.
 
Last edited:
Can just delay the video signal by the same amount ?. Pretty sure I've seen software which has this feature.. VLC?

yes, you can. if you know what the delay is and it is not too long for vlc to handle (not sure what its max is) then any media you can play with VLC will work, but that doesnt help for streaming. you could probably find a workaround in linux that can delay the video from any source, by hard coding that delay into the stream for the video.
 
Last edited:
ReClockPi user's manual

Please find the attached ReClockPi user's manual.

I know many people have already received the ReClockPi. Please read the user's manual careful before you setting started.

It's a beta version, please let me know if there is any change or mistake.

I'm really sorry about the delay.

Enjoy the music and good luck to your project.

Nice weekend.
Ian
 

Attachments

  • ReClockPiUsersManual.zip
    777.4 KB · Views: 125
PC to GPIO host.

Since I'm rather late to the party, what I bring up has probably been mentioned earlier. I know using a PC instead of a RPi has been mentioned and since the RPi has the unique GPIO interface which Ian is using for his products,
I wasn't sure how to interpret the use of a PC, you know, to fully bypass the RPi. So I found one.

Ryanteck RTk.GPIO

rtkgpio.png


circa €12

Bring the world of physical computing to your PC or Mac by adding GPIO to your PC Or Mac with the Ryanteck RTk.GPIO!
The RTk.GPIO is a Plug & Play USB Device which adds 28 x Raspberry Pi style GPIO pins to your computer!

Compatible with Windows, Mac and Linux this board allows you to add GPIO to your computer.
The RTK GPIO board allows you to connect the world of physical computing to you desktop PC or laptop.
The RTK GPIO board emulates the original Raspberry Pi 40-pin GPIO header allowing you to program for the Raspberry Pi on your computer.
The board is fully compatible with Windows, Mac OS and Linux and supports a range of programming languages such as Python, Java and also use with Scratch.

The Ryanteck RTk.GPIO Features:

- Adds 28 GPIO to your computer
- Powered over USB
- Compatible with Windows, Mac & Linux
- Ideal for learning about electronics using real-world inputs & outputs.
- Use it to control LEDs, Add a LCD display to your computer, control a robot or more! (Example projects require other components to create.)
- Compatible with most Raspberry Pi add-ons that use GPIO, this device is ideal to use with your exsisting add-ons, HATs or pHATs.
- Compatible with Windows 7, 8 & 10. OSX 10.11, macOS 10.12, Ubuntu 16.04, Raspbian & other major linux distributions


Ryanteck/RTK.GPIO at master * PiSupply/Ryanteck * GitHub

***
What I envision is to use something like Gigabyte GA-J3455N-D3H or Supermicro X11SAAand internally connect the RTK.GPIO directly to an empty USB port on the motherboard.
This together with Ian's Reclocker platform and Andrea Mori clocks should be among the better options out there.

Any comments ??????

(Supermicro X11SAA is what Innuos is using)
 
"Any comments ??????"

Yes, a good USB to I2S board would probably serve you much better, for example: I2SoverUSB - I2S over USB Audio ...The USB board output can be connected to the input of FIFO_Pi if you want, or you could bypass the fifo altogether. A fifo is not really needed with high quality, isolated, asynchronous USB. Ian's FIFO does make it easier for you to compare clocks though, or to receive things like SPDIF and or HDMI with low jitter.