sobota, 23 kwietnia 2016

Jak kompresja mp3 wpływa na pliki dźwiękowe

Ludzie różnią się między sobą. Kolorem skóry, inteligencją, zdolnościami i wieloma jeszcze rzeczami. W zależności od tego można ich klasyfikować jako czarnych, białych, żółtych, zdolnych, mądrych, głupich itd.

Niewielu jednak ludzi wie, że istnieje specjalna rasa / gatunek człowieka zwana audiofilem. Jest on tworem, który można porównać do Supermana, X-mana, Y-mana, czy innego mana. Jego zdolnością charakterystyczną jest fakt słyszenia tego, czego normalny człowiek usłyszeć nie potrafi.
Taaaaak. Znane są przypadki, kiedy audiofil potrafił narzekać na pogorszenie jakości dźwięku wynikające z powstania supła na kablu od głośników, czy też słuchawek.

Mając na uwadze powyższe oraz wielokrotne twierdzenia, że wraz z kompresją mp3 pogarsza się jakość dźwięku, postanowiłem to sprawdzić.
Tylko nie pokazujcie tego tekstu audiofilowi, bo sama świadomość, że ktoś może słuchać empetrójek sprowadzi na niego niewyobrażalne cierpienia.

Testy przeprowadzane w dalszej części polegały na analizie kawałku Enter Sandman zespołu Metallica. W tym celu zgrałem z oryginalnej płyty ten kawałek i skompresowałem go do bezstratnego formatu Flac, aby potem, poprzez audacity, kompresować go do empetrójek ze stałym próbkowaniem:
  • 320kbps,
  • 190kbps,
  • 128kbps.
Przy kompresji ustawiony był parametr "połączone stereo".

Zacznijmy więc ;)

Porównanie widma w programie Cyberlink AudioDirector 5

Na sam początek zobaczmy czy widać różnicę pomiędzy plikami w analizie widma. 
Poniższe screeny można powiększyć klikając na nie. 

Kompresja Flac

Kompresja Flac
Kompresja Flac
Kompresja Flac jest tutaj punktem wyjściowym. Widać, że częstotliwości przekraczają poziom 20kHz, czyli teoretycznej górnej granicy słyszenia człowieka.


Kompresja mp3 320kbps

Kompresja mp3 z próbkowaniem 320kbps
Kompresja mp3 z próbkowaniem 320kbps
Pierwsza kompresja z najwyższą powszechnie używaną przepływnością wynoszącą 320kbps. Dużej różnicy w porównaniu do kompresji Flac nie widać, ale daje się zauważyć, że górne częstotliwości zostały obcięte przy 20kHz.


Kompresja mp3 192kbps

Kompresja mp3 z próbkowaniem 192kbps
Pliki mp3 z przepływnością 192kbps uznawane są za oferujące średni poziom jakości. Tutaj już widać, że nastąpiło ścięcie górnych częstotliwości do 19kHz i zrobienie niejako "grzebienia" w zakresie od 16kHz do 19kHz.

Kompresja mp3 128kbps

Kompresja mp3 z próbkowaniem 128kbps

Ostatnim poziomem powszechnie wykorzystywanym w empetrójkach jest przepływność128kbps. Na powyższym widmie widać wyraźnie, że częstotliwości powyżej 16kHz zostały całkowicie ścięte. 

Porównanie kompresji

W celu podsumowania powyższych widm pozwoliłem je sobie połączyć w jednej grafice oraz pokolorować, tak aby łatwiej było wyłapać różnicę pomiędzy nimi. 

Gdy są obok siebie, widać jeszcze wyraźniej jak obcinane są górne partie częstotliwości. 

Porównanie analiza widm przy różnych poziomach kompresji
Porównanie analiza widm przy różnych poziomach kompresji

Porównanie częstotliwościowe w Audacity

Postanowiłem sprawdzić, czy podobne wyniki osiągnę przy pomocy darmowego programu Audacity, który oferuje analizę częstotliwościową. Być może wynik działania nie wygląda tak efektownie jak powyżej zaprezentowane widma, ale jest za to bardziej czytelny.

W Audacity analizie nie podlega cały plik, ale pierwsze 237,8 sekundy.

Analiza częstotliwościowa pliku z kompresją mp3 320kbps
Analiza częstotliwościowa pliku z kompresją mp3 320kbps


Jak widzicie na powyższym screenie, jednym z przycisków można dokonać eksportu danych do pliku tekstowego. Postanowiłem, że zamiast umieszczania kolejnych wykresów jeden za drugim - jak w przypadku widma -  tutaj wyeksportuję dane do "ekscela" i tam je zwizualizuję na wykresie.

Wynik tego działania macie poniżej.


Wpływ kompresji mp3 na pliki dźwiękowe
Wpływ kompresji mp3 na pliki dźwiękowe

Na powyższym wykresie widać chyba najwyraźniej jakiej zmianie częstotliwościowej ulegają pliki w zależności od stopnia kompresji. 

Zielony kolor to plik kodowany formatem Flac i jego tutaj uznajemy za wzór dla kompresji mp3. 

Żółty kolor to kodowanie mp3 z próbkowaniem 320kbps. Tak jak na widmach we wcześniejszej części tekstu tak i tutaj daje się zauważyć, że odcinanie częstotliwości zaczyna się przy 20kHz. 

Z kolei kolor pomarańczowy, tj. kodowanie mp3 192kbps to odcinanie częstotliwości w granicach 19kHz, zaś kolor czerwony to kodowanie mp3 128kbps i tutaj także wykres pokrywa się z widmami zaprezentowanymi na początku tekstu, gdzie ścinane jest praktycznie wszystko ponad 16kHz. 

Rozmiary plików w zależności od użytego kodowania

Na koniec podam jeszcze jak prezentują się rozmiary plików w zależności od zastosowanego kodowania.

Porównanie rozmiarów pliku w zależności od kompresji
Lp. Kodowanie Rozmiar pliku
1 Flac 37,3MB
2 mp3 320kbps 12,6MB
4 mp3 192kbps 7,58MB
5 mp3 128kbps 5,05MB

Podsumowanie

Czy powyższy tekst odpowiedział na pytanie, czy można usłyszeć supeł na kablu od słuchawek? 

Nie. Nie odpowiedział.

Za to udało nam się zobaczyć w jaki sposób kompresja wpływa na dźwięk w plikach mp3. Ewidentnie obcinane są wyższe częstotliwości, a jak to będzie słyszane przez odbiorcę zależy od predyspozycji poszczególnych osób. 
Niektórzy powiedzą, że słyszą różnicę pomiędzy flackiem, a empetrójką z 320 kilobitową przepływnością, a inni mogą powiedzieć (zwłaszcza starsi), że nie słyszą różnicy pomiędzy flackiem, a empetrójką 128kbps.

Z czystej zapobiegliwości moglibyście więc stosować wszędzie flaki, lub mp3 320kbps, ale jak pokazałem w tabelce, nie ma róży bez kolców. Lepsza jakość to dużo większa różnica w rozmiarze pliku. 

Mając świadomość różnic w kompresji możecie teraz śmiało posłuchać różnego rodzaju muzyki z różnym kodowaniem i samemu sobie odpowiedzieć na pytanie - czy słyszę różnicę? 

Jeżeli tak, to Wasz dysk będzie cierpiał przechowując wszystko we flackach, a jeżeli nie słyszycie różnicy to znajdźcie sobie odpowiedni poziom mp3 i w nim kodujcie swoją muzykę.


Mam nadzieję, że chociaż trochę udało mi się zaspokoić Waszą ciekawość w tym zakresie, bo moja troszkę została zaspokojona. 

Pozdrawiam Was serdecznie i do następnego wpisu :)

6 komentarzy:

  1. Przyczepiłbym się do dwóch rzeczy :) Próbkowanie - ten termin zawsze dotyczył częstotliwości. Mówiąc o kbps'ach użyłbym słowa bitrate. Albo jakiegoś polskiego łamańca w rodzaju przepływność. Co do samej kompresji i jej wpływu na jakość - generalnie zgoda, niski bitrate znacząco pogarsza jakość. Natomiast bardzo wiele zależy od materiału źródłowego. Metal to dużo górnych częstotliwości - talerze w perkusji, przesterowane gitary. Tutaj obcinanie słychać bardzo wyraźnie. Ale już jakiś materiał akustyczny, z bardziej wyeksponowanym wokalem (czyli środek częstotliwości) śmiem twierdzić, że zabrzmi dużo lepiej przy niskim bitrate. Zniekształcenia będą mniej słyszalne, nie będzie tych charakterystycznych dzwoneczków w górnym paśmie. Tak na marginesie to osobiście preferuję format MPC. Moim skromnym uchem wydaje mi się, że brzmi dużo lepiej niż MP3, nie dzwoni tak wyraźnie, przy 192 kbit jest naprawdę znośnie. Minus jest taki, że nie wszystkie urządzenia go obsługują.
    Pozdrawiam!

    OdpowiedzUsuń
    Odpowiedzi
    1. No cześć Szatanie ;)

      Cieszę się, że zaglądnąłeś ;)
      Masz rację co do próbkowania. Oznacza ono częstotliwość próbek, np. 44,1kHz przy płytach CD, a nie bitrate.
      MPC - o tym formacie nawet nie słyszałem. Będę się musiał dokształcić.

      Co do kompresji. Nie porównywałem brzmienia poszczególnych kawałków, ale co do zasady masz pewnie rację. Przynajmniej sądząc z analiz widma wynika, że najbardziej cierpi "góra". Należy jednakże pamiętać, że mp3 powoduje też ścinanie częstotliwości - hmm jak to nazwać - które są w danym momencie niesłyszalne. Np. gdy gra mocna perkusja, to wokale też mogą być zagłuszane i wtedy kompresja mp3 je wytnie. A jaki to ma wpływ na ogólny odbiór? Jeden to usłyszy, inny nie.

      Ogólnie myślę, że jeżeli ktoś lubi dużo muzyki słuchać to powinien dobrać kompresję pod siebie i już. W końcu chodzi o to, aby odbiorca był zadowolony ;)

      Pozdrawiam serdecznie i zachęcam do kolejnych odwiedzin :)
      Daniel.

      Ps. A jeżeli mogę to i ja się do czegoś przyczepię. Tylko do jednej rzeczy. Takiej małej, malusieńkiej.
      Kiepski z Ciebie Szatan, bo pomyliłeś trzecią cyferkę w swoim numerku ;) No chyba, że była już zajęta przez innego Szatana :)

      Usuń
  2. Miałeś rację Danielu - zainteresowałeś mnie tematem o kompresji ;)
    Mianowicie:
    1. Flac to kompresja stratna - każda kompresja jest stratna.
    2. Jako materiału który jest traktowany jako punkt odniesienia powineneś zastosować zgrany materiał bez kompresji - czyli np WAV.
    3. Audiofil zdecydowanie nie usłyszy supła na kablu. Żeby go usłyszał, musiałby mieć kilkadziesiąt zwoi i rdzeń z ferromagnetyka wewnątrz ;)

    OdpowiedzUsuń
    Odpowiedzi
    1. Cześć ;)

      Dzięki, że zaglądnąłeś ;)
      Ad. 1 - Chyba jednak Flac jest bezstratną kompresją. Przynajmniej wg wikipedii. Z tego co się orientuję to działa coś na zasadzie "pakera" (rar, zip, 7zip, itp.) - ale tego nie jestem pewien.
      Ad. 2 - Tutaj masz rację, ale na chwilę pisania tekstu zapodziałem gdzieś płytę i korzystałem z dźwięku, który miałem na kompie.
      Ad 3. - Tutaj Ty jesteś ekspertem, więc skoro tak twierdzić to nie pozostaje mi nic innego niż tylko przytaknąć:)

      Usuń
  3. Zaciekawiłeś mnie tymi artykułami - poczekam na recenzję UPS-a ;)
    Co do flaca - nie będę się spierał, bo nie zgłębiłem tego tematu, choć jednak jeśli działa jak "paker" to w porządku.
    Ad 3 - to jest właśnie ten temat o którym rozmawialiśmy u mnie. Taki kabel musiałby mieć na tyle dużą długość, aby wyszedł z niego kondensator o odpowiednio dużej pojemności. Wtedy bardzo ładnie zacznie przycinać pasmo akustyczne od góry.

    OdpowiedzUsuń
  4. Dobrze wyjaśnione o co chodzi z tymi częstotliwościami kodowania. Szukałem o tym info na różnych stronach a tutaj najlepiej jest to opisane.

    OdpowiedzUsuń

Bardzo proszę o zachowanie netykiety.