LW IT Solutions
« Blog Overview /Music Production / Odszumianie w afftdn i anlmdn: który regulator...
This post in other languages:

Odszumianie w afftdn i anlmdn: który regulator działa i od jakiego poziomu szumu się opłaca, pomiar

Odszumianie w afftdn i anlmdn: który regulator działa i od jakiego poziomu szumu się opłaca, pomiar
Spis treści
  1. Jak wyglądał pomiar
  2. Co znika, gdy nie ma czego usuwać
  3. Który z dwóch regulatorów działa
  4. Od jakiego odstępu się opłaca
  5. Gdzie filtr sięga
  6. Co z tego wynika
  7. Zakres i granice
  8. Pytania i odpowiedzi
  9. Źródła

ffmpeg przynosi dwa filtry odszumiające. afftdn pracuje przez szybką transformatę Fouriera i ma dwa regulatory: redukcję szumu, domyślnie 12, oraz poziom szumu, domyślnie −50 dBFS. anlmdn pracuje metodą nielokalnych średnich i ma jeden regulator siły.

Zwykła próba, posłuchać raz przed i raz po, nie odpowiada na najważniejsze pytanie: w zaszumionym materiale sygnał użyteczny i szum leżą jeden na drugim, a tego, co znika, nie da się rozdzielić. Ten pomiar rozdziela oba, przepuszczając filtr przez czysty materiał, w którym nie ma czego usuwać.

Diagram z dwóch części. Po lewej wobec ustawionego poziomu szumu od −70 do −30 dBFS dwie linie: zmiana odstępu od czystego oryginału rośnie z 0,55 do 21,23 dB, a szkoda na czystym materiale z −48,71 do −18,78 dB, wraz z przerywanym znacznikiem przy rzeczywistym poziomie −59,6 dBFS. Po prawej najlepszy możliwy wynik dla siedmiu odstępów od szumu, od −60 do −6 dB, opadający od −0,04 do −7,42 dB, z poziomą linią przy zerze. Poniżej cztery wielkości
Działanie regulatora poziomu szumu oraz najlepszy możliwy wynik wobec odstępu od szumu.

Jak wyglądał pomiar

  • Materiał: 32 s muzyki ze stopy, werbla, hi-hatów, basu, płaszczyzny i leadu przy −19,62 dBFS, na końcu 0,3 s ciszy. Biały szum został domieszany na znanym poziomie, żeby błąd dał się policzyć.
  • Miara: wszędzie odstęp od znanego czystego oryginału, czyli wartość skuteczna różnicy między wynikiem a oryginałem, odniesiona do wartości skutecznej oryginału. Przed odszumianiem jest to dokładnie odstęp od szumu. Gdy maleje, filtr pomógł; gdy rośnie, zniszczył więcej, niż usunął.
  • Szkoda: ten sam filtr przechodzi dodatkowo przez czysty materiał. Tam nie ma czego usuwać, więc wszystko, czego brakuje na wyjściu, jest szkodą.
  • Wyrównanie: oba filtry wydają wynik z opóźnieniem, afftdn o 1102 próbki, czyli 24,99 ms, a anlmdn o 353, czyli 8,00 ms. Przed każdym porównaniem następuje wyrównanie przez korelację wzajemną.
  • Próba kontrolna: oba filtry potrafią wydać to, co usunęły, przez output_mode=noise. Ta wartość zgadza się ze zmierzoną różnicą co do 0,00 dB, w obu filtrach.

Co znika, gdy nie ma czego usuwać

Ustawienie Szkoda pod sygnałem Zmiana poziomu
afftdn, nr 6, nf −50 −43,29 dB −0,00 dB
afftdn, domyślnie nr 12, nf −50 −42,19 dB −0,00 dB
afftdn, nr 24, nf −50 −41,67 dB −0,00 dB
afftdn, nr 48, nf −40 −26,16 dB −0,05 dB
anlmdn, s 0,001 −151,94 dB 0,00 dB
anlmdn, s 0,01 −105,77 dB −0,00 dB
anlmdn, s 0,1 −67,83 dB −0,00 dB

Poziom się nie zmienia, substancja owszem. W ustawieniu domyślnym afftdn zabiera z nienagannego materiału coś, co leży 42,19 dB pod sygnałem. Przy nf −40 jest to 26,16 dB pod nim, a taki rząd wielkości już słychać. anlmdn przy małych siłach zostaje na −105 dB i niżej, czyli praktycznie nie działa.

Który z dwóch regulatorów działa

Zmieniany regulator Wartość Zmiana odstępu Szkoda
redukcja szumu, nf stałe −50 nr 3 +0,38 dB −45,28 dB
redukcja szumu, nf stałe −50 nr 12 +1,16 dB −42,19 dB
redukcja szumu, nf stałe −50 nr 48 +1,50 dB −41,49 dB
redukcja szumu, nf stałe −50 nr 90 +1,50 dB −41,48 dB
poziom szumu, nr stałe 12 nf −70 +0,55 dB −48,71 dB
poziom szumu, nr stałe 12 nf −55 +0,32 dB −47,72 dB
poziom szumu, nr stałe 12 nf −45 +6,74 dB −33,70 dB
poziom szumu, nr stałe 12 nf −40 +13,25 dB −26,80 dB
poziom szumu, nr stałe 12 nf −30 +21,23 dB −18,78 dB

Obie serie biegną po tym samym materiale z szumem 40 dB pod sygnałem, czyli po rzeczywistym poziomie szumu −59,6 dBFS. Wartość dodatnia w trzeciej kolumnie oznacza, że odstęp od czystego oryginału urósł.

Redukcja szumu zmienia w całym swoim zakresie 1,13 dB i od nr 48 wchodzi w nasycenie. Poziom szumu zmienia 20,91 dB. Kręcenie pierwszym regulatorem jest kręceniem niczym.

Uwagę zwraca druga część tabeli: od nf −45 skutek i szkoda rosną niemal równo. Od −45 do −30 zmiana rośnie o 14,49 dB, a szkoda o 14,92 dB. Przy nf −30 szum znika bez reszty, a to, co zostaje z błędu, czyli −18,78 dB, to dokładnie własna szkoda filtru.

Od jakiego odstępu się opłaca

Szum pod sygnałem Rzeczywisty poziom szumu Najlepsze nf Najlepsza możliwa zmiana
60 dB −79,6 dBFS −70 dBFS −0,04 dB
50 dB −69,6 dBFS −60 dBFS −0,04 dB
40 dB −59,6 dBFS −55 dBFS −0,15 dB
30 dB −49,6 dBFS −50 dBFS −1,03 dB
20 dB −39,6 dBFS −40 dBFS −2,87 dB
12 dB −31,6 dBFS −30 dBFS −4,75 dB
6 dB −25,6 dBFS −25 dBFS −7,42 dB

W każdym wierszu przebadano 23 ustawienia i wpisano najlepsze. Rzucają się w oczy dwie rzeczy.

Po pierwsze, najlepsze ustawienie idzie za rzeczywistym poziomem szumu. W czterech wierszach, w których odszumianie cokolwiek daje, najlepsze nf leży między 0,4 dB pod nim a 1,6 dB nad nim. Regulator nazywa się tak, jak to, czego chce: poziomu szumu, a nie upodobania. Domyślne −50 dBFS pasuje do materiału, którego szum leży przy −50 dBFS, i do żadnego innego.

Po drugie, przy czystym materiale nie ma czego zyskiwać. Przy odstępie 50 dB najlepsze ze wszystkich ustawień daje 0,04 dB, przy 40 dB jest to 0,15 dB, a w obu przypadkach wynik pochodzi od anlmdn przy sile, która praktycznie nic nie robi. Dopiero od 30 dB robi się z tego 1,03 dB, a nawet przy 6 dB, czyli przy wyraźnie słyszalnym szumie, jest to 7,42 dB.

Gdzie filtr sięga

Pasmo tercjowe afftdn, domyślnie anlmdn, s 0,01
63 Hz −127,02 dB −155,92 dB
250 Hz −130,46 dB −140,91 dB
1 kHz −85,79 dB −114,97 dB
2 kHz −46,84 dB −104,29 dB
4 kHz −32,70 dB −95,24 dB
8 kHz −27,10 dB −90,93 dB
10 kHz −23,26 dB −87,18 dB
16 kHz −29,78 dB −91,77 dB

Liczby mówią, jak głęboko pod sygnałem tego samego pasma leży ingerencja w tym paśmie, mierzona na czystym materiale. Poniżej 500 Hz afftdn nie rusza niczego, stoją tam wartości od 115 do 130 dB. Od 2 kHz robi się poważnie, a najmocniej filtr sięga przy 10 kHz, 23,26 dB pod sygnałem. Odszumianie to sprawa wysokich tonów.

Wybrzmienie w ustawieniu domyślnym zostaje oszczędzone. Pojedyncze uderzenie hi-hatu traci 50, 100 i 200 ms po szczycie po 0,00 dB, a po 400 ms 0,35 dB. Przy nf −40 i nr 48 jest to po 200 ms 0,27 dB, a po 400 ms 7,71 dB. Ogon zostaje więc skrócony, ale dopiero przy mocnym ustawieniu.

I jest jeszcze pauza. W ciszy na końcu afftdn w ustawieniu domyślnym obniża poziom szumu o 10,52 dB, przy nr 48 o 19,98 dB, a anlmdn o 26,06 do 28,02 dB. Kto słucha tylko tam, uzna anlmdn za najlepszego z kandydatów. W samej muzyce zmienia on 0,04 dB. Pauza to jedyne miejsce, w którym szum leży odsłonięty, i właśnie dlatego nic nie mówi o tym, co stało się z resztą.

Co z tego wynika

Poziom szumu należy zmierzyć, a nie zgadnąć. Fragment bez sygnału użytecznego, którego poziom zostaje odczytany w dBFS, daje wartość dla nf; miernik szumu tła wyszukuje takie miejsce i podaje wartość razem z poleceniem. Audacity idzie tą drogą z własnej woli i przed odszumianiem żąda profilu szumu z miejsca, w którym stoi sam szum. ffmpeg żąda zamiast tego liczby, a zła liczba to cała różnica.

Potem redukcja szumu zostaje tam, gdzie stoi. Daje ona w całym swoim zakresie 1,13 dB, podczas gdy regulator poziomu daje 20,91 dB, a od pewnego punktu każdy z tych decybeli jest opłacony decybelem szkody.

Przy porządnie nagranym materiale sięganie po to narzędzie w ogóle się nie opłaca. Od 40 dB odstępu wzwyż najlepszy możliwy zysk to najwyżej 0,15 dB, a nastawianie na to narzędzia, które w wysokich tonach sięga 23 dB pod sygnał, to kiepska wymiana. Tam, gdzie poziom szumu przeszkadza, nie będąc głośnym, tematem bywa nie szum, lecz rozdzielczość bitowa; co naprawdę dzieje się przy eksporcie do 16 bitów, opisuje artykuł o ditherze przy eksporcie.

Zakres i granice

  • Pomiar powstał na białym szumie. Przydźwięk, szum taśmy i tło pomieszczenia rozkładają się inaczej; afftdn ma własne nastawy dla winylu i szelaku, których tu nie badano.
  • Miarą jest odstęp od czystego oryginału, a nie wrażenie słuchowe. Filtr może ten odstęp pogorszyć i mimo to brzmieć przyjemniej, bo równomierny szum przeszkadza mniej niż równie duży, ale nierównomierny błąd.
  • Najlepsze nf szukano w siatce dziesięciu wartości co 5 dB. Zgodność z rzeczywistym poziomem jest więc dokładna co do tego kroku.
  • Przy odstępach 50 i 60 dB rzeczywisty poziom leży poniżej najmniejszego badanego nf. Ponieważ i tak nie ma tam czego zyskiwać, nie zmienia to wyniku.

Pytania i odpowiedzi

Co powoduje opóźnienie o 25 ms, gdy odszumiona ścieżka wraca do miksu?

W pomiarze afftdn wydawał wynik z opóźnieniem o 1102 próbki, czyli 24,99 ms, a anlmdn o 353 próbki, czyli 8,00 ms. Plik przetworzony w ten sposób i położony obok pozostałych ścieżek jest spóźniony dokładnie o tyle. Przy pojedynczej ścieżce, na przykład nagraniu wokalu, cała ścieżka przesuwa się tylko w czasie; przy ścieżkach ze sobą powiązanych, choćby kilku mikrofonach przy tej samej perkusji, powstaje przesunięcie między sygnałami, które powinny się pokrywać.

Najwyraźniej widać to przy równoległym miksowaniu z nieprzetworzonym oryginałem, po które przy odszumianiu łatwo sięgnąć, żeby złagodzić ingerencję. Suma sygnału i jego kopii opóźnionej o 25 ms to filtr grzebieniowy z dołkami co 40 Hz, czyli dokładnie to zabarwienie brzmienia, którego złagodzenie miało pozwolić uniknąć.

Przed zmiksowaniem przesunięcie należy więc wyrównać, na przykład odcinając pierwsze 1102 próbki. Ta liczba dotyczy częstotliwości próbkowania tego pomiaru, czyli 44,1 kHz, jak wynika z 1102 próbek w 24,99 ms; przy innej częstotliwości próbkowania albo innych ustawieniach filtra trzeba ją wyznaczyć ponownie przez korelację wzajemną, tak jak pomiar robił to przed każdym porównaniem.

Czy właściwą wartość nf da się wyliczyć z odstępu od szumu?

Tak, jeśli znany jest poziom materiału. Regulator oczekuje rzeczywistego poziomu szumu, a ten wynika z poziomu materiału pomniejszonego o odstęp od szumu: dla materiału z tego pomiaru, przy −19,62 dBFS, odstęp 30 dB daje −49,62 dBFS, i dokładnie tam, przy −50 dBFS, leżało najlepsze nf. Zwykle jednak odstęp nie jest znany, dlatego pewniejsza droga prowadzi przez fragment bez sygnału użytecznego.

Źródła

Lukas Wojcik

Lukas Wojcik

Systems architect and technology enthusiast specializing in scalable tracking solutions, GMP Stack (GA4 & GTM), and robust backend architectures. Advocate for clean code and privacy-first design.

Get in Touch

Briefly describe your project or inquiry for a tailored response. This site is protected by reCAPTCHA.

Napisanie komentarza

Doświadczenia z innymi programami DAW i wtyczkami, odmienne wyniki pomiarów oraz pytania są tu mile widziane.

Adres e-mail nie jest publikowany. Pola obowiązkowe oznaczono gwiazdką.

ALL ARTICLES & CATEGORIES

CCTV

Śledź tę kategorię przez RSS

Cloud & AI

Śledź tę kategorię przez RSS

Data Privacy

Wszystkie artykuły w tej kategorii (14) Śledź tę kategorię przez RSS

Digital Analytics

Wszystkie artykuły w tej kategorii (50) Śledź tę kategorię przez RSS

Digital Marketing

Wszystkie artykuły w tej kategorii (34) Śledź tę kategorię przez RSS

IT & Networks

Wszystkie artykuły w tej kategorii (17) Śledź tę kategorię przez RSS

Music Production

Wszystkie artykuły w tej kategorii (11) Śledź tę kategorię przez RSS

Raspberry Pi

Śledź tę kategorię przez RSS

Smart Home

Wszystkie artykuły w tej kategorii (18) Śledź tę kategorię przez RSS

Tworzenie stron internetowych

Śledź tę kategorię przez RSS

Wtyczki i triki WordPress

Śledź tę kategorię przez RSS