web-dev-qa-db-fra.com

Comment contrôler la balance des haut-parleurs ou désactiver un haut-parleur?

J'ai un ordinateur portable avec deux haut-parleurs: l'un est sonné et joue un son déformé et désagréable.

Comment puis-je le désactiver de manière permanente ou le contrôler à l'aide de la balance?

Une commande de terminal est préférable, je pense.

De plus, j'utilise les paramètres sonores de base de Gnome et PulseAudio Manager. Ce dernier est utilisé pour maximiser le volume, car le premier ne me permet pas d'aller au-delà de 150%. Mais lorsque j'utilise PulseAudio Manager, il rééquilibre automatiquement les haut-parleurs à 50%/50%. Toute solution doit donc être suffisamment permanente pour que PulseAudio Manager ne puisse pas modifier la balance.

Merci.

3
user296844

Je ne connais aucun moyen de verrouiller un contrôle avec ALSA ou PulseAudio, mais ce petit bidouillage devrait fonctionner:

stdbuf -oL alsactl monitor | \
while read; do
    amixer -D Pulse sset Master 0,-
done

Il surveille les changements de volume à l'aide de alsactl monitor (vous pouvez exécuter cette commande vous-même et modifier le volume pour voir ce qu'il fait), et chaque fois qu'un changement est effectué, il réinitialise le volume du canal gauche à 0.

Vous devrez peut-être changer:

  • Pulse à autre chose si vous utilisez un autre périphérique audio.

  • 0,- à -,0 si vous souhaitez conserver le canal droit en sourdine.

  • Master à quelque chose comme Speaker,0 si vous souhaitez qu'un contrôle secondaire (par exemple un casque) fonctionne normalement.

Vous pouvez faire exécuter le script au démarrage en:

  1. Le mettre dans un fichier, par exemple ~/.bin/alsa-fix,
  2. en donnant au fichier l'autorisation de s'exécuter: chmod +x ~/.bin/alsa-fix, et
  3. ajoutant la ligne ~/.bin/alsa-fix & à ~/.profile.

Le script ne doit utiliser pratiquement aucun processeur ni RAM, mais si vous souhaitez le rendre encore plus efficace, vous pouvez probablement l'exécuter avec dash en ajoutant la ligne #!/bin/dash en haut du fichier.

2
Zaz

la commande habituelle pour amixer de définir les niveaux a une valeur utilisée pour tous les canaux, mais peut utiliser deux valeurs différentes

par exemple: je mets la ligne en capture pour un micro mono sur mon matériel avec

amixer set -c 0 Line 42,0

utilisez la commande amixer ou alsamixer pour trouver le numéro d'identification du périphérique pour l'option -c
et nom de l'élément de mixage ALSA à remplacer 'Line'

Peut utiliser des valeurs en pourcentage ou en dB aussi
Dans ce cas, les valeurs de '46% 'ou' 0dB 'au lieu de' 42 'ont le même résultat

Si Pulseaudio provoque toujours des changements de niveau ALSA
Utiliser le contrôle du volume Pulseaudio pavucontrol
allez à l'onglet Périphériques de sortie
Cliquez sur le cadenas pour déverrouiller les chaînes et définir les niveaux de chaîne

0
nik gnomic

Il y a un contrôle de balance droit et gauche dans l'interface graphique pour le son. Votre question semble indiquer que vous préférez une commande de terminal. Si c'est le cas, je ne peux pas vous aider. Cependant, si vous êtes simplement déterminé à assourdir l'une de vos enceintes, vous devriez pouvoir le configurer dans vos paramètres sonores. Cliquez simplement une fois sur l'icône du haut-parleur en haut de votre écran et cliquez sur les paramètres sonores.

0
gyropyge