mirror of https://github.com/mpv-player/mpv
324 lines
13 KiB
XML
324 lines
13 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- synced with r20637 -->
|
|
<!-- Opiekun: Emdej -->
|
|
<chapter id="cd-dvd">
|
|
<title>Używanie CD/DVD</title>
|
|
|
|
<sect1 id="drives">
|
|
<title>Napędy CD/DVD</title>
|
|
|
|
<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ści
|
|
naszego napędu:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Istnieją doniesienia o błędach odczytu przy dużych prędkościach, szczególnie
|
|
podczas 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 takich
|
|
przypadkach.
|
|
</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>
|
|
|
|
<sect2 id="drives_linux">
|
|
<title>Linux</title>
|
|
|
|
<para>
|
|
Możesz zredukować prędkość napędu CD z interfejsem IDE korzystając
|
|
z <command>hdparm</command>, <command>setcd</command> lub
|
|
<command>cdctl</command>.
|
|
Działają one w nastę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>
|
|
<screen>cdctl -bS <replaceable>[speed]</replaceable></screen>
|
|
</para>
|
|
|
|
<para>
|
|
Jeśli używasz emulacji SCSI, możesz musieć zastosować ustawienia do prawdziwego
|
|
urządzenia IDE a nie emulowanego SCSI.
|
|
</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 odczycie
|
|
porysowanych płyt. Jeżeli ustawimy zbyt dużą wielkość tego bufora, napęd będzie
|
|
stale 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 i
|
|
odmaskowanie IRQ (IRQ unmasking) (więcej przeczytasz na stronach man do
|
|
<command>hdparm</command>)
|
|
</para>
|
|
|
|
<para>
|
|
Proszę sprawdzić "<filename>/proc/ide/<replaceable>[urządzenie cdrom]</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>
|
|
</sect2>
|
|
|
|
<sect2 id="drives_freebsd">
|
|
<title>FreeBSD</title>
|
|
|
|
<para>Prędkość:
|
|
<screen>
|
|
cdcontrol [-f <replaceable>urządzenie</replaceable>] speed <replaceable>[prędkość]</replaceable>
|
|
</screen>
|
|
</para>
|
|
|
|
<para>DMA:
|
|
<screen>
|
|
sysctl hw.ata.atapi_dma=1
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="dvd">
|
|
<title>Odtwarzanie DVD</title>
|
|
<para>
|
|
Aby poznać pełną listę dostępnych opcji, proszę przeczytać odpowiednie strony
|
|
man. Składnia do odtwarzania standardowego DVD 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://1 -dvd-device /dev/hdc</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Jeśli skompilowałeś <application>MPlayera</application> z obsługą dvdnav,
|
|
składnia jest taka sama, tylko musisz użyć dvdnav:// zamiast dvd://.
|
|
</para>
|
|
|
|
<para>
|
|
Domyślnym urządzeniem (device) DVD jest <filename>/dev/dvd</filename>. Jeżeli
|
|
Twoje ustawienia są inne, stwórz odpowiedni symlink lub ustaw odpowiednie
|
|
urządzenie (device) w linii polecenia korzystając z opcji
|
|
<option>-dvd-device</option>.
|
|
</para>
|
|
|
|
<para>
|
|
<application>MPlayer</application> używa <systemitem>libdvdread</systemitem>
|
|
oraz <systemitem>libdvdcss</systemitem> do odtwarzania i dekodowania DVD.
|
|
Te dwie biblioteki są zawarte
|
|
w głównym drzewie źródłowym <application>MPlayera</application>, nie trzeba
|
|
instalować ich osobno.
|
|
Możesz też użyć systemowych wersji tych bibliotek, ale nie jest to zalecane,
|
|
ponieważ może spowodować błędy, niekompatybilności bibliotek oraz zmniejszenie
|
|
prędkości.
|
|
</para>
|
|
|
|
<note><para>
|
|
Jeśli występują problemy z dekodowaniem DVD, spróbuj wyłączyć supermount lub
|
|
inne tego typu usługi. Niektóre napędy RPC-2 mogą również wymagać ustawienia
|
|
kodu regionu DVD.
|
|
</para></note>
|
|
|
|
<formalpara>
|
|
<title>Struktura dysku DVD</title>
|
|
<para>
|
|
Dyski DVD mają po 2048 bajtów na sektor z ECC/CRC. Zwykle posiadają system
|
|
plików UDF na pojedynczej ścieżce zawierającej różnorakie pliki (małe pliki .IFO
|
|
i .BUK oraz duże (1GB) pliki .VOB).
|
|
Są one rzeczywistymi plikami i mogą być kopiowane/odtwarzane z podmontowanego
|
|
systemu plików niezakodowanego DVD.
|
|
</para>
|
|
</formalpara>
|
|
|
|
<para>
|
|
Pliki .IFO zawierają informacje nawigacyjne filmu (mapa
|
|
rozdziałów/tytułów/kątów kamery, tablica języków, itp) i są konieczne do
|
|
odczytu i interpretacji zawartości pliku .VOB (filmu).
|
|
Pliki .BUK są kopiami zapasowymi plików .IFO.
|
|
Używają <emphasis role="bold">sektorów</emphasis> wszędzie, więc aby
|
|
zaimplementować 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 wymaga
|
|
dostępu do urządzenia w trybie raw bazującym na sektorach. Niestety wymagane
|
|
jest (pod Linuksem) posiadanie uprawnień roota aby móc korzystać z sektorowego
|
|
adresowania pliku.
|
|
Dlatego też nie w ogóle używamy sterownika systemu plików pochodzącego
|
|
z jądra, ale reimplementujemy to w przestrzeni użytkownika.
|
|
Zajmuje się tym biblioteka <systemitem>libdvdread</systemitem> 0.9.x.
|
|
Sterownik
|
|
systemu plików UDF zawarty w jądrze nie jest wymagany ponieważ wspomniane
|
|
biblioteki zawierają własny, wbudowany sterownik systemu plików UDF. DVD nie
|
|
musi być podmontowany, bowiem używany jest jedynie dostęp w trybie raw.
|
|
</para>
|
|
|
|
<para>
|
|
Czasami <filename>/dev/dvd</filename> nie może być czytany przez użytkowników,
|
|
zatem autorzy <systemitem>libdvdread</systemitem> zaimplementowali warstwę
|
|
emulacji, która tłumaczy adresowanie sektorowe na nazwy plików i offsety, aby
|
|
emulować dostęp w trybie raw na podmontowanym systemie plików albo nawet na
|
|
twardym dysku.
|
|
</para>
|
|
|
|
<para>
|
|
<systemitem>libdvdread</systemitem> równie dobrze akceptuje miejsce
|
|
podmontowania (mountpoint) jak i nazwę urządzenia przy dostępie w trybie raw i
|
|
sprawdza <filename>/proc/mounts</filename> w celu odnalezienia odpowiedniej
|
|
nazwy urządzenia (device). Zostało to napisane z myślą o systemie Solaris, gdzie
|
|
nazwy urządzeń są przydzielane automatycznie.
|
|
</para>
|
|
|
|
<formalpara>
|
|
<title>Deszyfrowanie DVD</title>
|
|
<para>
|
|
Do deszyfrowania DVD jest używana biblioteka
|
|
<systemitem>libdvdcss</systemitem>. Metoda jej działania może być określona
|
|
poprzez zmienna środowiskową <envar>DVDCSS_METHOD</envar>,
|
|
co jest dokładniej opisane na stronie man.
|
|
</para>
|
|
</formalpara>
|
|
|
|
<para>
|
|
Napędy DVD RPC-1 zabezpieczają ustawienia regionu jedynie poprzez
|
|
oprogramowanie. Napędy RPC-2 mają sprzętowe zabezpieczenie, które pozwala na co
|
|
najwyżej 5 zmian. Jeżeli posiadamy napęd DVD RPC-2 wymagana/zalecana jest
|
|
aktualizacja firmware'u do RPC-1.
|
|
Nowe wersje firmware'ów można znaleźć w internecie.
|
|
Poszukiwania radzimy rozpocząć od
|
|
<ulink url="http://forum.rpc-1.com/dl_all.php">forum firmware'ów</ulink>.
|
|
Jeżeli nie ma tam nowej wersji firmware'u dla naszego urządzenia, użyj
|
|
<ulink url="http://linvdr.org/projects/regionset/">regionset tool
|
|
(narzędzia do zmiany regionów)</ulink> aby ustawić kod regionu na swoim napędzie
|
|
DVD (pod Linuksem). <emphasis role="bold">Ostrzeżenie</emphasis>: Możesz
|
|
ustawić 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 dla
|
|
standardowego 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śli
|
|
Twoje ustawienia są inne, utwórz dowiązanie symboliczne
|
|
lub 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 Toshiby
|
|
mają beznadziejną wydajność przy odczycie VCD. Jest to spowodowane
|
|
niekompletną implementacją <systemitem>ioctl</systemitem>'a CDROMREADRAW dla
|
|
tych 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://ftp.ntut.edu.tw/ftp/OS/Linux/packages/X/viewers/readvcd/">readvcd</ulink>
|
|
i odtwarzać plik wynikowy za pomocą <application>MPlayera</application>
|
|
</para>
|
|
|
|
<formalpara>
|
|
<title>Struktura VCD</title>
|
|
<para>
|
|
Video CD (VCD) składa się z sektorów CD-ROM XA, tzn. ścieżek CD-ROM
|
|
mode 2 form 1 i form 2:</para>
|
|
</formalpara>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Pierwsza ścieżka jest w formacie mode 2 form 2, który oznacza użycie korekcji
|
|
błędów L2. Ścieżka ta zawiera system plików ISO-9660 o gęstości 2048 bajtów/sektor.
|
|
Ten system plików z kolei zawiera metainformacje VCD, a także nieruchome klatki, często
|
|
używane w menu. Segmenty MPEG dla menu mogą także być składowane w tejże pierwszej
|
|
ścieżce, ale MPEGi muszą być podzielone na kawałki po 150 sektorów. System plików ISO-9660
|
|
może zawierać inne pliki bądź programy, niekonieczne dla eksploatacji VCD.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Druga i pozostałe ścieżki są zwykle ścieżkami video MPEG typu raw o gęstości
|
|
2324 bajtów/sektor, zawierającymi jeden pakiet danych MGEG PS na sektor.
|
|
Ścieżki te są w formacje mode 2 form 1, więc przechowują one więcej danych
|
|
na sektor, w zamian za słabszą korekcję błędów. Możliwe są też ścieżki
|
|
CD-DA na VCD poza pierwszą ścieżką.
|
|
Niektóre systemy operacyjne używają pewnych trików aby ścieżki nie zawierające
|
|
systemu plików ISO-9660 były widoczne w systemie plików. W pozostałych systemach,
|
|
jak na przykład w systemie GNU/Linux, nie ma takiej możliwości (jeszcze). W takim
|
|
przypadku dane MPEG <emphasis role="bold">nie mogą być montowane</emphasis>.
|
|
Jako że większość filmów znajduje się na tego typu ś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 i
|
|
brak systemu plików w ogóle). Je również da się odtwarzać, ale nie da
|
|
się ich montować.
|
|
</para></listitem>
|
|
|
|
<listitem><para> Definicja standardu Video CD, nazywana "Białą Księgą"
|
|
Phillipsa, generalnie nie jest dostępna online, musi być zakupiona u Phillipsa.
|
|
Bardziej szczegółowe informacje na temat Video CD można znaleźć na
|
|
<ulink url="http://www.vcdimager.org/pub/vcdimager/manuals/0.7/vcdimager.html#SEC4">stronie
|
|
dokumentacji vcdimagera</ulink>.
|
|
</para></listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
<formalpara>
|
|
<title>O plikach .DAT</title>
|
|
<para>
|
|
Plik o rozmiarze ok. 600 MB widoczny na pierwszej ścieżce zamontowanego VCD
|
|
nie jest prawdziwym plikiem ! Jest on tzw. bramką ISO, utworzoną by
|
|
Windows mógł obsługiwać takie ścieżki (Windows w ogóle nie zezwala aplikacjom
|
|
na dostęp do urządzeń w trybie raw). Pod Linuksem nie możesz kopiować ani
|
|
odtwarzać tych plików (zawierają "śmieci"). Pod Windows jest to możliwe, gdyż
|
|
jego sterownik iso9660 symuluje odczyt ścieżek w trybie raw za pomocą tego
|
|
pliku. By móc odtwarzać pliki .DAT, musisz mieć sterownik do jądra, który
|
|
dostarczany jest z linuksową wersją PowerDVD. Posiada on zmodyfikowany sterownik
|
|
systemu plików iso9660 (<filename>vcdfs/isofs-2.4.X.o</filename>), który jest w
|
|
stanie symulować odczyt ścieżek w trybie raw za pomocą pliku .DAT. Jeśli
|
|
podmontujesz płytę używając ich sterownika, możesz kopiować, a nawet odtwarzać
|
|
pliki .DAT za pomocą <application>MPlayera</application>. Ale nie będzie to
|
|
działało za pomocą standardowego sterownika iso9660 dostarczonego z jądrem
|
|
Linuksa! Zamiast tego użyj opcji <option>vcd://</option>. Alternatywą dla
|
|
kopiowania VCD jest nowy sterownik:
|
|
<ulink url="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</ulink> (nie jest
|
|
częścią oficjalnego jądra), który wyświetla sesje CD jako pliki obrazów, oraz
|
|
<ulink url="http://cdrdao.sf.net/">cdrdao</ulink>, program do zgrywania
|
|
płyt CD bit po bicie.
|
|
</para>
|
|
</formalpara>
|
|
</sect1>
|
|
</chapter>
|