## 2.1 Wspierane formaty

Ważne jest, by wyjaśnić podstawową pomyłkę. Gdy ludzie widzą plik z rozszerzeniem .AVI, natychmiast wywnioskowują, że to nie jest plik MPEG. To jednak nie jest prawdą, a przynajmniej nie całkowitą. W przeciwieństwie do popularnego poglądu, te pliki mogą zawierać wideo w MPEG.

Zauważ, że kodek to nie to samo co format pliku.
Przykładami kodeków wideo są: MPEG1, MPEG2, DivX, Indeo5, 3ivx.
Przykładami formatów plików są: MPG, AVI, ASF.

Teoretycznie, możesz umieścić wideo OpenDivX dźwięk MP3 w formacie pliku MPG. Jednak, większość odtwarzaczy nie odtworzy tego, ponieważ oczekują one wideo MPEG1 i dźwięk MP2 (w odróżnieniu od AVI, MPG nie posiada niezbędnych pól do określania jego strumieni wideo i audio). Możesz też umieścić wideo MPEG1 w pliku AVI. FFmpeg i MEncoder potrafią tworzyć takie pliki.

### 2.1.1 Formaty wideo

#### 2.1.1.1 Pliki MPEG

Pliki MPEG występują w różnych odmianach:

- MPG: Jest on najbardziej prostą formą formatu plików MPEG. Zawiera wideo MPEG1 i dźwięk MP2 (MPEG-1 warstwa 2) lub rzadziej MP1.
- DAT: Jest to bardzo podobny format do MPG, tyle że z innym rozszerzeniem. Używany jest w płytach Video CD. Z powodu sposobu tworzenia płyt VCD i struktury Linuksa, pliki DAT nie mogą być odtwarzane ani kopiowane z VCD jako regularne pliki. Musisz użyć opcji `-vcd` by odtworzyć Video CD.
- VOB: Jest to format pliku MPEG używany w DVD. Jest taki sam jak MPG, plus możliwość zawierania napisów lub dźwięku nie-MPEG (AC3). Zawiera zakodowane wideo MPEG2 i zazwyczaj dźwięk AC3, ale DTS, MP2 i nieskompresowany LPCM też są dozwolone.
  Przeczytaj sekcję o DVD!

Klatki w pliki MPEG nie są powiązane w grupy. Oznacza to, że możesz ciąć/łączyć pliki MPEG przy pomocy standardowych narzędzi plikowych (takich jak `dd`, `cut`) i pozostaną one całkowicie funkcjonalne.

Jedną z ważnych cech plików MPG jest to, że mają one pole, w którym określa się stosunek obrazu dla strumienia wideo. Dla przykładu, SVCD rozdzielczość wideo to 480x480 i w nagłówku tego pola ustawione jest 4:3, więc będzie on odtwarzany jako 640x480. Pliki AVI nie zawierają tego pola, więc muszą być przeskalowywane w czasie kodowania lub odtwarzane z opcją `-aspect`.

#### 2.1.1.2 Pliki AVI

Stworzony przez Microsoft, AVI (Audio Video Interleaved) jest rozpowszechnionym, używanym do różnych celów formatem, aktualnie używany głównie dla wideo DivX i DivX4. Ma on wiele znanych wad i mankamentów (na przykład w strumieniowym przesyłaniu). Wspiera jeden strumień wideo i od 0 do 99 strumieni audio. Rozmiar pliku jest ograniczony do 2 GB, ale jest rozwiązanie pozwalające na większe pliki o nazwie OpenDMS. Aktualnie Microsoft bardzo odradza jego używanie i zachęca do ASF/WMF. Nikogo to jednak nie obchodzi.

Jest rozwiązanie, które pozwala na umieszczenie strumienia audio Ogg Vorbis w plikach AVI, ale powodujące niezgodności ze standardem AVI. MPlayer potrafi odtwarzać te pliki. Przeszukiwanie także jest dodane, ale poważnie utrudnione przez źle zakodowane pliki z mylącymi nagłówkami. Na nieszczęście jedyny koder, który aktualnie potrafi tworzyć takie pliki, NanDub, ma ten problem.

Informacja: Kamery DV tworzą surowy strumień DV który narzędzia przechwytujące DV konwertują do dwóch różnych typów plików AVI. Plik AVI zawiera później wcześniej oddzielone strumienie wideo i audio, który MPlayer potrafi odtworzyć lub surowy strumień DV, dla którego wsparcie jest w budowie.

Są dwa rodzaje plików AVI:

- Interleaved: Zawartość audio i video jest przeplatana (interleaved). Jest to standardowe użycie. Rekomendowane i przeważnie używane. Niektóre narzędzia tworzą pliki interleaved AVI ze złą synchronizacją. MPlayer wykrywa je jako interleaved, a one tracą synchronizację A/V, prawdopodobnie podczas przeszukiwania. Te pliki powinny być odtwarzane jako nie-interleaved (z opcją `-ni`).
- Non-interleaved: Najpierw znajduje się cały strumień video, a potem cały strumień audio. Tak więc, wymaga to intensywnego przeszukiwania pliku, powodując odtwarzanie z sieci lub CD-Romu problematycznym.

MPlayer Wspiera dwa sposoby odwzorowania czasu w plikach AVI:

- bps-based: Jest oparty na bitrate/próbkowaniu strumienia wideo/audio. Ta metoda jest używana przez większość odtwarzaczy, włączając w to avifile i Windows Media Player. Pliki z uszkodzonym nagłówkiem i pliki stworzone z dźwiękiem VBR (zmiennym bitrate), ale nie z koderem zgłaszającym o VBR spowodują utratę synchronizacji A/V (przeważnie przy przeszukiwaniu).
- interleaving-based: Nie używa ona wartości bitrate z nagłówka, zamiast tego używa względnej pozycji próbek interleaved dźwięku i wideo, co pozwala na odtworzenie źle zakodowanych plików z dźwiękiem VBR.

Każdy kodek dźwięku i wideo jest dozwolony, ale zauważ, że dźwięk VBR nie jest dobrze wspierany przez większość odtwarzaczy. Format pliku pozwala na użycie dźwięku VBR, ale większość odtwarzaczy oczekuje dźwięku CBR (stały bitrate), tak więc nie potrafią dobrze odtworzyć filmu z dźwiękiem VBR. VBR jest niestandardowy i specyfikacja AVI Microsoftu zawiera tylko dźwięk CBR. Większość koderów/edytorów tworzy złe pliki gdy używa dźwięku VBR. Są tylko dwa znane wyjątki: NanDub i MEncoder.

#### 2.1.1.3 Pliki ASF/WMV

ASF (active streaming format) pochodzi z Microsoftu. Stworzyli dwa warianty ASF, v1.0 i v2.0. v1.0 jest używana przez ich narzędzia (Windows Media Player i Windows Media Encoder) i jest ściśle tajny. v2.0 jest upubliczniony i opatentowany :). Oczywiście, różnią się one, w ogóle nie są one ze sobą kompatybilne (jest to po prostu inne zagranie prawne). MPlayer wspiera tylko v1.0, ponieważ nikt nigdy nie widział plików v2.0 :). Zauważ, że pliki ASF obecnie są z rozszerzeniem .WMA lub .WMV.

#### 2.1.1.4 Pliki QuickTime/MOV

Ten format został stworzony przez Apple i może zawierać dowolny kodek, CBR lub VBR. Mają zazwyczaj rozszerzenie .QT lub .MOV. Od czasu gdy grupa MPEG4 wybrała QuickTime'ma jako rekomendowany format pliku dla MPEG4, ich pliki MOV mają rozszerzenia .MPG lub .MP4 (Interesujące strumienie video i audio w tych plikach to naprawdę pliki MPG i AAC. Możesz je wydobyć opcjami `-dumpvideo` i `-dumpaudio`.).

Informacja: Większość nowych plików QuickTime używa wideo Sorenson i dźwięku QDesign Music. Zobacz naszą sekcję o kodeku Sorenson.

#### 2.1.1.5 Pliki VIVO

MPlayer pomyślnie dekoduję pliki w formacie VIVO. Największą wadą tego formatu jest to, że nie ma on bloku z indeksem, ani ustalonego rozmiaru pakietu lub bajtów synchronizacyjnych i większość plików nie ma nawet klatek kluczowych (keyframe), więc zapomnij o przeszukiwaniu!

Kodekiem wideo plików VIVO/1.0 jest standardowy h.263. Kodekiem wideo plików VIVO/2.0 jest zmodyfikowany, niestandardowy h.263v2. Dźwięk jest taki sam, może to być g.723 (standard), lub Vivo Siren.

Zobacz sekcje Kodek wideo VIVO i Kodek audio VIVO po instrukcje instalacji.

#### 2.1.1.6 Pliki FLI

FLI jest to bardzo stary format używany przez Autodesk Animator, ale jest on podstawowym formatem pliku dla krótkich animacji w sieci. MPlayer demuksuje (demuxed) i dekoduje filmy FLI i potrafi nawet je przeszukiwać (użyteczne przy zapętleniu opcją `-loop`). Pliki FLI nie mają klatek kluczowych (keyframe), więc obraz może być zniekształcony przez krótki czas po przeszukiwaniu.

#### 2.1.1.7 Pliki RealMedia (RM)

Tak, MPlayer potrafi czytać (demux) pliki RealMedia (.rm). Przeszukiwanie działa, ale musisz wyraźnie podać opcję `-forceidx` (format wspiera keyframe'y). Oto listy wspieranych kodeków RealVideo i RealAudio.

#### 2.1.1.8 Pliki NuppelVideo

NuppelVideo jest narzędziem przechwytującym TV (AFAIK:). MPlayer może odczytać jego pliki .NUV (tylko NuppelVideo 5.0). Te pliki mogą zawierać nieskompresowane YV12, skompresowane YV12+RTJpeg, skompresowane YV12 RTJpeg+lzo, i skompresowane YV12+lzo klatki. MPlayer dekoduje je wszystkie (i również koduje je MEncoderem do DivX/itp!). Przeszukiwanie działa.

#### 2.1.1.9 Pliki yuv4mpeg

yuv4mpeg / yuv4mpeg2 jest formatem pliku używanym przez programy mjpegtools. Możesz przechwytywać, tworzyć, filtrować lub kodować wideo w tym formacie formacie używając tych programów. Ten format pliku jest tak naprawdę sekwencją nieskompresowanych obrazów YUV 4:2:0.

#### 2.1.1.10 Pliki FILM

Ten format jest używany w starych CD-Romach z grami dla Segi Saturn.

#### 2.1.1.11 Pliki RoQ

Pliki RoQ są multimedialnymi plikami używanymi w niektórych grach ID takich jak Quake III i Return to Castle Wolfenstein.

#### 2.1.1.12 Pliki OGG/OGM

Jest to nowy format pliku z Xiphophorus. Może zawierać dowolny kodek wideo lub audio, CBR lub VBR. Będziesz musiał zainstalować `libogg` i `libvorbis` przed kompilacją MPlayera, by móc je odtworzyć.

#### 2.1.1.13 Pliki SDP

SDP jest standardowym formatem IETF do opisywania strumieni RTP wideo i/lub audio. (wymagane są biblioteki "LIVE.COM Streaming Media".)

#### 2.1.1.14 Pliki PVA

PVA jest formatem podobnym do MPEG używanym przez oprogramowanie dostarczane z kartami DVB TV (np.: MultiDec, WinTV) w Windowsie.

Specyfikację PVA możesz pobrać z poniższego adresu: http://www.technotrend.de/download/av_format_v1.pdf

#### 2.1.1.15 Pliki GIF

Format GIF jest podstawowym formatem graficznym w sieci. Są dwie wersje specyfikacji GIFa, GIF87a i GIF89a. Główną różnicą jest to, że GIF89a umożliwia tworzenie animacji. MPlayer wspiera oba formaty poprzez użycie biblioteki libungif lub innej kompatybilnej z libgif. Nie-animowane GIFy będą wyświetlone jako jednoklatkowe wideo. (Użyj opcji `-loop` i `-fixed-vo` by wyświetlić je dłużej.)

Aktualnie MPlayer nie wspiera przeszukiwania w plikach GIF. Pliki GIF nie mają wymaganego ustalonego rozmiaru klatki, ani ustalonego tempa klatek. Raczej, każda klatka ma niezależny rozmiar i jest przypuszczalnie pozycjonowana w określonym miejscu w polu o określonym rozmiarze. Tempo klatek jest kontrolowane przez opcjonalny blok przed każdą klatką, który określa opóźnienie następnej klatki w setnych sekundy.

Standardowy plik GIF zawiera klatkę 24-bitową RGB z w większości 8-bitową paletą kolorów. Klatki te są zazwyczaj skompresowane przy użyciu LZW, jednak niektóre kodery GIF tworzą nieskompresowane klatki by ominąć patenty na kompresje LZW.

Jeżeli twoja dystrybucja nie zawiera libungif, pobierz kopie ze strony domowej libungif. Po dokładne techniczne informacje, zobacz specyfikację GIF89a.

### 2.1.2 Formaty audio

MPlayer jest odtwarzaczem Filmów a nie Media, chociaż potrafi odtworzyć niektóre pliki formatów audio (są one wypisane w sekcji poniżej). To nie jest zalecane użycie MPlayera, lepiej używaj xmms.

#### 2.1.2.1 Pliki MP3

Możesz mieć problemy z odtwarzaniem pewnych plików MP3 ponieważ MPlayer źle wykrywa MPEGi i odtwarza je niepoprawnie lub w ogóle. Nie może to być naprawione bez dołączeni wsparcia dla konkretnych popsutych plików MPEG, tak więc pozostawiamy takie sprawy na najbliższą przyszłość. Flaga `-demuxer` określona w stronie manuala może pomóc w tych przypadkach.

#### 2.1.2.2 Pliki WAV

#### 2.1.2.3 Pliki OGG/OGM (Vorbis)

Wymaga poprawnie zainstalowanych `libogg` i `libvorbis`.

#### 2.1.2.4 Pliki WMA/ASF

#### 2.1.2.5 Pliki MP4

#### 2.1.2.6 Audio CD

MPlayer może używać cdparanoia (bibliotek) by odtwarzać CDDA (Audio CD). Zakres tego rozdziału nie pozwala na wyliczenie funkcji cdparanoia'i.

Zobacz opcję `-cdda` w manualu, która może być użyta do podawania opcji do cdparanoia.

#### 2.1.2.7 XMMS

MPlayer może używać pluginów wejścia XMMS by odtwarzać wiele formatów plików. Są tam pluginy dla melodii gry SNES, melidii SID (z Commodore 64), wielu formatów Amigii, .xm, .it, VQF, musepack, Bonk, shorten i wielu innych. Możesz je znaleźć na stronie z pluginami do XMMSa.

Do tej funkcji musisz mieć XMMSa i skompilować MPlayera z `./configure --enable-xmms`. Jeżeli to nie działa, możliwe, że musisz podać ścieżki do katalogów z pluginami i bibliotekami XMMS poprzez opcje `--with-xmmsplugindir` i `--withxmmslibdir`.