hrvach / talkberry

Low-bitrate open source speech codec for Raspberry Pi RP2040
GNU Lesser General Public License v2.1
31 stars 3 forks source link

Encoding support #2

Open vilmosbozsik opened 6 months ago

vilmosbozsik commented 6 months ago

Hi! I'm pretty new to this, and I'm pretty far from being a programer, but I've decided I want to start working on a small digital walkie talkie project using codec2, lora radios, and a raspberry pi pico. Would it perhaps be possible to add voice encoding support as well to the library? ( Just the ability to encode any sort of data packets would be perfect ) Thanks in advance!

hrvach commented 6 months ago

It's not done (yet), needs some work to get it running properly and I'm chronically short on time :) NLP pitch estimator needs some improvements and there were issues with q15 fft. It's on my list of projects that needs finishing...

vilmosbozsik commented 6 months ago

Thanks! I guess I'll have to wait then... Any recommendations for a substitute solution/library? I was considering the rp2040 because it's cheap and I'd need to make as many walkie talkies as possible. ( plus I've read somewhere it's faster than an STM32 which might be needed for encrypting the traffic ).

hrvach commented 6 months ago

Encryption is easy/cheap, especially doing low-bitrate codecs. Encoding/decoding voice is hard, you need a lot of math for that. If you have a DSP or a device with hardware floating-point, it becomes much easier. STM32F4 for example is pretty decent for doing DSP and there is codec2 port for it iirc. RP2040 isn't the best choice for doing DSP because it has no hardware FP, that's why I did the port to get it to run in fixed point.

I chose it because I also liked its price, along with its power and PIO - it's a friggin' fantastic chip.