Skip navigation.
Home
Jestem wesoły Romek (?) ...

Co można zrobić drogi Romku?

Takie niewinne pytanie zadał mi nasz znajomy Wojteczek, kiedy – pewnie nieświadomie – zdecydował się na zmontowanie swojej pierwszej składanki. Piszę „nieświadomie”, bo gdyby był świadom, szybko by ze zmontowania składanki zrezygnował.
Powiedzmy, że mamy 10 utworów z różnych płyt i chcemy je nagrać na składankową płytę, ale tak, żeby brzmiały mniej więcej tak samo głośno. Co można wtedy zrobić?

Normalizacja.

Czyli wyrównanie maksymalnej amplitudy sygnału w każdym utworze do pewnej ustalonej wartości.

  • To proste, bo robi to każdy program do edycji wav.
  • To trwa, bo polega na przetworzeniu wszystkich próbek wszystkich utworów.
  • To nie ma sensu, bo amplituda, to wyjaśniałem, nie decyduje o głośności. Nagrane z tą samą maksymalną amplitudą Love Me Tender boskiego Elvis’a będzie wielokrotnie głośniejsze (ucho najczulsze jest na głos z gitarą – to te najlepsze częstotliwości) od każdego utworu, np. Pizzarell’ego (bo tam maksymalną amplitudę daje nie głos a talerze perkusji i kontrabas, a tego akurat ucho ludzkie prawie nie słyszy).

RMS

Czyli wyrównanie wartości skutecznej sygnału w każdym utworze do pewnej ustalonej wartości.

  • To nie jest proste, bo znam tylko jeden program, który jest to w stanie zrobić – Cool Edit Pro.
  • To bardzo długo trwa, bo przed przetworzeniem wszystkich próbek wszystkich utworów, trzeba je najpierw przeanalizować, czyli obliczyć tę wartość skuteczną.
  • Ma sens, ale nie jest idealnym rozwiązaniem, bo RMS sam w sobie nie uwzględnia fizjologii. Wprawdzie Cool Edit odpowiednio modyfikuje RMS, ale niestety oblicza RMS z całego utworu i utwory o bardzo zmiennej głośności w czasie (na początku bardzo cicho, potem głośno) dają zafałszowany wynik. Utwór jest „niby” cichy a wcale tak nie jest.

Reply Gain.

Bingo! Kilka lat temu, taki sobie zwykły facet (David Robinson), nie żadna firma czy konsorcjum, wymyślił co z tym zrobić. Zaproponował standard, który się przyjął i – to najlepsze – działa, choć wcale nie jest to takie proste (żeby działało). Szczegóły można znaleźć na stronie Pana Davida a w skrócie wygląda to tak:

  • Analizujemy plik (dowolnego formatu) za pomocą sprytnego i szybkiego algorytmu otrzymując wartość RG - bardzo dobry odpowiednik „praktycznej” głośności.
  • Wartość tę porównujemy z poziomem odniesienia (np. 89dB, to się już przyjęło) i zapisujemy poziom odniesienia oraz różnicę. Gdzie? Otóż w części niemerytorycznej pliku dźwiękowego – każdy format takie miejsce ma. Programy do tego są różne, wszystkie darmowe a od formatu obrabianego pliku zależą pewne dodatkowe możliwości (np. w przypadku formatu mp3 i programu MP3Gain można zapisać informacje do „undo”).

Kiedy to przeczytałem, to się uśmiałem. Tak, jakiś nikomu nieznany facet, zapisze coś w pliku mp3 i teraz Winamp (np.) będzie ten mp3 odtwarzał ciszej? Wolne żarty!

I tu się ksiądz proboszcz ciulnął. Odtwarza ciszej.

No, no ale jak taki plik mp3 wciągnę do Nero, to co? Bez jaj, nagra na płytę CD ciszej? Otóż proszę Państwa nagra ciszej. A jak go najpierw przekonwertuję na wav, to co, będzie cichszy? Tak będzie cichszy!

No, ale to niemożliwe, żeby takie mp3 z zapisanym RG i nagrane na płytkę mój odtwarzacz samochodowy Blaupunkt odtwarzał ciszej! Możliwe! Odtwarzacz samochodowy Blaupunkt odtwarza je ciszej.

Sprawa niby beznadziejna okazała się dość prosta. W przypadku mp3 o odtwarzaniu decyduje kodek a nie program. Kodekiem, który już dawno opanował format mp3 jest, rozwijany na zasadzie „open source”, kodek Lame. To praktyczny standard i nikt się nie odważy napisać dziś programu do kodowania czy dekodowania z jego pominięciem. Źródła są dostępne i darmowe i trzeba samozaparcia Microsoftu, żeby udawać, że czegoś takiego nie ma. A Lame, otórz Lame już dawno włączył do kodu … Reply Gain. I widocznie nawet w „kościach” w odtwarzaczu Blaupunkt ten kosmiczny pomysł znalazł swe miejsce.