Dźwięk

Wprowadzenie

To, co nazywamy "dźwiękiem", to w rzeczywistości fale zmian ciśnienia powietrza rozchodzące się w przestrzeni a rejestrowane na membranie bębenka u człowieka.

Opisywany następującymi parametrami:
  • Ton: częstotliwość dźwięku
  • Głośność: amplituda fali dźwiękowej
  • Tembr : typ dźwięku

Przeciętnie ludzkie ucho słyszy częstotliwości pomiędzy 20 Hz a 15 kHz rozróżniając zmiany na poziomie 1,5 Hz w dolnej części przedziału częstotliwości.

Ciekawy opis można znaleźć tutaj: http://blog.khron.net/2007/08/20/ludzki_sluch_czestotliwosc_dynamika/

Czy nasze zmysły są logarytmiczne?

Kto pamięta logarytm?
(1)
\begin{align} y = \log _b \left( x \right){\rm{ \Leftrightarrow }}x = b^y \end{align}
(2)
\begin{align} \log \left( 1 \right) = \end{align}
(3)
\begin{align} \log \left(10 \right) = \end{align}
(4)
\begin{align} \log \left( 100 \right) = \end{align}
(5)
\begin{align} \log \left(1000\right) = \end{align}

Co to jest skala logarytmiczna?

Ludzie reagują na różne bodźce zewnętrzne zgodnie z prawem Webera-Fechnera
http://pl.wikipedia.org/wiki/Prawo_Webera-Fechnera

Wartość reakcji układu biologicznego jest proporcjonalna do logarytmu bodźca.

Tak więc ocena głośności dźwięku zależy od logarytmu ciśnienia akustycznego na membranie bębenka, zaś ocena jasności światła zależy od logarytmu strumienia światła mierzonego na powierzchni oka. Właśnie z powodu stosowalności prawa Webera-Fechnera w pomiarze głośności dźwięków stosuje się jednostki ilorazowe jak bel i jego podwielokrotności.

… Inną konsekwencją prawa Webera-Fechnera jest fakt, że aby uzyskać liniową skalę, np. w pokrętle głośności radia (dwa razy dalsza pozycja daje dwa razy głośniejszy dźwięk), należy stosować potencjometr logarytmiczny.

600px-LogLinScale.png

Warto zobaczyć: http://pl.wikipedia.org/wiki/Decybel

Spektogram

http://en.wikipedia.org/wiki/Spectrogram

Wykres, który pokazuje jak częstotliwość dźwięku zmienia się w czasie.

Spróbuj odtworzyć dźwięki i zobaczyć spektogram:
http://www.xeno-canto.org/halloffame.php

jak będzie wyglądał spektogram dźwięku o stałej częstotliwości?

Rejestrowanie dźwięku na nośniku cyfrowym

Podczas nagrywania na nośnik elektroniczny zmienność fali ciśnienia jest próbkowana z dużą częstotliwością i zapisywana w postaci liczby. Jakość i rozdzielczość dygitalizowanego dźwięku zależy od kilku czynników:

  • Przede wszystkim od jakości oryginalnego dźwięku
  • Ilości próbek na sekundę -> częstotliwość próbkowania, opisywana w kHz czyli tysiącach próbek na sekundę.
  • Zakresu liczby, która opisuje każdy pomiar -> rozdzielczość przypadająca na próbkę. Im większa wartość, tym lepiej można reprezentować dźwięk.

Standard Red Book określa, że płyta Audio CD powinna być nagrana z częstotliwością próbkowania 44,1 kHz i rozdzielczością bitową 16 bitów na próbkę.

Kodeki

Taki sposób zapisu powoduję dosyć duże rozmiary plików. Dlatego stosuje się różne sposoby kompresji dźwięku. Kodekiem nazywa się zarówno program, który służy do cyfrowego zapisu dźwięku, jak i algorytm do tego służący.

Dwa główne rodzaje kompresji plików dźwiękowych to(podobnie jak plików graficznych):

  • kompresja stratna
  • kompresja bezstratna

Nie istnieją dobre metody kompresji, które można by zastosować do dowolnego rodzaju danych, tak więc również do dźwięku wynaleziono specyficzne sposoby kompresji, które dają dużo lepsze wyniki niż ogólne metody. Na przykład pliki muzyczne które przy pomocy ZIP'a (ogólna metoda kompresji bezstratnej) można pomniejszyć do ok. 85% oryginalnego rozmiaru, przy pomocy odpowiednich algorytmów można pomniejszyć do ok 25% oryginalnego rozmiaru. Zastosowanie kompresji stratnej pozwala zmniejszyć rozmiar nawet do ok 10% bez słyszalnej straty. Płyta CD (700MB) skompresowana do MP3 w dobrej jakości zajmuje zwykle ok 70 MB.

Kodeki bezstratne

Ważną cechą kodeków bezstratnych jest to, że pozwalają na edycje bez straty jakości.

  • Free Lossless Audio Codec -> w skrócie FLAC, open source i nie objęty patentami zwykle zmniejsza objętości muzyki 40 to 50 procent. Umożliwia załączanie okładek i szybkie wyszukiwanie.
  • Monkey’s Audio -> rozszerzenie .ape oraz .apl dla metadanych, kompresuje pliki do 1/2 - 1/4 oryginalnego rozmiaru, oficjalny klient istnieje tylko dla Windows'a, brak możliwości odtwarzania na player'ach, wolne wyszukiwanie.

Istnieją rownież bezstratne odmiany popularnych kodeków stratnych, np WMA Lossless. Inne są stosunkowo rzadko spotykane. Szczegółowe porównanie:
http://wiki.hydrogenaudio.org/index.php?title=Lossless_comparison

Kodeki stratne

Kodeki usuwające część informacji z oryginalnego źródła. W celu zminimalizowania negatywnych efektów wykorzystywane są modele psychoakustyczne wykorzystujące charakterystykę ludzkiego ucha oraz mózgu. Model psychoakustyczny określa, które części sygnału cyfrowego mogą być bezpiecznie usunięte albo agresywnie skompresowane bez znaczących różnic w słyszalnej jakości dzwięku. Przykładami może być cichy dźwięk występujący wraz z głośnym tłem albo dźwięki spoza zakresu częstotliwości słyszalnych przez ludzkie ucho.

  • MPEG I Layer 3 -> czyli popularne MP3, zdecydowanie najpopularniejszy, obłożony patentami, jednak sytuacja prawna jest na tyle skomplikowana, ze nikt nie występuje z żądaniami
  • AAC -> pomyślany jako efektywniejszy następca MP3, różnica najbardziej widoczna w przypadku agresywniejszej kompresji, szerszy zakres obsługiwanych częstotliwości próbkowania, najbardziej znany z używania go przez iPody oraz iTunes Store
  • Vorbis -> darmowy i opensourcowy, jego powstanie zainicjował list od Instytutu Frauenhoffer'a, ktory zapowiadał pobieranie opłat za stosowanie formatu MP3
  • WMA -> format wymyślony przez Microsoft,
  • Musepack -> .mpc, opensourceowy

Kontenery

Informacje dźwiękowe często występują w ramach kontenerów, czyli formatów plików zawierających kilka rodzajów danych. Proste typy kontenerów mogą zawierać na przykład kilka rodzajów kodeków, a bardziej zaawansowane mogą zawierać wiele strumieni dźwięku i obrazu, podpisy, informacje o rozdziałach, metadane oraz informacje potrzebne do synchronizacji poszczególnych strumieni. Najczęściej kontener nie specyfikuje typów kodeków, służacych do zakodowania informacji. Przykładowy kodek przeznaczony tylko do danych dźwiękowych to:

  • Waveform -> czyli wav

Kontenery, które mogą zawierać zarówno dane dźwiękowe, jak i innego typu:

  • Matroska -> .MKA
  • QuickTime -> .mov
  • RealMedia ->.rm
  • Video Object -> .vob stosowany na płytach DVD
  • Audio Video Interleave -> .avi
  • Ogg -> .ogg ;)
  • Advanced Systems Format -> .asf
  • MPEG-4 Part 14 -> .mp4

Dodatkowe informacje

  • Istnieją kodeki dostosowane do specjalnych zastosowań:
    • do przesyłania dźwięku strumieniowo -> np RealMedia
    • do przesyłania mowy przy pomocy Voice over IP -> np. Speex; protokół Skype'a
    • do przesyłania mowy w sieciach telefonicznych -> np. Enhanced Full Rate (EFR), Adaptive Multi-Rate (AMR), G.711
    • wykorzystywana w kinach i kinach domowych rodzina Dolby
    • a także inne np. popularny w stacjach radiowych mp2
  • Przy opracowywaniu formatu MP3 do badania wpływu kompresji na jakość dźwięku stosowano utwór Susane Vegi Tom's Dinner
  • Przykładowa tabela opłat za wykorzystywanie opatentowanego formatu
  • do plików muzycznych dołączane są czasami rozszerzenia mające chronić prawa autorskie

Przykładowe pliki: .wav ze strony: http://marine.rutgers.edu/leophone/Example%20Wav%20files.htm
Dolphin.wav
July_fish.wav

Zadanie

Nagraj z dowolnego źródła(np. mikrofon) krótki (1-3 min), zróżnicowany:

  • zagwiżdż przez kilka sekund (wymagane)
  • nagraj swój głos (wymagane)
  • inne dźwięki (frament piosenki z radia on-line, etc.) do nieskompresowanego pliku dźwiękowego.
  1. Skompresuj używając do tego kodeka FLAC, MP3 lub jednego wybranego, innego kodeka stratnego (np. Ogg Vorbis, AAC lub WMA). Porównaj jakość (subiektywnie) i rozmiary plików.
  1. Używając dowolnego programu do obróbki dźwięku (np. Audacity, patrz link poniżej) otwórz wszystkie pliki, wykreśl spektogram. W raporcie zawrzyj wykres nagranego gwizdu oraz głosu ludzkiego. Porównaj te wykresy, opisz co je różni,
  1. W Audacity zastosuj na pliku MP3 wybrane efekty i zmiksuj go z innym wybranym przez siebie plikiem dźwiękowym.

Spróbuj znaleźć takie ustawienia kompresji MP3 i drugiego kodeka stratnego przy którym słychać wyraźne artefakty.

Całość opisz w krótkim raporcie (1-2 strony A4). Plik skompresowany przy pomocy kodeków stratnych proszę przysłać w mailu w raporcie odnieść się do nazwy tych plików.

Deadline: 23.01.2009 godz. 23:59 (noc z piątku na sobotę) maks. punktów: 3

Linux:
Uruchomic Aplikacje|Akcesoria|Terminal i wydac polecenie:
edytor dźwięku:

sudo aptitude install audacity lub sudo aptitude install jokosher

program do konwersji:

sudo aptitude install soundconverter

rejestrator dźwięku: gnome-sound-recorder -> zainstalowany domyślnie

Windows:
edytor dźwięku: http://audacity.sourceforge.net/
program do konwersji: http://www.nch.com.au/switch/index.html
rejestrator dźwięku: Programy|Akcesoria|Rozrywka|Rejestrator dźwięku (zainstalowany domyślnie)
w razie braku dźwięku z mikrofonu należy sprawdzić głośność nagrywania ->Ustawienia|Panel sterowania|Dźwięk i …|Dźwięk|Głośność i wypróbować inne gniazda mikrofonu/słuchawek o ile takie występują w komputerze.

W przypadku braku Javy na komputerze z Linuksem należy uruchomić Aplikacje|Akcesoria|Terminal i wydać polecenie:

sudo aptitude install sun-java6-plugin

Przykładowe pliki:

http://kck.wikidot.com/local--files/zajecia:10:dzwiek/July_fish.wav
http://kck.wikidot.com/local--files/zajecia:10:dzwiek/Dolphin.wav

Strona na licencji Creative Commons Attribution-ShareAlike 3.0. Autorzy: A. Czoska, M. Komosiński, B. Kowalczyk, A. Kupś, M. Lubawy