view DOCS/xml/cs/cd-dvd.xml @ 28766:4725b3ebdba3

Add another hack to work-around the currently completely inconsistent way in which libavcodec sets AVCodecContext::pix_fmt.
author reimar
date Tue, 03 Mar 2009 13:38:33 +0000
parents c81e83794b0e
children
line wrap: on
line source

<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r24346 -->
<chapter id="cd-dvd">
<title>Použití CD/DVD</title>

<sect1 id="drives">
<title>CD/DVD mechaniky</title>

<para>
Moderní CD-ROM mechaniky dosahují velmi vysokých otáček a některé z nich
mohou pracovat i se sníženými otáčkami. Existuje několik důvodů, pro
které byste mohli chtít změnit rychlost CD-ROM mechaniky:
</para>

<itemizedlist>
<listitem><para>
  Byly zprávy o chybách čtení při vysokých rychlostech, zvláště u špatně
  vylisovaných CD-ROMů. Z těchto důvodů může snížení rychlosti působit
  jako prevence ztráty dat.
</para></listitem>

<listitem><para>
  Mnoho CD-ROM mechanik je nechutně hlučných, nižší rychlost může omezit
  tento hluk.
</para></listitem>
</itemizedlist>

<!-- ********** -->

<sect2 id="drives_linux">
<title>Linux</title>

<para>
Můžete snížit rychlost IDE CD-ROM mechanik pomocí <command>hdparm</command>,
<command>setcd</command> nebo <command>cdctl</command>. Pracuje to asi takto:
<screen>hdparm -E <replaceable>[rychlost]</replaceable> <replaceable>[mechanika cdrom]</replaceable></screen>
<screen>setcd -x <replaceable>[rychlost]</replaceable> <replaceable>[mechanika cdrom]</replaceable></screen>
<screen>cdctl -bS <replaceable>[rychlost]</replaceable></screen>
</para>

<para>
Pokud používáte SCSI emulaci, budete muset předat tato nastavení do skutečného
IDE zařízení, nikoli emulovaného SCSI zařízení.
</para>

<para>
Pokud máte práva root-a, následující příkaz vám rovněž může pomoci:
<screen>echo file_readahead:2000000 &gt; /proc/ide/<replaceable>[mechanika cdrom]</replaceable>/settings</screen>
</para>

<para>
To nastaví čtení napřed na 2MB, což pomůže při poškrábaných médiích.
Pokud ji však nastavíte příliš vysoko, bude mechanika stále zrychlovat a
zpomalovat, což výrazně sníží její výkon.
Doporučujeme vám rovněž vyladit vaši CD-ROM mechaniku pomocí <command>hdparm</command>:
<screen>hdparm -d1 -a8 -u1 <replaceable>[cdrom zařízení]</replaceable></screen>
</para>

<para>
To zapne DMA přístup, čtení napřed a odmaskování IRQ (přečtěte si man stránku
programu <command>hdparm</command> pro podrobné vysvětlení).
</para>

<para>
Prostudujte si
„<filename>/proc/ide/<replaceable>(cdrom zařízení)</replaceable>/settings</filename>“
pro jemné doladění vaší CD-ROM.
</para>

<para>
SCSI mechaniky nemají jednotný způsob pro nastavení těchto parametrů
(Znáte nějaký? Řekněte nám jej!). Existuje nástroj, který pracuje se
<ulink url="http://das.ist.org/~georg/">SCSI mechanikami Plextor</ulink>.
</para>
</sect2>

<!-- ********** -->

<sect2 id="drives_freebsd">
<title>FreeBSD</title>

<para>rychlost:
<screen>
cdcontrol [-f <replaceable>zařízení</replaceable>] speed <replaceable>[rychlost]</replaceable>
</screen>
</para>

<para>DMA:
<screen>
sysctl hw.ata.atapi_dma=1
</screen>
</para>

</sect2>

</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="dvd">
<title>Přehrávání DVD</title>

<para>
Úplný seznam dostupných voleb naleznete v man stránce.
Syntaxe pro přehrání standardního DVD je následující:
<screen>
mplayer dvd://<replaceable>&lt;track&gt;</replaceable> [-dvd-device <replaceable>&lt;DVD_zařízení&gt;</replaceable>]
</screen>
</para>

<para>
Příklad:
<screen>mplayer dvd://1 -dvd-device /dev/hdc</screen>
</para>

<para>
Pokud jste kompilovali <application>MPlayer</application> s podporou dvdnav,
je syntaxe stejná až na to, že musíte používat dvdnav:// místo dvd://.
</para>

<para>
Výchozím DVD zařízením je <filename>/dev/dvd</filename>. Pokud se vaše nastavení
liší, vytvořte symlink, nebo uveďte správné zařízení na příkazovém řádku
pomocí volby <option>-dvd-device</option>.
</para>

<para>
<application>MPlayer</application> používá <systemitem>libdvdread</systemitem> a
<systemitem>libdvdcss</systemitem> pro přehrávání a dekódování DVD. Tyto dvě
knihovny jsou obsaženy ve zdrojových kódech
<application>MPlayer</application>u, nemusíte je tedy instalovat zvlášť.
Můžete rovněž použít systémové verze těchto knihoven, ale toto řešení
nedoporučujeme, protože může vést k chybám,
nekompatibilitě knihovny a nižší rychlosti.
</para>

<note><para>
V případě problémů s dekódováním DVD, zkuste vypnout supermount a podobná udělátka.
Některé RPC-2 mechaniky mohou rovněž vyžadovat nastavení region kódu.
</para></note>

<formalpara>
<title>Dekódování DVD</title>
<para>
Dekódování DVD provádí <systemitem>libdvdcss</systemitem>. Metodu
můžete zvolit pomocí proměnné prostředí <envar>DVDCSS_METHOD</envar>,
detaIly viz manuálová stránka.
</para>
</formalpara>

<sect2 id="region_code">
<title>Kód regionu</title>
<para>
DVD mechaniky v současnosti přicházejí s nesmyslným omezením nazvaným
<ulink url="http://en.wikipedia.org/wiki/DVD_region_code">kód regionu</ulink>.
To je způsob jak přinutit DVD mechaniku akceptovat pouze DVD vyrobené pro
jeden ze šesti různých regionů na které byl rozdělen svět. Jak si může skupina lidí
zasednout ke kulatému stolu, přijít s takovým nápadem a čekat, že se svět
21. století skloní před jejich vůlí je naprosto nepochopitelné
</para>

<para>
Mechaniky, které vynucují nastavení regionu poze softwarově jsou známy také jako
RPC-1 a ty, které to dělají v hardware jako RPC-2. Mechaniky RPC-2 umožňují změnu
kódu regionu pětkrát a pak zůstane pevný.
V Linuxu můžete použít nástroj
<ulink url="http://linvdr.org/projects/regionset/">regionset</ulink>
pro nastavení kódu regionu vaší DVD mechaniky.
</para>

<para>
Naštěstí je možné konvertovat RPC-2 mechaniky na RPC-1 pomocí
upgrade firmware. Vyplňte modelové číslo vaší DVD mechaniky do svého oblíbeného
vyhledávače, nebo se podívejte do fóra a sekce download
<ulink url="http://www.rpc1.org/">„Firmware stránek“</ulink>.
Ačkoli platí obvyklé „kazy“ upgradů fimware, zkušenosti se zbavením se
vynucování region kódů jsou obecně kladné.
</para>
</sect2>

</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="vcd">
<title>Přehrávání VCD</title>
<para>
Úplný seznam dostupných voleb naleznete v man stránce. Syntaxe pro standardní
Video CD (VCD) je následující:
<screen>mplayer vcd://<replaceable>&lt;stopa&gt;</replaceable> [-cdrom-device <replaceable>&lt;zařízení&gt;</replaceable>]</screen>
Příklad:
<screen>mplayer vcd://2 -cdrom-device /dev/hdc</screen>
Výchozím VCD zařízením je <filename>/dev/cdrom</filename>. Pokud se vaše nastavení
liší, vytvořte symlink nebo uveďte správné zařízení na příkazovém řádku pomocí volby
<option>-cdrom-device</option>.
</para>

<note><para>
Minimálně SCSI CD-ROM mechaniky Plextor a Toshiba vykazují mizerný výkon
při čtení VCD. To proto, že CDROMREADRAW <systemitem>ioctl</systemitem>
není pro tyto mechaniky plně implementováno. Pokud máte zkušenosti se
SCSI programováním, prosíme
<ulink url="../../tech/patches.txt">pomozte nám</ulink>
implementovat obecnou SCSI podporu pro VCD.
</para></note>

<para>
Mezitím můžete extrahovat data z VCD pomocí
<ulink url="http://ftp.ntut.edu.tw/ftp/OS/Linux/packages/X/viewers/readvcd/">readvcd</ulink>
a výsledný soubor přehrát v <application>MPlayer</application>u.
</para>

<formalpara>
<title>Struktura VCD</title>
<para>
Video CD (VCD) je tvořeno CD-ROM XA sektory, čili stopy CD-ROM mode 2
třída 1 a 2:
<itemizedlist>
<listitem><para>
  První stopa je ve formátu mode 2 třída 2 což znamená, že používá L2
  korekci chyb. Stopa obsahuje souborový systém ISO-9660 s 2048
  bajty/sektor. Tento souborový systém obsahuje VCD metadata informace,
  spolu se statickými snímky často používanými v menu. MPEG segmenty menu
  mohou být rovněž uloženy v této první stopě, ale tyto MPEGy musí být
  rozsekány na série 150 sektorových chunků. Souborový systém ISO-9660
  může obsahovat další soubory, které nejsou potřeba pro operace
  s VCD.
</para></listitem>

<listitem><para>
  Druhá a ostatní stopy jsou všeobecně surovými MPEG (film) stopami
  s 2324 bajty/sektor, obsahující jeden MPEG PS datový paket na
  sektor. Ty jsou v mode 2 třída 1 formátu, takže obsahují více dat
  v každém sektoru za cenu omezení korekce chyb. Je rovněž možné mít
  CD-DA stopy na VCD za první stopou.
  V některých operačních systémech jsou triky, které umožňují zpřístupnit
  tyto ne-ISO-9660 stopy v systému souborů. V dalších operačních
  systémech jako GNU/Linux to není možné (zatím). Zde MPEG data
  <emphasis role="bold">nemohou být připojena</emphasis>. Protože většina
  filmů je uložena uvnitř tohoto druhu stopy, měli byste nejprve zkusit
  <option>vcd://2</option>.
</para></listitem>

<listitem><para>
  Existují také VCD disky bez první stopy (jediná stopa bez systému souborů).
  Můžete je přehrát, ale nemohou být namountovány.
</para></listitem>

<listitem><para>
  Definice standardu Video CD se nazývá
  Philips „White Book“ a není obecně přístupná online, ale musí být zakoupena
  od Philipsu. Podrobnější informace o Video CD můžete nalézt
  <ulink url="http://www.vcdimager.org/pub/vcdimager/manuals/0.7/vcdimager.html#SEC4">v dokumentaci programu vcdimager</ulink>.
</para></listitem>
</itemizedlist>
</para>
</formalpara>

<formalpara>
<title>Pár slov o .DAT souborech</title>
<para>
Soubor veliký ~600 MB viditelný v první stopě připojeného VCD není
skutečným souborem! Je to takzvaná ISO gateway, vytvořená proto,
aby mohl Windows přistupovat k těmto stopám (Windows vůbec neumožňuje
aplikacím surový přístup k zařízení).
Pod Linuxem nemůžete kopírovat nebo přehrávat tyto soubory
(obsahují jen nesmysly). Pod Windows je to možné, protože jeho iso9660
ovladač emuluje surový přístup ke stopě v tomto souboru. Abyste mohli
přehrát .DAT soubor, potřebujete ovladač kernelu který můžete nalézt
v Linuxové verzi PowerDVD. Obsahuje upravený ovladač systému souborů
iso9660 (<filename>vcdfs/isofs-2.4.X.o</filename>), který umí emulovat
surové stopy přes tento stínový .DAT soubor. Pokud připojíte disk
s pomocí jejich ovladače, můžete kopírovat či dokonce přehrávat .DAT
soubory <application>MPlayer</application>em. Ale nebude to fungovat
se standardním iso9660 ovladačem z Linuxového kernelu! Místo toho
použijte <option>vcd://</option>. Alternativou kopírování VCD je
nový jaderný ovladač jménem
<ulink url="http://www.elis.rug.ac.be/~ronsse/cdfs/">cdfs</ulink>
(není součástí oficiálního jádra), který zobrazuje CD sekce jako
obrazové soubory a program
<ulink url="http://cdrdao.sf.net/">cdrdao</ulink>, který bit-po-bitu
grabuje/kopíruje CD.
</para>
</formalpara>
</sect1>
</chapter>