762
|
1
|
|
2 Hardveres gyorsitas videokartyakhoz:
|
|
3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
4
|
|
5 * olvasd el a DOCS/MTRR file-t is!
|
|
6
|
|
7 A "hardveres gyorsitas" altalaban hardverileg tamogatott YUV konverziot,
|
|
8 scale-t, bilinear filtering-et jelent. Linux alatt jonehany modszerrel
|
|
9 lehet ezeket elerni:
|
|
10
|
|
11 I. Az XFree86 4.0.2 Xv (XVideo) kiterjesztese
|
|
12 II. OpenGL driverek, megfelelo glTexSubImage() tamogatassal (jelenleg csak
|
|
13 az Utah-GLX driverek)
|
|
14 III. Nativ kartyaspecifikus driverek amik egyes kartyak kulonleges
|
|
15 kepessegeit hasznaljak
|
|
16 IV. DGA - Direct Graphic Access. Nincs YUV, scaling, de meg mindig
|
|
17 gyorsabb mint X11
|
|
18 V. Nem igazan gyorsitas, hanem...
|
|
19
|
|
20 Nos, lassuk oket reszletesen:
|
|
21
|
|
22 De mielott elolvasnad ezt, olvasd el a DOCS/MTRR-t is, es nezd meg a
|
|
23 /proc/mtrr-edet. Hidd el, megeri! P3-on tobb mint otszorosere gyorsit!!!
|
|
24
|
|
25 I. Az XFree86 4.0.2 Xv (XVideo) kiterjesztese
|
|
26 Ezt hasznalja a '-vo xv' opcio.
|
|
27
|
|
28 Ha mukodesre akarod birni, a kovetkezoket kell figyelembe venned:
|
|
29
|
|
30 1. XFree86 4.0.2 szukseges (korabbi verziokban nincs XVideo)
|
|
31
|
|
32 2. A kartyadnak tamogatnia kell a hardveres gyorsitast (ujabb kartyak kozul
|
|
33 mind)
|
|
34
|
|
35 3. X-nek be kell toltenie az XVideo kiterjesztest, valahogy igy nez ki:
|
|
36 (II) Loading extension XVideo
|
|
37 a /var/log/XFree86.0.log file-ban
|
|
38 MEGJ : ez csak azt jelzi, hogy az _X_ betoltotte. Egy normalis rendszernel
|
|
39 ez alap, es nem jelenti, hogy a _kartyanak_ van XVideo
|
|
40 tamogatasa!
|
|
41
|
|
42 4. A kartyad Linuxos drivere tamogatva az Xv-t. Ezt az 'xvinfo'-val lehet
|
|
43 megnezni, ez pedig az XFree86 disztribucio resze. Egy hosszu szoveget
|
|
44 kell hogy kiirjon, hasonlot ehhez:
|
|
45
|
|
46 X-Video Extension version 2.2
|
|
47 screen #0
|
|
48 Adaptor #0: "Savage Streams Engine"
|
|
49 number of ports: 1
|
|
50 port base: 43
|
|
51 operations supported: PutImage
|
|
52 supported visuals:
|
|
53 depth 16, visualID 0x22
|
|
54 depth 16, visualID 0x23
|
|
55 number of attributes: 5
|
|
56 (...)
|
|
57 Number of image formats: 7
|
|
58 id: 0x32595559 (YUY2)
|
|
59 guid: 59555932-0000-0010-8000-00aa00389b71
|
|
60 bits per pixel: 16
|
|
61 number of planes: 1
|
|
62 type: YUV (packed)
|
|
63 id: 0x32315659 (YV12)
|
|
64 guid: 59563132-0000-0010-8000-00aa00389b71
|
|
65 bits per pixel: 12
|
|
66 number of planes: 3
|
|
67 type: YUV (planar)
|
|
68 (...etc...)
|
|
69
|
|
70 Tamogatnia kell a YUY2 packed, YV12 planar pixelformatumokat, hogy
|
|
71 hasznalhato legyen MPlayer-rel.
|
|
72
|
|
73 5. MPlayer-t 'xv' tamogatassal kell forditani. 'configure'-nak ezt kell
|
|
74 kiirnia:
|
|
75 Checking for Xv ... yes
|
|
76
|
|
77 6. Ha ez mind OK, probald ki a '-vo xv' opciot. Mukodnie kell.
|
|
78 (ha nem teszi, kuldj nekunk egy bugreportot. Lasd DOCS/BUGREPORTS.)
|
|
79
|
|
80
|
|
81 II. OpenGL driverek, megfelelo glTexSubImage() tamogatassal
|
|
82
|
|
83 Jelenleg csak a regebbi Utah-GLX driver (X 3.3.6) tamogatja.
|
|
84 Lasd http://utah-glx.sourceforge.net
|
|
85
|
|
86 Az uj X 4.x.x/DRI-nek es az nVidia drivereknek nincs hasznalhato
|
|
87 glTexSubImage-juk :(
|
|
88
|
|
89
|
|
90 III. Nativ kartyaspecifikus driverek
|
|
91
|
|
92 3 nativ driver van Linuxra:
|
|
93 1. Matrox G200/G400/G450 BES (Back-End Scaler) (mga_vid kernel driver)
|
|
94 Jobbara en (A'rpi) fejlesztem. Tamogat hardveres VSYNC-et, triple
|
|
95 buffering-el. Mukodik mind framebufferes konzolon, mind X alatt.
|
|
96
|
|
97 Forditsd le a drivers/ konyvtarban levo mga_vid.o-t (ird be: make)
|
|
98 hozd letre a /dev/mga_vid-et :
|
|
99 mknod /dev/mga_vid c 178 0
|
|
100 es toltsd be a drivert az 'insmod mga_vid.o' paranccsal. Ajanlott
|
|
101 leellenorizni, hogy a memoria meretet helyesen detektalta-e, a 'dmesg'
|
|
102 paranccsal. Ha rossz, hasznald az mga_ram_size opciot (eloszor 'rmmod
|
|
103 mga_vid'), es add meg a kartyad memoriajat Mb-ban:
|
|
104 insmod mga_vid.o mga_ram_size=16
|
|
105 Ha azt akarod hogy automatikusan toltodjon be, ird be a kovetkezo sort az
|
|
106 /etc/modules.conf vegere :
|
|
107 alias char-major-178 mga_vid
|
764
|
108 Aztan futtasd :
|
|
109 depmod -a
|
762
|
110
|
|
111 Hasznalata MPlayer-bol: (eloszor forditsd ujra mga_vid supporttal...)
|
|
112
|
|
113 Hasznald az 'mga' kimenetet, ha framebuffer konzolod van (matroxfb): -vo mga
|
|
114 vagy az 'xmga'-t, ha X 3.3.6-od van: -vo xmga
|
|
115
|
|
116 Megj.: mukodik 4.0.2-es X alatt is, de az Xv driverrel nem szeretik egymast
|
|
117 ezert jobb kerulni mindketto hasznalatat. Altalaban az X ujrainditasa vagy
|
|
118 reboot szukseges hogy az Xv ujra mukodjon :(
|
|
119
|
|
120 Ha dual-head G400-ad van, es egy TV vagy masodik monitor van csatlakoztatva
|
|
121 a masodik head-re, akkor azt is hasznalhatod: olvasd el a DOCS/TVout-G400
|
|
122 file-t. (eleg nagy ganyolas)
|
|
123
|
|
124 2. SiS 6326 YUV Framebuffer driver -> sis_vid kernel driver
|
|
125 A felulete elvileg kompatibilis az mga_vid-del, de ebbe nem kerultek
|
|
126 bele az mga_vid-es valtoztatasok, ugyhogy valoszinuleg nem mukodik.
|
|
127 Jelentkezok kellenek tesztelesre, javitasra.
|
|
128
|
|
129 3. 3dfx (mely kartyak?) YUV+scaler support, a /dev/3dfx-el (tdfx.o driver?)
|
|
130 A /dev/3dfx kernel driver csak a 2.2.x kernelekhez letezik, es a Glide-dal
|
|
131 hasznalatos. Nincs letesztelve MPlayer-rel, ezert nem tamogatott.
|
|
132 Jelentkezok kellenek tesztelesre, javitasra.
|
|
133
|
|
134
|
|
135 IV. Ha a kartyadnak nincs hardveres gyorsitasa, meg mindig meg tudod dobni
|
|
136 az fps-t a DGA driverrel:
|
|
137
|
|
138 1. Bizonyosodj meg hogy az X betolti a DGA kiterjesztest:
|
|
139 (II) Loading extension XFree86-DGA
|
|
140 (amint latod, XFree86 4.0.x vagy ujabb NAGYON AJANLOTT!)
|
|
141 2. MPlayer DGA drivere automatikusan detektalodik ./configure-kor, de ha
|
|
142 kell, az --enable-dga opcioval kenyszeritheted is.
|
|
143 3. Ha a driver nem tud kisebb felbontasba valtani, jatszadozz kicsit a
|
|
144 -vm (csak 3.3.x X-szel), -fs, -bpp, -zoom opciokkal es hatha talalsz egy
|
|
145 alkalmas modot. Jelenleg nincs konverter.. :(
|
|
146 4. Legyel ROOT. DGA-nak root jogok kellenek hogy kozvetlen tudjon irni a
|
|
147 videomemoriaba. Ha felhasznalokent akarod futtatni, installald MPlayer-t
|
|
148 SUID root-kent:
|
|
149 'chown root /usr/local/bin/mplayer'
|
|
150 'chmod 750 /usr/local/bin/mplayer'
|
|
151 'chmod +s /usr/local/bin/mplayer'
|
|
152 Igy most menni fog user-kent is.
|
|
153 !!!! JOL FIGYELJ !!!!
|
|
154 Ez egy ORIASI biztonsagi lyuk! Soha ne csinald ezt egy szerveren, vagy
|
|
155 egy olyan gepen amit tobb ember is eler, mert igy root jogokat szerezhetnek
|
|
156 a suid MPlayer-en keresztul.
|
|
157 !!!! EN FIGYELMEZTETTELEK ... !!!!
|
|
158 5. Use '-vo dga' option, and there you go! (hope so:)
|
|
159 6. Try if the '-vo sdl -sdl dga' options work for you! It's much faster!!!
|
|
160
|
|
161 Ha gyors geped van (pl. P3 800) probald ki az 'fsdga'-t, igy teljeskepernyos
|
|
162 mpeg lejatszast kapsz (software-es YUV->RGB scaling hasznalataval):
|
|
163 mplayer -vo fsdga ...
|
|
164
|
|
165
|
|
166 V. Nem igazan gyorsitas, hanem...
|
|
167
|
|
168 a, Ha nincs X-ed...
|
|
169 ...hasznald az SVGAlib kimenetet! Bizonyosodj meg rola hogy nem hasznalod
|
|
170 az -fs kapcsolot, mert ez itt a software-es scaler-t kapcsolja be, es ez
|
|
171 LASSUUUU egyenlore, hacsak nincs egy igazan gyors procid (es/vagy MTRR?). :(
|
|
172
|
|
173 Termeszetesen fel kell installalnod az svgalib-et, es a fejlesztoi
|
|
174 kornyezetet, hogy MPlayer le tudja forditani az SVGAlib kimenetet
|
|
175 (automatikusan detektalja, de lehet kenyszeriteni is), es ne felejtsd el
|
|
176 atszerkeszteni az /etc/vga/libvga.config-ot, hogy tukrozze a kartyad es
|
|
177 a monitorod tulajdonsagait.
|
|
178
|
|
179 Erdemes tovabba kiprobalni az 'aalib' kimenetet ('-vo sdl -sdl aalib'),
|
|
180 igazan nagyszeru! :)
|
|
181
|
|
182 b, Framebuffer-t akarsz hasznalni...
|
|
183 Annak eldontese hogy legyen-e framebuffer kimenet, a ./configure alatt
|
|
184 dol el. Olvasd el a kernelforrasban talalhato framebuffer dokumentaciot
|
|
185 (Documentation/fb/*), ami leirja hogy hogy kapcsold be, stb.. !
|
|
186
|
|
187 ... de a kartyad nem tamogatja a VBE 2.0 szabvanyt (regebbi ISA/PCI
|
|
188 kartyak, peldaul az S3 Trio64), csak a VBE 1.2-et (vagy regebbit?) :
|
|
189 Nos, VESAfb meg mindig hasznalhato, de a Linux bootolasa elott be kell
|
|
190 toltened a SciTech Display Doctor-t (regebben UniVBE). Hasznalj DOS
|
|
191 bootlemezt, vagy valami. Es ne felejtsd regisztralni az UniVBE-det ;))
|
|
192
|
|
193 Megj.: az FBdev kimenet videomod valtasa _nem mukodik_ a VESA
|
|
194 framebuffer-rel, es ne is kerd, mivel ez nem az MPlayer korlatja.
|
|
195
|
|
196 Gabucino & A'rpi
|
|
197
|