Upcoming maintenance
Dear Customers and Partners.
This website will be undergoing scheduled maintenance on June 14, 2023. Please be aware there may be disruption to the developer portal website and associated services during the scheduled maintenance period.
This upgrade is essential to ensure the continued performance, reliability, and security of Developer World.
We apologize for any inconvenience.
Question about audio dsp on the spresense...
-
I'm intrigued about the possibility of moving my Teensy 3.6 based quadrature dsp work to the Spresense. Currently I use I2S input to and from an external 16-bit codec as the real-time IO and process in length 128 blocks. I haven't yet purchased an Spresense, because it seems that the audio libraries are limited to recording and playback of speech/music. Is there a way to do block processing of a continuous raw data stream in the SDK? I can't seem to find any reference to line-in/out levels in the reference stuff...
Thanks. -
I would advise against getting this board for DSP stuff.
There is no low level sdk provided for audio but rather an overly complex higher level audio system that is very badly documented and basically seems to be designed around playing/recording audio files.
The audio output is digital (pulse density modulation) rather than analog so it is hard to see what is going on with an oscilloscope.
The extra m4 cores are crippled because Sony have not implemented Nuttx SMP but rather just treat the cores as coprocessors that have no access to the kernel/hardware.
I got this board for DSP stuff and after about 30 hours of struggling with it have decided it is not fit for purpose.
Maybe they will sort out the software level in the future, the processor itself seems interesting.
-
Thanks Andy. Your reply confirms my impression from trying to read/understand the SDK. I don't see the point of it...
Derek -
No Problem.
I know its in a different price bracket but have you looked at these before: https://bela.io/products
-
Hi Derek,
You can get the sampled raw audio data.
In the official SDK repo you can find a example called audio recorder. This recorder will record audio and store it into a file on the SD card.I have used this example to get the raw audio stream.
The bytes in the stream are arranged in the same way as the wave file format.
http://soundfile.sapp.org/doc/WaveFormat/If you look in the function
app_write_output_file
you will see how the fifo is being read.
https://github.com/sonydevworld/spresense/blob/master/examples/audio_recorder/audio_recorder_main.cxx@Derek said in Question about audio dsp on the spresense...:
I'm intrigued about the possibility of moving my Teensy 3.6 based quadrature dsp work to the Spresense. Currently I use I2S input to and from an external 16-bit codec as the real-time IO and process in length 128 blocks. I haven't yet purchased an Spresense, because it seems that the audio libraries are limited to recording and playback of speech/music. Is there a way to do block processing of a continuous raw data stream in the SDK? I can't seem to find any reference to line-in/out levels in the reference stuff...
Thanks.