„Authoring DVD i Blu-ray“
autor: Wojciech Janio
Projekt końcowy w ramach przedmiotu:
Projekt polega na przygotowaniu płyt DVD oraz Blu-ray zawierającymi elementy o
których
mowa
była
na
zajęciach.
Można
użyć
dowolnych
materiałów
audiowizualnych, dowolna jest również tematyka.
Projekt zaliczeniowy powinien zawierać:

menu główne oraz w przypadku Blu-ray menu typu pop-up

podmenu wyboru rozdziałów, ścieżki dźwiękowej i napisów

ukrytą opcję w meniu, tzw. „easter egg“

materiał audiowizualny o dowolnej długości z co najmniej dwoma ścieżkami
dźwiękowymi oraz ścieżką napisów
Projekt powinien być spójny zarówno tematycznie jaki i estetycznie.
Zasady zaliczenia przedmiotu "Authoring DVD i Blu-ray"
Podstawą zaliczenia jest przedstawienie projektu końcowego. Dodatkowo brane
będą pod uwagę obecności.
O skrypcie
Płyty DVD oraz Blu-ray są tworami audiowizualnymi przez co nauka ich tworzenia
musi być praktyczna. Między innymi dlatego na rynku wydawniczym istnieją
pojedyncze tytuły opisujące programy do authoringu DVD i właściwie nie ma żadnej
liczącej się i obszernej pozycji traktującej o authoringu Blu-ray. Organizowane są za
to liczne kursy tworzenia płyt DVD/Blu-ray oraz obsługi odpowiednich programów a
także sprzedawane są tzw. video tutoriale, będące niejako pochodną tych kursów.
W związku z powyższym w niniejszym skrypcie nie będę zagłębiał się w obsługę
programów które będą omawiane na zajęciach, ale skupię się na teorii sygnałów
wideo oraz audio, ich digitalizacji oraz kompresji, na które to tematy nie będziemy
mieli czasu na zajęciach a które są istotne dla pełnego zrozumienia zagadnienia
authoringu DVD oraz Blu-ray.
Teoria sygnałów audio-wideo
Dźwięk analogowy
Dźwięk, według najogólniejszej definicji, to wszystko to co człowiek odczuwa swoim zmysłem
słuchu, czyli inaczej wszystko to co słyszymy. Od strony fizycznej, dźwięk to fala akustyczna
rozchodząca się w danym ośrodku sprężystym (ciele stałym, płynie, gazie). Fala akustyczna
powstaje wtedy, kiedy jakiś ośrodek sprężysty (w codziennym życiu jest to zazwyczaj
powietrze) zostaje zaburzony. Zaburzeniu w przypadku dźwięku podlegają dwie właściwości
danego ośrodka: gęstość i ciśnienie. Zaburzenie to jest wtedy przenoszone przez drgające
cząstki ośrodka bez zmiany ich średniego położenia. Drgania mają kierunek oscylacji zgodny
z kierunkiem ruchu fali (fale podłużne) a fala niesie ze sobą energię mechaniczną.
Od strony mechanicznej dźwięk to naprzemiennie rozmieszczone obszary większej i
mniejszej gęstości cząsteczek danego ośrodka, co graficznie można przedstawić w
następujący sposób (czarne kropki to cząsteczki powietrza).
Fala dźwiękowa ma cztery właściwości, którymi można ją opisać. Są nimi częstotliwość,
długość fali, jej prędkość oraz amplituda. Długość fali jest reprezentowana na rysunku nr 8
przez odległość pomiędzy zagęszczonymi grupami cząsteczek, a częstotliwość przez ilość
takich zagęszczeń w czasie jednej sekundy. Częstotliwość (f), długość fali (λ) i prędkość
rozchodzenia (v) są od siebie zależne i ta zależność wyrażona jest wzorem f 
v

. W
interesującym nas przypadku, czyli w przypadku dźwięku rozchodzącego się w powietrzu (bo
dźwięk z takiego ośrodka nagrywany jest dla potrzeb filmu i telewizji) prędkość jest stała, a
więc długość fali jest liniowo zależna od częstotliwości i tak np. ton o częstotliwości 343 Hz
rozchodzący się w powietrzu ma falę o długości 1 metra. Ze względu na zakres
częstotliwości można rozróżnić trzy rodzaje fal dźwiękowych:
-
infradźwięki - poniżej 20Hz,
-
dźwięki słyszalne 20Hz - 20kHz – zakres słyszany przez człowieka,
-
ultradźwięki - powyżej 20kHz.
O ile częstotliwość odpowiada za wysokość słyszanego przez człowieka dźwięku, tak
amplituda odpowiada za jego natężenie, a więc głośność, i właśnie ona „niesie” ze sobą
energię.
Amplituda od strony fizycznej to wielkość zmiany ciśnienia akustycznego w obrębie fali, czyli
inaczej maksymalna wartość ciśnienia w każdym punkcie fali akustycznej. Na rysunku nr 7
amplituda przedstawiana jest jako stopień zagęszczenia cząsteczek - im większe
zagęszczenie tym większa amplituda. Oczywiście każdy ośrodek, w którym rozchodzi się
dźwięk, tłumi go i w rezultacie wraz ze wzrostem odległości od źródła dźwięku jego siła, a
więc amplituda, maleje.
Aby móc dźwięk utrwalić i np. przesyłać na większe odległości należy go przekształcić na
jakąś inną falę, która przesyłana w odpowiednim ośrodku nie wytraca swoich właściwości,
np. na prąd elektryczny. Do tego celu służy mikrofon, wynaleziony w 1877 przez Emila
Berlinera, a udoskonalony i użyty w pierwszym telefonie przez Aleksandra Grahama Bella.
Budowa pierwszego mikrofonu była bardzo prosta. fale akustyczne padające na membranę
wyginają ją, a membrana ściska 1 ziarna węglowe umieszczone w pojemniku pod membraną.
Ziarna są częścią obwodu elektrycznego do którego podłączone jest źródło prądu o stałym
napięciu i mają tym mniejszą oporność im bardziej są ściśnięte, przez co większe wychylenia
amplitudy odwzorowane są prądem o większym napięciu. Przykładowy wykres tak
wygenerowanego prądu może wyglądać następująco (oś odciętych to czas z podziałką
1/1000 sekundy, a oś rzędnych to amplituda, czyli napięcie prądu):
1
W zależności od siły dźwięku (wychylenia amplitudy fali akustycznej). Membrana wychyla mocniej przy
głośnym dźwięku.
Oczywiście z biegiem czasu wymyślano mikrofony działające na innych zasadach, m.in.
mikrofony nie potrzebujące do działania stałego napięcia, ponieważ same generowały
napięcie przetwarzając energię akustyczną w elektryczną 2 , ale zasada że większe napięcie
odwzorowuje 3 większą amplitudę dźwięku pozostała. Dźwięk odwzorowany prądem
elektrycznym można zapisać na różnych nośnikach takich jak taśma magnetyczna lub taśma
optyczna (we wczesnych latach kina, kiedy nie znano jeszcze taśmy magnetycznej, dźwięk
na planie filmowych rejestrowany na taśmie optycznej).
Dźwięk cyfrowy
Mając już dźwięk w postaci prądu elektrycznego o zmiennym napięciu (z dowolnego źródła,
czy to będzie mikrofon czy dźwięk analogowy wcześniej nagrany na jakimś nośniku),
możemy przekształcić go w postać cyfrową czyli ciąg liczb. Pierwszym etapem takiego
przekształcenia jest próbkowanie, czyli odczytywanie z określoną częstotliwością wysokości
napięcia prądu elektrycznego.
Oczywiście napięcie prądu elektrycznego odwzorowującego dźwięk może przyjmować
dowolne wartości z jakiegoś ciągłego zakresu wartości, a systemy cyfrowe są w stanie
przetwarzać tylko sygnały reprezentowane liczbami z zakresu o charakterze nieciągłym (lub
inaczej dyskretnym). Taka reprezentacja wymaga ograniczenia zbioru wartości sygnału.
Wartości te nazywane są poziomami reprezentacji. Dlatego drugim etapem konwersji
analogowo-cyfrowej jest kwantyzacja odczytanej wysokości napięcia, czyli przypisanie
ciągłej wartości napięcia prądu do najbliższych poziomów reprezentacji. Trzeba zauważyć,
że ten proces wiąże się z nieuniknioną i nieodwracalną utratą informacji.
2
Np. mikrofony dynamiczne, które wykorzystują efekt indukcji elektromagnetycznej: magnes poruszany przez
wychylenia membrany wzdłuż zwojnicy indukuje prąd.
3
Lub inaczej jest „analogiczne”, stąd nazwa urządzenia analogowe.
W wyniku tych przemian otrzymujemy sygnał cyfrowy, który można graficznie przedstawić w
następujący sposób:
W zależności od tego, jak często będziemy próbkować sygnał i jak szeroki zbiór wartości
poziomów reprezentacji przyjmiemy, tym lepszą jakość dźwięku uzyskamy. Wracając do
przykładowej fali z rysunku 8 - jeżeli przyjmiemy częstotliwość próbkowania na poziomie
1000 próbek na sekundę (1000 Hz = 1 kHz) i 10 poziomów reprezentacji (precyzja) to fala ta
będzie miała następującą reprezentację cyfrową:
Jeżeli tak ucyfrowiony dźwięk chcielibyśmy odtworzyć na głośniku, to konwerter cyfrowo
analogowy zrekonstruowałby ten dźwięk w następujący sposób:
Jak widać nie jest to wierna rekonstrukcja. Powstałe przekłamanie nazywa się błędem
próbkowania. Żeby ten błąd ograniczyć trzeba zwiększyć zarówno częstotliwość jak i
precyzję próbkowania. Dla przykładu zwiększając dwukrotnie (20 stopni i 2 kHz), sygnał
cyfrowy przyjąłby taką postać:
\
A zwiększając 4 krotnie (40 stopni i 4 kHz) wyglądałby w następująco:
Jak widać w takim przypadku wierność odwzorowania jest już większa, chociaż jak pokazuje
praktyka taka wierność nie jest wystarczająca. Dźwięk na płytach CD jest zapisany z
próbkowaniem o częstotliwości 44,1 kHz i precyzji 16-bitowej (czyli 65536 stopni). W
przypadku płyt DVD oraz w profesjonalnych rejestratorach cyfrowych używa się dźwięku
16/48 (próbkowanie o częstotliwości 48 kHz i 16-bitowej precyzji) zaś ostatnio coraz
popularniejsze są formaty 24/48, 24/96 czy nawet 24/192.
Obraz analogowy
Przetwarzanie obrazu na prąd elektryczny ze względu na dwuwymiarowy charakter obrazu i
jednowymiarowy charakter prądu, który jest falą, wymaga pewnych kompromisów i
uproszczenia analizy obrazu. Dlatego chcąc przekształcić dwuwymiarowy obraz na sygnał
elektryczny należy „podzielić” go na linie, które będą po kolei analizowane i przekształcane w
sygnał elektryczny.
W historii telewizji używano różnych podziałów, ale na dzień dzisiejszy używane są dwa:
analiza 625 i 525 linowa. Dla uproszczenia zajmiemy się na razie tylko obowiązującym w
Europie sygnałem 625 linii o częstotliwości odświeżania 50Hz – co oznacza, że obraz jest
analizowany (rejestrowany) 50 razy na sekundę. Sygnał ten w wersji kolorowej potocznie
nazywa się PAL.
W początkach telewizji, kiedy była ona czarno-biała, analiza obrazu była względnie prosta
ponieważ natężenie prądu było proporcjonalne do jasności świecenia danego punktu w
obrazie. Prąd o natężeniu 2 Volt oznacza punkt najjaśniej zapalony (czyli pełna biel), a 0,5
Volta zgaszony (czyli pełna czerń). Działo elektronowe rysując obraz na kineskopie (na który
w starych czarno-białych telewizorach nałożony był luminofor 4 ) wzbudza go do świecenia w
zależności od natężenia strumienia elektronów.
Dla ułatwienia wyobraźmy sobie hipotetyczny obraz wyglądający tak:
Kamera telewizyjna zanalizuje i przetworzy na prąd elektryczny wybraną jedną linię tego
obrazu (zaznaczoną strzałką) w następujący sposób:
W ten sposób przygotowany sygnał elektryczny (oczywiście po analizie wszystkich linii
obrazu) może trafić do telewizora, który będzie mógł odtworzyć zarejestrowany obraz.
Rysowanie obrazu zaczyna się od górnej części kineskopu. Po narysowaniu linii, strumień
elektronów wraca do początku i obniża się do następnej linii i tak do samego dołu, po czym
strumień wraca na górę. Wszystko to jest powtarzane 50 razy na sekundę, przy czym linie
4
Substancja, która pod wpływem określonego wzbudzenia wykazuje luminescencję, czyli świeci.
nieparzyste są rysowane naprzemiennie z parzystymi. Z tego wynika, że jedna linia w
systemie rysowana jest 64 (PAL) mikrosekundy 5
Jednak oprócz odwzorowania obrazu sygnał niósł również ze sobą impulsy synchronizacyjne
o napięciu 0 Volt, wskazujące na koniec linii i powrót strumienia na górę. Sygnał
synchronizacji poziomej ma długość 5 mikrosekund, a pionowej 500 mikrosekund.
Schematycznie jedna linia sygnału telewizyjnego wyglądać może więc wyglądać tak:
Kiedy w latach czterdziestych zaczęto eksperymentować z kolorem, dużym problemem stała
się zgodność czarno-białych odtwarzaczy z kolorową transmisją.
Żeby uzyskać kolor w
telewizji technicy skorzystali z wiedzy i doświadczeń wczesnych fotografów, którzy
fotografowali obiekty przez trzy kolorowe filtry: czerwony, zielony i niebieski 6 . Dobór tych
kolorów nie był oczywiście przypadkowy i wynikał z doświadczenia Newtona, który
rozszczepił światło i zauważył, ze światło białe to mieszanka światła w tych trzech kolorach,
a także to, że odpowiednio mieszając te kolory ze sobą można uzyskać dowolną barwę.
Obraz wpadający do kamery był rozszczepiany i analizowany przez trzy kolorowe filtry, przez
co sygnał telewizyjny składał się de facto z trzech sygnałów monochromatycznych.
5
6
Co wynika z równania 1s  (625  25)  64s
James Clerk Maxwell był pierwszy naukowcem który przeprowadził takie doświadczenie.
Rekonstrukcja takiego obrazu w telewizorze była oczywiście bardziej skomplikowana niż w
przypadku obrazu monochromatycznego, ponieważ potrzebne były trzy działa elektronowe
generujące strumienie elektronów, które wzbudzały substancje świecące w kolorach
czerwonym, zielonym i niebieskim. O ile telewizory czarno-białe miały kineskop w całości
pokryte substancją świecącą to w przypadku telewizorów kolorowych kineskop pokrywano
substancjami świecącymi w trzech kolorach ułożonych w kształt trójkąta (ang. RGB Triad).
Kineskop typu Shadow Mask w
przybliżeniu
Oprócz odpowiedniego rozmieszczenia substancji świecących, w telewizorach takich
montowano również metalową maskownicę (ang. shadow mask) która zapewniała, że
elektrony wysyłane przez działa trafiały na odpowiednie punkty.
Jednak sygnał telewizyjny składający się z trzech sygnałów odpowiadających za
poszczególne składowe RGB nie był zgodny z sygnałem monochromatycznym i wymagał nie
tylko wymiany odbiorników telewizyjnych, ale także całej aparatury nadawczej i
przedefiniowania podziału częstotliwości na kanały, ponieważ zajmował trzy razy większe
pasmo. Rozwiązanie tego problemu zostało opracowane przez francuza Georgesa Valensi,
który w 1938 roku wymyślił i opatentował sposób przesyłania kolorowych obrazów w taki
sposób, żeby mogły być również odbierane na niezmodyfikowanych odbiornikach czarnobiałych. Sposób Valensiego polegał na zamianie przestrzeni barwnej RGB na przestrzeń
YIQ, gdzie Y to luminancja (informacja o jasności) a I oraz Q to składowe chrominancji
(informacji o kolorze). Przestrzeń YIQ jest wyliczana z RGB używając następujących
wzorów:
Y = 0.299R + 0.587G + 0.114B
I = 0.596R - 0.275G - 0.321B
Q = 0.212R - 0.523G + 0.311B
Gdyby każdą w ww. składowych zmodulować tak jak sygnał monochromatyczny, to odbiornik
czarno-biały podłączony do sygnału Y pokazałby obraz czarno-biały. Dzieje się tak
oczywiście dlatego, że Y niesie ze sobą tylko dane o jasności. Jednak nadawanie telewizji
kolorowej w ten sposób (zwany sygnałem komponentowym) wiązałoby się trzykrotnym
powiększeniem pasma potrzebnego na nadawanie a co za tym idzie zmniejszeniem ilości
kanałów, a na takie rozwiązanie nie można było pozwolić. Dlatego ze składowych YIQ
należało utworzyć taki pojedynczy sygnał, który niósł by ze sobą informacje o kolorze, ale
byłby interpretowany przez odbiorniki czarno-białe jak sygnał monochromatyczny. Uzyskano
to modulując składową Y tak jak sygnał czarno-biały, czyli 0,5 Volta oznaczało minimum
składowej Y a 2 Volta maksimum. Na ten sygnał nakładany jest sygnał I+Q (jest to jeden
sygnał który jest złożony modulacją QAM z dwóch sygnałów I oraz Q) o częstotliwości 4.43
(PAL) lub 3.58 (NTSC) MHz. Sygnał ten nazywa się sygnałem kompozytowym. Kolorowe
telewizory mają układy, które potrafią odizolować sygnał I+Q z całego sygnału YIQ, a potem
dekodują I+Q na dwa oddzielne: I oraz Q. Mając wszystkie składowe, odbiornik może
zrekonstruować sygnał RGB i wyświetlić go na kineskopie. Czarno-białe telewizory ignorują
nałożony sygnał I+Q a ponieważ sygnał Y odwzorowuje luminancję, to minima i maksyma są
interpretowane przez telewizor czarno-biały jako odpowiednio czerń i biel, więc wyświetla on
kolorowy sygnał jako czarno-biały. Przestrzeń YIQ nie jest już używana, ponieważ zastąpiła
ją podobna przestrzeń YUV, wyliczana ze wzoru:
Y = 0.299R + 0.587G + 0.114B
U = − 0.147R − 0.289G + 0.436B = 0.492(B − Y)
V = 0.615R − 0.515G − 0.100B = 0.877(R − Y)
Zaletą obydwu tych przestrzeni kolorów nad RGB jest (oprócz zgodności z sygnałem
monochromatycznym) to, że dzięki oddzieleniu informacji o chrominancji od informacji o
luminancji, można łatwo manipulować sygnałem i umyślnie pozbywać się niektórych
informacji w celu zmniejszenia szerokości zajmowanego pasma. Wynika to z tego, że ludzkie
oko ma dość niską rozdzielczość kolorystyczną. Używając tej własności można znacznie
zmniejszyć ilość informacji niesioną przez sygnały chrominancji. Oczywiście jakość obrazu
znacznie przez to spada, ale w czasie kiedy tworzono standardy NTSC i PAL nie było to
dużym zmartwieniem, ponieważ ówczesne telewizory i tak nie były jakościowo najlepsze.
Obraz cyfrowy
Konwersja obrazu analogowego na cyfrowy przebiega w pewnym sensie w podobny sposób
jak konwersja dźwięku. Obraz jest dzielony przez urządzenie dokonujące konwersji na
wcześniej zdefiniowaną ilość pól, nazywaną rozdzielczością. Następnie barwa każdego pola
zostaje rozdzielona na trzy barwy podstawowe (czerwoną, zieloną i niebieską – RGB) a
wartość pola dla każdej barwy podstawowej jest uśredniana do jednego koloru. Wartości
tych kolorów zostają następnie poddane kwantyzacji i zapisane w postaci cyfrowej. Oznacza
to, że w przypadku konwersji obrazów barwnych do opisania jednego pola (piksela)
potrzebne są trzy liczby. Schematycznie można ten proces przedstawić z sposób
następujący:
Tak wygląda obraz po konwersji analogowo-cyfrowej do rozdzielczości 130 na 97 pikseli,
przy precyzji 8-bitowej na każdy kanał barwny (potocznie nazywane jest to kolorem 24bitowym):
Jak widać jakość tego odwzorowania nie jest dobra, chociaż wystarczająca do
identyfikacji przedmiotów znajdujących się na tym obrazie. Dzisiejsza standardowa telewizja
cyfrowa, pracuje w rozdzielczości 720 na 576 pikseli (PAL) lub 720x480 (NTSC), a kolor jest
próbkowany z precyzją 24-bitową, czyli każdy kolor podstawowy jest próbkowany z precyzją
8-bitową. Zaprezentowana powyżej metoda, jest oczywiście metodą ogólną i konwersja
analogo-cyfrowa w różnych przypadkach przebiega nieco inaczej. W cyfrowej technologii
telewizyjnej w profesjonalnych kamerach używa się soczewki rozszczepiającej wiązkę
światła na trzy barwy składowe RGB, które są analizowane przez trzy matryce o pełnej
rozdzielczości telewizyjnej (technologia ta nosi nazwę handlową „3CCD”):
W przetwarzaniu wideo nie wykorzystuje się z reguły przestrzeni barwnej RGB, tylko
przestrzeń YUV. Przestrzeń ta używana jest z dwóch powodów. Po pierwsze YUV
odwzorowuje bardziej niż przestrzeń RGB ludzką percepcje obrazu, ponieważ w oku w
rozpoznawaniu obrazu biorą udział elementy siatkówki dwóch typów: czopki, które są
receptorami odpowiedzialnymi za widzenie barw, oraz pręciki, czyli receptory które
rozpoznają różnice natężenia światła. Po drugie przestrzeń YUV zapewnia zgodność z
analogowymi metodami zapisu i konwersji obrazu na sygnał elektryczny.
Konwersja na przestrzeń barwną YUV odbywa się za pomocą wzorów przytoczonych w
rozdziale 3.1. Konwersja może odbywać się z różnych źródeł sygnału analogowego, takich
jak nośniki magnetyczne które przechowują sygnał kompozytowy (VHS, Betamax,
Laserdisc), jak nośniki magnetyczne, które przechowują sygnał komponentowy (S-VHS,
Betacam SP) lub kamer (zarówno takich, które dostarczają sygnał kompozytowy jak i sygnał
komponentowy). W przypadku sygnału komponentowego konwersja polega na odpowiednim
spróbkowaniu i skwantowaniu tego sygnału, ponieważ jest on już w postaci komponentów
barwnych przestrzeni barwnej YUV. Sygnał kompozytowy należy najpierw rozłożyć na
komponenty i potem przekształcić na postać cyfrową.
Ostatnim etapem jest proces nazwany chroma subsampling (podpróbkowanie chrominancji),
który jest procesem podobnym do zmniejszania pasma chrominancji w sygnale analogowym
i również korzysta z faktu gorszego widzenia przez człowieka kolorów. Chroma subsampling
polega na użyciu niższej rozdzielczości przy zapisywaniu informacji dotyczących
chrominancji niż w przy luminancji. Zazwyczaj poziom chroma subsamplingu wyraża się
przez stosunek trzech liczb. Liczby te oznaczają odpowiednio liczbę próbek luminancji (Y) i
komponentów chrominancji (U i V). Tradycyjnie wartość jasności podawana jest zawsze jako
4, chociaż oczywiście stosunek 4:4:4 jest równy stosunkowi 1:1:1.
Przyjmuje się, że chroma subsampling o stosunku 4:2:2, który pozwala zaoszczędzić 33%
pasma danych, daje bardzo dobrą jakość i przez to jest stosowany w urządzeniach
broadcastowych o najwyższej jakości. Stosunek 4:4:4 jest jednoznaczny z rejestracją w
RGB, dlatego praktycznie nie jest wykorzystywany, bo w takiej sytuacji lepiej jest nagrać
obraz RGB. W RGB rejestruje się obraz, który ma być poddawany na dalszych etapach
obróbce (color grading lub efekty specjalne)
Urządzenia konsumenckie, takie jak np.
odtwarzacze DVD czy Blu-ray (a także kamery DV) używają chroma subsamplingu o
stosunku 4:2:0.
Kompresja obrazu statycznego
W 1986 roku z inicjatywy organizacji ISO oraz CCITT zespół ekspertów nazywany Joint
Photographic Experts Group (w skrócie JPEG) rozpoczął pracę nad systemem kompresji
statycznych obrazów, przeznaczonym głównie do przetwarzania obrazów naturalnych.
Standard JPEG został opublikowany po 5 latach, w 1991 roku, i używany jest do dzisiaj a
jego popularność nie maleje.
Algorytm kompresji używany przez JPEG jest algorytmem stratnym, tzn. w czasie jego
wykonywania tracona jest bezpowrotnie część pierwotnej informacji.
Algorytm przebiega następująco:

obraz jest konwertowany z kanałów RGB na YUV, ale krok ten nie jest obowiązkowy
(opcjonalnie można go pominąć i kompresować kanały RGB)

jeżeli obraz został przekonwertowany do przestrzeni YUV to dodatkowo można
zastosować chroma subsampling w celu zmniejszenia ilości informacji o kolorze
potrzebnych do przetworzenia.

kanały są dzielone na bloki 8 × 8 pikseli. W przypadku kanałów kolorów, jest to 8 × 8
danych po redukcji rozdzielczości, a więc zwykle 16 × 16 pikseli obrazu
początkowego.

na blokach wykonywana jest dyskretna transformata kosinusowa (DCT). Zamiast
wartości pikseli mamy teraz średnią wartość wewnątrz bloku oraz częstotliwości
zmian
wewnątrz
bloku,
obie
wyrażone
przez
liczby
zmiennoprzecinkowe.
Transformata DCT jest odwracalna, więc na razie nie tracimy żadnych danych.

Przeprowadzana jest kwantyzacja, czyli zastąpienie danych zmiennoprzecinkowych
przez liczby całkowite. To właśnie tutaj występują straty danych. Zależnie od
parametrów kompresora, odrzuca się mniej lub więcej danych. Zasadniczo większa
dokładność jest stosowana do danych dotyczących niskich częstotliwości niż
wysokich.

współczynniki
DCT
dla
poszczególnych
pikseli
w
danym
makrobloku
są
uporządkowywane zygzakowato, aby zera leżały obok siebie.

współczynniki niezerowe są kompresowane bezstratnym algorytmem Run-Length
Encoding (RLE, kodowanie długości serii) a następnie algorytmem Huffmana.
Wielką innowacją algorytmu JPEG była możliwość kontroli stopnia kompresji w jej trakcie, co
umożliwia dobranie jego stopnia do danego obrazka, tak aby uzyskać jak najmniejszy plik,
ale o zadowalającej jakości.
Użyta w algorytmie JPEG transformata powoduje efekty blokowe (potocznie nazywane
artefaktami kompresji) w przypadku mocno skompresowanych obrazków. Uproszczenia
dokonywane przez algorytm JPEG najłatwiej zaprezentować używając przykładowego
obrazu skompresowanego z różnymi stopniami kompresji (współczynnik Q, który można
wybrać zapisując obraz JPEG w różnych programach, np. Adobe Photoshop):
Jakość: Q=100, Rozmiar: 83261 bajtów, Współczynnik kompresji: 2,6:1
Komentarz: Znikome, prawie niezauważalne artefakty
Jakość: Q=50, Rozmiar: 15138 bajtów, Współczynnik kompresji: 15:1
Komentarz: Pojawiają się pierwsze oznaki artefaktów, widoczne na konturach obiektów
Jakość: Q=25, Rozmiar: 9553 bajtów, Współczynnik kompresji: 23:1
Komentarz: Artefakty są coraz silniejsze, wyraźnie widoczne są bloki 8 x 8 i gradienty
charakterystyczne dla DCT, widoczna redukcja rozdzielczości obrazu
Jakość: Q=10, Rozmiar: 4787 bajtów, Współczynnik kompresji: 46:1
Komentarz: Duże straty rozciągłości tonalnej, rozdzielczości, niektóre obiekty stają się
nierozpoznawalne
Jakość: Q=1, Rozmiar: 1523 bajtów, Współczynnik kompresji: 144:1
Komentarz: Bardzo duża strata kolorów, kształtów i rozdzielczości. Niektóre obiekty niemalże
nierozpoznawalne.
Kompresja obrazu ruchomego
Naturalnym rozwinięciem standardu JPEG był Motion JPEG (w skrócie MJPEG). Jest to
sposób kompresji używający formatu JPEG do zapisu każdej klatki obrazu. Tego typu
kompresję, gdzie każda klatka jest niezależna od innych nazywa się kompresji ą
wewnątrzklatkową.
Jakość jest dzięki temu niezależna od ruchu obiektów w kodowanym obrazie w
przeciwieństwie do kompresji MPEG w której jakość często znacznie pogarsza się, gdy
materiał zawiera dużo ruszających się obiektów lub innego rodzaju nagłe zmiany pomiędzy
klatkami. W celu osiągnięcia jakości studyjnej dla obrazu SD (PAL/.NTSC), minimalna
prędkość przepływu danych powinna wynosić około 28 Mbit/s. Rozsądna jakość pozwalająca
na ewentualne użycie
w domowych warunkach to około 12 Mbit/s. Jedynym tanim
nośnikiem cyfrowym w tamtych czasach (początek lat 90-tych) była płyta CD, której
przepływowość bitowa to 1,5 Mbit/s , tak więc nie było mowy o wykorzystaniu kodeka
MJPEG do zastosowań
konsumenckich. Znalazł on zastosowanie głównie w studyjnych
systemach edycyjnych i emisyjnych działających w oparciu o pamięci masowe. Do
zastosowań domowych a także w celu możliwości przesyłania obrazu ruchomego na duże
odległości używając sieci telekomunikacyjnych (kablowych, radiowych czy też satelitarnych)
opracowany został system kompresji MPEG, nazwany tak od nazwy grupy roboczej Moving
Picture Experts Group organizacji ISO/IEC, audio i wideo.
Grupa MPEG powstała w roku 1988 i do 1991 roku opracowała, zatwierdzoną przez
organizację ISO, specyfikację standardu zapisu cyfrowego strumienia audio/wideo MPEG-1.
Obraz w tym standardzie zapisywany był w rozdzielczości 352x288 (dla PAL/SECAM) i
352x240 (dla NTSC) z prędkością przesyłu danych na poziomie do 1.5 Mbit/s. Metoda
kompresja dźwięku pod nazwą MPEG Audio też została opracowana jako część standardu.
Powstały trzy różne algorytmy kompresji dźwięku, każdy o różnym stopniu skomplikowania
kompresji i dekompresji, nazwano je odpowiednio MPEG-1 Audio Layer I, MPEG-1 Audio
Layer II oraz MPEG-1 Audio Layer III. Ten ostatni algorytm jest o wiele lepiej znany na całym
świecie pod swoją zupełnie nieoficjalną nazwą MP3.
Kompresja MPEG-1, a także jej następcy czyli MPEG-2, MPEG-4 ASP (znany lepiej jako
DivX),
MPEG-4
AVC
(nazywany
też
H.264)
w
przeciwieństwie
do
kompresji
wewnątrzklatkowej MJPEG używa kompresji międzyklatkowej, co pozwala na uzyskanie
wyższej jakości, ale utrudnia kompresję, dekompresję i ewentualną obróbkę sygnału. MPEG1 w takiej specyfikacji szybko przyjął się w zastosowaniach domowych w formatach VideoCD oraz CD-i lansowanym przez Philipsa od 1991 roku.
Międzyklatkowość kompresji MPEG polega na wykorzystaniu specjalnie zakodowanych
klatek, które wykorzystują informację z klatek je poprzedzających i po nich następujących.
Cała sekwencja podzielona jest na grupy obrazów, każda grupa składa się z trzech typów
obrazów:

typu I (Intra Frame) kompresowanych algorytmem bardzo podobnym do JPEG, te
klatki są samodzielne i nie zależą od innych

typu P (Predicted Frame) tworzonych przy użyciu jednokierunkowej kompensacji
ruchu

typu B (Bidirectional Predicted Frame) tworzonych przy użyciu dwukierunkowej
kompensacji ruchu
Liczba obrazów poszczególnych typów jak i długość całej grupy obrazów nie jest określona
w standardzie i może być różna. Struktura grupy obrazów nie musi być stała w czasie i może
się zmieniać w zależności od aktualnej treści materiału wideo.
Przy kodowaniu obrazów typu P korzysta się z podobieństwa obrazów w sekwencji. Dlatego
też koduje się nie poszczególne obrazy ale różnice pomiędzy kolejnymi obrazami. Dwa
kolejne obrazy są odejmowane od siebie i ich różnicę koduje się tak jak omówione wcześniej
obrazy typu I (algorytmem podobnym do JPEG). Aby zwiększyć stopień kompresji na
podstawie porównania kolejnych obrazów wyznaczana jest informacja o tym jakie fragmenty
obrazu, jak szybko i w jakim kierunku się przemieszczają - oba obrazy dzielone są na
makrobloki (analogiczne do bloków 8 x 8 stosowanych w JPEG), dla każdego makrobloku w
bieżącym obrazie znajdowany jest najbardziej podobny do niego makroblok w obrazie
odniesienia. Względne przesunięcia dopasowanych bloków - wektory ruchu - opisują ruch
obiektów w przekazywanej scenie. Na podstawie wektorów ruchu modyfikowany jest obraz
odniesienia - tworzona jest prognoza (predykcja) kolejnego obrazu z makrobloków obrazu
odniesienia przesuniętych zgodnie z wyznaczonymi wektorami ruchu. Informacja o obrazie
typu P składa się więc z dwóch części: wektorów ruchu oraz informacji o różnicy pomiędzy
kodowanym obrazem i prognoza tego obrazu wyznaczoną na podstawie obrazu odniesienia i
wektorów ruchu.
Obrazy typu B kodowane są podobnie jak obrazy typu P, z tym że jednocześnie
wykorzystuje się dwa obrazy odniesienia - wcześniejszy i późniejszy. Dla obu obrazów
odniesienia wyznaczane są dwa zestawy wektorów ruchu. Prognoza kodowanego obrazu
tworzona jest przez uśrednienie informacji pochodzących od obu obrazów odniesienia,
dlatego też ten typ obrazu nazywany jest obrazem interpolowanym.
Tak jak w przypadku kompresji JPEG tak i tutaj najłatwiej pokazać idee algorytmu kompresji
na przykładzie. Z racji ograniczenia formy skryptu do wersji „papierowej” przykład będzie
ograniczony do wycinka z pojedynczej klatki z przykładowego klipu
(„Sanatorium pod
klepsydrą”, reż. Wojciech Jerzy Has, wersja HD zrekonstruowana w ramach projektu
KinoRP,)
Bitrate: 20 Mbit/s, Rozmiar: 204069 kB, Współczynnik kompresji: 25:1
Bitrate: 12 Mbit/s, Rozmiar: 113427 kB, Współczynnik kompresji: 46:1
Bitrate: 6 Mbit/s, Rozmiar: 59179 kB, Współczynnik kompresji: 87:1
Bitrate: 2 Mbit/s, Rozmiar: 19960 kB, Współczynnik kompresji: 258:1
Bitrate: 1 Mbit/s, Rozmiar: 10033 kB, Współczynnik kompresji: 515:1
Bitrate: 0.5 Mbit/s, Rozmiar: 6034 kB, Współczynnik kompresji: 856:1
Na sam koniec ciekawostka, czyli graficzna próba przedstawienia tego jak klatkę „widzi”
kompresor (czarne kreski to wektory ruchu danych makrobloków, a kolorowe elementy to
różnice pomiędzy klatkami, których nie da zapisać się wektorem ruchu)
Dla bardziej zainteresowanych tematem umieściłem pełne wersje klipów na swoim serwerze:
http://janio.pl/msm/
Nośnik
Rozdzielczość
Kompresja
Video
DVD-Video
PAL: 720x576
NTSC:
720x480
MPEG-2
Blu-ray
HD:
1920x1080
1440x1080
1280x720
SD:
PAL: 720x576
NTSC:
720x480
MPEG-2
VC-1
MPEG-4
AVC
(h.264)
Max
Bitrate
Video
9.8
Mbps
40 Mbps
Kompresja
Audio (max ilość
kanałów)
MPEG-1 Layer II (2.0)
Dolby Digital (6.1*)
DTS (6.1**)
LPCM (2.0)
Parametry dźwięku
Bitrate Audio
48
48
48
48
do 384 kbps
do 448 kbps
768/1536 kbps
1536 kbps
* 6.1 tylko matrycowe
** 6.1 matrycowe lub
dyskretne
Dolby Digital (6.1*)
Dolby Digital+ (7.1)
Dolby TrueHD (7.1)
DTS** (6.1)
DTS-HD (HR/MA)
LPCM (7.1)
* w specjalnej odmianie
też 96 kHz/24-bit i 48
kHz/24-bit
48 kHz/16-bit
48 kHz/16-bit
max 192 kHz/24-bit*
48 kHz/24-bit
max 192 kHz/24-bit*
max 192 kHz/24-bit*
* 6.1 tylko matrycowe
** 6.1 matrycowe lub
dyskretne
*przy 192 kHz
ograniczenie do 6
kanałów
kHz/16-bit
kHz/16-bit
kHz/16-bit*
kHz/16-bit
do
do
do
do
do
do
640 kbps
4.736 Mbps
18.64 Mbps
1536 kbps
24.5 Mbps
27.6 Mbps
Download

TYTUŁ TYTUŁ