Hi,
Does anyone know if there is a module for sample rate conversion?
It's listed on here: http://www.xmos.com/applications/audio at the bottom of the page as an included library, but I can't seem to locate anything overtly related to SRC in the modules...
Thanks!
Audio Sample Rate Conversion Module?
-
- New User
- Posts: 3
- Joined: Mon Apr 07, 2014 9:26 pm
-
- XCore Legend
- Posts: 1126
- Joined: Thu May 27, 2010 10:08 am
What sort of SRC are you talking about? Like all audio DSP, it depends on the spec (input vs output) and "how well" it is done, because it is not an exact science. For example, SRC for integer sample rates (48->96KHz) is easier than 44.1KHz to 48KHz (synchronised) due to compute requirements. And 48KHz to 48KHz (asynch) is also hard.
Simple SRC is trivial and can be as easy as repeating/throwing away samples, but nice SRC is a science in itself and the subject of much research.
There's some experimental stuff here https://github.com/xcore/sc_dsp_filters but no products to my knowledge. People certainly do this on XMOS chips, but normally the secret sauce is user supplied.
There are a few DSP gurus on here who can definitely help with info about this, but it would be a good start to share your requirements.
Simple SRC is trivial and can be as easy as repeating/throwing away samples, but nice SRC is a science in itself and the subject of much research.
There's some experimental stuff here https://github.com/xcore/sc_dsp_filters but no products to my knowledge. People certainly do this on XMOS chips, but normally the secret sauce is user supplied.
There are a few DSP gurus on here who can definitely help with info about this, but it would be a good start to share your requirements.
-
- Newbie
- Posts: 1
- Joined: Wed Apr 09, 2014 9:23 am
All major DSP and FPGA manufacturers provide ready-made solutions for audio src free of charge. And I am a bit surprised XMOS (until now) does not. Some have it in SoC, some as an IP core, some even in source code. So this could actually been taken as a starting point for doing an implementation. And of course there are also excellent open source C implementations around. But these normally do not have a ratio estimator (input and output sample rates need to be provided).
Conversion for integer ratios is of course trivial, but this is seldom the case. You will normally need something that works with any ratio and that tracks the ratio that might not be constant. If you look on the web you'll find the VHDL implementation mentioned above that works with any ratio at rates from 8 to 192 kHz with 24 bit resolution and a THD+N better than 130dB.
I would really appreciate it if XMOS or someone from the community would provide such an src. It's just that this seems to be something very useful for many audio designers. And normally we don't have the time to develop everything by ourselves :-)
Conversion for integer ratios is of course trivial, but this is seldom the case. You will normally need something that works with any ratio and that tracks the ratio that might not be constant. If you look on the web you'll find the VHDL implementation mentioned above that works with any ratio at rates from 8 to 192 kHz with 24 bit resolution and a THD+N better than 130dB.
I would really appreciate it if XMOS or someone from the community would provide such an src. It's just that this seems to be something very useful for many audio designers. And normally we don't have the time to develop everything by ourselves :-)
-
- XCore Legend
- Posts: 1126
- Joined: Thu May 27, 2010 10:08 am
It's an old thread but we have some news:I would really appreciate it if XMOS or someone from the community would provide such an src
https://www.xmos.com/support/libraries/lib_src
Very high quality SSRC and ASRC functions now available!
-
- XCore Addict
- Posts: 131
- Joined: Wed Aug 03, 2011 9:13 am
Thanks, this is really helpful. I'm working on a design a the moment which needs exactly this.