PROGRAMOWANIE APLIKACJI MULTIMEDIALNYCH

Podobne dokumenty
Kompresja dźwięku w standardzie MPEG-1

Kodowanie podpasmowe. Plan 1. Zasada 2. Filtry cyfrowe 3. Podstawowy algorytm 4. Zastosowania

Kwantowanie sygnałów analogowych na przykładzie sygnału mowy

Sprawdzian wiadomości z jednostki szkoleniowej M3.JM1.JS3 Użytkowanie kart dźwiękowych, głośników i mikrofonów

Spis treści. Format WAVE Format MP3 Format ACC i inne Konwersja między formatami

Spis treści. Format WAVE Format MP3 Format ACC i inne Konwersja między formatami

Cechy karty dzwiękowej

Przygotowali: Bartosz Szatan IIa Paweł Tokarczyk IIa

Teoria przetwarzania A/C i C/A.

Autorzy: Tomasz Sokół Patryk Pawlos Klasa: IIa

Neurobiologia na lekcjach informatyki? Percepcja barw i dźwięków oraz metody ich przetwarzania Dr Grzegorz Osiński Zakład Dydaktyki Fizyki IF UMK

DŹWIĘK. Dźwięk analogowy - fala sinusoidalna. Dźwięk cyfrowy 1-bitowy 2 możliwe stany fala jest mocno zniekształcona

Kwantyzacja wektorowa. Kodowanie różnicowe.

2. STRUKTURA RADIOFONICZNYCH SYGNAŁÓW CYFROWYCH

Dźwięk podstawowe wiadomości technik informatyk

Percepcja dźwięku. Narząd słuchu

Kompresja Kodowanie arytmetyczne. Dariusz Sobczuk

Technika audio część 2

dr inż. Piotr Odya Parametry dźwięku zakres słyszanych przez człowieka częstotliwości: 20 Hz - 20 khz; 10 oktaw zakres dynamiki słuchu: 130 db

Psychoakustyka. Dźwięk zapisany w formie nieskompresowanej na przykład na CD zawiera więcej informacji niż jest w stanie przetworzyć ludzki mózg.

Przygotowała: prof. Bożena Kostek

Kompresja sekwencji obrazów - algorytm MPEG-2

Wybrane metody kompresji obrazów

Audio i video. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Co to jest dźwięk. Dźwięk to wyrażenie słuchowe wywołane przez falę akustyczną. Ludzki narząd wyłapuje dźwięki z częstotliwością 16 do 20 Hz

Rozpoznawanie i synteza mowy w systemach multimedialnych. Analiza i synteza mowy - wprowadzenie. Spektrogram wyrażenia: computer speech

Transformata Fouriera

Wykład II. Reprezentacja danych w technice cyfrowej. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Spis treści. 1. Cyfrowy zapis i synteza dźwięku Schemat blokowy i zadania karty dźwiękowej UTK. Karty dźwiękowe. 1

Założenia i obszar zastosowań. JPEG - algorytm kodowania obrazu. Geneza algorytmu KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG

Formaty kompresji audio

Przetwarzanie i transmisja danych multimedialnych. Wykład 5 Kodowanie słownikowe. Przemysław Sękalski.

mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 4, strona 1. GOLOMBA I RICE'A

Program wykładu. informatyka + 2

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9,

2. Próbkowanie Sygnały okresowe (16). Trygonometryczny szereg Fouriera (17). Częstotliwość Nyquista (20).

Podstawy Przetwarzania Sygnałów

Kompresja sekwencji obrazów

Przesył mowy przez internet

Konwersja dźwięku analogowego do postaci cyfrowej

Fale dźwiękowe. Jak człowiek ocenia natężenie bodźców słuchowych? dr inż. Romuald Kędzierski

Przedmowa 11 Ważniejsze oznaczenia 14 Spis skrótów i akronimów 15 Wstęp 21 W.1. Obraz naturalny i cyfrowe przetwarzanie obrazów 21 W.2.

Kompresja danych DKDA (7)

Pomiary w technice studyjnej. TESTY PESQ i PEAQ

Andrzej Leśnicki Laboratorium CPS Ćwiczenie 9 1/5 ĆWICZENIE 9. Kwantowanie sygnałów

Wprowadzenie do cyfrowej obróbki dźwięku

Kodowanie Huffmana. Platforma programistyczna.net; materiały do laboratorium 2014/15 Marcin Wilczewski

Przetworniki cyfrowo analogowe oraz analogowo - cyfrowe

Przetworniki A/C. Ryszard J. Barczyński, Materiały dydaktyczne do użytku wewnętrznego

Przetwornik analogowo-cyfrowy

KOMPRESJA STRATNA SYGNAŁU MOWY. Metody kompresji stratnej sygnałów multimedialnych: Uproszczone modelowanie źródeł generacji sygnałów LPC, CELP

Podstawy transmisji multimedialnych podstawy kodowania dźwięku i obrazu Autor Wojciech Gumiński

Technika audio część 1

Przetwarzanie i transmisja danych multimedialnych. Wykład 6 Metody predykcyjne. Przemysław Sękalski.

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j

Temat: Algorytm kompresji plików metodą Huffmana

Podstawowe funkcje przetwornika C/A

Fale akustyczne. Jako lokalne zaburzenie gęstości lub ciśnienia w ośrodkach posiadających gęstość i sprężystość. ciśnienie atmosferyczne

mgr inż. Grzegorz Kraszewski SYSTEMY MULTIMEDIALNE wykład 1, strona 1.

Teoria Informacji - wykład. Kodowanie wiadomości

Ze względu na dużą rozpiętość mierzonych wartości ciśnienia (zakres ciśnień akustycznych obejmuje blisko siedem rzędów wartości: od 2x10 5 Pa do

MODULACJE IMPULSOWE. TSIM W10: Modulacje impulsowe 1/22

Kompresja JPG obrazu sonarowego z uwzględnieniem założonego poziomu błędu

Formaty - podziały. format pliku. format kompresji. format zapisu (nośnika) kontener dla danych WAV, AVI, BMP

ZAKŁAD SYSTEMÓW ELEKTRONICZNYCH I TELEKOMUNIKACYJNYCH Laboratorium Podstaw Telekomunikacji WPŁYW SZUMÓW NA TRANSMISJĘ CYFROWĄ

Systemy i Sieci Telekomunikacyjne laboratorium. Modulacja amplitudy

LABORATORIUM POMIARY W AKUSTYCE. ĆWICZENIE NR 4 Pomiar współczynników pochłaniania i odbicia dźwięku oraz impedancji akustycznej metodą fali stojącej

Formaty plików audio

Aproksymacja funkcji a regresja symboliczna

Kodowanie informacji

Klasyfikacja metod przetwarzania analogowo cyfrowego (A/C, A/D)

Data wykonania Część praktyczna

O sygnałach cyfrowych

TECHNIKI MULTIMEDIALNE

KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG

AKD Metody słownikowe

Demodulator FM. o~ ~ I I I I I~ V

1. Po upływie jakiego czasu ciało drgające ruchem harmonicznym o okresie T = 8 s przebędzie drogę równą: a) całej amplitudzie b) czterem amplitudom?

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Drgania i fale sprężyste. 1/24

Ćwiczenie 3,4. Analiza widmowa sygnałów czasowych: sinus, trójkąt, prostokąt, szum biały i szum różowy

Kompresja video (MPEG)

PRACA DYPLOMOWA STUDIA PIERWSZEGO STOPNIA. Łukasz Kutyła Numer albumu: 5199

Nierówność Krafta-McMillana, Kodowanie Huffmana

Def. Kod jednoznacznie definiowalny Def. Kod przedrostkowy Def. Kod optymalny. Przykłady kodów. Kody optymalne

Mapa akustyczna Torunia

Systemy plezjochroniczne (PDH) synchroniczne (SDH), Transmisja w sieci elektroenergetycznej (PLC Power Line Communication)

Teoria informacji i kodowania Ćwiczenia

Dźwięk. Cechy dźwięku, natura światła

Fundamentals of Data Compression

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Politechnika Warszawska

Kodowanie podpasmowe. Plan 1. Zasada 2. Filtry cyfrowe 3. Podstawowy algorytm 4. Zastosowania

Karta dźwiękowa. Architektura systemów komputerowych Ćwiczenie 3

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Zastowowanie transformacji Fouriera w cyfrowym przetwarzaniu sygnałów

Kodowanie transformacyjne. Plan 1. Zasada 2. Rodzaje transformacji 3. Standard JPEG

Przykładowe zadanie praktyczne

Wykład III: Kompresja danych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Zjawisko aliasingu. Filtr antyaliasingowy. Przecieki widma - okna czasowe.

Transkrypt:

PROGRAMOWANIE APLIKACJI MULTIMEDIALNYCH PRZETWARZANIE OBRAZÓW I DŹWIĘKÓW wykład 6 KOMPRESJA SYGNAŁÓW AKUSTYCZNYCH Prowadzący: Tomasz Kowalski

Natura i percepcja dźwięków 2 Dźwięk - zarówno mowa, jak i muzyka, jest z fizycznego punktu widzenia złożoną falą akustyczną. Ma ona charakterystyczne cechy, zależne przede wszystkim od własności źródła dźwięków oraz warunków, w jakich się rozchodzi. Podstawowymi parametrami, określającymi dźwięk w sposób subiektywny są: wysokość i natężenie.

Natura i percepcja dźwięków Dźwięki mogą być wysokie lub niskie, słabo słyszalne bądź bardzo głośne. Mogą rozchodzić się w wolnej przestrzeni bądź ulegać odbiciom, tworząc pogłos czy echo. Miary subiektywne zależą od wykonującego pomiar, są więc niejednoznaczne - niewymierne liczbowo. Utrudnia to ocenę i porównywanie urządzeń. Z tego m.in. powodu ustalono wielkości, związane z parametrami subiektywnymi, dające się mierzyć metodami fizycznymi, pozwalające na obiektywny i wymierny opis odczuć, doznawanych przy odbiorze dźwięku. 3

4 Natura i percepcja dźwięków Dźwięk jest falą akustyczną czyli drganiami rozchodzącymi się przede wszystkim w powietrzu. Każdą falę można przedstawić w postaci wykresu, obrazującego zmianę jej parametrów w funkcji czasu bądź odległości od źródła. Podstawowym dla dźwięku wykresem będzie przedstawienie zmian natężenia (głośności) dźwięku w danym punkcie przestrzeni w funkcji czasu. Najprostszą formą dźwięku jest ton prosty, a jego przedstawieniem graficznym jest sinusoida.

5 Natura i percepcja dźwięków Przebieg sinusoidalny dźwięku charakteryzuje się częstotliwością oraz natężeniem. Miarą natężenia dźwięku jest amplituda zmian ciśnienia akustycznego. Zmiany tego ciśnienia odnosimy do średniego ciśnienia akustycznego. Natężenie dźwięku można podawać w kilku jednostkach, np. jako moc akustyczną padającą na jednostkę powierzchni ustawionej prostopadle do kierunku padania fali (W/m2).

6 Natura i percepcja dźwięków W rzeczywistości najczęściej występują dźwięki złożone. Nawet proste tony o tej samej częstotliwości, ale wytworzone przez różne źródła, np. flet lub fortepian, różnią się barwą. Wynika to stąd, że oprócz fali o częstotliwości podstawowej każde źródło dźwięku wytwarza tzw. sygnały harmoniczne, tj. dodatkowe fale o mniejszym natężeniu i częstotliwościach na ogół większych niż podstawowa.

7 Natura i percepcja dźwięków Zakres częstotliwości słyszalnych przez człowieka jest niewielki i zawiera się w umownych granicach od 20 Hz do 20 khz. W praktyce jest on węższy, różny dla różnych osób i zmniejsza się z wiekiem.

8 Natura i percepcja dźwięków Nieco bardziej skomplikowana jest sprawa głośności. Własności ucha ludzkiego sprawiają, że dźwięki o różnej częstotliwości są słyszalne z różnym natężeniem. Najbardziej zauważalne jest to dla dźwięków znajdujących się na granicy słyszalności, dla której zależność ta jest najsilniejsza. Im dźwięk jest silniejszy, tym bardziej słyszalność się wyrównuje.

9 Natura i percepcja dźwięków Czasowy przebieg sygnału akustycznego może być zapisany w postaci ciągu wartości liczbowych, odpowiadających amplitudom sygnału mierzonym w ustalonych, zwykle jednakowo odległych od siebie momentach czasu.

Natura i percepcja dźwięków W wyniku otrzymujemy jednak strumień informacji rzędu 1,4Mb/s (sygnał stereofoniczny, próbkowanie z częstotliwością 44,1 khz, 16 bitów na próbkę), który sprawia trudności przy przesyłaniu go w formie cyfrowej na odległość a ponadto w błyskawicznym tempie wypełnia pamięć urządzenia przetwarzającego. Problem oszczędnego kodowania sygnału akustycznego jest więc centralnym zagadnieniem warunkującym efektywność cyfrowego przetwarzania dźwięku. 10

11 Model psychoakustyczny Jest to model zakresu sygnałów słyszalnych, w którym usunięte zostały wszystkie redundantne (nadmiarowe) informacje oraz dźwięki zamaskowane. W modelu psychaktustycznym przewiduje się zakres słyszalności od 20Hz-20kHz (dlatego właśnie większość współczesnych odtwarzaczy muzyki cyfrowej ma pasmo przenoszenia 20Hz- 20kHz) i maksymalną czułość od 2kHz do 4kHz.

12 Model psychoakustyczny W modelu psychoakustycznym różnica pomiędzy najcichszym sygnałem a górną granicą słyszalności wynosi ~96dB. W modelu tym zależność pomiędzy częstotliwością a czułością jest następująca:

13 Model psychoakustyczny W modelu psychoakustycznym zostaje określona specyfikacja maskowania, np. wygenerowany zostaje sygnał testowy o częstotliwości 1kHz (tzw. częstotliwość podstawowa (lub główna) i natężeniu 60 db i zostaje wyznaczony próg słyszalność wokół sygnału testowego. Podobną czynność wykonuje się dla innych sygnałów testowych.

14 Model psychoakustyczny Zastosowana także specyfikacja maskowania niesymultanicznego (maskowanie czasowe). Wygenerowany zostaje ton o częstotliwości 1kHz i natężeniu testowym 60dB. Badane jest prawdopodobieństwo usłyszenia następujących po nim dźwięków (o różnych natężeniach). W zależności od natężenia dźwięku następującego po tonie maskującym różna jest wartość opóźnienia.

15 Model psychoakustyczny Warto także prześledzić sytuację, kiedy ton maskujący ma natężenie 60dB, jednakże zmienia się wartość częstotliwości. Zmiana natężenia tonu maskującego nie zmieni krzywizn wykresu, spowoduje jedynie przeskalowanie osi y (poziom w db) w skali proporcjonalnej do zmiany wartości natężenia.

Algorytm SCB Proces kodowania standardu MPEG opiera się na metodzie SBC (Sub-Band Coding). Jest to bardzo silny algorytm używany do wszystkich rodzajów sygnałów audio. Metoda SBC posiada pewną zaletę, która stawia ją powyżej innych metod, a mianowicie fakt, iż w odróżnieniu od algorytmów bazujących na typie źródła (jak na przykład LPC Linear Predictive Coding), SBC działa niezależnie od strumienia wejściowego, dlatego może być wykorzystywany do każdego rodzaju dźwięku. 16

17 Algorytm SCB Warto zauważyć, iż LPC znajduje głównie zastosowanie przy kodowaniu głosu - dlatego właśnie większość cyfrowych dyktafonów opiera swój proces kompresji na algorytmach LPC.

18 SCB zjawisko maskowania MPEG zawdzięcza swój niesamowity współczynnik kompresji zjawisku zachodzącemu w ludzkim uchu. Zjawisko to znane już od wielu lat po raz pierwszy wykorzystała grupa Moving Pictures Expert Group. Zauważyli oni, że ludzkie ucho, zdolne odbierać szeroki zakres częstotliwości, gdy otrzyma dużą dawkę energii na określonej częstotliwości, staje się nieczułe na sygnały o zbliżonej częstotliwości, lecz o wiele mniejszej energii.

19 SCB zjawisko maskowania Zjawisko to zostało nazwane maskowaniem symultanicznym. W odróżnieniu od maskowania niesymultanicznego, polegającego na maskowaniu w czasie (po otrzymaniu dźwięku o wysokiej energii, ludzkie ucho nie jest w stanie przez pewien czas odbierać kolejnych sygnałów), jest to maskowanie częstotliwości.

20 SCB zjawisko maskowania Algorytm SBC jest więc algorytmem kompresji typu stratnego (lossy), czyli dekodowanie zakodowanego źródła nie da w wyniku źródła. Jednakże mimo to ludzkie ucho nie jest w stanie wychwycić różnicy pomiędzy oryginałem a zdekodowanym zakodowanym źródłem.

21 SCB zjawisko maskowania Istnieje wąska grupa ludzi maniaków, którzy z niemalże 100% skutecznością rozróżniają utwory z dwóch powyższych grup pod względem jakości, jednakże potrafią oni także wyczuć różnicę jakościową dźwięku przesyłanego za pomocą dwóch różnych przewodów.

22 SCB liniowy PCM Jedną z metod kompresji SBC jest algorytm linearny PCM (Pulse Code Modulation). Zakłada on wstępne maskowanie, po czym podczas dekompresji usunięte sygnały zastępuje cyfrowo wygenerowanymi szumami.

23 SCB liniowy PCM Niestety stopień kompresji jest wysoce niezadowalający. Zakodowane sygnały muszą być przecież "głośniejsze" aby zagłuszyć wygenerowane szumy, co pociąga za sobą konieczność zastosowania bitrate u o wartości co najmniej 700 kbps. Stopień kompresji wyniesie więc ok. 1:1.5~2.

SCB struktura (de)kompresji Podczas kompresji sygnałów algorytm SBC wykonuje 5 czynności: 1. Wstępny skaning sygnałów wejścia pod względem częstotliwości długości poszczególnych dźwięków 2. Podział sygnałów na grupy 3. Kontrola zgodności z modelem psychoakustycznym (zarówno sygnałów oryginalnych jak i zeskanowanych) 4. Kwantowanie i kodowanie sygnałów 5. Rozdzielanie do poszczególnych ramek 24

25 SCB struktura (de)kompresji Wstępny skaning wejścia pozwala na odpowiedni podział sygnałów wejściowych na podzakresy, na których będą wykonywane dalsze operacje. W przypadku MPEG-1 Layer 1 są to 32 subpasma. Podczas wstępnego skaningu dokonuje się analizy spektrum częstotliwości akustycznych dla każdego z subpasm. Używa się do tego zestawu 32 filtrów pasmowych bądź algorytmu FFT.

26 SCB struktura (de)kompresji Następnie dokonuje się porównań z modelem psychoakustycznym. Sygnały leżące poza zakresem słyszalności ludzkiego ucha są odrzucane i nie uwzględniane w dalszym procesie. Podczas procesu kwantowania i kodowania w MPEG-1 stosuje się głównie blokowe adaptacyjne przyporządkowywanie bitów ze stałym współczynnikiem skalowania.

27 SCB struktura (de)kompresji Jednakże precyzja kwantowania MPEG-1 okazała się zbyt mała i dlatego w MPEG-2 współczynnik skalowania podczas procesu kwantowania nie jest ustalony, lecz zmienia się w czasie. Ponadto w każdym z 32 subpasm dokonuje się podobny proces jak w przypadku wstępnego skaningu.

28 SCB struktura (de)kompresji Następnie proces kwantowania i kodowania zostaje zakończony kwantowaniem logarytmicznym i segmentacją adaptacyjną. Na zakończenie procesu kompresji MPEG dla dźwięku dokonuje się rozdziału do ramek, aby dekoder mógł poradzić sobie ze strumień danych w czasie rzeczywistym, podczas którego następuje jeszcze kompresja danych kodami Huffmana.

SCB struktura (de)kompresji 29

SCB struktura (de)kompresji Proces dekompresji algorytmu SBC jest o wiele mniej złożony niż kompresji. Sygnały, które zostały podczas kodowania rozmieszczone do ramek są teraz odczytywane. Podczas odczytu danych z ramek są one dekodowane kodami Huffmana. Kolejną czynnością jest połączenie sygnałów z 32 subpasm w jedno pasmo główne. Następnie dokonuje się rekonstrukcji sygnału głównego poprzez odwrócenie procesu skaningu sygnałów pod względem ich częstotliwości i długości. 30

SCB struktura (de)kompresji 31

INNE ALGORYTMY

Kwantyzacja Najprostszą metodą kompresji dźwięku jest kwantyzacja, zaliczana do metod stratnych. Błąd kwantyzacji jest łatwy do zmierzenia i zależy od liczby poziomów kwantyzacji. W systemach cyfrowych kwantyzacja jest używana do konwersji sygnałów analogowych na postać cyfrową przed zasadniczym procesem przetwarzania lub zastosowaniem bardziej zaawansowanych metod kompresji. 33

Kwantyzacja W większości przypadków kwantyzacji podlega tylko jedna próbka w danej chwili czasu. Czasami stosuje się jednak kwantyzację wektorową, czyli jednoczesne przetwarzanie ciągu próbek w jedną wartość liczbową. Metoda ta opiera się silnie na liniowych, nieliniowych i probabilistycznych zależnościach pomiędzy kolejnymi próbkami. W przypadku dźwięku osiąga się w ten sposób wysoki stopień kompresji dzięki usunięciu informacji nadmiarowych, jednakże wymaga to zaangażowania dużej ilości pamięci na bufory oraz stosowania procesorów sygnałowych. 34

Kodowanie Huffmana Jest to bezstratna metoda kodowania statystycznego, przedstawiona przez Davida A. Huffman w roku 1952. Wykorzystuje fakt, że pewne wartości danych występują częściej niż inne. Jeżeli zatem zakodujemy częściej występujące wartości za pomocą krótszych słów kodowych, a rzadziej występujące za pomocą dłuższych to sumarycznie ogólna długość zakodowanych danych będzie krótsza niż przed kodowaniem. 35

Kodowanie Huffmana Oznacza to konieczność wprowadzenia jednoznacznego systemu prefiksów - krótsze słowo kodowe nie może być początkiem dłuższego słowa kodowego (np. 110 i 1101001 nie mogą być jednocześnie słowami kodowymi). Algorytm konstrukcji kodu Huffmana jest bardzo prosty. Na początku wszystkie symbole występujące w wejściowym strumieniu danych są sortowane w kolejności malejącej według ich częstości występowania. Stanowią one liście drzewa binarnego. 36

Kodowanie Huffmana Następnie tworzy się nowe węzły poprzez łączenie dwóch symboli o najmniejszych częstościach występowania w jeden symbol o częstości będącej sumą składowych. Algorytm kończy się, gdy zostanie tylko jeden symbol. Wystarczy teraz jednoznacznie oznaczyć gałęzie drzewa (np. wszystkie lewe przez 0 a wszystkie prawe przez 1) i poczynając od korzenia drzewa można rozpocząć odczytywanie słów kodowych dla symboli umieszczonych na liściach. 37

Kodowanie Huffmana Istnieją trzy możliwe warianty kodowania metodą Huffmana: statyczny: tabela częstotliwości symboli ustalana jest z góry, niezależnie od tego jakie dane są kodowane. dynamiczny: w celu wypełnienia tabeli częstotliwościami, dokładnie dla tych danych które są kodowane, przed rozpoczęciem kodowania dokonywana jest analiza częstotliwości symboli w strumieniu wejściowym. adaptacyjny: wstępne założenia o częstotliwości występowania symboli zostają w trakcie kodowania dostosowane do częstotliwości rzeczywiście występujących. 38

Kodowanie Huffmana Na początku zakodowanej informacji przekazywana jest tabela kodowa, która pozwala na przyporządkowanie kodom odpowiadających im wartości początkowych. Celem kodowania statystycznego jest przekazywanie jednej próbki za pomocą średnio krótszego ciągu bitów i tym samym redukowanie ilości danych aż do granic wyznaczanych przez entropię. Dlatego w przypadku tych metod mówi się o kodowaniu entropijnym (entropy coding). 39

Kodowanie Huffmana Istnieją trzy podstawowe wady metody Huffmana: 1. Z reguły częstości występowania poszczególnych symboli nie są znane przed rozpoczęciem kodowania. 2. Metoda jest nieskuteczna, gdy wszystkie symbole występują w strumieniu źródłowym z jednakową częstością. 3. Niemożliwość przewidzenia rozmiaru bufora na analizowane symbole do zakodowania. 40

Kodowanie arytmetyczne Jest to również metoda kodowania bezstratnego, ale w przeciwieństwie do kodowania Huffmana nie wymaga, aby każdy symbol był indywidualnie zakodowany przy użyciu najmniejszej możliwej ilości bitów. W większości przypadków pozwala to osiągnąć wyższy stopień kompresji, bliższy teoretycznej granicy wyznaczanej przez entropię, jednakże również wymaga przekazania słownika symboli do dekodera. 41

Kodowanie arytmetyczne Przy kodowaniu arytmetycznym częstości występowania poszczególnych symboli są zamieniane w pewien proporcjonalny do ich wartości zakres prawdopodobieństwa z przedziału [0,1]. Podczas kodowania kolejnych symboli ze strumienia danych prawdopodobieństwa te nakładają się na siebie, tworząc zakres zmniejszający się proporcjonalnie do wartości prawdopodobieństw nadchodzących symboli. 42

Kodowanie arytmetyczne W rezultacie otrzymujemy jedną liczbę rzeczywistą dla całego bloku podlegającemu kodowaniu. Dekodowanie następuje poprzez analizowanie tej liczby w odwrotnej kolejności. 43

Metody słownikowe Są to metody bezstratne, w których ciągi dowolnych symboli kodowane są za pomocą pojedynczych odwołań do słownika fraz. Można te metody podzielić na: statyczne (ze stałym słownikiem) i dynamiczne (ze słownikiem fraz tworzonym dynamicznie w trakcie kodowania i dekodowania). 44

Metody słownikowe Bardzo efektywnym algorytmem z tej grupy jest algorytm LZ77, opracowany w roku 1977 przez Lempela i Ziva, będący podstawą działania programu PKZIP. Słownik jest tutaj tworzony dynamicznie z wykorzystaniem okna analizy, podzielonym na okno słownikowe i okno robocze. 45

Metody słownikowe Proces kompresji strumienia danych napływających do okna analizy polega na zastępowaniu możliwie długich ciągów symboli z okna roboczego przez położenie (adres lub indeks) i długość identycznych ciągów w oknie słownikowym. Powstający strumień wyjściowy składa się z tzw. tokenów zawierających adres ciągu w oknie słownikowym, długość tego ciągu oraz pierwszy symbol występujący po ostatnio kodowanym ciągu. 46

Metody słownikowe Przy oknie słownikowym o długości 1024 symboli (adres 10-bitowy) i oknie roboczym mieszczącym 64 symbole (długość ciągu można zapisać na 6 bitach) można za pomocą 16 bitów opisać dwa pierwsze pola tokenu. Jeżeli pojedynczy symbol zajmuje jeden bajt, to maksymalna kompresja może dać zamiast 64 bajtów tylko 3. 47

Metody słownikowe Wady tej metody wynikają z ograniczonej wielkości okna słownikowego. Dawno użyte symbole przy napływie nowych danych stopniowo muszą opuszczać okno, a mogłyby być jeszcze użyteczne. 48

Metody słownikowe Konkurencyjnym algorytm został stworzony w roku 1984 i otrzymał nazwę LZW. Jest obecnie stosowany przy zapisie skompresowanych plików graficznych w formacie GIF. Zrezygnowano tu z okna roboczego a sam słownik (podobnie jak w LZ77) tworzony jest dynamicznie i automatycznie odtwarzany po stronie dekodera. 49

Metody słownikowe Na początku słownik zostaje wstępnie zapełniony jednoelementowymi frazami reprezentującymi wszystkie możliwe symbole wejściowe. Następnie ze strumienia wejściowego zostaje wybrany ciąg elementów o maksymalnej długości, dla którego w słowniku znajduje się identyczna fraza. 50

Metody słownikowe Jest on dodawany do słownika razem z kolejnym elementem ze strumienia wejściowego. Na wyjście wyprowadzany jest token zawierający kod (numer) znalezionego ciągu. Pierwszy symbol po ostatnim pobranym z wejścia ciągu staje się początkiem dalej analizowanej sekwencji. 51

Metody słownikowe Wadą algorytmu jest to, że słownik bardzo szybko się rozrasta, co wymusza albo zerowanie słownika co jakiś czas albo zaprzestanie dokładania do niego kolejnych fraz. 52

Metody słownikowe Wszystkie omówione powyżej metody bezstratne lepiej nadają się do kompresji tekstów niż do kompresji cyfrowego dźwięku. Zostały jednak omówione, gdyż często są wykorzystywane na ostatnim etapie kompresji po użyciu metod stratnych. 53

DCM Różnicowa modulacja kodowo-impulsowa (Differential Pulse Code Modulation - DPCM) to metoda kompresji stratnej, przeznaczona specjalnie dla sygnałów dźwiękowych i oparta o konwencjonalną modulację kodowo-impulsową. Różnica polega na tym, że koder PCM daje na wyjściu wartość aktualnej próbki podczas gdy koder DPCM jedynie wartość reprezentującą różnicę pomiędzy kolejnymi próbkami. 54

DCM Jeżeli częstotliwość próbkowania jest odpowiednio wysoka, wartości te powinny dać się zakodować przy pomocy mniejszej liczby bitów niż w tradycyjnym PCM. Opierając się na metodach predykcji, koder DPCM koduje różnicę między przewidywaną i rzeczywistą wartością każdej próbki. 55

DCM Dekoder natomiast odtwarza oryginalny sygnał akustyczny używając przewidzianej przez siebie wartości oraz zakodowanej różnicy. Jak w każdej metodzie predykcyjnej, efektywność DPCM zależy od zdolności algorytmu predykcji do nadążania za zmianami w sygnale wejściowym. 56

DM Modulacja Delta (Delta Modulation - DM) może być rozpatrywana jako szczególny przypadek DPCM. Różnica objawia się tym, że DM używa tylko jednego bitu do zakodowania różnicy między wartością przewidzianą a aktualną. Chociaż ułatwia to bardzo realizację sprzętową oraz samą operację kodowania, to wymaga jednak wyższej częstotliwości próbkowania sygnału w porównaniu do konwencjonalnego PCM. 57

DM Poza tym, ponieważ tylko dwie wartości (0 lub 1) są używane do zakodowania różnicy, wielkość przyrostu po stronie dekodera jest krytyczna. Projektując system DM należy zatem dokonać kompromisu pomiędzy częstotliwością próbkowania a wspomnianą wielkością przyrostu. 58

DM Dla wysokich częstotliwości na wejściu osiągnięcie odpowiedniej częstotliwości próbkowania staje się bardzo trudne, a ze względu na istnienie tylko dwóch poziomów kwantyzacji, błąd kwantyzacji staje się bardzo widoczny. Z drugiej strony jednak dekoder DM nie musi zawierać przetworników A/C i C/A, które mogą zostać zastąpione przez znacznie tańsze układy całkujące. 59

ADM Adaptacyjna modulacja Delta (Adaptive Delta Modulation - ADM) to modyfikacja modulacji Delta, przezwyciężająca kilka jej niedogodności. W szczególności techniki adaptacyjne zostały tutaj zaimplementowane w celu zredukowania zniekształceń impulsowych i błędu kwantyzacji. Wielkość przyrostu może się zatem zmieniać w zależności od chwilowych potrzeb. 60

ADM Jeżeli sygnał wejściowy zmienia się szybciej, wielkość przyrostu również wzrasta. Jeżeli sygnał wejściowy pozostaje w przybliżeniu stały, wielkość przyrostu jest zmniejszana aby lepiej śledzić zmiany sygnału z mniejszym błędem kwantyzacji. Również i w tej metodzie trzeba dokonać kompromisu pomiędzy złożonością projektu a dokładnością algorytmu predykcji. 61

ADPCM Adaptacyjna modulacja kodowo-impulsowa Delta (Adaptive Delta Pulse Code Modulation - ADPCM), często nazywana również adaptacyjnoróżnicową modulacją kodowo-impulsową (Adaptive Differential Pulse Code Modulation) łączy w sobie zalety metod ADM i PCM. 62

ADPCM Mówiąc ściśle, jednobitowy schemat kodowania został zastąpiony schematem wielobitowym. Poza zwiększeniem ilości poziomów kwantyzacji, osiągnięto większą dokładność i efektywność przy generowaniu zmiennej wielkości przyrostu poprzez przypisanie każdemu poziomowi kwantyzacji własnego współczynnika skalowalności. 63

STANDARD MPEG

MPEG Layer-2 Format ten - jak łatwo się domyślić - poprzedzał wejście MP3. Zastosowano tu mniej wyrafinowane algorytmy kompresji. Używany (obecnie rzadko) tylko wśród profesjonalistów, gdyż powstało sporo sprzętowych dekoderów do tego formatu: zużywa bardzo mało zasobów podczas odtwarzania niekomercyjny mało wydajny algorytm kompresji (standardowy bitrate to 192 kbps) 65

MPEG Layer-2 Format MPEG-Audio (Wydanie II) zbudowany jest podobnie jak algorytm PASC (Precision Adapptive Subband Coding) firmy Philips, stosowany na kasetach DCC (Digital Compact Cassete - cyfrowa kaseta kompaktowa). Chodzi tu, podobnie jak w przypadku formatu MPEG-Video, o najefektywniejszą w chwili obecnej metodę kompresji. 66

MPEG Layer-2 Punktem wyjścia dla omawianej metody jest model psychoakustyczny. Jak we wszystkich algorytmach kompresji pracujących ze stratami, wykorzystuje się tu niedostatki możliwości percepcyjnych człowieka. Z przetwarzanego sygnału usuwa się nie tylko informacje redundantne (nadmiarowe), lecz także częstotliwości, które nie będą zauważone. Przy użyciu 32 filtrów pasmowych analizuje się spektrum częstotliwości akustycznych z podziałem na subpasma. 67

MPEG Layer-2 Sygnały leżące poza zakresem słyszalności człowieka nie są uwzględniane. Wykorzystuje się przy tym efekt maskowania - sygnały głośniejsze zagłuszają sąsiadujące z nimi sygnały słabsze, tak więc te słabsze są maskowane i nie muszą być rejestrowane. Może się wiec zmieniać długość słowa bitowego. 68

MPEG Layer-2 Stosując format MPEG-Audio można, w zależności od możliwej szybkości transmisji danych, uzyskać bardzo rożne efekty. Osiągalna jest nawet jakość klasy Redbook-Audio - i to przy o wiele mniejszej prędkości bitowej rzędu 256 kb/s dla przekazu stereo (dla porównania: prędkość bitowa dla CD-Audio sięga około 1,4 Mb/s). Zależnie od rodzaju zastosowania i dostępnego sprzętu dodatkowego - do wyboru są trzy tzw. "wydania" formatu MPEG-Audio o różnych parametrach. 69

MPEG Layer-2 Wydania I i II formatu umożliwiają uzyskanie, w oparciu o bank filtrów, wspomnianych wyżej 32 prezentacji subpasmowych sygnału wejściowego, następnie ich kwantowanie i kodowanie z uwzględnieniem modelu psychoakustycznego, w oparciu o który następuje również blokowe adaptacyjne przyporządkowanie bitów. 70

MPEG Layer-2 Uwzględniając wszystkie wymogi Wydania I, Wydanie II realizuje ponadto dalszą kompresję, eliminując występujące redundancje i dokonując zmian współczynnika skalowania, umożliwiając tym samym precyzyjniejsze kwantowanie. W Wydaniu III każde z subpasm podlega dodatkowej analizie poprzez wykonanie dla każdego z nich dodatkowych 12 próbek. Aby uzyskać większa efektywność kodowania, stosuje się kwantowanie nieliniowe, segmentację adaptacyjną i kodowanie metodą Huffmana. 71

MPEG Layer-2 Skala możliwych prędkości bitowych sięga (dla obu kanałów) od 64 kb/s do 448 kb/s. Standard dopuszcza również kodowanie z prędkością 32 kb/s dla jednego kanału. Możliwe częstotliwości próbkowania wynoszą 44,1 khz, 48 khz i 32 khz. We wszystkich wydaniach formatu MPEG może być stosowany specjalny tryb Joint Stereo, który umożliwia wyszukiwanie w poszczególnych subpasmach redundantnych informacji, będących rezultatem trybu stereo. 72

MPEG Layer-3 Bardziej zaawansowany, złożony i jak dotąd najpopularniejszy 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. 73

MPEG Layer-3 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 stał się on najbardziej optymalnym sposobem kodowania sygnałów audio w rodzinie określanej przez międzynarodowe normy ISO-MPEG. 74

MPEG Layer-3 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). 75

MPEG Layer-3 Wszystkie standardy mpeg audio używają tego samego schematu kodowania. Może być on określony jako maskowanie szumów. Koder analizuje widmo sygnału i następnie dostosowuje go do modelu psuchoakustycznego poprzez oszacowanie dopuszczalnego, niesłyszalnego poziomu szumów. 76

MPEG Layer-3 Koder 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. 77

MPEG Layer-3 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. 78

MPEG Layer-3 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 koder 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. 79

MPEG Layer-3 W standardzie 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. 80

MPEG Layer-3 Wytłumaczyć go można ograniczonymi możliwościami mózgu (szybkość transportu bodźca nerwowego). Przedmaskowanie występuje w bardzo krótkim czasie od 2 d 5 ms, natomiast czas maskowania po sygnale to ponad 100 ms 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. 81

MPEG Layer-3 Koder 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 (zawierają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ł). 82

MPEG Layer-3 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 koder wykryje powyższą sytuację. 83

MPEG4 MPEG4 Audio określa także kodowanie dźwięku naturalnego, dla pasma przesyłania począwszy od 2 kbps. Stosowane są 3 rodzaje kodeków: PARA (Parametric Codec) dla najniższych przepustowości, CELP (Code Excited Linear Predictive) dla średnich, oraz TF (Time- Frequency), zawierający MPEG-2 AAC, który pozwala na uzyskanie najwyższej jakości dźwięku. 88

MPEG4 MPEG4 oferuje także nowe możliwości, jak kontrola szybkości przesyłania i położenia widma sygnału, wyciszanie błędów oraz skalowalność, w której skład wchodzi: skalowalność prędkości przesyłania (bitrate scalability), pozwala na przekształcenie określonego strumienia bitów w strumień o niższej szybkości przesyłania, umożliwiając bezbłędną transmisję w zmiennych warunkach, skalowalność pasma przenoszenia (bandwidth scalability) gdzie określone części strumienia bitów przesyłają odpowiednie fragmenty widma sygnału. W gorszych warunkach możliwe jest zawężenie przesyłanego widma, bez szkody dla zrozumiałości materiału, 89

90 MPEG4 skalowalność złożoności kodera (coder complexity scalability), pozwala koderom o różnym stopniu złożoności na generowanie poprawnego oraz zgodnego z normą sygnału, skalowalność złożoności dekodera (decoder complexity scalability), pozwala na poprawne dekodowanie sygnału przez dekodery o różnym stopniu złożoności Najogólniej, jakość dźwięku zależy od stopnia złożoności kodera i dekodera, system korekcji błędów (error robustness) umożliwia dekoderowi korekcję lub ukrycie słyszalnych zniekształceń spowodowanych błędami w trakcie transmisji.

MPEG4 W MPEG4 jednym ze skalowanych formatów jest standard BASC (Bit Sliced Arithmetic Coding), sposób kodowania zbliżony jest do AAC, koder różni się jedynie ulepszonym modułem odpowiedzialnym za dynamikę. Dzięki temu, przy zawężeniu pasma transmisji poniżej 40 kbps, pogorszenie jakości jest prawie niezauważalne. W praktyce, podczas transmisji koder jest w stanie zmieniać pasmo od 16 do 64 kbps, z krokiem 1 kbps. 91

MPEG4 SAOL (Structured Audio Orchestra Language) definiuje orkiestrę za pomocą poszczególnych instrumentów. Instrument jest to niewielka sieć danych dla procesora sygnałowego, pozwalająca na emulację naturalnego brzmienia instrumentu muzycznego. 92

MPEG4 SASL (Structured Audio Score Language) jest używany do tworzenia nowych efektów oraz zawiera informacje służące modyfikowaniu istniejącego dźwięku Pozwala na lepszą kontrolę syntezy oraz bardziej naturalny efekt końcowy. W przypadku, gdy nie jest wymagana szczegółowa kontrola, do przesyłania danych o instrumentach może być wykorzystany protokół MIDI. 93

MPEG4 W formacie MPEG4 po raz pierwszy pojawia się także pojęcie "obiektu audio". Najprościej można go zdefiniować jako słyszalną część docierającego do odbiorcy materiału dźwiękowego, zakodowaną za pomocą pojedynczego strumienia bitów. Może to być np. głos jednego lub kilku mówców, dźwięk jednego lub kilku instrumentów lub tło akustyczne. Obiekty audio mogą być grupowane oraz miksowane, przy czym rozdzielenie pojedynczego obiektu na mniejsze składowe jest już dosyć trudne. 94

MPEG4 Możliwości wykorzystania tego sposobu transmisji są bardzo rozległe: do odbiorcy, poprzez 5 kanałów przesyłany jest dźwięk z pięciu różnych instrumentów wchodzących w skład orkiestry. Odbiorca może np. wyłączyć jeden z instrumentów i grać razem z pozostałymi członkami zespołu, 95

96 MPEG4 transmisja wydarzeń sportowych w kilku językach interaktywne filmy oraz aplikacje video, korzystające z obiektowego opisu sceny, np. w typowej sekwencji z filmu, rozgrywającej się na dworcu kolejowym, można wyróżnić kilka obiektów audio: rozmowa pomiędzy aktorami, najważniejszy element sceny, tło akustyczne, np. gwar dworcowy oraz odgłosy nadjeżdżających pociągów, zapowiedzi speakera o przyjazdach i odjazdach pociągów, tło muzyczne (ścieżka dźwiękowa).

MPEG4 Każdy z obiektów dźwiękowych może być dowolnie modyfikowany, zależnie od potrzeb. W trudniejszych warunkach transmisji, możliwe jest ograniczenie pasma lub całkowite usunięcie obiektów nie mających wpływu na treść przekazu. 97

MPEG4 Format MPEG4 oferuje znacznie więcej niż jego poprzednicy: MPEG1 oraz MPEG2. Oprócz narzędzi umożliwiających kompresję i przesyłanie dźwięku naturalnego, wzbogacony został o możliwości syntezy dźwięku po stronie odbiorcy oraz skalowania przesyłanego strumienia bitów. 98

MPEG4 Trwają także prace nad formatem MPEG7, który ma połączyć większość aplikacji multimedialnych w jedną całość. Pozwoli to na łatwe zarządzanie multimedialnymi zasobami Internetu: wyszukiwanie, sprzedaż lub udostępnianie utworów oraz filmów. 99

MPEG Layer-3 PRO W mp3 pro zastosowano prosty i skuteczny jednocześnie trik: program dzieli dźwięk na dwa odrębne strumienie. Pierwszy to częstotliwości 0-11 khz (czyli jakość pliku wav o częstotliwości 22kHz), drugi to strumień 11-22 khz (tony wysokie). Przypominam, że częstotliwość słyszalna jest dwa razy mniejsza od częstotliwości próbkowania w pliku. Np. audio CD ma 44.1 khz/16bit dźwięk, więc słychać max. do 22 khz (w praktyce ludzkie ucho wyłapuje częstotliwości od 20Hz do 19kHz, więc do przechowywania dźwięku na CD wystarczyłoby próbkowanie 38kHz). 100

MPEG Layer-3 PRO Takie rozdzielenie jak się okazało daje o wiele lepsze rezultaty, niż zakodowanie wszystkiego naraz. Plik mp3 pro 64 kbps ma jakość zbliżoną do mp3 112 kbps. 101

MPEG Layer-3 PRO Muzyka skompresowanej do formatu mp3 przy 128 kbps brzmi świetnie. Ale wraz ze zmniejszeniem bitrate u zaczyna brakować wysokich częstotliwości. Przy bitrate 64 kbps i niżej muzyka może zacząć brzmieć kiepsko. Powodem tego jest to, że mp3 przy tak niskich bitrate'ach zaczyna brakować bitów, aby skompresować muzykę w pełnym paśmie dźwiękowym i detalach. 102

MPEG Layer-3 PRO W tej sytuacji twórcy mp3 musieli zdecydować, czy ich kodek powinien produkować mp3 ze zniekształceniami (tak zwane artefakty kodowania ), czy z ograniczonym pasmem przenoszenia. Zdecydowali się na ograniczenie pasma. 103

MPEG Layer-3 PRO Tak więc w rezultacie otrzymujemy mp3 o niskim bitrate'cie jako muzykę z ograniczonym pasmem przenoszenia z niewielką ilością zniekształceń. 104

MPEG Layer-3 PRO Aby polepszyć jakość dźwięku przy niskich bitrate'ach, Coding Technologies opracowało rozszerzenie, które pozwala odtworzyć wysokie częstotliwości. Ta technologia nazywa się Spectral Band Replication (SBR). SBR jest bardzo wydajną metodą służącą do generowania wysokich częstotliwości sygnału audio. 105

MPEG Layer-3 PRO Łącząc mp3 z technologią SBR uzyskujemy sygnał audio zawierający wysokie częstotliwości przy niskich bitrate'ach. Mp3PRO, uzyskany format audio składa się z dwóch składowych, części mp3 dla niskich częstotliwości i części SBR lub "PRO" dla wysokich częstotliwości. Ponieważ część "PRO" wymaga jedynie kilku kbps, nowy format mógł zostać stworzony w sposób, który wciąż jest kompatybilny z oryginalnym mp3. 106

MPEG Layer-3 PRO Pozwala to na odtwarzanie plików mp3pro za pomocą już istniejących odtwarzaczy mp3. Po prostu ignorują one część PRO. Jedynym wymogiem jest, aby wspierały odtwarzanie próbkowania 16, 22.5 i 24 khz wraz z 32, 44.1 i 48 khz. 107