Nebojte se Linuxu aneb úvod do zpracování videa na Linuxu
11.1.2007, Radek Jahoda, článek
Problematika nelegálního kopírování programů je v poslední době často probírána. Téměř vždy se uvádí i mnohamiliónové nebo miliardové ztráty. Proti tomuto argumentu vždy stojí cena programů, která může dosáhnout daleko větší částky, než stojí samotný hardware. Boj proti tomuto problému ale téměř vždy probíhá formou represí, která zatím nikdy nic pozitivního nepřinesla. Přitom existuje legální alternativa, která je zdarma a v mnoha oblastech lepší nebo zcela srovnatelná s placenými programy. Ano, jde o Linux a i my se jím začneme pomalu zabývat.
Tento první článek ale bude jen úvod do celé problematiky. Nechceme zde probírat základy Linuxu, protože k tomu slouží spousta jiných serverů, např. root.cz nebo abclinuxu.cz. Povídejme si ale o samotné filosofii Linuxu, o které se příliš nehovoří. A jako důkaz, že k mnoha programům, které znáte nebo používáte ve Windows existuje alternativa, tak si je představíme. Jejich použití ale necháme na jindy. Pokud tento text čte někdo, kdo se Linuxu věnuje, tak ať raději přestane číst, protože mnoho údajů zde uvedených by zasluhovalo širší diskuzi a mnohdy s nimi nemusí někdo souhlasit.
Linux jako takový je dnes poměrně široký pojem, pod kterým si každý představí spíše samotné distribuce, i když původně jde vlastně pouze o samotné jádro - operační systém. Podobně se staví do stejné pozice i licence, když se považuje za samozřejmé, že jde o svobodný software, který je dán k dispozici ve formě zdrojových kódů, se kterými si každý může dělat dělat co chce, když dodrží základní podmínku - pokud tento zdrojový kód nebo jeho části použije v jiném programu, musí dát k dispozici i celý zdrojový kód tohoto nového programu. Existuje více druhů licencí, které se mohou lišit v detailech, nejznámější a nejpoužívanější je zřejmě GPL (General Public Licence).
Aby byl Linux přístupnější pro širší masy lidí, kteří nejsou odborníky, vznikla myšlenka distribucí. Nejde již o zdrojové kódy (i když překlad dalších programů ze zdrojových kódů je samozřejmostí), ale samotné distribuce používají již přeložené programy v binární podobě, které se instalují podobně jako ve Windows. Základem (téměř) všech distribucí je to, že všechny programy jsou volně šiřitelné, a tak si svou distribuci může udělat každý. Ve skutečnosti existuje několik hlavních distribucí, které se liší způsobem tvorby instalačních balíčků programů. Od nich jsou pak odvozeny desítky nebo stovky dalších distribucí, které používají stejný balíčkovací systém, ale liší se jejich zaměření. Některé distribuce se mohou věnovat určitým oblastem zájmu a použití - např. pro kancelářské použití, systémové utility, sítě, multimédia apod. Mnoho z nich je i ve formě tzv. LiveCD distribucí, které není nutné instalovat, ale spouští se přímo nabootováním z CD nebo DVD disku. Existují i LiveCD distribuce, které se vejdou na malé 8cm disky nebo jen na klíčenku. Celý systém tak lze nosit stále sebou a při návštěvě např. internetové kavárny stačí nabootovat ze svého média a máte celý systém stále s sebou. Seznam distribucí lze najít např. na výše zmíněných serverech.
Určitě se ptáte, jak vlastně programy a distribuce vznikají, když jsou zdarma. Jde o tisíce nadšenců a dobrovolníků z celého světa, kteří se podílejí na vylepšování programů a správě distribucí. Má to své výhody i nevýhody. U často používaných programů je jejich vývoj a oprava chyb rychlá, ale u nestandardních funkcí je to právě naopak - buď nejsou implementovány vůbec, nebo jen zčásti a tak, jak se to zrovna tomu, kdo takovou funkci potřeboval a programoval, hodilo. To může být hodně daleko k dokonalosti. Výhodou ale je, že pokud někdo nějakou novou funkci potřebuje (třeba Vy), tak si ji může doprogramovat a dát upravený program zpět k dispozici pro ostatní. Není tak nutné programovat celý program znovu, protože zbytek je již k dispozici se zdrojovými kódy. Vede to k tomu, že některé programy jsou dovedeny k naprosté dokonalosti a jiné mají ke svým ekvivalentům ve Windows hodně daleko. Dalším aspektem je, že nikdo nemá důvod programovat již hotové programy znovu, takže neexistuje velké množství programů se stejným zaměřením. Jako příklad může sloužit knihovna pro kódování do MP3 formátu Lame, kterou používají snad všechny MP3 enkodéry. O tom, že jde o nejkvalitnější převod do MP3 určitě málokdo pochybuje. Ve WIndows je situace zcela jiná. Existuje spousta programů pro kódování do MP3 a spousta jich používá jiné algoritmy komprese, takže kvalita výstupu je různá. Spousta jich ale také používá Lame. Samozřejmě bez určitého zázemí by to vše nešlo. Všichni nadšenci jsou ochotni obětovat spoustu svého volného času, ale těžko po nich můžete chtít, aby ještě obětovali finance. A pro chod serverů, zajištění připojení na internet a podobné věci je zapotřebí financů hodně. Proto se do tohoto procesu angažují i velké firmy, které toto zázemí poskytují. Je to i v jejich zájmu, protože často tyto firmy používají Linux ve svém podnikání (např. HP nebo Sun prodávají velké servery vybavené právě Linuxem).
Jednou z největších distribucí, z které také vychází jeden balíčkovací systém, je Debian. Za ním nestojí žádná velká firma, která by na něj nabalovala další vlastní programy, a tak jde o nejsvobodnější distribuci. Jeho balíčkovací systém umožňuje provádět změny v konfiguraci za chodu, jednotlivé balíčky lze instalovat, odinstalovat a aktualizovat bez nutnosti restartu systému. To je nutné jen v jediném případě - při instalaci nového jádra, protože se jádro zavádí hned při startu systému. Jednotlivé balíčky mají na sebe návaznost a pokud jeden balíček závisí na jiném, tak nelze druhý odinstalovat nebo se musí odinstalovat i ten první, protože by jinak byl tento nefunkční. Jako příklad si uveďme program pro kompresi zvukových CD do MP3 formátu. Ten závisí na knihovně CDDA pro extrakci dat z CD a na knihovně Lame pro kompresi. Pokud budete instalovat tento program, tak se musí nainstalovat i CDDA a Lame, protože bez nich by byl program nefunkční. Naopak odinstalovat Lame nelze, pokud neodinstalujeme i tento program. Závislostí ale může být víc, knihovnu (resp. balíček) Lame může požadovat i jiný program a při odstranění Lame ze systému se pak musí odinstalovat všechny ostatní balíčky, které na něm závisí. Distribuce se snaží obsáhnout co nejvíce dostupných programů, takže uživatel nemusí zkoumat a hledat programy, vše je mu okamžitě k dispozici (lze instalovat buď z internetu nebo z CD a DVD médií - Debian je na třech DVD discích). Debian se zaměřuje hlavně na stabilitu, jednotlivé programy/balíčky jsou dlouho testovány, než jsou zařazeny do stabilní distribuce, což je výhodné např. pro servery, u kterých se právě stabilita vyžaduje ze všeho nejvíce, na druhou stranu v distribuci chybí nové programy nebo jejich novější verze. Do stabilní distribuce se zásadně nepřidávají nové balíčky nebo nové verze, pouze se odstraňují nalezené chyby (jelikož ke všemu jsou zdrojové kódy, tak je to možné). Nestává se tak, že by nějaký program mohl zapříčinit pád systému. Nevýhodou je to, že v současné době je poslední stabilní verze s označením Sarge již dva roky stará, což je příliš pro normální použití běžným uživatelem. Proto vznikla nová distribuce Ububtu, která z Debianu vychází, využívá stejný balíčkovací systém a zaměřuje se na běžného uživatele, který využívá hlavně Desktop (okenní prostředí). Stabilní verze je vydávána pravidelně každý půlrok, což je již přijatelná doba. Pro začínajícího uživatele jde o rozumnou volbu. Ubuntu je na Debian velmi těsně navázáno a mnozí vývojáři pracují na obou distribucích současně.
Podíváme-li se na Linux z hlediska současného uživatele Windows, tak hlavní změna je v přístupu instalace. Zatímco současné Windows se nainstalují na každém počítači stejně se stejnými programy, které pak nejdou vyjmout, tak Linux díky balíčkovacímu systému umožňuje značnou konfigurovatelnost. Ve Windows byla příkazová řádka ponechána spíše jako přívěšek, u Linuxu lze nainstalovat pouze příkazovou řádku a může fungovat i na starém počítači s procesorem 80386. Desktopové prostředí je pak nadstavbou podobně jako tomu bylo u Windows 3.1. Jiný je také přístup k ovladačům. Ve Windows je rozhraní ovladačů stejné a jednotliví výrobci hardware si píšou ovladače vlastní, které si uživatel nainstaluje. Rozhraní ovladačů není v Linuxu tak přesně definováno (dokonce ještě nedávno je ani samostatně ve formě modulů nainstalovat nešlo), a je nutné je přeložit stejným překladačem jako bylo přeloženo jádro a také se stejnou definicí rozhraní pro použité jádro. Má to výhodu i nevýhodu - při změnách a vylepšeních stačí jádro a ovladače znovu přeložit a jede se dál, pokud by Windows změnili rozhraní, byl by to daleko větší problém, viz např. VxD a WDM ovladače při přechodu z Windows 9x na 2000/XP a podobné to je nyní s Windows Vista. Další změnou je to, že se ovladače píšou na daný čip a ne příslušnou kartu. Např. TV karty s čipem BT848 nebo BT878 používají všechny stejný ovladač, takže vlastně všechny fungují stejně a často jsou opět dotaženy k dokonalosti, protože je používá daleko více lidí, kteří je mohou sami vylepšovat, protože jsou opět k dispozici zdrojové kódy. Nekonají se tak problémy s některými kartami se stejným čipem, ale jinými ovladači od různých výrobců jako ve Windows. Protože si ale výrobci nepíšou vlastní ovladače, tak pro nová zařízení ovladače často nejsou a pro některá nejsou nikdy, protože výrobce odmítne poskytnou informace o hardware, které jsou k napsání ovladačů nutné. Je tedy často nutné hardware vybírat předem, pokud ho bude chtít uživatel používat, u Windows se to rozumí samo sebou, že jsou ovladače k dispozici.
Přestože je otevřenost systému a dostupnost zdrojových kódů v Linuxu ohromným plusem, má to stinné stránky. Například přehrávání DVD disků, které je ve Windows samozřejmostí, naráží na fakt, že je zakázáno překonávat ochrany proti kopírování a poskytovat informace, které to mohou umožnit. Právě zdrojový kód je takovou informací a tak je přehrávání chráněných DVD disků v Linuxu "zakázáno". Vydavatelé mohou snadno uhlídat výrobce software, aby nepovolil kopírování, ale pouze přehrávání, ale už nemohou uhlídat masy lidí, kteří by měli tyto možnosti. Ty uvozovky jsou ale na místě, protože přestože není CSS dekodér v Linuxu oficiálně, lze ho stáhnout z mnoha jiných stránek a většina přehrávačů s ním umí pracovat.
Vraťme se ale ke koncepci sytému. Jak bylo řečeno, základem Linuxu je příkazová řádka a desktopové prostředí je jakousi nadstavbou. Rozdělení je ale o něco podrobnější. Úplně nejníže je totiž prostředí X, které zprostředkovává rozhraní mezi hardware (vstupní a výstupní zařízení) a ostatními programy pomocí jednotného rozhraní. Není závislé na určitém hardware resp. těchto vstupních a výstupních zařízeních, ale může stejně tak dobře běhat při použití klávesnice, myši a grafické karty, jako při vzdáleném připojení přes internet. Těchto rozhraní je opět více, např. X.org nebo Xfree86.org. Nad tímto rozhraním pak běží desktopovoé prostředí, které zprostředkuje základní práci - spouštění programů apod. Lze ho přirovnat ke spodní liště ve Windows s pomocnými prostředky - start menu, ovládací panel apod. Je jich docela dost, nejznámější je Gnome a KDE, existují ale i další, např. Xfce. Tvorba oken a menu je pak také samostatná, když existuje více knihoven, které tyto funkce zprostředkovávají - např. GTK, GTK+, GTK+ 2, QT3, QT4 apod. Ty jsou rovnocenné některým funkcím Windows API. Programátoři si pak mohou vybrat, které z těchto rozhraní použijí a příslušný balíček programu je pak závislý i na balíčku s touto knihovnou. Tímto způsobem je možné provést mnoho kombinací a různých instalací systému. Možná je to trochu nepřehledné a na první pohled pro uživatele matoucí, na druhou stranu si může každý vybrat prostředí, které je mu bližší. KDE se snaží ovládáním více přiblížit Windows, Gnome pak používá svůj značně modulární systém, oba jsou ale značně konfigurovatelné. Nelze říci který z nich je lepší, jejich používání je přibližně stejné (možná Gnome je o něco málo častější). Osobně jsem po vyzkoušení nakonec skončil u Gnome, které se mi po počátečních peripetiích nejvíce zalíbilo, takže se v dalším textu budu odkazovat na něj. Doporučuji ale v každém případě vyzkoušet oba dva a sami si pak vyberte. Rozdíl je i "API". Nejnovější jsou GTK+ 2 a QT4, které zprostředkovávají funkcionalitu menu jako ve Windows, kdy rozbalování menu a selekce sleduje automaticky myš, starší systémy toto nedělají. Jelikož QT prý vyžaduje koupi licence pro vývojáře (je to ale pravda?, protože názory se různí a zkoumat to nehodlám, protože pro uživatele je to bezpředmětné), nejčastějším je tak dnes GTK+ 2.
Ještě jednu informaci je nutné uživatelům Windows sdělit. Adresářový systém Linuxu nepoužívá písmena pro vybrání disků a mechanik (CD, DVD, diskety), ale jeden jednotný adresářový strom. Další změna je v tom, že oddělení adresářů v názvu cesty není pomocí zpětného lomítka , ale pomocí normálního lomítka /. Nejvyšší kořenový adresář se označuje / a nazývá se root. Kompletní cesta k nějakému souboru tak vypadá například takto: /home/kveta/dokument.txt Další změna je v tom, že programy se neinstalují do svých adresářů (ve Windows jsou to většinou C:Program files...), ale používají se jendotné adresáře, do kterých se vše kopíruje. Základní utility systému jsou v adresáři /bin, programy se instalují do /usr, spustitelné soubory jsou v adresáři /usr/bin a je k nim nastavena cesta spustitelných souborů, takže je lze spustit přímo jejich názvem bez udání cesty (soubory v aktuálním adresáři je nutné spustit pomocí ./název). Data aplikací jsou v adresáři /usr/share, data uživatelů jsou v adresáři /home/jméno uživatele, což odpovídá My Documents ve Windows. Připojená zařízení, např. CD se pro použití musí přiřadit (mount) k nějakému adresáři, ve grafické prostředí se to děje automaticky a používá se adresář /media/název zařízení, např. /media/cdrom.
No ale už dost teorií, to vše je jen základ, který má uvést základní principy Linuxu. Pokud budete chtít Linux vyzkoušet, tak stejně doporučuji buď nějakou knihu, nebo pátrat po informacích na výše uvedených serverech (i jinde). Po dlouhém úvodu se tak podívejme konečně na praktické ukázky, jak vlastně dnes desktopové prostředí Linuxu vypadá.
Na prvním obrázku je vidět Gnome desktop a jeho základní vzhled. Horní a spodní panel jsou kompletně konfigurovatelné. Přednastaveno je menu pro spouštění programů v levém horním menu, spodní panel je seznam spuštěných oken podobně jako ve Windows. V pravém dolním rohu je přepínač virtuálních ploch obrazovky, což přispívá k větší přehlednosti. Další věci, které vidíte, jsou mé přednastavené položky, které lze libovolně do panelu přidávat.
Na obrázku je vidět prohlížeč s otevřenými stránkami TV Freak, editor Writer z Openoffice.org (alternativa k balíku Microsoft Office) a na vrchu program pro správu balíčků. Existuje i verze pro textový režim aptitude, pro začátečníky je ale příjemnější Synaptic z grafického prostředí. Tímto programem lze přidávat a odebírat jednotlivé balíčky/programy. V balíku OpenOffice.org je ještě tabulkový procesor Calc (~Excell), prezentační Impress (~PowerPoint), editor matematických vzorců Math, vektorový kreslící program Draw a databázový program Base (~Access). Všimnete si také horního a spodního panelu, o kterých jsme před chvílí mluvili. Další ukázka jednoho panelu:
Pro představu, co tam například můžete mít, tak zprava doleva vidíte seznam vložených médií (konkrétně DVD disk a SD karta), dále grafická historie zátěže systému a použitá paměť (tmavě zeleně paměť programů a světle kešovaná data, která se mohou v případě nutnosti uvolnit, zpravidla se tak neděje, dokud to není opravdu nutné, takže při zkopírování CD se může celý jeho obsah natáhnout do paměti a při další práci se již z CD nečte, ale použije se cache), dále aktuální rychlost procesoru (zde dva procesory notebooku, při práci na baterii se snižuje kmitočet), teplota procesoru (na prvním obrázku vidíte i teplotu disků a systému), obrázek postavičky je ICQ (Gaim), ikona Bluetooth a status baterie. Poslední je přepínač klávesnice, čas, ovládání hlasitosti a přepínač oken. Vše je konfigurovatelné a toto je jen ukázka.
Do panelu lze přidávat jednotlivé položky jednoduše pravým tlačítkem myši a volbou vybrat, otevře se okno se seznamem nainstalovaných indikátorů. Doinstalovat je možné další pomocí balíčků.
Z dalších běžných nástrojů stojí za zmínku například Gnome Commander, což je alternativa Total Commanderu pro Windows.
A nebo textový editor Bluefish, který má podporu pro HTML editaci a zvýrazňování syntaxe různých typů dokumentů (kromě HTML i PHP, Pascal, C a mnoho dalších).
Přejděme k vypalování. To je standardně integrováno ve Gnome, takže stačí v menu otevřít Places/CD/DVD Creator stejně jako jakoukoliv jinou složku a do ní přetahat soubory a adresáře pro vypálení. Zde stojí za zmínku, že je v Linuxu nativně integrována práce s ISO soubory, což jsou image CD a DVD disků, lze je pomocí mount přiřadit jakémukoliv adresáři a pracovat s nimi jako s diskem v CD nebo DVD mechanice. Je to velice jednoduché a není nutné k tomu instalovat speciální software jako ve Windows.
Pokud máte raději programy stylu Nero Burning ROM, tak je pro vás jako stvořený Brasero. V současné verzi 0.4.4, která je v Debianu, neumí zatím vypalovat DVD Video disky, verze 0.5.1, která je v Ubuntu to již ale zvládá.
Po volbě typu projektu se přidávají soubory stejně jako v Neru přetažením z pravého adresáře do levého nebo přetažením z jakéhokoliv jiného programu.
Rovněž editace obrázků je možná a dokonce hodně pokročilá. Nejznámější program Gimp je srovnatelný s Photoshopem nebo Paint Shop Pro. Existuje do něj spousta filtrů a skriptů, osobně ho používám pouze na fotografie, ale používá ho i spousta grafiků. Jeho prostředí je rozděleno do samostatných oken, což je zřejmě jediná nevýhoda, i když je to otázka zvyku. Důvod je ten, že lze tento grafický editor najít na mnoha platformách a portování by bylo složitější. Nástroje a různá okna jako histogram, vrstvy, kanály apod. lze ale dokovat spolu do jednoho okna, otevřené soubory pak používají vlastní okno se svým menu.
Pro kreslení je pak určen Inkscape, který je alternativou k Adobe Illustratoru.
Pokud fotografujete panoramatické obrázky, tak pro Vás rovněž existuje plnohodnotný program pro spojování fotografií do panoramat (i 360°). Jmenuje se Hugin Panorama Creator. Neumí sice udělat vše automaticky, ale pomůže zvolit související body mezi dvěma sousedícími obrázky, nejprve se vybere bod na jednom obrázku a po klepnutí na stejný bod ho automaticky vycentruje. Před a po tomto propojení všech obrázků lze provést také různé korekce, než dojde k samotnému pospojování.
Pojďme konečně k něčemu z multimédií. Začneme s přehrávači zvuku a videa. Z poměrně širokého výběru si ukažme ty nejpoužívanější. K přehrávání zvuku je možné použít například Rhythmbox, který slouží i jako databáze zvukových souborů na disku. Přehrávat zvládne i internetová rádia.
Pokud máte raději přehrávače ve stylu WinAmpu, tak je zde XMMS nebo BMP (Beep Media Player), který z XMMS vychází. Vzhled lze opět měnit a nabízí v podstatě stejné funkce jako WinAmp.
Nejznámějším přehrávačem videí, o kterém slyšelo i mnoho zarytých Wokenářů, je MPlayer. Existuje totiž i verze pro Windows a Mac, jde o backend, který k přehrávání používá své dekodéry, zajímavostí jsou výstupní pluginy pro přehrávání přes různé typy zařízení a ovladačů, například framebuffer, což je overlay, dále například opengl nebo cgi. Samozřejmostí jsou všechny dnešní kodeky i podpora titulků.
Alternativou mplayeru je xine, což je další backend, na kterém je postavena spousta přehrávačů, například Totem Media Player, který má oproti mplayeru jedno okno s integrovanými ovládacími prvky.
Pro sledování TV a kompletní multimediální centrum je určen MythTV. Přirovnat lze k Windows XP MCE nebo podobným programům, podle mého názoru ale nabízí více. Zvládá nejen sledování TV včetně timeshiftu a nahrávání, ale i rekompresi nahraných pořadů do jiného formátu (například nahrávat do MJPEG a pak provést offline převod do MPEG-4 pro šetření místem na disku), díky pluginům přehrávat videa nebo DVD disky, mít přístup k počasí, používat místo budíku apod.
Co úprava a střih videa? Ani zde se neztratíme. Namísto VirtualDubu lze použít AviDemux, který používá stejnou filozofii, ale místo AVI souborů umí otevřít i MPEG, MJPEG, Hufyuv a další formáty, nezvládá snad jen H.264. Blíží se tak spíše od VirtualDubu odvozenému VirtualDubMod. Použít lze jak pro rekompresi a filtraci, tak jen na vystříhání částí s pouhou kopií bez rekomprese.
Pro zachytávání videa z DV kamer je určen program Kino. Moc toho neumí, pouze dostat video z kamery, rozdělit ho podle scén a případně provést základní střih.
Pro pokročilejší střih je určen program Cinelerra. Ten lze již považovat za plnohodnotný nelineární video editor. Umí pracovat se stopami a pokročilou kompozicí, přidat přechody a filtry.
Abychom vše nemalovali na růžovo, tak je nutné podotknout, že právě programy pro střih, které znáte z Windows, jako je Sony Vegas nebo Adobe Premiere jsou daleko dále. Hlavně ovládání a také podpora nových technologií v Cinelerre chybí. Sice již také zvládá HD video, ale podpora pro zachytávací karty a kamery chybí. Na druhou stranu vzhledem k tomu, že vše, co jste do teď viděli, je zdarma, není to vůbec špatné a pro běžného uživatele plně postačuje. Jako náhrada jednoduchých programů určitě. Je to také jediná oblast, kterou čeká ještě delší cesta ve vývoji.
Některé firmy dokonce již na Linux píšou vlastní programy, které již zdarma nejsou. To sice na jednu stranu bourá filozofii Linuxu, ale určitě ji lze vítat, protože právě dostupnost více programů může zvednout použití Linuxu jako takového. Pro příklad uveďme video editor MainActor od MainConceptu. Tuto firmu jistě znáte, její video enkodéry nelze přehlédnout, protože se např. používají i ve Vegasu nebo Premiere, navíc stejnou verzi lze zakoupit i pro Windows.
Některé programy z Windows lze dokonce používat i pod Linuxem po instalaci Wine. Toto je implementace API rozhraní Windows do jiných platforem, obecně pro UNIXové systémy a také Mac a Solaris. Tímto se ale zatím zabývat nebudeme, určitě to ale stojí za pozornost, protože i pro Windows je spousta zajímavých programů (které jsou rovněž zdarma).
Přesvědčili jsme Vás o tom, že je Linux vhodná alternativa? Možná byste ho měli sami vyzkoušet. Nedáte za to totiž ani haléř, snad jen obětujete nějaký ten čas. Záleží pak na Vás, kolik času mu chcete věnovat. Linux má totiž jednu výhodu v tom, že na něj existuje spousta programů spouštěných z příkazové řádky, jejichž kombinací lze dělat divy. Napsáním pár řádků skriptu pak lze spoustu věcí automatizovat, na což je nutné ve Windows použít spoustu složitých a velkých programů.
Připomeňme ještě možnost aktualizace pomocí balíčků, kterou lze dělat pravidelně a téměř každý týden je aktualizován novými verzemi programů. S tím souvisí i bezpečnost systému, protože téměř všechny kritické chyby, které by mohly umožnit proniknutí neznámého útočníka do počítače, jsou odstraněny velmi brzy.
Takže pokud se chcete blíže s Linuxem seznámit, jděte do toho. Na našich stránkách se mu totiž začneme také věnovat. Samozřejmě v souvislosti s TV a videem. Tento článek je jen začátek.
Linux jako takový je dnes poměrně široký pojem, pod kterým si každý představí spíše samotné distribuce, i když původně jde vlastně pouze o samotné jádro - operační systém. Podobně se staví do stejné pozice i licence, když se považuje za samozřejmé, že jde o svobodný software, který je dán k dispozici ve formě zdrojových kódů, se kterými si každý může dělat dělat co chce, když dodrží základní podmínku - pokud tento zdrojový kód nebo jeho části použije v jiném programu, musí dát k dispozici i celý zdrojový kód tohoto nového programu. Existuje více druhů licencí, které se mohou lišit v detailech, nejznámější a nejpoužívanější je zřejmě GPL (General Public Licence).
Aby byl Linux přístupnější pro širší masy lidí, kteří nejsou odborníky, vznikla myšlenka distribucí. Nejde již o zdrojové kódy (i když překlad dalších programů ze zdrojových kódů je samozřejmostí), ale samotné distribuce používají již přeložené programy v binární podobě, které se instalují podobně jako ve Windows. Základem (téměř) všech distribucí je to, že všechny programy jsou volně šiřitelné, a tak si svou distribuci může udělat každý. Ve skutečnosti existuje několik hlavních distribucí, které se liší způsobem tvorby instalačních balíčků programů. Od nich jsou pak odvozeny desítky nebo stovky dalších distribucí, které používají stejný balíčkovací systém, ale liší se jejich zaměření. Některé distribuce se mohou věnovat určitým oblastem zájmu a použití - např. pro kancelářské použití, systémové utility, sítě, multimédia apod. Mnoho z nich je i ve formě tzv. LiveCD distribucí, které není nutné instalovat, ale spouští se přímo nabootováním z CD nebo DVD disku. Existují i LiveCD distribuce, které se vejdou na malé 8cm disky nebo jen na klíčenku. Celý systém tak lze nosit stále sebou a při návštěvě např. internetové kavárny stačí nabootovat ze svého média a máte celý systém stále s sebou. Seznam distribucí lze najít např. na výše zmíněných serverech.
Určitě se ptáte, jak vlastně programy a distribuce vznikají, když jsou zdarma. Jde o tisíce nadšenců a dobrovolníků z celého světa, kteří se podílejí na vylepšování programů a správě distribucí. Má to své výhody i nevýhody. U často používaných programů je jejich vývoj a oprava chyb rychlá, ale u nestandardních funkcí je to právě naopak - buď nejsou implementovány vůbec, nebo jen zčásti a tak, jak se to zrovna tomu, kdo takovou funkci potřeboval a programoval, hodilo. To může být hodně daleko k dokonalosti. Výhodou ale je, že pokud někdo nějakou novou funkci potřebuje (třeba Vy), tak si ji může doprogramovat a dát upravený program zpět k dispozici pro ostatní. Není tak nutné programovat celý program znovu, protože zbytek je již k dispozici se zdrojovými kódy. Vede to k tomu, že některé programy jsou dovedeny k naprosté dokonalosti a jiné mají ke svým ekvivalentům ve Windows hodně daleko. Dalším aspektem je, že nikdo nemá důvod programovat již hotové programy znovu, takže neexistuje velké množství programů se stejným zaměřením. Jako příklad může sloužit knihovna pro kódování do MP3 formátu Lame, kterou používají snad všechny MP3 enkodéry. O tom, že jde o nejkvalitnější převod do MP3 určitě málokdo pochybuje. Ve WIndows je situace zcela jiná. Existuje spousta programů pro kódování do MP3 a spousta jich používá jiné algoritmy komprese, takže kvalita výstupu je různá. Spousta jich ale také používá Lame. Samozřejmě bez určitého zázemí by to vše nešlo. Všichni nadšenci jsou ochotni obětovat spoustu svého volného času, ale těžko po nich můžete chtít, aby ještě obětovali finance. A pro chod serverů, zajištění připojení na internet a podobné věci je zapotřebí financů hodně. Proto se do tohoto procesu angažují i velké firmy, které toto zázemí poskytují. Je to i v jejich zájmu, protože často tyto firmy používají Linux ve svém podnikání (např. HP nebo Sun prodávají velké servery vybavené právě Linuxem).
Jednou z největších distribucí, z které také vychází jeden balíčkovací systém, je Debian. Za ním nestojí žádná velká firma, která by na něj nabalovala další vlastní programy, a tak jde o nejsvobodnější distribuci. Jeho balíčkovací systém umožňuje provádět změny v konfiguraci za chodu, jednotlivé balíčky lze instalovat, odinstalovat a aktualizovat bez nutnosti restartu systému. To je nutné jen v jediném případě - při instalaci nového jádra, protože se jádro zavádí hned při startu systému. Jednotlivé balíčky mají na sebe návaznost a pokud jeden balíček závisí na jiném, tak nelze druhý odinstalovat nebo se musí odinstalovat i ten první, protože by jinak byl tento nefunkční. Jako příklad si uveďme program pro kompresi zvukových CD do MP3 formátu. Ten závisí na knihovně CDDA pro extrakci dat z CD a na knihovně Lame pro kompresi. Pokud budete instalovat tento program, tak se musí nainstalovat i CDDA a Lame, protože bez nich by byl program nefunkční. Naopak odinstalovat Lame nelze, pokud neodinstalujeme i tento program. Závislostí ale může být víc, knihovnu (resp. balíček) Lame může požadovat i jiný program a při odstranění Lame ze systému se pak musí odinstalovat všechny ostatní balíčky, které na něm závisí. Distribuce se snaží obsáhnout co nejvíce dostupných programů, takže uživatel nemusí zkoumat a hledat programy, vše je mu okamžitě k dispozici (lze instalovat buď z internetu nebo z CD a DVD médií - Debian je na třech DVD discích). Debian se zaměřuje hlavně na stabilitu, jednotlivé programy/balíčky jsou dlouho testovány, než jsou zařazeny do stabilní distribuce, což je výhodné např. pro servery, u kterých se právě stabilita vyžaduje ze všeho nejvíce, na druhou stranu v distribuci chybí nové programy nebo jejich novější verze. Do stabilní distribuce se zásadně nepřidávají nové balíčky nebo nové verze, pouze se odstraňují nalezené chyby (jelikož ke všemu jsou zdrojové kódy, tak je to možné). Nestává se tak, že by nějaký program mohl zapříčinit pád systému. Nevýhodou je to, že v současné době je poslední stabilní verze s označením Sarge již dva roky stará, což je příliš pro normální použití běžným uživatelem. Proto vznikla nová distribuce Ububtu, která z Debianu vychází, využívá stejný balíčkovací systém a zaměřuje se na běžného uživatele, který využívá hlavně Desktop (okenní prostředí). Stabilní verze je vydávána pravidelně každý půlrok, což je již přijatelná doba. Pro začínajícího uživatele jde o rozumnou volbu. Ubuntu je na Debian velmi těsně navázáno a mnozí vývojáři pracují na obou distribucích současně.
Podíváme-li se na Linux z hlediska současného uživatele Windows, tak hlavní změna je v přístupu instalace. Zatímco současné Windows se nainstalují na každém počítači stejně se stejnými programy, které pak nejdou vyjmout, tak Linux díky balíčkovacímu systému umožňuje značnou konfigurovatelnost. Ve Windows byla příkazová řádka ponechána spíše jako přívěšek, u Linuxu lze nainstalovat pouze příkazovou řádku a může fungovat i na starém počítači s procesorem 80386. Desktopové prostředí je pak nadstavbou podobně jako tomu bylo u Windows 3.1. Jiný je také přístup k ovladačům. Ve Windows je rozhraní ovladačů stejné a jednotliví výrobci hardware si píšou ovladače vlastní, které si uživatel nainstaluje. Rozhraní ovladačů není v Linuxu tak přesně definováno (dokonce ještě nedávno je ani samostatně ve formě modulů nainstalovat nešlo), a je nutné je přeložit stejným překladačem jako bylo přeloženo jádro a také se stejnou definicí rozhraní pro použité jádro. Má to výhodu i nevýhodu - při změnách a vylepšeních stačí jádro a ovladače znovu přeložit a jede se dál, pokud by Windows změnili rozhraní, byl by to daleko větší problém, viz např. VxD a WDM ovladače při přechodu z Windows 9x na 2000/XP a podobné to je nyní s Windows Vista. Další změnou je to, že se ovladače píšou na daný čip a ne příslušnou kartu. Např. TV karty s čipem BT848 nebo BT878 používají všechny stejný ovladač, takže vlastně všechny fungují stejně a často jsou opět dotaženy k dokonalosti, protože je používá daleko více lidí, kteří je mohou sami vylepšovat, protože jsou opět k dispozici zdrojové kódy. Nekonají se tak problémy s některými kartami se stejným čipem, ale jinými ovladači od různých výrobců jako ve Windows. Protože si ale výrobci nepíšou vlastní ovladače, tak pro nová zařízení ovladače často nejsou a pro některá nejsou nikdy, protože výrobce odmítne poskytnou informace o hardware, které jsou k napsání ovladačů nutné. Je tedy často nutné hardware vybírat předem, pokud ho bude chtít uživatel používat, u Windows se to rozumí samo sebou, že jsou ovladače k dispozici.
Přestože je otevřenost systému a dostupnost zdrojových kódů v Linuxu ohromným plusem, má to stinné stránky. Například přehrávání DVD disků, které je ve Windows samozřejmostí, naráží na fakt, že je zakázáno překonávat ochrany proti kopírování a poskytovat informace, které to mohou umožnit. Právě zdrojový kód je takovou informací a tak je přehrávání chráněných DVD disků v Linuxu "zakázáno". Vydavatelé mohou snadno uhlídat výrobce software, aby nepovolil kopírování, ale pouze přehrávání, ale už nemohou uhlídat masy lidí, kteří by měli tyto možnosti. Ty uvozovky jsou ale na místě, protože přestože není CSS dekodér v Linuxu oficiálně, lze ho stáhnout z mnoha jiných stránek a většina přehrávačů s ním umí pracovat.
Vraťme se ale ke koncepci sytému. Jak bylo řečeno, základem Linuxu je příkazová řádka a desktopové prostředí je jakousi nadstavbou. Rozdělení je ale o něco podrobnější. Úplně nejníže je totiž prostředí X, které zprostředkovává rozhraní mezi hardware (vstupní a výstupní zařízení) a ostatními programy pomocí jednotného rozhraní. Není závislé na určitém hardware resp. těchto vstupních a výstupních zařízeních, ale může stejně tak dobře běhat při použití klávesnice, myši a grafické karty, jako při vzdáleném připojení přes internet. Těchto rozhraní je opět více, např. X.org nebo Xfree86.org. Nad tímto rozhraním pak běží desktopovoé prostředí, které zprostředkuje základní práci - spouštění programů apod. Lze ho přirovnat ke spodní liště ve Windows s pomocnými prostředky - start menu, ovládací panel apod. Je jich docela dost, nejznámější je Gnome a KDE, existují ale i další, např. Xfce. Tvorba oken a menu je pak také samostatná, když existuje více knihoven, které tyto funkce zprostředkovávají - např. GTK, GTK+, GTK+ 2, QT3, QT4 apod. Ty jsou rovnocenné některým funkcím Windows API. Programátoři si pak mohou vybrat, které z těchto rozhraní použijí a příslušný balíček programu je pak závislý i na balíčku s touto knihovnou. Tímto způsobem je možné provést mnoho kombinací a různých instalací systému. Možná je to trochu nepřehledné a na první pohled pro uživatele matoucí, na druhou stranu si může každý vybrat prostředí, které je mu bližší. KDE se snaží ovládáním více přiblížit Windows, Gnome pak používá svůj značně modulární systém, oba jsou ale značně konfigurovatelné. Nelze říci který z nich je lepší, jejich používání je přibližně stejné (možná Gnome je o něco málo častější). Osobně jsem po vyzkoušení nakonec skončil u Gnome, které se mi po počátečních peripetiích nejvíce zalíbilo, takže se v dalším textu budu odkazovat na něj. Doporučuji ale v každém případě vyzkoušet oba dva a sami si pak vyberte. Rozdíl je i "API". Nejnovější jsou GTK+ 2 a QT4, které zprostředkovávají funkcionalitu menu jako ve Windows, kdy rozbalování menu a selekce sleduje automaticky myš, starší systémy toto nedělají. Jelikož QT prý vyžaduje koupi licence pro vývojáře (je to ale pravda?, protože názory se různí a zkoumat to nehodlám, protože pro uživatele je to bezpředmětné), nejčastějším je tak dnes GTK+ 2.
Ještě jednu informaci je nutné uživatelům Windows sdělit. Adresářový systém Linuxu nepoužívá písmena pro vybrání disků a mechanik (CD, DVD, diskety), ale jeden jednotný adresářový strom. Další změna je v tom, že oddělení adresářů v názvu cesty není pomocí zpětného lomítka , ale pomocí normálního lomítka /. Nejvyšší kořenový adresář se označuje / a nazývá se root. Kompletní cesta k nějakému souboru tak vypadá například takto: /home/kveta/dokument.txt Další změna je v tom, že programy se neinstalují do svých adresářů (ve Windows jsou to většinou C:Program files...), ale používají se jendotné adresáře, do kterých se vše kopíruje. Základní utility systému jsou v adresáři /bin, programy se instalují do /usr, spustitelné soubory jsou v adresáři /usr/bin a je k nim nastavena cesta spustitelných souborů, takže je lze spustit přímo jejich názvem bez udání cesty (soubory v aktuálním adresáři je nutné spustit pomocí ./název). Data aplikací jsou v adresáři /usr/share, data uživatelů jsou v adresáři /home/jméno uživatele, což odpovídá My Documents ve Windows. Připojená zařízení, např. CD se pro použití musí přiřadit (mount) k nějakému adresáři, ve grafické prostředí se to děje automaticky a používá se adresář /media/název zařízení, např. /media/cdrom.
No ale už dost teorií, to vše je jen základ, který má uvést základní principy Linuxu. Pokud budete chtít Linux vyzkoušet, tak stejně doporučuji buď nějakou knihu, nebo pátrat po informacích na výše uvedených serverech (i jinde). Po dlouhém úvodu se tak podívejme konečně na praktické ukázky, jak vlastně dnes desktopové prostředí Linuxu vypadá.
Na prvním obrázku je vidět Gnome desktop a jeho základní vzhled. Horní a spodní panel jsou kompletně konfigurovatelné. Přednastaveno je menu pro spouštění programů v levém horním menu, spodní panel je seznam spuštěných oken podobně jako ve Windows. V pravém dolním rohu je přepínač virtuálních ploch obrazovky, což přispívá k větší přehlednosti. Další věci, které vidíte, jsou mé přednastavené položky, které lze libovolně do panelu přidávat.
Na obrázku je vidět prohlížeč s otevřenými stránkami TV Freak, editor Writer z Openoffice.org (alternativa k balíku Microsoft Office) a na vrchu program pro správu balíčků. Existuje i verze pro textový režim aptitude, pro začátečníky je ale příjemnější Synaptic z grafického prostředí. Tímto programem lze přidávat a odebírat jednotlivé balíčky/programy. V balíku OpenOffice.org je ještě tabulkový procesor Calc (~Excell), prezentační Impress (~PowerPoint), editor matematických vzorců Math, vektorový kreslící program Draw a databázový program Base (~Access). Všimnete si také horního a spodního panelu, o kterých jsme před chvílí mluvili. Další ukázka jednoho panelu:
Pro představu, co tam například můžete mít, tak zprava doleva vidíte seznam vložených médií (konkrétně DVD disk a SD karta), dále grafická historie zátěže systému a použitá paměť (tmavě zeleně paměť programů a světle kešovaná data, která se mohou v případě nutnosti uvolnit, zpravidla se tak neděje, dokud to není opravdu nutné, takže při zkopírování CD se může celý jeho obsah natáhnout do paměti a při další práci se již z CD nečte, ale použije se cache), dále aktuální rychlost procesoru (zde dva procesory notebooku, při práci na baterii se snižuje kmitočet), teplota procesoru (na prvním obrázku vidíte i teplotu disků a systému), obrázek postavičky je ICQ (Gaim), ikona Bluetooth a status baterie. Poslední je přepínač klávesnice, čas, ovládání hlasitosti a přepínač oken. Vše je konfigurovatelné a toto je jen ukázka.
Do panelu lze přidávat jednotlivé položky jednoduše pravým tlačítkem myši a volbou vybrat, otevře se okno se seznamem nainstalovaných indikátorů. Doinstalovat je možné další pomocí balíčků.
Z dalších běžných nástrojů stojí za zmínku například Gnome Commander, což je alternativa Total Commanderu pro Windows.
A nebo textový editor Bluefish, který má podporu pro HTML editaci a zvýrazňování syntaxe různých typů dokumentů (kromě HTML i PHP, Pascal, C a mnoho dalších).
Přejděme k vypalování. To je standardně integrováno ve Gnome, takže stačí v menu otevřít Places/CD/DVD Creator stejně jako jakoukoliv jinou složku a do ní přetahat soubory a adresáře pro vypálení. Zde stojí za zmínku, že je v Linuxu nativně integrována práce s ISO soubory, což jsou image CD a DVD disků, lze je pomocí mount přiřadit jakémukoliv adresáři a pracovat s nimi jako s diskem v CD nebo DVD mechanice. Je to velice jednoduché a není nutné k tomu instalovat speciální software jako ve Windows.
Pokud máte raději programy stylu Nero Burning ROM, tak je pro vás jako stvořený Brasero. V současné verzi 0.4.4, která je v Debianu, neumí zatím vypalovat DVD Video disky, verze 0.5.1, která je v Ubuntu to již ale zvládá.
Po volbě typu projektu se přidávají soubory stejně jako v Neru přetažením z pravého adresáře do levého nebo přetažením z jakéhokoliv jiného programu.
Rovněž editace obrázků je možná a dokonce hodně pokročilá. Nejznámější program Gimp je srovnatelný s Photoshopem nebo Paint Shop Pro. Existuje do něj spousta filtrů a skriptů, osobně ho používám pouze na fotografie, ale používá ho i spousta grafiků. Jeho prostředí je rozděleno do samostatných oken, což je zřejmě jediná nevýhoda, i když je to otázka zvyku. Důvod je ten, že lze tento grafický editor najít na mnoha platformách a portování by bylo složitější. Nástroje a různá okna jako histogram, vrstvy, kanály apod. lze ale dokovat spolu do jednoho okna, otevřené soubory pak používají vlastní okno se svým menu.
Pro kreslení je pak určen Inkscape, který je alternativou k Adobe Illustratoru.
Pokud fotografujete panoramatické obrázky, tak pro Vás rovněž existuje plnohodnotný program pro spojování fotografií do panoramat (i 360°). Jmenuje se Hugin Panorama Creator. Neumí sice udělat vše automaticky, ale pomůže zvolit související body mezi dvěma sousedícími obrázky, nejprve se vybere bod na jednom obrázku a po klepnutí na stejný bod ho automaticky vycentruje. Před a po tomto propojení všech obrázků lze provést také různé korekce, než dojde k samotnému pospojování.
Pojďme konečně k něčemu z multimédií. Začneme s přehrávači zvuku a videa. Z poměrně širokého výběru si ukažme ty nejpoužívanější. K přehrávání zvuku je možné použít například Rhythmbox, který slouží i jako databáze zvukových souborů na disku. Přehrávat zvládne i internetová rádia.
Pokud máte raději přehrávače ve stylu WinAmpu, tak je zde XMMS nebo BMP (Beep Media Player), který z XMMS vychází. Vzhled lze opět měnit a nabízí v podstatě stejné funkce jako WinAmp.
Nejznámějším přehrávačem videí, o kterém slyšelo i mnoho zarytých Wokenářů, je MPlayer. Existuje totiž i verze pro Windows a Mac, jde o backend, který k přehrávání používá své dekodéry, zajímavostí jsou výstupní pluginy pro přehrávání přes různé typy zařízení a ovladačů, například framebuffer, což je overlay, dále například opengl nebo cgi. Samozřejmostí jsou všechny dnešní kodeky i podpora titulků.
Alternativou mplayeru je xine, což je další backend, na kterém je postavena spousta přehrávačů, například Totem Media Player, který má oproti mplayeru jedno okno s integrovanými ovládacími prvky.
Pro sledování TV a kompletní multimediální centrum je určen MythTV. Přirovnat lze k Windows XP MCE nebo podobným programům, podle mého názoru ale nabízí více. Zvládá nejen sledování TV včetně timeshiftu a nahrávání, ale i rekompresi nahraných pořadů do jiného formátu (například nahrávat do MJPEG a pak provést offline převod do MPEG-4 pro šetření místem na disku), díky pluginům přehrávat videa nebo DVD disky, mít přístup k počasí, používat místo budíku apod.
Co úprava a střih videa? Ani zde se neztratíme. Namísto VirtualDubu lze použít AviDemux, který používá stejnou filozofii, ale místo AVI souborů umí otevřít i MPEG, MJPEG, Hufyuv a další formáty, nezvládá snad jen H.264. Blíží se tak spíše od VirtualDubu odvozenému VirtualDubMod. Použít lze jak pro rekompresi a filtraci, tak jen na vystříhání částí s pouhou kopií bez rekomprese.
Pro zachytávání videa z DV kamer je určen program Kino. Moc toho neumí, pouze dostat video z kamery, rozdělit ho podle scén a případně provést základní střih.
Pro pokročilejší střih je určen program Cinelerra. Ten lze již považovat za plnohodnotný nelineární video editor. Umí pracovat se stopami a pokročilou kompozicí, přidat přechody a filtry.
Abychom vše nemalovali na růžovo, tak je nutné podotknout, že právě programy pro střih, které znáte z Windows, jako je Sony Vegas nebo Adobe Premiere jsou daleko dále. Hlavně ovládání a také podpora nových technologií v Cinelerre chybí. Sice již také zvládá HD video, ale podpora pro zachytávací karty a kamery chybí. Na druhou stranu vzhledem k tomu, že vše, co jste do teď viděli, je zdarma, není to vůbec špatné a pro běžného uživatele plně postačuje. Jako náhrada jednoduchých programů určitě. Je to také jediná oblast, kterou čeká ještě delší cesta ve vývoji.
Některé firmy dokonce již na Linux píšou vlastní programy, které již zdarma nejsou. To sice na jednu stranu bourá filozofii Linuxu, ale určitě ji lze vítat, protože právě dostupnost více programů může zvednout použití Linuxu jako takového. Pro příklad uveďme video editor MainActor od MainConceptu. Tuto firmu jistě znáte, její video enkodéry nelze přehlédnout, protože se např. používají i ve Vegasu nebo Premiere, navíc stejnou verzi lze zakoupit i pro Windows.
Některé programy z Windows lze dokonce používat i pod Linuxem po instalaci Wine. Toto je implementace API rozhraní Windows do jiných platforem, obecně pro UNIXové systémy a také Mac a Solaris. Tímto se ale zatím zabývat nebudeme, určitě to ale stojí za pozornost, protože i pro Windows je spousta zajímavých programů (které jsou rovněž zdarma).
Přesvědčili jsme Vás o tom, že je Linux vhodná alternativa? Možná byste ho měli sami vyzkoušet. Nedáte za to totiž ani haléř, snad jen obětujete nějaký ten čas. Záleží pak na Vás, kolik času mu chcete věnovat. Linux má totiž jednu výhodu v tom, že na něj existuje spousta programů spouštěných z příkazové řádky, jejichž kombinací lze dělat divy. Napsáním pár řádků skriptu pak lze spoustu věcí automatizovat, na což je nutné ve Windows použít spoustu složitých a velkých programů.
Připomeňme ještě možnost aktualizace pomocí balíčků, kterou lze dělat pravidelně a téměř každý týden je aktualizován novými verzemi programů. S tím souvisí i bezpečnost systému, protože téměř všechny kritické chyby, které by mohly umožnit proniknutí neznámého útočníka do počítače, jsou odstraněny velmi brzy.
Takže pokud se chcete blíže s Linuxem seznámit, jděte do toho. Na našich stránkách se mu totiž začneme také věnovat. Samozřejmě v souvislosti s TV a videem. Tento článek je jen začátek.