1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
|
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- synced with 1.52 -->
<sect1 id="codecs">
<title>Obs³ugiwane kodeki</title>
<sect2 id="video-codecs">
<title>Kodeki Video</title>
<para>
Zajrzyj do
<ulink url="http://www.mplayerhq.hu/homepage/codecs-status.html">tabeli statusu
kodeków</ulink>, ¿eby zobaczyæ kompletn±, codziennie generowan± listê. Niektóre
kodeki s± dostêpne do pobrania z naszej strony domowej. ¦ci±gniesz je ze
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">strony z kodekami</ulink>.
</para>
<para>
Najwa¿niejsze ze wszystkich:
</para>
<itemizedlist>
<listitem><simpara>
<emphasis role="bold">MPEG1</emphasis> (<emphasis role="bold">VCD</emphasis>) i
<emphasis role="bold">MPEG2</emphasis> (<emphasis role="bold">DVD</emphasis>) video
</simpara></listitem>
<listitem><simpara>
natywne dekodery dla <emphasis role="bold">DivX ;-), OpenDivX (DivX4),
DivX 5.01 (Pro), 3ivX, M$ MPEG4</emphasis> v1, v2 i dla innych rodzajów MPEG4
</simpara></listitem>
<listitem><simpara>
natywne dekodery dla <emphasis role="bold">Windows Media Video 7/8</emphasis>
(<emphasis role="bold">WMV1/WMV2</emphasis>) i dekodery Win32 DLL
dla <emphasis role="bold">Windows Media Video 9</emphasis>
(<emphasis role="bold">WMV3</emphasis>). Oba u¿ywane w plikach <filename>.wmv</filename>
</simpara></listitem>
<listitem><simpara>
natywny dekoder <emphasis role="bold">Sorenson 1 (SVQ1)</emphasis>
</simpara></listitem>
<listitem><simpara>
natywny dekoder <emphasis role="bold">Sorenson 3 (SVQ3)</emphasis>
</simpara></listitem>
<listitem><simpara>
dekoder <emphasis role="bold">3ivX</emphasis> w wersji 1 i 2
</simpara></listitem>
<listitem><simpara>
Kodeki Cinepak i <emphasis role="bold">Intel Indeo</emphasis> (3.1,3.2,4.1,5.0)
</simpara></listitem>
<listitem><simpara>
<emphasis role="bold">MJPEG</emphasis>, AVID, VCR2, ASV2 i inne formaty sprzêtowe
</simpara></listitem>
<listitem><simpara>
VIVO 1.0, 2.0, I263 i inne warianty <emphasis role="bold">H.263(+)</emphasis>
</simpara></listitem>
<listitem><simpara>
FLI/FLC
</simpara></listitem>
<listitem><simpara>
<emphasis role="bold">RealVideo 1.0 & 2.0</emphasis> z u¿yciem
<systemitem class="library"> libavcodec</systemitem> i kodeki
<emphasis role="bold">RealVideo 3.0 & 4.0</emphasis> u¿ywaj±ce bibliotek
RealPlayer
</simpara></listitem>
<listitem><simpara>
natywny dekoder HuffYUV
</simpara></listitem>
<listitem><simpara>
Ró¿ne stare proste formaty podobne do RLE
</simpara></listitem>
</itemizedlist>
<para>
Je¿eli posiadasz kodeki Win32 niewymienione tutaj, które nie s± jeszcze
wspierane, zajrzyj do dzia³u <link linkend="win32-codecs">importowanie kodeków
Win32-HOWTO</link> i pomó¿ nam dodaæ dla nich wsparcie.
</para>
<sect3 id="divx4-5">
<title>DivX4/DivX5</title>
<para>
Ta sekcja zawiera informacje o kodekach DivX4 i DivX5 z
<ulink url="http://www.projectmayo.com">Project Mayo</ulink>.
Ich pierwsz± dostêpn± wersj± by³ OpenDivX 4.0 alpha 47 i 48.
Wsparcie dla nich zosta³o w³±czone do <application>MPlayera</application>
w przesz³o¶ci i by³o domy¶lnie budowane podczas kompilacji.
U¿ywali¶my tak¿e ich kodu postprocessingu do opcjonalnego polepszenia jako¶ci
filmów zakodowanych w MPEG1/2. Teraz u¿ywamy ju¿ naszego w³asnego kodu dla
wszystkich typów plików.
</para>
<para>
Nowa generacja tych kodeków nazywana jest DivX4 i mo¿e nawet dekodowaæ filmy
zakodowane przy pomocy nies³awnych kodeków DivX! Na dodatek s± one znacznie
szybsze od natywnych kodeków Win32 DivX DLLs, ale wolniejsze od
<systemitem class="library">libavcodec</systemitem>. W zwi±zku z tym ich
u¿ywanie do dekodowania jest
<emphasis role="bold">odradzane</emphasis>. Jednak¿e przydaj± siê one do
kodowania. Ich wad± jest fakt, i¿ nie s± udostêpnione na wolnej licencji.
</para>
<para>
DivX4 pracuje w dwóch trybach:
<variablelist>
<varlistentry><term><option>-vc odivx</option></term>
<listitem><simpara>
U¿ywa kodeka w stylu OpenDivX. W tym przypadku wytwarza obraz YV12 w swoim
w³asnym buforze, a <application>MPlayer</application> dokonuje konwersji
przestrzeni kolorów poprzez libvo.
(<emphasis role="bold">Szybkie, zalecane!</emphasis>)
</simpara></listitem>
</varlistentry>
<varlistentry><term><option>-vc divx4</option></term>
<listitem><simpara>
U¿ywa konwersji przestrzeni kolorów kodeka. W tym trybie mo¿na u¿ywaæ tak¿e
YUY2/UYVY. (<emphasis role="bold">POWOLNE</emphasis>)
</simpara></listitem>
</varlistentry>
</variablelist>
</para>
<para>
Metoda <option>-vc odivx</option> jest zazwyczaj szybsza, poniewa¿ dokonuje ona
transferu danych obrazu w formacie YV12 (planar YUV 4:2:0), który wymaga
znacznie mniejszej przepustowo¶ci szyny. Dla pakowanych trybów YUV (YUY2, UYVY)
u¿yj opcji <option>-vc divx4</option>. Dla trybów RGB prêdko¶æ jest w³a¶ciwie
taka sama, ró¿ni±ca siê od najlepszej tylko przy zmianie g³êbi kolorów.
<note>
<para>
Je¿eli twój sterownik <option>-vo</option> wspiera direct rendering,
wydajniejszym albo nawet najbardziej wydajnym rozwi±zaniem mo¿e byæ u¿ycie
<option>-vc divx4</option>.
</para>
<para>
Binarn± bibliotekê kodeków DivX4/5 mo¿na ¶ci±gn±æ z
<ulink url="http://avifile.sourceforge.net">avifile</ulink> albo z
<ulink url="http://www.divx.com">divx.com</ulink>
Nale¿y j± rozpakowaæ, uruchomiæ jako root <filename>./install.sh</filename>
i pamiêtaæ o dodaniu
<filename class="directory">/usr/local/lib</filename> do twojego
<filename>/etc/ld.so.conf</filename> i uruchomieniu <command>ldconfig</command>.
</para>
<para>
Mo¿esz zdobyæ CVSow± wersjê STAREJ biblioteki OpenDivX (core library)
w nastêpuj±cy sposób:
</para>
<procedure>
<step><para>
<screen>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot login</screen>
</para></step>
<step><para>
<screen>cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore</screen>
</para></step>
<step><para>
Biblioteka ta jest podzielona na biblioteki dekoduj±ce i koduj±ce, które musz±
byæ kompilowane osobno. Dla biblioteki dekoduj±cej wpisz po prostu
<screen>
cd divxcore/decore/build/linux
make
cp libdivxdecore.so /usr/local/lib
ln -s libdivxdecore.so /usr/local/lib/libdivxdecore.so.0
cp ../../src/decore.h /usr/local/include
</screen>
</para></step>
<step><para>
Niestety dla biblioteki koduj±cej, Makefile dla Linuksa nie jest dostêpny i
optymalizacja dla MMX dzia³a tylko pod Windows. Pomimo tych niedogodno¶ci,
mo¿esz j± ci±gle skompilowaæ u¿ywaj±c tego
<ulink url="ftp://ftp.mplayerhq.hu/MPlayer/contrib/divx-mf/Makefile">Makefile</ulink>.
<screen>
cd ../../../encore/build
mkdir linux
cd linux
cp path/Makefile .
make
cp libdivxencore.so /usr/local/lib
ln -s libdivxencore.so /usr/local/lib/libdivxencore.so.0
cp ../../src/encore.h /usr/local/include
</screen>
</para></step>
</procedure>
<para>
<application>MPlayer</application> automatycznie wykrywa DivX4/DivX5, je¿eli
jest on prawid³owo zainstalowany. Po prostu kompiluj tak jak robisz to zwykle.
Je¿eli nie zostanie wykryty, znaczy to, ¿e nie zainstalowa³e¶/skonfigurowa³e¶
go w prawid³owy sposób.
</para>
</note>
</para>
</sect3>
<sect3 id="ffmpeg" xreflabel="FFmpeg/libavcodec">
<title>FFmpeg/libavcodec</title>
<para>
<ulink url="http://ffmpeg.sourceforge.net">FFmpeg</ulink> zawiera pakiet
<emphasis role="bold">otwarto¼ród³owych</emphasis> kodeków, które potrafi±
dekodowaæ strumienie z ró¿nymi kodekami audio i video. Oferuj± one tak¿e
imponuj±ce funkcjê kodowania i szybsz± bibliotekê DivX4/5 ni¿ w przypadku
kodeków Win32, albo tych z DivX.com!
</para>
<para>
W sk³ad pakietu wchodzi wiele dobrych kodeków, szczególnie tych zwi±zanych
z MPEG4: DivX3, DivX4, DivX5, Windows Media Video 7/8 (WMV1/WMV2). Zawiera
równie¿ warty uwagi dekoder WMA.
</para>
<para>
Jednym z ostatnich (w sensie najnowszych) kodeków, który warto wymieniæ jest
kodek <emphasis role="bold">Sorenson 3</emphasis> (SVQ3). Jest to pierwsza,
ca³kowicie otwarto¼ród³owa implementacja tego kodeka. Jest on nawet szybszy od
orygina³u. Zaleca siê wybór tej wersji zamiast kodeków binarnych!
</para>
<para>
Pe³n± listê wspieranych kodeków
(<ulink url="http://www.ffmpeg.org/ffmpeg-doc.html#SEC19">video</ulink>
i <ulink url="http://www.ffmpeg.org/ffmpeg-doc.html#SEC20">audio</ulink>)
znajdziesz na stronie FFmpeg.
</para>
<para>
Je¿eli u¿ywasz, które¶ z wydañ <application>MPlayera</application>
<systemitem class="library">libavcodec</systemitem> znajduje siê ju¿ w paczce.
Po prostu kompiluj tak jak zazwyczaj. Je¿eli u¿ywasz
<application>MPlayera</application> z CVSu musisz wyci±gn±æ
<systemitem class="library">libavcodec </systemitem> z drzewa CVS FFmpega,
poniewa¿ jego wydania ukazuj± siê bardzo rzadko. Wersja z CVSa jest
w wiêkszo¶ci przypadków stabilna i oferuje wiêkszo¶æ funkcji. W celu zdobycia
libavcodec wykonaj nastêpuj±ce czynno¶ci:
</para>
<procedure>
<step><para>
<screen>cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg login</screen>
</para></step>
<step><para>
<screen>cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co -P ffmpeg/libavcodec</screen>
</para></step>
<step><para>
Przenie¶ katalog <filename>libavcodec</filename> ze ¼róde³ FFmpega
do katalogu g³ównego drzewa CVS <application>MPlayera</application>.
Powinno to wygl±daæ w ten sposób:
<filename class="directory">main/libavcodec</filename>
</para><para>
Utworzenie dowi±zañ symbolicznych (symlinków)
<emphasis role="bold">nie</emphasis> wystarcza. Konieczne jest
skopiowowanie/przeniesienie!
</para></step>
<step><para>
Je¿eli chcesz uaktualniaæ <systemitem class="library">libavcodec</systemitem>
razem z aktualizacj± CVSowej wersji <application>MPlayera</application>,
dodaj nastêpuj±ce linie
do pliku <filename>main/CVS/Entries</filename>:
<screen>D/libavcodec////</screen>
</para></step>
<step><para>
Przejd¼ do kompilowania. <filename>configure</filename> powinien wykryæ
problemy przed kompilacj±.
</para></step>
</procedure>
<note>
<para>
<application>MPlayer</application> z CVSu zawiera podkatalog
<filename>libavcodec</filename>, ale <emphasis role="bold">nie</emphasis>
zawiera ¼róde³ <systemitem class="library">libavcodec</systemitem>! ¯eby
uzyskaæ ¼ród³a tej biblioteki musisz wykonaæ powy¿sze czynno¶ci.
</para>
</note>
<para>
Wykorzystuj±c FFmpega i mojego Matroksa G400, mogê ogl±daæ na moim
K6-2 500 filmy DivX najwy¿szej rozdzielczo¶ci bez gubienia klatek.
</para>
</sect3>
<sect3 id="xanim">
<title>kodeki XAnim</title>
<note>
<para>
Wiedz, ¿e binarne kodeki Xanim wydane s± na licencji, która, oprócz innych
ograniczeñ, zabrania u¿ytkownikowi korzystaæ z nich w zestawieniu z innym
programem ni¿ <application>XAnim</application>. Jednak¿e do tej pory
autor nie podejmowa³ jeszcze ¿adnych kroków prawnych w sprawie
zwi±zanej z kodekami.
</para>
</note>
<formalpara>
<title>INSTALACJA I U¯YTKOWANIE</title>
<para>
<application>MPlayer</application> potrafi zaprzêgn±æ do dekodowania
kodeki Xanim. Aby je uaktywniæ postêpuj zgodnie z instrukcj±:
</para>
</formalpara>
<procedure>
<step><para>
¦ci±gnij kodeki, których chcesz u¿yæ ze
<ulink url="http://xanim.va.pubnix.com">strony XAnim</ulink>.
Nie ma tam kodeka <emphasis role="bold">3ivX</emphasis>, ale mo¿na go
znale¼æ na <ulink url="http://www.3ivx.com">stronie 3ivX</ulink>.
</para></step>
<step><para>
<emphasis role="bold">ALBO</emphasis> ¶ci±gnij zestaw kodeków z naszej
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">strony z kodekami</ulink>
</para></step>
<step><para>
U¿yj opcji <option>--with-xanimlibdir</option> ¿eby wskazaæ skryptowi
<filename>configure</filename> gdzie ma szukaæ kodeków Xanim.
Domy¶lnie szuka ich w katalogach
<filename class="directory">/usr/local/lib/codecs</filename>,
<filename class="directory">/usr/local/lib/xanim/mods</filename>,
<filename class="directory">/usr/lib/xanim/mods</filename> i
<filename class="directory">/usr/lib/xanim</filename>.
Drug± mo¿liwo¶ci± jest ustawienie zmiennej ¶rodowiskowej
<envar>XANIM_MOD_DIR</envar> na katalog z kodekami XAnim.
</para></step>
<step><para>
Zmieñ nazwê/utwórz dowi±zanie symboliczne (symlink) plików,
usuwaj±c z nazwy rzeczy zwi±zane z architektur± komputera, tak ¿eby
mia³y nazwy tego typu: <filename>vid_cvid.xa</filename>,
<filename>vid_h263.xa</filename>, <filename>vid_iv50.xa</filename>
</para></step>
</procedure>
<para>
XAnim jest kodekiem z rodziny <systemitem>xanim</systemitem>, mo¿esz wiêc u¿yæ
opcji <option>-vfm xanim</option> ¿eby kazaæ
<application>MPlayerowi</application> u¿ywaæ go w przypadku, gdy jest to
mo¿liwe.
</para>
<para>
Przetestowane kodeki to: <emphasis role="bold">Indeo 3.2, 4.1, 5.0, CVID, 3ivX,
H.263.</emphasis>
</para>
</sect3>
<sect3 id="vivo-video">
<title>VIVO video</title>
<para>
<application>MPlayer</application> potrafi odtwarzaæ pliki video zakodowane
przy pomocy Vivo (1.0 i 2.0). Najodpowiedniejszym kodekiem dla plików w wersji
1.0 jest dekoder H.263 FFmpega, którego mo¿esz u¿yæ za pomoc± opcji
<option>-vc ffh263</option>. Dla plików w wersji 2.0, u¿yj Win32 DLL
korzystaj±c z opcji <option>-vc vivo</option>. Je¿eli nie wybierzesz ¿adnej
opcji <application>MPlayer</application> automatycznie wybierze najlepszy
kodek.
</para>
</sect3>
<sect3 id="mpeg12">
<title>MPEG 1/2 video</title>
<para>
MPEG1 i MPEG2 s± dekodowane przez natywn±, wieloplatformow± bibliotekê
<systemitem class="library">libmpeg2</systemitem>, której kod ¼ród³owy
wchodzi w sk³ad <application>MPlayera</application>. Z uszkodzonymi plikami
MPEG 1/2 radzimy sobie przechwytuj±c <systemitem>Signal 11</systemitem>
(<systemitem>segmentation fault -b³±d segmentacji -przyp t³umacz</systemitem>)
i szybko reinicjuj±c kodek, kontynuuj±c odtwarzanie dok³adnie w miejscu gdzie
wyst±pi³ b³±d. Ta technika nie ma widocznego wp³ywu na szybko¶æ dzia³ania.
</para>
</sect3>
<sect3 id="avicodecs">
<title>MS Video1, Cinepak CVID i inne stare kodeki</title>
<para>
<application>MPlayer</application> potrafi odtwarzaæ wiêkszo¶æ plików
AVI i MOV w których u¿yto starszych kodeków.
W przesz³o¶ci by³y one dekodowane przy pomocy binarnych kodeków Win32, ale
dzisiaj dysponujemy ju¿ <emphasis role="bold">natywnymi kodekami</emphasis>.
W przypadku wiêkszo¶ci z nich u¿ywany jest
<link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>.
</para>
</sect3>
<sect3 id="realvideo">
<title>RealVideo</title>
<para>
<application>MPlayer</application> wpiera dekodowanie wszystkich wersji
RealVideo:
<itemizedlist>
<listitem><simpara>
RealVideo 1.0, 2.0 (fourcc RV10, RV20) - kodowanie/dekodowanie realizowane
przez <systemitem class="library">libavcodec</systemitem>
</simpara></listitem>
<listitem><simpara>
RealVideo 3.0, 4.0 (fourcc RV30, RV40) - dekodowanie za pomoc±
<emphasis role="bold">bibliotek RealPlayer</emphasis>
</simpara></listitem>
</itemizedlist>
</para>
<para>
¦ci±gnij kodeki Real z
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/">http://www.mplayerhq.hu/MPlayer/releases/codecs/</ulink>
i rozpakuj je do katalogu
<filename class="directory">/usr/local/lib/codecs</filename>.
Je¿eli wolisz je trzymaæ w innym miejscu, u¿yj opcji
<option>--with-reallibdir</option> dla <command>configure</command>.
</para>
<note><para>
Aktualnie biblioteki <application>RealPlayer</application>
<emphasis role="bold">dzia³aj± tylko pod Linuksem, FreeBSD, NetBSD, Cygwinem na
platformach x86, Alpha i PowerPC (Sprawdzone zosta³y Linux/Alpha
i Linux/PowerPC) i pod Mac OS X</emphasis>.
</para></note>
</sect3>
<sect3 id="xvid">
<title>XviD</title>
<para>
<ulink url="http://www.xvid.org">XviD</ulink> wydzieli³ siê z projektu OpenDivX.
Sta³o siê to, gdy ProjectMayo zamkn±³ kod OpenDivX i przemianowa³ go na DivX4
(a teraz DivX5). W rezultacie tej decyzji, roze¼leni ludzie spoza ProjectMayo,
którzy pracowali nad OpenDivX, rozpoczêli projekt XViD. Tak wiêc oba projekty
maj± to samo pochodzenie.
<itemizedlist>
<title>ZALETY</title>
<listitem><simpara>
otwarty kod ¼ród³owy
</simpara></listitem>
<listitem><simpara>
API kodeka jest kompatybilne z DivX4, wiêc dodanie dla niego wsparcia jest
proste
</simpara></listitem>
<listitem><simpara>
wsparcie dla 2-przebiegowego kodowania
</simpara></listitem>
<listitem><simpara>
dobra jako¶æ kodowania, wiêksza prêdko¶æ od DivX4 (mo¿esz go zoptymalizowaæ
dla twojej maszyny podczas kompilacji)
</simpara></listitem>
</itemizedlist>
<itemizedlist>
<title>WADY</title>
<listitem><simpara>
na dzieñ dzisiejszy ma k³opoty z
<emphasis role="bold">dekodowaniem</emphasis> niektórych plików DivX/DivX4
(nie stanowi to problemu, poniewa¿ potrafi je odtwarzaæ
<link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>).
</simpara></listitem>
<listitem><simpara>
w trakcie rozwoju
</simpara></listitem>
</itemizedlist>
</para>
<procedure>
<title>INSTALACJA XVID CVS</title>
<para>
Aktualnie jest dostêpny tylko poprzez CVS. Poni¿ej znajduj± siê instrukcje
pobierania i instalacji (bêdziesz potrzebowa³ autoconf przynajmniej w wersji
2.50, automake i libtool):
</para>
<step><para>
<screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login</screen>
</para></step>
<step><para>
<screen>cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore</screen>
</para></step>
<step><para>
<screen>cd xvidcore/build/generic</screen>
</para></step>
<step><para>
<screen>./bootstrap.sh</screen>
</para></step>
<step><para>
<screen>./configure</screen>
Mo¿esz potrzebowaæ dodaæ jakie¶ opcje (przejrzyj wyj¶cie
poni¿szej komendy).
<command>./configure --help</command>
</para></step>
<step><para>
<screen>make && make install</screen>
</para></step>
<step><para>
Je¿eli u¿y³e¶ opcji <option>--enable-divxcompat</option>,
skopiuj <filename>../../src/divx4.h</filename> do
<filename class="directory">/usr/local/include/</filename>.
</para></step>
<step><para>
Przekompiluj <application>MPlayera</application> z opcjami
<option>--with-xvidcore=<replaceable>/¶cie¿ka/do/</replaceable>libxvidcore.a</option>
<option>--with-xvidincdir=<replaceable>/¶cie¿ka/do/</replaceable>xvid.h</option>.
</para></step>
</procedure>
</sect3>
<sect3 id="sorenson">
<title>Sorenson</title>
<para>
Sorenson jest kodekiem video rozwijanym przez Sorenson Media i licencjonowanym
dla Apple, która rozprowadza go wraz ze swoim <application>Odtwarzaczem
QuickTime</application>.
Aktualnie <application>MPlayer</application> jest w stanie odtwarzaæ wszystkie
wersje plików video Sorensona z u¿yciem nastêpuj±cych dekoderów:
</para>
<itemizedlist>
<listitem><simpara>
Sorenson Video v1 (fourcc <emphasis>SVQ1</emphasis>) - dekodowanie za pomoc±
<emphasis role="bold">natywnego kodeka video</emphasis>
(<link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>)
</simpara></listitem>
<listitem><simpara>
Sorenson Video v3 (fourcc <emphasis>SVQ3</emphasis>) - dekodowanie za pomoc±
<emphasis role="bold">natywnego kodeka video</emphasis>
(<link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>)
</simpara></listitem>
</itemizedlist>
<procedure>
<title>KOMPILOWANIE MPLAYERA ZE WSPARCIEM DLA BIBLIOTEK QUICKTIME</title>
<note><para>Aktualnie wspierane s± tylko 32-bitowe platformy Intela.</para></note>
<step><para>¶ci±gnij <application>MPlayera</application> z CVSu</para></step>
<step><para>pobierz pakiet QuickTime DLL z
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/codecs/"/>
</para></step>
<step><para>rozpakuj pakiet QuickTime DLL do twojego katalogu z kodekami Win32
(domy¶lnie: <filename class="directory">/usr/local/lib/codecs/</filename>)
</para></step>
<step><para>skompiluj <application>MPlayera</application></para></step>
</procedure>
</sect3>
</sect2>
<!-- ********** -->
<sect2 id="audio-codecs">
<title>Kodeki audio</title>
<itemizedlist>
<title>Najwa¿niejsze ze wszystkich kodeków audio:</title>
<listitem><simpara>
MPEG layer 1/2/3 (MP1/2/3) audio (<emphasis role="bold">natywny</emphasis>
kod, z optymalizacj± dla MMX/SSE/3DNow!)
</simpara></listitem>
<listitem><simpara>
Windows Media Audio 7 i 8 (AKA WMAv1 i WMAv2) (<emphasis role="bold">natywny</emphasis> kod, z
<link linkend="ffmpeg"><systemitem class="library">libavcodec</systemitem></link>)
</simpara></listitem>
<listitem><simpara>
Windows Media Audio 9 (WMAv3) (poprzez DMO DLL)
</simpara></listitem>
<listitem><simpara>
AC3 Dolby audio (<emphasis role="bold">natywny</emphasis> kod, z
optymalizacj± MMX/SSE/3DNow!)
</simpara></listitem>
<listitem><simpara>
przetwarzanie AC3 przez kartê d¼wiêkow±
</simpara></listitem>
<listitem><simpara>
AAC
</simpara></listitem>
<listitem><simpara>
kodek Ogg Vorbis audio (<emphasis role="bold">natywna</emphasis> biblioteka)
</simpara></listitem>
<listitem><simpara>
RealAudio: DNET (AC3 z niskim bitratem), Cook, Sipro i ATRAC3
</simpara></listitem>
<listitem><simpara>
QuickTime: kodeki Qualcomm i QDesign
</simpara></listitem>
<listitem><simpara>
VIVO audio (g723, Vivo Siren)
</simpara></listitem>
<listitem><simpara>
Voxware audio (poprzez DirectShow DLL)
</simpara></listitem>
<listitem><simpara>
formaty alaw i ulaw, ró¿ne gsm, adpcm i pcm i inne stare, proste kodeki
audio
</simpara></listitem>
</itemizedlist>
<sect3 id="swac3">
<title>Programowe dekodowanie AC3</title>
<para>
To jest domy¶lny dekoder u¿ywany przez pliki z d¼wiêkiem AC3.
</para>
<para>
Dekoder AC3 mo¿e wytworzyæ wyj¶cie audio zmiksowane dla 2,4 lub 6 g³o¶ników.
Kiedy skonfigurowany jest dla 6 g³o¶ników, dekoder dostarcza do sterownika
karty d¼wiêkowej osobne wyj¶cie dla ka¿dego kana³u AC3, pozwalaj±c do¶wiadczyæ
"d¼wiêk surround" bez potrzeby u¿ycia zewnêtrznego dekodera AC3 do kodeka hwac3.
</para>
<para>
U¿yj opcji <option>-channels</option> aby wybraæ liczbê wyj¶ciowych kana³ów.
U¿yj <option>-channels 2</option> do uzyskania d¼wiêku stereo. Dla
czterokana³owego d¼wiêku (wyj¶cia Lewe Przednie, Prawe Przednie, Lewe Surround
i Prawe Surround), u¿yj <option>-channels 4</option>. W tym przypadku,
wszystkie centralne kana³y zostan± zmiksowane do odpowiadaj±cych im przednich
kana³ów. Natomiast <option>-channels 6</option> wyprodukuje wszystkie kana³y
AC3 tak jak zosta³y zakodowane - w kolejno¶ci Lewy, Prawy, Lewy Surround, Prawy
Surround, Centralny i LFE.
</para>
<para>
Domy¶ln± liczb± wyj¶ciowych kana³ów jest 2.
</para>
<para>
Aby u¿yæ wiêcej ni¿ dwóch wyj¶ciowych kana³ów, bêdziesz potrzebowa³ skorzystaæ
z OSS i mieæ kartê d¼wiêkow± ze wsparciem dla odpowiedniej liczby wyj¶ciowych
kana³ów poprzez SNDCTL_DSP_CHANNELS ioctl. Przyk³adem odpowiedniego sterownika
jest emu10k1 (u¿ywany przez karty Soundblaster Live!) z sierpnia 2001 roku,
albo nowszy (przypuszczalnie dzia³a tak¿e ALSA CVS).
</para>
</sect3>
<sect3 id="hwac3">
<title>Sprzêtowe dekodowanie AC3</title>
<para>
Potrzebna jest karta obs³uguj±ca AC3, z cyfrowym wyj¶ciem (S/PDIF). Sterownik
musi prawid³owo obs³ugiwaæ format AFMT_AC3 (robi to C-Media). Pod³±cz swój
dekoder AC3 do wyj¶cia S/PDIF i u¿yj opcji <option>-ac hwac3</option>.
Rozwi±zanie to jest ci±gle w fazie testów, ale wiadomo, ¿e dzia³a z kartami
C-Media i Soundblaster Live! + sterowniki ALSA (ale nie z OSS) i kartami
dekoduj±cymi DXR3/Hollywood+ MPEG.
</para>
</sect3>
<sect3 id="libmad">
<title>wsparcie dla libmad</title>
<para>
<ulink url="http://mad.sourceforge.net">libmad</ulink> jest wieloplatformow±,
sta³oprzecinkow± (wewnêtrznie 24-bitowe PCM) bibliotek± dekoduj±c± d¼wiêk
MPEG. Nie odtwarza zbyt dobrze uszkodzonych plików i czasami ma problemy
z przewijaniem, ale mo¿e mieæ lepsz± wydajno¶æ ni¿ mp3lib na platformach ze
s³abszymi FPU (jednostka do wykonywania obliczeñ
zmiennoprzecinkowych-przyp. t³umacza) (jak np. <link linkend="arm">ARM</link>).
</para>
<para>
Aby w³±czyæ wsparcie dla biblioteki, podczas kompilacji u¿yj opcji
<option>--enable-mad</option> przy wywo³ywaniu configure.
</para>
</sect3>
<sect3 id="vivo-audio">
<title>VIVO audio</title>
<para>
Rodzaj kodeka audio u¿ywanego w plikach VIVO zale¿y od tego, czy jest to plik
VIVO/1.0, czy VIVO/2.0. Pliki VIVO/1.0 maj± d¼wiêk w formacie
<emphasis role="bold">g.723</emphasis>, a pliki VIVO/2.0 w formacie
<emphasis role="bold">Vivo Siren</emphasis>. Wspierane s± oba typy.
</para>
</sect3>
<sect3 id="realaudio">
<title>RealAudio</title>
<para>
<application>MPlayer</application> potrafi dekodowaæ prawie wszystkie wersje RealAudio:
</para>
<itemizedlist>
<listitem><simpara>
RealAudio DNET - dekodowanie poprzez
<systemitem class="library">liba52</systemitem>
</simpara></listitem>
<listitem><simpara>
RealAudio Cook/Sipro/ATRAC3 - dekodowanie z u¿yciem
<emphasis role="bold">bibliotek RealPlayer</emphasis>
</simpara></listitem>
</itemizedlist>
<para>
Instrukcje dotycz±ce sposobu instalacji bibliotek RealPlayer
znajduj± siê w dziale <link linkend="realvideo">RealVideo</link>.
</para>
</sect3>
<sect3 id="qdesign">
<title>kodeki QDesign</title>
<para>
Format d¼wiêku QDesign (fourcc:<emphasis>QDMC, QDM2</emphasis>) wykorzystywany
jest w plikach MOV/QT. Obie wersje tych kodeków mog± byæ odtwarzane za pomoc±
bibliotek QuickTime. Instrukcje instalacji znajduj± siê w dziale
<link linkend="sorenson">kodek Sorenson video</link>.
</para>
</sect3>
<sect3 id="qualcomm">
<title>kodeki Qualcomm</title>
<para>
D¼wiêk w formacie Qualcomm (fourcc:<emphasis>Qclp</emphasis>) u¿ywany jest
w plikach MOV/QT. Mo¿e byæ dekodowany z u¿yciem bibliotek QuickTime.
Instrukcje instalacji znajduj± siê w dziale
<link linkend="sorenson">kodeka video Sorenson</link>.
</para>
</sect3>
<sect3 id="aac">
<title>AAC codec</title>
<para>
AAC (Advanced Audio Coding) jest kodekiem audio spotykanym czasami w plikach
MOV i MP4. Otwarty dekoder nazywany FAAD dostêpny jest na stronie
<ulink url="http://www.audiocoding.com"/>.
<application>MPlayer</application> zawiera libfaad 2.0RC1, wiêc nie musisz
¶ci±gaæ go oddzielnie.
</para>
<para>
Je¿eli u¿ywasz gcc 3.2, który ma k³opoty z kompilacj± wbudowanej wersji
FAAD lub chcesz z jakich¶ powodów u¿yæ zewnêtrznej biblioteki,
¶ci±gnij j± z
<ulink url="http://www.audiocoding.com/download.php">tej strony</ulink>
i dodaj opcjê <option>--enable-external-faad</option> do
<filename>configure</filename>. Nie potrzebujesz ca³ego faad2 do dekodowanie
plików AAC. Wystarczy u¿yæ samej biblioteki libfaad. Zbudujesz j± w nastêpuj±cy
sposób
<screen>
cd faad2/
chmod +x bootstrap
./bootstrap
./configure
cd libfaad
make
make install
</screen>
Wersje binarne nie s± dostêpne na stronie audiocoding.com, ale mo¿esz
¶ci±gn±æ (apt-getem) Debianowe paczki z
<ulink url="http://marillat.free.fr">domowej strony Christiana Marillata</ulink>,
RPMy dla Mandrake ze strony <ulink url="http://plf.zarb.org">P.L.F</ulink>
a RedHatowe RPMy z
<ulink url="http://greysector.rangers.eu.org/">Grey Sector</ulink>.
</para>
</sect3>
</sect2>
<!-- ********** -->
<sect2 id="win32-codecs">
<title>importowanie kodeków Win32-HOWTO</title>
<!-- TODO: a short paragraph of text would be nice here... -->
<!-- Taa, a ja to potem pewnie bede mial tlumaczyc:-) -->
<sect3 id="vfw-codecs">
<title>kodeki VFW</title>
<para>
VFW (Video for Windows) jest starym Video API pod Windows. Jego kodeki maj±
rozszerzenie <filename>.DLL</filename> albo (rzadziej)
<filename>.DRV</filename>. Je¿eli <application>MPlayer</application> odmawia
odtwarzania plików AVI z komunikatem tego typu:
<screen>UNKNOWN video codec: HFYU (0x55594648)</screen>
</para>
<para>
oznacza to, ¿e twój plik AVI jest zakodowany z u¿yciem kodeka, który korzysta
z fourcc HFYU (HFYU = kodek HuffYUV, DIV3 = DivX Low Motion, itd.;
fourcc-unikalny, czteroliterowy identyfikator kodeka znajduj±cy siê najczê¶ciej
w nag³ówkach plików AVI-przyp. t³umacz). Kiedy ju¿ to wiesz, musisz odzukaæ
DLL'a, który jest ³adowany przez Windows w celu odtworzenia tego pliku.
W naszym przypadku plik <filename>system.ini</filename> zawiera tê informacjê
w nastêpuj±cej linii:
<programlisting>VIDC.HFYU=huffyuv.dll</programlisting>
</para>
<para>
Zatem potrzebujesz pliku <filename>huffyuv.dll</filename>. Zauwa¿, ¿e kodeki
audio s± oznaczane za pomoc± prefiksu MSACM:
<programlisting>msacm.l3acm=L3codeca.acm</programlisting>
</para>
<para>
Jest to kodek MP3. Teraz powiniene¶ mieæ wszystkie niezbêdne informacje
(fourcc, plik z kodekiem, przyk³adowy plik AVI). Umie¶æ swoj± pro¶bê o wsparcie
dla kodeka za pomoc± poczty elektronicznej i wy¶lij ww. pliki na poni¿szy
serwer FTP:
<systemitem role="url">
ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
</systemitem>
</para>
<note><para> W systemach Windows NT/2000/XP szukaj powy¿szych informacji
w rejestrze, np. szukaj wyra¿enia "VIDC.HFYU". Aby dowiedzieæ siê jak
to zrobiæ, spójrz ni¿ej na star± metodê DirectShow.
</para></note>
</sect3>
<sect3 id="dshow-codecs">
<title>Kodeki DirectShow</title>
<para>
DirectShow jest nowszym Video API, które jest nawet gorsze od swojego
poprzednika. Sprawa ma siê gorzej z DirectShow, poniewa¿:
<itemizedlist>
<listitem><simpara>
<filename>system.ini</filename> nie zawiera wymaganych informacji,
zamiast tego s± one przechowywane w rejestrze.
</simpara></listitem>
<listitem><simpara>
Z tego powodu wymagane jest GUID kodeka.
</simpara></listitem>
</itemizedlist>
</para>
<procedure>
<title>Nowa metoda:</title>
<para>
U¿ywaj±c <application>Microsoft GraphEdit</application> (szybki sposób)
</para>
<step><para>
Pobierz <application>GraphEdit</application> z dowolnego DirectX SDK, albo z
<ulink url="http://doom9.net">doom9</ulink>
</para></step>
<step><para>
Uruchom <command>graphedit.exe</command>.
</para></step>
<step><para>
Z menu wybierz Graph -> Insert Filters.
</para></step>
<step><para>
Rozwiñ listê <systemitem>DirectShow Filters</systemitem>
</para></step>
<step><para>
Wybierz w³a¶ciwy kodek i rozwiñ go.
</para></step>
<step><para>
We wpisie <systemitem>DisplayName</systemitem> spójrz na tekst w
nawiasach klamrowych po znaku "backslash" i zapisz go (piêæ bloków
oddzielonych kreskami, GUID).
</para></step>
<step><para>
Binariami kodeka jest plik okre¶lony w polu <systemitem>Filename</systemitem>.
</para></step>
</procedure>
<note>
<para>
Je¿eli nie ma pola <systemitem>Filename</systemitem>, a
<systemitem>DisplayName</systemitem> zawiera co¶ w stylu
<systemitem>device:dmo</systemitem>, to jest to DMO-kodek.
</para>
</note>
<procedure>
<title>Stara Metoda:</title>
<para>
We¼ g³êboki oddech i zacznij przeszukiwanie rejestru...
</para>
<step><para>
Uruchom <command>regedit</command>.
</para></step>
<step><para>
Naci¶nij <keycap>Ctrl</keycap>+<keycap>F</keycap>, odznacz dwa pierwsze
pola (checkboxes) i zaznacz trzecie. Wpisz fourcc kodeka (np.
<userinput>TM20</userinput>).
</para></step>
<step><para>
Powiniene¶ zobaczyæ pole zwieraj±ce ¶cie¿kê i nazwê pliku (np.
<filename>C:\WINDOWS\SYSTEM\TM20DEC.AX</filename>).
</para></step>
<step><para>
Gdy odnalaz³e¶ ju¿ plik, potrzebny bêdzie GUID. Spróbuj ponownego
wyszukiwania, ale tym razem wpisz nazwê kodeka, a nie jego fourcc. Jego nazwê
mo¿na sprawdziæ, kiedy Media Player odtwarza plik, odszukuj±c j± w
<guimenu>Plik</guimenu> -> <guisubmenu>Opcje</guisubmenu> ->
<guimenuitem>Zaawansowane</guimenuitem>.
Je¿eli jej tam nie bêdzie, to masz pecha. Spróbuj odgadn±æ nazwê (np. spróbuj
wyszukaæ "TrueMotion").
</para></step>
<step><para>
Je¿eli GUID zosta³ odnaleziony, powiniene¶ ujrzeæ pola <guilabel>FriendlyName</guilabel>
i <guilabel>CLSID</guilabel>. Zapisz szesnastobajtowy CLSID bêd±cy GUIDem,
którego potrzebujemy.
</para></step>
</procedure>
<note>
<para>
Je¿eli wyszukiwanie siê nie powiedzie, spróbuj zaznaczyæ wszystkie pola
(checkboxes). Prawdopodobnie dostaniesz niepasuj±ce wyniki, ale byæ mo¿e
bêdziesz mia³ szczê¶cie...
</para>
</note>
<para>
Teraz, kiedy masz ju¿ wszystkie niezbêdne informacje (fourcc, GUID, plik
z kodekiem, przyk³adowy plik AVI), umie¶æ swoj± pro¶bê o wsparcie dla kodeka
za pomoc± poczty elektronicznej i wy¶lij ww. pliki na poni¿szy serwer FTP:
<systemitem role="url">ftp://ftp.mplayerhq.hu/MPlayer/incoming/[codecname]/
</systemitem>
</para>
</sect3>
</sect2>
</sect1>
|