Kodek(s) dla krnąbrnego

Dwukrotne kliknięcie pliku wideo powinno być uwieńczone odtworzeniem zawartego w nim filmu. Jednak cóż począć, gdy krnąbrny odtwarzacz odmawia posłuszeństwa? Poniższe wskazówki pomogą Ci odtworzyć niemalże każdy klip wideo.

Dwukrotne kliknięcie pliku wideo powinno być uwieńczone odtworzeniem zawartego w nim filmu. Jednak cóż począć, gdy krnąbrny odtwarzacz odmawia posłuszeństwa? Poniższe wskazówki pomogą Ci odtworzyć niemalże każdy klip wideo.

Progam AVI FourCC Code Changer pozwala podejrzeć, jaki kodek posłużył do sporządzenia pliku wideo.

Progam AVI FourCC Code Changer pozwala podejrzeć, jaki kodek posłużył do sporządzenia pliku wideo.

Standaryzacja cyfrowych technik wideo jest jeszcze w powijakach. Powstało wiele niekompatybilnych wobec siebie formatów, takich jak AVI, MPEG, Quicktime MOV czy Realplayer (rozszerzenia RM, RMA). Na dodatek większość z nich ma swoje podformaty, które różnią się od siebie metodami kompresji danych. Dotyczy to przede wszystkim popularnych formatów MPEG i AVI. System Windows oferuje Windows Media Player - aplikację do odtwarzania klipów. Ta jednak uzurpuje sobie prawo do wszystkich formatów i stosunkowo często kapituluje w obliczu licznych podformatów. Aby Media Player mógł odtworzyć wideo określonego formatu, musi dysponować odpowiednim modułem kodująco-dekodującym, zwanym w skrócie kodekiem.

W niniejszym artykule staramy się odpowiedzieć na pytanie, dlaczego oprogramowanie poddaje się przy próbie odtworzenia niektórych klipów. Zamieszczamy rady, które pomogą Ci zmusić system do projekcji żądanych filmów. Główną uwagę poświęcamy aplikacji Windows Media Player, ponieważ jest bezpłatnym składnikiem systemu Windows. Niemniej jednak nasze wskazówki dotyczą również innych programów, np. odtwarzacza Winamp, w których pojawiają się podobne problemy.

Do czego służą kodeki wideo?

Im większy format klatki i im więcej szczegółów mieści się w kadrze, tym więcej miejsca zajmuje na dysku plik z sekwencją wideo. Ponadto płynne odtworzenie takiego klipu wymaga znacznie większej mocy obliczeniowej komputera. Na dodatek jest jeszcze ścieżka dźwiękowa, którą trzeba odtwarzać synchronicznie z poszczególnymi klatkami filmu.

Aby zredukować ogromne zapotrzebowania pamięciowe i wysokie wymagania odnośnie wydajności obliczeniowej, zaprojektowano algorytmy pozwalające kompresować dane wideo przy możliwie niewielkiej utracie jakości. Podczas projekcji odtwarzacz musi dekompresować spakowane pliki. Oba wspomniane zadania przejmuje moduł zwany kodekiem. Jego nazwa składa się z początkowych fragmentów słów: kodowanie i dekodowanie.

Do płynnego odtwarzania sekwencji wideo w komputerach o skromnych zasobach wydajnościowych (procesor o częstotliwości taktowania mniejszej niż 400 MHz) potrzebne jest zazwyczaj doposażenie. Dysponując kartą dekodera MPEG-2 ze specjalnym układem dekodującym, nawet leciwy pecet jest w stanie bezbłędnie odtwarzać filmy w standardzie MPEG.

Oprócz tego istnieją software'owe moduły dekodujące. Należy do nich m.in. stosunkowo stary kodek, Cinepack, wchodzący w skład większości edycji Windows. Wprawdzie oferuje płynną animację filmu w mało wydajnym komputerze, jednak kosztem jakości obrazu i rozmiarów okna projekcji.

Wydajność, która jest wymagana do wyczarowania na ekranie obrazu jakości porównywalnej do VHS, można przedstawić na podstawie prostego przykładu. Jako standardową rozdzielczość obrazu należy obrać 640 x 480 pikseli. Przy założeniu, że jeden piksel może być odwzorowany za pomocą jednego bajta, jedna klatka zajmowałaby 307200 bajtów. Pojemność tę należy jednak pomnożyć przez trzy, ponieważ w jednym bajcie mieszczą się informacje zaledwie jednego z trzech kolorów podstawowych (czerwonego, zielonego lub niebieskiego). Wynika z tego, że pojedyncza klatka zajmuje 921600 bajtów, czyli niespełna 1 megabajt. Płynna animacja wymaga wyświetlania co najmniej 30 klatek na sekundę. Zatem na każdą sekundę nieskompresowanej sekwencji wideo przypada ponad 26 MB danych - nie wliczając danych audio. Wydajność transmisyjna obecnych twardych dysków leży w granicach 20 MB/s, czyli znacznie niżej niż 26,5 MB/s. To stanowczo za mało do płynnego odtwarzania nieskompresowanego materiału wideo.

Typy formatów wideo

Chaos pod kontrolą: Intel utworzył nieliczne formaty wideo. Każdy z nich wymaga odzielnego kodeka

Chaos pod kontrolą: Intel utworzył nieliczne formaty wideo. Każdy z nich wymaga odzielnego kodeka

Organizacja MPEG (Moving Picture Experts Group, www.mpeg.org) podjęła się zaprojektować taką metodę kompresji, aby filmy jakości VHS mieściły się na płycie CD o pojemności 650 MB, a przyzwoita jakość obrazu była zapewniona nawet podczas odtwarzania w trybie pełnoekranowym i odczytywania w napędzie o prędkości 1x. Cel okazał się bardzo ambitny. Przecież powszechnie wiadomo, że napędy CD-ROM mają znacznie gorsze parametry transmisji od twardych dysków. Prace zaowocowały powstaniem standardu MPEG-1. Sekwencje wideo podlegające temu standardowi można odtwarzać z powodzeniem w niemalże każdym pececie. Odpowiedni kodek wchodzi w skład środowisk Windows, począwszy od Windows 98. Format zaś zyskał popularność pod nazwą Video-CD (VCD). Specyfikacja standardu przewiduje 25 klatek na sekundę i rozdzielczość 352 x 288 pikseli.

Następcą MPEG-1 stał się standard MPEG-2, określany również mianem Super-Video-CD (SVCD). Największe zastosowanie znalazł w filmach DVD. Do odtwarzania klipów zapisanych w tym formacie jest wymagane specjalne oprogramowanie, np. program Power DVD XP 4.0. W porównaniu do poprzednika, MPEG-2 znacznie lepiej radzi sobie z przeplotowym generowaniem obrazu (tj. wiersze nieparzyste, dopiero potem parzyste). Specyfikacja określa prędkość na poziomie 25 klatek na sekundę. Twórcy standardu MPEG-2 przewidzieli 4 tryby rozdzielczości: 352 x 288 pikseli, 720 x 576 pikseli, 1440 x 1440 pikseli i 1920 x 1152 pikseli.

Kolejny potomek, MPEG-3, nie zyskał rozgłosu, ponieważ oferował zbyt mało ulepszeń w porównaniu z poprzednikiem. Zdecydowano się zaimplementować fragmenty standardu dotyczące HDTV (High Definition TV) w starszym MPEG-2. Najnowszy standard, MPEG-4, jest adresowany przede wszystkim do internautów. Z tego względu twórcy formatu postawili na jeszcze większy stopień kompresji. Ponadto zapewnili mechanizmy do osadzania treści interaktywnych i wizualizacji trójwymiarowych obiektów AI (Artificial Intelligence). Obecnie zespół pracuje nad dwoma nowymi standardami, które mają zapewnić bardzo dużą kompresję przy podwyższonej jakości obrazu.

Format ASF (Advanced Streaming Format) Microsoftu został zaprojektowany na podstawie standardu MPEG-4. Wprawdzie kodek obsługujący ASF wchodzi w skład odtwarzacza Windows Media Player 8, jednak program ten jest dołączany tylko do Windows XP. Użytkownicy starszych wersji Windows mogą doinstalować brakujący składnik, pobierając go bezpłatnie pod adresem http://download.microsoft.com/download/winmediatec/Install/8.0/Win98ME/EN-US/wmpcdcs8.exe (rozmiar pliku: 716 KB). Kodek formatu ASF oferuje wysoką jakość obrazu przy stosunkowo niewielkich wymaganiach pamięciowych, co jest konieczne w zastosowaniach internetowych.

Dość popularny format AVI (Audio Video Interleaved), zaprojektowany początkowo przez Microsoft, był jednym z pierwszych standardów kodowania wideo. W pierwszych fazach format nie oferował możliwości kompresowania danych. Klipy AVI mogły zawierać zarówno filmy wideo, jak też animowane sekwencje i kreskówki. Największe emocje wzbudzała wówczas możliwość łączenia sekwencji wideo ze ścieżką dźwiękową.

Z biegiem czasu AVI przeistoczył się w swoistego kameleona. Za uniwersalnym rozszerzeniem AVI kryje się wiele różnych formatów kodowania wideo. Odtworzenie takiego pliku wymaga tego samego kodeka, który posłużył do zakodowania sekwencji wideo.

Aby dobrać odpowiedni kodek do odtworzenia konkretnego pliku wideo, Windows Media Player musi uzyskać informację, który z kodeków jest odpowiedzialny za określony typ formatu. Nawiązując współpracę z wieloma producentami kodeków, Microsoft utworzył jednolity mechanizm identyfikowania formatów. Służy temu specjalny kod o nazwie FourCC, który jest zapisywany wewnątrz tekstu źródłowego podczas kodowania sygnału wideo.


Zobacz również