Как я могу переключаться между различными аппаратными средствами вывода звука с помощью оболочки?

Я использую свой ноутбук с внешним монитором с динамиками. Когда монитор подключен через HDMI, я могу переключиться (используя GUI: Sound Setting -> Аппаратное обеспечение) между обычным аудиовыходом ноутбука и выходом монитора.

Я повторяю эту процедуру много времени, и я начал задаваться вопросом, могу ли я ее автоматизировать или, во всяком случае, выполнить ее быстрее, используя оболочку.

Мой дистрибутив - Ubuntu 12.04 с gnome 3.

EDIT:

Я пробовал использовать pacmd, но list-sinks дает мне только устройство, которое я сейчас использую:

pacmd list-sinks | grep name:
name: <alsa_output.pci-0000_00_1b.0.hdmi-stereo>

После перехода из GUI:

pacmd list-sinks | grep name:
name: <alsa_output.pci-0000_00_1b.0.analog-stereo>

И если я попытаюсь изменить его, я получаю:

pacmd set-default-sink alsa_output.pci-0000_00_1b.0.hdmi-stereo
Welcome to PulseAudio! Use "help" for usage information.
Sink alsa_output.pci-0000_00_1b.0.hdmi-stereo does not exist.
28 голосов | спросил Luigi Massa Gallerano 28 Jpm1000000pmMon, 28 Jan 2013 14:12:49 +040013 2013, 14:12:49

4 ответа


2

Вы можете использовать pactl, прочитать его справочную страницу для получения дополнительной информации.

ответил favadi 28 Jpm1000000pmMon, 28 Jan 2013 14:25:46 +040013 2013, 14:25:46
2

Сценарий python Lukas ( https://github.com/lkettenb/sound-output-switcher , выше), чтобы реализовать апплет-уведомление, хорошо работает. Ему нужен пакет appindicator. Это можно установить с помощью

sudo apt-get install python-appindicator
ответил P.Windridge 22 PM00000030000003631 2014, 15:06:36
1

Вы можете попробовать этот скрипт: https://github.com/Гинер /helplinux /дерево /мастер /скрипты /включение звука

Протестировано на Ubuntu 10.04 - 13.04 и Arch Linux

ответил Stanislav German-Evtushenko 19 J0000006Europe/Moscow 2013, 07:41:53
0

Как я сказал здесь (вероятно, дубликат), альтернативу Индикатор звукового переключателя (который требует добавления PPA):

В одной строке

В моем случае был профиль hdmi-stereo-extra1+input, поэтому в одной строке: [[ $(pacmd list-cards | grep "active profile" | cut -d " " -f 3-) = "<output:hdmi-stereo-extra1+input:analog-stereo>" ]] && pacmd set-card-profile 0 "output:analog-stereo+input:analog-stereo" || pacmd set-card-profile 0 "output:hdmi-stereo-extra1+input:analog-stereo"

Вы можете использовать специальный ярлык для выполните его с помощью bash -c (предупредит вас, если есть конфликт с другим ярлыком):

 введите описание изображения здесь>> </a> </p>

<p> Также вы можете добавить <code>---- +: = 3 =: + ----</code> к вашему <code>---- +: = 4 =: + ----</code>. </p>

<h1> В скрипте </h1>

<p> Я внес некоторые изменения, основанные на @ user829996 (и здесь @ user56655): </p>

<pre class = alias

ответил Pablo Bianchi 31 MaramFri, 31 Mar 2017 01:35:06 +03002017-03-31T01:35:06+03:0001 2017, 01:35:06

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132