dawsonjon / PicoRX

Build a SDR SW/MW/LW Receiver with a Raspberry Pi Pico
MIT License
250 stars 32 forks source link

Added Bresenham audio interpolation #95

Closed mryndzionek closed 1 month ago

mryndzionek commented 1 month ago

I don't know if this is that needed, but seemed a nice thing to have.

dawsonjon commented 1 month ago

Cool, thanks. I had thought about adding some kind of interpolation here, but didn't think that we would see much improvement because most artefacts would be removed by the RC output filter, and mostly be at inaudible frequencies. I was thinking of maybe adding a low order cic filter, or perhaps some kind of sigma-delta noise shaping. This approach is very interesting, I hadn't heard of Bresenham interpolation, and had to look it up. The code looks very efficient, how is the CPU looking? Do you notice any improvement in audio quality?

mryndzionek commented 1 month ago

The code looks very efficient, how is the CPU looking? Do you notice any improvement in audio quality?

Regarding CPU hard to say. Maybe 1%. Audio quality maybe very slightly better :smile: .