<?xml version="1.0" encoding="utf-8"?><!-- synced with 1.11 --><chapter id="cd-dvd"><title>U甜ywanie CD/DVD</title><sect1 id="drives"><title>Nap�dy CD/DVD</title><para>Fragment dokumentacji Linuksa:</para><para>Nowoczesne nap�dy CD-ROM osi�gaj� bardzo du甜e pr�dko�ci. Niekt坦re z nich s�dodatkowo zdolne do pracy przy zredukowanych pr�dko�ciach. Oto kilka powod坦w,dla kt坦rych powinni�my zastanowi� si� czy nie nale甜y zredukowa� pr�dko�cinaszego nap�du:</para><itemizedlist><listitem><para>Istniej� doniesienia o b��dach odczytu przy du甜ych pr�dko�ciach, szczeg坦lniepodczas u甜ywania uszkodzonych b�d添 wadliwie wyt�oczonych/nagranych p�yt CD.Redukcja pr�dko�ci odczytu mo甜e uchroni� nas przed utrat� danych w takichprzypadkach.</para></listitem><listitem><para>Wiele nap�d坦w CD jest dokuczliwie g�o�nych. Redukcja pr�dko�ci mo甜e zmniejszy�nat�甜enie ha�asu.</para></listitem></itemizedlist><para>Redukcj� pr�dko�ci nap�du CD z interfejsem IDE mo甜emy uzysta� korzystaj�c z<command>hdparm</command> b�d添 programu <command>setcd</command>. Dzia�aj� one wnast�puj�cy spos坦b:<screen>hdparm -E <replaceable>[pr�dko��]</replaceable> <replaceable>[urz�dzenie cdrom]</replaceable></screen><screen>setcd -x <replaceable>[pr�dko��]</replaceable> <replaceable>[urz�dzenie cdrom]</replaceable></screen></para><para>Je甜eli masz uprawnienia roota, to pom坦c mo甜e tak甜e nast�puj�ca komenda:<screen>echo file_readahead:2000000 > /proc/ide/<replaceable>[urz�dzenie cdrom]</replaceable>/settings</screen></para><para>Ustawiamy w ten spos坦b wielko�� bufora odczytu na 2MB, co pomaga przy odczycieporysowanych p�yt. Je甜eli ustawimy zbyt du甜� wielko�� tego bufora, nap�d b�dziestale rozkr�ca� si� i zwalnia�, co spowoduje bardzo znaczny spadek wydajno�ci.Zaleca si� r坦wnie甜 dostrojenie nap�du CD-ROM przy u甜yciu<command>hdparm</command>:<screen>hdparm -d1 -a8 -u1 <replaceable>[urz�dzenie cdrom]</replaceable></screen></para><para>W��czamy w ten spos坦b dost�p DMA do dysku, czytanie z wyprzedzeniem iodmaskowanie IRQ (IRQ unmasking) (wi�cej przeczytasz na stronach man do<command>hdparm</command>)</para><para>Prosz� sprawdzi� "<filename>/proc/ide/<replaceable>urz�dzeniecdrom</replaceable>/settings"</filename>dla dostrojenia swojego nap�du CD-ROM.</para><para>Dla nap�d坦w SCSI nie istnieje jednolity spos坦b ustawiawiania tych parametr坦w(je甜eli znasz jaki� to napisz nam o nim). Istnieje narz�dzie kt坦re dzia�a z<ulink url="http://das.ist.org/~georg/">nap�dami SCSI Plextor</ulink>.</para><para>FreeBSD:</para><para>Pr�dko��: <command>cdcontrol [-f <replaceable>device</replaceable>] speed <replaceable>speed</replaceable></command></para><para>DMA: <command>sysctl hw.ata.atapi_dma=1</command></para></sect1><sect1 id="dvd"><title>Odtwarzanie DVD</title><para>Aby pozna� pe�n� list� dost�pnych opcji, prosz� przeczyta� odpowiednie stronyman. Sk�adnia dla standardowego DVD (Digital Versatile Disc) jest nast�puj�ca:<screen>mplayer dvd://<replaceable><�cie甜ka></replaceable> [-dvd-device <replaceable><urz�dzenie></replaceable>]</screen></para><para>Przyk�ad:<screen>mplayer dvd://<replaceable>1</replaceable> -dvd-device <replaceable>/dev/hdc</replaceable></screen></para><para>Domy�lnym urz�dzeniem (device) DVD jest <filename>/dev/dvd</filename>. Je甜eliTwoje ustawienia s� inne, stw坦rz odpowiedni symlink lub ustaw odpowiednieurz�dzenie (device) w linii polecenia korzystaj�c z opcji<option>-dvd-device</option>.</para><formalpara><title>Obs�uga DVD - nowy spos坦b (mpdvdkit2)</title><para><application>MPlayer</application> u甜ywa <systemitem>libdvdread</systemitem>oraz <systemitem>libdvdcss</systemitem> do dekodowania i odtwarzania DVD. Tedwie biblioteki s� zawarte w podkatalogu <filename class="directory">libmpdvdkit2/</filename>w g�坦wnym drzewie katalog坦w <application>MPlayera</application>, nie trzebainstalowa� ich osobno. Wybrali�my t� opcj� poniewa甜 musieli�my poprawi� b��d<systemitem>libdvdread</systemitem> i zastosowa� �atk� (patch), kt坦ra dodajeobs�ug� <emphasis role="bold">buforowania z�amanych kluczy CSS</emphasis> do<systemitem>libdvdcss</systemitem>. Skutkuje to du甜ym wzrostem szybko�ciponiewa甜 klucze nie musz� by� �amane za ka甜dym razem przed odtwarzaniem.</para></formalpara><note><para>Je�li wyst�puj� problemy z dekodowaniem DVD, spr坦buj wy��czy� supermount alboinne tego typu us�ugi.</para></note><para><application>MPlayer</application> potrafi tak甜e u甜ywa� bibliotek systemowych<systemitem>libdvdread</systemitem>oraz <systemitem>libdvdcss</systemitem>, ale to rozwi�zanie jest<emphasis role="bold">nie</emphasis> zalecane, gdy甜 mo甜e powodowa� b��dy,niekompatybilno�ci bibliotek oraz zmniejszenie pr�dko�ci.</para><note><para>W przypadku problem坦w z dekodowaniem DVD, spr坦buj wy��czy� supermount, b�d添inne tego typu udogodnienia.</para></note><formalpara><title>Struktura dysku DVD</title><para>Dyski DVD maj� po 2048 bajt坦w na sektor z ECC/CRC. Zwykle posiadaj� systemplik坦w UDF na pojedynczej �cie甜ce zawieraj�cej r坦甜norakie pliki (ma�e pliki .IFOi .BUK oraz du甜e (1GB) pliki .VOB).S� one rzeczywistymi plikami i mog� by� kopiowane/odtwarzane z podmontowanegosystemu plik坦w niezakodowanego DVD.</para></formalpara><para>Pliki .IFO zawieraj� informacje nawigacyjne filmu (rozdzia�/tytu�/mapazaczep坦w/tablica j�zyk坦w, itp) i s� konieczne do odczytu i interpretacjizawarto�ci pliku .VOB (filmu). Pliki .BUK s� kopiami zapasowymi plik坦w .IFO.U甜ywaj� <emphasis role="bold">sektor坦w</emphasis> wsz�dzie, wi�c abyzaimplementowa� nawigacj� na DVD lub rozszyfrowa� zawarto��, nale甜y u甜ywa�adresowania sektor坦w dysku w trybie raw.</para><para>Z tego powodu obs�uga DVD w starym stylu z u甜yciem<systemitem>libcss</systemitem> wymaga podmontowanego systemu plik坦w DVD orazdost�pu do urz�dzenia w trybie raw bazuj�cym na sektorach. Niestety wymaganejest (pod Linuksem) posiadanie uprawnie� roota aby m坦c korzysta� z sektorowegoadresowania pliku. Wyb坦r jest nast�puj�cy:<itemizedlist><listitem><para>Posiada� uprawnienia roota lub u甜ywa� programu wykonywalnego<application>MPlayera</application> posiadaj�cego prawa suid-root.</para></listitem><listitem><para>Pozwoli� <application>MPlayerowi</application> na uruchamianie owijacza(wrapper) fibmap_mplayer w trybie suid-root w celu uzyskania dost�pu do DVD(u甜ywane przy odtwarzaniu DVD star� metod� poprzez<systemitem>libcss</systemitem>).</para></listitem><listitem><para>Wcale nie u甜ywa� sterownika systemu plik坦w zawartego w j�drze lecz korzysta�jedynie z narz�dzi dzia�aj�cych w przestrzeni u甜ytkownika. Zajmuj� si� tymbiblioteki <systemitem>libdvdread</systemitem> 0.9.x i<systemitem>libmpdvdkit</systemitem> (obs�uga DVD nowym sposobem). Sterowniksystemu plik坦w UDF zawarty w j�drze nie jest wymagany poniewa甜 wspomnianebiblioteki zawieraj� w�asny, wbudowany sterownik systemu plik坦w UDF. DVD niemusi by� podmontowany, bowiem u甜ywany jest jedynie dost�p w trybie raw.</para></listitem></itemizedlist></para><para>Czasami <filename>/dev/dvd</filename> nie mo甜e by� czytany przez u甜ytkownik坦w,zatem autorzy <systemitem>libdvdread</systemitem> zaimplementowali emulacj�warstwy, kt坦ra przenosi adresowanie sektorowe na nazwy plik坦w i offsety, aby ju甜u 添r坦de� podmontowanego systemu plik坦w emulowa� dost�p w trybie raw, na r坦wni zdost�pem do dysku twardego.</para><para><systemitem>libdvdread</systemitem> r坦wnie dobrze akceptuje miejscepodmontowania (mountpoint) jak i nazw� urz�dzenia przy dost�pie w trybie raw isprawdza <filename>/proc/mounts</filename> w celu odnalezienia odpowiedniejnazwy urz�dzenia (device). Zosta�o to napisane z my�l� o systemie Solaris, gdzienazwy urz�dze� s� przydzielane automatycznie.</para><para>Domy�lnym urz�dzeniem (device) DVD jest <filename>/dev/dvd</filename>. Je甜eliTwoje ustawienia s� inne, stw坦rz odpowiedni symlink lub ustaw odpowiednieurz�dzenie w linii polecenia korzystaj�c z opcji <option>-dvd-device</option>.</para><formalpara><title>Autoryzacja DVD</title><para>Metoda autoryzacji i rozszyfrowywania u甜ywana gdy korzystamy z DVD przy u甜yciunowego sposobu polega na korzystaniu ze zmodyfikowanej biblioteki<systemitem>libdvdcss</systemitem> (patrz wy甜ej). Ta metoda mo甜e by� okre�lonapoprzez zmienna �rodowiskow� <envar>DVDCSS_METHOD</envar>, kt坦ra mo甜e by�ustawiona na "key", "disk" albo "title".</para></formalpara><para>Je甜eli 甜adna warto�� nie jest ustawiona, pr坦bowane s� nast�puj�ce metody(domy�lnie: "key", "title request"):</para><orderedlist><listitem><para><emphasis role="bold">bus key</emphasis>: Ten klucz jest ustalany podczasautoryzacji (d�uga mieszanina ioctl'i i rozmaite wymiany kluczy, bajerykryptograficzne) oraz jest u甜ywany do szyfrowania tytu�u i kluczy dyskowychprzed wys�aniem ich nieszyfrowan� magistral� (by zapobiec pods�uchiwaniu). Buskey jest wymagany do pobrania i wst�pnego rozszyfrowania zaszyfrowanego kluczadyskowego (disk key).</para></listitem><listitem><para><emphasis role="bold">cached key</emphasis>: <application>MPlayer</application>wyszukuje ju甜 z�amane klucze tytu�坦w, kt坦re s� przechowywane w katalogu<filename class="directory">~/.mplayer/DVDKeys</filename> (szybkie ;) ).</para></listitem><listitem><para><emphasis role="bold">key</emphasis>: Je甜eli 甜aden zbuforowany klucz nie jestdost�pny, <application>MPlayer</application> pr坦buje rozszyfrowa� klucz dyskowykorzystaj�c z gar�ci kluczy zaszytych w odtwarzaczu.</para></listitem><listitem><para><emphasis role="bold">disk</emphasis>: Je甜eli metoda "key" zawodzi (np. brakkluczy zaszytych w odtwarzaczu), <application>MPlayer</application> z�amie kluczdyskowy u甜ywaj�c algorytmu ataku brutalnego. Proces ten jest bardzoprocesoroch�onny i wymaga 64 MB pami�ci (16777216 (16*2^20) 32-bitowych p坦ltabeli hash) do przechowywania tymczasowych danych. Ta metoda powinna zadzia�a�zawsze (niestety jest wolna).</para></listitem><listitem><para><emphasis role="bold">title request</emphasis>: Maj�c klucz dyskowy<application>MPlayer</application> pobiera zaszyfrowane klucze tytu�owe (titlekey), kt坦re s� zawarte w <emphasis>ukrytych sektorach (hiddensectors)</emphasis> u甜ywaj�c <systemitem>ioctl()</systemitem>. Ochronaregionalna w nap�dach RPC-2 jest realizowana w tym kroku i mo甜e si� nie uda� natych nap�dach. Je�li jednak si� uda, klucze tytu�owe zostaj� rozszyfrowane przyu甜yciu magistrali i klucza dyskowego.</para></listitem><listitem><para><emphasis role="bold">title</emphasis>: Ta metoda jest u甜ywana je甜eli zapytanieo tytu� zako�czy�o si� niepowodzeniem i nie mo甜na polega� na 甜adnej wymianiekluczy z nap�dem DVD. U甜ywa ona ataku kryptograficznego w celu odgadni�ciaklucza tytu�owego (title key) wprost (poprzez szukanie powtarzaj�cego si� ci�guznak坦w (wzoru) w rozszyfrowanej zawarto�ci pliku VOB oraz poprzez zgadywanie, 甜eczysty tekst odpowiadaj�cy pierwszym zaszyfrowanym bajtom jest kontynuacj�wzoru). Metoda ta jest tak甜e znana jako "znany czysto-tekstowy atak (knownplaintext attack)" b�d添 "DeCSSPlus". Rzadko zdarza si�, ale si�zdarza, 甜e metoda ta mo甜e zawie�� poniewa甜 jest niewystarczaj�co du甜ozaszyfrowanych danych na dysku aby spe�ni� za�o甜enia statystycznego ataku lubponiewa甜 klucz zmienia si� w trakcie tytu�u. Jest to jedyna metoda, abyzdeszyfrowa� DVD przechowywane na twardym dysku lub DVD ze z�ym regionem nanap�dzie RPC2 (powolne).</para></listitem></orderedlist><para>Nap�dy DVD RPC-1 zabezpieczaj� ustawienia regionu jedynie poprzezoprogramowanie. Nap�dy RPC-2 maj� sprz�towe zabezpieczenie, kt坦re pozwala na conajwy甜ej 5 zmian. Je甜eli posiadamy nap�d DVD RPC-2 wymagana/zalecana jestaktualizacja firmware'u do RPC-1 . Nowe wersje firmware'坦w mo甜na znale添� na tej<ulink url="http://www.firmware-flash.com">stronie z firmware'ami</ulink>.Je甜eli nie ma tam nowej wersji firmware'u dla naszego urz�dzenia, u甜yj<ulink url="http://www.linuxtv.org/download/dvd/dvd_disc_20000215.tar.gz">regionset tool(narz�dzia do zmiany region坦w)</ulink> aby ustawi� kod regionu na swoim nap�dzieDVD (pod Linuksem). <emphasis role="bold">Ostrze甜enie</emphasis>: Mo甜eszustawi� region tylko 5 razy.</para></sect1><sect1 id="vcd"><title>Odtwarzanie VCD</title><para>Pe�na lista dost�pnych opcji znajduje si� na stronie man. Sk�adnia dlastandardowego Video CD (VCD) jest nast�puj�ca:<screen>mplayer vcd://<replaceable><�cie甜ka></replaceable> [-cdrom-device <replaceable><urz�dzenie></replaceable>]</screen>Przyk�ad:<screen>mplayer vcd://2 -cdrom-device /dev/hdc</screen>Domy�lnym urz�dzeniem VCD jest <filename>/dev/cdrom</filename>. Je�liTwoje ustawienia s� inne, utw坦rz dowi�zanie symbolicznelub podaj prawid�owe urz�dzenie w linii polece� za pomoc� opcji<option>-cdrom-device</option></para><note><para>Przynajmniej nap�dy CD-ROM SCSI firmy Plextor i niekt坦re modele Toshibymaj� beznadziejn� wydajno�� przy odczycie VCD. Jest to spowodowaneniekompletn� implementacj� <systemitem>ioctl</systemitem>'a CDROMREADRAW dlatych urz�dze�. Je�li masz jakie� poj�cie o programowaniu SCSI,<ulink url="../../tech/patches.txt">pom坦甜 nam</ulink> zaimplementowa� og坦ln�obs�ug� SCSI dla VCD.</para></note><para>W mi�dzyczasie mo甜esz wyci�ga� dane z VCD za pomoc�<ulink url="http://140.132.1.204/OS/Linux/packages/X/viewers/readvcd/">readvcd</ulink>i odtwarza� plik wynikowy za pomoc� <application>MPlayera</application></para><formalpara><title>Struktura VCD</title><para>P�yty VCD sk�adaj� si� z jednej lub wi�cej �cie甜ek:</para></formalpara><itemizedlist><listitem><para>Pierwsza �cie甜ka jest ma�� �cie甜k� o g�sto�ci 2048 bajt坦w/sektor z danymi wsystemie plik坦w iso9660, zwykle zawieraj�ca windowsowy odtwarzacz VCD i by�mo甜e inne informacje (obrazy, tekst, itp.).</para></listitem><listitem><para>Druga i pozosta�e �cie甜ki o g�sto�ci 2324 bajt坦w/sektor zawieraj� po jednympakiecie czystego strumienia MPEG PS na sektor zamiast systemu plik坦w.Podobnie, jak w przypadku �cie甜ek audio CD, �cie甜ki te <emphasis role="bold">niemog� by� montowane</emphasis> (Czy kiedykolwiek montowa�e� p�yt� audio CD byj� odtworzy�?). Bior�c pod uwag�, 甜e filmy znajduj� si� na tej �cie甜ce,powiniene� spr坦bowa� na pocz�tek opcji <option>vcd://2</option>.</para></listitem><listitem><para>Istniej� r坦wnie甜 p�yty VCD bez pierwszej �cie甜ki (pojedyncza �cie甜ka ibrak systemu plik坦w w og坦le). Je r坦wnie甜 da si� odtwarza�, ale nie dasi� ich montowa�.</para></listitem></itemizedlist><formalpara><title>O plikach .DAT</title><para>Plik o rozmiarze ok. 600 MB widoczny na pierwszej �cie甜ce zamontowanego VCDnie jest prawdziwym plikiem ! Jest on tzw. bramk� ISO, utworzon� byWindows m坦g� obs�ugiwa� takie �cie甜ki (Windows w og坦le nie zezwala aplikacjomna dost�p do urz�dze� w trybie raw). Pod Linuksem nie mo甜esz kopiowa� aniodtwarza� tych plik坦w (zawieraj� "�mieci"). Pod Windows jest to mo甜liwe, gdy甜jego sterownik iso9660 symuluje odczyt �cie甜ek w trybie raw za pomoc� tegopliku. By m坦c odtwarza� pliki .DAT, musisz mie� sterownik do j�dra, kt坦rydostarczany jest z linuksow� wersj� PowerDVD. Posiada on zmodyfikowany sterowniksystemu plik坦w iso9660 (<filename>vcdfs/isofs-2.4.X.o</filename>), kt坦ry jest wstanie symulowa� odczyt �cie甜ek w trybie raw za pomoc� pliku .DAT. Je�lipodmontujesz p�yt� u甜ywaj�c ich sterownika, mo甜esz kopiowa�, a nawet odtwarza�pliki .DAT za pomoc� <application>MPlayera</application>. Ale nie b�dzie todzia�a�o za pomoc� standardowego sterownika iso9660 dostarczonego z j�dremLinuksa! Zamiast tego u甜yj opcji <option>vcd://</option>. Alternatyw� dlakopiowania VCD jest nowy sterownik:<ulink url="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</ulink> (nie jestcz��ci� oficjalnego j�dra), kt坦ry wy�wietla sesje CD jako pliki obraz坦w, oraz<ulink url="http://cdrdao.sourceforge.net/">cdrdao</ulink>, program do zgrywaniap�yt CD bit po bicie.</para></formalpara></sect1></chapter>