Два дня назад я наткнулся на этот вопрос и не смог понять его правильно. В конце концов я прочитал в руководстве AirBubble, что RAOP не поддерживается.
Я наконец-то решил это с помощью DULNA / UPnP-возможностей pulseaudio. Это работает так, как вы ожидаете. Вы воспроизводите звук с помощью любого приложения с выходом pulseaudio на своем устройстве и выбираете потоковый выход всякий раз, когда хотите перенаправить его на устройство Android.
Сначала установите Rygel:
$ sudo apt-get install rygel rygel-preferences rygel-gst-launch
Затем измените файл /etc/rygel.conf, чтобы строка с параметром enable-transcoding выглядела так:
enable-transcoding=false
Затем загрузите модули DLNA и TCP и запустите rygel:
$ pactl load-module module-http-protocol-tcp
$ pactl load-module module-rygel-media-server
$ pactl load-module module-null-sink sink_name=upnp format=s16be channels=2 rate=44100 sink_properties="device.description='DLNA/UPnP Streaming' device.bus='network' device.icon_name='network-server'"
$ rygel
На вашем Android-устройстве загрузите приложение BubbleUPnP. Ваши устройства вывода импульсов и звука будут перечислены на сервере "Звук на% HOSTNAME%". Направьте вывод на вашем компьютере на устройство DLNA в настройках звука. Выберите тот же выход в BubbleUPnP.
Имейте в виду, что BubbleUPnP транслирует первые 30 минут бесплатно. Полная версия составляет 3,49 €, но я думаю, что стоит цена. У меня не было другого приложения, чтобы работать на меня.
Наконец, вы можете отключить медиабраузер, если он вам не нравится, используя настройки rygel:
$ rygel-preferences
Еще одно замечание: он напрямую передает потоковые данные LPCM, которые постоянно составляют ~ 250 кБ / с. Любая ложная активность WLAN вызовет заикание, если вы находитесь не в сети 802.11 n. Если вы планируете основывать свои развлекательные решения на беспроводной потоковой передаче, рассмотрите возможность приобретения беспроводного маршрутизатора n.
ПОСЛЕДУЮЩИЙ: ТРАНСКОДИНГ
Чтобы уменьшить нагрузку на сеть и заикание (что произойдет, если вы не находитесь в сети 802.11 n), можно перейти к транскодированию аудиопотока в mp3.
Вставьте это в ~ / .config / rygel.conf
[GstLaunch]
enabled=true
launch-items=mypulseaudiosink
mypulseaudiosink-title=Sound on @HOSTNAME@
mypulseaudiosink-mime=audio/mpeg
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! lamemp3enc target=quality quality=6
Используйте сервис Gst Launch DLNA, который теперь будет отображаться при запуске rygel.
СЛЕДУЙТЕ ЗА 2: FLAC
LAME может вызвать задержку до 2 минут (!). FLAC, с другой стороны, довольно быстрый, обычно работает менее одной секунды. Измените строки в приведенном выше примере на:
mypulseaudiosink-mime=audio/flac
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! flacenc quality=8
Это уменьшает поток примерно до 100 кБ / с, обеспечивая плавное воспроизведение в большинстве сетей 802.11g с несколькими пользователями. Я проверял это при загрузке торрента. На полной скорости было некоторое заикание, но когда я ограничил скорость загрузки примерно до 200 кБ / с ниже моей максимальной пропускной способности, он снова стал плавным.
Кроме того, вы устранили любую потерю качества.
Пара вопросов по вышеупомянутому - проверьте и измените ~/.config/rygel.conf
вместо этого, /etc/.config/rygel.conf
если он не загружен по умолчанию (?).
Создание приемника не будет работать в более поздних версиях Ubuntu.
Однако для меня сработало следование всем инструкциям (без создания раковины). Затем запустите paprefs
и на вкладке «Сетевой сервер» выберите нижнюю опцию «Сделать локальные звуковые устройства доступными в качестве сервера uPnP» (и, возможно, эта опция также требуется).
Запустите rygel и выберите новую опцию «DLNA / UPnP Streaming» в настройках PulseAudio.
На BubbleUPnP выберите «Gst Launch» в качестве библиотеки. В приложении выберите «Библиотека», и сверху должна появиться опция «Звук включен».