web-dev-qa-db-fra.com

Comment puis-je acheminer un égaliseur ALSA à l'échelle du système (alsaequal) via ma commande de volume et y connecter PulseAudio?

J'ai un problème assez spécifique et je ne peux pas le résoudre par moi-même.

Comme expliqué dans cette question , j'ai configuré un contrôle de volume à l'échelle du système pour ma seule carte audio USB (M- Audio Fast Track ). Maintenant, je voudrais également ajouter un égaliseur à l'échelle du système (libasound2-plugin-equal), tout en gardant le contrôle du volume intact.

Jusqu'à présent, j'ai pu tout faire fonctionner correctement uniquement dans les programmes ALSA .

Avec le /etc/asound.conf, le contrôle du volume via softvol et les paramètres de l'égaliseur fonctionnent en même temps:

pcm.!default {
        type plug
        slave.pcm "softvol"
}

ctl.!default {
        type hw
        card Track
}

pcm.softvol {
        type softvol
        slave {
            pcm "hw:Track"
        }
        control {
            name "Master"
            card Track
        }
}

ctl.equal {
        type equal;
}

pcm.plugequal {
        type equal;
        slave.pcm "plug:softvol";
}

pcm.!default {
        type plug;
        slave.pcm plugequal; 
}

Source: https://docs.slackware.com/howtos:hardware:sound_problems_on_slackware

Il semble y avoir une certaine redondance, mais c'est la configuration qui fonctionne actuellement.

Le problème qui reste maintenant est que PulseAudio saute apparemment toute cette configuration et sort directement sur ma carte son, donc l'égaliseur fonctionne dans les programmes qui prennent en charge la sortie ALSA (pas Firefox, etc.) et JACK, car le périphérique de sortie peut être spécifié .

Est-ce que quelqu'un sait isoler PulseAudio de telle sorte qu'il ne sortira que sur le périphérique ALSA plugequal et ne sera pas connecté directement à ma carte son?

Malheureusement, PulseAudio ne répertorie pas plugequal comme périphérique de sortie, juste ma carte son matérielle.

J'ai désinstallé PulseAudio pour le moment, car il désactive l'égaliseur et le contrôle du volume lorsqu'il est connecté à la carte son.

7
Prototype700

J'avais l'habitude d'utiliser jack et MIDI et je me souviens d'avoir regardé ce vidéo sur YouTube. Je vais essayer de suivre les étapes. Si vous ne l'avez pas déjà fait vous devez d'abord installer qjackctl

Sudo apt install qjackctl

Suivez les invites et changez la réponse en oui. Ensuite, revenez à la ligne de commande après l'installation.

aptitude search pulseaudio 

Vous devez installer certains modules.

pulseaudio-module-jack

pour l'installer, utilisez cette commande:

Sudo aptitude install pulseaudio-module-jack

Allez ensuite dans un fichier texte:

Sudo vi /etc/Pulse/default.pa

Recherchez l'en-tête ### Charger les pilotes audio de manière statique. Ensuite, ajoutez ces deux lignes:

load-module module-jack-sink
load-module module-jack-source

Mettez ensuite ceci dans la ligne de commande:

Sudo service pulseaudio restart 

La vidéo est encore plus détaillée, mais cela donne une bonne explication. Je l'ai fait à un moment donné et cela a fonctionné, bonne chance.

1
BJsgoodlife

Comme quelqu'un avait l'habitude de "brancher et jouer" des appareils audio (par exemple, ne jamais rien configurer pour le son), votre problème "sonne" très compliqué pour moi. Cependant, il y a problèmes génériques avec les égaliseurs et la réponse acceptée pourrait aider:

Pour démarrer le fonctionnement de l'égaliseur pulseaudio:

qpaeq

Si cela vous donne l'erreur

There was an error connecting to pulseaudio,
please make sure you have the pulseaudio dbus module loaded, exiting...

puis chargez ces deux modules en utilisant pactl:

pactl load-module module-equalizer-sink
pactl load-module module-dbus-protocol

et, pour rendre ces modifications permanentes, modifiez ~/.config/Pulse/default.pa (créez-le si nécessaire) et ajoutez ces lignes:

load-module module-equalizer-sink
load-module module-dbus-protocol
1
WinEunuuchs2Unix