You are on page 1of 55

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

Multimedia w Linuksie.
Praktyczne rozwizania
Autor: Kyle Rankin
Tumaczenie: Magorzata Czart
ISBN: 83-246-0405-7
Tytu oryginau: Linux Multimedia Hacks
Format: B5, stron: 328

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Linux cieszy si coraz wikszym zainteresowaniem i powodzeniem. Niezawodno,


otwarta architektura i cena to atuty, ktre zjednuj temu systemowi rzesze uytkownikw.
Do tej pory wielu entuzjastom mogo brakowa pewnych narzdzi do obsugi multimediw.
Jednak wystarczy skorzysta z kilku prostych wskazwek, aby Linux sta si
konkurencyjny wobec moliwoci multimedialnych Windows XP. A wprowadzajc
w ycie nieco bardziej zaawansowane techniki opisane w tej ksice, szybko mona
osign duo wicej bez koniecznoci wydawania fortuny na oprogramowanie
komercyjne.
Multimedia w Linuksie. Praktyczne rozwizania to znakomity przewodnik pozwalajcy
na szybkie poznanie i opanowanie moliwoci multimedialnych Linuksa. Zarwno
pocztkujcy, jak i zaawansowani uytkownicy znajd w nim wiele porad i wskazwek
dotyczcych konfigurowania i wykorzystania dostpnych aplikacji multimedialnych.
Cz podrozdziaw ksiki zostaa napisana przez ekspertw Linuksa czsto
twrcw oprogramowania.
Dziki tej ksice odkryjesz, e ten niezawodny system operacyjny oferuje wiele
zaawansowanych narzdzi do ogldania i edytowania niemal wszystkich formatw
multimedialnych.

Wydawnictwo Helion
ul. Kociuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl

Grafika edycja, konwersja formatw, animacje, synchronizacja


z aparatem cyfrowym
Audio miksowanie, tworzenie bibliotek mp3, nagrywanie pyt,
konwersja, edycja i wyszukiwanie
Wideo tworzenie i ogldanie filmw, nagrywanie DVD i VCD,
korzystanie z cyfrowej kamery
Multimedia w sieci instalacja tunera TV, wycinanie reklam,
ogldanie telewizji na monitorze
Strony WWW ogldanie filmw w przegldarce, wasne reality show,
kontakty przez Skype

O autorze ......................................................................................................................................... 7
Wstp ............................................................................................................................................. 11
Rozdzia 1. Grafika ....................................................................................................................... 17
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.

Wykonywanie zrzutw ekranu ..................................................................................... 18


Przeksztacanie z jednego formatu graficznego na inny .......................................... 19
Tworzenie miniaturek zdj .......................................................................................... 21
Grafika animowana ......................................................................................................... 22
Umieszczanie znaku wodnego ...................................................................................... 23
Pobieranie zdj z aparatu cyfrowego ......................................................................... 25
Zarzdzanie zdjciami przy uyciu f-spot .................................................................. 27
Edytowanie grafik ........................................................................................................... 31
Zdjcia. Usuwanie efektu czerwonych oczu ............................................................... 34
Tworzenie pokazu slajdw ............................................................................................ 35
Automatyczne synchronizowanie aparatu z komputerem ...................................... 37
Wykonywanie filmu ze zrzutw ekranw .................................................................. 43

Rozdzia 2. Audio .......................................................................................................................... 49


13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.

Miksowanie audio dla uzyskania idealnego dwiku .............................................. 50


Otaczanie si dwikiem ................................................................................................ 53
Odtwarzanie wielu dwikw jednoczenie .............................................................. 58
Uzyskiwanie bibliotek MP3 dla dystrybucji opartych na Red Hat ......................... 61
Konfigurowanie dwiku sieciowego .......................................................................... 63
Zarzdzanie audio za pomoc XMMS ......................................................................... 64
Mieszanie utworw w sprytny sposb ........................................................................ 68
Prba z Rhythmbox ......................................................................................................... 70
Pozwlmy, aby nasz kolekcj muzyki zaj si amaroK ......................................... 73
Przechowywanie danych amaroK w MySQL ............................................................. 78
Aktywowanie klawiatury multimedialnej .................................................................. 79
Zgrywanie pyt kompaktowych z wiersza polece ................................................... 83
Zgrywanie pyt kompaktowych bezporednio z Konquerora ................................. 86
Program Grip do zgrywania pyt kompaktowych .................................................... 88
Spis treci

27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.

Edytowanie znacznikw ID3v2 z wiersza polece .................................................... 92


Dodawanie okadki albumu do znacznikw ID3 ...................................................... 94
Automatyzowanie oznaczania plikw z muzyk ...................................................... 96
Poprawianie muzycznych metadanych przy uyciu MusicBrainz ....................... 103
Przejrzyste metadane muzyczne w wierszu polece .............................................. 106
Przejrzyste metadane muzyczne w graficznym interfejsie uytkownika ............ 109
Obsuga mikrofonu i nagrywanie dwiku .............................................................. 112
Edytowanie audio przy uyciu Audacity ................................................................. 114
Konwertowanie z jednego formatu na inny ............................................................. 116
Normalizowanie poziomu gonoci plikw audio ................................................. 120
Jak sprawi, eby komputer z nami rozmawia ....................................................... 122
Wyszukiwanie w audio ukrytych wiadomoci ........................................................ 124
Wypalanie pyt audio CD z wiersza polece ............................................................ 125
Automatyzowanie wypalania pyt audio za pomoc K3b ..................................... 127
Jak zmieni komputer w gramofon ............................................................................ 129
Korzystanie z programu iPod pod Linuksem .......................................................... 135
Synchronizowanie iRiver z Linuksem ....................................................................... 142
Korzystanie z innych przenonych odtwarzaczy audio ......................................... 144
Uywanie zestawu suchawkowego Bluetooth pod Linuksem ............................. 147
Wyszukiwanie wszystkich plikw multimedialnych .............................................. 150

Rozdzia 3. Wideo ....................................................................................................................... 153


47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
4

Opcje wyjcia wideo typu master ............................................................................... 154


Korzystanie z odtwarzacza MPlayer .......................................................................... 157
Zaawansowane opcje MPlayera .................................................................................. 162
Tworzenie wersji filmu przyjaznej dla rodziny .................................................... 164
Kadrowanie filmu w czasie odtwarzania .................................................................. 165
Dodawanie do filmu napisw dostosowanych do potrzeb uytkownika ........... 168
Odtwarzanie zastrzeonych formatw multimedialnych ...................................... 170
Ogldanie filmw w ASCII art .................................................................................... 173
Odtwarzacze wideo oparte na xine ............................................................................ 175
Korzystanie z VLC, midzyplatformowego odtwarzacza wideo .......................... 178
Badanie ustawie wideo .............................................................................................. 179
Zgrywanie VCD ............................................................................................................. 181
Zgrywanie DVD ............................................................................................................. 182
Kodowanie DVD na MPEG4 z wiersza polece ...................................................... 184
Zgrywanie i kodowanie DVD z uyciem interfejsu mencoder ............................. 186
Zgrywanie i kodowanie DVD przy uyciu K3b ....................................................... 189
Przeksztacanie z jednego formatu wideo na inny .................................................. 190
Tworzenie wideo zgodnego z Archos ........................................................................ 196
Przeksztacanie dwuwarstwowych pyt DVD na jednowarstwowe pliki DVD . 197
Spis treci

66.
67.
68.
69.
70.
71.
72.

Korzystanie z cyfrowej kamery wideo pod Linuksem ........................................... 201


Edytowanie filmw ....................................................................................................... 205
Zmienianie rozmiarw filmu ....................................................................................... 207
Tworzenie VCD ............................................................................................................. 210
Tworzenie DVD ............................................................................................................. 215
Dostosowywanie menu na pycie DVD ..................................................................... 219
Tworzenie filmw uruchamiajcych si automatycznie ......................................... 222

Rozdzia 4. Transmitowanie multimediw w sieci ................................................................... 229


73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.

Instalowanie tunera telewizyjnego ............................................................................. 229


Ogldanie telewizji na komputerze ............................................................................ 231
Wyjcie na telewizor przy uyciu kart NVIDIA ...................................................... 234
Wycinanie reklam .......................................................................................................... 237
Tworzenie wasnego DVR za pomoc MythTV ....................................................... 239
MythTV jako hub cyfrowy ........................................................................................... 256
Przejmowanie (zdalnie) kontroli ................................................................................. 259
Wyszukiwanie strumieniowanych stacji radiowych ............................................... 261
Zgrywanie strumieniowania audio ............................................................................ 264
Zgrywanie strumieniowania wideo ........................................................................... 267
Odtwarzacz strumieni MP3 w wierszu polece ...................................................... 268
Budowanie w Linuksie szafy grajcej przy uyciu Jinzora .................................... 269
Strumieniowanie wideo przy uyciu VLC ................................................................ 272
Przechwytywanie podcastw z wiersza polece ..................................................... 273
Przechwytywanie podcastw przy uyciu GUI ....................................................... 275
Transmitowanie dwiku jako AM przy uyciu monitora .................................... 277

Rozdzia 5. Strony WWW ........................................................................................................... 281


89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.

Byskawiczne instalowanie pluginu firmy Macromedia .................................... 281


Uywanie RealPlayera firmy Real .............................................................................. 283
Ogldanie filmw z poziomu przegldarki Firefox ................................................ 284
Kofeinowy Konqueror .............................................................................................. 285
Instalowanie pluginu Acrobat Reader ....................................................................... 286
Kontrolowanie odtwarzacza multimedialnego z przegldarki Firefox ............... 288
Pobieranie profili kolorw z innych serwisw WWW ............................................ 289
Przegldanie stron graficznych w xterm ................................................................... 290
Wystpowanie we wasnym reality show ................................................................. 292
Dzwonienie przez internet z uyciem Skypea ........................................................ 296
Zamienianie Linuksa w PBX ........................................................................................ 298
Goszczenie galerii fotograficznej ................................................................................ 302

Skorowidz ................................................................................................................................... 307


Spis treci

Instalowanie tunera telewizyjnego

ROZDZIA CZWARTY

Sposoby 73. 88.


Jeeli chcemy dowolny materia multimedialny rozesa do szerszej grupy osb (ale nie
chcemy zarzuca ich spamem), naley to zrobi poprzez transmitowanie. Dawniej kojarzyo si ono tylko z radiem i telewizj, a take wymagao drogiego sprztu i specjalistycznej wiedzy. Zmiany nastpiy wraz z rozwojem internetu. Teraz materia multimedialny moe transmitowa kady, kto dysponuje komputerem, oprogramowaniem
o otwartym kodzie rdowym i w miar szybkim poczeniem z sieci. O tym, jak nisko
jest teraz umieszczona poprzeczka pozwalajca wkroczy w wiat transmitowania dowodz zjawisko strumieniowania radiowego przez internet oraz nowszego podcastingu.
W tym rozdziale znajduje si opis wielu sposobw zarzdzania materiaami do transmisji za pomoc narzdzi dostpnych w Linuksie. Wszystkie elementy zwizane zarwno
z tradycyjnym nadawaniem, jak i z transmitowaniem przez internet s rwnie dostpne
pod Linuksem. Tutaj zostanie omwione ustawianie tunerw telewizyjnych i ogldanie
telewizji oraz sposoby zarzdzania strumieniowaniem radiowym i wideo przychodzcym
i wychodzcym z naszego komputera. Kilka opisanych sposobw ujawnia rwnie prawdziwe moliwoci Linuksa w zakresie zarzdzania transmitowanym materiaem, w ktrych zostao przedstawione przeksztacanie Linuksa w nagrywark wideo z penym zakresem funkcji, w rodzaju TiVo.
SPOSB

73.

Instalowanie tunera telewizyjnego


Komputer z Linuksem mona przeksztaci w telewizor.

Zatem chcemy utworzy wasn cyfrow nagrywark wideo (DVR) pod Linuksem, a moe
po prostu pragniemy na naszym komputerze oglda telewizj? Jeeli tylko nasz tuner
telewizyjny jest zgodny z Linuksem, jego zainstalowanie nie powinno by bardzo trudne,
przynajmniej w przypadku wikszoci kart. W tym podrozdziale znajdziemy wszystko,
co trzeba wiedzie o instalowaniu tunerw telewizyjnych w Linuksie.
Instalowanie popularnych kart Hauppauge WinTV zostao omwione
w podrozdziale Tworzenie wasnego DVR za pomoc MythTV [Sposb 77.].

Transmitowanie multimediw w sieci

229

SPOSB

73.

SPOSB

73.

Instalowanie tunera telewizyjnego

Pierwszy krok stanowi zidentyfikowanie uywanego przez kart tunera, ukadu scalonego oraz moduu Linuksa niezbdnego do jego obsugi. Jeeli w systemie mamy kopi
rde jdra Linuksa, warto zajrze do katalogu Documentation/video4linux. Znajdziemy
tam pliki CARDLIST.bttv oraz CARDLIST.saa7134. Najpopularniejsze karty tunera korzystaj ze sterownika bttv, ale najlepiej przejrze obie listy w poszukiwaniu wzmianki
o naszej karcie. Rwnie polecenie lspci moe wskaza nam, z jakiej karty korzystamy.
Poniej znajduj si dane wyjciowe tego polecenia wykonanego na maszynie z kart
zgodn z bttv:
$ lspci
...
0000:00:0d.0 Multimedia video controller: Brooktree Corporation Bt878
Video Capture (rev 11)
0000:00:0d.1 Multimedia controller: Brooktree Corporation Bt878 Audio
Capture (rev 11)

Wikszo obecnych dystrybucji jest rozprowadzana z jdrami zawierajcymi du liczb moduw. Jeeli wic korzystamy z typowego jdra, istnieje dua szansa, e doczone do niego moduy saa7134 oraz bttv s ju odpowiednio skompilowane. Natomiast jeli
sami zbudowalimy jdro, naley znale w pliku konfiguracyjnym jdra sekcj Video For
Linux i upewni si, e obsuga Video For Linux jest dostpna jako modu, jak rwnie
obsuga BT848 Video For Linux, Philips SAA7134 lub jakiegokolwiek innego moduu
odpowiedniego dla uywanego przez nas zestawu ukadw scalonych. Nastpnie musimy ponownie skompilowa jdro, aby utworzy nowe moduy.
Po zainstalowaniu karty tunera telewizyjnego oraz ponownym uruchomieniu Linuksa,
naley jako root zaadowa modu zgodny z uywan przez nas kart. Na potrzeby tego
podrozdziau bdziemy korzysta z moduu bttv, poniewa jest on najbardziej popularny:
# modprobe bttv

Po zaadowaniu moduu, naley wpisa lsmod i upewni si, e modu tunera rwnie
zosta zaadowany. Jeeli nie, naley zrobi to osobno:
# modprobe tuner

W danych wyjciowych dmesg pokae si wiele informacji zwizanych z instalowaniem


tego moduu:
# dmesg
Linux video capture interface: v1.00
i2c-core.o: i2c core module version 2.6.1 (20010830)
i2c-algo-bit.o: i2c bit algorithm module
bttv: driver version 0.7.108 loaded
bttv: using 4 buffers wirh 2080k (8320 total) for capture
bttv: Host bridge needs ETBF enabled.
bttv: Bt8xx card found (0).
bttv0: Bt878 (rev 17) at 00:0d.0, irq: 17, latency:32, mmio: 0xdf040000
bttv0: detected: ATI TV Wonder/VE [card=64], PCI subsystem ID is 1002:0003
bttv0: using: ATI TV Wonder/VE [card=64,autodetected]
bttv0: enabling ETBF (430FX/VP3 compatibility)
i2c-core.o: adapter bt848 #o registered as adapter 0.
bttv0: using tuner=19

230

Transmitowanie multimediw w sieci

Ogldanie telewizji na komputerze


bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
i2c-core.o: driver i2c TV tuner driver registered.
tuner: chip found @ 0xc0
tuner: type set to 19 [Temic PAL* auto (4006 FN5)] registered to adapter
[bt848 #0](pos. 0).
bttv0: PLL: 28636363 => 35468950 .. ok
bttv0: registered device video0
bttv0: registered device vbi0

W tym przypadku karta bttv korzysta z /dev/video0, a modu bttv by w stanie automatycznie wykry typ tunera (tuner=19). Teraz trzeba te moduy doda do pliku /etc/modules,
tak aby byy adowane przy kadym uruchomieniu systemu. Jeeli bttv nie potrafi wykry typu tunera lub karty, mona odpowiednie ustawienia samodzielnie wpisa w /etc/
modules.conf. W tym celu naley przejrze pliki Documentation/video4linux/CARDLIST.tuner
oraz Documentation/video4linux/CARDLIST.bttv. Odnalezione w nich numery karty i tunera
musimy doda do pliku /etc/modules.conf jako linie opcji:
options bttv card=64
options tuner tuner=19

Jeeli nasz tuner ma gniazdo wyjcia sygnaowego audio, naley upewni si,
e zostao ono podczone do wejcia sygnaowego audio na karcie dwikowej,
a nastpnie otworzy program miksujcy i sprawdzi, czy wejcie audio
nie jest wyciszone. W przeciwnym razie nie usyszymy adnego dwiku
pochodzcego z tunera.

Po zainstalowaniu karty naley przeczyta [Sposb 74.] opisujcy metody konfigurowania jej w przypadku rnych interfejsw video4linux.
SPOSB

74.

Ogldanie telewizji na komputerze


Ogldanie telewizji z pulpitu pod Linuksem jest moliwe przy uyciu wielu programw.

Mamy ju zainstalowany tuner telewizyjny, wszystkie kable odpowiednio podczone,


a nasza karta jest rozpoznawana w Linuksie; jednak co waciwie trzeba zrobi, eby
oglda telewizj? W tym podrozdziale zostan opisane narzdzia wykorzystywane do
konfigurowania tunera telewizyjnego oraz umoliwiajce ogldanie telewizji z pulpitu.
Najbardziej podstawowym programem uywanym do ogldania telewizji jest xawtv, ktry
zacz swoj karier jako aplikacja dedykowana dla sterownika bttv. Jednak wraz z upywem czasu jego moliwoci zostay rozszerzone tak, aby wsppracowa z video4linux.
W rezultacie mona go obecnie uywa z wieloma rnymi tunerami. Testowanie naszego
tunera warto zacz wanie w programie xawtv, poniewa, bdc od dawna na rynku,
jest nie tylko dobrze sprawdzony, ale rwnie istnieje spora szansa, e jego pakiet zosta
zaczony do naszej dystrybucji Linuksa. Aby go zainstalowa, naley przy uyciu menedera pakietw znale pakiet xawtv. Jeeli z jakiego powodu nie znajdziemy go w naszej dystrybucji, mona pobra go z oficjalnej strony pod adresem http://dl.bytesex.org/ releases/xawtv, a nastpnie skompilowa i zainstalowa zgodnie z dokumentacj instalacji.

Transmitowanie multimediw w sieci

231

SPOSB

74.

SPOSB

74.

Ogldanie telewizji na komputerze

Po zainstalowaniu xawtv mona go od razu uruchomi, jednak z uwagi na to, e nie zostay jeszcze skompilowane czstotliwoci kanaw, nie uda nam si dostroi adnego
kanau. Mona skonfigurowa wszystko rcznie, ale xawtv zawiera narzdzie o nazwie
scantv, skanujce tuner w poszukiwaniu dostpnych kanaw (podobnie jak funkcja skanowania w wielu radiach samochodowych), nastpnie generujce plik konfiguracyjny dla
xawtv. Naley otworzy okno terminala i wpisa:
$ scantv -o ~/.xawtv
please select your TV norm
0: PAL
1: NTSC
2: SECAM
3: PAL-Nc
4: PAL-M
5: PAL-N
6: NTSC-JP
7: PAL-60
nr ? 1
please select a frequency table
0: us-bcast
1: us-cable
2: us-cable-hrc
3: japan-bcast
4: japan-cable
5: europe-west
6: europe-east
7: italy
8: newzealand
9: australia
10: ireland
11: france
12: china-bcast
13: southafrica
14: argentina
15: australia-optus
16: russia
nr ? 1
scanning channel list us-cable...
1
{73.25 MHz): no station
...

Poniewa jestem mieszkacem Stanw Zjednoczonych, wybraem norm telewizyjn


NTSC oraz tabel czstotliwoci us-cable1. Po dokonaniu wyboru, scantv skanuje
wszystkie kanay mieszczce si w podanej tabeli czstotliwoci i zaznacza te, ktre wykryje. Nastpnie wszystkie dane wyjciowe umieszcza w ~/.xawtv. Teraz mona uruchomi xawtv:
$ xawtv

W Polsce naley wybra norm telewizyjn PAL oraz tabel czstotliwoci europe-east
przyp. tum.

232

Transmitowanie multimediw w sieci

Ogldanie telewizji na komputerze

Domylny interfejs nie wymaga szczeglnego opisu jest to po prostu okno bez dodatkowych przyciskw. W tabeli 4.1 zawarto list skrtw klawiaturowych umoliwiajcych nawigowanie programem. Strzaki w gr i w d pozwalaj na zmienianie kanaw, natomiast strzaki lewa i prawa umoliwiaj dostrojenie czstotliwoci, jeeli jest
niewaciwa.
Tabela 4.1. Przypisanie klawiszy w xawtv
Klawisz

Funkcja

Strzaki w gr i w d

Zmiana kanau o jeden w gr lub w d.

Strzaki w lewo i w prawo

Dostrajanie czstotliwoci.

PgUp, Spacja lub PgDn,


Backspace

Zmiana stacji w pliku konfiguracyjnym o jedn w gr


lub w d.

Ctrl+strzaka w gr

Skanowanie w poszukiwaniu kolejnej stacji.

F5 F12

Dostrajanie jasnoci, odcieni, kontrastu, kolorw.

Esc, q

Wyjcie.

+ lub (klawiatura numeryczna)

Regulowanie gonoci.

Enter (klawiatura numeryczna)

Wyciszanie.

Wczanie trybu penoekranowego.

Przechwycenie zrzutu ekranu (penowymiarowy ppm).

Przechwycenie zrzutu ekranu (penowymiarowy jpg).

Okno z opcjami.

Okno z kanaami.

Okno nagrywania AVI.

Aby skonfigurowa xawtv, naley klikn w oknie prawym przyciskiem myszy i wybra
jedn z opcji konfiguracyjnych dostpnych w wywietlonym menu. Jeeli nie korzystalimy ze scantv, wanie w tym oknie mona ustawi odpowiedni tabel czstotliwoci
i norm telewizyjn. Naley pamita o zapisaniu zmian przed zamkniciem programu,
aby nie trzeba byo wszystkiego ustawia od nowa przy kolejnym uruchomieniu.

Zapping
xawtv dziaa dobrze, ale nie ma graficznego interfejsu uytkownika. Inna moliwo to
program do ogldania telewizji o nazwie Zapping, ktry zosta zaprojektowany dla rodowiska GNOME, ale dziaa rwnie w KDE. Pakiet z programem Zapping jest zaczany
do wielu dystrybucji, wic naley poszuka go najpierw przy uyciu narzdzia instalujcego pakiety. Jeeli nie znajdziemy danego pakietu, mona pobra pakiet rdowy
ze strony http://zapping.sourceforge.net/cgi-bin/view/Main/Download i skompilowa go zgodnie
z instrukcjami.
Zapping moemy uruchomi z menu pulpitu lub wpisujc zapping w oknie terminala.
Program wczy automatyczne skanowanie w poszukiwaniu urzdze video4linux i poczy si ze znalezionym jako pierwsze. Trzeba na pocztku skonfigurowa, z jakiego

Transmitowanie multimediw w sieci

233

SPOSB

74.

SPOSB

75.

Wyjcie na telewizor przy uyciu kart NVIDIA

standardu wideo chcemy korzysta. Naley klikn Channels/video standards i wybra


odpowiedni standard z listy (w Polsce wybierzemy PAL). Jeeli mamy wicej urzdze
video4linux w naszym komputerze, trzeba otworzy okno z waciwociami klikn
Edit /Preferences, a nastpnie wybra Devices/Video. Wywietli si okno, w ktrym mona zmieni domylnie uywane urzdzenie wideo, a po klikniciu Devices/Audio mona
zmieni wykorzystywane urzdzenie audio. Jedn z zalet programu Zapping jest to, e
obsuguje wyjcia audio OSS oraz ESD i aRts. W oknie z waciwociami mona skonfigurowa rwnie wiele innych oglnych opcji, takich jak skrty klawiaturowe oraz ustawienia wywietlania na ekranie.
Nastpnie trzeba skonfigurowa kanay dla tunera. Naley wywoa okno konfiguracyjne
klikniciem Edit/Channels. Z menu rozwijanego musimy wybra nasz region, a pniej
klikn Automatic station search, dziki czemu Zapping automatycznie wyszuka dostpne
kanay. Opcjonalnie mona nakaza programowi zaadowanie informacji o kanaach bezporednio z pliku konfiguracyjnego xawtv. W tym oknie mona rwnie przypisa kademu z kanaw nazw oraz skrty klawiaturowe, co umoliwi szybkie przeczanie si
midzy kanaami.
Kanay moemy zmienia w gwnym interfejsie, korzystajc z przyciskw na pasku narzdzi lub przyciskajc na klawiaturze PgUp lub PgDn. Klawisze + i kontroluj poziom
gonoci. Mona nawet zrobi szybki zrzut ekranu za pomoc klawisza s.
SPOSB

75.

Wyjcie na telewizor przy uyciu kart NVIDIA


Wykorzystywanie dwch rnych metod w celu wysyania sygnau wideo do telewizora. Jedna z metod
korzysta ze specjalnych sterownikw NVIDIA, podczas gdy druga nie ma takich wymaga.

Komputery do oglnego uytku z Linuksem maj niezwykle duy potencja zwizany


z odtwarzaniem filmw. Mona na nich odtwarza nie tylko pyty DVD, VCD czy SVCD,
ale rwnie filmy w formacie .avi, .mpg, a nawet Ogg Theora. Oczywicie czasem zainstalowane na komputerze oprogramowanie nie jest przygotowane do ogldania filmw,
zwaszcza jeeli jestemy w gronie przyjaci. W takim przypadku najwygodniej byoby
wywietli film na ekranie telewizora, poniewa przed nim jest najatwiej zgromadzi
ca grup osb. Obsuga w Linuksie dla Tv-out jest czsto wybircza, w zalenoci od
producenta karty, jednak NVIDIA pozwala na wysanie sklonowanego obrazu wyjciowego do telewizora za pomoc sterownikw NVIDIA lub wyjcie na telewizor przy uyciu narzdzia nvtv. W tym podrozdziale zostanie opisany sposb ustawiania TV out na
nowoczesnych kartach wideo NVIDIA.

nvtv
nvtv to program zaprojektowany do bezporedniego komunikowania si z kart NVIDIA
w celu wczenia trybu wysyania sygnau na telewizor zewntrzny. Nie wymaga to
specjalnych sterownikw wideo ani obsugi ze strony jdra, wic jest to dobry wybr, jeeli
nie chcemy instalowa w Linuksie sterownikw NVIDIA.

234

Transmitowanie multimediw w sieci

Wyjcie na telewizor przy uyciu kart NVIDIA

Pakiet nvtv jest doczany do wikszoci gwnych dystrybucji, wic mona znale go
i zainstalowa za pomoc standardowego narzdzia zarzdzajcego pakietami. Jeeli jednak nie znajdziemy danego pakietu w naszej dystrybucji, naley pobra wczeniej skompilowany binarny tarball z oficjalnej strony nvtv pod adresem http://sourceforge.net/projects/
nv-tv-out. Poniewa pliki s ju skompilowane, mona wyekstrahowa je z pakietu i przekopiowa bezporednio do katalogu bin. W tym celu skorzystamy jako uytkownik root
z nastpujcego polecenia:
root@moses:~# tar xvzf nvtv-0.4.7-bin.tar.gz
root@moses:~# cd nvtv-0.4.7-bin
root@moses:~/nvtv-0.4.7-bin# cp nvtv nvtvd /usr/local/sbin/

Poniewa nvtv uzyskuje dostp do karty wideo, trzeba uruchomi program jako uytkownik root (jeden z powodw umieszczenia go w katalogu sbin/). Aby otworzy program, naley sta si uytkownikiem root i wpisa w terminalu nvtv. W gwnym oknie
zobaczymy po lewej stronie rzd zakadek, w ktrych umieszczone s rne opcje konfiguracyjne. Zakadka nvtv otwiera si standardowo na stronie Mode i jest domylnie ustawiona na system telewizji PAL. Nastpnie naley wybra rozdzielczo i wielko danych
wyjciowych wysyanych na ekran telewizora. Najpierw warto wyprbowa wielko
Normal i zobaczy, czy jest dopasowana do ekranu telewizora. Jeeli nie, naley wyprbowa Small, Huge lub jeszcze inny tryb i znale ten najlepiej pasujcy do naszego telewizora. Mona te dopasowa pooenie obrazu na ekranie telewizora z zakadki Position.
Inna moliwo to wywietlenie na ekranie tylko wybranego okna zamiast penego ekranu.
W tym celu naley klikn X Select, a nastpnie okno, ktre chcemy wywietli.
Po skonfigurowaniu okna nvtv tak, aby byo odpowiednio dopasowane do naszego rodowiska roboczego, naley klikn Apply, a nastpnie TV On (lub wcisn klawisz F1),
aby wysa dane wyjciowe na ekran telewizora. Jeeli chcemy przeczy wywietlanie
z powrotem na pulpit, musimy wybra TV Off (lub wcisn F2).

Sterowniki X NVIDIA
Jeeli w systemie mamy zainstalowane zamknite sterowniki NVIDIA, moe okaza si,
e oferowana przez nie metoda obsugi wyjcia telewizyjnego sprawdza si lepiej. Ten
podrozdzia nie obejmuje opisu instalowania i konfigurowania sterownikw X karty
NVIDIA, jednak mona zapozna si z odpowiedni dokumentacj dotyczc sterownika
karty NVIDIA dla Linuksa, znajdujc si pod adresem http://www.nvidia.com/object/
unix.html. Na tej stronie naley klikn odsyacz do najnowszego sterownika, a nastpnie
odsyacz do pliku tekstowego README.
Aby doda obsug Tv-out do sterownika NVIDIA, naley otworzy plik /etc/X11/
XF86Config-4 lub /etc/X11/xorg.conf i uda si do sekcji Device, w ktrej znajduj si
ustawienia konfiguracyjne karty NVIDIA. Interesujcy nas fragment pliku bdzie wyglda mniej wicej tak:
Section "Device"
Identifier "Geforce2MX"
VendorName "Unknown"
BoardName "Unknown"

Transmitowanie multimediw w sieci

235

SPOSB

75.

SPOSB

75.

Wyjcie na telewizor przy uyciu kart NVIDIA


Driver "nvidia"
Option "NvAGP" "1"
Option "NoLogo" "1"
Option "CursorShadow" "On"
EndSection

Nie naley si martwi, jeeli nasza konfiguracja rni si troch od zamieszczonej powyej.
Najwaniejsz spraw jest to, e konfigurujemy ten fragment zgodnie z obecnie uywan
kart NVIDIA. NVIDIA wywouje Twinview, czyli okrelon obsug wielokrotnego wywietlania. Twinview jest podobne do obsugi Xinerama dla X-w, a nawet obsuguje rozszerzenia Xinerama, jednak nie naley myli go z Xinerama. Aby wczy t obsug, naley
doda kilka dodatkowych opcji do konfiguracji uaktywniajcych obsug Twinview i Cloning
oraz nakazujcych sterownikowi wysyanie danych wyjciowych na ekran telewizora:
Option
Option
Option
Option
Option
Option
Option

"TwinView"
"TwinViewOrientation" "Clone"
"MetaModes" "1024x768,640x480"
"ConnectedMonitor" "CRT, TV"
"TVStandard" "NTSC-M"
"SecondMonitorHorizSync" "30-50"
"SecondMonitorVertRefresh" "60"

Ta konfiguracja pozwala na ustawienie naszego CRT na rozdzielczo 1024x768, podczas


gdy rozdzielczo telewizora wynosi 640x480. Oczywicie moemy ustawi obie rozdzielczoci tak samo, zwaszcza jeeli chcemy wywietla program w trybie penoekranowym. Ja ponadto ustawiem opcj TVStandard na NTSC-M, ale naley zapozna si
z dokumentacj karty NVIDIA, jeeli interesuj Ci obsugiwane przez ni rne tryby
PAL. Na koniec naley ustawi parametry odwieania poziomego oraz pionowego dla
telewizora. Naley zachowa jak najbardziej konserwatywne ustawienia, jeeli nie mamy pewnoci, e nasz telewizor obsuguje wysze czstotliwoci. Po dokonaniu wszystkich odpowiednich modyfikacji, sekcja Device powinna wyglda nastpujco:
Section "Device"
Identifier "Geforce2MX"
VendorName "Unknown"
BoardName "Unknown"
Driver "nvidia"
Option "NvAGP" "1"
Option "NoLogo" "1"
Option "CursorShadow" "On"
Option "TwinView"
Option "TwinViewOrientation" "Clone"
Option "MetaModes" "1024x768,640x480"
Option "ConnectedMonitor" "CRT, TV"
Option "TVStandard" "NTSC-M"
Option "SecondMonitorHorizSync" "30-50"
Option "SecondMonitorVertRefresh" "60"
EndSection

Teraz naley zapisa zmiany, wylogowa si ze rodowiska roboczego i ponownie uruchomi serwer X-w przez GDM/KDM/XDM lub przez nacinicie kombinacji klawiszy
Ctrl+Alt+Spacja. Serwer X-w uruchomi si ponownie, a dane wyjciowe bd widoczne
zarwno na monitorze, jak i na ekranie telewizora. Jeeli z jakiego powodu serwer X-w
si nie uruchomi lub nie wywietli niczego na ekranie telewizora, naley poszuka wskazwek na stronie /var/log/XFree86.0.log lub /var/log/xorg.o.log.

236

Transmitowanie multimediw w sieci

Wycinanie reklam
SPOSB

76.

Wycinanie reklam
Do atwego i szybkiego usunicia reklam z nagranych przez nas programw telewizyjnych mona
wykorzysta avidemux.

Zamy, e na komputerze mamy nagrania programw telewizyjnych w formie cyfrowej uzyskane dziki MythTV [Sposb 77.], za pomoc TiVo lub z innego rda. Jedn
z zalet VCR, TiVo oraz innych programw do nagrywania wideo jest to, e mona pomin reklamy w nagranych przez nas programach telewizyjnych. Jeeli program jest
nagrany w formacie cyfrowym, moemy po prostu szybko przewin fragmenty zawierajce reklamy, jednak wymaga to dodatkowego wysiku przy kadym kolejnym ogldaniu. Rwnie korzystajc z metod nagrywania opartych na ramach czasowych, zazwyczaj otrzymujemy nagranie zawierajce fragment poprzedniego lub nastpnego programu,
jeeli nasz zegar rni si od zegara regulujcego nadawanie programw w danej stacji
telewizyjnej. Jeeli planujemy archiwizowanie programu i wielokrotne ogldanie go, najprawdopodobniej bdziemy chcieli wyci wszystkie reklamy i ewentualne fragmenty
innych programw. Jest to przydatne zwaszcza gdy przeksztacamy obraz wideo na
format VCD, SVCD lub DVD, co zostao opisane w podrozdziaach [Sposb 69. i 70.].
Zanim jednak zaczniemy wyobraa sobie konieczno siedzenia przed olbrzymim pulpitem sterowania dwikiem lub przed trzema monitorami z dostpem do zaawansowanego oprogramowania do edycji wideo, naley wyjani, e przy uyciu waciwych
narzdzi wycinanie reklam nie jest ani trudne, ani czasochonne. W kocu, jaki byby
sens usuwania reklam, jeeli czynno ta zajmowaaby wicej czasu ni ich obejrzenie?
Korzystajc z programu do edytowania wideo o nazwie avidemux, a zwaszcza z jego
opcji Scan for black frames, moemy bez wikszego wysiku zlokalizowa i usun reklamy
z naszych nagra.
Pierwszy krok to pobranie i zainstalowanie oprogramowania avidemux. Bdzie on rni
si w zalenoci od uywanej dystrybucji, jednak naley najpierw wej na stron http://
fixounet.free.fr/avidemux/download.html i odnale pakiet skompilowany odpowiednio dla
naszej dystrybucji. Jeeli nie znajdziemy wczeniej skompilowanej wersji, trzeba pobra
z tej strony rdo .tar.gz i postpowa zgodnie z instrukcjami zawartymi w dokumentacji
instalacyjnej tego programu. Jest tylko kilka bibliotek wymaganych przez avidemux, a wrd
nich znajduj si GTK+ oraz glib2.x, libmad, libxml2 i nasm. Wszystkie wymienione biblioteki powinny by dostpne w kadej gwnej dystrybucji Linuksa. Inne biblioteki s
opcjonalne i su tylko poszerzeniu moliwoci obsugi innych formatw wideo i audio
przez avidemux. Warto przeczyta [Sposb 53.], w ktrym omwiono metod wyszukiwania i instalowania na komputerze dodatkowych kodekw oraz bibliotek.
avidemux dziaa rwnie na platformach OSX oraz Windows, wic rwnie
w tych rodowiskach mona usun reklamy. Trzeba tylko pobra odpowiednie
binaria z podanej wczeniej strony.

Po zainstalowaniu programu avidemux, naley uruchomi go z menu lub poprzez wpisanie w konsoli avidemux. Domylny interfejs ma wiele rnych opcji, ale zazwyczaj
wystarczy korzystanie tylko z kilku spord nich. Najpierw naley klikn File/Open

Transmitowanie multimediw w sieci

237

SPOSB

76.

SPOSB

76.

Wycinanie reklam

i wybra w oknie dialogowym wideo, ktre chcemy edytowa. Obsugiwana jest dua
liczba formatw, cznie z DivX, Xvid, MPEG1 i MPEG2, Nuppelvideo i DV (pena lista
dostpna jest na stronie http://fixounet.free.fr/avidemux/doc/en/input.xml.html). avidemux wywietla w gwnej czci okna pierwsz klatk i jeeli chcemy, odtwarzanie mona uruchomi z tego interfejsu.
Kluczem do usunicia reklam z nagranej audycji jest rozpoznanie czarnych klatek. W programach zazwyczaj wykorzystuje si jedn lub dwie czarne klatki do oddzielenia reklamy od waciwej treci programu lub wyznaczenia granic midzy kolejnymi programami.
Zidentyfikowanie tych czarnych ramek pozwoli nam na uycie ich jako wyznacznika
fragmentw do wycicia.
Najprostszym sposobem na usunicie reklam z programu jest zachowanie kolejnoci
chronologicznej. Metoda ta bierze pod uwag to, e rwnie kolejne reklamy mog by
rozdzielane midzy sob seri czarnych klatek. Poniewa nasza audycja najprawdopodobniej nie zawiera w treci adnych czarnych klatek, najatwiej jest przechodzi do poszczeglnych czci audycji, a nastpnie przesuwa si do przodu lub do tyu, aby odnale czarne klatki sygnalizujce nowe reklamy.
Pierwszy krok w procesie usuwania reklam to usunicie wszystkiego, co zostao nagrane
przed rozpoczciem interesujcej nas audycji. Jest to atwiejsze ni usuwanie reklam ze
rodka nagrania, wic warto zacz wanie od tego. Jeeli nasze nagranie zaczyna si wraz
z pocztkiem audycji, mona oczywicie pomin ten krok. Aby usun niechcian zawarto poprzedzajc audycj, naley przesun suwak do miejsca, w ktrym faktycznie
zaczyna si program. Teraz trzeba klikn Play/Search Previous Black Frames (lub wybra
odpowiedni przycisk na dolnym pasku narzdzi), dziki czemu avidemux przeskanuje
wskazany fragment nagrania w poszukiwaniu czarnych klatek. Po znalezieniu czarnej
klatki naley klikn Edit/Set Marker B lub wcisn klawisz ]. Opcja ta wstawia kocowy
znacznik obszaru do wycicia. Nastpnie musimy przesun suwak na pocztek nagrania
i klikn Edit/Set Marker A lub wcisn klawisz [. Opcja ta ustawi pocztkowy znacznik
obszaru do wycicia. Teraz wystarczy wcisn klawisz Delete, a avidemux wykasuje wszystkie klatki pomidzy dwoma znacznikami, pozostawiajc nas na pocztku nagrania.
Teraz mona zabra si do usuwania reklam znajdujcych si w rodku audycji. Naley
przeskoczy o kilka klatek do przodu, aby mie pewno, e nie znajdujemy si akurat
na czarnej klatce, a nastpnie klikn Play/Search Next Black Frame. avidemux przeskoczy
wwczas do miejsca, w ktrym znajduje si kolejna czarna klatka. Naley wstawi w tym
miejscu pocztkowy znacznik (Edit/Set Marker A), a pniej przecign suwak do koca
reklam. Mona byoby oczywicie przeskoczy po prostu do kolejnej czarnej klatki, ale
naley pamita, e rwnie midzy reklamami umieszczane s czarne klatki, wic zajoby to duo wicej czasu. Prociej i szybciej jest przesun suwak a do miejsca, w ktrym znowu nadawana jest interesujca nas audycja. Wwczas naley wybra Play/Search
Previous Black Frame, aby znale koniec pasma z reklamami i w odpowiednim miejscu
umieci znacznik kocowy (Edit/Set Marker B). Aby usun zaznaczony obszar, wystarczy wcisn Delete.

238

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Naley powtrzy opisany krok tyle razy, ile razy reklamy przerywaj program, a do
zakoczenia audycji. Jeeli po napisach koczcych audycj znajduje si jaka niepodana zawarto, naley odszuka czarn klatk, wstawi tam znacznik pocztkowy, a nastpnie przej do koca nagrania, wstawi znacznik kocowy i skasowa wskazany fragment. Po zakoczeniu edytowania naley zapisa zmiany klikniciem File/Save/Save Video.
Po jakim czasie, gdy nabdziemy wicej praktyki, usuwanie reklam bdzie nam zajmowa dosownie chwil.
SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV


Niemal kady w miar nowoczesny komputer moesz, korzystajc z oprogramowania o otwartym kodzie,
zmieni w cyfrowe urzdzenie nagrywajce wideo, ktre moe rywalizowa z TiVo lub nawet przewysza
go pod wzgldem oferowanych moliwoci.

Ludzie maj wiele zaj i nie zawsze mog by w domu, gdy jest nadawany ich ulubiony program. Oczywicie mona sprbowa tak sobie poukada zajcia, aby by w domu
zawsze przed jego rozpoczciem, ale po co a tak komplikowa sobie ycie? Na pewno
wielu czytelnikw syszao o TiVo. To magiczne urzdzenie jest znane jako DVR nagrywajce cyfrowo wybrane przez nas programy telewizyjne i duo atwiej skonfigurowa
je ni VCR. Teraz mona stworzy sobie swoje wasne TiVo przy uyciu komputera i oprogramowania z otwartym kodem rdowym o nazwie MythTV. Instrukcje zamieszczone
w tym podrozdziale dotycz przede wszystkim dystrybucji Fedora Core 4, jednak uytkownik Linuksa nawet ze skromnym dowiadczeniem powinien by w stanie tak zmodyfikowa te instrukcje, eby uzyska moliwo zainstalowania i skonfigurowania MythTV
w wikszoci dystrybucji.

Sprzt
Jedno z pyta najczciej zadawanych przez ludzi chccych zbudowa wasne DVR dotyczy potrzebnego sprztu. Wielu ludzi wierzy, e istnieje magiczna kombinacja sprztu
bijca na gow wszystkie inne, ale to nieprawda. Sprzt potrzebny do zbudowania systemu MythTV zaley gwnie od wysokoci budetu, ktrym dysponujemy, i naszego
gustu. Lista sprztu uytego przez innych uytkownikw do zbudowania swoich systemw
znajduje si na stronie http://pvrhw.goldfish.org/tiki-pvrhwdb.php.
Poniej znajduje si lista, ktra oferuje kilka konkretnych wytycznych:
Procesor
Procesor musi by wystarczajco szybki, eby zdekodowa strumie odtwarzania
wideo. Oznacza to zazwyczaj procesor Pentium III lub nowszy podobnej klasy, czyli
500 MHz lub szybszy. Nadaj si zarwno procesory Intel, jak i AMD, rwnie te
pracujce w trybie 64-bitowym, natomiast warto unika rodziny procesorw VIA,
poniewa zazwyczaj brakuje im ikry niezbdnej do wykonania zadania. Im szybszy
procesor, tym lepszy poziom odtwarzania i tym wicej dziaa system MythTV moe
wykona jednoczenie. Jeeli na przykad korzystamy z karty do przechwytywania
opartej na bttv, jak to zostao wyjanione w podrozdziale [Sposb 73.], potrzebny
bdzie komputer z procesorem nie sabszym ni 1 GHz, jeli planujemy ogldanie

Transmitowanie multimediw w sieci

239

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

telewizji oraz timeshift. Jeeli wykorzystujemy kart Hauppauge WinTV, a wanie


ta karta jest zalecana w niniejszym podrozdziale, mona mie sabszy procesor,
poniewa ta karta wykonuje za nas zadania zwizane z kodowaniem, w ten sposb
dajc procesorowi moliwo wykonywania innych zada, takich jak dekodowanie
do odtwarzania. Jednak szybki procesor skompresuje materia wideo duo
sprawniej (cznie z kompresowaniem zgranych DVD i CD) i zakoczy skanowanie
w poszukiwaniu przerw na reklam w cigu kilku minut od zakoczenia nagrywania.
Pami
MythTV nie jest programem wymagajcym duo pamici. Wicej ni 256 MB pamici
nie daje nam adnych dodatkowych korzyci, oprcz moliwoci jednoczesnego
uruchomienia wielu programw kodujcych.
Dyski twarde
Nie bdzie potrzebny nam bardzo szybki dysk z du iloci pamici podrcznej,
ale raczej z duymi moliwociami przechowywania danych. Powinien sprawdzi
si kady dysk P-ATA lub S-ATA majcy 5400 obrotw albo lepszy. Ilo miejsca
zajmowanego przez proces nagrywania rni si w zalenoci od karty przechwytujcej,
rozdzielczoci i prdkoci transmisji bitw przy nagrywaniu oraz schematu kodowania.
Nie powinnimy by jednak zaskoczeni, widzc pliki o wielkoci 1 GB lub wiksze
zawierajce godzin nagrania. Jeeli korzystamy z karty przechwytywania HDTV
(nieopisywanej w tej ksice), moemy nawet zetkn si z plikami wielkoci 7 GB
zawierajcymi godzin nagrania. Wiele osb konfiguruje swj katalog nagrywania
wideo w partycji Linux Volume Manager, aby mc doda wicej przestrzeni dysku
w pniejszym terminie. Rwnie duo osb wybiera dyski twarde firmy Seagate
lub Hitachi, poniewa wiadomo, e s cichsze ni inne.
Karta wideo
Poniewa dane wyjciowe bdziemy wysya na ekran telewizora, potrzebna jest
nam karta wideo z pen obsug wyjcia telewizyjnego. Wiele osb wybiera karty
NVIDIA opisane w podrozdziale [Sposb 75.]. Niektrych uytkownikw moe
kusi karta ATI ALL-in-Wonder czca moliwo przechwytywania wideo,
jak rwnie obsugiwania wyjcia telewizyjnego. Jednak funkcje tej karty nie s
jeszcze dobrze obsugiwane w Linuksie, wic generalnie nie poleca si tej karty.
Karta przechwytujca
Jak zostao wyjanione w podrozdziale Instalowanie tunera telewizyjnego
[Sposb 73.], karta przechwytujca to urzdzenie pozwalajce na dostrojenie programw
telewizyjnych i przechwycenie strumienia do formatu moliwego do uycia przez nasz
komputer. Sugerowana karta przechwytujca to Hauppauge WinTV z serii 150, 250,
350 lub 500. Karty te maj wbudowan moliwo kodowania, tzn. przeksztacaj
surowy sygna transmitowanej audycji na MPEG2, w ten sposb uwalniajc procesor
od obowizku kodowania wideo. Karty te maj przyzwoite sterowanie zdalne i s
dobrze obsugiwane przez MythTV a karta z serii 500 ma nawet dwa tunery!
Jeeli chcemy przechwytywa audycje HDTV, naley skorzysta z karty obsugujcej
HDTV. Ich lista znajduje si na stronie http://www.pchdtv.com.

240

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Pyta gwna
Wybr pyty gwnej jest zazwyczaj zwizany z mark i modelem uywanego przez
nas procesora, z miejscem dostpnym w obudowie oraz liczb slotw PCI potrzebnych
do umieszczenia kart przechwytujcych. Oznacza to, e jeeli potrzebna jest nam
moliwo nagrania trzech programw telewizyjnych jednoczenie, a mamy tylko
jednotunerowe karty przechwytywania, bdziemy potrzebowa co najmniej trzech
slotw. Pyty gwne ATX bez problemu speniaj to wymaganie, mog jednak
pojawi si problemy w przypadku mikro-ATX w niskiej obudowie.
Obudowa
Wybr obudowy do projektu MythTV to szansa na pokazanie klasy. Niektrzy ludzie
wybieraj podstawowe wysokie obudowy, ktre ukrywaj za telewizorem lub w innym
pokoju. Inni wol stylowe obudowy, ktre mona umieci na pce z pytami i czu si
jak w domu z odbiornikiem oraz VCR. Popularne s obudowy Silverstone oraz Ahanix.
Dwik
Prawie kada karta dwikowa obsugiwana w projekcie ALSA bdzie wsppracowa
z MythTV. Mona skierowa wyjcie dwiku, analogowego lub cyfrowego, do
odbiornika i poczy to urzdzenie z gonikami. Jednym z powodw, dla ktrego
karty przechwytujce Hauppauge s lepsze ni inne jest to, e maj zintegrowane
moliwoci odtwarzania dwiku, co eliminuje konieczno posiadania karty
dwikowej dostosowanej do kadego tunera.
Sprzt komputerowy mona zakupi niemal wszdzie; dwie popularne strony to http://
www.pcalchemy.com oraz http://www.newegg.com.
Na potrzeby tego podrozdziau uyto stosunkowo mocnego (jak na omawiane czynnosci)
sprztu Pentium III 933 MHz, z 256 MB pamici RAM, kart wideo GeForce 4 MX, zdalnie
sterowan kart tunera Hauppauge WinTV PVR-250 oraz dyskiem twardym o pojemnoci
120 GB.

Podstawowe kroki
Zanim wejdziemy w szczegy konfigurowania systemu MythTV, oto podstawowy zarys
koniecznych krokw:
1. Zoenie komputera. Jest to niezbdny element, aczkolwiek nie zostanie opisany
w tym podrozdziale.
2. Zainstalowanie dystrybucji Linuksa z minimalnym zestawem moliwoci. W tym
podrozdziale zostaa wykorzystana Fedora Core 4, ale inne dystrybucje rwnie
mog zosta uyte.
3. Zainstalowanie MythTV oraz reszty potrzebnego oprogramowania. Jeeli czytelnik
korzysta z innej dystrybucji ni opisana w tym podrozdziale, do zainstalowania
wymaganego oprogramowania bdzie musia uy odpowiednich dla tej dystrybucji
narzdzi do zarzdzania pakietami. Jednak konfiguracja systemu powinna by
zasadniczo taka sama jak opisana w tym podrozdziale.

Transmitowanie multimediw w sieci

241

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

4. Skonfigurowanie sprztu, a konkretnie karty przechwytujcej, karty dwikowej


i karty wideo. Opcjonalnie mona rwnie skonfigurowa w tym momencie zdalne
sterowanie, ale ten krok mona wykona w dowolnym momencie.
5. Utworzenie bazy danych MythTV.
6. Utworzenie konta Zap2It, tak aby mona byo uzyska dane wywietlajce programy.
7. Uruchomienie programu konfiguracyjnego MythTV i skonfigurowanie MythTV
zgodnie z uywan kart przechwytujc i telewizj kablow lub napowietrzn.
8. Dodanie do bazy danych najwaniejszych informacji o programach.
9. Skonfigurowanie systemu tak, aby wysya dane wyjciowe na ekran telewizora, a nie
na monitor.
10. Wprowadzenie ostatnich modyfikacji w MythTV oraz w systemie, aby zapewni
pynne dziaanie, wymagajce minimalnego utrzymania.
Teraz przejdmy do dokadnego omwienia poszczeglnych krokw potrzebnych do
skonfigurowania MythTV.

Instalowanie Linuksa Fedora


Na pocztku na komputerze trzeba zainstalowa Linuksa. Pakiet MythTV znajdziemy
w wielu dystrybucjach, jednak na potrzeby tego podrozdziau zostaa uyta wersja Red
Hata o nazwie Fedora Core 4. Naley pamita, e do pomylnego wykonania tego zadania potrzebne bdzie poczenie z internetem, a im szybsze, tym lepiej, poniewa trzeba
zainstalowa bardzo duo rzeczy. Zaczniemy od podczenia systemu do zwykego monitora, majc jednak w dalszych planach zamiar przeczenia go do telewizora analogowego, po skonfigurowaniu wszystkiego innego.
W internecie mona znale wiele instrukcji dotyczcych konfigurowania
MythTV w rnych rodowiskach roboczych i przy uyciu rnych
menederw okna. MythTV zosta stworzony dla KDE, jednak tutaj
skonfigurujemy go dla GNOME.

Obrazy dysku dla Fedory Core 4 mona pobra ze znajdujcego si w pobliu mirrora
RedHata, ktry mona znale na stronie http://fedora.redhat.com/download/mirrors.html.
Aby uproci spraw, naley przeprowadzi czyst instalacj podstawowego desktopu
uytkownika (wymagajcego tylko dwch obrazw pyty FC4 z czterech). Gdy dotrzemy do sekcji podziau dysku na partycje, musimy wybra tryb podziau rcznego, czyli
Manually partition Disk Druid, tak aby mona byo wykroi spor partycj przeznaczon
do przechowywania obrazw wideo z MythTV. W opisanym powyej przykadowym
systemie utworzyem partycj /boot wielkoci 100 MB, partycj swap wielkoi 256 MB,
partycj / wielkoci 10 GB, a pozosta przestrze na dysku przeznaczyem na partycj
/video, w ktrej to MythTV bdzie umieszcza swoje nagrania.
W dalszej czci procesu instalacji pojawi si opcja spersonalizowania
pakietw wybranych do zainstalowania. Jest to dobra okazja do usunicia
wszelkich nadmiarowych pakietw rodowiska graficznego, ktrych
nie bdziemy potrzebowali, takich jak Evolution czy OpenOffice.org.

242

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Wybr systemu plikw ma znaczcy wpyw na MythTV, wic najprawdopodobniej bdziemy chcieli wybra system plikw z kronik. System ext2 nie ma kroniki, wic w razie
jakiego zaamania systemu i wynikajcego z niego ponownego uruchomienia systemu,
przeskanuje wszystkie pliki w partycji /video, aby zweryfikowa ich integralno. Biorc
pod uwag, e wikszo plikw bdzie miaa wielko liczon w gigabajtach, takie skanowanie moe zaj bardzo duo czasu, zwaszcza w przypadku duych partycji. Najlepsz decyzj byby wybr ext3, XFS lub JFS. ext3 nie sprawdza si, gdy dochodzi do
koniecznoci kasowania plikw oraz systemw plikw. Z kolei XFS oraz JFS doskonale
sobie radz z kasowaniem plikw o wielkoci kilku gigabajtw, jednak ex3 jest prawdopodobnie lepiej obsugiwany przez nasz dystrybucj. Podczas instalowania XFS i JFS
mog nawet nie by dostpne. We wspomnianym wczeniej przykadzie, moe okaza si,
e trzeba bdzie pozostawi ostatni 100-gigabajtow partycj /video niesformatowan,
a do momentu zainstalowania naszego systemu, gdy wwczas bd dostpne dodatkowe narzdzia, takie jak xfsutils i ifsutils, ktre dokocz zadanie.
Wielu uytkownikw decyduje si na zarzdzanie partycj /video przy uyciu LVM, co
pozwala im na pniejsze rozszerzanie partycji na inne dyski, bez koniecznoci przeformatowywania oryginalnej partycji /video.
Zaleca si skonfigurowanie staego adresu IP dla urzdzenia MythTV, poniewa zmienianie adresw w locie moe wywoa niepodane skutki, zwaszcza jeeli planujemy
uruchomienie kilku urzdze MythTV dziaajcych jako spjny system. Dobrze jest te
wyczy zapor sieciow oraz SElinux, przynajmniej w czasie pierwszej prby, aby zminimalizowa moliwe problemy, ktre mog zaszkodzi uzyskaniu odpowiednich rezultatw. Na koniec naley upewni si, e strefa czasowa zostaa ustawiona prawidowo,
tak aby dane wytyczne programw byy zgodne z czasem rzeczywistym (w przeciwnym
razie bdziemy nagrywa bdne programy). Teraz trzeba pozwoli na dokoczenie instalacji, a nastpnie ponownie uruchomi maszyn.

Konfigurowanie Fedory
Po ponownym uruchomieniu maszyny zostaniemy powitani przez narzdzie firstboot.
Pierwsz wan stron dla naszej konfiguracji jest strona okrelajca dat i godzin. Co
prawda ustawilimy ju stref czasow, ale teraz trzeba tak ustawi zegar systemowy, aby
zsynchronizowa si z serwerem czasu w internecie.
Krok ten jest bardzo wany, jeeli chodzi o ustawienie dokadnego czasu. Jeeli nie skonfigurujemy go odpowiednio, moe szybko zacz traci stabilno, co w efekcie moe skoczy si przerywaniem nagrywania na przykad pi minut przed kluczowym momentem
danego programu telewizyjnego. Naley ustawi czas w zakadce Date and Time w miar
najdokadniej, a nastpnie przej do zakadki Network Time Protocol. W tej zakadce naley
oznaczy kratk Enable Network Time Protocol. Wskazane serwery czasu powinny by wystarczajce na nasze potrzeby.
Nastpnie firstboot poprosi o ustawienie parametrw wywietlacza. Najlepiej wybra
rozdzielczo 1024x768. W tym momencie ustawiona rozdzielczo nie jest wana, poniewa bdziemy z niej korzysta tylko chwilowo wszystko, co dotyczy telewizora,

Transmitowanie multimediw w sieci

243

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

zostanie ponownie skonfigurowane w pniejszym czasie. Kolejny krok to utworzenie


normalnego konta uytkownika. Warto utworzy uytkownika o nazwie mythtv, z ktrego bdziemy korzysta do uruchamiania MythTV. Zostaniemy poproszeni rwnie
o przetestowanie naszej karty dwikowej, wic naley postpowa zgodnie z instrukcjami i upewni si, e faktycznie dziaa. Nastpnie trzeba zakoczy dziaanie firstboot
i przyjrze si kocowemu etapowi startowania systemu.
Gdy pojawi si ekran logowania Fedory Core, naley zalogowa si do systemu jako
uytkownik mythtv. Poniewa bdziemy sporo korzysta z aplikacji terminala w procesie konfiguracyjnym, naley uruchomi j poprzez wybranie z menu Aplikacje/Narzdzia
systemowe/Terminal.

Aktualizowanie Fedory
Zaleca si pobranie i zainstalowanie wszystkich dostpnych aktualizacji. Jeeli jednak zaley nam na zaoszczdzeniu czasu, moemy ograniczy si tylko do kilku najpotrzebniejszych albo w ogle zrezygnowa z tego kroku. Jeeli jednak mamy czas i szerok przepustowo, warto w peni skorzysta z aktualizacji. Mona uy do tego narzdzia up2date
(naley klikn czerwone byszczce kko ze znakiem wykrzyknika na pasku narzdzi)
lub narzdzia wiersza polece yum. yum przyda si bardzo przy instalowaniu skadnikw
MythTV, wic mona si z nim zapozna ju teraz. W tym celu naley sta si uytkownikiem root i wpisa:
# yum upgrade

Po procesie przetwarzania zalenoci zostaniemy poinformowani na temat zaktualizowanych pakietw gotowych do zainstalowania i trzeba bdzie potwierdzi ch kontynuacji. Dlatego naley wpisa y i wcisn Enter, a nastpnie uda si na przeksk. Im
wicej czasu mino od wydania oryginalnej wersji Core 4, tym wicej pakietw wymaga
aktualizacji. Naley zwrci szczegln uwag na to, czy zosta zainstalowany nowy pakiet jdra, poniewa najlepiej korzysta z najnowszej dostpnej poprawki do jdra, zarwno z powodw bezpieczestwa, jak i dostpnoci niezalenych moduw jdra, ktre
bd potrzebne do zakoczenia konfigurowania MythTV. Zakadajc, e zostao zainstalowane nowe jdro, naley ponownie uruchomi system, aby pracowa ju w nowym
jdrze.

Konfigurowanie niezalenego repozytorium MythTV


Teraz trzeba bdzie skonfigurowa narzdzie yum, tak aby potrafio uzyska dostp do
repozytorium pakietw RPM zawierajcego wszystkie niezbdne elementy MythTV i ich
zalenoci. Wszystko, co nam potrzebne, znajdziemy w repozytorium Axel Thimms
ATrpms pod adresem http://atrpms.net. Najpierw naley zainstalowa jako root klucz do
pakietw ATrpms, ktry zweryfikuje autentyczno danych pakietw:
# rpm -import http://atrpms.net/RPM-GPG-KEY.atrpms

244

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Nastpnie trzeba doda plik konfiguracyjny yum o nazwie atrpms.repo w katalogu /etc/
yum.repos.d, zawierajcy nastpujce informacje:
[atrpms]
name=ATrpms for Fedora Core $releasever stable
baseurl=http://apt.atrpms.net/fedora/$releasever/en/$basearch/at-stable
gpgcheck=1
enabled=1

Instalowanie MythTV
W tym momencie jestemy gotowi do pobrania wszystkich pakietw MythTV. Dziki
automatycznemu uwzgldnianiu zalenoci oraz dziki narzdziom instalacyjnym, takim
jak yum, wykonanie tego zadania sprowadza si do wpisania jako root jednowierszowego
polecenia, a nastpnie do wygodnego usadowienia si w fotelu i przygldania si wykonywanym dziaaniom:
# yum install mythtv-frontend mythtv-backend mythtv-themes

To wystarczy, aby pobra i zainstalowa gwne pakiety MythTV, tematy oraz wszystkie
wymagane zalenoci. W zalenoci od szybkoci poczenia sieciowego, moe to by dobra okazja na przygotowanie sobie napoju albo nawet na ucicie sobie krtkiej drzemki,
jeeli korzystamy z poczenia wdzwanianego.
Jeeli chcielibymy si dowiedzie, od wykonywania czego uratoway nas pakiety ATrpms,
mona zapozna si z oficjaln dokumentacj napisan przez Roberta Kulagowskiego ze
strony http://mythtv.org/docs/mythtv-HOWTO.html. Korzystajc z niezalenego repozytorium,
unikamy koniecznoci kompilowania czegokolwiek oraz martwienia si o zalenoci. Jeeli
jednak kto woli korzysta bezporednio z kodu rdowego, to lektur obowizkow
do przeprowadzenia kompilacji s instrukcje Roberta Kulagowskiego.
Po automatycznym pobraniu i zainstalowaniu tych wszystkich pakietw, instalacji wymagaj kolejne elementy. Bdzie potrzebnych kilka moduw jdra niedostpnych w gwnym drzewie jdra. Moduy te mona znale w repozytorium ATrpms w postaci atwych
do zainstalowania pakietw. Karta wideo NVIDIA wymaga pakietw moduu jdra
nvidia-graphics, karta przechwytujca WinTV PVR wymaga moduu jdra ivtv, natomiast
sterowanie zdalne wymaga moduu jdra lirc.
Aby uzyska wszystkie wymagane moduy jdra, naley wykona ponisze polecenie jako
root (uycie w tych poleceniach `uname -r` ma zapewni przechwycenie moduu odpowiedniego dla naszego jdra):
# yum install nvidia-graphics7174-kmdl-`uname -r` \
nvidia-graphics7174 ivtv-kmdl-`uname -r` \
ivtv lirc-kmdl-`uname -r` lirc

Teraz mamy ju zainstalowane w systemie cae potrzebne oprogramowanie, wic moemy zabra si za konfigurowanie go.

Transmitowanie multimediw w sieci

245

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

Konfigurowanie moduw systemowych


Naley zmodyfikowa odrobin plik /etc/modprobe.conf, aby poinformowa system o dostpnych urzdzeniach i odpowiednich do nich sterownikach. W przypadku PVR-250, jego
sterowania zdalnego oraz karty wideo, naleaoby wprowadzi takie zmiany (fragmenty
nvidia mog by ju wstawione, jeeli zostay zainstalowane pakiety nvidia-graphics):
# ivtv
alias char-major-81 videodev
alias char-major-81-0 ivtv
alias tveeprom tveeprom-ivtv
alias msp3400 msp3400-ivtv
alias tuner tuner-ivtv
# lirc
alias char-major-61 lirc_i2c
install lirc_i2c /sbin/modprobe ivtv; /sbin/modprobe --ignore-install lirc_i2c
# nvidia kernel module
alias char-major-195 nvidia-1_0-7174
alias nvidia nvidia-1_0-7174

Po wprowadzeniu powyszych zmian, trzeba przebudowa zalenoci moduw:


# /sbin/depmod -ae

Konfigurowanie karty NVIDIA


Nastpnie naley zmieni konfiguracj X-w i przeczy si na sterownik nvidia (do tego momentu korzystalimy ze sterownika nv z otwartym kodem rdowym, ktry nie
radzi sobie w kluczowych dziedzinach, takich jak dekodowanie, tak dobrze jak wasny
sterownik binarny NVIDIA). Pakiet ATrpms utworzy waciwy plik konfiguracyjny
oparty na istniejcej konfiguracji, wic przeczenie sterownikw to stosunkowo bezbolesny proces. Naley zrobi kopi zapasow aktualnej konfiguracji jako uytkownik root,
a nastpnie wstawi konfiguracj xorg.conf.nvidia w odpowiednie miejsce:
# cd /etc/X11
# mv xorg.conf xorg.conf.nv
# mv xorg.conf.nvidia xorg.conf

Teraz trzeba ponownie uruchomi serwer X-w. Wszystkie otwarte programy zakocz
swoje dziaanie w momencie przeadowania serwera X-w, wic naley zapisa wszelkie
niedokoczone sprawy, a nastpnie wybra kombinacj klawiszy Ctrl+Alt+Backspace. Wkrtce pojawi si okno NVIDIA, a nastpnie zachta logowania. Naley si ponownie zalogowa i dalej kontynuowa adowanie i testowanie sterownikw dla PVR-250.

Konfigurowanie karty przechwytujcej


Aby przygotowa PVR-250 do uywania przez MythTV, trzeba zaadowa sterownik ivtv prostym uyciem modprobe:
# /sbin/modprobe ivtv

Jeeli chcemy monitorowa cay proces, naley przejrze plik /var/log/messages. Sterownik
ivtv jest teraz na tyle rozbudowany, e powinien rozpoznawa wszystkie PVR-250 na
rynku i automatycznie poprawnie je konfigurowa. Naley podczy anten lub kabel

246

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

do koncentrycznego wejcia do PVR-250, a nastpnie przetestowa funkcjonalno karty


przechwytujcej przy uyciu cat i mplayer:
$ cat /dev/video0 > pliktestowy.mpg
(hit ctrl-c to stop capture after a few seconds)
$ mplayer pliktestowy.mpg

Jeeli podczas testu przechwytywania nie uzyskamy dobrego dwiku


i obrazu wideo, naley uruchomi narzdzie ptune-ui.pl, ktre pozwoli
na zmodyfikowanie ustawie wideo podczas bezporedniego odtwarzania
wideo przez MPlayer z /dev/video0. Wwczas mona zmienia kanay i inne
parametry w poszukiwaniu zadowalajcego sygnau.
$ /usr/lib/ivtv/ptune-ui.pl &
$ mplayer /dev/video0

Naley rwnie zauway, e do testowania karty korzystamy z mplayer.


Wyjcie generowane przez sterownik ivtv to standardowy strumie MPEG2,
nie surowe wideo, wic programy takie jak xawtv czy zapping nie bd
dziaa.

Konfigurowanie zdalnego sterowania


Jeeli jestemy zadowoleni z ustawie karty tunera, naley zaadowa wymagane moduy
lirc i przetestowa funkcjonalno sterowania zdalnego:
#
#
#
#
#

/sbin/modprobe lirc_i2c
wget http://wilsonet.com/mythtv/lircd-g3.conf.txt
mv lircd-g3.conf.txt /etc/lircd.conf
/sbin/chkconfig lircd on
/sbin/service lircd start

Warto zauway, e istniej trzy rne wersje sterowania zdalnego, ktre byy jak dotd
doczane do kart PVR-250, a cytowany kod to najnowsza wersja. Pliki konfiguracyjne
odpowiednie dla dwch starszych wersji mona znale w /usr/share/doc/ivtv_*. Teraz
naley uruchomi program irw, nakierowa pilota na odbiornik PVR-250 i wcisn kilka
dowolnych przyciskw. irw powinien wywietli tekst odpowiadajcy wybranym przyciskom.
$ /usr/bin/irw
00000000000017e1 00
00000000000017e1 00
00000000000017d0 00
00000000000017d0 00
(control-c to stop)

CH- hauppaugegrey
CH- hauppaugegrey
VOL+ hauppaugegrey
VOL+ hauppaugegrey

Jeeli wspomniane dane wyjciowe wygldaj odpowiednio, mona dorzuci przycisk


funkcyjny odwzorowujcy plik dla lirc do kontrolowania MythTV:
$
$
$
$

wget http://wilsonet.com/mythtv/lircrc-haupgrey-g3.txt
mkdir ~/.mythtv
mv lircrc-haupgrey-g3.txt ~/.mythtv/lircrc
ln -s ~/.mythtv/lircrc ~/lircrc

Transmitowanie multimediw w sieci

247

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

Ostatnia linia dowizuje symbolicznie plik konfiguracyjny do lokalizacji, w ktrej xine


i mplayer oczekuj odnale plik odwzorowujcy lirc. Plik zawiera rwnie ustawienia
dla tych programw. Ponadto niektre pluginy MythTV korzystaj z tego pliku przy wypenianiu obowizkw opisanych w dalszej czci podrozdziau.
Dostpne s rwnie pliki lirc dla dwch wczeniejszych wersji sterowania
zdalnego Hauppauge. Plik konfiguracyjny drugiej generacji jest umieszczony
pod adresem http://wilsonet.com/mythtv/lircrc-haupgrey.txt.
Plik drugiej generacji powinien pracowa rwnie z wikszoci plikw
kontroli zdalnej pierwszej generacji, jednak uytkownicy korzystajcy z tych
dawniejszych wersji zdalnego sterowania mog by zmuszeni do przeszukiwania
internetu (lub korzystania z listy mailowej lirc), aby uzyska plik konfiguracyjny.

Tworzenie bazy danych MythTV


Kolejny krok to skonfigurowanie samego MythTV. Ustawienia konfiguracyjne i inne dane
MythTV s przechowywane w bazie danych MySQL, wic trzeba bdzie j przygotowa
jeszcze zanim zaczniemy konfigurowa MythTV.
Standardowe parametry konfiguracyjne MySQL w Fedorze Core powoduj, e baza nie
wsppracuje optymalnie z MythTV. Aby zwikszy efektywno, naley skonfigurowa kilka z tych parametrw, jeszcze przed uruchomieniem MySQL. W tym celu musimy
zmodyfikowa plik /etc/my.cnf i doda w sekcji [mysqld] pliku nastpujce opcje konfiguracyjne:
key_buffer = 16M
table_cache = 128
sort_buffer_size = 2M
myisam_sort_buffer_size = 8M
query_cache_size = 16M

Po wprowadzeniu zmian trzeba ustawi MySQL tak, aby adowaa si przy starcie systemu, a nastpnie j uruchomi:
# /sbin/chkconfig mysqld on
# /sbin/service mysqld start

Musimy ustali haso dla mysqlroot, zastpujc ROOT_PWD wybranym przez nas hasem:
# mysql -u root mysql
mysql> UPDATE user SET Password-PASSWORD(ROOT_PWD) WHERE user=root;
mysql> FLUSH PRIVILEGES;
mysql> quit

Nastpny krok to utworzenie i uzupenienie bazy danych MythTV (o nazwie mythconerg)


pocztkowymi danymi:
$ mysgl -u root -p < /usr/share/doc/mythtv-*/database/mc.sql
(enter the password you just set above when prompted)

248

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Bezporednie konfigurowanie danych w Zap2it


PVR (ang. Personal Video Recorder), w ktrym nie ma moliwoci sprawdzenia programu,
nie jest niczym wicej ni VCR. Jednak PVR z dobrze ustawionymi danymi rdowymi
pozwala na automatyczne dostosowywanie listy zaplanowanych programw.
Jeeli dobrze si zastanowimy, stanie si dla nas oczywiste, e PVR potrzebuje tych danych rdowych. Ale jak mona mu je dostarczy w formacie czytelnym dla komputera?
Przed kwietniem 2004 roku MythTV korzysta z projektu o nazwie xmltv (http://xmltv.org),
ktry obejmowa wiele programw zwanych konwerterami obrazu oraz format XML opisujcy szczegy programu, takie jak ramy czasowe, tytuy, kana itp. Konwertery obrazu uzyskiway nieprzetworzone dane i umieszczay je w formacie XML na kilka rnych
sposobw. Konwerter obrazu dziaajcy w Stanach Zjednoczonych wykonaby nastpujcy algorytm:
Connect to http://www.zap2it.com and request a one-page listing of all
programs for day x on channel y. Repeat for all channels in your zip code and
for days 1 to 13.

Jak atwo si domyli, metoda ta jest bardzo nieskuteczna. Zap2it musia wygenerowa
dynamiczn stron WWW dla kadego zapytania, wic gdy mamy typow kablwk z 50
kanaami i pomnoymy to przez 13 dni, uzyskujemy wynik 650 stron WWW dla kadego
uytkownika. Uytkownicy zazwyczaj uaktualniali swoje listingi raz dziennie, wic dawao
to kolejnych 50 200 stron WWW z uaktualnionymi listingami na dany dzie i kady
kolejny, ktry zosta dodany.
Jeeli dodamy jeszcze do tych wylicze skal popularnoci MythTV w Stanach Zjednoczonych, od razu wida, jak bardzo obciony by serwer Zap2it.com, zwaszcza midzy
pnoc a pit rano.
W takiej sytuacji danie uytkownikom niekomercyjnym moliwoci uzyskiwania danych
listingu (Data Direct) w formacie XML, ktry nie potrzebuje generowania dynamicznej strony WWW ze strony Zap2it ani podatnego na bdy procesu wydubywania informacji ze strony (ang. screen scraping, dosownie zeskrobywanie z ekranu) uytkownika, byo korzystne dla wszystkich zainteresowanych.
Zap2it zdobywa demograficzne informacje o uytkownikach, a uytkownicy uzyskuj
poszerzone, wysokiej jakoci listingi zawierajce dane i wskazwki. Zap2it oferuje szczegowe tytuy i opisy epizodw niedostpne metod wydubywania informacji.
Uytkownicy mieszkajcy poza granicami Stanw Zjednoczonych powinni
skorzysta z konwertera obrazw XMLTV. Na stronie WWW XMLTV
znajduje si lista obsugiwanych krajw.

Zanim zaczniemy konfigurowa MythTV, naley utworzy konto w Zap2it. Trzeba w tym
celu wej na stron http://labs.zqp2it.com i klikn New User? Sign Up. Naley wpisa
wymagane dane, a jako Certificate Code uy kodu ZIYN-DQZO-SBUT. Konto zostanie od razu aktywowane i wyganie po trzech lub czterech miesicach. MythTV bdzie pokazywa
w rnych oknach statusu dat wyganicia naszego konta. Mniej wicej tydzie przed

Transmitowanie multimediw w sieci

249

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

dat wyganicia konta Zap2it wyle na nasz adres elektroniczny wiadomo przypominajc. Gdy bdziemy przedua wano konta, zostanie nam zadanych klika dodatkowych pyta w formie ankiety. Zap2it informuje, e od uytkownikw prywatnych
nie s pobierane adne opaty za udzielenie dostpu do podrcznikw z poradami.
Po wpisaniu Zip Code oraz skonfigurowaniu listy naszych kanaw mona zamkn
stron WWW Zap2it.
Jeeli nie mamy danego kanau, naley upewni si, e informacja ta zostaa
uwzgldniona na koncie Zap2it, poniewa MythTV bdzie korzysta z tych
informacji do ustalania harmonogramu programw.

Konfigurowanie MythTV
Teraz, gdy mamy ju gdzie przechowywa ustawienia i skonfigurowalimy konto Zap2it,
naley uruchomi narzdzie konfigurujce serwer wykorzystywany przez MythTV:
$ mythtv-setup

Przy pierwszym uruchomieniu mythtv-setup zostaniemy poproszeni o wybranie odpowiadajcego nam jzyka oraz o podjcie decyzji, czy chcemy wyczyci istniejc konfiguracj naszych kart przechwytujcych oraz informacje o kanaach. Naley odpowiedzie
na oba pytania twierdzco (ale tylko za pierwszym razem, przy kolejnych uruchomieniach
tylko w momencie, gdy mamy dobry powd, eby zmieni konfiguracj kart przechwytujcych lub wybr kanaw).
Po pytaniach pocztkowych bdziemy musieli dokona wyboru piciu pozycji:
General;
Capture cards;
Video sources;
Input connections;
Channel editor.
Do poruszania si po interfejsie mona skorzysta ze strzaek na klawiaturze, a do wybierania konkretnych elementw ze spacji. Naley wykonywa te kroki po kolei, poniewa niektre z pniejszych wymagaj wykonania wczeniejszych krokw.
MythTV nie obsuguje myszy zostao zaprojektowane z zaoeniem,
e bdziemy korzysta z pilota.

Poniewa w tej chwili mamy tylko jeden system, na ktrym jest uruchomione MythTV,
mona zostawi domylne ustawienia IP i portu ze strony pocztkowej, czyli 127.0.0.1.
Jeeli planujemy korzystanie z wielu systemw MythTV (wiele programw dziaajcych
w tle albo jeden program dziaajcy w tle i kilka zdalnych interfejsw), trzeba bdzie wpisa adres IP interfejsu Ethernet maszyny do obu tych pl.

250

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Kolejna strona pozwala na ustawienie cieek do katalogw, w ktrych MythTV bdzie


przechowywa nagrane programy oraz wskazanie partycji, ktra bdzie uywana przez
bufor telewizji. Naley upewni si, e te cieki dziaaj, i e nasz uytkownik zalogowany do MythTV ma prawa ich odczytu i zapisu. W przeciwnym razie bdziemy mie
wiele problemw (MythTV po prostu nie bdzie dziaa). Domylne ustawienia wielkoci dla bufora Live TV oraz bufora Minimum free Life TV powinny by wystarczajce. Poza
tym naley chwilowo pomin opcj Save original files after transcoding, poniewa temat
transkodowania zostanie omwiony przy innej okazji.
Na stronie Global Backend Setup naley okreli format telewizji, co powinno mwi samo
za siebie. Na razie najlepiej bdzie ustawi format VBI na None, z uwagi na to, e VBI
(znany rwnie jako teletekst) nie jest jeszcze dobrze obsugiwany przez sterownik ivtv.
Wybr tabeli czstotliwoci kanaw powinien by oczywisty, chocia czasem warto
wyprbowa kilka rnych, jeeli nie jestemy pewni, ktra bdzie najlepsza dla naszego
regionu. Naley uruchomi program bez balansowania czasu dla listingw XMLTV oraz
z nieusunitymi zaznaczeniami ostatnich opcji na stronie.
W chwili obecnej na stronie Shutdown/Wakeup Options naley zostawi domylne wartoci, poniewa konfigurowanie ich moe by bardzo skomplikowane. Mona tak ustawi
odbiornik MythTV, aby hibernowa si, gdy nie jest uywany, jednak radz zrobi to innego dnia, a na pocztku skupi si na uzyskaniu podstawowej dziaajcej funkcjonalnoci.
Rwnie opcje na kilku ostatnich stronach w nagwku General powinny by chwilowo
wystarczajce.
W drugiej sekcji, Capture cards, naley ustawi now kart typu MPEG2 Encoder card (jeeli
nasza karta ma koder MPEG2, w przeciwnym razie musimy wybra ustawienie odpowiednie dla naszej karty), urzdzenie wideo o ciece /dev/video0 oraz Tuner 0 dla domylnego wejcia.
W trzeciej sekcji, Video sources, naley skonfigurowa spis listingw kanau. Naley zacz
od nadania mu nazwy opisowej, a nastpnie wybrania konwertera listingw odpowiednich dla naszego regionu. Jeeli jestemy w Ameryce Pnocnej, uyjemy konwertera obrazw DataDirect. Naley wpisa nazw uytkownika i haso w mythtv-setup. Wszyscy
Ci, ktrzy mieszkaj poza Ameryk Pnocn, powinni poszuka szczegowych informacji w oficjalnej dokumentacji MythTV, a konkretnie na stronie http://mythtv.org/docs/
mythtv-HOWTO-9.html.
W czwartej sekcji, Input Connections, naley przypisa nasz list kanaw do wyjcia na
karcie przechwytujcej, a konkretnie naley przypisa wanie utworzon list kanaw
do wyjcia na naszej PVR-250 oznaczonego jako Tuner 0. Trzeba wybra [MPEG:/dev/
video0](Tuner 0)/(None) i przycisn Spacj, a nastpnie w ten sam sposb przypisa rdo
wideo. Poza tym interesuje nas ju tylko jedna opcja, a mianowicie kana pocztkowy.
Naley ustawi go na kana dziaajcy w stu procentach (tak aby tuner wraca do tego
kanau po ponownym uruchomieniu).

Transmitowanie multimediw w sieci

251

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

Ostatnia sekcja, Channel Editor, nie wymaga pki co adnych modyfikacji. Nie bdziemy
mie adnych danych, dopki operacja mythfilldatabase nie przebiegnie prawidowo. Naley
j wykona zaraz po wyjciu z mythtv-setup.

Pierwsze uruchomienie MythTV


Teraz naley wyj z mythtv-setup, po raz pierwszy uruchomi wewntrzny serwer i,
zgodnie z sugesti wywietlon w konsoli w komunikacie wyjciowym, uruchomi mythfilldatabase:
$ mythbackend &
$ mythfilldatabase

Uruchamianie mythfilldatabase moe by procesem czasochonnym, w zalenoci od liczby kanaw na naszej licie, prdkoci poczenia internetowego oraz wydajnoci konwertera listingw. Pnocnoamerykaski konwerter obrazw jest niezwykle szybki, poniewa Zap2it zapewnia obsug XML-a, natomiast wiele innych konwerterw obrazu
zdobywa dane i wytyczne przez wydubywanie z ekranu stron WWW zawierajcych
listingi. Mora caej tej historii to: by cierpliwym!
Serwer mythbackend powinien ju dziaa w istniejcym oknie terminala, wic naley
otworzy kolejne, aby uruchomi aplikacj mythfrontend:
$ mythfrontend

Zalet uruchamiania interfejsu i programu dziaajcego w tle w dwch rnych oknach


jest to, e wiadomo, ktre komunikaty w konsoli s danymi wyjciowymi konkretnego
komponentu gdy co pjdzie nie tak, bdziemy mie pojcie dlaczego.
Aby przetestowa wstpn funkcjonalno, mona po prostu sprbowa wczy Live TV.
Warto rwnie pobawi si pilotem i zobaczy, czy wszystko dziaa. Na pierwszej stronie,
ktra si pojawi po uruchomieniu mythfrontend, znajdziemy u gry w menu Watch TV.
Aby wczy tryb Live TV, wystarczy wcisn przycisk Play w menu albo OK na pilocie. Przyciski oznaczajce kana w gr i kana w d pozwol na zmienianie kanaw,
tak jak w normalnym telewizorze, natomiast przyciski Pause, FF i Rew umoliwi
nam wykonywanie dziaa, ktre w normalnym telewizorze s prawie na pewno niemoliwe.
Zakadajc, e Live TV i pilot dziaaj tak, jak powinny, mona by prawie pewnym, e
wszystko inne rwnie jest na swoim miejscu. Mona teraz zaj si konfigurowaniem
procesu serwera mythbackend, tak aby uruchamia si automatycznie przy starcie systemu, jak rwnie dodatkowymi przygotowaniami do podczenia systemu do telewizji. Oto polecenie, ktre pozwoli na ustawienie uruchamiania mythbackend przy starcie systemu:
# /sbin/chkconfig mythbackend on

252

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Automatyczne logowanie i uruchamianie MythTV


Aby mythfrontend uruchamia si automatycznie po zalogowaniu uytkownika mythtv,
naley klikn Desktop/Preferences/More Preferences/Sessions. Nastpnie w zakadce Startup
Programs trzeba doda mythfrontend. Umoliwi to uruchamianie MythTV po zalogowaniu
si do GNOME, ale byoby idealnie, gdyby dao si posun jeszcze o krok dalej, czyli aby
domylny uytkownik (mythtv) by automatycznie logowany do rodowiska roboczego.
Aby uzyska moliwo automatycznego logowania przy starcie systemu, naley wprowadzi kilka zmian w GNOME Display Manager (GDM). Musimy uruchomi narzdzie
gdmsetup jako root:
# gdmsetup

W pierwszej zakadce gdmsetup nazwanej General zobaczymy fragment zatytuowany


Automatic login. Naley zaznaczy pole obok Launch a user automatically on first bootup,
a nastpnie w wyskakujcym oknie wybra uytkownika mythtv.
Opcjonalnie, jeeli nie jestemy jeszcze wystarczajco dobrze zaznajomieni
z Linuksem i podejrzewamy, e pokrcilimy co a do tego stopnia,
e automatyczne logowanie zawiesi komputer, moemy zrezygnowa
z uywania Automatic Login. Zamiast tego moemy zdecydowa si na opcj
Timed Login, dziki czemu uytkownik mythtv bdzie automatycznie logowany
po kilku sekundach od pojawienia si po raz pierwszy okna logowania. W ten
sposb mona omin logowanie jako uytkownik mythtv, a zamiast tego
zalogowa si jako root, aby (miejmy nadziej) naprawi to, co zepsulimy.

Podczanie telewizora
W tym momencie mamy system skonfigurowany na tyle, e moemy go podczy do
telewizora i kontrolowa za pomoc pilota, siedzc wygodnie na kanapie (oraz (lub) za
pomoc bezprzewodowej klawiatury). Trzeba tylko wprowadzi kilka drobnych zmian
w konfiguracji X-w, aby karta wideo wiedziaa, e jest podczona do telewizora, a nie
do monitora komputera. Naley doda dodatkowe opcje do sekcji Device w pliku /etc/
X11/xorg.conf (przy zaoeniu, e mamy poczenie S-Video i NTSC-M):
# TV Out Setup
Option "TVStandard" "NTSC-M"
Option "TVOutFormat" "SVIDEO"
Option "ConnectedMonitor" "TV"

Naley zmodyfikowa t sekcj zgodnie z nasz lokalizacj i typem podczenia. Warto


przeczyta Appendix J do pliku tekstowego README sterownika NVIDIA dostpny przez
ftp://download.nvidia.com/XFree86/Linux-x86/1.0-7174/README.txt. Teraz trzeba wyczy
komputer, podczy go do telewizora i gotowe!
NVIDIA czsto tworzy nowe wersje sterownika dla Linuksa, wic naley
upewni si, e pobrana przez nas dokumentacje jest waciwa dla uywanego
przez nas sterownika.

Transmitowanie multimediw w sieci

253

SPOSB

77.

SPOSB

77.

Tworzenie wasnego DVR za pomoc MythTV

Po podczeniu systemu do telewizora trzeba jeszcze wprowadzi kilka modyfikacji.


Przede wszystkim bdziemy chcieli uruchamia narzdzie nvidia-settings z okna terminala:
$ nvidia-settings

Dziki temu narzdziu mona dostosowa dane wyjciowe komputera do wielkoci wywietlacza na ekranie telewizora. Warto rwnie ustawi filtr migotania. Mona go troch
podkrci, aby wyeliminowa cz migotania zwizanego z wywietlaniem danych wyjciowych z komputera, przeznaczonych dla skanujcego progresywnie monitora komputera, na wywietlaczu z przeplotem. Jeeli satysfakcjonuj nas nasze ustawienia, naley
po prostu wyj z nvidia-settings. Aby te ustawienia byy stosowane przy kolejnym uruchomieniu maszyny (a nie powinny by stosowane zbyt czsto), naley uda si do narzdzia Sessions, uywanego ju wczeniej do ustawiania automatycznego uruchamiania
mythfrontend, i doda nastpujc lini:
nvidia-settings --load-config-only

Ostateczne dostrajanie MythTV


Teraz naley otworzy okno mythfrontend Utilities/Setup/Setup, aby zmodyfikowa jeszcze kilka ustawie. Na trzeciej stronie w sekcji General mona ustawi domylne poziomy gonoci dwiku zgodnie z naszymi preferencjami. Na ostatniej stronie tej sekcji
warto wczy opcj Automatically run mythfilldatabase, aby dane byy odwieane co noc.
W sekcji Appearance mona wybra rne tematy dla interfejsu uytkownika (ja preferuj
G.A.N.T.), rne style Qt (rne style przyciskw i menu moim ulubionym jest Keramik), wielko czcionki, kilka rnych ukadw graficznych menu oraz inne ustawienia.
W TV Settings/General mona dostosowa takie parametry nagrywania, jak ustawienia
iloci czasu przed rozpoczciem i po zakoczeniu interesujcego nas programu, ktry
rwnie zostanie nagrany.
W TV Settings/Playback mona wczy filtr usuwajcy przeplot, zwaszcza jeeli nagranie wydaje si by pene poszarpanych linii w szybko zmieniajcych si scenach, mona
dostosowa automatyczne przeskakiwanie reklam, zachowanie przy wyszukiwaniu, skanowanie caego obrazu telewizyjnego, jeeli to konieczne, oraz zmieni temat i czcionki
wywietlane na ekranie (ja preferuj Isthmus i FreeSans).
Ostatni sekcj, na ktr warto zwrci uwag jest TV Settings/Recording Properties. Mona
tam dostosowa prdko przesyania bitw oraz rozdzielczo przy nagrywaniu (a nawet transkodowanie, jeeli chcemy). Nisza prdko transmisji bitw oznacza, e mniej
miejsca bdzie potrzeba do przechowywania nagrania, wic warto dostosowa te ustawienia tak, aby uzyska optymaln kombinacj zuycia przestrzeni i jakoci wizualnej.
W pliku keys.txt znajdziemy list polece i klawiszy, do ktrych zostay
przypisane.

254

Transmitowanie multimediw w sieci

Tworzenie wasnego DVR za pomoc MythTV

Planowanie nagrywania
Po skonfigurowaniu wszystkich opcji zgodnie z naszymi preferencjami, mona przej
do ustalania harmonogramu nagrywania. W interfejsie mythfrontend naley klikn Manage/
Schedule, dziki czemu znajdziemy si w oknie, w ktrym moemy wskaza interesujcy
nas program. Moemy to zrobi, korzystajc z elektronicznego programu telewizyjnego
(Guide), przez przeszukiwanie alfabetycznej listy wszystkich znanych programw (Finder),
przy uyciu dowolnej liczby metod wyszukiwania (Search) oraz rcznie, okrelajc czas
i kana, z ktrego ma zosta nagrana audycja (Custom Record).
Oczywicie wybierajc program do nagrania, moemy nakaza nagranie tylko jego albo
skorzysta z dowolnej liczby algorytmw powtarzania, zaczynajc od record only in the
timeslot on this channel on this day of the week, a koczc na record this show any time it
comes to a channel. Programator MythTV ma wiele zaawansowanych moliwoci, a poniewa wikszo konwerterw udostpnia spis programw na 12 14 dni do przodu,
czasami warto da mu szersze pole manewru przy decydowaniu, kiedy co nagra. Zamiast myle musz nagra kana X o godzinie Y, aby obejrze program xyz, naley wzi pod uwag, e tak naprawd chcemy po prostu nagra program xyz i pozwoli, aby programator sam wymyli jak to zrobi. Jest to szczeglnie uyteczne, gdy dwa
interesujce nas programy s nadawane o tej samej godzinie. Istnieje szansa, e chocia
jeden z tych programw bdzie powtarzany. Jeeli nie, cigle bdziemy napotyka na
konflikty w programowaniu harmonogramu. Najprostszym rozwizaniem jest dokupienie kilku dodatkowych kart przechwytujcych.
Majc kart Hauppauge PVR-500 (ktra ma oddzielne kodery MPEG2) oraz pyt gwn
Intel D865G (6 slotw PCI) mona potencjalnie nagra 12 programw jednoczenie, co
powinno usatysfakcjonowa wikszo osb. Jeeli 12 programw nie wystarcza, trzeba
ustawi dodatkowy wewntrzny serwer MythTV i skonfigurowa go jako podrzdny.
Wwczas programator MythTV bdzie nagrywa bez problemu tyle programw, ile tylko
chcemy.
Nasz system MythTV powinien teraz bezproblemowo nagrywa nasze ulubione programy
telewizyjne, abymy mogli obejrze je w dowolnym czasie (bez reklam). Jeeli mamy
nagrany jeden lub wicej programw, atwo nimi administrowa za pomoc Watch Recordings w oknie Media Library, dostpnym z gwnej strony. Aby obejrze co w wolnym
czasie, trzeba tylko przejrze bibliotek nagra i wybra ktry z programw.

Podsumowanie
W adnym razie nie naley uwaa, e jest to peny i obiektywny opis moliwoci, opcji
i funkcji MythTV, ale z pewnoci ten rozdzia to dobry pocztek naszej przygody z MythTV.
Pena dokumentacja MythTV znajduje si w oficjalnym pliku HOWTO (http://mythtv.org/
docs/mythtv-HOWTO.html), a to, co znajduje si w rozdziale, jest skrcon (i zmodyfikowan)
wersj informacji umieszczonych na mojej stronie WWW, powiconej dziaaniu MythTV
w systemie Fedora Core, ktr mona znale pod adresem http://wilsonet.com/mythtv/
fcmyth.php.

Transmitowanie multimediw w sieci

255

SPOSB

77.

SPOSB

78.

MythTV jako hub cyfrowy

Spoeczno MythTV jest bardzo aktywna, zarwno twrcy, jak i uytkownicy, i korzysta z oywionych list mailowych (http://mythtv.org/modules.php?name=MythInfo), kanaw
IRC (#mythtv oraz #mythtv-users na FreeNode), jak rwnie z wielu forw i wikipedii. Jeeli
mamy jakikolwiek problem lub pytania, na pewno znajdziemy tam kogo, kto moe nam
pomc w naszym deniu do osignicia peni zadowolenia z MythTV.
Jarod Wilson
SPOSB

78.

MythTV jako hub cyfrowy


MythTV ma duo wiksze moliwoci ni zwyke odtwarzanie programw telewizyjnych. Moe by
wykorzystywany w naszym domu jako cyfrowy hub. Warto uzupeni swoj wiedz na temat pluginw
do MythTV, ktre poszerzaj jego moliwoci.

Jak zostao wspomniane w podrozdziale Tworzenie wasnego DVR za pomoc MythTV


[Sposb 77.], MythTV ma bardziej rozbudowane funkcje ni zwyke nagrywanie programw i dostosowywanie czasw projekcji. MythTV obsuguje pluginy, co pozwala na dodanie szeregu moduw rozszerzajcych moliwoci systemu MythTV i sprawia, e staj si
one prawdziwym cyfrowym multimedialnym rozgaziaczem dla caego naszego domu.
Wszystkie te pluginy s dostpne indywidualnie, ale mona je te (i wszystkie zalenoci) pobra za jednym zamachem, jeeli mamy skonfigurowany yum patrz [Sposb 77.].
Trzeba wpisa tylko to:
# yum install mythplugins

Wikszo innych dystrybucji dostarcza pluginy przez menedera pakietw, ale jeeli
nasza nie ma takiej opcji, mona zawsze pobra kod rdowy ze strony adowania pod
adresem http://www.mythtv.org.
Po zainstalowaniu pluginw naley uruchomi interfejs MythTV, wwczas powinnimy
zobaczy w nim sporo dodatkowych przyciskw, pogrupowanych (miejmy nadziej) logicznie. Na przykad MythWeather oraz MythNews s dostpne w menu Information Center
w gwnym menu interfejsu MythTV. Wikszo pluginw zostanie umieszczona w opcjach
menu Setup. Oto szybki przegld najpopularniejszych pluginw wraz z krtkimi opisami.

MythVideo
Mamy kolekcj pyt DVD, ktr skrupulatnie przeksztacalimy w pliki wideo czytelne
dla komputera? A moe du bibliotek cyfrowych filmw rodzinnych? Czy nie byoby
mio mie j skatalogowan i przygotowan do wyszukiwana konkretnych tytuw, ze
wszystkimi szczegami takimi, jak opis filmu, ocena MPAA, czas trwania oraz plakat
do kadego filmu w kolekcji? MythVideo daje nam wanie takie moliwoci. Wystarczy
uruchomi narzdzie MythVideo, ktre wyszuka w naszym katalogu nowe filmy, a nastpnie przeszuka internetow baz filmw (http://www.imdb.org/) i zgromadzi odpowiednie informacje dotyczce interesujcych nas filmw. Wwczas bdzie mona przeglda
miniatury okadek filmw tak, jakbymy byli w wypoyczalni wideo, wybra film i zacz
go oglda, a wszystko to bez koniecznoci wstawania z fotela.

256

Transmitowanie multimediw w sieci

MythTV jako hub cyfrowy

MythVideo korzysta z wewntrznego odtwarzacza wideo, zazwyczaj MPlayera czy xine.


Jeeli nie podobaj nam si funkcje dostpne w domylnym odtwarzaczu (MPlayer), moemy atwo to zmieni, instalujc alternatywny odtwarzacz i zmieniajc odpowiednie ustawienia w Utilities/Setup/Setup/Media Settings/Video Settings/Player Settings. Aby uruchomi wybrany przez nas odtwarzacz wideo, trzeba tam wpisa odpowiedni tekst wiersza
polece. Oto przykadowa linia dla xine:
xine -pfhq --no-splash %s

MythDVD
Ten plugin pozwala na ogldanie filmw DVD i VCD tak, jakbymy korzystali z gotowego odtwarzacza DVD. Z uwagi na to, e odtwarzanie jest w peni kontrolowane przez
nasze oprogramowanie, jako odtwarzania moe si poprawia wraz z rozbudow naszego sprztu. Na przykad jedne z pierwszych samodzielnych odtwarzaczy DVD nie
miay progresywnego skanowania odtwarzania poprawiajcego jako filmu wideo wysyanego do telewizora. Wikszo osb korzystajcych z takich odtwarzaczy narzeka na
brak wspomnianej funkcji. Natomiast program odtwarzajcy DVD, ktry dotd rwnie
nie mia progresywnego skanowania odtwarzania, moe zosta uzupeniony tak funkcj
przy ktrej z kolejnych aktualizacji. Z tego wzgldu system MythDVD jest duo bardziej
elastyczny ni samodzielne odtwarzacze DVD.
W wikszoci pakietw MythDVD jest tak skonfigurowany, eby korzysta z MPlayera
jako narzdzia do odtwarzania. Poniewa jednak MPlayer nie potrafi wywietla menu
z pyty DVD, nie jest to najlepszy wybr, szczeglnie jeeli chcemy uzyska dostp do
innych materiaw zamieszczonych na pycie, a nie tylko do gwnego filmu. Zamieszczone poniej polecenie, ktre naley wpisa w polu DVD Player Command Field znajdujcym si w menu Utilities/Setup/Setup/Media Settings/DVD Settings/Play Settings, pozwoli
na odtwarzanie zawartoci pyty DVD za pomoc xine:
xine -pfhq --no-spalsh dvd://

MythDVD daje rwnie moliwo zgrywania zawartoci pyt DVD na dysk twardy.
Wiele osb moe uzna, e metoda proponowana przez MythDVD jest duo wygodniejsza
w uyciu ni sposb opisany w podrozdziale Zgrywanie DVD [Sposb 59.]. Ustawienia zgrywania kontrolujemy, korzystajc z tej samej cieki, co w przypadku ustawie
odtwarzania, z t rnic, e na kocu wybiera si Rip Settings. Zgrywanie DVD nie
powinno zaj wicej ni kilka minut, ale zakodowanie go jako mniejszy format bdzie
trwao kilka godzin.

MythMusic
aden cyfrowy hub nie bdzie kompletny, jeeli nie bdzie dawa moliwoci zarzdzania rwnie ca kolekcj muzyczn, niezalenie od tego, czy s to cyfrowe pliki audio,
czy nasza cenna kolekcja pyt kompaktowych. W naszym odtwarzaczu Myth mona odsuchiwa pyty CD, zgrywa je jako cyfrowe pliki audio, odtwarza je wstecz, tworzy
listy odtwarzania, odsuchiwa ca list losowo, jak rwnie wywietla wiele rnych

Transmitowanie multimediw w sieci

257

SPOSB

78.

SPOSB

78.

MythTV jako hub cyfrowy

wizualizacji w trybie penoekranowym na ekranie telewizora, ktre pulsuj w rytm muzyki. Wkrtce (biorc pod uwag moment pisania tej ksiki) MythMusic bdzie obsugiwao zdalne listy odtwarzania wspdzielone z iTunes.

MythGallery
Wszyscy lubimy pokazy slajdw, na ktrych uwiecznione s nasze dzieci albo wakacje
w tropikach. Obecnie slajdy i specjalne projektory odeszy nieco w zapomnienie. Od czasu,
gdy zaczy krlowa aparaty cyfrowe, wiele osb nie oglda zdj inaczej ni na ekranie komputera. A moe by tak wywietli je na duym ekranie telewizora? MythGallery
pozwala na utworzenie katalogw penych zdj, ktre s wywietlane na ekranie telewizora w stylu pokazu slajdw, wraz z efektami specjalnymi imitujcymi dwik przekadanych slajdw (cznie z wybran muzyk w tle).

MythGame
Wikszo dzisiejszych entuzjastw Linuksa to dawni naogowi uytkownicy gier wideo
zaczynajc od startych systemw Commodore i Atari, a koczc na ofertach Nintendo, Saga, Sony i Microsoftu. MythGame to spjny interfejs czcy bibliotek obrazw
z gier z du liczb popularnych emulatorw systemowych gier, ktry obecnie zawiera
te z Nintendo, Super Nintendo oraz emulator wielu automatw (MAME, czyli Multi-Arcade
Machine Emulator), a w przygotowaniu dodatkow obsug emulatora.

MythWeather
Kana powicony pogodzie w odbiorniku Myth jest zawsze dostosowany do warunkw
lokalnych. MythWeather pokazuje prognozy pogody, informacje o aktualnie panujcych
warunkach oraz radarowy obraz naszego obszaru, ktry pozwala nam na samodzielne
sprawdzenie pogody, bez koniecznoci czekania, a meteorologowie nas o niej poinformuj.

MythPhone
Gdy wemiemy pod uwag wci rosnc popularno Vonage i podobnych cyfrowych
serwisw gosowych w sieciach telekomunikacyjnych, staje si oczywiste, e VoIP (ang.
Voice over IP) bdzie odgrywa decydujc rol w przyszoci telekomunikacyjnej. Rwnie MythPhone oferuje moliwo przesyania przez IP gosu i obrazu wideo. Dziki
waciwemu sprztowi i dostarczycielowi usug VoIP mona z atwoci zamieni nasz
telewizor w wideotelefon.

MythNews
Niemal wszystkie wiksze serwisy internetowe, jak rwnie wiele pomniejszych, oferuj
dostp do najwieszych wiadomoci przez RSS (ang. Really Simple Syndication). MythNews daje moliwo skorzystania z prostej aplikacji obsugujcej RSS, ktra pozwala na
szybkie przeczytanie na ekranie naszego telewizora wszystkich wiadomoci dnia pobranych z dowolnego rda.

258

Transmitowanie multimediw w sieci

Przejmowanie (zdalnie) kontroli

MythBrowser
A moe chcemy usi wygodnie na kanapie i stamtd surfowa po sieci, korzystajc
z wielkiego ekranu naszego telewizora? MythBrowser to przegldarka WWW dostosowana do uywania na ekranie telewizyjnym przy uyciu pilota (lub klawiatury).

MythWeb
W poczeniu z wszechobecnym serwerem WWW Apache oraz z PHP, MythWeb udostpnia interfejs pozwalajcy na korzystanie z sieci dla caego systemu MythTV. Mona
wyszukiwa program telewizyjny oraz biece nagrania, planowa harmonogram nagra,
usuwa i pobiera nagrania, dostosowywa ustawienia, przypisywa opcje do klawiszy
i o wiele wicej. Wyobramy sobie, e jestemy poza domem i nagle zdajemy sobie spraw, e po poudniu w telewizji bdzie nadawany program, ktry chcielimy zobaczy.
Majc prawidowo ustawione opcje nagrywania, mona zleci nagranie danego programu
z kadego komputera podczonego do internetu. Poza tym MythWeb obsuguje w pewnym stopniu kilka pluginw, a niedugo bdzie ich znacznie wicej.
Wszystkie wspomniane przed chwil pluginy s oficjalnie aprobowane i obsugiwane
przez projekt MythTV i s przechowywane w repozytorium kodw rdowych MythTV.
W sieci s rwnie dostpne nieautoryzowane pluginy ale korzystajc z nich, musimy
pamita, e robimy to na wasne ryzyko!
Jarod Wilson
SPOSB

79.

Przejmowanie (zdalnie) kontroli


Klawiatura i mysz nie s jedynym sposobem na kontrolowanie naszego komputera.

Zapewne maniak komputerowy, ktry siedzi w nas, nie ma nic przeciwko wykorzystywaniu bezprzewodowej klawiatury i myszy do kontrolowania komputera z rozbudowanym systemem multimedialnym. Moe si to jednak okaza troch nieporczne, zwaszcza jeeli t kontrol trzeba z kim wspdzieli. W takiej sytuacji przychodzi nam na
ratunek projekt pod nazw Linux Infrared Remote Control (LIRC; http://www.lirc.org).
Projekt LIRC ma za zadanie umoliwienie nam kontrolowania systemu Linux przy uyciu wybranego przez nas pilota. LIRC obsuguje szeroki wachlarz odbiornikw na podczerwie, poczwszy od zrobionych domowym sposobem wersji portw seryjnych oraz
kluczy sprztowych na kartach tunera telewizyjnego, a po odbiorniki USB Microsoft
Windows XP Media Center, jak rwnie rne piloty powizane z wczeniej wspomnianymi odbiornikami i te uniwersalne, programowalne. Wicej szczegw dotyczcych
sprztu obsugiwanego przez LIRC znajduje si w oficjalnym serwisie WWW.
Aby zainstalowa LIRC, mona pobra rdo z serwisu, jednak najpierw warto poszuka
gotowego pakietu w naszej dystrybucji lub w odpowiednim repozytorium przy uyciu
menedera pakietw. Na przykad repozytorium pakietw Axel Thimms ATrpms na
stronie http://atrpms.net zawiera spakowane binaria LIRC przeznaczone dla wszystkich
najnowszych wersji dystrybucji Red Hat i Fedora Core, ktre mona zainstalowa za

Transmitowanie multimediw w sieci

259

SPOSB

79.

SPOSB

79.

Przejmowanie (zdalnie) kontroli

pomoc ulubionego programu automatycznie uwzgldniajcego zalenoci. Oto przykad szybkiego zainstalowania omawianego pakietu w najnowszej wersji dystrybucji
Fedora Core za pomoc dostarczanego przez Fedor narzdzia yum. Najpierw naley
zainstalowa klucz do podpisywania pakietw ATrpms:
# rpm -import http://atrpms.net/RPM-GPG-KEY.atrpms

Kolejny krok to utworzenie pliku konfiguracyjnego yum dla ATrpms o ciece /etc/
yum.repos.d/atrpms.repo:
[atrpms]
name=ATrpms for Fedora Core $releasever stable
baseurl=http://apt.atrpms.net/fedora/$releasever/en/$basearch/at-stable
gpgcheck=1
enabled=1

Po zrobieniu tego mona zainstalowa niezbdne komponenty LIRC:


# yum install lirc-kmd1-`uname -r` lirc

Warto zwrci uwag, e zosta tutaj uyty lewy apostrof, a nie zwyky. Poza tym naley
korzysta z najnowszej erraty do jdra, poniewa ATrpms aktywnie utrzymuje pakiety
tylko do najnowszej erraty jdra.
Pakiety ATrpms maj wbudowan obsug dla moliwie najwikszej liczby rnych sterownikw LIRC, ktra obejmuje wszystkie najpopularniejsze standardowe interfejsy.
Jeeli nie korzystamy z jakiego nietypowego odbiornika, nie powinnimy mie z tym
adnych problemw. W poniszym przykadzie pokazane zostay niezbdne poprawki
w pliku /etc/modprobe.conf dla klucza sprztowego IR na karcie Hauppauge WinTV PVR-250
(przy zaoeniu, e skonfigurowalimy ju dla tej karty sterownik ivtv):
# lirc
alias char-major-61 lirc_i2c
install lirc_i2c /sbin/modprobe ivtv; /sbin/modprobe --ignore-install lirc_i2c

W przypadku odbiornika seryjnego portu IR na COM1 zmiany powinny wyglda nastpujco:


# lirc
alias char-major-61 lirc_serial
options lirc_serial irq=4 io=0x3f8
install lirc_serial /bin/setserial /dev/ttyS0 uart none; \
/sbin/modprobe --ignore-install lirc_serial

Inne odbiorniki nie potrzebuj tylu opcji, a jedynie lini z aliasem dla odpowiedniego
dla nich sterownika lirc_*. Gdy poszperasz na stronie WWW LIRC oraz w przegldarce
Google, powinno uda Ci si odnale informacje o dowolnym odbiorniku.
Po zmodyfikowaniu modprobe.conf, naley zaadowa sterownik i zamieni i2c czy serial
na <nasz sterownik>:
# /sbin/modprobe lirc_<nasz sterownik>

260

Transmitowanie multimediw w sieci

Wyszukiwanie strumieniowanych stacji radiowych

Kolejny krok to ustawienie pliku konfiguracyjnego dla demona LIRC, lircd, ktry odwzoruje kody IR naszego pilota na odpowiadajce im przyciski, tak aby mona byo
pniej przypisa przyciski do funkcji, a nie kody IR. Plik konfiguracyjny nosi nazw
/etc/lircd.conf. Wraz z LIRC jest dystrybuowanych wiele plikw konfiguracyjnych dla pilotw, ktre zostay wygenerowane przez spoeczno uytkownikw LIRC. W naszym
systemie s one umieszczone w katalogach /usr/share/doc/lirc-*/remotes. Jeeli nie znajdziemy wrd nich pliku odpowiedniego dla uywanego przez nas pilota, powinnimy
poszuka go, korzystajc z przegldarki Google (jeeli si nie uda, naley zajrze na stron
pomocy irrecord, na ktrej znajdziemy opis sposobu wygenerowania wasnego pliku).
Majc ju waciwy plik lircd.conf umieszczony w odpowiednim katalogu, moemy uruchomi lircd nastpujcym poleceniem:
# /sbin/service lircd start

Teraz naley uruchomi narzdzie irw, dystrybuowane przez spoeczno LIRC, ktre
pozwoli nam sprawdzi podstawow funkcjonalno. Po wciniciu przycisku na pilocie irw
wywietli informacj o przycisku skojarzonym z kodem IR pobranym przez lircd z naszego
odbiornika, korzystajc z lircd.conf.
$ /usr/bin/irw
(control-c to stop)

Jeeli dane wyjciowe wydaj si w porzdku, zostaje nam tylko skonfigurowa nasze
aplikacje tak, aby otrzymyway polecenia z lircd. Wikszo multimediw pod Linuksem
obsuguje LIRC, a szczegy sposobu konfigurowania LIRC tak, aby z nimi wsppracowa, mona zazwyczaj znale w dokumentacji dla danej aplikacji. [Sposb 77.] zawiera
kilka ciekawostek dotyczcych konfigurowania LIRC tak, aby dziaa z MythTV, Mplayerem
oraz xine.
Jarod Wilson
SPOSB

80.

Wyszukiwanie strumieniowanych stacji radiowych


Instalacja programu Streamtuner i korzystanie z duego zasobu internetowych stacji radiowych.

Fani muzyki czsto skar si, e w radiu nie ma czego sucha. Oczywicie prawdziwo tego stwierdzenia zaley gwnie od gustu muzycznego, jednak to prawda, e im
bardziej czyje upodobania odbiegaj od gwnego nurtu, tym rzadziej znajduje w repertuarze stacji radiowych co dla siebie. Jednym z rozwiza tego problemu jest strumieniowanie radia przez internet. Zaoenie w sieci takiej strumieniowej stacji radiowej
nie jest zadaniem trudnym i z tego wzgldu jest ich tak wiele. Oznacza to, e istnieje
spora szansa, e znajdziemy jedn lub kilka odpowiadajcych naszym gustom. (Informacje dotyczce tworzenia wasnych strumieniowanych stacji radiowych znajduj si
w podrozdziale [Sposb 84.]). Wiemy ju, e nasza wymarzona piosenka z pewnoci
znajduje si gdzie w sieci, jednak powstaje pytanie, jak j znale bez dostpu do swego
rodzaju spisu strumieniowanych stacji. Wystarczy skorzysta z programu linuksowego
streamtuner, ktry wywietla list rnych strumieniowanych stacji radiowych i dzieli je
odpowiednio, co znaczco uatwia filtrowanie w celu znalezienia strumieniowania najbardziej odpowiadajcego naszym upodobaniom.

Transmitowanie multimediw w sieci

261

SPOSB

80.

SPOSB

80.

Wyszukiwanie strumieniowanych stacji radiowych

W celu zainstalowania programu streamtuner, naley sprawdzi za pomoc narzdzia do


zarzdzania pakietami, czy pakiet z nim nie znajduje si w naszej dystrybucji. Jeeli nie
znajdziemy odpowiedniego pakietu, naley odwiedzi oficjaln stron streamtuner pod
adresem http://www.nongnu.org/streamtuner i pobra jeden z nieoficjalnych pakietw przeznaczonych dla naszej dystrybucji albo pobra i skompilowa kod rdowy zgodnie
z instrukcjami instalacyjnymi. Po zainstalowaniu programu, mona go uruchomi z menu
lub wpisa w konsoli streamtuner.
Pocztkowy graficzny interfejs uytkownika ma pasek narzdzi zawierajcy wiele popularnych dziaa, a poniej paska znajduje si rzd zakadek (zobacz rysunek 4.1). Kada
z sieci serwerw strumieniowania audio ma swoj oddzieln zakadk, jak rwnie zapisane przez nas stacje oraz wszelkie lokalne strumieniowania. streamtuner oferuje pluginy do takich sieci strumieniowania jak SHOUTcast, Live365, Xiph, basic.ch oraz wielu
innych. Kada strumieniowana sie zawiera sporo (czasem bardzo duo) strumieni pogrupowanych zgodnie z gatunkiem.

Rysunek 4.1. Gwne okno programu streamtuner

262

Transmitowanie multimediw w sieci

Wyszukiwanie strumieniowanych stacji radiowych

Wszystkie opisywane sieci strumieniuj audio, jednak czasami robi to odmiennie. Naley klikn zakadk odpowiadajc wybranej sieci i w przypadku wikszoci z nich
streamtuner pobierze najnowsz list strumieni, a nastpnie po prawej stronie wywietli
list gatunkw, a po lewej list odpowiadajcych im strumieni. Poniewa niektre sieci
strumieniowania nie obsuguj bezporednio tej metody, mog nie pokaza si wszystkie
informacje, a jedynie odsyacze do stron WWW zawierajcych pene informacje o danym
strumieniu. Aby odwiey list strumieni w danej sieci, naley klikn przycisk Update
na pasku zada. W przypadku niektrych sieci (takich jak punkcast.com) streamtuner wywietli tylko odsyacze do konkretnego serwisu WWW. Naley klikn odsyacz, a streamtuner otworzy go w skonfigurowanej przez nas przegldarce.
Niektre zakadki maj kolumny pokazujce wykonawc, album oraz inne
informacje o danym strumieniu. Aby skonfigurowa, ktre z kolumn maj
by pokazywane, a ktre ukrywane, wystarczy klikn wybran kolumn
(tak jak Description) prawym przyciskiem myszy i wybra Stream Columns.

Domylnie streamtuner jest skonfigurowany w taki sposb, eby jako odtwarzacz multimediw wykorzystywa xmms. Jeeli chcemy skorzysta z innej aplikacji do odtwarzania strumieni, wystarczy klikn Edit/Preferences, a nastpnie w oknie z waciwociami
wybra Applications. W tym oknie mona skonfigurowa domylne polecenia wykonywane przez streamtuner przy odsuchiwaniu strumienia, otworzy stron WWW oraz wiele
innych opcji. Wikszo odtwarzaczy multimedialnych pod Linuksem obsugujcych strumieniowanie audio obsuguje strumienie podane jako argument w wierszu polece, wic
aby zamieni xmms na wybrany przez nas odtwarzacz multimedialny, naley zamieni
xmms w oknie preferencji na nazw naszej aplikacji uywan w wierszu polece.
Okno z waciwociami pozwala na skonfigurowanie rnych innych opcji streamtuner.
Mona klikn Network, aby skonfigurowa serwer proxy, jeeli jest uywany przez nasz sie lub klikn Plugins, aby ustawi konkretne opcje dla zainstalowanych pluginw
streamtuner. Waciwoci rni si w zalenoci od pluginu, ale czsto pozwalaj na
skonfigurowanie takich ustawie jak liczba strumieni do zaadowania w danej kategorii.
Po skonfigurowaniu streamtuner tak, aby wykorzystywa wskazy przez nas odtwarzacz
muzyczny, nale wybra jedn z zakadek sieci, wybra strumie z listy i klikn Tune In,
aby zacz go odsuchiwa (albo po prostu klikn dwa razy nazw strumienia). Jeeli
aktywny jest na pasku narzdzi przycisk Browse, mona go klikn, aby odwiedzi stron
WWW powicon danemu strumieniowi. Aby przeczy si na inny strumie, naley
ponownie klikn Tune In. Gdy znajdziemy odpowiadajcy nam strumie, naley klikn
go prawym przyciskiem myszy i wybra Add Bookmark, aby doda go do zakadek w celu
atwego odnalezienia nastpnym razem.
streamtuner moe dziaa rwnie jako interfejs naszej lokalnej kolekcji
muzycznej. W oknie z waciwociami naley wskaza programowi katalog
przechowywania plikw muzycznych, a nastpnie klikn zakadk Local.
streamtuner wywietli wszystkie katalogi i pliki znajdujce si tu i pozwoli
na wybranie jednego lub kilku plikw.

Transmitowanie multimediw w sieci

263

SPOSB

80.

SPOSB

81.

Zgrywanie strumieniowania audio

streamtuner jest rwnie interfejsem programu streamripper. Jeeli dostpny jest przycisk
Record, a streamripper jest zainstalowany, mona nagrywa strumieniowanie audio bezporednio jako pliki MP3. Dokadne argumenty wiersza polece streamripper mog by konfigurowane w oknie waciwoci streamtuner. Jednak standardowo streamripper zostanie
otwarty w domylnym terminalu, a pliki zapisane w katalogu domowym (albo w katalogu,
z ktrego zosta uruchomiony streamtuner). Wicej informacji o konfigurowaniu streamripper
znajdziemy w podrozdziale [Sposb 81.].
SPOSB

81.

Zgrywanie strumieniowania audio


streamripper pozwala na zgranie wybranej, nadajcej na ywo, strumieniujcej stacji audio bezporednio
do pliku MP3 w celu pniejszego odsuchu.

Strumieniowanie audio pozwolio wielu ludziom nie tylko na atwe nadawanie ich ulubionych utworw muzycznych, ale rwnie innych programw radiowych. Jednak cz
audycji nie jest nadawana przez cay dzie, a jedynie w wybranych godzinach. Jeeli nie
ma nas w pobliu komputera o takiej porze, przegapimy audycj chyba e mamy
streamripper.
streamripper to prosta, ale majca wielkie moliwoci aplikacja, pozwalajca na nagrywanie strumieniowania audio bezporednio do lokalnych plikw MP3. Aby zainstalowa
streamripper, naley sprawdzi, czy nie ma odpowiedniego pakietu w naszej dystrybucji.
Jeeli nie, musimy pobra kod rdowy z oficjalnej strony pod adresem http://streamripper.
sourceforge.net, a nastpnie skompilowa go i zainstalowa zgodnie z instrukcjami instalacji.
Aby uruchomi streamripper, trzeba po prostu poda w oknie konsoli adres URL do strumieniowania audio:
$ streamripper http://69.56.219.92:8072

Domylnie streamripper utworzy w biecym katalogu podkatalog nazwany tak samo jak
strumie, a nastpnie zacznie przechowywa w katalogu przychodzcym zawarto strumieni jako MP3. Gdy plik bdzie kompletny, streamripper przeniesie go z katalogu przychodzcego do gwnego katalogu strumieniowania. Kady plik ma w nazwie umieszczonego wykonawc i metadane utworu przechwycone przez streamripper ze strumienia
audio. Mona pozwoli programowi streamripper na dziaanie w dowolnym wymiarze
czasowym (pod warunkiem, e mamy wystarczajco duo miejsca na dysku twardym),
a wwczas bdzie kontynuowa przechwytywanie i przechowywanie MP3 w katalogu
strumieniowania. Jeeli mamy odpowiednio du przepustowo, mona nawet powieli
dziaanie streamripper i rwnoczenie przechwytywa kilka strumieni.
Domylne ustawienia streamripper s odpowiednie do standardowego uywania, jednak
mona ten program skonfigurowa rwnie z uyciem opcji wiersza polece. Na przykad
argument -d nakazuje programowi zapisanie zgrywanych plikw w podanym katalogu,
zamiast w biecym katalogu roboczym. Argument -s informuje streamripper, eby nie
tworzy oddzielnych katalogw dla poszczeglnych plikw, tylko zapisa wszystkie pliki
do jednego katalogu.

264

Transmitowanie multimediw w sieci

Zgrywanie strumieniowania audio

Zapamitywane przez streamripper pliki MP3 s domylnie nazywane zgodnie z nazwiskiem wykonawcy i tytuem utworu. W przypadku niektrych strumieni audio bdziemy
chcieli zapisa utwory z zachowaniem kolejnoci, w jakiej byy odgrywane w strumieniu.
Opcja -q nakazuje streamripper dodanie na pocztku kadego pliku numeru seryjnego
zaczynajc od 001. Ponadto argument prefiksu -P pozwala na dodanie konkretnego cigu
znakw do pocztku kadego pliku. Uycie argumentu nazwy pliku -a powoduje, e cay
strumie zostanie zapisany nie tylko w poszczeglnych plikach, ale rwnie jako jeden
wielki plik. Z kolei z uyciem argumentu -A utworzony zostanie tylko jeden wielki plik,
natomiast poszczeglne mae pliki nie powstan.
streamripper wymaga, aby adres URL by zawsze pierwszym podawanym mu
argumentem, wic jeeli dodajemy jeszcze jakie inne argumenty, naley
upewni si, e adres URL zawsze jest na pierwszym miejscu.

Planowanie nagrywania
Ze wzgldu na moliwo przyjmowania argumentw wiersza polece, streamripper
doskonale nadaje si do ustawiania nagrywania przy uyciu at lub cron. Argument -l
pozwala na skonfigurowanie liczby sekund do nagrania, zanim streamripper zakoczy
dziaanie. Jeeli poczymy to z opcjami -q oraz -P, mona atwo utworzy archiwum
ulubionych audycji radiowych. Na przykad strumie, ktrego lubi sucha, nadawany
jest tylko w godzinach od 12 do 18, w dniach od czwartku do soboty. Aby go nagra,
utworzyem nastpujcy skrypt o nazwie streams:
# !/bin/sh
# zgrywa z Punk FM (http://punkfm.co.uk)
# ten strumie jest nadawany midzy 12 a 18 od czwartku do soboty
URL=http://69.56.219.92:8072
DAY=`date +%F-`
streamripper $URL -d /mnt/audio/mp3/streams -q -p $DAY -l 21720 --quiet &

Skrypt ten zgrywa URL do katalogu /mnt/audio/mp3/streams, dziki opcji -q pilnuje, aby
pliki byy nazwane zgodnie z kolejnoci odtwarzania, z uwagi na opcj -P dodaje aktualn dat do nazwy pliku, a opcja -l nakazuje programowi streamtuner dziaanie przez
dwie godziny i dwie minuty (dodatkowe dwie minuty zostay dodane, na wypadek gdyby mj zegarek nie by dobrze zsynchronizowany z zegarem komputera kontrolujcym
strumieniowanie. Opcja --quiet blokuje normalne dane wyjciowe, wic wykorzystywany cron nie bdzie wysya do nas wiadomoci elektronicznych przy kadym uruchomieniu skryptu. Kolejnym krokiem byo dodanie do crontab uytkownika nastpujcej linii:
59 11 * * 4-6 /home/greebfly/bin/streams

Linia wykona skrypt o 11:59 w czwartek, pitek i sobot. Szerszy opis planowania dziaa na programach przy uyciu cron znajdziemy na stronie pomocy (man 5 crontab).

Transmitowanie multimediw w sieci

265

SPOSB

81.

SPOSB

81.

Zgrywanie strumieniowania audio

Odsuchiwanie strumieni podczas ich zgrywania


Inn zalet programu streamripper jest moliwo utworzenia dla zgrywanych strumieni
serwera poredniczcego. Opcja -r nakazuje programowi utworzenie serwera poredniczcego na porcie 8000. Mona wybra inny port, ale wwczas trzeba go poda jako argument. Jeeli port 8000 nie jest dostpny, streamripper bdzie prbowa uy wyszych
portw, a wreszcie znajdzie jaki dziaajcy. Pniej mona skierowa odtwarzacz muzyczny na port 8000 (albo inny przez nas skonfigurowany) na tej maszynie. Mona to
zrobi z tego samego komputera (http://localhost:8000) lub przez sie (http://ftp_address:8000).
Domylnie streamripper zezwala tylko na jedno poczenie z serwerem poredniczcym,
ale mona poda argument numeryczny -R pozwalajcy na poczenie si podanej liczbie
klientw. Jeeli podana liczba bdzie wynosia zero, streamripper zezwoli na poczenie
nieograniczonej liczbie klientw (a tak naprawd ograniczonej tylko szerokoci pasma
oraz prdkoci procesora). Wobec tego, aby zgra strumie i skierowa go na serwer
poredniczcy, a nastpnie pozwoli na poczenie trzem klientom, naley wpisa:
$ streamripper URL -r -R 3

Jeeli chcielibymy pozwoli trzem klientom na poczenie si ze strumieniem nagranym przez wczeniej cytowany skrypt dla powoki bash, naleaoby zmieni polecenie
nastpujco:
streamripper $URL -d /mnt/auido/mp3/streams -q -P $DAY -l 21720 --quiet -r -R 3 &

Wykrywanie utworw
streamripper automatycznie dzieli utwory w strumieniu na podstawie wykrytej midzy
nimi ciszy. Ta metoda nie jest jednak idealna i w zalenoci od strumienia (niektre strumienie korzystaj z pynnego przechodzenia midzy utworami), moemy otrzyma cieki
zawierajce na pocztku kilka sekund z poprzedniego utworu, a na kocu kilka sekund
z nastpnego. streamripper przyjmuje ca seri argumentw --xs pozwalajcych na skonfigurowanie tego algorytmu odpowiednio do danego strumienia. Jeeli na przykad wszystkie utwory zaczynaj si trzema sekundami poprzedniego utworu, ponisze polecenie
nakae streamripper przesunicie (offset) dzielenia utworw o dodatkowe trzy sekundy
(wyraone w milisekundach):
$ streamripper URL --xs_offset=3000

Opcjonalnie, jeeli utwr zawiera na kocu trzy sekundy kolejnego utworu, mona
nada offset negatywn warto:
$ streamripper URL --xs_offset=-3000

Jeeli zauwaymy, e utwory zawieraj fragmenty poprzednich i kolejnych utworw


o rnej dugoci, ktra nie jest wartoci sta, mona nakaza streamripper wygenerowanie kilku sekund dla padding w odniesieniu do kadej cieki, tak aby mona byo
potem do niej wrci i rcznie zmodyfikowa plik MP3. Aby doda dwie sekundy jako
padding przed punktem podziau i trzy sekundy za punktem podziau, naley wpisa:
$ streamripper URL --xs_padding=2000:3000

266

Transmitowanie multimediw w sieci

Zgrywanie strumieniowania wideo

Mona rwnie poczy dwie opisane opcje. Jeeli na przykad kady utwr zawiera
jak liczb sekund z poprzedniego utworu, ale warto ta waha si midzy dwiema a szecioma sekundami, mona ustali miejsce podziau offset porodku zmieniajcej si wartoci, czyli jako cztery sekundy, a nastpnie utworzy zmienny obszar o wartoci dwch
sekund przed i za punktem podziau:
$ streamripper URL --xs_offset=4000 --xs_padding=2000:2000
SPOSB

82.

Zgrywanie strumieniowania wideo


Do zgrywania zawartoci strumieniowanego wideo bezporednio do pliku mona wykorzysta
odtwarzacz MPlayer, co pozwoli nam na obejrzenie materiau w wolnym czasie.

Poczenia szerokopasmowe staj si coraz czciej norm i z tego powodu na niektrych


stronach znajdziemy nie tylko strumieniowanie audio, ale rwnie strumieniowanie wideo.
Podobnie jak w przypadku strumieniowania audio, czasami chcemy zapisa zawarto
strumieniowania wideo w pliku w celu obejrzenia jej w pniejszym terminie (bdc
odczonym od sieci). W podrozdziale [Sposb 81.] znajduje si opis sposobu uywania
programu streamripper do zgrywania zawartoci strumieniowania audio. streamripper dobrze sobie radzi z dwikiem, jednak do zgrywania zawartoci wideo lepiej skorzysta
z MPlayera.
MPlayer to niezwykle elastyczny odtwarzacz wideo i audio (wicej informacji mona
znale w podrozdziale [Sposb 48.]). MPlayer obsuguje szeroki wachlarz formatw
audio i wideo, cznie ze strumieniowanymi i potrafi rwnie umieszcza nieprzetworzone strumienie audio i wideo bezporednio w pliku.
Pierwszym krokiem do zgrania strumienia jest uzyskanie adresu URL dla strumieniowanego wideo. W niektrych przypadkach wystarczy po prostu klikn prawym przyciskiem myszy odsyacz na stronie WWW i wybra Copy Link. Niektre strumienie wideo
s zagbione w stron WWW, wic trzeba bdzie przejrze kod rdowy strony, aby
znale bezporedni odsyacz do strumienia (te zawierajce QuickTime tak wanie funkcjonuj). Po znalezieniu adresu URL, naley odtworzy kawaek zawartoci, aby uzyska
pewno, e MPlayer faktycznie ma do niego dostp:
$ mplayer http://filmy.probki.com/przyklad.mov

Naley zastpi adres URL ciek do strumienia wideo, ktry chcemy odtworzy. Po
wstpnym zapisaniu strumieniowanej zawartoci do pamici podrcznej, MPlayer wywietli obraz wideo w oknie. Jeeli nie bdzie si odtwarza, naley sprawdzi w konsoli
dane wyjciowe bdu. Moe okaza si, e MPlayer nie ma wszystkich wymaganych kodekw potrzebnych do odtworzenia tego wideo, wic warto najpierw zapozna si z opisem
w podrozdziale [Sposb 53.], aby przekona si, e mamy wszystkie wymagane kodeki.
Jeeli MPlayer pomylnie odtworzy fragment wideo, naley wcisn Ctrl+C, aby przerwa odtwarzanie, a nastpnie doda dwie dodatkowe opcje do zgrywania strumienia:
$ mplayer URL -dumpstream -dumpfile nazwapliku

Transmitowanie multimediw w sieci

267

SPOSB

82.

SPOSB

83.

Odtwarzacz strumieni MP3 w wierszu polece

Polecenie to uaktywnia w MPlayerze specjalny tryb strumieniowania zawartoci bezporednio do pliku okrelonego przy uyciu argumentu -dumpfile. Naley zastpi
nazwapliku wybran przez nas nazw pliku wyjciowego. Naley pamita, e mamy
do czynienia z nieprzetworzonym plikiem wyjciowym utworzonym bezporednio ze
strumienia wideo, wic aby uruchomi go w innym odtwarzaczu wideo, trzeba bdzie
przeksztaci go na bardziej uniwersalny format. Wicej informacji dotyczcych przeksztacania plikw wideo na inne formaty znajduje si w podrozdziale [Sposb 63.].
SPOSB

83.

Odtwarzacz strumieni MP3 w wierszu polece


Mona wykorzysta podstawowe narzdzia wiersza polece do utworzenia wasnego odtwarzacza
strumieni MP3.

Podczas konfigurowania sieciowych szaf grajcych Obsequeium (http://obsbox.sf.net) oraz


Jinzora (http://jinzora.org) [Sposb 84.], bardzo pomocne okazao si utworzenie dedykowanego odtwarzacza strumieni, aby mc podczas caego procesu ich testowania sysze odtwarzane przez nie audio. Najlepiej by byo, gdyby strumieniowane pliki MP3
gray bez przerwy, a jeeli co staoby si odtwarzaczowi, powinien spauzowa i ponownie podj prb odtworzenia strumieni. Moe si wydawa, e doskonale si do tego
nadaj odtwarzacze wiersza polece mpg123 lub mpg321, ale maj one niedobry zwyczaj
blokowania si i nieponawiania prby, gdy jest co nie tak ze strumieniem. Powoduje to,
e nie nadaj si do wykorzystywania jako dedykowane odtwarzacze strumieniowania.
Jeeli mamy zainstalowane madplay oraz wget, mona zbudowa solidny odtwarzacz strumieni wiersza polece przy uyciu jednego polecenia. wget i madplay to popularne programy, wic ich pakiety powinny by zawarte w naszej dystrybucji Linuksa. Aby je zainstalowa, naley skorzysta z odpowiedniego dla naszej dystrybucji narzdzia do
instalowania oprogramowania. Jeeli z jakiego powodu nie znajdziemy pakietw z tymi
narzdziami, bdziemy musieli pobra tarball ze stron http://www.underbit.com/products/mad/
oraz http://www.gnu.org/software/wget/wget.html, skompilowa je i zainstalowa, postpujc
zgodnie z zaczonymi instrukcjami instalacji.
Po zainstalowaniu wget oraz madplay, nastpujce polecenie uruchomi odtwarzanie strumienia ze strony http://przyklad.com/mojstrumien:
$ wget -q -O - http://przyklad.com/mojstrumien | madplay -Q --no-tty-control -

wget odczytuje strumie MP3 i wysya go do standardowego wyjcia, ktre zostaje przesane
do standardowego wejcia madplay. Tam strumie zostaje zdekodowany przez madplay
i zapisany w domylnym urzdzeniu dwikowym. Opcje -Q oraz --no-tty-control
nakazuj madplay odtwarzanie muzyki bez wyjcia tekstowego i umieszczaj proces w tle,
aby nie korzysta z terminala.
Jest jeszcze jeden haczyk do ominicia, zanim nasz solidny odtwarzacz strumieni MP3
bdzie mg dziaa nieprzerwanie przez wiele dni. Strumienie MP3 uruchomione nieustannie przez wiele dni maj brzydki zwyczaj zamierania akurat tu przed nagraniem
naszego ulubionego utworu. Aby ustrzec si przed tego typu zdarzeniami, naley wywoa odtwarzacz strumieni w prostej ptli skryptu powoki:

268

Transmitowanie multimediw w sieci

Budowanie w Linuksie szafy grajcej przy uyciu Jinzora


#!/bin/sh
while [ 1 ]
do
wget -q -O - http://przyklad.com/mojstrumien | madplay -Q --no-tty-control
sleep 5
done

Jeeli co si stanie ze strumieniem i odtwarzacz zakoczy poczenie, po prostu spauzuje przez pi sekund, a nastpnie sprbuje uzyska ponowny dostp do strumienia.
Piciosekundowa pauza sprawia, e odtwarzacz nie bdzie bombardowa naszego serwera strumieniowania daniami poczenia, jeeli co stanie si z serwerem.
Poza tym, aby zapewni prawidowe i stae dziaanie odtwarzacza, dobrze jest zakoczy jego dziaanie raz dziennie w porze nadawania najmniej interesujcej zawartoci,
a nastpnie ponownie uruchomi odtwarzanie strumienia. Dziki temu zyskamy pewno,
e nie wyczy si w rodku naszego ulubionego utworu. Aby to wykona, naley skorzysta z cron, a konkretnie doda lini do naszej tablicy crontab (crontab edytuje si poleceniem crontab -e):
0 4 * * * killall -9 madplay

Dziki temu cron bdzie koczy dziaanie madplay codziennie o czwartej rano. Naley
wybra czas, w ktrym najmniej osb sucha tych strumieni, poniewa suchacze bd
musieli przez pi sekund siedzie w ciszy.
Teraz nasz niekopotliwy i stabilny odtwarzacz strumieni MP3 jest ju w peni gotowy.
Odtwarzacz z takimi ustawieniami odtwarza dla mnie muzyk przez niemal dwa lata
i nigdy nie wymaga ingerencji.
Robert Kaye
SPOSB

84.

Budowanie w Linuksie szafy grajcej przy uyciu Jinzora


Dzielenie si nasz kolekcj muzyczn z przyjacimi nigdy nie byo prostsze.

Jeeli kiedykolwiek chcielimy mie moliwo dzielenia si ca nasz kolekcj muzyczn


z innymi oraz zbudowania wsplnej kolekcji MP3 z naszymi przyjacimi, to w tym
podrozdziale znajdziemy idealne rozwizanie. Do niedawna uytkownicy Linuksa mogli
wybiera midzy dwiema wiodcymi sieciowymi szafami grajcymi: Netjuke i Jinzora. Ale
Netjuke zosta niedawno wchonity przez Jinzora i obecnie oba zespoy programistyczne
pracuj, dc do wsplnego celu. Oznacza to, e mona si spodziewa, e Jinzora bdzie si teraz duo szybciej rozwija, chocia takie stwierdzenie brzmi nieco ironicznie
w stosunku do pakietu z aplikacj ju teraz posiadajc przesadnie duo moliwoci.
A oto robica wraenie lista moliwoci Jinzora (http://www.jinzora.org):
W peni oparta na sieci, wic nie ma po stronie klienta adnych dodatkowych
narzdzi do zainstalowania;
Kompletne przeszukiwanie kolekcji muzycznej (wedug wykonawcy, albumu
lub gatunku);

Transmitowanie multimediw w sieci

269

SPOSB

84.

SPOSB

84.

Budowanie w Linuksie szafy grajcej przy uyciu Jinzora

Wsparcie zarzdzania mediami obejmujce modyfikowanie znacznikw oraz


dodawanie informacji do naszej kolekcji muzycznej przy uyciu interfejsu sieciowego;
Pobieranie z sieci tekstw piosenek, okadek albumw oraz metadanych;
Sugerowanie podobnych wykonawcw z wasnej kolekcji;
Strumieniowanie z serwera przez listy odtwarzania m3u;
Obsuga wielu uytkownikw i tematw.
Poniewa Jinzora w peni korzysta z interfejsu sieciowego, jedynym oprogramowaniem
wymaganym przez maszyn klienta jest odtwarzacz MP3, co sprawia, e Jinzora jest szczeglnie uyteczna w rodowiskach z mieszanymi systemami operacyjnymi. Jinzora obsuguje rwnie konta uytkownikw, co daje nam kontrol nad tym, kto moe przeglda,
odsuchiwa nasz kolekcj muzyczn i manipulowa przy niej. Wszystkie te cechy sprawiaj, e Jinzora doskonale nadaje si do rodowiska biurowego lub domowego, w ktrym
wielu uytkownikw chce korzysta z jednej, wsplnej kolekcji muzycznej. Na rysunku 4.2
wida typowy ekran wyszukiwania w Jinzora.

Rysunek 4.2. Zrzut ekranu wyszukiwania artysty w Jinzora

270

Transmitowanie multimediw w sieci

Budowanie w Linuksie szafy grajcej przy uyciu Jinzora

Mimo e Jinzora wymaga do prawidowego dziaania wielu pakietw, proces instalacyjny


jest bardzo prosty. Aby j zainstalowa, potrzebny bdzie serwer WWW zdolny do wykonywania skryptw PHP, ktrego pakiet powinien znajdowa si w uywanej przez
nas dystrybucji Linuksa. Aby zainstalowa te programy, naley skorzysta z odpowiedniego dla tej dystrybucji narzdzia do instalowania oprogramowania. Jeeli z jakiego
powodu nie mamy pakietw z tymi narzdziami, mona pobra pliki tarball ze strony
http://httpd.apache.org oraz http://php.net, skompilowa je i zainstalowa zgodnie z zaczonymi instrukcjami instalacyjnymi.
Po zainstalowaniu obsugi Apache naley pobra najnowsz wersj pliku w formacie
tarball Jinzora i rozpakowa go do DocumentRoot na serwerze WWW Apache. Z tej lokalizacji Apache obsuguje pliki, a dokadne ich umiejscowienie zaley od sposobu zainstalowania serwera. Jeeli nie mamy co do tego pewnoci, naley odszuka plik konfiguracyjny Apache httpd.conf oraz DocumentRoot. Po rozpakowaniu pliku tarball Jinzora,
naley przej do katalogu jinzora2 i wykona nastpujce polecenie:
$ sh configure.sh

To polecenie tak ustawia prawa dostpu, aby instalacja moga by kontynuowana. Nastpnie powinnimy przeczy si do przegldarki WWW i zaadowa strony instalacyjne, korzystajc z adresu URL: http://mojserwer.com/jinzora2/index.php. Naley zastpi
fragment mojserwer.com adresem URL odpowiednim dla naszej instalacji Apache. I tutaj
dochodzimy do doskonaego, opartego na sieci instalatora Jinzora od tego momentu
w celu zakoczenia konfigurowania Jinzora trzeba bdzie wykonywa instrukcje znajdujce
si na stronie WWW. Przy pierwszym kroku instalacyjnym Jinzora sprawdza wymagane
oprogramowanie i weryfikuje prawa dostpu do potrzebnych jej plikw i katalogw. Jeeli
zajdzie potrzeba zainstalowania dodatkowych moduw oprogramowania (np. moduy
wymagane przez PHP), naley po ich instalacji ponownie uruchomi nasz serwer Apache,
aby mie pewno, e nowe moduy zostay prawidowo zaadowane.
Wydaje si, e instalator ma jedn wad po dokonaniu wyboru, Jinzora
zapisuje nasz wybr i podczas procesu instalacyjnego nie daje moliwoci
jego zmiany. W takiej sytuacji, zamiast kontynuowa instalacj i pniej
rcznie zmienia pliki konfiguracyjne, aby dostosowa je do naszych
upodoba, czasem prociej jest po prostu zrezygnowa z biecego procesu
instalacji. Wystarczy ponownie rozpakowa plik tarball Jinzora, ponownie
uruchomi skrypt configure.sh oraz ponownie rozpocz proces instalacyjny.
Za drugim razem byskawicznie przejdziemy przez proces instalacyjny.

W ostatnim etapie instalacji pojawia si danie importowania z naszych katalogw medialnych istniejcych plikw MP3 do nowych ustawie Jinzora. Wystarczy wskaza Jinzora
lokalizacj naszej muzycznej kolekcji, a ona sama importuje ca muzyk. Po zakoczeniu importowania plikw, Jinzora zostanie uruchomiona i pojawi si proba usunicia
katalogu install zawierajcego niezabezpieczone pliki instalacyjne (ze wzgldu na bezpieczestwo). Teraz jestemy ju gotowi do poznawania moliwoci Jinzora i do zaproszenia przyjaci, aby pomogli zbudowa kolekcj MP3 i si ni cieszy.
Robert Kaye

Transmitowanie multimediw w sieci

271

SPOSB

84.

SPOSB

85.

Strumieniowanie wideo przy uyciu VLC


SPOSB

85.

Strumieniowanie wideo przy uyciu VLC


VLC daje moliwo strumieniowania wideo do kadej platformy, na ktrej dziaa i odwrotnie.

W internecie jest wiele rnych komercyjnych serwerw strumieniujcych wideo, ale jeeli mamy zainstalowany VLC [Sposb 56.], mona nie tylko oglda obrazy wideo, ale
rwnie strumieniowa je przez sie. Ten podrozdzia zosta powicony opisowi sposobu korzystania z kreatora strumieni wideo VLC do strumieniowania zawartoci wideo
przez internet.
Jest wiele powodw, dla ktrych moemy chcie strumieniowa wideo, korzystajc z VLC,
poza najbardziej oczywistym bo moemy. Strumieniowanie wideo przez sie obarcza
serwer caym ciarem kodowania wideo. Oznacza to, e strumieniowane wideo moe
by odtwarzane nawet w systemach, ktre s za wolne, aby w inny sposb odtwarza
wideo, poniewa aplikacja do odtwarzania musi wykonywa tylko jedno zadanie, a mianowicie dekodowanie, i nie jest obarczona jednoczenie dwoma zadaniami kodowania
i dekodowania. Albo jeeli przechowujemy pliki wideo na serwerze i chcemy odtworzy
ja na naszym komputerze przenonym przy uyciu sieci radiowej, ale cze radiowe jest
zbyt wolne, aby odtwarza bezporednio z sieci. Albo moe chcemy odtwarza ten sam
film na kilku komputerach jednoczenie. Niezalenie od kierujcych nami motyww, VLC
oferuje kreator, ktry eliminuje du cz naszych niepewnoci w trakcie konfigurowania
serwera strumieniowania.
Aby skonfigurowa serwer strumieniowania wideo, naley uruchomi VLC i klikn File
Wizard. W oknie, ktre si pojawi naley wybra Stream the Network i klikn przycisk
Next. W nastpnym oknie mamy moliwo wyboru strumienia wejciowego, z ktrego
bdziemy korzysta. Mona wybra jako wejcie plik lokalny, a wwczas naley klikn
Choose, aby wybra jeden lub wicej plikw z naszego systemu plikw. Opcjonalnie mona
wskaza Existing playlist, co pozwoli na wybranie jednego lub wicej plikw z biecej
listy odtwarzania. Po wybraniu wejcia dla strumieniowania, naley wcisn Next.
Kolejne okno pozwala na wybranie metody strumieniowania. Jeeli planujemy strumieniowanie tylko do jednego komputera, naley wybra UDP Unicast i wpisa adres IP
klienta w znajdujcym si poniej polu tekstowym. UDP Multicast pozwala na strumieniowanie do wielu komputerw jednoczenie. Jeeli korzysta si z sieci multicast, w polu
tekstowym naley wpisa adres IP grupy docelowej (midzy 224.0.0.0 a 239.255.255.255).
Jeeli nie wiemy, co to jest multicast, najlepiej wybra UDP Unicast albo HTTP. Jeeli
klikniemy HTTP, VLC bdzie strumieniowa, korzystajc z HTTP. Mona wpisa adres IP
i port, na ktrym VLC bdzie nasuchiwa przychodzcych pocze. Jednak najlepiej jest
pozostawi to pole puste i pozwoli VLC na domylnie ustawione nasuchiwanie pocze do naszego adresu IP na porcie 8080. Po wybraniu odpowiadajcych nam ustawie,
naley przycisn Next.
W nastpnym oknie musimy wybra format dla naszego wideo. Nasz wybr bdzie uzaleniony w duej mierze od prdkoci serwera strumieniowania oraz prdkoci klienta.
Jeeli nasz klient jest szybki, bdziemy chcieli pozosta przy domylnym formacie zaproponowanym przez VLC. W przypadku wolniej dziaajcych klientw, lepiej jest wybra

272

Transmitowanie multimediw w sieci

Przechwytywanie podcastw z wiersza polece

MPEG S (format transportowania strumieni MPEG) do strumieniowania plikw wideo


MPEG, co uatwi wolnym komputerom proces odtwarzania. Kolejne okno daje moliwo
skonfigurowania ustawie Time-To-Live dla metody UDP Unicast. Generalnie lepiej jest
pozostawi t warto niezmienion, tak aby VLC mg korzysta z domylnych ustawie.
Po klikniciu Finish VLC rozpocznie strumieniowanie wideo.
Po uruchomieniu strumieniowania, moemy spauzowa lub zatrzyma odtwarzanie, korzystajc z opcji kontrolnych VLC, tak samo jak w przypadku kadego innego filmu. Po
stronie klienta naley uruchomi VLC (lub jaki inny odtwarzacz wideo obsugujcy strumienie VLC, np. MPlayer), klikn File/Open Network Stream i wybra UDP/RTP, UDP/RTP
Multicast albo HTTP, zgodnie z ustawieniami serwera VLC. Po wybraniu OK VLC rozpocznie odtwarzanie strumieniowanego wideo.
SPOSB

86.

Przechwytywanie podcastw z wiersza polece


Do pobrania naszych ulubionych podcastw z poziomu wiersza polece wystarczy prosty skrypt powoki.

Strumieniowanie audio jest ju od wielu lat obecne w internecie, niemniej jednym z problemw z nim zwizanych jest to, e poniewa jest to strumie puszczany na ywo, trzeba
si do niego dostroi o okrelonej porze, gdy w przeciwnym razie przegapimy interesujc nas audycj. W podrozdziale [Sposb 81.] opisana zostaa jedna z metod na zapisywanie strumieniowanych audycji, jednak wielu ludzi korzysta z innego rozwizania
podcastingu. Podcasting to sposb na publikowanie w internecie plikw (najczciej
plikw audio) przy wykorzystaniu obsugi RSS. Podcasting obejmuje trzy gwne kroki:
1. Podcaster nagrywa audycj w formacie audio, a nastpnie udostpnia j w sieci
WWW.
2. Obsuga RSS podcastu zostaje zaktualizowana odsyaczem do nowej zawartoci,
a ludzie, ktrzy subskrybuj RSS s powiadamiani o nowej zawartoci.
3. Osoby subskrybujce RSS pobieraj podcast i mog odsucha go na komputerze
lub w przenonym odtwarzaczu muzyki.
Istnieje wiele programw dla rnych platform, ktre gromadz podcasty i na bieco
pobieraj nowe wersje, gdy tylko si pojawi. Wiele z nich potrafi nawet zsynchronizowa nowe wersje podcastw z przenonymi odtwarzaczami audio, takimi jak iPod, tak
aby mona byo posucha interesujcej nas audycji w wolnym czasie (fragment pod
sowa podcasting pochodzi wanie od nazwy odtwarzacza iPod). Jednym z tego typu
programw przeznaczonych dla Linuksa jest Bashpodder.
Bashpodder robi ogromne wraenie swoj prostot. Skada si on z okoo czterdziestu
linii skryptu powoki, maego arkusza stylw oraz pliku konfiguracyjnego zawierajcego
odsyacze do zawartoci RSS, ktr chcemy subskrybowa. Aby zainstalowa Bashpodder,
naley pobra pliki bashpodder.shell, parse_enclosure.xsl oraz bp.conf z oficjalnego serwisu
pod adresem http://linc.homeunix.org:8080/scripts/bashpodder, a nastpnie umieci je w specjalnym katalogu (takim jak ~/bashpodder). Potem musimy zrobi plik bashpodder.shell wykonywalnym. Oto polecenia niezbdne do uruchomienia Bashpodder:

Transmitowanie multimediw w sieci

273

SPOSB

86.

SPOSB

86.

Przechwytywanie podcastw z wiersza polece


greenfly@moses:~/$ mkdir ~/bashpodder
greenfly@moses:~/$ cd bashpodder
greenfly@moses:~/bashpodder$ wget
http://linc.homeunix.org:8080/scripts/bashpodder/bashpodder.shell
greenfly@moses:~/bashpodder$ wget
http://linc.homeunix.org:8080/scripts/bashpodder/parse_enclosure.xsl
greenfly@moses:~/bashpodder$ wget
http://linc.homeunix.org:8080/scripts/bashpodder/bp.conf
greenfly@moses:~/bashpodder$ chmod a+x bashpodder.shell

Nastpny krok to skonfigurowanie Bashpodder zgodnie z zawartoci, ktr chcemy


subskrybowa. Naley otworzy bp.conf w edytorze tekstw i doda do niego adres URL
wskazujcy na RSS interesujcego nas strumienia danych, pojedynczy strumie RSS w linii.
bp.conf zawiera domylnie kilka prbnych danych RSS zgodnych z preferencjami autora
skryptu, wic mona skorzysta z nich w ramach przykadu.
Po skonfigurowaniu bp.conf zgodnie z danymi RSS, jestemy gotowi do wychwytywania
najnowszych podcastw. Naley uruchomi powok Bashpodder z wiersza polece:
greenfly@moses$ ~/bashpodder/bashpodder.shell
grep: podcast.log: No such file or directory
...

Przy pierwszym uruchomieniu Bashpodder pobierze wszystkie wskazane w pliku konfiguracyjnym podcasty, co moe zaj troch czasu. Nie naley zaprzta sobie gowy
bdem grep: No such file or directory. Bashpodder utworzy ten plik po pierwszym uruchomieniu, aby mc ledzi swoje dotychczasowe pobrania. Poniewa jednak
pobiera wszystkie pliki, ktre s powizane z wybranym RSS, ukoczenie pobierania
potrwa jaki czas. Bashpodder umieszcza wszystkie przechwycone pliki w katalogu nazwanym zgodnie z aktualn dat, wic mona zajrze do katalogu, jeeli chcemy pozna
stopie zaawansowania procesu.
Jeeli nie chcemy za pierwszym razem pobiera wszystkich elementw
podcastu, naley utworzy wasny plik podcast.log i doda do niego odsyacze
do wszystkich plikw MP3, ktre maj zosta zignorowane. Nastpnie naley
uruchomi bashpodder.shell, ktra pominie wskazane pliki.

Z uwagi na to, e Bashpodder to skrypt powoki, jest on dobrze dostosowany do dziaania


w schemacie cron. Dziki temu mona synchronizowa nasze podcasty codziennie, co
tydzie lub w wybranych przez nas okresach. Aby na przykad uruchomi Bashpodder
kadego dnia o 4:30 rano, musimy zmodyfikowa crontab dla naszego uytkownika (polecenie crontab -e), dodajc nastpujc lini:
30 4 * * * /home/nazwauzytkownika/bashpodder/bashpodder.shell

Naley zastpi powysz ciek waciw dla naszego pliku bashpodder.shell.


Zalet Bashpodder jest to, e nawet przy minimalnych umiejtnociach pisania skryptw
powoki moemy dostosowa go do naszych potrzeb. Mona doda polecenie powoki
synchronizujce pobierane pliki z przenonym odtwarzaczem audio lub zmieni sposb
nadawania nazw katalogom, w ktrych przechowywane s podcasty oraz zmodyfikowa wiele innych ustawie. W serwisie Bashpodder znajdziemy kilka przykadowych
dostosowa tego skryptu wykonanych przez innych uytkownikw.

274

Transmitowanie multimediw w sieci

Przechwytywanie podcastw przy uyciu GUI


SPOSB

87.

Przechwytywanie podcastw przy uyciu GUI


Aby pobiera podcasty, korzystajc z prostego graficznego interfejsu uytkownika, moemy skorzysta
z Monopod.

Ogromn zalet podcastingu jest wygoda: pobieranie audycji muzycznych lub gosowych z sieci WWW, aby mona je byo odsucha pniej na komputerze lub w odtwarzaczu muzyki. Klient podcastingu dla GNOME o nazwie Monopod wanie t wygod
zapewnia. Zamiast koniecznoci uywania ogromu zbijajcych z tropu konfigurowalnych
opcji, oferuje moliwo uruchomienia subskrybowania zawartoci podcastingu, a nastpnie zajcia si innymi interesujcymi nas rzeczami, natomiast przechwycon zawarto podcastw moemy odsucha w wolnym czasie.

Instalowanie
Aby zainstalowa Monopod, naley odwiedzi stron http://downloads.usefulinc.com/monopod.
Tam znajdziemy aktualne instrukcje dotyczce uruchamiania programu. Dla niektrych
dystrybucji Linuksa istniej ju gotowe do uycia pakiety, natomiast inni uytkownicy
bd musieli samodzielnie skompilowa program.

Uruchamianie programu Monopod


Monopod moemy uruchomi z menu GNOME lub wpisujc monopod w wierszu polece.
Czarna okrga ikona pojawi si na pasku z informacjami systemowymi (jeeli nie mamy
takiego paska, powinnimy uprzednio doda go do panelu GNOME, klikajc panel prawym przyciskiem myszy i wybierajc Dodaj do panelu).
Aby skorzysta z wielu dziaa oferowanych przez Monopod, wystarczy klikn prawym
przyciskiem myszy ikon na pasku z informacjami systemowymi, jak wida na rysunku 4.3.

Rysunek 4.3. Gwne menu Monopod

Aby skontrolowa podcasty, ktre subskrybujemy, naley wybra z menu Subscriptions.


Otworzy si okno podobne do przedstawionego na rysunku 4.4.
Okno subskrypcji bdzie pocztkowo wypenione domylnymi kanaami, ktre mog si
przyda do eksperymentowania. W kolumnie Subscribed naley zaznaczy pole kanau,
z ktrego maj by uzyskiwane podcasty. Status pobierania dotyczcy danego kanau jest
widoczny w oknie subskrypcji. Kady kana jest sprawdzany raz dziennie pod ktem
nowej zawartoci, a nowe pliki audio s automatycznie pobierane na dysk twardy.

Transmitowanie multimediw w sieci

275

SPOSB

87.

SPOSB

87.

Przechwytywanie podcastw przy uyciu GUI

Rysunek 4.4. Okno subskrypcji programu Monopod

Aby doda kanay, ktrych nie ma na domylnej licie, naley klikn przycisk Add i wpisa adres URL danego kanau. Rne katalogi podcastw moemy atwo znale w sieci,
wyszukujc hasa podcast directory. Jednym z najpopularniejszych katalogw jest
http://www.podcast.net.
Po znalezieniu kanau, ktry chcemy subskrybowa, naley przekopiowa jego adres URL
do okna Add Channel. Opcjonalnie mona przecign cze z przegldarki WWW do okna
Subscriptions.

Odsuchiwanie podcastw
Gdy Monopod zacznie pobiera podcasty, oczywicie bdziemy chcieli ich posucha.
Naley wybra w gwnym menu programu Show Podcasts, a wwczas zobaczymy katalog,
w ktrym jest zapisywana pobrana muzyka (zobacz rysunek 4.5).
Monopod tworzy oddzielne katalogi dla wszystkich kanaw. Wewntrz kadego katalogu znajduj si pliki audio danego podcastu oraz plik playlist.m3u. Plik odtwarzania
moe zosta zaadowany przez odtwarzacz multimedialny, taki jak XMMS czy Totem,
a wwczas bd odtwarzane wszystkie kolejne fragmenty podcastw z danego katalogu.
Ponadto Monopod tworzy list odtwarzania recent.m3u w katalogu grnego poziomu,
ktra jest po prostu list odtwarzania ostatnio pobranych podcastw.

276

Transmitowanie multimediw w sieci

Transmitowanie dwiku jako AM przy uyciu monitora

Rysunek 4.5. Katalog z pobranymi podcastami

Synchronizowanie z iPodem
Monopod oferuje moliwo podstawowej synchronizacji z iPodem. Naley podczy
nasze urzdzenie iPod i wybra z gwnego menu Update iPod, a wwczas otworzy si
okno synchronizacji.
W oknie Update iPod mona wybra urzdzenie spord rnych iPodw podczonych
do systemu: niektrzy szczciarze maj wicej ni jeden! Aby zsynchronizowa program z iPodem, naley wybra przycisk Update. Dziki temu usunite zostan z iPoda
wszystkie odsuchane podcasty, a dodane nowe. Monopod tworzy w iPodzie list odtwarzania Recent podcasts, co umoliwia atwy dostp do programw audio.
Edd Dumbill
SPOSB

88.

Transmitowanie dwiku jako AM przy uyciu monitora


Mona wykorzysta technologi monitorowania TEMPEST do transmitowania dwiku z monitora
do radia AM.

Jeeli mamy sporo do czynienia z typami paranoikw noszcych kapelusze z folii aluminiowej, moglimy sysze o skanowaniu van Ecka lub TEMPEST. TEMPEST (akronim od
Transient Electromagnetic Pulse Emanation Standard) to pojcie uywane do okrelania technik
wykorzystywanych do zapobiegania wyciekaniu z komputera poufnych informacji przez
emanacj elektromagnetyczn. Elektroniczne urzdzenia wysyaj na og w czasie uruchamiania fale elektromagnetyczne. Fakt ten dobrze ilustruje ekran telewizora, ktry zaczyna
migota, gdy wcza si wok niego rne urzdzenia elektroniczne. Rwnie monitor
(zwaszcza CRT, ale take w mniejszym stopniu LCD) wysya fale elektromagnetyczne
w momencie wczania go. Istniej metody na to, eby przechwyci te sygnay z innego,
oddalonego miejsca i przy wykorzystaniu specjalnego sprztu, a nastpnie zrekonstruowa
to, co jest wywietlane na monitorze, a wszystko to bez tego monitora w polu widzenia.

Transmitowanie multimediw w sieci

277

SPOSB

88.

SPOSB

88.

Transmitowanie dwiku jako AM przy uyciu monitora

Technologia ta ma wiele praktycznych zastosowa, zwaszcza jeeli chodzi o monitorowanie, ale na potrzeby tego podrozdziau zostan opisane mniej praktyczne, a za to bardziej zabawne aplikacje. Poniewa mona kontrolowa sygnay, ktre wydobywaj si
z naszego monitora, moemy z ca pewnoci wysya wiadomoci, korzystajc tylko
z monitora komputera. Specjalne oprogramowanie pod Linuksa o nazwie tempest_for_eliza
korzysta z tych sygnaw do nadawania z monitora dwiku, ktry moe zosta wychwycony przez radio AM.
Pierwszy krok to pobranie i zbudowanie oprogramowania tempest_for_eliza. Naley pobra najnowsz wersj z oficjalnej strony pod adresem http://www.erikyyy.de/tempest. Aby
mona byo skompilowa ten program, wymagane s biblioteki SDL. Na szczcie wikszo dystrybucji zawiera gotowy pakiet z bibliotekami SDL, wic aby zainstalowa pakiety SDL (lub libSDL) oraz SDL-devel (lub libSDL-dev), potrzebny bdzie tylko meneder
pakietw. Nastpnie naley wyekstrahowa rdo z pliku tarball, skonfigurowa je
i skompilowa tempest_for_eliza:
greenfly@moses:~$ tar xfvz tempest_for_eliza-1.0.5.tar.gz
greenfly@moses:~$ cd tempest_for_eliza
greenfly@moses:~/tempest_for_eliza$ ./configure
greenfly@moses:~/tempest_for_eliza$ ./make

Po skompilowaniu programu naley upewni si, e serwer X-w jest poprawnie ustawiony. Metoda ta dziaa najlepiej, jeeli X11 ma nisk gbi kolorw, wic naley uy
narzdzia do konfigurowania X-w, aby zmieni domyln warto dla gbi kolorw na
8 bitw na piksel (bpp). Opcjonalnie mona wej w tryb edycji pliku /etc/X11/XF86Config-4
lub /etc/X11/xorg.conf, odnale w nim sekcj Screen i zmieni warto DefaultDepth
na 8. Warto upewni si, e jest tam podsekcja Display ustawiona na 8 bpp gbi kolorw. Po skonfigurowaniu X-w, naley ponownie je uruchomi, aby zastosowane zostay nowe ustawienia.
Po ponownym uruchomieniu X-w naley otworzy terminal i wpisa w nim xvidtune,
aby uruchomi program xvidtune. Nastpnie musimy spisa wartoci HDisplay, VDisplay,
HTotal, VTotal oraz Pixel Clock. Teraz naley znale radio odbierajce AM i znale czstotliwo z ma iloci szumw. Na potrzeby tego przykadu uyjemy 750 kHz.
Teraz trzeba wrci do katalogu tempest_for_eliza i uruchomi program tempest_for_eliza
ze spisanymi wartociami Pixel Clock (przemnoonym przez milion), HDisplay, VDisplay,
HTotal oraz czstotliwoci radiowej i z nazw pliku do odtworzenia. Aby odtworzy
prbk utworu Beethovena Dla Elizy zawartego w programie, musimy wpisa:
greenfly@moses:~/tempest_for_eliza$ ./tempest_for_eliza 56300000 800 600 \
1046 750000 songs/forelise

W cytowanym przykadzie warto zegara pikselowego wynosia 56,3 (56,3 * 1000000 =


56300000), rozdzielczo miaa warto 800x600, HTotal wynosi 1046, a planowana czstotliwo nadawania to byy 750 kHz (750000). Oczywicie wikszo tych wartoci, jeeli
nie wszystkie, bdzie musiaa zosta zmieniona tak, aby byy zgodne z wartociami naszego monitora wywietlonymi przez xvidtune.

278

Transmitowanie multimediw w sieci

Transmitowanie dwiku jako AM przy uyciu monitora

Po uruchomieniu programu na ekranie wywietlonych zostanie duo elementw, ktre


bd wyglda na losowe zakcenia. Naley wwczas wczy radio AM i powoli dostosowa je do czstotliwoci nadawania, a znajdziemy wreszcie waciwe pasmo. Odkryem, e duo atwiej jest zsynchronizowa urzdzenia, jeeli szukamy w momencie,
gdy ekran wygasza si (co oznacza cisz), a co za tym idzie naley szuka fragmentw ciszy w radiu. Moliwe, e trzeba bdzie poeksperymentowa z rnymi czstotliwociami, zanim znajdziemy t waciw.
Oczywicie ten program nie odtwarza plikw dwikowych. Odtwarzany jest plik tekstowy, w ktrym zawarto kolejne nuty do odtworzenia. Mona przejrze rne pliki w katalogu z dwikiem, jeeli chcemy wiedzie, jak si konstruuje wasne pliki dwikowe.
W tym oprogramowaniu znajduje si rwnie program tempest_for_mp3, ktry pozwala
na transmitowanie plikw MP3 z uyciem tej samej metody. Tym razem bdzie to troch
bardziej skomplikowany proces, wic najprawdopodobniej bdzie trzeba troch poeksperymentowa, zanim znajdziemy waciwe kombinacje wykorzystywanych czstotliwoci.
Pierwszy krok to uruchomienie programu tempest_for_mp3 i wskazanie mu nieistniejcego pliku. Ma on kilka dodatkowych opcji, przy czym naley pamita, e liczy si kolejno ich ustawienia. Oto waciwa kolejno: zegar pikselowy, HDisplay, VDisplay,
HTotal, VTotal, czstotliwo radiowa, tryb odtwarzania (uyjemy 0), wzmocnienie
(uyjemy 20) oraz nazwa pliku. Poniej znajduje si przykad:
greenfly@moses:~/tempest_for_eliza$ ./tempest_for_mp3 56300000 800 600 1046\
631 750000 0 20 foo.raw

Warto zauway, e wikszo opcji jest taka sama jak poprzednio, dodane zostao tylko
ustawienie VTotal (631), tryb odtwarzania (0) oraz wzmocnienie (20). Naley uruchomi
program z nieistniejcym plikiem, aby tempest_for_mp3 poda w danych wyjciowych czstotliwo pliku audio do uywania z tymi ustawieniami, dziki czemu bdziemy mogli
utworzy specjalny nieprzetworzony plik audio o tej czstotliwoci. Naley poszuka
w danych wyjciowych linii o podobnej treci:
audio file frequency should be 13519.890261 Hz

Nastpnie naley uruchomi zaczony skrypt mksong.sh do przeksztacenia naszego


MP3 w nieprzetworzony plik audio wymagany przez tempest_for_mp3:
greenfly@moses:~/tempest_for_eliza$ ./mksong.sh 13519 przyklad.mp3 wyjscie.raw

Warto zauway, e czstotliwo audio zostaa podana tu w hercach. Ten skrypt wymaga, aby byy zainstalowane sox i amp, ale, jeeli chcemy, mona zastpi amp innym
programem konwertujcym pliki MP3 na WAV, ale wwczas musimy zmieni rwnie
sam skrypt. Teraz, gdy mamy ju plik wyjscie.raw, powinnimy ponownie uruchomi
tempest_for_mp3, podajc nowy plik:
greenfly@moses:~/tempest_for_eliza$ ./tempest_for_mp3 56300000 800 600 1046\
631 750000 0 20 wyjscie.raw

Tym razem monitor wywietli jeszcze bardziej interesujce zakcenia. Naley powoli dostroi radio do odpowiedniej czstotliwoci, a usyszymy dwik. Trzeba bdzie pewnie
poeksperymentowa z rnymi czstotliwociami, zanim uda si odnale t waciw.

Transmitowanie multimediw w sieci

279

SPOSB

88.

You might also like