Одновременный вывод звука ubuntu

Обновлено: 04.07.2024

После того, как я разобрался с настройками Pulseaudio средствами консоли (подробности), долгое время звуковая система меня не беспокоила, но в какой-то момент стали появляться посторонние шумы при подключении к передней панели компа микрофона. Причем, шумы были только тогда, когда микрофон выключен тумблером на нем. Простое решение проблемы - не выключать тумблер. Какое-то время я им и пользовался, но после очередного обновления ПО система стала совсем чудить: не только шуметь, но и самопроизвольно переключать задействованные выходы звуковой карты при любом положении тумблера. Пришлось побороть свою лень и заняться проблемой вплотную.

Все нижеописанное происходит в Ubuntu MATE 16.04 x86_64

Корпус у меня - старый Zalman Z9. Передняя панель у него имеет два аудио-разъема: AC97 и HDA. По каким-то ныне неведомым причинам я сразу после покупки воткнул в материнку первый. Все работало без проблем, но теперь нашелся повод покопаться в документации на мою материнку MSI NF750-G55. В качестве аудиоустройства там был обозначен чип Realtek ALC889, поддерживающий стандарт Azalia 1.0, а это как раз HD Audio и есть. Сам разъем выглядит так:

audio_jack.jpg

В документе "Intel Front Panel I/O Connectivity Design Guide" можно посмотреть на стандартную распиновку разъема для AC97 (слева) и HDA (справа):

audio_jack_standarts.jpg

Не смотря на несовпадение в наименовании пинов, по 4-му и 7-му можно убедиться, что мой разъем соответствует версии HDA. Ок, втыкаем подходящий разъем в материнку. Шумы действительно исчезли. Но теперь включился кривой автодетект подключения наушников и микрофона. Т.е. система выключает тыловые разъемы при подключении фронтальных и наоборот, да еще при этом и делает это криво - переход на тыловые разъемы срабатывает не всегда.

Такой вариант мне не по нраву, потому попробуем добиться одновременной работы фронтальных выхода на наушников и входа микрофона и тылового выхода на колонки. Фронтальный микрофон уже работает, так как система его обнаружила при подключении, так же работает и фронтальный выход на наушники. Осталось включить тыловой выход на колонки. Для этого нам понадобиться утилита HDAJackRetask из пакета alsa-tools-gui. Устанавливаем его командой:
sudo apt-get install alsa-tools-gui

Теперь можно настроить замещение (override) звуковых входов/выходов. Запускаем программу и видим примерно такой интерфейс:

hdajackretask.jpg

Здесь я уже настроил все нужным мне образом. В разделе Pin configuration я нашел тыловой выход на колонки, обозначенный как Green Line Out, Rear side, выставил галочку замещения и выбрал на что заместить, а именно - фронтальные наушники, обозначенные как Headphone.
Для включения выбранного варианта нужно нажать кнопку Apply now, а чтобы настройки сохранились после перезагрузки - нажать install boot override.

Итак, друзья, как видно из названия статьи, в ней будет описано как можно пустить звук на два и более устройства с одного компьютера. Это может пригодиться например если вы маньяк, как и я, и вам вдруг понадобилось посмотреть фильм с выводом звука и на hdmi монитора и на колонках компьютера.

Linux

Делаем вывод звука на два устройства (Linux,Windows, Mac OS X)

В дистрибутивах базируемых на Archlinux установка командой:

В операционных cиcтемах основанных на Ubuntu установка командой:

Если вы используете не приведи господи Fedora, то придётся выполнить целых две команды:

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

Нам нужна последняя вкладка «Simultaneous Output»

Как видно из скриншота, ошибиться на этой вкладке крайне сложно, так как присутствует всего один пункт включающий функционал, ради которого мы здесь и собрались. Ставим галочку рядом с «Add virtual output device for simultaneous output on all sound cards»

Делаем вывод звука на два устройства (Linux,Windows, Mac OS X)

Затем открываем штатные настройки звука вашего рабочего окружения, на скринах будет Gnome, так же этого можно достичь в замечательной утилите pavucontrol

Windows

Хотя Windows 10, по моему скромному мнению, очень достойный представитель семейства Microsoft, я не нашёл более подобающего способа чем использование триальной утилиты написанной Евгением Музыченко, но вполне себе умеющую выполнять возложенный на неё функционал. Пусть не так легко и просто как это делается в Linux, но всё же. Эта утилита называется Virtual Audio Cable, скачать её можно здесь. Те у кого нет денег и совести могут найти её бесплатно по названию на rutracker.
Будем считать, что вы уже украли купили приложение и установили его на компьютер, переходим в меню Пуск > Все программы > Virtual Audio Cable > Audio Repeater (MME)

Делаем вывод звука на два устройства (Linux,Windows, Mac OS X)

В поле «wave in» выбираем «Line1 (Virtual Audio Cable)»
В поле «wave out» выбираем одно из устройств, на которое хотим подать звук. На картинке ниже я выбрал телевизор.
В поле приоритет ставим Realtime, что бы исключить задержки звука.
Нажимаем «Start», и слышим звук из выбранного устройства.

Делаем вывод звука на два устройства (Linux,Windows, Mac OS X)

Сворачиваем окошко и запускаем ещё один экземпляр «Audio Repeater (MME)», в котором повторяем процедуру, только в качестве Wave out выбираем другое выходное устройство, в моём случае это hdmi монитора.

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

Mac OS X

Делаем вывод звука на два устройства (Linux,Windows, Mac OS X)

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

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

HDMI больше не отображается в списке "Аудио и видео" - модуль управления KDE; все, что находится под звуковым модулем, настроено на фиктивный выход, и теперь это единственная звуковая карта в списке. Я могу просмотреть свои предыдущие звуковые карты в alsamixer, но изменение настроек оттуда ничего не дает.

Как я могу заставить мои настоящие звуковые карты работать снова?

Я уже попробовал следующие ответы без успеха:

РЕДАКТИРОВАТЬ:

Может ли это изображение помочь?:

Есть другая звуковая карта, но я не уверен, для чего она нужна, потому что она никогда не выводит звук, но у нее действительно много настроек: эта звуковая карта помечена как "HD-Audio Generic".

Итак, я вошел в Software & Updates на вкладке "Дополнительные драйверы" и вижу это:


Так я попробовал sudo apt-cdrom://Kubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)/dists/xenial/main/binary-amd64/Packages но он не принимает скобки, поэтому он возвратил этот код:

поэтому я снял флажок с источника cdrom в "Другое программное обеспечение" и обновил снова, и нет никаких ошибок. К сожалению, звуковая карта не возвращается даже после перезагрузки.

Кажется, решения для этого не существует, поэтому я просто переустановил Kubuntu, и звук работает отлично.

Недостаток: вытер все остальное (но у меня не было много на моем ssd, так что все было в порядке)

Сначала замените все предыдущие конфигурации:

Затем выполните следующие команды:

Для тех, кто использует snd_hda_intel модуль

Проверьте, используете ли вы snd_hda_intel модуль ядра:

Если да, добавьте две строки (вам может понадобиться только первая строка) в alsa-base.conf используя команды ниже.

ПРИМЕЧАНИЕ. Было предложено также добавить третью строку, но моя система работала без ее добавления. Добавьте это с помощью этой команды:

Я не знаю, в чем проблема или почему это происходит, но это сработало для меня.

Сегодня, похоже, та же проблема, я сделал следующее, используя менеджер пакетов Synaptic:

Переустановлены следующие пакеты: linux-sound-base (1.0.25 + dfsg-0ubuntu5) pulseaudio (1: 8.0-0ubuntu3)

. и моя карта вернулась.

Изменить: проблема вернулась после перезагрузки!

Edit2: минимальное (временное) лекарство это "sudo dpkg-configure pulseaudio"

Я решил эту проблему на своем E200 HA, вставив следующие строки в /etc/modprobe.d/alsa-base.conf

Первый остановил фиктивный вывод и распознал звуковую карту, но мне пришлось вставить вторую строку, поскольку звук выходил из динамиков и наушников одновременно.

В моем случае: Настройки -> Мультимедиа -> Громкость звука -> Дополнительно -> Переключение между 4.1 и аналоговым стерео выходом / дуплекс

Если вам нужна только аналоговая стереосистема, очень простое решение - использовать USB-аудиоустройство C-Media. Моя встроенная звуковая карта просто не обнаружена. Проблема может быть с моей материнской платой, потому что она работала. Если бы я хотел использовать 5.1, я думаю, я мог бы купить карту.

Идти к settings > software & updates > additional drivers , Вы найдете драйвер, похожий на аудио: установите его на Do not use this device , Затем примените изменения и перезапустите.

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

Если не работает, проверьте, не изменился ли он, повторив вышеизложенное.

Для меня проблема была вызвана одним приложением, которое заблокировало звуковое устройство. В моем случае это было mplayer , но для вас может быть что-то еще. Чтобы получить список этих приложений, запустите:

После остановки этого приложения я принудительно перезапустил pulseaudio:

Для получения более подробной информации, пожалуйста, посетите Arch Wiki, где я нашел трюк:


Столкнулся с такой проблемой: У меня есть PC под управлением Ubuntu, у него имеется два звуковых jack'а: микрофон и аудиовыход. Микрофон занят микрофоном, а на аудиовыходе — колонки. Появилась потребность также подключить наушники и иметь возможность программно переключать звук между колонками и наушниками. В PC вставлять платы новые нельзя, есть только USB-порты.


Кажется, что для решения этой проблемы нужны внешние аудиокарты с множеством аудиовыходов (например, с 3.1 или 5.1 конфигурацией), но я не уверен, т.к. не имею опыта с ними.


Есть ли у вас подобный опыт или мысли? Поделитесь, пожалуйста.

Купите копеечный кабель — разветвитель на два джека. Я в похожей ситуации таким пользовался достаточно давно. Карты такие есть.
По поводу программного переключения, если не ошибаюсь, то Pulse умеет.
Заранее извиняюсь, не слишком компетентен в данном вопросе, однако надеюсь, что хоть немного помог.

pulse с легкостью с этим справится.

воткните любую USB звуковую, которая поддерживается пульсом. Ну и дальше по ситуации — либо gnome-volume-control (переключает весь звук), либо pulse device chooser

На некоторых материнских платах с встроенным аудио есть разъём (щёточка) для выноса гнёзд аудио на переднюю панель. Реалтековский драйвер (венда) на моём компе имел опцию разделения выходов — чтобы оба гнезда были видны в системе как независимые устройства. Проблема в том, что многие программы не рассчитаны на переключение на лету. Возможно, её может решить Virtual Audio Cable, но я с ним дела не имел и не собираюсь виду отсутствия виндовса.

Что касается Linux — в убунте есть вот это, но оно не работает — передние и задние гнёзда работают как analog output, а когда я выбираю наушники, оба гнезда молчат. Возможно, линукс просто не умеет работать с моей материнкой.

Посмотрите на спецификации вашей материнки, может, у вас получится.

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

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

Ну а по делу, решить вашу задачу можно несколькими способами:
в лоб — купить юсб звуковуху к ней подрубить ушы, а в убунте через pulseaudio/alsamixer переключать устройство вывода звука.
самое правильное решение — на всех современных корпусах есть на передней панели юсб и аудиопорты, вот их подключить к материнке и туда тыкать наушники. если для вашей звуковухи дрова в убунте полноценные то при подключении ушей, колонки сами будут вырубатся. ну а если сами не смогут то опять же через pulseaudio/alsamixer просто вырубаем канал колонок/врубаем уши.

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

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