Je veux appliquer un plugin LADSPA à tout ce qui passe par le récepteur PulseAudio par défaut. Comment dois-je configurer cela?
la source
Je veux appliquer un plugin LADSPA à tout ce qui passe par le récepteur PulseAudio par défaut. Comment dois-je configurer cela?
L'ajout d'un plugin LADSPA à pulseaudio se fait avec module-ladspa-sink .
Nous installons ce module comme un récepteur de sortie où nous pouvons définir le module de traitement et pouvons envoyer le signal traité à ce récepteur nouvellement créé.
Ce module peut être chargé lors de l'exécution avec:
pacmd load-module module-ladspa-sink sink_name=<yourname> master=<sinkname> plugin=<plugin> label=<label> control=<option1>,<option2>,[...]
Le nom du récepteur maître peut être lu avec la commande suivante:
pacmd list-sinks
Donnez un nom au récepteur traité tel qu'il apparaîtra dans la liste de sortie dans sink_name
. Toutes les autres options dépendent du plugin que nous utilisons (voir l'exemple ci-dessous).
Pour appliquer le processeur LADSPA, nous choisissons le récepteur de sortie dans "Paramètres audio ..." et pouvons maintenant écouter le flux traité. Les options de contrôle ne peuvent pas être modifiées lors de l'exécution.
Nous devrons décharger le module et le charger à nouveau pour différentes options. Pour trouver l'index du module pour le déchargement, nous pouvons émettre:
pacmd list-modules
Pour décharger un module, nous redémarrons le serveur audio avec pulseaudio -k
ou nous déchargeons le module avec son numéro d'index #
:
pacmd unload-module <#>
Voir aussi le wiki de référence de pulseaudio .
Après avoir trouvé les options appropriées, nous pouvons vouloir l'exécuter par défaut. Cela peut être fait en l'incluant dans le /etc/pulse/default.pa
fichier de configuration à charger par le démon au démarrage:
.ifexists module-ladspa-sink.so
.nofail
load-module module-ladspa-sink <options>
.fail
.endif
Ceci est un exemple d'un cas spécial pour vous donner une idée sur la façon de le faire. Dans cet exemple, nous voulons appliquer un pitch shift à notre sortie audio à l'aide du plug-in TAP tap_pitch ( tap-plugins ). Pour ce plugin, les options supplémentaires nécessaires au chargement dans Pulse Audio sont les suivantes:
plugin=tap_pitch # as from /usr/lib/ladspa/ without .so
label=tap_pitch # defines which label of a plugin to use
Pour trouver les options de contrôle appropriées, nous parcourons la documentation du plugin (ici TAP plugin pitch shifter ). Nous trouvons là un joli tableau de quatre contrôles pertinents que nous devons appliquer dans la control=
commande:
control=<semitone>,<rate>,<dry>,<wet>
Laisser une option vide utilisera la valeur par défaut dans ce cas.
Ainsi, la commande suivante appliquera un décalage de hauteur d'une octave vers le bas de mon récepteur principal alsa_output.pci-0000_00_14.2.analog-stereo
(remplacez-le par votre récepteur) au récepteur de sortie ladspa_out
avec un décalage de demi-tons de -12
, c'est-à-dire un décalage de taux de -50
%, et avec un niveau de mixage sec (non traité) de -90
dB, et un niveau humide (traité) de 0
dB.
pacmd load-module module-ladspa-sink sink_name=ladspa_out master=alsa_output.pci-0000_00_14.2.analog-stereo plugin=tap_pitch label=tap_pitch control=-12,-50,-90,0
Pour certains plugins, la documentation peut ne pas être complète, ou le réglage approprié nécessitera un peu d'expérimentation jusqu'à ce qu'ils soient corrects.