
Я пытаюсь заставить команду "amixer set master mute" работать, когда активный звуковой выход - внешний USB-динамик, но это не работает. Похоже, это работает только если выход - встроенный динамик или выход для наушников.
Какие-либо предложения?
решение1
Следующий ответ был опубликован ранее:Настройка громкости входного сигнала микрофона с помощью командной строки?
Принимая во внимание то, что я здесь упомянул, в вашем случае это будет что-то вроде:
amixer -c 0 set Master 0DB
Но чтобы это проверить, следует провести тесты.
Надеюсь, это будет вам полезно.
Если вы используете ALSA, amixer может оказаться полезным для программирования скриптов.
При вводе
amixer --help
команды в терминал вы увидите что-то вроде этого:
В зависимости от вашей звуковой карты уровни могут отличаться от моих, но вы можете использовать
alsamixer
терминал, чтобы проверить, какие уровни и какие функции вашей звуковой карты вы можете вызвать в команде, чтобы установить желаемую громкость.
В моем примере с моей основной звуковой картой (у меня их 2: встроенная и PCI звуковая карта) уровни находятся в диапазоне от 0 до 100, таким образом я могу изменить громкость нужного входа/выхода в моей звуковой карте, введя в терминал следующую команду:
amixer -c 0 set Front 50DB amixer -c 0 set Front 64DB
В первой команде результат установит выходной сигнал передней панели на уровень 78%, а во второй — на уровень 100%.
Чтобы собрать информацию, связанную с элементами управления вашего микшера, отпустите
amixer
команду без параметров, и вы получите список. Или укажите, для какого аудиоустройства вы хотите увидеть список элементов управленияamixer -c X
(где «X» — номер вашего аудиоустройства).Кстати: помните, что значения БД рассчитываются логарифмически, а не линейно.