DZWON

Są tacy, którzy czytają te wiadomości przed tobą.
Subskrybuj, aby otrzymywać świeże artykuły.
E-mail
Imię
Nazwisko
Jak chcesz przeczytać Dzwon
Bez spamu

Poziom dźwięku jest taki sam w całej kompozycji, jest kilka pauz.

Zwężenie zakresu dynamicznego

Zawężenie zakresu dynamicznego lub po prostu kompresjaniezbędne do różnych celów, najczęstsze z nich:

1) Osiągnięcie jednolitego poziomu głośności w całej kompozycji (lub części instrumentu).

2) Osiągnięcie jednolitego poziomu głośności utworów w całym albumie / transmisji radiowej.

2) Poprawa zrozumiałości, głównie podczas kompresji określonej części (wokal, bęben basowy).

Jak dochodzi do zawężenia zakresu dynamicznego?

Kompresor analizuje poziom dźwięku na wejściu, porównując go z wartością progową zdefiniowaną przez użytkownika.

Jeśli poziom sygnału jest niższy niż Próg - następnie kompresor kontynuuje analizę dźwięku bez jego zmiany. Jeśli poziom dźwięku przekroczy wartość progową, wówczas sprężarka rozpocznie działanie. Ponieważ rolą kompresora jest zawężenie zakresu dynamicznego, logiczne jest założenie, że ogranicza on największe i najmniejsze wartości amplitudy (poziomu sygnału). W pierwszym etapie największe wartości są ograniczone, które zmniejszają się z pewną siłą, która jest nazywana Stosunek (Nastawienie). Spójrzmy na przykład:

Zielone krzywe pokazują poziom dźwięku, im większa amplituda ich oscylacji od osi X - tym wyższy poziom sygnału.

Żółta linia to próg sprężarki. Zwiększając wartość progową, użytkownik przesuwa ją od osi X. Zmniejszając wartość progową, użytkownik przesuwa ją bliżej osi Y. Oczywiste jest, że im niższa wartość progowa, tym częściej sprężarka będzie działać i odwrotnie, im wyższa, tym mniej. Jeśli wartość współczynnika jest bardzo duża, to po osiągnięciu poziomu sygnału progowego, cały kolejny sygnał zostanie wyciszony przez sprężarkę w celu wyciszenia. Jeśli wartość współczynnika jest bardzo mała, nic się nie stanie. Próg i stosunek zostaną omówione później. Teraz powinniśmy zadać sobie następujące pytanie: Jaki jest sens tłumienia wszystkich kolejnych dźwięków? Rzeczywiście, nie ma to sensu, musimy jedynie pozbyć się wartości amplitud (szczytów), które przekraczają wartość progową (zaznaczoną na czerwono na wykresie). Parametr istnieje w celu rozwiązania tego problemu Wydanie (Tłumienie), który określa czas trwania kompresji.

Przykład pokazuje, że pierwszy i drugi przekroczył próg trwają krócej niż trzeci przekroczył próg. Tak więc, jeśli ustawisz parametr Release na pierwsze dwa szczyty, wówczas przetwarzanie trzeciego może pozostawić nieprzetworzoną część (ponieważ przekroczenie progu progowego trwa dłużej). Jeśli parametr Release ustawiony jest na trzeci pik, wówczas podczas przetwarzania pierwszego i drugiego piku powstaje niepożądany spadek poziomu sygnału.

To samo dotyczy parametru Ratio. Jeśli parametr Stosunek zostanie dostosowany do pierwszych dwóch pików, trzeci nie zostanie wystarczająco stłumiony. Jeśli parametr Stosunek jest ustawiony na przetwarzanie trzeciego piku, wówczas przetwarzanie pierwszych dwóch pików będzie zbyt wysokie.

Problemy te można rozwiązać na dwa sposoby:

1) Ustawiając parametr ataku (Atak) - częściowe rozwiązanie.

2) Kompresja dynamiczna - kompletne rozwiązanie.

Parametr itaki (Attack)ma on na celu ustawienie czasu, po którym sprężarka rozpocznie pracę po przekroczeniu progu Próg. Jeśli parametr jest bliski zeru (równy zeru w przypadku kompresji równoległej, patrz odpowiedni artykuł), wówczas kompresor zacznie natychmiast tłumić sygnał, a czas określony przez parametr Release zadziała. Jeśli prędkość ataku jest wysoka, kompresor zacznie działać po pewnym czasie (jest to konieczne, aby zapewnić jasność). W naszym przypadku możesz skonfigurować parametry progu (Próg), tłumienia (Zwolnienie) i poziomu kompresji (Współczynnik), aby przetwarzać pierwsze dwa szczyty, i ustawić wartość ataku (Atak) na wartość bliską zera. Następnie kompresor tłumi pierwsze dwa szczyty, a podczas przetwarzania trzeciego tłumi go, dopóki próg nie zostanie przekroczony (Próg). Nie gwarantuje to jednak wysokiej jakości przetwarzania dźwięku i jest bliski ograniczenia (zgrubne cięcie wszystkich wartości amplitud, w tym przypadku kompresor nazywany jest ogranicznikiem).

Spójrzmy na wynik przetwarzania dźwięku przez kompresor:

Szczyty zniknęły, zauważam, że ustawienia przetwarzania były raczej oszczędne i stłumiliśmy tylko najbardziej widoczne wartości amplitudy. W praktyce zakres dynamiczny zwęża się znacznie bardziej, a trend ten tylko się rozwija. W umysłach wielu kompozytorów - robią muzykę głośniej, ale w praktyce całkowicie pozbawiają ją dynamiki dla tych słuchaczy, którzy mogą słuchać jej w domu, a nie w radiu.

Pozostaje nam rozważyć ostatni parametr kompresji, to Zdobyć(Zdobyć). Wzmocnienie ma na celu zwiększenie amplitudy całej kompozycji i zasadniczo jest równoważne z innym narzędziem edytorów dźwięku - normalizacją. Spójrzmy na wynik końcowy:

W naszym przypadku kompresja była uzasadniona i poprawiła jakość dźwięku, ponieważ wyróżniający się szczyt jest bardziej wypadkiem niż zamierzonym wynikiem. Ponadto widać, że muzyka jest rytmiczna, dlatego ma wąski zakres dynamiczny. W przypadkach, w których wykonano wysokie amplitudy, kompresja może być błędem.

Kompresja dynamiczna

Różnica między kompresją dynamiczną a kompresją niedynamiczną polega na tym, że na pierwszym poziomie tłumienia sygnału (stosunek) zależy od poziomu sygnału przychodzącego. We wszystkich nowoczesnych programach występują kompresory dynamiczne, parametry Ratio i Threshold są kontrolowane za pomocą okna (każdy parametr ma własną oś):

Nie ma jednego standardu wyświetlania wykresu, gdzieś wzdłuż osi Y wyświetlany jest poziom przychodzącego sygnału, gdzieś przeciwnie, poziom sygnału po kompresji. Gdzieś punkt (0,0) znajduje się w prawym górnym rogu, gdzieś w lewym dolnym rogu. W każdym razie po przesunięciu kursora myszy nad tym polem zmieniają się wartości cyfr odpowiadające parametrom współczynnika i progu. Te. Poziom kompresji ustawia się dla każdej wartości progowej, dzięki czemu można bardzo elastycznie konfigurować kompresję.

Łańcuch boczny

Sprężarka łańcucha bocznego analizuje sygnał jednego kanału, a gdy poziom dźwięku przekracza próg, stosuje kompresję do innego kanału. Zaletą łańcucha bocznego jest praca z instrumentami, które znajdują się w tej samej dziedzinie częstotliwości (aktywnie używa się beczki basowo-basowej), ale czasami stosowane są również instrumenty znajdujące się w różnych obszarach częstotliwości, co prowadzi do interesującego efektu łańcucha bocznego.

Część druga - Etapy kompresji

Istnieją trzy etapy kompresji:

1) Pierwszym etapem jest kompresja poszczególnych dźwięków (singleshoots).

Barwa każdego instrumentu ma następujące cechy: Atak, Wstrzymaj, Rozpad, Opóźnienie, Utrzymanie, Uwolnienie.

Etap kompresji poszczególnych dźwięków jest podzielony na dwie części:

1.1) Kompresja poszczególnych dźwięków instrumentów rytmicznych

Często bity składowe wymagają osobnej kompresji, aby zapewnić im klarowność. Wielu przetwarza bęben basowy oddzielnie od innych instrumentów rytmicznych, zarówno na etapie kompresji poszczególnych dźwięków, jak i na etapie kompresji poszczególnych partii. Wynika to z faktu, że znajduje się w obszarze niskich częstotliwości, gdzie oprócz tego zwykle występuje tylko bas. Klarowność basu oznacza obecność charakterystycznego kliknięcia (baryłka basu ma bardzo krótki czas ataku i utrzymania). Jeśli nie ma kliknięcia, musisz go przetworzyć za pomocą kompresora, ustawiając próg na zero, a czas ataku od 10 do 50 ms. Realese kompresora powinno się skończyć, zanim uderzy bas. Ostatni problem można rozwiązać za pomocą wzoru: 60 000 / BPM, gdzie BPM to tempo kompozycji. Na przykład: 60 000/137 \u003d 437,96 (czas w milisekundach do nowego silnego udziału w 4-wymiarowej kompozycji).

Wszystko to dotyczy innych instrumentów rytmicznych o krótkim czasie ataku - muszą mieć akcentowane kliknięcie, którego nie powinien tłumić kompresor na żadnym z etapów poziomów kompresji.

1.2) Kompresja poszczególne dźwięki instrumenty harmoniczne

W przeciwieństwie do instrumentów rytmicznych, części instrumentów harmonicznych rzadko składają się z pojedynczych dźwięków. Nie oznacza to jednak, że nie należy ich przetwarzać na poziomie kompresji dźwięków. Jeśli używasz próbki z nagraną częścią, jest to drugi poziom kompresji. Tylko zsyntetyzowane instrumenty harmoniczne należą do tego poziomu kompresji. Mogą to być samplery, syntezatory wykorzystujące różne metody syntezy dźwięku (modelowanie fizyczne, FM, addytywne, subtraktywne itp.). Jak zapewne już się domyślacie - mówimy o programowaniu ustawień syntezatora. Tak! To także kompresja! Prawie wszystkie syntezatory mają programowalny parametr obwiedni (ADSR), co oznacza obwiednię. Koperta określa czas ataku, rozkładu, podtrzymania, uwolnienia. A jeśli powiesz mi, że nie jest to kompresja każdego dźwięku - jesteś moim wrogiem na całe życie!

2) Drugi etap - Kompresja poszczególnych stron.

Poprzez kompresję poszczególnych części rozumiem zawężenie zakresu dynamiki wielu połączonych pojedynczych dźwięków. Ten etap obejmuje również nagrania partii, w tym wokali, które wymagają przetwarzania kompresji, aby zapewnić jej przejrzystość i czytelność. Podczas przetwarzania kompresji części należy wziąć pod uwagę fakt, że podczas dodawania osobnych dźwięków mogą pojawić się niepożądane szczyty, których musisz się pozbyć na tym etapie, ponieważ jeśli nie zrobisz tego teraz, obraz może ulec pogorszeniu na etapie mieszania całej kompozycji. Na etapie kompresji poszczególnych części należy wziąć pod uwagę kompresję etapu przetwarzania poszczególnych dźwięków. Jeśli osiągniesz klarowność basowej beczki - niewłaściwe przetwarzanie w drugim etapie może wszystko zepsuć. Przetwarzanie wszystkich części za pomocą kompresora jest opcjonalne, podobnie jak przetwarzanie wszystkich pojedynczych dźwięków. Radzę umieścić analizator amplitudy na wszelki wypadek, aby określić obecność niepożądanych efektów ubocznych łączenia poszczególnych dźwięków. Oprócz kompresji na tym etapie konieczne jest zapewnienie, że strony są, jeśli to możliwe, w różnych zakresach częstotliwości, aby kwantyzacja była przeprowadzana. Warto również pamiętać, że dźwięk ma taką cechę jak przebranie (psychoakustyka):

1) Cichszy dźwięk jest maskowany przez głośniejszy dźwięk przed nim.

2) Cichszy dźwięk przy niskiej częstotliwości jest maskowany głośniejszym dźwiękiem przy wysokiej częstotliwości.

Na przykład, jeśli masz część syntezatora, wówczas często nuty zaczynają grać, zanim poprzednie nuty zakończą swój dźwięk. Czasami jest to konieczne (tworzenie harmonii, stylu gry, polifonii), ale czasem wcale - możesz przyciąć ich koniec (opóźnienie - zwolnienie), jeśli jest słyszany w trybie solo, ale nie słychać w trybie odtwarzania wszystkich partii. To samo dotyczy efektów, takich jak pogłos - nie powinno to trwać do momentu ponownego uruchomienia źródła dźwięku. Cięcie i usuwanie niepotrzebnego sygnału - sprawiasz, że dźwięk jest czystszy, co można również uznać za kompresję - ponieważ usuwasz niepotrzebne fale.

3) Trzeci etap - Kompresja kompozycji.

Kompresując całą kompozycję, należy wziąć pod uwagę fakt, że wszystkie części stanowią połączenie wielu oddzielnych dźwięków. Dlatego łącząc je i kompresując, należy upewnić się, że końcowa kompresja nie psuje tego, co osiągnęliśmy w pierwszych dwóch etapach. Konieczne jest również oddzielenie kompozycji, w których ważny jest szeroki lub wąski zakres. podczas kompresji kompozycji o szerokim zakresie dynamicznym wystarczy umieścić kompresor, który zmiażdży krótkotrwałe piki powstające w wyniku dodania partii między sobą. Podczas kompresji kompozycji, w której ważny jest wąski zakres dynamiczny, wszystko jest znacznie bardziej skomplikowane. Tutaj sprężarki zostały ostatnio nazwane maksymalizatorami. Maximizer to wtyczka łącząca kompresor, ogranicznik, korektor graficzny, wzmacniacz i inne narzędzia do konwersji dźwięku. Jednocześnie musi mieć narzędzia do analizy dźwięku. Maksymalizacja, końcowe przetwarzanie przez kompresor, jest bardzo potrzebne do zwalczania błędów popełnianych na poprzednich etapach. Błędy to nie tyle kompresja (jeśli jednak robisz na ostatnim etapie, to, co możesz zrobić na pierwszym etapie, jest już błędem), ale przy początkowym wyborze dobrych próbek i instrumentów, które nie będą ze sobą zakłócać (mówimy o zakresach częstotliwości) . W tym celu korygowana jest odpowiedź częstotliwościowa. Często zdarza się, że przy silnej kompresji na masterie trzeba zmienić parametry kompresji i informacje na wcześniejszych etapach, ponieważ przy silnym zawężeniu zakresu dynamicznego wydobywają się ciche maskowane wcześniej dźwięki, zmienia się dźwięk poszczególnych składników kompozycji.

W tych częściach celowo nie mówiłem o konkretnych parametrach kompresji. Uznałem za konieczne napisanie, że podczas kompresji należy zwrócić uwagę na wszystkie dźwięki i wszystkie części na wszystkich etapach tworzenia kompozycji. Dopiero w końcu uzyskasz harmonijny wynik, nie tylko pod względem teorii muzyki, ale także pod względem inżynierii dźwięku.

Poniższa tabela zawiera praktyczne porady dotyczące przetwarzania poszczególnych partii. Jednak w kompresji liczby i ustawienia wstępne mogą sugerować tylko pożądany obszar w dzielnicy, którego należy szukać. Idealne ustawienia kompresji zależą od każdego indywidualnego przypadku. Parametry wzmocnienia i progu oznaczają normalny poziom dźwięku (logiczne wykorzystanie całego zakresu).

Część trzecia - opcje kompresji

Krótki przegląd:

Próg (próg) - określa poziom dźwięku przychodzącego sygnału, po osiągnięciu którego kompresor zaczyna działać.

Atak (Atak) - określa czas, po którym sprężarka zacznie działać.

Poziom (stosunek) - określa stopień zmniejszenia wartości amplitudy (w stosunku do pierwotnej wartości amplitudy).

Zwolnij - określa czas, po którym sprężarka przestanie działać.

Wzmocnienie - określa poziom wzrostu przychodzącego sygnału po przetworzeniu przez sprężarkę.

Tabela kompresji:

Narzędzie Próg Atak Stosunek Wydanie Zdobyć Opis
Wokal 0 db 1-2 ms

2-5 mS

10 ms

0,1 ms

0,1 ms

mniej niż 4: 1

2,5: 1

4:1 – 12:1

2:1 -8:1

150 ms

50-100 mS

150 ms

150 ms

0,5s

Kompresja podczas nagrywania powinna być minimalna, wymaga obowiązkowego przetwarzania na etapie mieszania w celu zapewnienia przejrzystości i czytelności.
Instrumenty dęte 1 - 5ms 6:1 – 15:1 0,3s
Beczka 10 do 50 ms

10-100 mS

4: 1 i wyżej

10:1

50-100 ms

1 mS

Im niższy Thrshold i większy stosunek i im dłuższy atak, tym wyraźniejszy jest klik na początku lufy.
Syntezatory Zależy od rodzaju fali (obwiednia ADSR).
Werbel: 10–40 mS

1-5ms

5:1

5:1 – 10:1

50 mS

0,2s

Cześć kapelusz 20 mS 10:1 1 mS
Mikrofony Head 2-5 mS 5:1 1-50 mS
bębny 5ms 5:1 – 8:1 10ms
Gitara basowa 100-200 mS

4ms do 10ms

5:1 1 mS

10ms

Strunowy 0–40 mS 3:1 500 mS
Sint gitara basowa 4ms - 10ms 4:1 10ms To zależy od kopert.
Perkusja 0-20 mS 10:1 50 mS
Gitara Akustyczna, Fortepian 10-30 mS

5 - 10ms

4:1

5:1 -10:1

50-100 mS

0,5s

Electro-nitara 2 - 5ms 8:1 0,5s
Kompresja końcowa 0,1 ms

0,1 ms

2:1

od 2: 1 do 3: 1

50 ms

0,1 ms

Wyjście 0 dB Czas ataku zależy od celu - czy usuniesz szczyty, czy sprawisz, że tor będzie bardziej płynny.
Limiter po ostatecznej kompresji 0 mS 10:1 10-50 mS Wyjście 0 dB Jeśli potrzebujesz wąskiego zakresu dynamicznego i szorstkiego „wycięcia” fal.

Informacje pochodzą z różnych źródeł, do których odwołują się zasoby potpourri w Internecie. Różnicę parametrów kompresji tłumaczy się różnicą preferencji dźwiękowych i pracy z różnymi materiałami.

Ludzie, którzy pasjonują się dźwiękiem domowym, wykazują ciekawy paradoks. Są gotowi przeszukać pokój odsłuchowy, zbudować głośniki z egzotycznymi emiterami, ale wstydzą się wycofać przed muzyką w puszce, jak wilk przed czerwoną flagą. Ale tak naprawdę, dlaczego nie możesz przekroczyć flagi i spróbować ugotować coś bardziej jadalnego z puszki?

Od czasu do czasu na forum pojawiają się żałosne pytania: „Doradzaj dobrze nagranym albumom”. To jest niezrozumiałe. Specjalne audiofilskie publikacje, choć będą zadowolone z przesłuchania przez pierwszą minutę, ale nikt ich nie słucha do końca, repertuar jest boleśnie nudny. Jeśli chodzi o resztę biblioteki muzycznej, problem wydaje się oczywisty. Możesz zaoszczędzić, ale nie możesz zaoszczędzić i puchnąć przełomu w podzespołach. W każdym razie niewiele osób lubi słuchać ulubionej muzyki przy wysokim poziomie głośności, a wzmacniacz nie ma z tym nic wspólnego.

Dziś, nawet w albumach Hi-Res, piki fonogramów są wycinane, a głośność zostaje przycięta. Uważa się, że większość słucha muzyki na wszelkiego rodzaju śmieciach, dlatego konieczne jest „porzucenie gazu”, aby stworzyć rodzaj głośności.


Oczywiście nie robi się tego specjalnie po to, by zdenerwować audiofili. Niewiele osób je pamięta. Tyle że zgadli, że zrzucą im pliki główne, z których kopiowany jest główny obieg - płyty CD, MP3 i inne. Oczywiście mistrz od dawna był spłaszczony przez kompresor, nikt nie będzie świadomie przygotowywał specjalnych wersji dla HD Tracks. Chyba że zostanie wykonana pewna procedura dla nośnika winylowego, który z tego powodu brzmi bardziej humanitarnie. A w przypadku ścieżki cyfrowej wszystko kończy się tak samo - duża, gruba sprężarka.

Tak więc obecnie wszystkie 100% opublikowanych fonogramów, pomniejszonych o muzykę klasyczną, poddaje się kompresji podczas masteringu. Ktoś wykonuje tę procedurę mniej więcej umiejętnie, a ktoś jest całkowicie głupi. W rezultacie mamy pielgrzymów na forach z linią zatoki DR, bolesne porównania wydań, lot do winylu, gdzie musisz również wydobywać pierwsze prasy.

Najbardziej odmrożony na widok tych wszystkich oburzeń dosłownie zamienił się w audio satanistów. Bez żartów, czytają pismo inżynierii dźwięku wstecz! Nowoczesne programy do edycji dźwięku mają narzędzie do odzyskiwania fali dźwiękowej.

Początkowo ta funkcja była przeznaczona dla studiów. Podczas miksowania zdarzają się sytuacje, w których na płytę dostał się obcinanie i już z wielu powodów nie jest możliwe odtworzenie sesji, a tutaj na ratunek przychodzi arsenał edytora audio - declipper, dekompresor itp.

A teraz zwykli słuchacze, którzy krwawią z uszu po kolejnej nowości, coraz odważniej ciągną pióra do takiego oprogramowania. Ktoś woli iZotope, ktoś Adobe Audition, ktoś dzieli operację między kilkoma programami. Przywrócenie poprzedniej dynamiki polega na programowej korekcji przyciętych pików sygnału, które spoczywające na poziomie 0 dB przypominają bieg.

Tak, nie mówimy o 100% ożywieniu źródła, ponieważ istnieją procesy interpolacji z wykorzystaniem raczej algorytmów spekulacyjnych. Jednak niektóre wyniki przetwarzania wydawały mi się interesujące i warte zbadania.

Na przykład album Lany Del Rey „Lust For Life”, który ciągle kurwa przeklina, pah, zamiata! Tak było w oryginalnej piosence „When the World Was at War We Kept Dancing”.


I po serii odrzutników i dekompresorów było tak. Współczynnik DR zmieniono z 5 na 9. Możesz pobrać i odsłuchać próbkę przed i po przetworzeniu.


Nie mogę powiedzieć, że metoda ta jest uniwersalna i odpowiednia dla wszystkich umierających albumów, ale w tym przypadku zdecydowałem się zachować tę konkretną wersję przez aktywistę rutracker zamiast oficjalnej 24-bitowej edycji.

Nawet jeśli sztuczne wyciąganie szczytów z mielonego mięsa nie przywróci prawdziwej dynamiki muzycznego wykonania, Twój DAC nadal będzie ci dziękować. Tak ciężko mu było pracować bez błędów na ekstremalnych poziomach, gdzie prawdopodobieństwo pojawienia się tak zwanych pików międzypróbkowych (ISP) jest wysokie. A teraz tylko rzadkie błyski sygnału skoczą do 0 dB. Ponadto cichy fonogram po kompresji w FLAC lub innym bezstratnym koderze będzie teraz mniejszy. Więcej „powietrza” w sygnale oszczędza miejsce na dysku twardym.

Spróbuj ożywić swoje najbardziej znienawidzone albumy, zabite podczas „wojny wolumenu”. Aby zgromadzić dynamikę, najpierw musisz obniżyć poziom ścieżki o -6 dB, a następnie uruchomić declipper. Ci, którzy nie wierzą komputerom, mogą po prostu wetknąć ekspander studyjny między odtwarzacz CD i wzmacniacz. To urządzenie zasadniczo robi to samo - w jaki sposób może przywracać i rozciągać szczyty skompresowanego sygnału audio. Istnieją podobne urządzenia z lat 80-90, żeby nie powiedzieć, że są bardzo drogie, a eksperymentowanie z nimi będzie bardzo interesujące.


Kontroler zakresu dynamicznego DBX 3BX przetwarza sygnał osobno w trzech pasmach - LF, MF i HF

Korektory były kiedyś częścią systemu audio jako coś oczywistego i nikt się ich nie bał. Dzisiaj nie trzeba wyrównywać blokady wysokich częstotliwości taśmy magnetycznej, ale przy brzydkiej dynamice trzeba coś rozwiązać, bracia.

Kompresja dynamiczna (Kompresja zakresu dynamicznego, DRC) - zawężenie (lub rozszerzenie w przypadku ekspandera) zakresu dynamicznego fonogramu. Zakres dynamiczny, to jest różnica między najcichszymi i najgłośniejszymi dźwiękami. Czasami najcichszy dźwięk na ścieżce dźwiękowej będzie nieco głośniejszy niż poziom hałasu, a czasem nieco cichszy niż najgłośniejszy. Urządzenia i programy, które wykonują kompresję dynamiczną, nazywane są kompresorami, wyróżniając wśród nich cztery główne grupy: w rzeczywistości kompresory, ograniczniki, ekspandery i bramki.

DBX 566 Tube Analog Compressor

Obniżenie i zwiększenie kompresji

Kompresja w dół (Kompresja w dół) zmniejsza głośność, gdy zaczyna przekraczać określoną wartość progową, pozostawiając cichszy dźwięk bez zmian. Skrajną opcją dla kompresji w dół jest ogranicznik. Zwiększ kompresję (Kompresja w górę), wręcz przeciwnie, zwiększa głośność dźwięku, jeśli jest niższa niż wartość progowa, bez wpływu na głośniejsze dźwięki. Jednocześnie oba rodzaje kompresji zawężają zakres dynamiczny sygnału audio.

Kompresja w dół

Zwiększ kompresję

Ekspander i brama

Jeśli sprężarka zmniejsza zakres dynamiczny, ekspander go zwiększa. Gdy poziom sygnału wzrasta powyżej poziomu progowego, ekspander zwiększa go jeszcze bardziej, zwiększając w ten sposób różnicę między głośnymi i cichymi dźwiękami. Takie urządzenia są często używane podczas nagrywania zestawu perkusyjnego w celu oddzielenia dźwięków niektórych bębnów od innych.

Nazywa się to typem ekspandera, który nie służy do głośnego wzmacniania, ale do tłumienia cichych dźwięków, które nie przekraczają poziomu progowego (na przykład szum tła) Bramka szumów. W takim urządzeniu, gdy tylko poziom dźwięku spadnie poniżej progu, przepływ sygnału zatrzymuje się. Zazwyczaj brama służy do tłumienia szumu pauzy. W niektórych modelach można upewnić się, że dźwięk, gdy osiągnie poziom progowy, nie zatrzymuje się nagle, ale stopniowo zanika. W takim przypadku szybkość rozpadu jest ustawiana przez kontrolę rozpadu.

Brama, podobnie jak inne typy sprężarek, może być zależny od częstotliwości (tj. obsługiwać niektóre pasma częstotliwości inaczej) i może pracować w trybie łańcuch boczny (patrz poniżej).

Zasada działania sprężarki

Sygnał wchodzący do sprężarki jest dzielony na dwie kopie. Jedna kopia jest wysyłana do wzmacniacza, w którym stopień wzmocnienia jest kontrolowany przez sygnał zewnętrzny, druga kopia tworzy ten sygnał. Dostaje się do urządzenia zwanego łańcuchem bocznym, w którym mierzony jest sygnał, i na podstawie tych danych tworzona jest obwiednia opisująca zmianę jego głośności.
Tak działa większość nowoczesnych sprężarek, jest to tak zwany typ sprzężenia zwrotnego. W starszych urządzeniach (typ sprzężenia zwrotnego) poziom sygnału jest mierzony za wzmacniaczem.

Istnieją różne analogowe technologie wzmocnienia o zmiennym wzmocnieniu, z których każda ma swoje zalety i wady: lampowy, optyczny z wykorzystaniem fotorezystorów i tranzystora. Podczas pracy z dźwiękiem cyfrowym (w edytorze dźwięku lub DAW) możesz używać własnych algorytmów matematycznych lub symulować pracę technologii analogowych.

Kluczowe parametry kompresora

Próg

Kompresor obniża poziom sygnału audio, jeśli jego amplituda przekroczy określoną wartość progową (próg). Zazwyczaj jest określany w decybelach, przy czym dolny próg (na przykład -60 dB) oznacza, że \u200b\u200bwięcej dźwięku zostanie przetworzonych niż przy wyższym progu (na przykład -5 dB).

Stosunek

Stopień obniżenia poziomu jest określony parametrem stosunku: stosunek 4: 1 oznacza, że \u200b\u200bjeśli poziom wejściowy jest o 4 dB wyższy niż próg, poziom sygnału wyjściowego będzie o 1 dB wyższy niż próg.
Na przykład:
Próg \u003d -10 dB
Wejście \u003d -6 dB (4 dB powyżej progu)
Sygnał wyjściowy \u003d −9 dB (1 dB powyżej poziomu progowego)

Ważne jest, aby pamiętać, że tłumienie poziomu sygnału trwa przez pewien czas po tym, jak spadnie poniżej poziomu progowego, a czas ten jest określony przez wartość parametru wydanie.

Kompresja o maksymalnym stosunku ∞: 1 nazywa się ograniczeniem. Oznacza to, że każdy sygnał powyżej poziomu progowego jest tłumiony do poziomu progowego (z wyjątkiem krótkiego okresu po gwałtownym wzroście głośności wejściowej). Szczegóły poniżej „Limiter”.

Przykłady różnych wartości współczynnika

Atak i uwolnienie

Kompresor zapewnia pewną kontrolę nad tym, jak szybko reaguje na zmiany dynamiki sygnału. Parametr Atak określa czas, w którym sprężarka redukuje wzmocnienie do poziomu określonego przez parametr Współczynnik. Zwolnienie określa czas, w którym sprężarka wręcz przeciwnie, zwiększa wzmocnienie lub wraca do normy, jeśli poziom sygnału wejściowego spadnie poniżej wartości progowej.

Fazy \u200b\u200bAtaku i Zwolnienia

Te parametry wskazują czas (zwykle w milisekundach) potrzebny do zmiany wzmocnienia o określoną liczbę decybeli, zwykle 10 dB. Na przykład w tym przypadku, jeśli Atak jest ustawiony na 1 ms, zajmie 1 ms, aby zmniejszyć wzmocnienie o 10 dB i 2 ms o 20 dB.

W wielu sprężarkach parametry Ataku i Zwolnienia można regulować, ale w niektórych są one ustawione początkowo i nie można ich regulować. Czasami są one określane jako „automatyczne” lub „zależne od programu”, tj. różnią się w zależności od sygnału wejściowego.

Kolano

Kolejny parametr sprężarki: twarde / miękkie kolano. Określa, czy początek kompresji będzie ostry (twardy) czy stopniowy (miękki). Miękkie kolano zmniejsza zauważalne przejście od nieprzetworzonego sygnału do sygnału poddanego kompresji, szczególnie przy wysokich wartościach stosunku i gwałtownym wzroście głośności.

Kompresja twardych kolan i miękkich kolan

Szczyt i RMS

Sprężarka może reagować na wartości szczytowe (maksymalne krótkoterminowe) lub na średni poziom sygnału wejściowego. Zastosowanie wartości szczytowych może prowadzić do gwałtownych wahań stopnia kompresji, a nawet do zniekształceń. Dlatego sprężarki używają funkcji uśredniania (zwykle RMS) sygnału wejściowego podczas porównywania go z wartością progową. Zapewnia to wygodniejszą kompresję, zbliżoną do ludzkiej percepcji głośności.

RMS - parametr odzwierciedlający średnią głośność fonogramu. Z matematycznego punktu widzenia RMS (Root Mean Square) to wartość skuteczna amplitudy pewnej liczby próbek:

Łączenie stereo

Kompresor w trybie łączenia stereo stosuje to samo wzmocnienie do obu kanałów stereo. Pozwala to uniknąć przesunięcia panoramy stereo, co może wynikać z indywidualnego przetwarzania lewego i prawego kanału. Takie przesunięcie występuje, jeśli na przykład jakikolwiek głośny element zostanie przesunięty poza środek.

Zysk makijażu

Ponieważ kompresor zmniejsza ogólny poziom sygnału, zwykle dodaje się możliwość stałego wzmocnienia na wyjściu, co pozwala uzyskać optymalny poziom.

Patrz przed siebie

Funkcja przewidywania ma na celu rozwiązywanie problemów związanych zarówno z zbyt dużymi, jak i zbyt małymi wartościami Ataku i Zwolnienia. Zbyt długi czas ataku nie pozwala nam skutecznie przechwytywać stanów nieustalonych, a zbyt krótki może nie być wygodny dla słuchacza. Podczas korzystania z funkcji przewidywania główny sygnał jest opóźniany względem sygnału sterującego, co pozwala na wcześniejsze rozpoczęcie kompresji, nawet zanim sygnał osiągnie wartość progową.
Jedyną wadą tej metody jest opóźnienie czasowe sygnału, które w niektórych przypadkach jest niepożądane.

Korzystanie z kompresji dynamicznej

Kompresji używa się wszędzie, nie tylko w fonogramach muzycznych, ale wszędzie tam, gdzie trzeba zwiększyć ogólną głośność bez zwiększania poziomów szczytowych, gdzie stosuje się niedrogi sprzęt do odtwarzania dźwięku lub ograniczony kanał transmisji (systemy ostrzegania i komunikacji, radio amatorskie itp.) .

Kompresji używa się podczas odtwarzania muzyki w tle (w sklepach, restauracjach itp.), Gdzie jakiekolwiek zauważalne zmiany głośności są niepożądane.

Ale najważniejszym obszarem zastosowania kompresji dynamicznej jest produkcja i nadawanie muzyki. Kompresja służy do nadania dźwiękom „gęstości” i „napędu”, w celu lepszego połączenia instrumentów ze sobą, a zwłaszcza podczas przetwarzania głosu.

Partie wokalne w muzyce rockowej i popowej są zwykle kompresowane, aby podkreślić je w połączeniu z akompaniamentem i dodać wyrazistości. Specjalny rodzaj kompresora, dostosowany tylko do określonych częstotliwości - de-esser, służy do tłumienia syczących fonemów.

W częściach instrumentalnych kompresja stosowana jest również w przypadku efektów niezwiązanych bezpośrednio z głośnością, na przykład szybko zanikające dźwięki perkusji mogą się wydłużyć.

W elektronicznej muzyce tanecznej (EDM) często stosuje się łańcuchy boczne (patrz poniżej) - na przykład linię basu można kontrolować kopnięciem lub czymś podobnym, aby zapobiec konfliktowi basu z bębnami i stworzyć dynamiczne tętnienie.

Kompresja jest szeroko stosowana w transmisji rozgłoszeniowej (radio, telewizja, transmisja internetowa) w celu zwiększenia postrzeganej głośności przy jednoczesnym zmniejszeniu zakresu dynamicznego oryginalnego dźwięku (zwykle płyty CD). W większości krajów obowiązują prawne ograniczenia dotyczące maksymalnej maksymalnej głośności, którą można nadawać. Zazwyczaj ograniczenia te są wdrażane przez stałe sprężarki sprzętowe w obwodzie eterowym. Ponadto wzrost postrzeganej głośności poprawia „jakość” dźwięku z perspektywy większości słuchaczy.

Zobacz też Wojna z głośnością.

Sekwencyjny wzrost głośności tej samej piosenki, zremasterowanej na CD od 1983 do 2000.

Łańcuchy boczne

Innym powszechnym przełącznikiem sprężarki jest łańcuch boczny. W tym trybie dźwięk jest kompresowany nie w zależności od własnego poziomu, ale w zależności od poziomu sygnału dostarczanego do złącza, które zwykle nazywane jest łańcuchem bocznym.

Jest do tego kilka zastosowań. Na przykład wokalista seplenienie, a wszystkie litery „c” wyróżniają się z dużego obrazu. Przekazujesz jego głos przez kompresor i do złącza łańcucha bocznego podajesz ten sam dźwięk, ale przeszedłeś przez korektor dźwięku. W korektorze usuwasz wszystkie częstotliwości z wyjątkiem częstotliwości używanych przez wokalistę przy wymawianiu litery „c”. Zwykle około 5 kHz, ale może wynosić od 3 kHz do 8 kHz. Jeśli następnie przełączysz sprężarkę w tryb łańcucha bocznego, kompresja głosowa wystąpi w tych momentach, gdy wymawiana jest litera „c”. W ten sposób uzyskano urządzenie znane jako de-esser. Ten sposób pracy nazywa się „zależnym od częstotliwości”.

Innym zastosowaniem tej funkcji jest Ducker. Na przykład w stacji radiowej muzyka przechodzi przez kompresor, a słowa DJ-a przechodzą przez łańcuch boczny. Gdy DJ zaczyna rozmawiać, głośność muzyki automatycznie maleje. Efekt ten można również z powodzeniem zastosować w nagraniach, na przykład w celu zmniejszenia głośności partii klawiatury podczas śpiewania.

Ograniczenie ściany z cegieł

Kompresor i ogranicznik działają mniej więcej tak samo, możemy powiedzieć, że ogranicznik jest sprężarką o wysokim współczynniku (od 10: 1) i zwykle niskim czasie ataku.

Istnieje koncepcja ograniczania ceglanego muru - ograniczania z bardzo wysokim stosunkiem (od 20: 1 i wyższym) i bardzo szybkim atakiem. Idealnie, ogólnie rzecz biorąc, nie pozwala on na przekroczenie poziomu progowego. Rezultat będzie nieprzyjemny dla ucha, ale zapobiegnie uszkodzeniu sprzętu do odtwarzania dźwięku lub przekroczeniu przepustowości kanału. Wielu producentów właśnie w tym celu integruje ograniczniki w swoich urządzeniach.

Clipper vs. Limiter, miękkie i twarde obcinanie

, Odtwarzacze multimedialne

Nagrania, zwłaszcza te stare, które zostały nagrane i wykonane przed 1982 rokiem, były znacznie mniej prawdopodobne, że zostaną zmiksowane, podczas których nagranie będzie głośniejsze. Odtwarzają naturalną muzykę z naturalnym zakresem dynamicznym, który jest przechowywany na płycie i jest zagubiony w większości standardowych formatów cyfrowych lub wysokiej rozdzielczości.

Oczywiście są wyjątki - posłuchaj niedawno wydanego albumu Stephena Wilsona z MA Recordings lub Reference Recordings, a usłyszysz, jak dobry może być cyfrowy dźwięk. Ale to rzadkie, większość współczesnych nagrań jest głośna i skompresowana.

Ostatnio kompresja muzyki była mocno krytykowana, ale jestem skłonny argumentować, że prawie wszystkie twoje ulubione nagrania są skompresowane. Niektóre z nich są mniej, inne bardziej, ale wciąż skompresowane. Kompresja zakresu dynamicznego jest rodzajem kozła ofiarnego, którego obwinia się za słabe muzyczne brzmienie, ale wysoce skompresowana muzyka nie jest nowym trendem: słuchaj albumów Motown z lat 60. To samo można powiedzieć o klasycznych utworach Led Zeppelin lub młodszych albumach Wilco i Radiohead. Kompresja zakresu dynamicznego zmniejsza naturalną zależność między najgłośniejszym i najcichszym dźwiękiem w nagraniu, więc szept może być tak głośny jak krzyk. Znalezienie muzyki pop z ostatnich 50 lat, która nie została poddana kompresji, jest dość problematyczne.

Niedawno odbyłem miłą pogawędkę z założycielem i redaktorem magazynu Tape Op Larry Crane na temat dobrych, złych i złych aspektów kompresji. Larry Crane współpracował z zespołami i artystami takimi jak Stefan Marcus, Cat Power, Sleater-Kinney, Jenny Lewis, M. Ward, The Go-Betweens, Jason Little, Eliot Smith, Quasi i Richmond Fontaine. On także prowadzi Jackpot! w Portland w stanie Oregon, w którym mieszkali The Breeders, The Decemberists, Eddie Vedder, Pavement, R.E.M., She & Him i wielu, wielu innych.

Jako przykład zaskakująco nienaturalnie brzmiących, ale wciąż świetnych piosenek, zacytowałem album Spoon „They Want My Soul”, wydany w 2014 roku. Crane śmieje się i mówi, że słucha go w samochodzie, bo tam brzmi świetnie. Co prowadzi nas do kolejnej odpowiedzi na pytanie, dlaczego muzyka jest kompresowana: ponieważ kompresja i dodatkowa „klarowność” ułatwiają słyszenie w hałaśliwych miejscach.

Larry Crane w pracy. Zdjęcie Jason Quigley

Kiedy ludzie mówią, że podoba im się dźwięk nagrania audio, myślę, że lubią muzykę, jakby dźwięk i muzyka były nierozłącznymi pojęciami. Ale dla siebie różnicuję te pojęcia. Z punktu widzenia miłośnika muzyki dźwięk może być surowy i prymitywny, ale dla większości słuchaczy nie będzie to miało znaczenia.

Wiele osób spieszy się z oskarżeniem inżynierów masteringowych o nadużywanie kompresji, ale kompresja jest stosowana bezpośrednio podczas nagrywania, podczas miksowania, a dopiero potem podczas masteringu. Jeśli nie byłeś osobiście obecny na każdym z tych etapów, nie będziesz w stanie powiedzieć, jak brzmiały instrumenty i część wokalna na samym początku procesu.

Crane był w szoku: „Jeśli muzyk chce celowo zrobić dźwięk szalony i zniekształcony jak Guided by Voices, to nie ma w tym nic złego - pragnienie zawsze przeważa nad jakością dźwięku”. Głos artysty jest prawie zawsze skompresowany, to samo dzieje się z basem, perkusją, gitarami i syntezatorami. Dzięki kompresji głośność głosu jest utrzymywana na pożądanym poziomie w całym utworze lub wyróżnia się nieco od reszty dźwięków.

Prawidłowo wykonana kompresja może sprawić, że dźwięk bębnów będzie bardziej żywy lub celowo dziwny. Aby muzyka brzmiała świetnie, musisz mieć do tego niezbędne narzędzia. Właśnie dlatego lata zajmują, aby dowiedzieć się, jak używać kompresji i nie przesadzać. Jeśli inżynier miksowania zbyt mocno ściśnie gitarę, inżynier masteringu nie będzie już w stanie w pełni przywrócić brakujących częstotliwości.

Jeśli muzycy chcieli, abyś posłuchał muzyki, która nie przechodziła etapów miksowania i masteringu, wydałbyś ją na półkach sklepowych bezpośrednio ze studia. Crane mówi, że ludzie, którzy tworzą, edytują, miksują i nagrywają nagrania muzyczne, nie istnieją, aby dostać się pod nogi muzyków - pomagają artystom od samego początku, to znaczy od ponad stu lat.

Ci ludzie są częścią procesu tworzenia, który powoduje niesamowite dzieła sztuki. Crane dodaje: „Nie potrzebujesz wersji Dark Side of the Moon, która nie przeszła miksowania i masteringu”. Pink Floyd wydał piosenkę w formie, w której chcieli ją usłyszeć.

Ta grupa metod opiera się na fakcie, że transmitowane sygnały podlegają nieliniowym przekształceniom amplitudy, a w części nadawczej i odbiorczej nieliniowości są wzajemne. Na przykład, jeśli nadajnik wykorzystuje funkcję nieliniową Öu, odbiornik używa u 2. Konsekwentne stosowanie funkcji wzajemności doprowadzi do tego, że generalnie transformacja pozostaje liniowa.

Idea nieliniowych metod kompresji danych sprowadza się do tego, że nadajnik o tej samej amplitudzie sygnałów wyjściowych może transmitować większy zakres zmienności transmitowanego parametru (to znaczy większy zakres dynamiczny). Zakres dynamiczny to stosunek, wyrażony w jednostkach względnych lub decybelach, od największej dopuszczalnej amplitudy sygnału do najmniejszej:

; (2.17)
. (2.18)

Naturalne pragnienie zwiększenia zakresu dynamicznego poprzez zmniejszenie Umin jest ograniczone czułością sprzętu i rosnącym wpływem zakłóceń i szumu wewnętrznego.

Najczęściej kompresję zakresu dynamicznego wykonuje się za pomocą pary logarytmów wzajemnych i funkcji wzmacniających. Pierwsza operacja zmiany amplitudy jest nazywana kompresja(kompresja), drugi - ekspansja (przez rozciąganie). Wybór tych funkcji jest związany z ich największą zdolnością kompresji.

Jednocześnie metody te mają wady. Pierwszym z nich jest to, że logarytm małej liczby jest ujemny w limicie:

to znaczy czułość jest bardzo nieliniowa.

Aby zmniejszyć te wady, obie funkcje są modyfikowane przez odchylenie i przybliżenie. Na przykład dla kanałów telefonicznych przybliżona funkcja ma postać (typ A,):

gdzie A \u003d 87,6. Zysk z kompresji w tym przypadku wynosi 24 dB.

Kompresja danych za pomocą procedur nieliniowych jest realizowana metodami analogowymi z dużymi błędami. Zastosowanie narzędzi cyfrowych może znacznie poprawić dokładność lub szybkość konwersji. W takim przypadku bezpośrednie zastosowanie technologii komputerowej (tj. Bezpośrednie obliczenie logarytmów i wykładników) nie da najlepszego wyniku z powodu niskiej prędkości i narastającego błędu obliczeniowego.

Kompresja danych przez kompresję ze względu na ograniczenia dokładności jest stosowana w niekrytycznych przypadkach, na przykład do transmisji głosu przez kanały telefoniczne i radiowe.

Wydajne kodowanie

Skuteczne kody zostały zaproponowane przez C. Shannon, Fano i Huffman. Istotą kodów jest to, że są one nierównomierne, tzn. Mają nierówną liczbę bitów, a długość kodu jest odwrotnie proporcjonalna do prawdopodobieństwa jego wystąpienia. Inną wielką cechą skutecznych kodów jest to, że nie wymagają one separatorów, czyli znaków specjalnych, które oddzielają sąsiednie słowa kodowe. Osiąga się to poprzez przestrzeganie prostej zasady: krótsze kody nie są początkiem dłuższych. W tym przypadku ciągły strumień bitów jest jednoznacznie dekodowany, ponieważ dekoder najpierw wykrywa krótsze wzorce kodu. Skuteczne kody od dawna mają charakter czysto akademicki, ale ostatnio zostały z powodzeniem wykorzystane do tworzenia baz danych, a także do kompresji informacji we współczesnych modemach i archiwizatorach oprogramowania.

Z powodu nierówności wprowadza się średnią długość kodu. Średnia długość - matematyczne oczekiwanie długości kodu:

ponadto, lp ma tendencję do H (x) z góry (to znaczy, lp\u003e H (x)).

Spełnienie warunku (2.23) wzrasta wraz ze wzrostem N.

Istnieją dwie odmiany skutecznych kodów: Shannon-Fano i Huffman. Rozważ ich otrzymanie na przykładzie. Załóżmy, że prawdopodobieństwa znaków w sekwencji mają znaczenie podane w tabeli 2.1.

Tabela 2.1.

Prawdopodobieństwa postaci

N.
Liczba Pi 0.1 0.2 0.1 0.3 0.05 0.15 0.03 0.02 0.05

Symbole są uszeregowane, tzn. Są przedstawione w kolejności malejącej prawdopodobieństwa. Następnie, zgodnie z metodą Shannona-Fano, okresowo powtarza się następującą procedurę: cała grupa zdarzeń jest dzielona na dwie podgrupy o takich samych (lub w przybliżeniu takich samych) całkowitych prawdopodobieństwach. Procedura jest kontynuowana, aż jeden element pozostanie w następnej podgrupie, po czym ten element zostanie wyeliminowany, a pozostałe określone działania będą kontynuowane. Dzieje się tak, dopóki nie pozostanie jeden element w dwóch ostatnich podgrupach. Kontynuujemy rozpatrywanie naszego przykładu, który podsumowano w tabeli 2.2.

Tabela 2.2

Kodowanie Shannon Fano

N. Liczba Pi
4 0.3 ja
0.2 ja II
6 0.15 ja ja
0.1 II
1 0.1 ja ja
9 0.05 II II
5 0.05 II ja
7 0.03 II II ja
8 0.02 II

Jak widać z tabeli 2.2, pierwszy znak z prawdopodobieństwem p 4 \u003d 0,3 uczestniczył w dwóch procedurach podziału na grupy i oba razy należał do grupy o liczbie I. W związku z tym jest zakodowany dwucyfrowym kodem II. Drugi element na pierwszym etapie podziału należał do grupy I, na drugim - do grupy II. Dlatego jego kod to 10. Kody pozostałych znaków nie wymagają dodatkowych komentarzy.

Zazwyczaj nierówne kody są reprezentowane jako drzewa kodów. Drzewo kodów to wykres wskazujący dozwolone kombinacje kodów. Ustaw wstępnie kierunek krawędzi tego wykresu, jak pokazano na ryc. 2.11 (wybór kierunków jest dowolny).

Wykres jest zorientowany w następujący sposób: utwórz trasę dla wybranego znaku; liczba bitów jest równa liczbie krawędzi na trasie, a wartość każdego bitu jest równa kierunkowi odpowiedniej krawędzi. Trasa jest kompilowana od punktu początkowego (na rysunku jest oznaczona literą A). Na przykład droga do wierzchołka 5 składa się z pięciu krawędzi, z których wszystkie oprócz ostatniej mają kierunek 0; otrzymujemy kod 00001.

W tym przykładzie obliczamy entropię i średnią długość słowa.

H (x) \u003d - (0,3 log 0,3 + 0,2 log 0,2 + 2 0,1 log 0,1+ 2 0,05 log 0,05+

0,03 log 0,03 + 0,02 log 0,02) \u003d 2,23 bitu

średnia \u003d 0,3 2 + 0,2 2 + 0,15 3 + 0,1 3 + 0,1 4 + 0,05 5 + 0,05 4+

0.03 6 + 0.02 6 = 2.9 .

Jak widać, średnia długość słowa jest bliska entropii.

Kody Huffmana są konstruowane przy użyciu innego algorytmu. Procedura kodowania składa się z dwóch etapów. W pierwszym etapie jednorazowa kompresja alfabetu odbywa się sekwencyjnie. Kompresja pojedyncza - zastąpienie dwóch ostatnich znaków (o niższych prawdopodobieństwach) jednym, z całkowitym prawdopodobieństwem. Kompresja jest przeprowadzana, dopóki nie pozostaną dwa znaki. Jednocześnie wypełniają tablicę kodowania, w której zapisywane są prawdopodobieństwa wynikowe, a także przedstawiają trasy, po których nowe symbole przechodzą w następnym etapie.

W drugim etapie odbywa się faktyczne kodowanie, które rozpoczyna się od ostatniego etapu: pierwszy z dwóch znaków ma przypisany kod 1, drugi - 0. Następnie przechodzą do poprzedniego etapu. Kody z następnego kroku są przypisywane do symboli, które nie brały udziału w kompresji na tym etapie, a kod symbolu uzyskany po sklejeniu jest dwukrotnie przypisywany do dwóch ostatnich symboli i są one dodawane do kodu górnego symbolu 1, dolnego 0. Jeśli symbol nie jest dalej klejony zaangażowany, jego kod pozostaje niezmieniony. Procedura trwa do końca (to znaczy do pierwszego etapu).

Tabela 2.3 pokazuje kodowanie Huffmana. Jak widać z tabeli, kodowanie przeprowadzono w 7 etapach. Prawdopodobieństwa symboli podano po lewej stronie, kody pośrednie po prawej stronie. Strzałki pokazują ruchy nowo utworzonych postaci. Na każdym etapie dwa ostatnie znaki różnią się tylko niskim poziomem, co odpowiada technice kodowania. Obliczamy średnią długość słowa:

l cf \u003d 0,3 2 + 0,2 2 + 0,15 3 ++ 2 0,1 3 + + 0,05 4 + 0,05 5 + 0,03 6 + 0,02 6 \u003d 2,7

Jest to jeszcze bliższe entropii: kod jest jeszcze bardziej wydajny. Na ryc. 2.12 pokazuje drzewo kodu Huffmana.

Tabela 2.3

Kodowanie Huffmana

N. Liczba Pi kod ja II III IV V. VI VII
0.3 0.3 11 0.3 11 0.3 11 0.3 11 0.3 11 0.4 0 0.6 1
0.2 0.2 01 0.2 01 0.2 01 0.2 01 0.3 10 0.3 11 0.4 0
0.15 0.15 101 0.15 101 0.15 101 0.2 00 0.2 01 0.3 10
0.1 0.1 001 0.1 001 0.15 100 0.15 101 0.2 00
0.1 0.1 000 0.1 000 0.1 001 0.15 100
0.05 0.05 1000 0.1 1001 0.1 000
0.05 0.05 10011 0.05 1000
0.03 0.05 10010
0.02

Oba kody spełniają wymóg unikalności dekodowania: jak widać z tabel, krótsze kombinacje nie są początkiem dłuższych kodów.

Wraz ze wzrostem liczby znaków zwiększa się skuteczność kodów, dlatego w niektórych przypadkach większe bloki są kodowane (na przykład, jeśli chodzi o teksty, możesz zakodować niektóre z najczęściej używanych sylab, słów, a nawet fraz).

Efekt wprowadzenia takich kodów określa się poprzez porównanie ich z jednolitym kodem:

(2.24)

gdzie n jest liczbą bitów jednolitego kodu, który jest zastępowany przez efektywny.

Modyfikacje kodu Huffmana

Klasyczny algorytm Huffmana odnosi się do dwuprzebiegowego, tj. Wymaga to najpierw zestawu statystyk dotyczących symboli i komunikatów, a następnie procedur opisanych powyżej. Jest to niewygodne w praktyce, ponieważ wydłuża czas przetwarzania wiadomości i gromadzenia słownika. Częściej stosowane są metody jednoprzebiegowe, w których łączone są procedury akumulacji i kodowania. Takie metody są również nazywane adaptacyjną kompresją Huffmana [46].

Istota adaptacyjnej kompresji Huffmana sprowadza się do zbudowania początkowego drzewa kodu i sekwencyjnej modyfikacji go po przybyciu każdego nowego znaku. Tak jak poprzednio, drzewa tutaj są binarne, tj. z każdego wierzchołka drzewa wykresu emanują maksymalnie dwa łuki. Zwyczajowo nazywany jest pierwotny wierzchołek rodzicem, a dwa kolejne powiązane z nim wierzchołki - dzieci. Wprowadźmy pojęcie wagi wierzchołka - jest to liczba znaków (słów) odpowiadających danemu wierzchołkowi, uzyskana przez przesłanie oryginalnej sekwencji. Oczywiście suma ciężarów dzieci jest równa ciężarowi rodzica.

Po wprowadzeniu następnego znaku sekwencji wejściowej drzewo kodu jest korygowane: wagi wierzchołków są ponownie obliczane i, jeśli to konieczne, wierzchołki są przestawiane. Reguła permutacji wierzchołków jest następująca: wagi dolnych wierzchołków są najmniejsze, a wierzchołki znajdujące się po lewej stronie wykresu mają najmniejsze wagi.

Jednocześnie wierzchołki są ponumerowane. Numeracja zaczyna się od dołu (wisząc, tj. Nie mając dzieci) szczytów od lewej do prawej, a następnie jest przenoszona na wyższy poziom itp. przed numerowaniem ostatniego, początkowego szczytu. Osiągnięto następujący wynik: im mniejsza waga wierzchołka, tym mniejsza jego liczba.

Przegrupowanie odbywa się głównie dla wiszących szczytów. Podczas przestawiania należy wziąć pod uwagę zasadę sformułowaną powyżej: wierzchołki o większej masie mają większą liczbę.

Po przejściu sekwencji (nazywanej również kontrolą lub testem) wszystkim wiszącym wierzchołkom przypisywane są kombinacje kodów. Reguła przypisywania kodów jest podobna do powyższej: liczba bitów kodu jest równa liczbie wierzchołków, przez które trasa przechodzi od oryginału do tego wiszącego wierzchołka, a wartość określonego bitu odpowiada kierunkowi od rodzica do „dziecka” (powiedzmy, przejście na lewo od rodzica odpowiada 1, na prawo - 0 )

Powstałe kombinacje kodów są zapisywane w pamięci urządzenia do kompresji wraz z odpowiednikami i tworzą słownik. Korzystanie z algorytmu jest następujące. Skompresowana sekwencja znaków jest dzielona na fragmenty zgodnie z istniejącym słownikiem, po czym każdy z fragmentów jest zastępowany przez kod ze słownika. Fragmenty nie znalezione w słowniku tworzą nowe wiszące piki, przybierają na wadze i są również wprowadzane do słownika. W ten sposób powstaje algorytm adaptacyjnego uzupełniania słownika.

Aby zwiększyć efektywność metody, pożądane jest zwiększenie rozmiaru słownika; w tym przypadku współczynnik kompresji jest zwiększony. Praktyczny rozmiar słownika to 4–16 KB pamięci.


Powyższy algorytm ilustrujemy przykładem. Na ryc. 2.13 pokazuje oryginalny schemat (jest również nazywany drzewem Huffmana). Każdy wierzchołek drzewa jest pokazany przez prostokąt, w którym dwie cyfry są wprowadzane ułamkiem: pierwszy oznacza liczbę wierzchołka, drugi jego wagę. Jak widać, zgodność wag wierzchołków i ich liczb jest spełniona.

Załóżmy teraz, że symbol odpowiadający wierzchołkowi 1 napotkał po raz drugi w sekwencji testowej. Ciężar wierzchołka zmienił się, jak pokazano na ryc. 2.14, w wyniku czego naruszona jest reguła numeracji wierzchołków. W następnym etapie zmieniamy położenie wiszących wierzchołków, dla których zamieniamy wierzchołki 1 i 4 i przenumerujemy wszystkie wierzchołki drzewa. Powstały wykres pokazano na ryc. 2.15 Ponadto procedura przebiega podobnie.

Należy pamiętać, że każdy wiszący wierzchołek drzewa Huffmana odpowiada określonemu symbolowi lub ich grupie. Rodzic różni się od dzieci tym, że grupa znaków, które mu odpowiadają, jest o jeden znak krótsza niż grupa jego dzieci, a te dzieci wyróżniają się ostatnią postacią. Na przykład rodzic odpowiada znakom „samochód”; wtedy dzieci mogą mieć sekwencje „kara” i „karp”.

Podany algorytm nie jest akademicki i jest aktywnie wykorzystywany w programach do archiwizacji, w tym podczas kompresji danych graficznych (omówimy je poniżej).

Algorytmy Lempel - Ziva

Są to najczęściej stosowane algorytmy kompresji. Są one używane w większości programów archiwizujących (na przykład PKZIP. ARJ, LHA). Istotą algorytmów jest to, że pewien zestaw znaków jest zastępowany podczas archiwizacji jego liczbą w specjalnie wygenerowanym słowniku. Na przykład wyrażenie „numer wychodzący ...” często występujące w korespondencji biznesowej może zająć pozycję 121 w słowniku; następnie zamiast przesyłać lub przechowywać wspomnianą frazę (30 bajtów), można zapisać numer frazy (1,5 bajta w postaci binarnej dziesiętnej lub 1 bajt w postaci binarnej).

Algorytmy zostały nazwane na cześć autorów, którzy zaproponowali je w 1977 r. Pierwszym z nich jest LZ77. Do archiwizacji tworzone jest tak zwane dwuczęściowe okno przesuwne dla wiadomości. Pierwsza część, w większym formacie, służy do utworzenia słownika i ma rozmiar rzędu kilku kilobajtów. W drugiej, mniejszej części (zwykle do 100 bajtów) akceptowane są bieżące znaki przeglądanego tekstu. Algorytm próbuje znaleźć w słowniku zestaw znaków pasujących do znaków przyjętych w oknie podglądu. Jeśli to się powiedzie, generowany jest trzyczęściowy kod: przesunięcie w słowniku względem jego początkowego podłańcucha, długość tego podłańcucha, znak następujący po tym podciągu. Na przykład wybrany podciąg składa się ze znaków „app” (łącznie 6 znaków), po których następuje znak „e”. Następnie, jeśli podciąg ma adres (miejsce w słowniku) 45, to wpis w słowniku ma postać „45, 6. e”. Następnie zawartość okna jest przesuwana o pozycję i wyszukiwanie jest kontynuowane. W ten sposób powstaje słownik.

Zaletą algorytmu jest łatwo sformalizowany algorytm kompilacji słowników. Ponadto możliwe jest rozpakowanie bez początkowego słownika (pożądane jest, aby mieć sekwencję testową) - słownik jest tworzony podczas rozpakowywania.

Wady algorytmu pojawiają się, gdy zwiększa się rozmiar słownika - rośnie czas wyszukiwania. Ponadto, jeśli ciąg znaków pojawi się w bieżącym oknie, którego nie ma w słowniku, każdy znak zostanie zapisany za pomocą trzyelementowego kodu, tj. okazuje się, że nie jest to kompresja, ale napięcie.

Algorytm LZSS, zaproponowany w 1978 r., Ma najlepsze cechy. Istnieją różnice w utrzymywaniu przesuwnego okna i kodów wyjściowych sprężarki. Oprócz okna algorytm tworzy drzewo binarne podobne do drzewa Huffmana, aby przyspieszyć wyszukiwanie dopasowań: każdy podciąg opuszczający bieżące okno jest dodawany do drzewa jako jedno z dzieci. Algorytm ten pozwala dodatkowo zwiększyć rozmiar bieżącego okna (pożądane jest, aby jego wartość była równa potędze dwóch: 128, 256 itd.). Kody sekwencji są tworzone w inny sposób: wprowadzono dodatkowy 1-bitowy prefiks, aby odróżnić niezakodowane znaki od par „offset, length”.

Jeszcze większy stopień kompresji uzyskuje się za pomocą algorytmów takich jak LZW. Wcześniej opisane algorytmy mają stały rozmiar okna, co uniemożliwia wprowadzanie fraz dłuższych niż rozmiar okna w słowniku. W algorytmach LZW (i ich poprzedniku LZ78) okno podglądu ma nieograniczony rozmiar, a słownik gromadzi frazy (a nie zbiór znaków, jak poprzednio). Słownik ma nieograniczoną długość, a enkoder (dekoder) działa w trybie czuwania. Gdy generowana jest fraza pasująca do słownika, wydawany jest kod dopasowania (tj. Kod tej frazy w słowniku) i kod znaku po nim. Jeśli podczas gromadzenia znaków powstaje nowa fraza, jest ona również wprowadzana do słownika, a także krótsza. Rezultatem jest procedura rekurencyjna, która zapewnia szybkie kodowanie i dekodowanie.

Dodatkową funkcję kompresji zapewnia skompresowane kodowanie powtarzających się znaków. Jeśli w sekwencji niektóre znaki następują po sobie w rzędzie (na przykład w tekście mogą to być znaki „spacja”, w sekwencji numerycznej - kolejne zera itp.), Wówczas sensowne jest zastąpienie ich parą „znaków; długość” lub „znak, długość „ W pierwszym przypadku kod wskazuje, że sekwencja zostanie zakodowana (zwykle 1 bit), a następnie kod powtarzającego się znaku i długość sekwencji. W drugim przypadku (przewidzianym dla najczęściej powtarzających się znaków) przedrostek oznacza po prostu znak powtórzeń.

DZWON

Są tacy, którzy czytają te wiadomości przed tobą.
Subskrybuj, aby otrzymywać świeże artykuły.
E-mail
Imię
Nazwisko
Jak chcesz przeczytać Dzwon
Bez spamu