Skip to main content
Topic: Codec for low dynamic range, noisy (rf crackle) speech? (Read 824 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Codec for low dynamic range, noisy (rf crackle) speech?

I'm helping a bunch who have a couple of Ye Olde Analogue radio repeaters scattered about the mountains to help hikers and hunters and search and rescue.

They have a "keep an archive and listen either live or to archived recordings via the web" service.  Very useful if a hiker in distress said something nearly inaudible and you want to go back and confirm you heard the right thing.

I think they are using the wrong audio codec for this and I'm looking around for something better....

* The audio quality is Bad Bad Bad by modern standards, mostly due to range, low power hand held transmitters, intervening dirty great mountains, weather, and RF interferers (eg. some farmers rusty electric motor).
* The dynamic range is low.
* There is substantial "crackle" interferers.
* There is substantial "white noise" from RF and various components.

They have broadband connections from the repeater stations to the cloud servers. So bandwidth isn't the limiting issue, audio quality is, and latency is. (Ever tried to have a conversation where the audio lags terribly?)

Part of me says "Go lossless", but the utility might be increased by a codec that is good at emphasizing speech and losing crackle and white noise.

Which open source / patent unencumbered codec would you recommend?

Re: Codec for low dynamic range, noisy (rf crackle) speech?

Reply #1
I don't know how these equipment of yours works, but if bandwidth isn't a problem the Opus codec is one of the best options as it can go from very high quality transparent audio down to intelligible 6kb/s speech and have very low latency (20ms by default, can go even lower or higher if needed).
The crackles you talk about... if there are crackles in this analog transmission I guess there would be some packet loss, Opus can compensate for packet loss as well using forward-error correction. Here are some examples, including one with the mentioned forward error correction. Note that the latest versions sounds even better than these examples.

If the bandwidth ever gets to be a problem, consider Codec 2 as well. It is also open source, designed for low bandwidth HF/VHF digital radio and can do good enough speech with lots of noise even at around 2kb/s.

Re: Codec for low dynamic range, noisy (rf crackle) speech?

Reply #2
I believe he means that he will be receiving analog audio on the repeaters, but that he wants to compress them at the repeater, and send it with broadband to the cloud, where they would be able to listen to it in realtime, hence why the latency is important.

What he wanted to describe is the kind of audio that will need to be compressed so that the codec would not choke with that.

If that is true, the part about analog transmission of the encoded audio is not relevant, but Opus is still a good candiate

Re: Codec for low dynamic range, noisy (rf crackle) speech?

Reply #3
Lots of analog noise and dealing with low latency is what basically all voice/phone codecs do.  The free solution is opus, but there are lots of other options too. 

Re: Codec for low dynamic range, noisy (rf crackle) speech?

Reply #4
I believe he means that he will be receiving analog audio on the repeaters, but that he wants to compress them at the repeater, and send it with broadband to the cloud, where they would be able to listen to it in realtime, hence why the latency is important.

What he wanted to describe is the kind of audio that will need to be compressed so that the codec would not choke with that.

If that is true, the part about analog transmission of the encoded audio is not relevant, but Opus is still a good candiate
Yeah I did't understand it at first and ended messing it up, my bad. Still improving my english.

Now that I remember, the CELT part from Opus have been already in use on some radio transmitter links a long time ago, even before 1.0. Maybe Opus is indeed the best option.

 
SimplePortal 1.0.0 RC1 © 2008-2018