Raspberry Pi in OpenELEC – Nastavite IPTV

Po nekaj mesecih razvoja programske opreme za Raspberry Pi, je tudi OpenELEC v začetku septembra v svoj paket vključil živo televizijo (Live TV), preko katere je možno spremljati TV kanale na različne načine. To je od ponedeljka (1.10.) vključeno tudi v Raspbmc, saj je takrat izšla že peta predogledna različica (RC5), ki prinaša nekaj novih stvari, predvsem pa so odpravljene napake. Obe distribuciji sta sicer namenjeni predvajanju multimedijskih vsebin, vendar je glavna razlika med njima, da Raspbmc omogoča veliko več nastavitev preko ukazne vrstice (med drugim tudi upravljanje s programsko opremo preko apt-get), medtem ko OpenELEC tovrstne stvari podpira le preko paketov, ki jih namestimo kot dodatke. Omeniti je potrebno še, da Raspbmc od četrte predogledne različice temelji na Raspbianu (namizni operacijski sistem za Raspberry Pi), oba pa za uporabniški vmesnik uporabljata XBMC. Odločitev katerega uporabiti je predvsem na strani uporabnika in stvari, ki jih želi nastaviti, se pa jedro posamezne distribucije razlikuje.

Prednost Raspbmc je tudi v tem, da si jedro lahko zgradimo glede na nastavitve, ki jih sami potrebujemo, OpenELEC pa že vsebuje nekatere module, ki jih uporabniki želijo uporabljati. Namestitev Raspbmcja izvedemo preko programa, ki ga dobimo na uradni strani, nato pa ga poženemo, da se na SD kartico naložijo namestitvene datoteke. Kartico nato prestavimo v Raspberry Pi in ga vključimo, namestitev pa se izvede s prenosom paketov, za kar potrebujemo tudi mrežno povezavo. Drugače je pri OpenELECu, saj moramo paket zgraditi sami ali pa ga prenesemo iz uradne mape, katerega lahko namestimo le na Linuxu. Za Windowse in Mac pa moramo sami zgraditi ali najti slikovno datoteko, ki bo primerna velikosti naše SD kartice, da jo bomo lahko namestili in uporabili. Sam sem že izvedel izgradnjo na nekje 10 let starem računalniku, trajala pa je približno 17 ur. Večinoma uporabljam OpenELEC, saj ima odlično podporo za HDMI-CEC, ki omogoča upravljanje vmesnika kar preko daljinca monitorja ali televizije, izvrstno pa deluje z mojim Samsungom T240HD, ki za komunikacijo med napravama uporablja Anynet+. Edino kar moramo za povsem brezhibno predvajanje nekaterih datotek dokupiti pa sta kodeka MPEG-2 in pa VC-1, ki ju dobimo v uradni Raspberry Pi spletni trgovini.

Vodič za nastavitev IPTV

Za uspešno nastavitev IPTV na OpenELEC potrebujemo:

  • Raspberry Pi
  • SD kartico
  • Mrežno povezavo z urejenim prehodom za pretok video signala

Z nekaj spremembami se celoten postopek da uporabiti tudi na Raspbmcju, podobne nastavitve pa delujejo tudi z digitalnim televizijskim sprejemnikom. Sam sem v vodiču uporabil Lubuntu 12.04 za namestitev sistema ter Windows 7 za nastavitev kanalov. Izvajanje postopka na lastno odgovornost!

1. Kot prvo bomo potrebovali sistem naložiti na SD kartico, kar lahko storimo sami ali pa si paket prenesemo iz uradne mape ter izberemo najnovejšo različico glede na večjo številko v imenu – trenutno (v času pisanja tega prispevka) je zadnji paket OpenELEC-RPi.arm-devel-20121004053130-r12039.tar.bz2 s številko r12039. Sedaj odpremo ukazno vrstico in se postavimo v mapo, kamor smo paket shranili (sam sem ga shranil v mapo Prejeto).

$ cd ~/Prejeto
$ tar xvf OpenELEC-RPi.arm-devel-20121004053130-r12039.tar.bz2

Ko se datoteke razpakirajo moramo poiskati ime naprave, ki jo nosi naša SD kartica, poiščemo pa jo glede na velikost in po možnosti število particij, če smo SD kartico že uporabili v podobne namene.

$ df -h

Ime naprave, ki jo nosi moja kartica je /dev/sdb. To je vse kar moramo vedeti za namestitev, zato se prestavimo v mapo kjer smo OpenELEC prej razpakirali in s skrbniškimi pravicami namestimo sistem na kartico – če se ime vaše SD kartice razlikuje od moje, jo pri spodnjem ukazu nujno zamenjajte!

$ cd OpenELEC-RPi.arm-devel-20121004053130-r12039
$ sudo ./create_sdcard /dev/sdb

Po uspešni namestitvi nam bo skripta izpisala “… installation finished” in kartica je pripravljena za uporabo z Raspberry Pijem.

2. Kartico z ostalimi potrebnimi kabli priključimo v Raspberry Pi, šele na koncu pa v električno omrežje priključimo tudi napajalni kabel. Na monitorju se nam prikaže OpenELEC logotip, nato pa črn zaslon, ki je ob prvem zagonu sistema prikazan dlje kot sicer, saj se v ozadju izvajajo še nekakšne nastavitve. Ko se nam prikaže glavni zaslon (glej prvo sliko na začetku prispevka) lahko začnemo sistem tudi uporabljati. Po želji lahko v nastavitvah nastavimo jezik in čas, to storimo v System -> Settings -> Appearance -> International, vendar se vsaj meni do trenutne različice, ki jo uporabljam (r12026) po zagonu vedno znova nastavi angleški jezik.

3. Sedaj bomo zares pričeli z nastavitvami za spremljanje IPTV, zato se ponovno pomaknemo v glavni meni, razen če se trenutno nahajamo v nastavitvah. Odidemo v Sistem -> Nastavitve -> Dodatki -> Prenesi dodatke -> OpenELEC Mediacenter OS Add-ons -> Storitve -> hts-tvheadend (System -> Settings -> Add-ons -> Get Add-ons -> OpenELEC Mediacenter OS Add-ons -> Services -> hts-tvheadend) in pritisnemo tipko Enter. Prikaže se nam novo okno z opisom te storitve, v levem predelu pa se pomaknemo nad Namesti (Install) in kliknemo Enter. Okno izgine, nato pa se nam v desnem kotu spodaj pojavi sporočilo, da je storitev uspešno nameščena, zato pa ponovno zaženemo sistem. To storimo s pomikom v glavni meni nad spodnjo desno ikono in izberemo Ponovni zagon (Reboot).

4. Preden bomo s postopkom nastavitve IPTV nadaljevali, pa se moramo prepričati, da naš Raspberry Pi uporablja pravilni prehod za pretok video signala. Ta je odvisen od posameznega ponudnika internetnih storitev, največkrat pa se uporablja prehod z imenom “video”. Nekaterim je poleg tega na voljo tudi “trunk”, ki omogoča pretok tako spletnih kot video podatkov.

4.1 Če boste uporabljali prehod “video”, potem s postopkom nadaljujte na naslednji 5. točki, če pa vam pri zadnji točki video signal ne bo deloval, pa se vrnite in poskusite sledeče. Obstaja možnost, da OpenELEC ne bo mogel sam zaznati pravilnih nastavitev za prikaz tega signala, zato si bo potrebno pomagati z drugim vodičem (poglejte sliko pri 3. točki), kjer se bomo zanesli na neko IP številko, ki pri nekaterih ponudnikih deluje. Seveda lahko vpišete tudi svoje IP številke, če vam le-te delujejo. S postopkom nadaljujte na točki 4.3 in se potem vrnite nazaj.

Najprej moramo spremeniti prehod na “video”, nato pa še trenutno IP številko in pa masko podomrežja (spodnje številke ustrezno zamenjajte).

$ ifconfig eth0 1.1.1.1 netmask 255.255.255.0 up

Zakaj trenutno IP številko? Zato, ker se ta nastavitev z vsakim ponovnim zagonom pobriše in jo je potrebno vpisovati vedno znova, obstaja pa seveda tudi možnost, da to stori sistem sam. Če to želite storiti nadaljujte na točki 4.4.

4.2 V primeru, da vam ponudnik omogoča uporabo prehoda “trunk”, boste za nadaljevanje potrebovali izvedeti številko prehoda, preko katerega se prenaša video signal. Ko boste številko dobili, lahko nadaljujete s postopkom na naslednji podtočki, nato pa se vrnite nazaj.

Najprej spremenimo prehod na “trunk” in vklopimo dodatni modul jedra, da bo sistem znal pravilno komunicirati z njim. Nato z VLAN nastavljalnikom dodamo podomrežje, ki ga označuje številka prehoda. Z zadnjim ukazom pa bomo uredili še delovanje video signala preko enake mrežne povezave (spodnje x ustrezno zamenjajte).

$ modprobe 8021q
$ vconfig add eth0 xx
$ ifconfig eth0.xx xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx up

To je vse, kar je potrebno nastaviti za ta prehod, če pa želite da se to stori ob vsakem zagonu pa pred nadaljevanjem na naslednjo točko, preverite še podtočko 4.4.

4.3 V tem primeru se moramo povezati na Raspberry Pi tako, da bomo lahko dostopali do ukazne vrstice, kamor bomo vnesli nekaj podatkov, ki so potrebni za pravilno delovanje mrežne povezave. Najprej prenesemo program PuTTY (za Windowse, na nekaterih Linux distribucijah pa ga lahko namestimo iz programskih virov) in ga odpremo. V “Host name” vnesemo IP številko našega Raspberry Pija, ki jo preko OpenELECa najdemo v Sistem -> Sistemske informacije -> Omrežje (System -> System informations -> Network), nato pa sprejmemo še certifikat, ki nam ga program ponudi. Vpraša nas za uporabniško ime s katerim se bomo vpisali, to pa je root in pa še geslo, ki je openelec. Ko se vpišemo lahko nadaljujemo s postopkom na prejšnji dve točki.

4.4 Zato, da bo sistem ob zagonu samodejno izvedel nek nabor ukazov, moramo ustvariti novo datoteko imenovano autostart.sh. V njo bomo vpisali kateri ukazi naj se izvedejo, nahajala pa se bo v mapi .config.

$ cd /storage/.config
$ vi autostart.sh

Sedaj se nam odpre urejevalnik v katerega vnesemo sledečo kodo, glede na ukaze, ki jih želite, da se vam ob zagonu izvedejo.

#!/bin/bash
{
    modprobe 8021q
    vconfig add eth0 xx
    ifconfig eth0.xx xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx up
}

Datoteko le še shranimo in nadaljujemo z naslednjo točko.

5. Preden bomo TV kanale lahko spremljali, jih bomo morali preko spletnega vmesnika nastaviti. V brskalnik vpišemo naslov http://RPi-IP:9981/ (RPi-IP predstavlja IP številko, ki jo ima vaš Raspberry Pi, tako da jo vpišite namesto tega) in na strani, ki se nam pokaže izberemo zavihek Configuration, nato pa IPTV. Pod njim kliknemo na Add service, nato pa pričenmo z vpisovanjem podatkov posameznih TV kanalov. Channel name predstavlja ime kanala, v interface vpišemo ime omrežne kartice – eth0 če imamo izbran “video” prehod ali eth0.xx (xx predstavlja številko prehoda, zato ga zamenjajte), če imamo izbran “trunk” prehod, v Group vpišemo IP številko kanala, UDP port pa predstavlja številko prehoda preko katerega poteka video signal do nas (ta ni enak številki “trunk” prehoda).

6. Ko želene kanale vpišemo, se prestavimo na Raspberry Pi, na glavni zaslon in izberemo Sistem -> Nastavitve -> Live TV -> Splošno (System -> Settings -> Live TV -> General) in izberemo opcijo vključen. Prikaže se nam opozorilo, da moramo pred nadaljevanjem izbrati še en PVR odjemalec, nato pa izberemo HTS-TVHeadEnd in ga po prikazu novega okna omogočimo. Če se nam to opozorilo ne prikaže, to storimo ročno in sicer odidemo v Sistem -> Nastavitve -> Dodatki -> Onemogočeni dodatki -> PVR clients -> HTS-TVHeadEnd (System -> Settings -> Add-ons -> Disabled Add-ons -> PVR clients -> HTS-TVHeadEnd) in po prikazu okna kliknemo Omogoči.

V nastavitvah, kjer smo živo televizijo (Live TV) vključili pa se nahaja tudi upravitelj kanalov, preko katerega lahko urejate kanale, katere ste prej preko spletnega vmesnika vnesli.

7. (Če uporabljate prehod “video” se vrnite na točko 4.1) Nastavitev IPTV je končana. Preveriti moramo še delovanje kanalov, tako da odidemo v glavni meni in izberemo Live TV -> TV channels in pa določen TV kanal. Po kliku boste morali nekaj časa počakati, da video signal pride do Raspberry Pija, nato pa boste lahko uživali ob spremljanju IPTV. Za popolno mero uživanja pa priporočam še nakup MPEG-2 kodeka, ki ga dobite preko uradne Raspberry Pi spletne trgovine.

40 Responses to Raspberry Pi in OpenELEC – Nastavite IPTV

  1. Pingback: Pregled leta 2012 | jodlajodla´s blog

  2. Pingback: Uvoz IPTV programov v TVHeadEnd na OpenELEC | jodlajodla´s blog

Dodaj odgovor

Vaš e-naslov ne bo objavljen. * označuje zahtevana polja