У меня есть USB-микрофон, который я постоянно подключаю к док-станции своего ноутбука. Когда я захожу в док-станцию, мне нужно, чтобы микрофон автоматически настраивался на мой текущий аудиовход. У меня есть скрипт "I'm docked", который я запускаю, который устанавливает элементы xrandr / etc, мне просто нужен какой-то метод, выполняющий действие:
gnome-volume-control, вкладка input, выберите mic [ 111]
но из строки / скрипта cmd.
Любые советы о том, как я могу автоматизировать / сценарий этого?
Если вы используете 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» - номер вашего аудиоустройства).
Кстати: помните, что значения БД рассчитываются логарифмически, а не линейно.
Возможно, pacmd set-default-source
работает, если вы используете pulseaudio, например:
pacmd set-default-source alsa_input.usb-046d_0819_9F13DC90-02-U0x46d0x819.analog-mono
Найдите имя источника с помощью команды: pacmd list-sources
.
Я нашел лучший ответ, посмотрев документы (вероятно, это недавнее дополнение к pacmd ...
Используйте pacmd list-sources
, чтобы увидеть различные устройства ввода, устройство с * index: ...
- один активный.
Вы можете затем использовать pacmd set-source-volume <index> <volume>
, чтобы установить его. В моем случае 50%
не удался, поэтому я просто пробовал разные числа, пока он не достигал 50%.
Для я: pacmd set-source-volume 1 30000
Ура!