Как установить устройство вывода звука по умолчанию в ubuntu

Обновлено: 04.07.2024

После обновления до Ubuntu 13.10 мой звук перестает работать. В конце концов я понял, что Ubuntu выбрал звуковое устройство HDMI вместо своих аналоговых громкоговорителей. Я переключился на правильное устройство, и все работало нормально, пока я не перезагрузился. Теперь я должен выбрать правильное устройство каждый раз, когда загружаю Ubuntu. Как установить громкоговорители в качестве устройства по умолчанию?

Изменить: Поскольку я обновлен до Ubuntu 14.04 Ubuntu теперь выбирает встроенное звуковое устройство по умолчанию, поэтому у меня больше нет этой проблемы.

Отобразить индекс ваших карт. Например, звуковая карта pci имеет индекс 2. Звуковой профиль для аналогового выхода (опять же как пример) называется «output: analog-stereo».

Чтобы установить это как результат (попробуйте). Чтобы сделать его постоянным, отредактируйте /etc/pulse/default.pa и добавьте:

Перезапустите pulseaudio или перезагрузитесь, чтобы проверить настойчивость.

Если вы хотите также установить значения по умолчанию для микрофона (ввода)

В тире найдите Селектор мультимедийных систем .

Откройте его, а на вкладке Audio вы можете выбрать стандартные аудиовходы и выходы.


Это приложение установлено по умолчанию в Ubuntu Installation. Но если вы этого не сделали, то можете установить

Если он не отображается в тире, запустите:

В результирующем текстовом файле перейти к строке начинается с NoDisplay= . Измените NoDisplay=true на NoDisplay=false

Самым простым решением для Ubuntu 16.04 было создание скрипта, который слушает, когда разблокирует экран, а не скрипт, который слушает, когда происходит пробуждение системы, потому что, похоже, не все службы доступны в тот момент, когда эта система просыпается. Я не мог заставить pulseaudio переключиться на звук HDMI с помощью сценария пробуждения, но успешно исправил его с помощью сценария прослушивания разблокировки:

Во-первых, спасибо пользователю224082 за ваше решение, которое помогло мне узнать, какое устройство мне нужно.

Чтобы узнать, какое устройство ALSA вам необходимо:

  1. Используя селектор мультимедийных систем, выберите ALSA - Advanced Linux Sound Архитектура для Плагин
  2. Проверьте различные параметры в устройстве , пока нужный динамик не будет выбран
  3. Обратите внимание на значение device= в поле «Трубопровод». Шахта была "hw:0,4"

Как только вы узнаете, какое устройство вам нужно, установите его как значение по умолчанию:

Измените default.pa, набрав sudo nano /etc/pulse/default.pa

В самом низу файла добавьте:

заменив значение device= на ваше устройство.

Вы можете установить значение по умолчанию, заказывая звуковые карты в ALSA с slots= .

Найдите имена модулей драйвера для звуковых карт, которые вы хотите использовать, проверяя выход lsmod с помощью: lsmod | grep -P '^snd[_]?[A-z]*' или всего lsmod . Напр. мой Creative X-FI Xtreme Gamer snd_ctxfi , мой бортовой snd_hda_intel , а моя веб-камера USB snd_usb_audio .

Теперь откройте в текстовом редакторе или nano соответствующий конфигурационный файл ALSA, например. sudo nano /etc/modprobe.d/alsa-base.conf и внизу добавить что-то из следующего в порядке приоритета (первое объявление становится стандартным):

options snd slots=snd_ctxfi,snd_hda_audio,snd_usb_audio , затем сохранить только CTRL+o+enter & amp; CTRL+x . Перезагрузите, и вы можете быть отсортированы.

Скомпилированный драйвер не распространяется на ваше устройство. Вы можете подтвердить это с помощью:

Где «9052» - последняя часть вашего usb.id:

ID 0846: 9052 NetGear, Inc. A6100 AC600 DB Wireless Adapter [Realtek RTL8811AU]

Команда вернется в исходное состояние.

Давайте удалим ее. В терминале перейдите к местоположению загруженного файла, например, Downloads:

Теперь давайте загрузим лучший файл:

Терминал должен вернуть идентификатор вашего устройства:

Перезагрузитесь, и все должно быть установлено.

Вот объясненный учебник для установки входного / выходного звука по умолчанию: Link

Сначала: Перечислите устройства вывода звука, используя

pactl list short sinks 6] Пример выхода:

Сначала: : для установки устройства вывода по умолчанию выполните команду

pactl list short sinks

set-default-sink & lt; 'имя выходного устройства'>

Пример вывода: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы сделать эту работу при каждом запуске, выполните следующее:

Sudo Gedit /etc/pulse/default.pa

Во-первых, откройте файл / и т.д. / имп / default.pa using:

Затем прокрутите страницу вниз, где две строки, начинающиеся с set-, будут закомментированы. Теперь раскомментируйте эти строки и замените слова ввода и вывода на номер приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Большое вам спасибо, вы сделали мой os гораздо более приятным для использования! – tiddlesticks 21 May 2018 в 04:44

Вот объясненный учебник для установки входного / выходного звука по умолчанию: Link

Сначала: Перечислите устройства вывода звука, используя

pactl list short sinks

Сначала: : для установки устройства вывода по умолчанию выполните команду

pactl list short sinks

set-default-sink & lt; 'имя выходного устройства'>

Пример вывода: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

sudo gedit /etc/pulse/default.pa

Сначала откройте файл / etc / pulse / default.pa using:

Затем прокрутите страницу вниз, где две строки, начинающиеся с set-, будут закомментированы. Теперь раскомментируйте эти строки и замените слова ввода и вывода на номер приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Вот объясненный учебник для установки входного / выходного звука по умолчанию: Link

Сначала: Перечислите устройства вывода звука, используя

pactl list short sinks

Сначала: : для установки устройства вывода по умолчанию выполните команду

pactl list short sinks

set-default-sink & lt; 'имя выходного устройства'>

Пример вывода: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

sudo gedit /etc/pulse/default.pa

Сначала откройте файл / etc / pulse / default.pa using:

Затем прокрутите страницу вниз, где две строки, начинающиеся с set-, будут закомментированы. Теперь раскомментируйте эти строки и замените слова ввода и вывода на номер приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Ниже приведено поясненное учебное пособие по установке входного / выходного звука по умолчанию: Ссылка

Сначала: список устройств вывода звука с использованием

pactl list short sinks

Пример вывода:

Второе: для установки устройства вывода по умолчанию выполните команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa, используя:

sudo gedit / etc / pulse / default.pa

Затем прокрутите вниз до конца файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова, вводимые и выводимые с номером приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.

Вот объясненный учебник по установке аудиовхода / выхода по умолчанию: Ссылка

Сначала: Список устройств вывода звука с использованием

pactl list short sinks

Пример выхода:

Second : Чтобы установить значение по умолчанию выходное устройство запускает команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo' [1116 ]

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa , используя:

sudo gedit /etc/pulse/default.pa

Затем прокрутите нижнюю часть файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова ввода и вывода на число приемников (для вывода) / источника (для ввода), которые вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.

Ниже приведено поясненное учебное пособие по установке входного / выходного звука по умолчанию: Ссылка

Сначала: список устройств вывода звука с использованием

pactl list short sinks

Пример вывода:

Второе: для установки устройства вывода по умолчанию выполните команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa, используя:

sudo gedit / etc / pulse / default.pa

Затем прокрутите вниз до конца файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова, вводимые и выводимые с номером приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.

Ниже приведено поясненное учебное пособие по установке входного / выходного звука по умолчанию: Ссылка

Сначала: список устройств вывода звука с использованием

pactl list short sinks

Пример вывода:

Второе: для установки устройства вывода по умолчанию выполните команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa, используя:

sudo gedit / etc / pulse / default.pa

Затем прокрутите вниз до конца файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова, вводимые и выводимые с номером приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.

Ниже приведено поясненное учебное пособие по установке входного / выходного звука по умолчанию: Ссылка

Сначала: список устройств вывода звука с использованием

pactl list short sinks

Пример вывода:

Второе: для установки устройства вывода по умолчанию выполните команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa, используя:

sudo gedit / etc / pulse / default.pa

Затем прокрутите вниз до конца файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова, вводимые и выводимые с номером приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.

Ниже приведено поясненное учебное пособие по установке входного / выходного звука по умолчанию: Ссылка

Сначала: список устройств вывода звука с использованием

pactl list short sinks

Пример вывода:

Второе: для установки устройства вывода по умолчанию выполните команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa, используя:

sudo gedit / etc / pulse / default.pa

Затем прокрутите вниз до конца файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова, вводимые и выводимые с номером приемника (для вывода) / источника (для ввода), который вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.

Вот объясненный учебник по установке аудиовхода / выхода по умолчанию: Ссылка

Сначала: Список устройств вывода звука с использованием

pactl list short sinks

Пример выхода:

Second : Чтобы установить значение по умолчанию выходное устройство запускает команду

set-default-sink & lt; 'имя выходного устройства'>

Пример: pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo' [1116 ]

Теперь, чтобы выполнить эту работу при каждом перезапуске, выполните следующие действия:

Сначала откройте файл /etc/pulse/default.pa , используя:

sudo gedit /etc/pulse/default.pa

Затем прокрутите нижнюю часть файла, где будут пропущены две строки, начинающиеся с set- . Теперь раскомментируйте эти строки и замените слова ввода и вывода на число приемников (для вывода) / источника (для ввода), которые вы хотите по умолчанию.

Пример:

После этого сохраните и выйдите. Затем удалите каталог

/ .config / pulse, запустив sudo rm -r

/.config/pulse , а затем перезагрузите систему. После перезагрузки системы соответствующие устройства теперь должны быть установлены как значения по умолчанию.


Для начала более подробно о сути задачи: есть ноутбук Asus N55 с Kubuntu 17.10 на борту. Нужно добиться той же конфигурации, которую можно получить на Windows:

  • Без подключения сабвуфера драйвер работает в режиме 2.0
  • При подключении сабвуфера драйвер переключается в режим 2.1. При этом переключении к каналам применяются частотные фильтры — НЧ для сабвуфера и ВЧ для колонок
  • При подключении наушников, вывод звука переключается на них, вывод на колонки/сабвуфер приостанавливается
  • При необходимости низких задержек можно с помощью выбора другого драйвера перейти в режим, обеспечивающий монопольный захват звуковой карты

Сразу после установки получаем нерабочий сабвуфер и нерабочие наушники.
В результате моих опытов мне удалось добиться следующего состояния системы:

  • Драйвер работает в режиме 2.1
  • При подключении сабвуфера ничего не изменяется
  • При подключении наушников, вывод звука переключается на них, вывод на колонки/сабвуфер приостанавливается, но фильтры продолжают работать и в наушники идут только ВЧ
  • При необходимости низких задержек можно адресоваться к карте через ALSA, но в этом режиме не работает сабвуфер, фильтры. Но работает переключение на наушники

Для знакомства с LMMS(с которой как оказалось нормально работать нельзя, но это отдельная тема) этого в общем-то хватает.
Если вы тоже добрались до этого состояния, то ничего нового этой статьей я вам не расскажу.

Вы когда-нибудь задумывались о том, как устроена звуковая система Linux? Вот и я нет — обычно звук либо был не нужен, либо как-то работал, колонки играли — ни о каких фокусах подключения сабвуфера или наушников речи не было.
Похоже, теперь самое время узнать об этом немного больше. Гугление показало следующую картину:


    — это компонент, обеспечивающий взаимодействие звуковых железок с ядром. Обеспечивает самый прямой доступ к устройству из разумных вариантов, но при этом доступ этот монопольный — включить песню в VLC и открыть видео в браузере, увы, не получится.
  • Для этих целей как раз и нужен PulseAudio — это sound-сервер, занимающийся маршрутизацией звуковых потоков. Именно он будет отвечать за микширование потоков звука из разных приложений при одновременном использовании. Ценой за такое удобство является дополнительная задержка звукового потока.
  • Существует еще JACK — аналог PulseAudio, позиционирующийся как "профессиональный" sound-сервер. Обещает крутые возможности по маршрутизации и минимальную задержку при диспетчеризации потоков.

Мало кто говорит, что PulseAudio де-факто является стандартом для интеграции звука, по крайней мере в Ubuntu. Практически любой софт, который издает звуки, будет с большой долей вероятности пользоваться PulseAudio API. FF, например, для поддержки JACK надо отдельно собирать.
Поэтому удалять PulseAudio не стоит, если вы не уверены, что все чем вы будете пользоваться, умеет работать с JACK. Видимо, поэтому существует еще вариант интеграции Jack-PulseAudio. Но от этого варианта я отказался, т.к. для работы в том софте, где требуются низкие задержки, меня устраивает монопольный доступ через ALSA(под Windows это работает так же — там, где нужна низкая задержка, запрашивается монопольный доступ). Возможно, когда дело дойдет до установки какого-нибудь Ardour, мне придется вернуться к этому варианту.

Так, ну хорошо, JACK не нужен. Выходит, чтобы все заработало, мне надо настроить ALSA-компонент для своей карточки и интеграцию его с PulseAudio

PulseAudio

Тут нам из коробки предлагают вот такую UI консоль


Мне кажется, к такому инструменту пояснения излишни. После применения настроек вы сразу сможете слышать изменения, так что пробуйте.
Еще amarao советует обратить внимание на pactl /pacmd. Если я доберусь — напишу, что там к чему с этими утилитами

Диагностика ALSA

Первым делом понадобятся хоть какие-то инструменты для диагностики — это пакет alsa-utils
sudo apt install alsa-utils
Теперь посмотрим, как видит наше оборудование система
aplay -l


Кроме того, настройки надо проверять. Для этих целей обнаружилась утилита speaker-test


вызов speaker-test --help покажет, что умеет утилита, но мне особенно интересна конфигурация
speaker-test -Dplughw:1,0 -c4

  • -D — id устройства. 1,0 — это индексы устройства и подустройства, их мы видели выше в выводе aplay
    а вот структура текстовой части описана тут
  • -c — количество каналов на которые будет выведен тест
    В моем случае первые 2 канала работают хорошо, а вот дальше интересно — 3й канал LFO не звучит, но зато звучит 4й канал. Такое ощущение, что LFO настроен как… стерео. Мне кажется, это часть моей проблемы.

Настройка ALSA

Тут и тут советуют поизучать dmix — это модуль микшера каналов в ALSA — буду смотреть

alsamixer

alsamixer — псевдографический интерфейс микшера. Половина советов по настройке ограничивается этой утилитой. И действительно, именно эта утилита часто покажет, когда канал неожиданно замьютился или у него сбросился уровень громкости.


Но настройка в микшере результата не дала.

hdajacksensetest

Следующая полезная утилита — hdajacksensetest. Показывает какие разъемы детектируют подключение внешних устройств.


Ок, я вижу, что мой внешний сабвуфер подключен на порт 0x1a.
Давайте попробуем найти как можно объяснить карте, куда выводить LFO.

hdajackretask

Большинство советов по настройке маппинга указывают на утилиту hdajackretask:


Тут вроде бы все понятно — есть порты, есть маппинг. К сожалению, никакие манипуляции с портом 0x1a к успеху не привели.
Может, после настройки надо явно перезагружать сервисы?
sudo alsa force-reload
Нет, смотрим дальше.

HDAAnalyzer

Для настройки маппинга есть еще одна утилита:
скачать ее можно в виде python-скрипта(. ) вот тут.


Выглядит эта штука как прокачанный вариант hdajackretask — она даже умеет строить схему маршрутизации портов графически. Но эксперименты с этой штукой тоже не привели ни к чему, кроме полной потери звука.
Никакого гайда по настройке я не нашел, поэтому пробовал методом проб и ошибок.

Правка конфигов

PulseAudio

/usr/share/pulseaudio
в папке alsa-mixer тут лежат конфиги. Т.к. Pulseaudio более-менее работает тут я ничего трогать не стал.
/etc/pulse/daemon.conf
Как я понял, это настройки службы pulseaudio — один из немногих конфигов, изменения в котором на что-то влияют. именно тут настройками:
enable-lfe-remixing = yes
lfe-crossover-freq = 200
я заставил звучать свой сабвуфер из Pulseaudio так, как он должен. Для lfe-crossover-freq 200 — это очевидно частота среза в герцах.
Но тут же становится очевидно, что настроить нечто более сложное(при подключении наушников прекращать отправлять бас на сабвуфер) в этом конфиге возможности нет.

/usr/share/alsa/*
Тут лежит несколько shell-скриптов, в т.ч. alsa-info.sh, который может быть полезен при подготовке дефекта в трекере и т.д.
а в папке pcm какие-то конфиги, разобраться в которых мне не удалось:

Трогать их я пока не решился.
/etc/modprobe.d/alsa-base.conf — второй доказанно полезный конфиг. Вот эта строчка, дописанная в низ конфига, реально заставила работать наушники под ALSA:
options snd-hda-intel model=auto,auto probe_mask=1
Про настройку этого конфига написано довольно много. Одна из его целей, как я понял — сопоставить устройствам кодеки(model). Кодеки это… какой-то пресет маппингов… Есть табличка (копия есть тут). Думаю, в большинстве случаев для стандартных конфигураций этого действительно достаточно.
Там описаны модели для разных контроллеров. Но если для вас они не срабатывают, то вам рекомендуют добавить свою конфигурацию.
Звучит классно, но тут я должен сделать 2 ремарки:

  • гайда как сделать свою конфигурацию — что конфигурить, куда сохранять, коммитить и т.д. я не нашел.
  • После изменения настроек в alsa-base.conf нужно перезагружать ОС. Без перезагрузки никакие sudo alsa force-reload и даже хардкорный echo 1 | sudo tee /sys/class/sound/hwC1D0/reconfig не заставляют ALSA перечитать кодек устройства.

Кстати, в /sys/class/sound/hwC1D0/ — лежат файлы уже непосредственно устройства, т.е. как я понял hdajackretask работает именно с этими файлами. Тут тоже, наверное, можно сделать что-то полезное, если знать куда что писать.

Общий вывод, который я могу сделать по результатам проделанной работы: в целом видно, что если GUI, например, сообщество более-менее занимается, то звуковая подсистема явно остается за бортом.
На сегодняшний день возможности использования этой подсистемы не выдерживают никакой конкуренции с аналогами в других популярных ОС.
Такие досадные проблемы, как неработающий сабвуфер или наушники, или отсутствие НЧ-фильтра для сабвуфера, заставляют еще раз подумать, прежде чем отказываться от предустановленного софта. Ведь никому не хочется получать от своей железки меньше отдачи из-за кривостей ОС.

В зависимости от ситуации, я использую мои динамики или гарнитуру для вывода звука. Учитывая, что моя гарнитура является USB-гарнитурой, она ведет себя как собственное аудиоустройство.

В настоящее время я переключаюсь между устройствами вывода звука, щелкая значок динамика в правом верхнем трее, где я выбираю «Настройки звука», перехожу на вкладку «Вывод» и выбираю нужное устройство.

Что мне интересно, есть ли какой-нибудь более простой / быстрый способ переключаться на мою гарнитуру USB? Возможно выделенный значок в трее, отображение клавиш или что-то в этом роде?

Я использую Ubuntu 10.04 с рабочим столом Gnome по умолчанию.

Чтобы изменить устройство вывода звука по умолчанию из командной строки, вы можете использовать pacmd утилиту командной строки Pulse Audio.

Сегодня я обнаружил необходимость сделать то же самое, желая переключаться между наушниками и динамиками, подключенными к отдельным звуковым картам. Вот сценарий оболочки, который я написал для этого:

  • Это переключает между первыми двумя устройствами вывода звука, которые перечисляет pacmd утилита. Если у вас более двух аудиоустройств и вы хотите переключиться на другое, вам нужно заменить логику в строке 7 некоторыми условными обозначениями.
  • Простая замена устройства-приемника по умолчанию ничего не делает для приложений, которые в данный момент работают, - они будут продолжать вывод на предыдущее устройство. Этот скрипт также перемещает место назначения приемника для всех существующих входных данных. Т.е., если вы запустите этот скрипт с музыкой, воспроизводимой на одном устройстве, он мгновенно переключится на другое. Если вы хотите, чтобы существующие приложения продолжались на предыдущем устройстве, закомментируйте последнюю строку (и строку 5, если хотите).

Ну, вы можете установить pavucontrol , он показывает приложения с выбором звукового устройства на первой вкладке, это сэкономит вам немного усилий. Но то, что вы действительно хотите, я думаю, это пометить вашу USB-гарнитуру как устройство по умолчанию, тогда каждый раз, когда вы подключаете ее, весь звук будет перенаправлен на нее, а когда вы подключите ее - она ​​вернется к динамикам. Легко, правда.

Как установить устройство по умолчанию в Ubuntu Precise?

Вопрос довольно старый, но мой ответ все еще может быть полезен для пользователей GNOME 2. Я использовал PulseAudio Mixer Applet для точной проблемы, описанной здесь. Вы можете изменить устройства ввода и вывода прямо в меню панели. Это самый удобный способ, который я нашел.

Конечно, переключение устройств с помощью апплета также работает нормально. Но самое классное в написании сценария - это то, что он очень быстрый. Я поставил мой, например, на сочетание клавиш alt + s. таким образом, когда я хочу переключиться с наушников на динамики, мне нужно только нажать alt + s.

Тем не мение. Андрей сказал:

Если у вас более двух аудиоустройств и вы хотите переключиться на другое, вам нужно заменить логику в строке 7 некоторыми условными обозначениями.

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

То, что я сделал по-другому, это а) найти активный приемник в цикле for. И б) переключиться на следующий приемник, увеличив индекс на 1. Затем я делаю результат по количеству приемников. Это гарантирует, что, например, при наличии 3 стоков, (2 + 1)% 3 = 0. Таким образом, с индекса снижения 2 мы бы переключились на индекс снижения 0.

Таким образом, переключатель позволяет перемещаться вверх через доступные раковины.

Читайте также: