Options for post-processing audio from sdrtrunk (P25)

ErikSwan

Member
Premium Subscriber
Joined
Jun 27, 2023
Messages
50
Location
Boise, Idaho
What, if anything, are you guys using to post-process the audio from sdtrunk to make it sound better?

sdrtrunk on a P25 system works great but the audio it outputs is the raw IMBE decoded audio without any sort of post processing. Despite listening on a very nice set of desktop speakers (Audioengine A2), the audio from sdtrunk qualitatively sounds worse than the Unication G5 on my desk. I'm pretty sure this is because the speaker on the G5 is naturally removing a lot of the low and high ends from the audio and the resulting EQ makes voices more intelligible. The G5 might also be doing some audio processing or EQ in software, I'm not sure.

To improve the audio from sdrtrunk, I would really like to pipe it through something that could do a couple things:
  • Apply an EQ to improve intelligibility of voices
  • Apply some sort of audio AGC/compression/normalization to try to normalize the level across different talk groups/radios/users
What would be a good tool to do this? Has anyone else set something up like this and would be willing to share?
 

belvdr

No longer interested in living
Joined
Aug 2, 2013
Messages
2,567
For Linux, there's a multitude of options, like pulse-equalizer. For Windows, Equalizer APO may be an option. I use a traditional audio mixer on my desk and route all audio through it. This gives me easy control of switching to headphones or speakers.
 

ErikSwan

Member
Premium Subscriber
Joined
Jun 27, 2023
Messages
50
Location
Boise, Idaho
Thanks. I am on Windows, so primarily looking for a software solution on Windows, although I would be curious what people would recommend for Linux as well.
 

Twister_2

Member
Feed Provider
Joined
Mar 1, 2008
Messages
619
Location
Dauphin County, PA
I've been asking for a way to filter the audio before SDRtrunk makes an mp3 file. The current audio sounds like the old Radioshack scanners and frankly makes my ears bleed. I've been blessed with APX audio for the past decade and would like to be able to tweak the audio in SDRtrunk to get somewhat close.
 

a417

Active Member
Joined
Mar 14, 2004
Messages
4,669
For Linux, there's a multitude of options, like pulse-equalizer.
pipewire is replacing pulseaudio in the environ, and has a good number of compatible tools for audio adjusting and manipulation. One that I am currently testdriving is EasyEffects, which was originally known as pulseeffects (or something). I'm only into the initial steps of my testing, but I am very happy with the results.

Since migrating to pipewire from (the Poettering bastard-child that is) pulseaudio, i have had to make significantly less bodgy fixes in audio pathing and have had vastly improved latency, and less systemd related pulseaudio issues - which is ironic, as they come from the same author.
It always felt hacky with pulseaudio, and I'm glad to be done with it.

much like pulseaudio, this post shouldn't be run as UID 0.
 

tadsmith

Member
Premium Subscriber
Joined
Jan 19, 2018
Messages
29
The audio processing is all being done in JMBE (https://github.com/DSheirer/jmbe). If you're comfortable building that on your own, I got rid of a lot of the loudness/crackling by modifying this line and removing the "+ 1.0f" that is being added above and beyond what the xMBE standards call for. That being said, it's still nowhere near as crisp as a Unication, but it's still probably the decoder available for free.
 

Twister_2

Member
Feed Provider
Joined
Mar 1, 2008
Messages
619
Location
Dauphin County, PA
The audio processing is all being done in JMBE (https://github.com/DSheirer/jmbe). If you're comfortable building that on your own, I got rid of a lot of the loudness/crackling by modifying this line and removing the "+ 1.0f" that is being added above and beyond what the xMBE standards call for. That being said, it's still nowhere near as crisp as a Unication, but it's still probably the decoder available for free.
Thanks. I may give this a try. I find that feeds from Open MHZ sound more like a Unication or subscriber radio. I don’t really want to go that direction just for better audio that none of the listeners will even appreciate 😂
 

W4DQK

Newbie
Joined
Dec 8, 2020
Messages
1
pipewire is replacing pulseaudio in the environ, and has a good number of compatible tools for audio adjusting and manipulation. One that I am currently testdriving is EasyEffects, which was originally known as pulseeffects (or something). I'm only into the initial steps of my testing, but I am very happy with the results.

Since migrating to pipewire from (the Poettering bastard-child that is) pulseaudio, i have had to make significantly less bodgy fixes in audio pathing and have had vastly improved latency, and less systemd related pulseaudio issues - which is ironic, as they come from the same author.
It always felt hacky with pulseaudio, and I'm glad to be done with it.

much like pulseaudio, this post shouldn't be run as UID 0.
I have some question about your adventure with sdr-trunk and pipewire. I'm running fedora 40, sdr-trunk, gqrx, ices, and icecast. Steaming all my audio through pipewire and easy effects. The problem I think(very questionable) alsa.java audio spawns a new module for each capture of sdr-trunk. Every time sdr-trunk hears a new communication I see a new alsa.java module created. At some point the audio just stops working. Looking at sdr-truck the application is doing its thing without audio. I wonder if it maxed out on the number of open modules. I don't see the old alsa.java modules being destroyed.

Have you noticed any of this with your setup?
 
Top