Musiikin soittaminen Debian-pöytäkoneelta verkon yli Android-tabletille onnistuu kyllä, mutta hieman säätöjä täytyy tehdä. Kuva: Kuvakaappaus BubbleUPnP-sovelluksesta |
Tykkään tiskata kuulokkeet korvilla. Yleensä pistän soittolistan pyörimään Android-tabletin Grooveshark-sovelluksesta1, josta musiikki kantautuu langattomasti Bluetooth-palikkaan ja sieltä kuulokkeisiin. Sovelluksen kautta ei voi kuitenkaan kuunnella Broadcast-lähetyksiä (esim. GIGA:n lähetystä), mikä on vähän harmi.
Debian-pöytäkoneeni täyskokoisella selaimella Broadcastit luonnollisesti toimivat, mutta Bluetoothia tuossa koneessa ei ole, eikä yhteys etäisyyden puolesta toimisi välttämättä kuitenkaan. En myöskään mielelläni vetäisi kuulokejohtoa koneelta asunnon läpi tiskipöydän ääreen, joten jonkinlainen langaton ratkaisu on siis tarpeen.
Spesifejä PulseAudio→Android -sovelluksia on olemassa, mutta näistä yksikään ei vaikuttanut ensisilmäyksellä kelvolliselta: olisi asennettava ohjelmistoja Debianiin pakettivarastojen ulkopuolelta, ja ostettava Android-sovelluksen Pro-versio mainosten poistamiseksi. Siispä digitaaliset legopalikat esiin ja tehään itte!
Debian-säädöt
PulseAudio-äänet saa vietyä UPnP-striimiksi Rygelin ja sen GSTLaunch-liitännäisen avulla. Rygel on asennettuna valmiiksi, mutta GSTLaunch-osa on asennettava erikseen. Asennetaan samalla muut tarvittavat työkalut:
Sitten kytketään PulseAudion UPnP-tuki päälle. Helpointa tämä on graafisella paprefs-sovelluksella, jonka Verkkopalvelin-välilehdeltä valitaan valintalaatikot Tarjoa paikalliset äänilaitteet saataville DLNA/UPnP-mediapalvelimena ja Luo erillinen äänilaite median DLNA/UPnP-suoratoistoa varten.
Tämän jälkeen GSTLaunch-liitännäinen on otettava käyttöön muokkaamalla ~/.config/rygel.conf -tiedostoa (esim. nanolla tai geditillä). Jos Rygelin asetuksia ei ole koskaan säädetty, saattaa tiedosto puuttua. Tällöin kannattaa käynnistää ja sulkea rygel-preferences kertaalleen, jolloin ohjelma luo oletusasetukset näppärästi. rygel.conf-tiedostosta poistetaan tämän jälkeen koko tiedoston lopussa oleva [GSTLaunch]-osio, ja korvataan se seuraavalla pätkällä:
enabled=true
launch-items=myaudioflac
myaudioflac-title=FLAC-ääni laitteelta @HOSTNAME@
myaudioflac-mime=audio/flac
myaudioflac-launch=pulsesrc device=upnp.monitor ! flacenc
Jos GStreamer-liukuhihna on tuttu, saa striiminsä halutessaan myös muissa muodoissa. Itse päädyin kuitenkin FLAC:iin, sillä se on oletuksena tarpeeksi korkealaatuinen, mutta mahtuu kuitenkin vaivatta kulkemaan WLAN:issa tabletille.
Tässä vaiheessa on varminta käynnistää Rygel ja PulseAudio uudelleen:
pulseaudio –kill
pulseaudio –start
nohup rygel &
Ohjelman saa tuuttaamaan ääntä verkkoon vaihtamalla sen ulostulolaitteen. Samalla tavalla äänet saa myös takaisin kaiuttimiin. Kuva: Kuvakaappaus pavucontrol-ohjelmasta |
Seuraavaksi laitetaan musiikit soimaan Groovesharkista. Oletuksena äänet tulevat koneen kaiuttimista, joten käännetään Grooveshark soittamaan verkkoon: avataan pavucontrol, ja valitaan Toisto-välilehden ALSA plug-in [plugin-container] -ohjelman kohdelaitteeksi sisäisen äänentoiston sijaan DLNA/UPnP Streaming. Tässä vaiheessa kaikki on valmista Debianin puolesta.
Android-säädöt
Oletusasetuksilla Rygel syytää verkkoon useita UPnP-laitteita. Kotiverkossani niitä on runsaasti jo ennestäänkin. Kuva: Kuvakaappaus BubbleUPnP-sovelluksesta |
Androidilla ei tarvitse paljoa tehdä. Käynnistetään aluksi UPnP-toistosovellus − itse suosittelen BubbleUPnP:tä − ja valitaan lähdelaitteeksi GST Plugin ja soitettavaksi kappaleeksi FLAC-ääni laitteelta laitteennimi. Pienen puskuroinnin jälkeen musiikin pitäisi lähteä raikaamaan Android-laitteesta, josta sen voi sitten halutessaan ohjata vaikkapa Bluetooth-kuulokkeisiin.
Kannattaa huomata, että puskuroinnin takia ääni tulee muutaman sekunnin viiveellä, joten esimerkiksi kappaleenvaihdot tapahtuvat pienellä viiveellä. Tämä ei itseäni haittaa, sillä tiskatessa harvemmin viitsin köpötellä kappaletta vaihtamaan.
Silloin tällöin BubbleUPnP ei lähde soittamaan kappaletta, vaan tarjoaa sen sijaan Action Timeout -virhettä. En ole keksinyt toistaiseksi ongelmaan ratkaisua, mutta stop-play -kierros auttaa yleensä. Käsittääkseni ongelma on sovelluksessa. Jos soittoa haluaa kokeilla toisella sovelluksella, saa äänivirran URL-osoitteen näkyviin napsauttamalla keskeltä ruutua. URL kelpaa esimerkiksi Androidin VLC-soittimelle.
—
1) Sovellus vaatii GS Anywhere -tilauksen, noin kympin kuussa. Suosittelen kokeilemaan!