Formaty plików audio

Projekt Jana Rogoża
pod tytułem

Formaty plików audio

Jan Rogoża
gr. 4
nr albumu 14344

Spis treści

Spis treści 2

Tło historyczne 4

Bez kompresji 5

WAVE 5

Kompresja stratna 5

Model psychoakustyczny 6

AC3 6

AAC 7

MP3 8

Struktura pliku MP3 9

MP3 Surround 9

MP4 9

MPC 11

Zalety 11

Wady 12

WMA 12

QDesign 12

Ogg Vorbis 12

Charakterystyka formatu Ogg Vorbis 13

Tworzenie plików Vorbis 14

RealAudio 14

MIDI 14

Kompresja bezstratna 15

Twierdzenie o zliczaniu (counting theorem) 15

Algorytmy kompresji bezstratnej 16

FLAC 16

Projekt FLAC 16

Kompresja FLAC 17

WavPack 17

Monkey's Audio 18

Porównania 18

MP3 vs WMA 9 18

Bibliografia 20

Treść 20

Obrazki 20



Tło historyczne

Pierwszego zapisu dźwięku za pomocą urządzenia zwanego fonografem dokonał w 1877 r. Amerykanin Thomas Alva Edison. Drgająca membrana przechwytywała dźwięki i przekazywała je na igłę żłobiącą spiralny rowek w obracającym się wałku pokrytym metalową folią. Ponowne przejście igły wzdłuż wyrytych na wałku rowków umożliwiało wprawienie w ruch innej membrany połączonej z tubą głosową.

Gramofon wyewoluował z fonografu i odziedziczył jego zasadę działania. Nośnikiem informacji jest obracająca się płyta (typowo z prędkościami 33 1/3, 45 lub 78 obrotów na minutę, czasem 16 2/3) z wyżłobionym spiralnym rowkiem, w którym prowadzona jest igła. Drgania igły przetworzone są we wkładce na impulsy elektryczne. W nowych rozwiązaniach konstrukcyjnych zamiast igły stosuje się promień lasera.

D o końca lat 80. płyty gramofonowe były popularnym nośnikiem muzyki; zastąpione zostały płytami kompaktowymi. Mimo upływu lat i wprowadzenia na rynek wielu urządzeń cyfrowych, płyta gramofonowa jest źródłem dźwięku przetworzonego w sposób analogowy, pozbawionego metalicznego nalotu charakterystycznego dla technologii CD, znacznie gorszej MiniDisc czy popularnego ostatnio MP3.

Prekursorem współczesnego magnetofonu było urządzenie wykorzystujące jako nośnik stalowy drut. Konstruktorem pierwszego prototypu magnetofonu był Valdemar Poulsen (1898) - swoje urządzenie nazwał telegrafonem. Pomimo spadku popularności magnetofony są dziś wciąż produkowane i użytkowane, zarówno w wersjach przenośnych (walkman) jak i do zestawów HiFi. Współczesne magnetofony HiFi najwyższej klasy przewyższają parametrami odtwarzacze CD (przykładowo Nakamichi DR-10 potrafi na zwykłej taśmie żelazowej przenieść 21 kHz).

P

Rysunek 1

łyta kompaktowa została opracowana przez koncerny Sony i Philips pod koniec lat 70., a jej premiera odbyła się w 1982. Jej pierwotnym zastosowaniem był zapis dźwięku, adaptacja do innych zastosowań nastąpiła później.

CD-Audio jest standardem cyfrowego zapisu dźwięku na płycie kompaktowej, wykorzystujący do tego celu kodowanie PCM o częstotliwości próbkowania 44,1 kHz i rozdzielczości 16 bitów na próbkę.

Płyta CD pozwala na zapis dwóch kanałów (stereo). Muzyka jest podzielona na ścieżki, po których można przeskakiwać bez konieczności przewijania. Jeśli płyta została zapisana w systemie Track-At-Once (TAO) między ścieżkami będzie 3-sekundowa przerwa, można to ominąć nagrywając płytę w systemie Disc-At-Once (DAO). Dane zapisywane na dysku CD Audio poddawane są kodowaniu CIRC, służącemu do korekcji błędów, a następnie kodowaniu kanałowemu EFM, zwiększającemu upakowanie danych.

Płyta CD Audio zawiera standardowo 74 minuty nagrania podzielonego na maksymalnie 99 części. Przy największym dopuszczalnym zwężeniu rowka (1,497 μm) długość nagrania można zwiększyć do 79 minut i 40 sekund (przy przekroczeniu standardów - nawet do 90 albo 99 minut, przy czym takie płyty powodują dużo problemów z odczytem, szczególnie w starszych odtwarzaczach). Płyty CD Audio charakteryzują się dosyć wysoką jakością dźwięku, a przy tym są stosunkowo odporne na zabrudzenia (kurz, odciski palców) i zarysowania.

Bez kompresji

WAVE

WAVE ( ang. waveform audio format ) - format plików dźwiękowych stworzony przez Microsoft oraz IBM. WAVE bazuje na formacie RIFF, poszerzając go o informacje o strumieniu audio, takie jak użyty kodek, częstotliwość próbkowania czy ilość kanałów. WAVE podobnie jak RIFF został przewidziany dla komputerów IBM PC, toteż wszystkie zmienne zapisywane są w formacie little endian. Odpowiednikiem WAVE dla komputerów PowerPC jest AIFF.

Mimo że pliki WAVE mogą być zapisane przy użyciu dowolnych kodeków audio, zazwyczaj stosuje się nieskompresowany format PCM, który powoduje, że pliki zajmują dużo miejsca (około 172 kB na sekundę dla jakości CD). Inną wadą formatu jest ograniczenie wielkości pliku do 4 GB, ze względu na 32-bitowe zmienne. Format WAVE został częściowo wyparty przez formaty kompresji stratnej. Mimo to, dzięki swojej prostocie, nadal znajduje szerokie zastosowania. Wykorzystywany jest w edycji dźwięku oraz w przenośnych urządzeniach audio takich jak odtwarzacze i cyfrowe dyktafony.

Kompresja stratna

Kompresja stratna, to metody zmniejszania ilości bitów potrzebnych do wyrażenia danej informacji, które nie dają gwarancji, że odtworzona informacja będzie identyczna z oryginałem. Dla niektórych danych algorytm kompresji stratnej może odtworzyć informację w sposób identyczny.

Kompresja stratna jest możliwa ze względu na sposób działania ludzkich zmysłów, tj. wyższą wartość pewnych części danych nad innymi. Algorytmy kompresji stratnej zazwyczaj posługują się modelami psychoakustycznymi, psychowizualnymi itd., aby odrzucić najmniej istotne dane o dźwięku, obrazie, pozostawiając dane o wyższej wartości dla rozpoznawania tej informacji (akustycznej, wizualnej) przez zmysły. Ilość odrzucanych danych jest zazwyczaj określana przez stopień kompresji.

Z tego też względu nie istnieją algorytmy kompresji stratnej, które można stosować do dowolnego typu danych. Np. kompresja stratna plików wykonywalnych byłaby praktycznie niemożliwa do zastosowania, gdyż nie jest to informacja odczytywana przez zmysły, a przez maszynę.

Zwykle kompresję stratną stosuje się do:

Przy danych audiowizualnych zazwyczaj kompresuje się osobno dźwięk, a osobno obraz.

Prostym przykładem kompresji stratnej jest np. zachowanie tylko co drugiego piksela, lub odrzucenie 2 najmniej istotnych bitów. Takie metody jednak nie dają zazwyczaj tak zadowalających rezultatów jak oparte na modelach psychozmysłowych.

Model psychoakustyczny

Model psychoakustyczny, to matematyczny model mówiący jakie informacje o dźwięku są rozpoznawalne przez ludzkie ucho, jakie natomiast nie są. Modele psychoakustyczne są podstawą między innymi kompresji dźwięku, algorytmów oceny jakości transmisji mowy, systemów automatycznie rozpoznających mowę oraz rozpoznających mówców.

Modele psychoakustyczne są szczególną grupą modeli układu słuchowego. W tej grupie wytyczne do modelowania pochodzą z pomiarów psychoakustycznych (odsłuchowych), w których słuchacze oceniają wrażenia wywołane różnymi sygnałami testowymi prezentowanymi w określonym kontekście (np. czy słyszą ton sinusoidalny prezentowany na tle szumu). Model przetwarza sygnał w taki sposób, aby jego wyjście stanowiło predykcję ocen subiektywnych słuchaczy. Zjawiskami słuchowymi najczęściej wykorzystywanymi przy opracowywaniu modeli psychoakustycznych są: maskowanie dźwięków, percepcja wysokości dźwięków oraz dyskryminacja modulacji amplitudy.

Najprostszym faktem psychoakustycznym jest różna czułość ludzkiego ucha na dźwięki o różnych częstotliwościach (niektórych częstotliwości np. bardzo wysokich lub bardzo niskich nie słyszymy w ogóle). W odpowiednich warunkach odsłuchowych możliwe jest przeprowadzenie testu pozwalającego na wyznaczenie charakterystyki czułości ucha ludzkiego na różne częstotliwości dźwięku oraz charakterystyk maskowania, które to elementy modelowania stanowią podstawę większości obecnych koderów stosujących kompresję stratną. Należy zauważyć, że nawet stosowanie tak prostych elementów jak miara decybelowa może być traktowane jako zastosowanie modelu psychoakustycznego (patrz: prawo Webera). Innym przykładem może być stosowanie w miernikach poziomu ciśnienia akustycznego krzywych korekcyjnych A, B i C modelujących percepcję dźwięków a będących przybliżeniem krzywych jednakowej głośności.

Modele psychoakustyczne przewidują zwykle zakres słyszalności od 20 Hz-20 kHz (dlatego właśnie większość współczesnych odtwarzaczy muzyki zapisanej cyfrowo ma takie pasmo przenoszenia) i maksymalną czułość w zakresie od 2 kHz do 4 kHz.

Ponadto uwzględnia się maskowanie jednych dźwięków przez inne:

AC3

AC3 - standard stratnego kodeka dźwięku używany na większości płyt DVD-Video. Powszechnie znany jako Dolby Digital Audio Compression-3, Dolby Digital lub A/52 (nazwa A/52 została przyjęta przez ATSC).

Dźwięk jest kodowany z oryginalnego zapisu PCM o częstotliwości próbkowania 48 kHz i próbkowaniu 16-24 bit (czyli o jakości równej lub wyższej niż CD-Audio). Taki zapis, zajmujący ponad 5 Mb/s jest kompresowany do 384kbps lub 448kbps dla dźwięku 5.1 (poniżej kompresja jest zbyt znaczna, wartości wyższe są dosyć rzadko stosowane, głównie na DVD - do 640 kbps) albo 192kbps dla dźwięku 2.0, niestety z pewną stratą jakości, szczególnie wyczuwalną przy słuchaniu płyt z muzyką zapisaną w tym formacie (taką prędkość strumienia stosuje się najczęściej do dźwięku Dolby Digital nadawanego w telewizjach).

AC3 pozwala na zapisanie wielokanałowego dźwięku w następujących kombinacjach (przód/tył):

Oprócz tego, do każdej kombinacji można dołączyć kanał z niskimi częstotliwościami (LFE - ang. low frequency effects), określany jako .1. A więc dźwięk 5.1 to 3 głośniki z przodu, 2 z tyłu oraz bezkierunkowy, niskotonowy subwoofer.

Każdy odtwarzacz DVD posiada wbudowany dekoder A/52, a dokładniej konwerter A/52 na Dolby Surround, tak aby można było podłączyć go do zwykłego telewizora (nie tracąc przy okazji możliwości uzyskania dźwięku przestrzennego). Najlepiej jest jednak zakupić 6 kanałowy wzmacniacz cyfrowy z dekoderem A/52 (Dolby Digital), który w pełni wykorzysta możliwości formatu.

Strumień danych skompresowanych AC3 przenosi też metadane (dane opisujące sygnał audio), ang. metadata - zawierają one informacje o poziomie głośności dialogów, sposobie kompresji dynamiki, sposobie tworzenia tzw. "downmix" - czyli możliwości odtwarzania dźwięku na mniejszej liczbie głośników niż jest zakodowana w oryginalnym strumieniu. Z założenia w strumieniu Dolby Digital transmituje się sygnał z możliwie najwyższą jakością (bez kompresji dynamiki, z maksymalną liczbą kanałów), a wszystkie konieczne obróbki (zmniejszenie dynamiki sygnałów audio, dostosowanie do liczby głośników systemu audio słuchacza) odbywa się na poziomie dekodera odbierającego sygnał.

AAC

AAC (ang. Advanced Audio Coding) to algorytm stratnej kompresji danych dźwiękowych, którego specyfikacja została opublikowana w roku 1997. Format AAC zaprojektowany został jako następca MP3, oferujący lepszą jakość dźwięku przy podobnym rozmiarze danych.

Kompresja AAC jest modularna i oferuje w standardowo cztery profile:

Usprawnienia względem MP3

MP3

MP3 jest częścią MPEG-1, będącego standardem kompresji dźwięku i ruchomych obrazów zaproponowanym przez MPEG (Moving Picture Experts Group). Format wideo MPEG-1 używany jest na Video CD. Jakość obrazu przy zwykłej przepustowości VCD jest w przybliżeniu porównywalna do tej znanych z kaset VHS.

MPEG-1 składa się z wielu "partii", kolejno:

  1. Synchronizacja oraz mieszanie wideo i audio.

  2. Kodek kompresji sygnałów wideo bez przeplotu.

  3. Kodek kompresji stratnej sygnałów audio. Standard definiuje trzy "warstwy", czy też poziomy złożoności kodowania audio MPEG.

    1. MP1 lub MPEG-1 Part 3 Layer 1 (MPEG-1 Audio Layer 1)

    2. MP2 lub MPEG-1 Part 3 Layer 2 (MPEG-1 Audio Layer 2)

    3. MP3 lub MPEG-1 Part 3 Layer 3 (MPEG-1 Audio Layer 3)

  4. Procedury dla testów zgodności.

  5. Oprogramowanie referencyjne.

MP3 (ang. MPEG-1 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:

Stosowanymi w kompresji MP3 algorytmami kodowania ramki dźwięku stereofonicznego są:

Pliki w tym formacie posiadają rozszerzenie .mp3.

CBR dostępne w MP3: 8 kb/s 16 kb/s 32 kb/s 40 kb/s 64 kb/s 80 kb/s 96 kb/s 112 kb/s 128 kb/s 160 kb/s 192 kb/s 224 kb/s 256 kb/s 320 kb/s

Struktura pliku MP3

Plik MP3 jest zbudowany z wielu ramek MP3, które składają sie z nagłówka (MP3 header) oraz danych (MP3 data). Taka sekwencja ramek nazywana jest strumieniem elementarnym. Ramki są niezależnymi jednostkami: można wyciąć ramki z pliku MP3 i odtwarzacz MP3 będzie w stanie je odtworzyć.

Nagłówek MP3 składa się ze sekwencji synchronizującej (Sync Word), wykorzystywanego do identyfikacji początku prawidłowej ramki. Następnie jest bit oznaczający, że jest to standard MPEG i dwa bity oznaczające, że warstwa 3 jest używana (MPEG-1 Audio Layer 3 albo MP3). Następne wartości zależą już od samego pliku MP3. Zakres wartości dla każdego pola nagłówka, wraz ze specyfikacją samego nagłówka zdefiniowane są przez ISO/IEC 11172-3. Większość dzisiejszych plików MP3 zawiera metadane ID3, które poprzedzają ramki MP3.

MP3 Surround

Rozszerzenie formatu mp3 stworzone przez twórców tego formatu pozwalające na zapis formatu 5.1. Zapisywane są dwa kanały tak jak we zwykłej mp3, a informacja potrzebna do wygenerowania dodatkowych kanałów jest zapisana w Tagach mp3. Dzięki temu rozwiązaniu mp3 można odtwarzać jako zwykłe stereo na odtwarzaczach sprzętowych. Zapisanie dodatkowych kanałów zajmuje mało miejsca (ponieważ ich zapisywana jest informacja jak z dwóch kanałów wygenerować inne). Najprawdopodobniej te rozwiązanie zostanie skopiowanie do innych kompresorów dźwięku.

MP4

Mp4 (MPEG-4 Part 14) jest to standard kodowania dźwięku i obrazu. Został napisany z myślą o telewizji cyfrowej oraz przesyłaniu multimediów przez internet Zapewnia dobrą jakość przesyłanych danych przy niskiej prędkości transferu. Rozszerzenie plików w tym formacie to *.mp4 lub *.m4a.

 Format MPEG4 Audio jest to najprościej zbiór norm określających kodowanie naturalnego oraz syntetycznego dźwięku. Części dotyczące kodowania syntetycznego to SA (Structured Audio) oraz  TTSI (Text-to-Speech Interface), zwierają narzędzia umożliwiające symboliczną definicje muzyki oraz mowy, jak np. MIDI oraz system "Text-to-Speech". Co więcej, zawarte są tam również narzędzia do lokalizacji dźwięku 3D, pozwalające na tworzenie naturalnej oraz sztucznej przestrzeni dźwiękowej. 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. 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:

W MPEG4 jednym ze skalowanych formatów jest standard BASC (Bit Sliced Arithmetic Coding), sposób kodowania zbliżony jest do AAC, enkoder 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 enkoder jest w stanie zmieniać pasmo od 16 do 64 kbps, z krokiem 1 kbps.

MPEG4 Audio

Natural Coding

Synthetic Coding

PARA (Parametric Coding)

Code Excited Linear Predictive (CELP)

TF (Time-Frequency)

SA (Structured Audio)

TTSI (Text-to-Speech Interface)

Formaty:
HILN
HVXC

Format:
NB-CELP

Formaty:
TwinVQ
AAC
BSAC

SAOL (Structured Audio Orchestra Language)

SASL (Structured Audio Score Language)

Symboliczny język opisy mowy.

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.

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 instrumenatch może być wykorzystany protokół MIDI.

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. Możliwości wykorzystania tego sposobu transmisji są bardzo rozległe:

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.
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. 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. Nad własnym formatem kompresji dżwieku pracuje również Microsoft. W połowie kwietnia firma zamierza oficjalnie zaprezentować "MS Audio 4.0", jak mówią przedstawićiele firmy, format będzie całkowicie "bezpieczny", ponadto przy kompresji na 64 kbps jakość dżwięku ma być lepsza od  plików MP3 oraz AAC skompresowanych na 128 kbps.

MPC

Musepack (MPC) - format stratnej kompresji dźwięku, bazujący na algorytmach MPEG Layer-2 (MP2), jednakże znacznie w stosunku do nich rozbudowany. Format został zaprojektowany tak, by dawać dźwięk nierozróżnialny od oryginału przy standardowych ustawieniach (tzw. przezroczystość, ang. transparency), co osiąga przy przepływności (bitrate) niższej niż inne popularne kodeki (jak np. MP3). Algorytm zaprojektowano tak, aby przechowywał jak najwięcej informacji, dlatego najlepiej sprawdza się dla wysokich przepływności (od 140 kbit/s wzwyż), natomiast dla przepływności poniżej 112 kbit/s jakość dźwięku w tym formacie gwałtownie spada. Wzorcowa implementacja Musepack jest szybsza niż większość popularnych kodeków dźwięku.

Prace nad MPC rozpoczął w 1997 Andree Buschmann, a w tej chwili rozwija go Frank Klemm.

Pliki w formacie Musepack mają zwykle rozszerzenie .mpc lub (rzadziej) .mpp bądź .mp+. Zazwyczaj tagi w plikach MPC zapisywane są metodą APEv2. 

Zalety

 

Wady

WMA

WMA (ang. Windows Media Audio) - format kompresji dźwięku stworzony przez Microsoft Corporation. W zamierzeniach producenta ma konkurować z formatem MP3.

Powodem stworzenia WMA mogły być konflikty patentowe z Fraunhofer Institute - twórcą formatu MP3, dotyczące dołączania kodeka MP3 do systemu Windows. Według Microsoftu WMA zapewnia jakość dźwięku znacznie lepszą niż MP3, a początkowo firma z Redmond twierdziła nawet, że WMA dorównuje jakości płyty CD przy przepływności równej 64 kbps.

Niezależne testy odsłuchowe pokazały, że choć WMA przy przepływności 96 kbps i niższych brzmi nieco lepiej niż MP3, to jednak przy wysokich przepływnościach oferuje zauważalnie gorszą jakość dźwięku. Kodek w żadnym wypadku nie dorównuje jakości płyty CD przy 64 kbps.

Wraz z Windows Media Player 9 Microsoft zaprezentował nowe kodeki z rodziny WMA: WMA 9 Professional (obsługujący dźwięk wielokanałowy), WMA 9 Lossless (bezstratny) i WMA 9 Voice (zoptymalizowany do przesyłania głosu przy bardzo niskiej przepływności). Wszystkie trzy nie są wstecznie kompatybilne.

QDesign

QDesign - kodek audio, oryginalnie LBpack Dmitra Shmunka. Firma QDesign kupiła kodek i zatrudniła twórcę, aby stworzył coś, co stanie się oficjalnym kodekiem audio w QuickTime firmy Apple Computers.

Oficjalną nazwą kodeka jest RaveSound, zgodnie z tym artykułem w prasie, jednak zwykle nazywany jest kodekiem QDesign. Jest on znany jako jeden  z najbardziej agresywnych kodeków, co oznacza, ze kompresuje całkiem dobrze przy małych bitrate. Jednak jego agresywność wprowadza zbyt wiele "artefaktów" przy większych bitrate.

Wersja personal dostępna jest wraz z QuickTime Pro i pozwala na kodowanie przy bitrate do 48 kbit/s. Wersja profesjonalna kodeka pozwala na kodowanie z bitrate dochodzącym do 128 kbit/s.

Ogg Vorbis

V

Rysunek 2

orbis to stratny kodek dźwięku z rodziny Ogg. Bardzo często używany jest w połączeniu z kontenerem Ogg i nosi wtedy nazwę Ogg Vorbis, często błędnie zapisywaną tylko jako Ogg. Ogg Vorbis potrafi obsłużyć do 255 kanałów i ponad 16-bitowy dźwięk w zakresie 6-48 kHz.

Dane techniczne tych formatów należą do public domain. Biblioteki dystrybuuje się na prawach licencji z rodziny BSD, a narzędzia na zasadach GNU GPL.

Rozszerzenie plików Ogg Vorbis to .ogg.

Charakterystyka formatu Ogg Vorbis

Vorbis jest kodekiem ogólnego zastosowania. Ponieważ jego schemat kompresji przedkłada jakość wynikowej fali dźwiękowej nad jej zgodność z zakodowywanym oryginałem, najlepiej sprawdza się w tworzeniu plików o dużym stopniu kompresji (od 48 do 128 kbps). Uznaje się, że średnia jakość dźwięku zakodowanego w formacie Ogg Vorbis jest porównywalna do AAC i wyższa niż MP3 o tej samej przepływności.

Aby uniknąć pomyłki przy dobraniu odpowiedniej wartości przepływności w zależności od ilości kanałów dźwiękowych, niektóre programy kodujące materiał audio do formatu Ogg Vorbis (np. Audacity) zamiast jawnie określonej przepływności używają umownej skali Q (skali jakości) odnoszącej się do jakości nagrania. Poniżej przedstawiono znaczenie poszczególnych jej wartości na skali przepływności dla 2 kanałów dźwiękowych (stereo), 16 bitowego dźwięku o próbkowaniu 44,1kHz:

skala Q

przepływność nominalna

-2 (tylko aoTuV b2 i nowszy)

32 Kbps

-1

45 Kbps

0

64 Kbps

1

80 Kbps

2

96 Kbps

3

112 Kbps

4

128 Kbps

5

160 Kbps

6

192 Kbps

7

224 Kbps

8

256 Kbps

9

320 Kbps

10

499,9 Kbps

Tworzenie plików Vorbis

Oggdrop oraz OggdropXPd to małe i proste, ale w pełni funkcjonalne programy działające według zasady przeciągnij i upuść. Przeciągając do okna programu pliki WAV otrzymujemy skompresowane pliki Ogg Vorbis. Możliwe jest dokładne ustalenie jakości dźwięku. Bezpośrednie kodowanie do formatu Ogg Vorbis umożliwia także program FreeRIP do zgrywania muzyki z płyt CD-Audio. Otwarty edytor dźwiękowy Audacity umożliwia eksport wynikowego materiału dźwiękowego do formatu Ogg Vorbis.

RealAudio

Format RealAudio został przedstawiony w 1995 roku przez firmę RealNetworks specjalnie z myślą o Internecie. Obecnie jest on standardem strumieniowego przesyłania dźwięku przez Internet. Do odbioru jego zawartości wystarczy modem 28,8 Kbps, ale możliwe jest także przesyłanie dźwięku o bardzo wysokiej jakości dla odpowiednio szybkich łącz.

Przy odpowiednim oprogramowaniu system RealAudio pozwala na nadawanie audycji na żywo. Jakość dźwięku zależy głównie od możliwości naszego modemu i łącza. Kłopoty te można jednak ominąć wybierając podczas zapisu pliku Real Audio docelową prędkość transmisji. RealSystem G2, ma możliwość przesyłania również plików w innych formatach.

Obecne wersje kodera Real mogą generować pliki o wysokiej jakości przy praktycznie wszystkich gęstościach strumienia bitowego a jakość porównywalna z radiem FM osiągalna jest już przy gęstości 20 do 34 kb/s (przy wyższych gęstościach strumienia bitowego dokładne testy wykazują niewielkie zniekształcenia wysokich tonów).

Poza wysoką jakością kompresji, koder Real charakteryzuje się dużą szybkością działania. Być może jednym z najważniejszych powodów, dla których produkt firmy Real nie osiągnął popularności MP3, jest fakt, iż MP3 postrzegany jest głównie jako format plikowy, umożliwiający tworzenie i przechowywanie kolekcji utworów, podczas gdy Real kształtował swój obraz jako firmy zajmującej się głównie transmisją strumieniową.

Pliki RealAudio o jakości podobnej do MP3 są mniejsze i od razu gotowe do transmisji strumieniowej, jednak koszt oprogramowania serwera jest zbyt duży dla przeciętnego użytkownika co czyni tą cechę nieistotną.

Pliki *.ra *.rm możemy udostępnić do pobrania zamieszczając odsyłacz bezpośrednio do niego na stronie WWW. Poza innym formatem pliku, sytuacja ta nie różni się niczym od występującej w przypadku plików WAV czy MP3 - plik zostanie pobrany przez przeglądarkę na dysk, a następnie odtworzony przez odtwarzacz RealPlayer.

Możemy jednak go także strumieniować - wówczas na stronie umieścimy tylko odsyłacz do metapliku (tradycyjnie metapliki RealMedia mają rozszerzenie *.ram), a w metapliku wpiszemy adres właściwego pliku *.rm. RealPlayer będzie wówczas odtwarzał plik w miarę pobierania danych z sieci.

MIDI

Plik formatu MIDI (Musical Instruments Digital Interface) ze względu na małe rozmiary plików jest często wykorzystywany do tworzenia podkładu muzycznego dla stron WWW, automatycznie odtwarzanego podczas jej oglądania w przeglądarce (poprzez użycie znacznika i odpowiedniej wtyczki). Plik w tym formacie charakteryzuje się małym rozmiarem - kilkuminutowy utwór muzyczny może być zawarty w pliku o rozmiarze 30-40 kB, w efekcie wczytanie takiego pliku nie zwiększa ogólnego czasu ładowania całej strony.

Mały rozmiar możliwy jest dzięki oparciu na innej zasadzie niż w przypadku pozostałych formatów dźwiękowych: plik nie zawiera spróbkowanego dźwięku, lecz specyficzny rodzaj zapisu nutowego danego utworu.

Standard MIDI opracowany został pierwotnie dla komunikowania się ze sobą elektronicznych instrumentów muzycznych; plik w tym formacie składa się z wielu tzw. ścieżek, z których każda odpowiada brzmieniu określonego instrumentu. Każda ścieżka zawiera szereg tzw. komunikatów MIDI, nakazujących w określonym momencie (każdy komunikat opatrzony jest kodem czasowym) zagrać dźwięk o określonej wysokości i czasie trwania, zmienić głośność danej ścieżki, zmienić tempo itd. Karta dźwiękowa odtwarza takie pliki wykorzystując brzmienia swojego wewnętrznego syntezatora zamiast reprodukować nagrany wcześniej oryginał. Plik taki może zawierać jedynie "czystą" muzykę - niemożliwe jest zawarcie w nim np. śpiewu, mowy czy efektów dźwiękowych (innych niż przewidziane w standardzie MIDI); do tego wszystkiego potrzebne byłoby wykorzystanie dźwięku spróbkowanego.

Konsekwencją założeń MIDI jest rzecz jasna fakt, że ten sam plik będzie brzmiał różnie na różnych kartach dźwiękowych. Najlepszą jakość dźwięku uzyskamy na kartach z tzw. syntezą wavetable, gdzie syntezator wykorzystuje zapisane w pamięci karty próbki dźwięku autentycznych instrumentów muzycznych, znacznie gorsze brzmienie (typowo "syntezatorowe") - na kartach ze "zwykłą" syntezą FM, gdzie dźwięki uzyskuje się poprzez składanie drgań o odpowiednio dobranych częstotliwościach (posiadacze tych ostatnich kart mogą natomiast wykorzystać odtwarzacze plików MIDI realizujące programową syntezę wavetable, jak np. TiMidity). Twórca pliku MIDI nie jest w stanie z góry przewidzieć, jak będzie brzmiało jego dzieło - może to określić jedynie w przybliżeniu.

Obecnie karty dźwiękowe korzystają z tabeli wavetable ładowanej do pamięci RAM komputera. Tabela wavetable może być instalowana wraz ze sterownikami karty dźwiękowej i wtedy można wybrać we właściwościach sterownika jej rozmiar, typowo 2, 4 lub 8 MB. Inną możliwością jest skorzystanie z gotowej tabeli instalowanej przez system Windows XP zawartej w pliku C:\Windows\System32\drivers\gm.dls o rozmiarze 3.28 MB. Rozwiązanie to wymaga dużej mocy obliczeniowej procesora, co obecnie nie jest problemem choć było w przeszłości, stąd wcześniejsze rozwiązanie polegające na wbudowaniu tabeli wavetable w kartę dźwiękową.

Rozszerzenia: *.MID, *.MIDI, *.RMI

Przed erą empetrójek powstały pliki MOD, które korzystają z próbek dźwięku zawartych w samym pliku. Drugą ich część stanowi zapis komunikatów podobny do MIDI. Gdyby nie rozwój mp3, mogłyby być obecnie dużo popularniejsze.

Kompresja bezstratna

Kompresja bezstratna (ang. lossless compression) to ogólna nazwa takich metod upakowywania informacji do postaci zawierającej zmniejszoną liczbę bitów tak, aby całą informację dało się z tej postaci odtworzyć do identycznej postaci pierwotnej.

Twierdzenie o zliczaniu (counting theorem)

Niemożliwe jest skonstruowanie funkcji przekształcającej odwracalnie informację na informację (czyli funkcji kompresji bezstratnej), która nie wydłuża jakieś informacji o przynajmniej 1 bit, chyba że nie kompresuje ona żadnej informacji.

Dowód:

Załóżmy, że dana funkcja kompresuje choć jedną dowolną wiadomość do długości N bitów z dowolnej większej długości. Jest X wiadomości o długości nie większej od N bitów. Jeśli żadna z wiadomości zawierających nie więcej niż N bitów nie została wydłużona, to w wyniku otrzymujemy przynajmniej X+1 wiadomości o długości nie większej niż N bitów. Ponieważ X jest skończone to X+1>X, a więc jest to sprzeczne z założeniem, że takich wiadomości jest X. Co należało udowodnić.

Skonstruowanie funkcji, która wydłuża o nie więcej niż 1 bit jest trywialne. Dla dowolnej funkcji f(x), niech f'(x) będzie:

dla f(x) zawierającego mniej bitów niż x: f'(x)=<0,f(x)>

dla f(x) zawierającego więcej bitów niż x: f'(x)=<1,x>

dla f(x) zawierającego tyle samo bitów co x: f'(x)=<0,f(x)> lub f'(x)=<1,x> (nie ma to znaczenia)

Algorytmy kompresji bezstratnej

Algorytmy kompresji bezstratnej dobrze kompresują "typowe" dane, czyli takie w których występuje znaczna nadmiarowość informacji (redundancja).

Pewne rodzaje danych są bardzo trudne lub niemożliwe do skompresowania:

Najczęściej używane metody kompresji bezstratnej można podzielić na słownikowe i statystyczne, choć wiele metod lokuje się pośrodku:

metody słownikowe poszukują dokładnych wystąpień danego ciągu znaków, np. zastępują 'the ' krótszą ilością bitów niż jest potrzebna na zakodowanie 4 niezwiązanych znaków. Jednak znajomość symbolu 'the ' nie pociąga za sobą usprawnień w kompresowaniu 'they' czy 'then'.

metody statystyczne używają mniejszej ilości bitów dla częściej występujących symboli, w przypadku praktycznie wszystkich oprócz najprostszych metod, prawdopodobieństwa zależą od kontekstu. A więc np. dla 'h' występującego po 't' używają mniejszej ilości bitów niż dla innych znaków w tym kontekście.

FLAC

F

Rysunek 3

LAC (ang. Free Lossless Audio Codec) to format bezstratnej kompresji dźwięku z rodziny kodeków Ogg. Format ten jest rozwijany przez Xiph.Org Foundation i kojarzony z Wolnym Oprogramowaniem. W przeciwieństwie do stratnych kodeków dźwięku takich jak Vorbis, MP3 i AAC, kodek FLAC nie usuwa żadnych danych ze strumienia audio, dzięki czemu po dekompresji otrzymujemy dźwięk identyczny z pierwowzorem. Format FLAC jest obecnie obsługiwany przez większość oprogramowania służącego do edycji/odtwarzania audio (czasami wymagana jest odpowiednia wtyczka).

29 stycznia 2003 Xiphophorus (obecnie Xiph.Org Foundation) przyjęła FLAC pod swój patronat. Są tam już m.in. Ogg Vorbis, Ogg Theora i Speex.

Projekt FLAC

Projekt FLAC składa się z:

Według licencji specyfikacja formatu może być wykorzystana przez każdego bez wcześniejszego pozwolenia (Xiph.org zachowało prawa do ustanawiania specyfikacji formatu), z zastrzeżeniem, że żaden element formatu nie zostanie opatentowany. Oznacza to także, że wszystkie implementacje w jakikolwiek sposób powiązane z projektem FLAC będą stanowić wolne oprogramowanie - kody źródłowe dla libFLAC i libFLAC++ dostępne są na zasadach licencji BSD, natomiast kody dla flac, metaflac i wtyczek na zasadach licencji GPL.

Kompresja FLAC

FLAC działa podobnie do formatu MP3, z tą różnicą, że należy do grupy kodeków bezstratnych. Wszystkie dane podlegające procesowi kompresji można odzyskać dokonując dekompresji - analogicznie jak w formacie ZIP. Jednak format FLAC został stworzony specjalnie do zmniejszania objętości plików dźwiękowych, dlatego przy kompresji tych plików możemy otrzymać dużo lepsze wyniki niż przy użyciu formatu ZIP (ZIP 10%-20%, FLAC 40%-60%). Kodeki stratnej kompresji mogą uzyskać stosunek kompresji nawet 80%, jednak jest to związane z usunięciem pewnych danych.

WavPack

Rysunek 4

WavPack to całkowicie otwarty format kompresji dźwięku dostarczający tryby kompresji: bezstratny, stratny wysokiej jakości oraz unikalny hybrydowy. Kompresja WavPack (pliki .WV) potrafi skompresować (i zdekompresować) pliki .WAV o próbkach 8,16,24 i 32 bitowych. Ponadto obsługuje strumienie dźwięku przestrzennego i wysokie częstotliwości próbkowania.

W domyślnym trybie bezstratnym WavPack zachowuje się tak jak kompresor WinZip dla plików dźwiękowych. Jednak w przeciwieństwie do kodowań MP3 czy WMA, które wpływają na jakość dźwięku, żaden bit oryginalnej informacji nie jest tracony, więc nie ma żadnych szans na degradację. Czyni to tryb bezstratny idealnym do archiwizowania materiałów dźwiękowych oraz w innych sytuacjach, gdzie jakość jest najważniejsza. Współczynnik kompresji zależy od materiału źródłowego, ale zwykle jest pomiędzy 30% a 70%.

Tryb hybrydowy udostępnia wszystkie zalety kompresji bezstratnej z dodatkowym ulepszeniem. Zamiast tworzenia pojedynczego pliku tryb ten tworzy zarówno stosunkowo mały, wysokiej jakości plik stratny, który może być używany jako taki oraz plik "poprawek", który (w połączeniu z plikiem stratnym) odtwarza pełną jakość bez strat. Dla niektórych użytkowników oznacza to, że nie muszą wybierać pomiędzy kompresją bezstratną a stratną.

Monkey's Audio

Rysunek 5

Monkey’s Audio jest bezstratnym kodekiem kompresji audi. W przeciwieństwie do stratnych formatów, takich jak AAC, MP3, lub Ogg Vorbis, bezstratne kodeki potrafią dokładnie zrekonstruować oryginalną fale dźwiękową. Plik skompresowany przy użyciu Monkey's Audio brzmi tak samo jak plik oryginalny, nie zależnie od tego ile razy byłby kompresowany i zdekompresowany. Pliki Monkey's Audio używają rozszerzenia .ape.

Porównując Monkey's Audio z innymi formatami, należy podkreślić, że Monkey's Audio jest formatem bezstratnym. Porównanie go z innymi bezstratnymi formatami prowadzi do wniosku, że jest on nieznacznie lepszy niż FLAC i znacznie lepszy niż starszy Shorten. Natomiast porównanie szybkości kodowania i dekodowania prowadzi do wniosku, że Monkey's Audio jest wolniejszy od obu formatów, w związku tym sprawia problem jego zastosowanie w cyfrowych przenośnych odtwarzaczach dźwięku. Problemem jest tutaj również relatywne wolne przeszukiwanie utworu, a jeśli plik zostanie uszkodzony, to dane audio za punktem uszkodzenia zostaną utracone.

Monkey's Audio jest bezstratną metodą kompresji, więc ciężko go porównywać ze stratnymi metodami kompresji, gdyż rożne typy kodeków mają różne zastosowania. Celem Monkey's Audio jest dokładna reprodukcja oryginalnego pliku wykorzystując tak mało pamięci jak to tylko możliwe. Typowy plik Monkey's Audio używa około 600 do 700 kbps dla jakości CD audio.

Porównania

MP3 vs WMA 9

W grudniu 2002 roku, Microsoft wydał 9tą wersję swojej technologii Windows Media, zawierającą Windows Media Audio (WMA) 9. W celu zademonstrowania jak WMA jest dobry Microsoft udostępnił stronę internetową z porównaniem, pozwalającą posłuchać WMA i MP3 kodowane przy różnych wartościach bitrate: 128, 64, 32, 20. Jest jednak pewien problem. Mianowicie porównanie wydaje się być nie do końca sprawiedliwe, gdyż pliki MP3 kodowane są przy pomocy enkodera Lame MP3, w wersji 3.83, która została wydana w maju 2000 roku. Tak więc WMA 9 porównywane jest do Lame, które jest dwa lata starsze.

W celu uzyskania bardziej trafnej opinii przedstawiamy do porównania pliki zakodowane przy pomocy Lame MP3 w wersji 3.93.

Pojawia się tutaj jeszcze problem, że pliki WMA są większe niż pliki MP3 kodowane przy tym samych przepływnościach (bitrate).

Plik Oryginalny (Baglama from The Guarneri Underground)


Kodek

Prawdziwy bitrate

Rozmiar pliku

128kbps

WMA9

136kbps

504KB

MP3 (Lame 3.93)

124kbps

457KB

MP3 (od Microsoft)

128kbps

474KB

64kbps

WMA9

69kbps

254KB

MP3 (Lame 3.93)

62kbps

228KB

MP3 (od Microsoft)

64kbps

238KB

32kbps

WMA9

35kbps

129KB

MP3 (Lame 3.93)

32kbps

116KB

MP3 (od Microsoft)

32kbps

120KB

20kbps

WMA9

23kbps

83KB

MP3 (Lame 3.93)

20kbps

75KB

MP3 (od Microsoft)

20kbps

74KB

Dla małych wartości bitrate, WMA wydaje się być lepszą metodą kompresji niż MP3. Jednak różnica nie jest taka duża jak obrazuje to firma Microsoft. Przy 128kbps WMA 9 i Lame 3.93 dają podobną jakość.



Bibliografia

Treść

http://pl.wikipedia.org/wiki/WAV
http://en.wikipedia.org/wiki/Lossy_compression
http://en.wikipedia.org/wiki/Psychoacoustic
http://en.wikipedia.org/wiki/Dolby_Digital
http://www.dolby.com/consumer/technology/dolby_faq_1.html
http://www.eetimes.com/story/OEG20011218S0048
http://www.audiocoding.com/
http://www.rjamorim.com/test/
http://wiki.hydrogenaudio.org/index.php?title=MP3
http://en.wikipedia.org/wiki/MP3
http://www.profon.xq.pl/publikacje/mpeg.htm
http://www.chiariglione.org/mpeg/standards/mpeg-1/mpeg-1.htm
http://en.wikipedia.org/wiki/Mp4
http://www.musepack.net/
http://www.chip.pl/arts/archiwum/n/articlear_61435.html
http://www.microsoft.com/windows/windowsmedia/pl/9series/codecs/audio.aspx
http://en.wikipedia.org/wiki/Windows_Media_Audio
http://www.qdesign.com/Products/about_products/qdmc_OSX.htm
http://www.rjamorim.com/rrw/
http://www.vorbis.com/
http://rarewares.org/ogg.html
http://en.wikipedia.org/wiki/Vorbis
http://flac.sourceforge.net/
http://www.xiph.org/
http://en.wikipedia.org/wiki/Wavpack
http://www.wavpack.com/
http://www.monkeysaudio.com/
http://www.losslessaudioblog.com/
http://compression.ca/act/act-sound.html
http://www.microsoft.com/windows/windowsmedia/democenter/9series/avquality/wmamp3/default.htm
http://www.microsoft.com/windows/windowsmedia/demos/audio_quality_demos.aspx
http://pl.wikipedia.org/wiki/Formaty_plików_dźwiękowych
http://kodeki-audio.info

Obrazki

Rysunek1 - http://www.karantanija.com/fckeditor/userslikce/Image/gramofon2_maxi.jpg

Rysunek2 - http://theblogjoint.com/wp-content/uploads/2006/06/ogg.jpg

Rysunek3 - http://kodeki-audio.info/250px-FLAC_logo.png

Rysunek4 - http://www.dbpoweramp.com/images/codec/wv.png

Rysunek5 - http://www.yoesie.com/store/pc/images/monkey-audio-logo.gif

str. 15



Wyszukiwarka

Podobne podstrony:

więcej podobnych podstron