Przegląd Standardu ISO-MPEG
MPEG-1: "Kodowanie Ruchomych Obrazów i Dźwięku
Towarzyszącego przy szybkości przesyłania ponad 1,5Mbit/s"
MPEG-2: "Powszechne Kodowanie Ruchomych Obrazów I Towarzyszącej Informacji
Dźwiękowej
MPEG-3: oryginalnie planowany dla HDTV ,później został połączony z MPEG2
MPEG-4: "Kodowanie Obiektów Audio - Wizualnych"
MPEG-1
Prace nad MPEG1 zostały ukończone. Pierwsze trzy części zostały opracowane przed
rokiem 1992. Standard MPEG1 składa się z pięciu części:
IS-11172-1 ("System") opisuje synchronizację i przełączanie sygnałów video
i audio.
IS-11172-2 ("Video") opisuje kompresję sygnałów video (używaną głównie w
Video-CD )
IS-11172-3 ("Audio") opisuje rodzinę kodowania dźwięku oraz jej trzech
członków (nazywanych "Layer-1", "Layer-2" i "Layer-3").
IS-11172-4 ("Compliance Testing") opisuje czynności potrzebne do określenia
charakterystyk kodowania i dekodowania oraz dla testowania kompatybilności z innymi
częściami standardu.
DTR-11172-5 ("Symulacja Programowa") jest to techniczny raport na temat
programowego wykonania pierwszych trzech części.
MPEG-2
MPEG2 obecnie składa się z dziewięciu części. Pierwsze trzy zostały opracowane przed
rokiem 1994 wraz z kilkoma późniejszymi poprawkami.
IS-13818-1 ("System") opisuje synchronizację i przełączanie sygnałów
dźwiękowych i wizyjnych, jest również opisany przez ITU-T jako H.222.
IS-13818-2 ("Video") opisuje sposób kodowania sygnału wideo, udostępnia
odświeżanie z przeplotem, opisany również przez ITU-T as H.262.
IS-13818-3 ("Audio") opisuje zgodne z MPEG1 rozszerzenie dla kodowania wielu
kanałów ("Dźwięk surround", "dźwięk wielojęzyczny) oraz rozszerzenie
dla mniejszych częstotliwości próbkowania potrzebne do współpracy z aplikacjami o
ograniczonym paśmie.
IS-13818-4 ("Testy przystosowawcze") opisuje czynności służące do
określenia charakterystyki kodowania i dekodowania oraz do testowania zgodności z innymi
częściami standardu.
DTR-13818-5 ("Symulacja programowa") jest to techniczny opis programowego
wykonania pierwszych trzech części standardu MPEG2.
IS-13818-6 ("Rozszerzenia Systemu - Komendy i kontrola cyfrowego przechowywania
mediów" (System Extensions - Digital Storage Media Command and Control
(DSM-CC))" - opisuje protokół dla aplikacji klijent-server.
CD-13818-7 ("Dźwięk, niezgodny z poprzednim standardem ) opisuje poprawiony schemat
kodowania dźwięku mono i stereo tak dobrze jak dla dźwięku wielokanałowego.
13818-8 ("Obraz, rozszerzenie do 10-cio bitowych próbek na wejściu") został
zaniechany z powody braku zainteresowania.
IS-13818-9 ("Specyfikacja interfejsu do przetwarzania aplikacji wysokiej jakości w
czasie rzeczywistym") definiuje zależności czasowe dla transmisji MPEG2 w czasie
rzeczywistym.
WD-13818-10 ("Dostosowanie rozszerzeń ) opisuje dodatek do IS 13818-4 dla DSM-CC
Historia
Najbardziej zaawansowany, złożony i jak
dotąd najlepszy standard - "Layer3" został opracowany w niemieckim instytucie
Fraunhofer, a konkretnie w departamencie "Audio i Multimedia", gdzie około 30
inżynierów pracuje nad rozwojem oraz implementacja "w czasie rzeczywistym"
algorytmów przetwarzania sygnałów dla potrzeb komunikacji audiowizualnej. Prace
rozpoczęto w roku 1987, przy ścisłej współpracy z uniwersytetem Erlangen, w celu
opracowania zaawansowanego algorytmu kodowania sygnałów audio dla przyszłych stacji
nadawczych ( np. Eureka 147, DAB radio ). W roku 1991 prace nad algorytmem kodowania
"Layer3" zostały ukończone i stal się on najbardziej optymalnym sposobem
kodowania sygnałów audio w rodzinie określanej przez międzynarodowe normy ISO-MPEG.
Używając tego algorytmu ( znanego powszechnie w internecie jako MP3, ze względu na
rozszerzenie ) do kodowania plików audio, jakość "prawie CD" tj. stereo,
44KHz, 16 bitów, można uzyskać przy 112 - 128kbps ( stopień kompresji 11:1 - 13:1 ).
Proces Kodowania
Wszystkie standardy mpeg audio używają tego
samego schematu kodowania. Może być on określony jako "maskowanie szumów".
Encoder analizuje widmo sygnału i następnie dostosowuje go do modelu psuchoakustycznego
poprzez oszacowanie dopuszczalnego, niesłyszalnego poziomu szumów. Encoder standardu
Layer2 dzieli widmo sygnału ( od 20Hz do 20KHz ) na 32 podzakresy. W każdym podzakresie
zawarta jest część analizowanego dźwięku. Na przykład, w podzakresie 8 obecny jest
ton o częstotliwości 6500 Hz i poziomie 60dB.Obliczany jest wówczas efekt maskujący
tego dźwięku - okazuje się że w obrębie tego podzakresu maskowane są dźwięki o
poziomie niższym od 35 dB. Dopuszczalny s/n wynosi zatem 60 - 35 = 25dB. To odpowiada
rozdzielczości 4 bitów. Dodatkowo maskowanie występuje również w podzakresach 9 -13
oraz 5 -7.Maleje ono wraz z odległością od zakresu 8. W rzeczywistości dźwięki
występują we wszystkich podzakresach i efekt maskowania sumuje się. Dodatkowo encoder
wykorzystuje zmienną czułość ucha ludzkiego dla różnych częstotliwości. Ucho jest
mniej czułe na wysokie i niskie dźwięki, szczyt czułości leży w okolicach 2 - 4 kHz.
W standarcie MPEG Layer2 każdy podzakres posiada szerokość 750Hz. ( dla
częstotliwości próbkowania 48kHz ), ale lepiej jest gdy podzakresów jest więcej, oraz
są one węższe dla niskich częstotliwości i szersze dla wysokich. Layer3 ( MP3)
posiada 18 razy większą rozdzielczość i dodatkowo wykorzystuje efekt maskowania przed
i po wystąpieniu silnego dźwięku. Wytłumaczyć go można ograniczonymi możliwościami
mózgu ( szybkość transportu bodźca nerwowego ).Przed-maskowanie występuje w bardzo
krótkim czasie od 2 d 5 ms, natomiast czas maskowania po sygnale to ponad 100ms.Inną
własnością, tym razem sygnału stereo, wykorzystywaną podczas kompresji to
występowanie korelacji pomiędzy kanałami. Używany jest wówczas tryb
"joint-stereo", co więcej Layer3 redukuje ten nadmiar poprzez użycie kodowania
Huffmana. Encoder kompresuje dany wycinek sygnału metodą iteracyjną tak długo aż
osiągnie pożądaną dokładność. W standardach Layer2 i Layer3 prowadzi on obliczenia
na odcinkach trwających 24 ms.( zwierających 1152 próbek i fs = 48 kHz ). Dla
niektórych dźwięków może to stanowić problem, np. Dla sygnału w którym różnica
pomiędzy dźwiękiem bardzo silnym I słabym wynosi ponad 24 ms.( np. wystrzał ). Efekt
maskowania obliczany jest dla najsilniejszego dźwięku po którym można usłyszeć szum
kwantyzacji ( jest to odbierane przez ucho jako " szumowe echo" ). Layer 3 radzi
sobie z tym poprzez analizę mniejszego okna ( 4 ms ), gdy encoder wykryje powyższą
sytuację.

|
 |
Wszystkie
standardy MPEG audio wykorzystują właściwości ucha ludzkiego. Bazują one na usuwaniu
słabszych dżwięków które nie docierają do mózgu człowieka. Na rysunku pokazany
jest efekt maskowania, czarną linią zaznaczono próg słyszalności. |
W
standardzie "MP3" wykorzystywany jest również inny efekt. Ponieważ mózg
człowieka posiada ograniczony czas reakcji, słabsze dżwięki są niesłyszalne na
krótko przed oraz po wystąpieniu silnego sygnału. |

|
Proces
enkodowania jest bardzo złożony obliczeniowo i wymaga szybkiego procesora. Na początku
sygnał jest filtrowany i jego widmo jest dzielone na małe podzakresy. Następnie enkoder
porównując zawartość poszczególnych podzakresów, musi usunąc tę część widma
która nie dociera do mózgu człowieka. Dwa "zielone" sygnały po prawej
stronie znajdują się poniżej niebieskiej lini "progu słyszalności" więc
enkoder może usunąć sygnał znajdujący się w 3-cim podzakresie. Sygnał z lewej
strony nie jest całkowicie zamaskowany, ale można podnieść dopuszczalny poziom szumu
ponieważ będzie on niesłyszalny (zapisać mniejszą ilością bitów). |
Testy Odsłuchowe
Podczas ustalania standardu ISO-MPEG-1
przeprowadzone zostały międzynarodowe testy odsłuchowe ( w Szwedzkim Radiu ). Miały
one miejsce w 07-90 , 03-91 i 11-91. Kolejne zostały przeprowadzone przez CCIR ( obecnie
ITU-R ) w 92 roku. Sekwencja odsłuchowa wyglądała następująco: "ABC", gdzie
A = oryginał, BC = para oryginał/kodowany w losowym porządku. Słuchacz oceniał
sygnały B i C w skali od 1 do 5 według poniższych zasad:
5.0 = przeźroczysty ( sygnał oryginalny )
4.0 = zauważalna różnica ( lecz nie dokuczliwa )
3.0 = trochę dokuczliwa
2.0 = dokuczliwa
1.0 = bardzo dokuczliwa
Dla niskich prędkości ( 60 lub 64 kbps na kanał, kompresja 1:12 ) Layer2 osiągnął
2.1 - 2.6, natomiast Layer3 - 3.6 - 3.8.Dla średnich i wysokich prędkości ( 120 I
więcej kbps na kanał ) wytrenowani słuchacze mieli trudności z rozróżnieniem
dekodowanego sygnału. W 92 roku podczas testów ( dźwięk monofoniczny ) Layer3 uzyskał
3.6 a Layer2 2.05. Dla sygnałów mowy w języku niemieckim ( głos kobiecy ) Layer3 -
4.4, natomiast Layer2 tylko 2.4.
Źródła
FAQ's by Harald Popp
(Fraunhofer-IIS)
http://drogo.cselt.stet.it/mpeg/
http://www.tnt.uni-hannover.de/project/mpeg/audio/
|