Вывод звука на другой компьютер по Wi-Fi
Человеку свойственно лениться. И как факт, лень — это двигатель прогресса. Вот и я что-то совсем обленился, с появлением нетбука возникла проблема: колонки подключены к ноутбуку, сам же я обычно на кровати с нетбуком. Каждый раз, слушая музыку, вставать и подходить к ноутбуку для переключения трека или изменения громкости порой бывает очень лениво. Как всегда, нашел решение в виде вывода потока звука с нетбука на ноутбук по Wi-Fi. Этот вариант подойдет тем, у кого 2 (или более) компьютера с Linux подключены к одному Wi-Fi роутеру.
Суть метода заключается в настройке стандартной функции PulseAudio - трансляция звукового потока по сети. На компьютере с колонками необходимо правильно настроить звуковой сервер на прием звукового потока с определенных IP-адресов, а на втором компьютере, с которого будем управлять звуком, настроить вывод потока по сети. Перейдем от теории к практике.
Настройка клиента
С настройкой клиента все до боли просто. Ставим утилиту, которая сидит в трее и позволяет быстро переключаться между серверами pulseaudio:
sudo apt-get install padevchooser
Теперь запускаем ее (Alt+F2 → padevchooser), щёлкаем на иконку в трее, выбираем пункт "Preferences…", отмечаем флажок "Start applet on session login". Теперь после выбора нужного сервера нужно будет перезапустить приложение, с помощью которого воспроизводим звук (например, при воспроизведении музыки ВКонтакте через Chromium после выбора сервера нужно перезапустить браузер). Однако, список серверов еще пуст, перейдем к настройке сервера на том комьютере, на котором мы хотим принимать поток звука.
Настройка сервера
Скорее всего, все это уже установлено в системе по умолчанию, но на всякий случай доставим то, чего не хватает:
sudo apt-get install avahi-daemon pulseaudio pulseaudio-module-zeroconf alsa libasound2-plugins
Группа audio тоже, наверняка, уже присутствует в системе, создадим ее, если это не так:
sudo groupadd audio
И добавим себя в эту группу:
sudo gpasswd -a user audio
вместо user
, естественно, указываем свой логин в системе. Также добавим себя в группу доступа к pulseaudio:
sudo gpasswd -a user pulse-access
Теперь поправим конфигурационный файл pulseaudio:
sudo nano /etc/pulse/default.pa
Раскомментируем следующие строки, добавив к ним параметры загрузки модуля module-native-protocol-tcp, чтобы принимать звуковой поток с нескольких IP-адресов:
### Network access (may be configured with paprefs, so leave this commented
### here if you plan to use paprefs)
load-module module-esound-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.101
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.101
load-module module-zeroconf-publish
Здесь 192.168.0.101
— это IP-адрес клиента (второго компьютера в сети), с которого будем выводить звук. Можно также указать несколько адресов.
Теперь нужно перезагрузить сервер. Если все настроили правильно, то наш сервер должен появится в PulseAudio Device Chooser у клиента.
Запустить аудиосервер можно командой
pulseaudio -D
Остановить можно так:
pulseaudio -k
Примечание
Способ не претендует на звание лучшего, я бы даже сказал, что он немного ректальный, т.к. существует у него и несколько неприятных сторон:
- при плохом (или пропадающем) сигнале Wi-Fi будет прерываться и воспроизведение;
- при старте системы, скорее всего, сначала нужно будет выбрать сервер, т.к. если сначала запустится апплет выбора сервера, а потом уже произойдет соединение с Wi-Fi роутером, то сервер собьется на Default (по умолчанию);
- регулировать громкость выходного потока с помощью регулировки основной громкости на втором компьютере (клиенте) не получится, т.к. это будет регулировать только громкость звука на динамике второго же компьютера, но я предполагаю, что для этого можно повесить регулировку уровня громкости самого pulseaudio на какие-нибудь горячие клавиши.
Однако, плюс этого способа в отличие от управления по ssh заключается в том, что мы видим визуально, какую именно музыку мы проигрываем и какую можем проиграть.
P.S. Способ подойдет не только для Wi-Fi, а для любой локальной сети (LAN), весь вопрос в его актуальности для проводного соединения.
Комментарии
# - Гость, 05.10.2011 в 17:05
Лень - двигатель прогресса))
Добавить комментарий