web-dev-qa-db-fra.com

Commande du terminal pour régler le volume audio?

J'ai une carte son externe qui fonctionne généralement bien, sauf que lors de sa première connexion ou lorsque j'allume mon ordinateur portable, le volume est réglé sur 100%. C'est-à-dire le volume global du système, comme indiqué dans l'indicateur de son.

Ce que je recherche, c’est une commande de terminal qui règle ce volume à 50%, afin que je puisse l’exécuter lors de la connexion et ne pas avoir à craindre que le premier fichier audio que j’ai lu m’éclate si j’oublie de tourner. le volume baisse. Quelles commandes vous permettent de modifier ce volume, c’est-à-dire celui de l’indicateur de son?

J'ai fouillé dans gsettings et dbus, mais je suis incapable de trouver quoi que ce soit qui me permettrait de régler le volume du système de cette manière. Je connais alsamixer, mais ce n'est pas la solution que je recherche, car cela ne me permet pas de modifier le volume à l'aide de l'indicateur de son ou des touches multimédias de mon ordinateur portable.

94
Marius

Certaines parties de cette réponse proviennent de Réglage du volume d'entrée du microphone à l'aide de la ligne de commande? , placé ici pour votre commodité.

Augmente le volume de 5%

amixer -D Pulse sset Master 5%+

Diminuer le volume de 5%

amixer -D Pulse sset Master 5%-

Réglez le volume sur 50%

amixer -D Pulse sset Master 50%

Si vous utilisez ALSA, amixer peut être utile pour votre programmation de script.

Lorsque vous supprimez la commande amixer --help dans un terminal, vous verrez quelque chose comme ceci:

enter image description here

En fonction de votre carte son, les niveaux peuvent être différents des miens, mais vous pouvez utiliser alsamixer dans le terminal afin de vérifier quels niveaux et quelles fonctionnalités de votre carte son vous pouvez appeler dans une commande pour régler le volume à votre guise.

enter image description here

Dans mon exemple, avec ma carte son principale (j’en ai 2: la carte son intégrée et une carte son PCI), les niveaux vont de 0 à 100, ainsi je peux changer le volume de l’entrée/sortie souhaitée dans ma carte son en y glissant un terminal la prochaine commande:

amixer -c 0 set Front 50DB 
amixer -c 0 set Front 64DB 

Dans la première commande, le résultat définira la sortie du panneau avant sur un niveau de 78% et la seconde définira la sortie du panneau avant sur un niveau de 100%.

Afin de collecter des informations relatives à vos commandes de mixage, supprimez la commande amixer sans paramètre et vous obtiendrez une liste. Ou indiquez quel périphérique audio vous souhaitez voir une liste de contrôles avec amixer -c X (où "X" est le numéro de votre périphérique audio).

BTW: N'oubliez pas que les valeurs de base de données sont calculées de manière logarithmique et non linéaire.

N'oubliez pas que cette commande vous permet de contrôler les paramètres de tout périphérique audio que vous utilisez actuellement.

Bonne chance!

117

Vous pouvez le faire en utilisant PulseAudio lui-même (je ne recommanderai pas d'utiliser ALSA car vous ne pouvez pas utiliser l'interface graphique pour augmenter ou diminuer le volume).

En utilisant pactl : vous pouvez définir les volumes d'un périphérique spécifique comme suit:

pactl set-sink-volume 0 +10%

Cela augmente le volume de 10%. Si vous le souhaitez 10% de moins:

pactl set-sink-volume 0 -10%

Si vous avez besoin du volume à 50%:

pactl set-sink-volume 0 50%

Si vous avez besoin de basculer la place entière:

pactl set-sink-volume 0 150%

Vous pouvez utiliser des pourcentages ou des entiers, mais les entiers sont lents et peuvent ne pas vous convenir.

pactl/pacmd (contrairement à amixer) permet d'augmenter le volume de plus de 100% :-).

76
Braiam

amixer set 'Master' 10%+ - to augmentation son max. 10%

amixer set 'Master' 10%- - to diminuer son max. 10%

amixer set 'Master' 10% - pour obtenir 10% du son maximum

amixer set 'Master' 80% - pour obtenir 80% du son maximum

.. etc.

Si vous souhaitez régler le volume sur autre chose que "Master", vérifiez la liste en:

amixer scontrols


Vous pouvez aussi vouloir vérifier alsamixer et pacmd

23
np8

Une réponse tardive mais qui pourrait être utile pour quelqu'un.


Vous pouvez contrôler le volume du puits actuel à l’aide des commandes suivantes

  • Augmenter le volume : pactl set-sink-volume @DEFAULT_SINK@ +1000

  • Volume inférieur : pactl set-sink-volume @DEFAULT_SINK@ -1000

  • Muet : pactl set-sink-mute @DEFAULT_SINK@ toggle

Vous pouvez utiliser les valeurs suivantes pour contrôler le volume:

Entier

  • Valeur spécifique: <number>
  • Augmenter: +<number>
  • Diminuer: -<number>

Exemple:

pactl set-sink-volume @DEFAULT_SINK@ 50000 va régler le volume autour de 76%

Facteur linéaire

  • Valeur spécifique: <number>.<number>
  • Augmenter: +<number>.<number>
  • Diminuer: -<number>.<number>

Exemple:

pactl set-sink-volume @DEFAULT_SINK@ 0.44\ va régler le volume autour de 76%

Pourcentage

  • Valeur spécifique: <number>%
  • Augmenter: +<number>%
  • Diminuer: -<number>%

Exemple:

pactl set-sink-volume @DEFAULT_SINK@ 76% va régler le volume autour de 76%

Valeur en décibels

AVERTISSEMENT: n'utilisez pas les écouteurs avec des valeurs en décibels sans savoir ce que vous faites, vous pourriez endommager votre oreille

  • Valeur spécifique: <number>dB
  • Augmenter: +<number>dB
  • Diminuer: -<number>dB

Exemple:

pactl set-sink-volume @DEFAULT_SINK@ 0.0dB va régler le volume à 100%


Sources Arch Wiki , page de manuel de pactl

5
Cheloide