Как использовать телефон Android Android в качестве удаленного аудиоприемника?

21

У меня есть неиспользуемый телефон HTC Hero Android (работает под управлением ОС Android 2.1), я хотел бы подключить его к аудиоусилителю и оставить его подключенным в течение нескольких месяцев, поэтому я мог бы использовать этот телефон для Android в качестве удаленного сервера / приемника пульсации / и т. д.

В Android Market доступно приложение «Удаленное аудио», которое может захватывать поток из / dev / dsp. / dev / dsp был отключен по ошибке / по любой причине в ubuntu 10.10 и даже после того, как я включил в соответствии с этот поток - после выполнения эти инструкции не помогли, поэтому, когда я нажимаю кнопку« Воспроизвести / Пауза »на моем андроиде, ничего не происходит, и mpg123 song.mp3 по-прежнему использует мои колонки для ноутбуков. последняя | head даже не показывает, что этот новый пользователь регистрируется (я полагаю, он должен появиться здесь?)

Поиск по «pulseaudio» нашел Airbubble на рынке Android, но он говорит: «не работает с RaopX на MacOS X и модулем raop для pulseaudio в Linux». (c)

Итак, есть ли способ использовать Android-телефон как удаленный аудиоприемник, в идеале не ограничиваясь воспроизведением mp3 / музыки - но подсистема звука вообще?

Конечно, я не единственный человек, который хочет транслировать звук на Android-телефон через Wi-Fi, чтобы прослушать его на соответствующих динамиках?

    
задан user35834 29.11.2011 в 02:28
источник

5 ответов

13

Я думаю, вы переработали идею, пытаясь сделать свой телефон тем, чего он никогда не собирался делать (подключиться к PulseAudio или что-то еще более низкоуровневое). Сделайте ваш компьютер напряженной работой.

Я бы предложил пойти с чем-то вроде Icecast ( здесь ) и используя одно из 30-тиных приложений для Android, которые могут передавать его.

    
ответ дан Oli 29.11.2011 в 02:35
источник
17

Два дня назад я наткнулся на этот вопрос и не мог понять. В конце концов я прочитал в руководстве AirBubble, что RAOP не поддерживается.

Я, наконец, решил его с возможностями DLNA / UPnP для пульсового звука. Он работает так же, как и следовало ожидать. Вы воспроизводите звук с любым приложением с импульсным выходом на вашем ящике и выбираете потоковый вывод, когда хотите переадресовать его на 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. Ваши устройства вывода pulseaudio будут перечислены под сервером «Sound on% 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 @[email protected]
mypulseaudiosink-mime=audio/mpeg
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! lamemp3enc target=quality quality=6

Используйте DLNA-сервис Gst Launch, который появится при запуске rygel.

FOLLOW UP 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» в качестве библиотеки. В приложении выберите «Библиотека», и теперь должна быть опция вверху, называемая «Звук включен».

    
ответ дан Karol Trojanowski 30.01.2012 в 14:59
1

Shairplay не поддерживает TCP и raop_play (я думаю, что на этой основе работает pulseaudio-module-raop) не поддерживает UDP. Почему raop является TCP, только странно, UDP кажется более простым и более подходящим протоколом на первый взгляд.

И если вы источник flac, то icecast через MP3 собирается убить качество, плюс это больше босс процессора. MPD изначально поддерживает импульсный выход, поэтому вы можете «включать и выключать» разные комнаты дома, например, Android-телефон с приложением mpdroid. Если вы можете использовать док-станции для трансляции в качестве конечных точек, у вас будет фантастическая настройка. Но вы не можете, потому что raop не поддерживает более простые конечные точки UDP!

    
ответ дан Stephen 07.12.2011 в 21:07
1

Возможно, вы захотите посмотреть вне сообщества Pulseaudio.

Я пытаюсь выполнить Subsonic для этого. До сих пор он работал хорошо. Я установил его на своей системе Ubuntu, моей гостиной Roku, на моих основных телефонах Android и на моем дополнительном телефоне Android, который только с Wi-Fi. Все эти устройства подключаются через Wi-Fi. Я также планирую установить его на машину Windows, чтобы моя жена могла передавать свою коллекцию iTunes на другие устройства.

Теперь я могу передавать аудио и видео из моей системы Ubuntu в свою Roku в гостиной или на мой Android, который я могу взять на кухню или в складную прачечную. Я также могу передавать с любого компьютера с веб-браузером. Я транслирую музыку и подкасты, работая над длинными скучными проектами обслуживания дома.

Пока это получилось хорошо.

    
ответ дан Stefan Lasiewski 30.01.2012 в 20:05
0

Вы можете использовать Foobar2000 на сервере и BubbleUPnP (payware ) на клиенте.

  1. получить вино
  2. получить foobar_v1.2.5.exe
  3. $ wine foobar2000_v1.2.5.exe
  4. следующий, следующий, следующий ...:)
  5. получить foo_upnp
  6. в папке компонентов foobar2000 (которая, вероятно, находится в ~/.wine/drive_c/Program Files/ )
  7. запуск foobar2000
  8. перейдите в библиотеку → Конфигурация → Воспроизведение → Вывод → Устройство и выберите «Нулевой вывод»
  9. убедитесь, что ufw не блокирует соответствующий трафик.
  10. в BubbleUPnP:
    1. перейдите в «Устройства → Библиотеки» и выберите сервер foobar2000.
    2. в «Библиотеке» выберите «Воспроизведение потока воспроизведения»

Этот подход имеет то преимущество, что если вы остановитесь на Android, он будет накапливать буфер (поскольку сервер все еще отправляет).

Протестировано на Ubuntu (версия Wine 1.5.28-0ubuntu1~ppa1 , версия foobar2000 версии 1.2.5 и версия foo_upnp 0.99.46) и Windows.

    
ответ дан Janus Troelsen 03.05.2013 в 19:58