Eu tive sucesso com o exemplo mostrado em esta resposta .
Instale plugins LADSPA de Steve Harris e, em seguida, execute o seguinte em pacmd
:
load-module module-ladspa-sink sink_name=compressor plugin=sc4m_1916 label=sc4m control=1,1.5,401,-30,20,5,12
set-default-sink compressor
Os parâmetros (a parte control=1,1.5,401,-30,20,5,12
acima) para este compressor estão descritos em Documentos do Plugin LADSPA de Steve Harris :
- RMS / pico: o equilíbrio entre o RMS e os seguidores de envelope de pico. geralmente melhor para sutil, musical compressão e pico é melhor para compressão mais pesada e rápida percussão.
- Tempo de ataque (ms): o tempo de ataque em milissegundos.
- Tempo de liberação (ms): o tempo de liberação em milissegundos.
- Nível de limite (dB): O ponto no qual o compressor começará a chute.
Relação- (1: n): A taxa de redução de ganho usada quando o nível do sinal excede o limite.
- Raio do joelho (dB): a distância do limiar onde o joelho curva começa.
- Ganho de maquiagem (dB): Controla o ganho do sinal de entrada de composição em dB's.
- Amplitude (dB): O nível do sinal de entrada, em decibéis.
- Redução de ganho (dB): o grau de redução de ganho aplicado à entrada sinal, em decibéis.
Devido a uma limitação do PulseAudio, não é possível ajustá-los em tempo real.
Para testar diferentes parâmetros, também carreguei o compressor como um plugin ALSA ajustável em tempo real por Alsaequal criando o seguinte ~/.asoundrc
:
ctl.compressor {
type equal;
library "/usr/lib/ladspa/sc4m_1916.so";
module "sc4m";
}
pcm.plugcompressor {
type equal;
slave.pcm "plug:pulse";
library "/usr/lib/ladspa/sc4m_1916.so";
module "sc4m";
}
pcm.compressor {
type plug;
slave.pcm plugcompressor;
}
Um exemplo de arquivo MP3 pode ser reproduzido através do compressor usando mpg321 ,
mpg321 -a hw:compressor "04 - Love Song for Yoshimi.mp3"
enquanto alsamixer -D compressor
pode ser usado para ajustar parâmetros em tempo real.
Esta resposta explica como carregar o plugin permanentemente.