IPTV STB és a média megosztás

Kb. 2 hónapja IPTV előfizető vagyok, többé-kevésbé megelégedéssel használom a szolgáltatást. A minap vendégeket vártam, és az a merész ötletem támadt, hogy a TV képernyőjén nézzük meg a kötelezően megnézendő képeket. Mivel nincs HTPC-m, vagy ehhez hasonló szerkezetem, így az IPTV-hez adott set top boxot akartam erre használni. Elvileg a megosztott képeket és zenéket is tudjuk kezelni vele. Az sejthető volt, hogy ez nem lesz egy egyszerű dolog, mert jelenleg nincs telepített Windows a gépemen, és az STB szerint a Windows Media Player 11-ben kell engedélyezni megosztást.

Alapadatok:

  • STB: Cisco ISB6030
  • OS: Ubuntu 10.10, x86_64

A Google intenzív használata, és a T-Home fórum hosszas olvasgatása után kiderült, hogy itt UPnP-ről van szó, és az STB biztosan támogatja az mp3, valamint a jpg formátumokat1. Lelkesedésemet kissé lelombozta, hogy többen állították a fórumon, linux alól nem működik a dolog. Sőt, többeknek még Windows alól sem ment. A remény hal meg utoljára.

A buherálás megkönnyítése érdekében telepítettem egy UPnP kliens szoftvert is. A djmount egy egyszerű kliens (repoból telepíthető), de rootként kell futtatni:

sudo djmount -f -o allow_other ~/tmp

Ezt célszerű újraindítani a médiaszerver újraindítása után. Az -f paraméter hatására nem démonként fut, így csak a tesztelésnél használjuk.

Az első jelölt a GMediaServer volt. Telepítés után (szintén repoból) a

gmediaserver -ieth0 -v4 --file-types="mp3,m3u,jpg" ~/Zenék ~/Képek

paranccsal indíthatjuk. A -v4 hatására kiír mindent, így látjuk, hogy éppen mi történik, illetve a hibákat is könnyebb észrevenni. Minden tökéletesen működik. A számítógépen. Sajnos az STB nem látja a megosztást, így az eredeti feladatra nem alkalmas.2

Következő versenyző a MediaTomb (szintén megvan repoban). A konfigurálásra nem térek ki. Alapesetben a ~/.mediatomb/config.xml fájlt kell szerkeszteni. Legtöbb dolog egyértelmű, ami pedig nem, az megtalálható a honlapon. Konfigurálás után a

mediatomb

paranccsal indítható, és megosztásra kerül az alapértelmezett Audio, Video és Photos könyvtár.

Az igazi meglepetést az okozza (ha nem olvastuk el a honlapot), hogy a id3 tagek alapján csoportosítja a zenei anyagot: albumok, előadók, típus, évszám alapján. Üröm az örömben, hogy a --disable-libjs kapcsolóval fordították az Ubuntusok. Ez azért baj, mert így nem kezeli a playlistet.3 Ezt a

medaitomb --compile-list

paranccsal ellenőrizhetjük is. A playlisten kívül van még egy probléma. A STB ezt a megosztást sem látja. A forrásban lévő README tanulmányozása során az is kiderül, hogy az Xbox 360 támogatás még nincs implementálva. Valószínűleg az Xbox támogatás beépítése után érdemes újra próbálkozni vele.

A remény hal meg utoljára! (De már erősen kapkod a levegő után.) Újabb jelölt érkezik az uShare személyében. Ez a GMediaServer forkja, de már ezt sem fejlesztik kb. 2 éve. Mivel nem veszthetünk semmit, vizsgáljuk meg ezt a versenyzőt is. Ubuntun ez is csomagból telepíthető, tehát nem tart sokáig a dolog. A man szerint van neki "XboX 360 compliant profile"-a, így nagy reményekkel vágok neki.

A használata roppant egyszerű:

ushare -vx -c ~/Zenék -c ~Képek

. A -v a részletes üzenetekhez, a -x az Xbox 360 profile-hoz kell. Megcsapott a siker szele. A STB látja a megosztást! Az mp3-as zenéket le lehet játszani. A képek elviekben szintén megnézhetőek, de az kiválasztás után csak a kék képernyő látszik. A playlistek sem működnek. A djmountnak köszönthetően kiderül, hogy az uShare valamiért az m3u kiterjesztésű fájlokat mp3 kiterjesztéssel ajánlja ki4, így viszont érthető, hogy nem működnek.

Tapasztalatok:

  • Az eredeti feladatot nem sikerült megoldani. Emlékeztetőül: képek nézegetése a TV-n, a STB-on keresztül, megosztásról.
  • Ha zenét akarunt nézni hallgatni a TV-n, akkor arra az uShare megfelelő. Bár a playlisteket szimbólikus linkekkel kell emulálunk.
  • Ha számítógépről számítógépre akarunk médiát megosztani, akkor a MediaTomb nagy tudású eszköz (például automatikus konverzió is van), de playlistünk nem lesz. Legfeljebb a uShare-hez is javasolt módszerrel.
  • Ha számítógépről számítógépre akarunk megosztani, és a rendes playlisthez is ragaszkodunk, akkor a GMediaServer a barátunk.

Az utolsó két pont arra az esetre vonatkozik, ha valamilyen -- előttem ismeretlen -- okból ragaszkodunk az UPnP protokollhoz. Ellenkező esetben a DLNA jobb választás.

A témával (Média megosztása Linux alapon, IPTV STB-ra) kapcsolatos ötleteket, javaslatokat szivesen veszem.

Megjegyzések:

  1. A kísérletek alatt az is kiderült, hogy a STB wmv, illetve asf formátumot is támogat valamilyen szinten. Konkrétan, ha megfelelőnek tartja a formátumot, akkor a hangsávot hajlandó lejátszani. Wmv esetén a wmv9 kódolású videók hangsávját tudta lejátszani, de az 1920x1080-as felbontás esetén csak néhány mp-et tudott lejátszani az elejéről. Kisebb felbontásnál (320x240-nel próbáltam) rendesen lejátszotta a hangsávot.
  2. Bár a GMediaServert már egy ideje (2007) nem fejlesztik, de amit tud, azt jól csinálja. Legalább is a rövid teszt alatt minden rendben volt. Tehát ha valaki nem akar STB-ot használni, annak egy jó választás.
  3. Ha playlistet is szeretnénk a MediaTombhoz, akkor nekünk kell forrásból fordítani. A forrást a honlapról tölthetjük le, de a libjs-hez a js forrása is kell. A js letöltésére és fordítására vonatkozó információkat a mozilla oldalain találjuk meg. Mivel a teljes SpiderMonkey-t le kell tölteni, így egy darabig eltart a dolog. A MediaTomb fordítása előtt célszerű elolvasni a README-t is, különös tekintettel a "Requirements" részre. Mivel a STB-szal nem működik együtt, így nem raktam fel forrásból, ezért ilyen irányú tapasztalatokról nem tudok beszámolni.
  4. A GMediaServer és a MediaTomb az m3u kiterjesztéshez az audio/x-mpegurl mime típust rendeli hozzá, viszont az uShare az audio/mpegurl-t. Lehet, hogy ez a hiba oka? A mime type a forrásba van bedrótozva, így megpróbáltam forrásból feltenni, de első körben patch-elni kellett. Aztán második körben is kellene, de arra már nem találtam megoldást.
    Kiegészítés (2010. 01. 24.): Ha az Ubuntu repoból töltjük le a forrást, és a libupnp-dev telepítve van (a libupnp4-dev nem jó!), akkor az src/mime.c módosítása után működik a fordítás. Ezután már a playlist kiterjesztése m3u lesz, de továbbra sem használható.

Hozzászólások

nekem eddig csak a minidlna valt be. patchet is talalsz hozza a blogomban, bar az a samsung tvhez kellett :)

Sajnos a minidlna-hoz sem tud csatlakozni a STB. Viszont a fórumukon olvastam valamit, ami alapján úgy tűnik hogy a uShare-rel kombinálva esetleg használható lesz. Az első kísérletek biztatóak. Ha sikerül, akkor egy külön blogban beszámolok róla.

-----
"Én vagyok a hülye, hogy leállok magával vitatkozni."

Az XMBC-s linken lévő listából kiválasztva a Linuxon futó szervereket:
- XMBC-nek van egy beépített média szervere, de ezt most nem akarom kipróbálni, mert érzésem szerinte ágyúval verébre hatású lenne. (A STB csak képeket és zenét játszik le, a videó jelenleg nem támogatott.) Akkor lenne hasznos, ha a STB-ra fel lehetne tenni, de ez nem megy.
- A uShare-t, GMediaServert és a MediaTombot próbáltam, a blogban vázolt sikerrel.
- CyberMediaGate: Már szemeztem vele, de regisztráció nélkül nem lehet túljutni a nyitó oldalon, és jelenleg nem lehet regisztrálni.
- A PyMedS-sel és a Coherence-szel teszek majd egy próbát.
- A Platinum UPnP SDK: Nem tervezem média szerver írását.

Az MythTV-re nagyjából az vonatkozik, ami az XBMC-re, egyelőre ezt sem próbálom ki. Inkább valami pehelysúlyú megoldást preferálok.

Köszi a tippeket.

-----
"Én vagyok a hülye, hogy leállok magával vitatkozni."