MP3 (ang. MPEG-1/2 Audio Layer-3)
to popularny format stratnej kompresji dźwięku opierający się na
zmodyfikowanej dyskretnej transformacie cosinusowej i używający modelu
psychoakustycznego. Format został stworzony we Fraunhofer Institute.
Przy tworzeniu jego pierwszej implementacji wykorzystywany był m.in.
utwór Suzanne Vegi Tom's Diner w celu dostosowania kompresji do brzmienia ludzkiego głosu.
Dźwięk skompresowany z przepływnością (ang. bitrate)
128 kbps daje zazwyczaj zadowalającą jakość na przeciętnym sprzęcie
odsłuchowym w komputerach osobistych (128 kbps przyjmuje się jako
odpowiadającą niskiej jakości odtwarzaczom CD), dźwięk skompresowany
przy 192 kbps jest dla większości ludzi nieodróżnialny od oryginału.
Niektórzy słuchacze w celu uzyskania większej jakości dźwięku stosują
jeszcze słabszą kompresję (256 lub nawet 320 kbps). Jakość zależy
również w dużym stopniu od używanego do kompresji enkodera.
Pierwotnie
do kompresji MP3 stosowano Constant Bit Rate (CBR), czyli do każdej
ramki używano tej samej ilości bitów. Współcześnie używa się raczej
Variable Bit Rate (VBR) charakteryzującego się zmienną przepływnością w
wybranym przedziale podczas kodowania.
Kodowany dźwięk może
posiadać postać zarówno jednokanałową (mono) jak i dwukanałową
(stereo). Istnieje też format MP3 Surround (do zapisu dźwięku
wielokanałowego 5.1) wstecznie zgodny z wcześniejszym standardem.
Dla dźwięku stereofonicznego format MP3 posiada trzy tryby kompresji:
- dual channel – w którym dźwięk jest zapisywany jako dwa odrębne kanały monofoniczne.
- stereo (stereo mode 0) – w którym każda ramka zapisywana jest algorytmem left/right stereo.
- joint stereo (stereo mode 1) – w którym dla każdej ramki wybierany jest najlepszy dla niej algorytm zapisu dźwięku stereo.
Stosowanymi w kompresji MP3 algorytmami kodowania ramki dźwięku stereofonicznego są:
- left/right stereo (simple stereo, independent channel)
– w którym dźwięk w kanałach prawym i lewym jest kodowany niezależnie,
może jednak zmieniać się liczba bitów przeznaczonych na każdy z
kanałów. Efektywny dla ramek, w których oba kanały różnią się w dużym
stopniu.
- middle/side stereo – w którym sygnał
stereo kodowany jest w postaci pary wartości oznaczających sumę (L+R)
oraz różnicę (L-R) kanałów. Efektywny dla ramek, w których oba kanały
przyjmują podobne wartości.
- intensity stereo –
w którym sygnał stereo dla niektórych (głównie wysokich) częstotliwości
kodowany jest jako monofoniczna wartość uzupełniona o wektor
określający kierunek, z którego dochodzi dźwięk. W praktyce stosowany
tylko przy niskiej przepływności (poniżej 80 kbps). Niektóre enkodery
(np. LAME) w ogóle nie stosują tego algorytmu.
Pliki w tym formacie posiadają rozszerzenie .mp3.