Dwa dni temu natknąłem się na to pytanie i nie mogłem tego dobrze zrozumieć. W końcu przeczytałem w instrukcji AirBubble, że RAOP nie jest obsługiwany.
W końcu rozwiązałem go za pomocą funkcji DLNA / UPnP pulseaudio. Działa tak, jak można się spodziewać. Odtwarzaj dźwięk w dowolnej aplikacji z wyjściem pulseaudio na swoim urządzeniu i wybierz wyjście strumieniowe, kiedy chcesz przekierować je na urządzenie z Androidem.
Najpierw zainstaluj Rygel:
$ sudo apt-get install rygel rygel-preferences rygel-gst-launch
Następnie zmień plik /etc/rygel.conf, aby linia z parametrem enable-trancoding wyglądała tak:
enable-transcoding=false
Następnie załaduj moduły DLNA i TCP i uruchom 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
Na urządzenie z Androidem pobierz aplikację BubbleUPnP. Twoje urządzenia wyjściowe pulseaudio zostaną wymienione na serwerze „Sound on% HOSTNAME%”. Skieruj wyjście komputera na urządzenie DLNA w preferencjach dźwiękowych. Wybierz to samo wyjście w BubbleUPnP.
Pamiętaj, że BubbleUPnP transmituje pierwsze 30 minut za darmo. Pełna wersja kosztuje 3,49 €, ale myślę, że jest warta swojej ceny. Nie dostałem żadnej innej aplikacji do pracy dla mnie.
Wreszcie możesz wyłączyć przeglądarkę multimediów, jeśli nie podoba ci się to za pomocą preferencji rygel:
$ rygel-preferences
Jeszcze jeden heads-up: to bezpośrednio przesyła nieprzetworzone dane LPCM, które stale wynoszą ~ 250 kB / s. Każda fałszywa aktywność WLAN spowoduje zacinanie się, jeśli jesteś w sieci innej niż 802.11 n. Jeśli planujesz oprzeć swoje rozwiązania rozrywkowe na bezprzewodowym przesyłaniu strumieniowym, rozważ zakup bezprzewodowego routera n.
DZIAŁANIA NASTĘPCZE: PRZEKŁADANIE
Aby zmniejszyć obciążenie sieci i jąkanie (co nastąpi, chyba że jesteś w sieci 802.11 n), możesz przejść do transkodowania strumienia audio na mp3.
Wklej to do ~ / .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
Skorzystaj z usługi DLNA „Gst Launch”, która pojawi się teraz po uruchomieniu Rygel.
FOLLOW UP 2: FLAC
LAME może powodować do 2 minut (!) Opóźnienia. Z drugiej strony FLAC jest dość szybki, zwykle taktowanie poniżej jednej sekundy. Zmień linie w powyższym przykładzie na:
mypulseaudiosink-mime=audio/flac
mypulseaudiosink-launch=pulsesrc device=upnp.monitor ! flacenc quality=8
Zmniejsza to strumień do około 100 kB / s, umożliwiając płynne odtwarzanie w większości sieci 802.11g z wieloma użytkownikami. Testowałem to podczas pobierania torrenta. Przy pełnej prędkości pojawiło się zacinanie, ale kiedy ograniczyłem prędkość pobierania do około 200 kB / s poniżej mojej maksymalnej przepustowości, znów było płynnie.
Ponadto wyeliminowałeś wszelkie straty jakości.
Kilka problemów powyżej - ~/.config/rygel.conf
zamiast tego sprawdź i edytuj , /etc/.config/rygel.conf
jeśli domyślnie nie jest ładowany (?).
Tworzenie ujścia nie będzie działać w późniejszych wersjach Ubuntu.
Dla mnie jednak działało przestrzeganie wszystkich instrukcji (bez tworzenia zlewu). Następnie uruchom paprefs
i na zakładce „Serwer sieciowy” wybierz dolną opcję „Udostępnij lokalne urządzenia dźwiękowe jako serwer uPnP” (i być może wymagana jest również podopcja).
Uruchom rygel i wybierz nową opcję „DLNA / UPnP Streaming” w ustawieniach PulseAudio.
Na BubbleUPnP wybierz „Gst Launch” jako bibliotekę. W aplikacji wybierz Bibliotekę, a na górze powinna być teraz opcja „Dźwięk włączony”.