Live data from Hacker News

Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

github.com

31–40 of 95 posts

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#31
post #16

Earlier quoted context omitted.

The ADCs on RP2040/2350 only have 12 bit resolution.

Yes, but this project doesn't do anything analog to begin with. It could just have several S/PDIF and I2S inputs, and convert that to USB. You probably don't want any processing then, and just pass the digital inputs straight to USB. The limit of how many channels you could simultaneously process would then be the USB bandwidth.

Yes, but we weren't talking about the (current) scope of this project.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#32
post #14
post #5

Nice. I wonder if 264/520 kB RAM is also enough for a high quality parametric stereo reverb/echo effect? Should fit about 3/6 seconds of uncompressed 16-bit 44.1/48 kHz audio. Also: Raspberry Pi Ltd - please keep increasing the RAM size in future iterations to unlock even more use cases.

The RP2350 (Pico 2) supports external PSRAM so you can add several MB more there if you need it.

Default specs matter a lot for worldwide availability and affordability, as well as for the willingness of people to spend a lot of time creating free software for it.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#34
post #19

Earlier quoted context omitted.

Ouch, thats pretty average, what a pity ..

Why? This is a device more for home audio/audiophile uses it seems? Why does latency matter there?

Would be nice to use it as a synthesis DSP if the latency were a bit better.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#35
post #4

Is there a guaranteed latency?

Hello. I am the creator of this project! Nominal latency is currently 8ms, with ±1ms of variance. All output channels are phase-locked, so this doesn't present a problem for multi-way crossover implementations.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#36
post #14
post #5

Nice. I wonder if 264/520 kB RAM is also enough for a high quality parametric stereo reverb/echo effect? Should fit about 3/6 seconds of uncompressed 16-bit 44.1/48 kHz audio. Also: Raspberry Pi Ltd - please keep increasing the RAM size in future iterations to unlock even more use cases.

The RP2350 (Pico 2) supports external PSRAM so you can add several MB more there if you need it.

I have always wondered kind of bandwidth you could make by multiple channels of PSRAM driven by PIO/DMA. Individually they're not so speedy(although the APS6408L-OCH-BA seems pretty crazy) , but how many can you run simultaneously. In terms of the RP2350 it would be fascinating to see how many times a second could you replace the entire contents of SRAM.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#37

Tangentially related, I recently had some hand-me-down high-end full tower speakers lose their integrated subwoofer amps. I bypassed them and wired in an external amp but people said the integrated DSP would be missing. That's when I learned about CamillaDSP [1] and CamillaFIR [2]. I got a calibrated UMIK-1 microphone and did a frequency sweep in the room. Then I applied the Camilla-computed FIR filter to my snapcast…

Did you ever use Dirac Live and can compare the results? Hardware that supports Dirac is unfortunately very expensive.

You can get a miniDSP 2x4HD for like $225 that supports Dirac Live.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#38

I recently bought a Behringer U-phono UFO202 as a cheap DAC for my mini pc. Can this Pi thing replace it?

I use a UCA202 for the same purpose. Does yours output static sometimes when it sits for too long? Based on my testing this seems to be a Linux thing instead of a Behringer thing.

Oh no. I actually haven't used it, it's still sitting in my drawer. And yes it's a headless Debian.

Re: Fully Featured Audio DSP Firmware for the Raspberry Pi Pico

#40
post #5

Nice. I wonder if 264/520 kB RAM is also enough for a high quality parametric stereo reverb/echo effect? Should fit about 3/6 seconds of uncompressed 16-bit 44.1/48 kHz audio. Also: Raspberry Pi Ltd - please keep increasing the RAM size in future iterations to unlock even more use cases.

> high quality parametric stereo reverb/echo effect

I’m sometimes annoyed that the home audio/audiophile world is so separate from the live/professional world.

For playing recordings with fancy effects, you can throw massive overkill CPUs at it with small batches, brutefir style, or you can do high-latency FFT filters, and you can get essentially perfect FIR reverb effects with a latency vs complexity tradeoff.

But the algorithm in the middle exists and is not that exotic. You divide your impulse response into a very short piece at the beginning, then a longer piece after that, then a longer piece after that, in exponentially increasing pieces. And then you add up the results, with straight addition and multiplication for the short one, and (carefully scheduled to avoid stalls) FFT convolution for the long ones, and you get basically arbitrary long FIR filters with logarithmic amortized complexity per sample and as low as zero sample latency if you are so inclined.

I think this is called “non-uniform partitioning” or something to the effect. I’m not aware of any serious, public implementation for audio use.

Post reply on HN