CD/DVD használatCD/DVD vezérlők
A modern CD-ROM meghajtók nagyon nagy sebességen működnek, ugyanakkor több CD-ROM
képes kisebb sebességű pörgésre is. Rengeteg oka lehet annak, hogy valaki
meg akarja megváltoztatni a CD-ROM meghajtó sebességét:
Sok helyen írtak olvasási hibákról, melyek nagy sebességnél fordulnak elő,
különösen rosszul nyomott CD-ROM-ok esetén. A csökkentett sebességgel megelőzheted
az adatvesztést ilyen esetben.
Sok CD-ROM idegesítően hangos, alacsonyabb sebességen kisebb a zaj.
Linux
Az IDE CD-ROM meghajtók sebességét a hdparm, a setcd
vagy a cdctl programmal módosíthatod. Így működnek:
hdparm -E [sebesség][cdrom eszköz]setcd -x [sebesség][cdrom eszköz]cdctl -bS [sebesség]
Ha SCSI emulációt használsz, az igazi IDE eszközre vonatkozóan kell
alkalmaznod a beállításokat, nem az emulált SCSI eszközre.
Ha root jogaid vannak, a következő parancs is segíthet:
echo file_readahead:2000000 > /proc/ide/[cdrom eszköz]/settings
Ez beállítja a fájl előreolvasást 2 MB-ra, ami segít a karcos CD-ROM-ok esetében.
Ha túl nagyra állítod, a meghajtó folyton felpörög majd leáll, és drasztikus módon
csökkenni fog a teljesítménye.
A javasolt módszer a CD-ROM meghajtó
hdparm-mal történő beállítása:
hdparm -d1 -a8 -u1 [cdrom eszköz]
Ez bekapcsolja a DMA elérést, az előreolvasást, és az IRQ unmasking-ot
(olvasd el a hdparm man oldalát a bővebb magyarázatért).
Nézd meg a
"/proc/ide/[cdrom eszköz]/settings"
fájlt a CD-ROM tuningolásához.
A SCSI meghajtókra vonatkozóan nincs egységes módszer ezen paraméterek
beállításához. (Ismersz egyet? Mondd el nekünk is!) Van egy eszköz, ami
Plextor SCSI meghajtókkal működik.
FreeBSDsebesség:
cdcontrol [-f eszköz] speed [sebesség]DMA:
sysctl hw.ata.atapi_dma=1
DVD lejátszás
A használható kapcsolók teljes listájáért olvasd el a man oldalt.
A szintaxis egy szabványos DVD lejátszásához a következő:
mplayer dvd://<sáv> [-dvd-device <eszköz>]
Például:
mplayer dvd://1 -dvd-device /dev/hdc
Ha az MPlayert dvdnav támogatással fordítottad, a
szintaxis ugyan ez, kivéve, hogy dvdnav://-ot kell használnod a dvd:// helyett.
Az alapértelmezett DVD eszköz a /dev/dvd. Ha a te
beállításod különböző, készíts egy szimbolikus linket vagy add meg a megfelelő
eszközt a parancssorban a kapcsolóval.
Az MPlayer fel tudja használni a
libdvdread-ot és a libdvdcss-t
is a DVD-k lejátszásához és dekódolásához. Ez a két függvénykönyvtár megtalálható
az MPlayer forrás fájában, nem kell őket külön
telepítened. Használhatod a két függvénykönyvtár rendszer-szintű verzióját is,
de ez nem javasolt, mivel hibák forrása lehet,
a függvénykönyvtárak közötti inkompatibilítást és sebességcsökkenést okozhat.
Ha DVD dekódolási problémáid vannak, próbáld meg letiltani a supermount-ot vagy
bármilyen más hasonló dolgot. Néhány RPC-2 vezérlő régió kód beállítását is megköveteli.
DVD dekódolás
A DVD dekódolást a libdvdcss végzi. A módszer
megadható a DVDCSS_METHOD környezeti változó segítségével,
lásd a man oldalt.
Régió kód
A DVD meghajtók manapság tartalmaznak egy
régió kódnak
nevezett értelmetlen korlátozást.
Szégyen, hogy a DVD meghajtókat arra kényszerítik, hogy a hat különböző
régióból, amire a világot felosztották, csak az egyikben gyártott lemezeket
fogadják el. Hogy egy asztal körül ülő pár ember hogy állhatott elő egy ilyen
ötlettel és hogyan várhatják el, hogy a 21. században elfogadnak egy ilyen
ötletet, az minden képzeletet felülmúl.
Azok a meghajtók, amelyek a régióbeállításokat csak szoftveresen kényszerítik
ki, RPC-1 meghajtókként ismertek, amelyek hardveresen teszik ugyan ezt, azok
az RPC-2 meghajtók. Az RPC-2 meghajtók öt alkalommal engedik meg a régiókód
megváltoztatását, mielőtt az véglegessé válna.
Linux alatt a
regionset eszközt
használhatod a DVD meghajtód régió kódjának beállításához.
Szerencsére lehetséges az RPC-2 meghajtók RPC-1-re történő átalakítása egy
firmware frissítéssel. Add meg a DVD meghajtód model számát a kedvenc kereső
motorodnak vagy nézz be a
"The firmware page" fórumjába és
letöltési oldalára. Bár a firmware frissítésre vonatkozó figyelmeztetések itt
is érvényesek, a régió kódtól történő megszabadulás általában pozitív élménnyel
zárul.
VCD lejátszás
A használható kapcsolók teljes listájáért olvasd el a man oldalt. Egy
szabványos Video CD (VCD) szintaxisa a következő:
mplayer vcd://<sáv> [-cdrom-device <eszköz>]
Például:
mplayer vcd://2 -cdrom-device /dev/hdc
Az alapértelmezett VCD eszköz a /dev/cdrom. Ha a te
beállításaid különbözőek, készíts egy szimbolikus linket vagy add meg a
megfelelő eszközt a parancssorban a kapcsolóval.
A Plextor és néhány Toshiba SCSI CD-ROM meghajtónak borzalmas a teljesítménye
CVD olvasáskor. Ez azért van, mert a CDROMREADRAW ioctl
nincs teljesen implementálva ezekben a meghajtókban. Ha ismered a SCSI
programozást, kérlek segíts nekünk
egy általános SCSI támogatás elkészítésében VCD-khez.
Addig is kinyerheted az adatokat a VCD-ről a
readvcd
segítségével, majd a kapott fájlt lejátszhatod az MPlayerrel.
VCD struktúra
Egy Video CD (VCD) CD-ROM XA szektorokból áll, pl. CD-ROM 2-es módban
1-es és 2-es formátumú sávok:
Az első sáv 2-es módban, 2-es formátumban van, ami azt jelenti, hogy L2
hibajavítást használ. A sáv ISO-9660 fájl rendszert tartalmaz 2048
bájt/szektorral. Ez a fájl rendszer VCD metaadat információkat tartalmaz,
valamint gyakran a menükben alkalmazott képkockákat. A menük MPEG
szegmensei is ezen az első sávon tárolhatóak, de az MPEG-eket fel kell
osztani 150 szektoros csonkokra. Az ISO-9660 fájl rendszer tartalmazhat
egyéb fájlokat vagy programokat, amik a VCD működése szempontjából nem
lényegesek.
A második és a további sávok általában nyers 2324 bájt/szektor formátumú
MPEG (film) sáv, mely egy MPEG PS adat csomagot tartalmaz szektoronként.
Ezek 2-es mód 1-es formátumban vannak, így több adatot tárolnak
szektoronként némi hibajavítás elveszítése árán. Lehet CD-DA sáv is a
VCD-n az első sáv után. Némelyik operációs rendszeren van egy kis csalás,
amivel ezek a nem-ISO-9660 sávok megjelennek a fájl rendszerben. Más
operációs rendszereken, például GNU/Linux-on ez nem így van (még). Itt
az MPEG adat nem mountolható. Mivel a
legtöbb film ilyen típusú sávon belül van, először próbáld ki a
-t.
Léteznek olyan VCD lemezek is, melyeken nincs meg az első sáv (egy sáv és
egyáltalán nincs fájl rendszer). Ezek szintén lejátszhatóak, de nem lehet
őket becsatolni.
A Video CD szabvány definícióját a Philips "Fehér könyv"-nek
nevezte el és nem szabadon hozzáférhető, a Philipstől kell megvásárolni.
A Video CD-kről sokkal részletesebb információt találhatsz a
vcdimager dokumentációjában.
A .DAT fájlokról
A becsatolt VCD első sávján látható ~600 MB fájl valójában nem igazi fájl!
Ez egy úgynevezett ISO átjáró, azért hozták létre, hogy a Windows kezelni
tudja ezen sávokat (a Windows semmilyen módon sem engedi a közvetlen eszköz
elérést az alkalmazásoknak). Linux alatt nem tudod átmásolni vagy lejátszani
az ilyen fájlokat (szemét van bennük). Windows alatt lehetséges, mivel az
iso9660 vezérlője a sávok nyers olvasását emulálja ebben a fájlban. A .DAT
fájlok lejátszásához szükséged lesz egy kernel vezérlőre, ami a PowerDVD
Linuxos verziójában található. Ez egy módosított iso9660 fájl rendszer vezérlőt
(vcdfs/isofs-2.4.X.o) tartalmaz, ami képes a nyers sáv
emulációra ezen ál .DAT fájlon keresztül. Ha az ő vezérlőjük segítségével
csatolod be a lemezt, át tudod másolni és le tudod játszani a .DAT fájlt az
MPlayerrel. A Linux kernel szabványos iso9660
vezérlőjével ez nem megy! Használd a -t helyette.
VCD másolásához alternatíva az új cdfs
kernel vezérlő (nem része a hivatalos kernelnek) ami a CD meneteket kép fájlok
formájában mutatja, és a cdrdao,
egy bitről-bitre grabbelő/másoló program.