Fast discrete cosine transform (FDCT) library for Raspberry Pi Pico & other platforms writen in C++.
FDCT for Pico provides real-time forward and inverse DCT using integer arithmetic. It processes ~950k Samples/sec of 12-bit data providing 1024-bins DCT. Throughtput of inverse transform (IDCT) quite the same. Using the library it is possible to process realtime audio streams in frequency domain, having a lot of time to implement sophisticated algorithms of spectral components' manipulation. It is possible to process streams of higher frequencies, which can be suitable for SDR projects.
Here an example of test terminal output from Pico.
This is an experimental project of amateur radio hobby and it is devised by me in order to experiment with analog and digital modes. I am licensed radio amateur who is keen on experiments in the area of the digital modes on HF. My QRZ page is https://www.qrz.com/db/R2BDY
-
Install Raspberry Pi Pico SDK. Configure environment variables. Test whether it is built successfully.
-
git clone https://github.com/RPiks/pico-FDCT
-
cd pico-FDCT
-
./build.sh
-
Check whether output file ./build/pico-FDCT.uf2 appears.
-
Load the .uf2 file into the Pico board.
-
minicom -D /dev/ttyXXXX (here is the serial port of Pico, usually ttyACM0).
-
Provide the feedback by clicking like on the github page of the project :).
Cheers, Roman Piksaykin, amateur radio callsign R2BDY https://www.qrz.com/db/R2BDY [email protected]