Zvukové efekty 4. – změna tempa a ladění
Šestidílný seriál „Zvukové efekty“ napsal kolega Viktor Svoboda pro server Audiocity.cz. Předchozí díly seriálu najdete zde:
V minulých dílech jsme probrali základní nástroje pro úpravu zvukového signálu. Většina popisovaných zařízení se navíc vyskytovala jak v digitálním, tak v analogovém provedení. Následující efekty jsou až na výjimky výhradně digitální – řeč bude o úpravě tempa a ladění zvukového signálu. Jen připomínám, že následující text se týká práce se zvukovým signálem, nikoliv MIDI, kde jsou obdobná nastavení v editoru součástí přehrávání a tyto úpravy se dějí bez ztráty kvality pouhou změnou rychlosti načítání not (resp. hudebních dat) a jejich posunutím v rámci stupnice.
Hrátky s tempem (time stretch)
Důvody použití snad ani nebudu uvádět, stačí jen zmínit podmínky závodního rock’n’rollu, které předepisují pro soutěž přesné tempo (podle druhu 45-50 taktů za minutu) a hledejte zajímavé nahrávky ve stanoveném tempu…
Způsoby změny tempa jsou dvojího druhu – při prvním dochází ke změně ladění (výšky tónu) a při druhém zůstává ladění nezměněno.
První způsob představuje pouhou změnu rychlosti načítání jednotlivých vzorků signálu a následné převzorkování na standardní vzorkovací kmitočet. Výsledný efekt je pak obdobný např. Změně rychlosti u gramofonu a dal se tedy realizovat i s analogovými přístroji. Ovšem samostatné použití tohoto efektu je omezeno jen na specifické případy.
Druhý způsob je mnohem univerzálnější pro práci s tempem, ale vzhledem k jeho větší složitosti uděláme opět (ne)oblíbenou odbočku do teorie.
Představte si sinusový tón frekvence např. 10 Hz který trvá 1 sekundu – impulz tedy obsahuje 10 period a můžeme jej brát jako jednu dobu. Pokud chceme změnit tempo aniž bychom změnili ladění, tak musí dojít i ke změně trvání jedné doby, tedy i našeho impulzu. To však znamená i různý počet period obsažených v impulzu, má-li zůstat zachována frekvence. Jak toho docílíme? Snadno. Stačí vzít část signálu a zkopírovat jej zpět do záznamu. Pokud tedy snížíme tempo např. na polovinu, tj výsledný impulz bude trvat dvojnásobnou dobu – 2 s a musí tedy obsahovat i dvojnásobný počet period sinusovky, tedy 20.
Je zřejmě, že pokud tempo snižujeme, program si takzvaně „cucá data z prstů“ a při zvyšování tempa jsou naopak úseky mazány. Proto se nedoporučují velké změny tempa (přibližně ±10%) a výrazně menším zlem je samozřejmě tempo zvyšovat. Výsledek bude též lepší pro jednodušší zvuky (např. Pro jediný nástroj), kde je většina zvuků v harmonii k základnímu tónu. Dále je přinejmenším vhodné provést úpravu tempa u nahrávky v jediném kroku, ve výsledku pak nebude tolik chyb.
Nevýhody
Podstatný problém je fakt, že pro optimální výsledek by měly být kopírovány celé periody resp. jejich celistvé násobky, jinak dojde k nežádoucím změnám fáze. To je problém, pokud je ve zvukové stopě zaznamenáno více frekvencí, které jsou navzájem nesoudělné (nejsou celistvým násobkem/podílem jiné frekvence). Pokud tedy upravujeme zvuk, ve kterém se vyskytuje nějaká výrazně dominantní složka, je dobré k tomu přihlížet při volbě počtu zvukových bloků za sekundu, resp. jejich délce.
Dalším problémem je vhodné navázání původního a zkopírovaného signálu. Pokud nedojde k hladkému navázání, bude ve výsledku slyšet „lupnutí“, které vzhledem k periodicitě celého děje může přejít v trvalý praskot. Tomuto jevu se dá částečně předejít např. překrýváním zvukových bloků (angl. Overlapping).
Při větším snížení tempa dále může dojít ke „zdvojení“ krátkých zvuků, jako je např. úder do bicích, ke kterému dojde, pokud se okamžik úderu nachází v úseku, který se zkopíruje. Významná je délka tohoto úseku vzhledem ke schopnosti lidského ucha tyto dva po sobě jdoucí zvuky od sebe odlišit. Naštěstí délka těchto úseků bývá naštěstí možné měnit – viz obrázky.
Nevýhodou pro změnu zrychlených nahrávek je nepřirozeně rychlé doznívání tónů, které je způsobeno odseknutím patrné části záznamu. Tento jev však je možné částečně korigovat použitím vhodně nastaveného dozvukového efektu.
Úprava ladění (transpozice, pitch shift)
Toto zařízení představuje ekvivalent transpozice u not, ovšem jeho nastavení není vázáno na pevně stanovené hudební intervaly a výšku tónu lze tedy zvyšovat/snižovat libovolně (nejčastěji v procentech), přičemž o velikosti změny ladění a jejím vlivu na kvalitu platí to samé, jako v předchozím případě.
Provedení změny ladění si můžeme představit jako kombinaci obou uvedených způsobů změny tempa, tj. změnou tempa beze změny ladění a následné celkové zrychlení/zpomalení spojené se změnou frekvence zvuků. Pokud tedy chceme transponovat třeba nahoru (zvýšit frekvenci zvuků), dojde ke snížení tempa při zachování ladění a následnému zrychlení celé skladby spojené se změnou výšky tónů tak, aby zůstala zachována délka (tempo) celé skladby.
Nevýhody jsou pochopitelně stejné, jako u změny tempa. Dalším problémem je fakt, že se změní i výška zvuků, které by se nezměnily, pokud by skladba byla hrána v jiné tónině (nádechy apod.) a zároveň se změní celkové zabarvení zvuku vlivem posunutí celého spektra zvukové nahrávky. Pokud bychom například transponovali téměř o oktávu dolů, tak maximální frekvence původní nahrávky v CD kvalitě (kolem 20kHz) se posune vlivem transpozice na polovinu, tj. 10kHz, nemluvě o dalších problémech s tím spojených (viz. změna tempa). O transpozici nahoru platí to samé, přirozeně v opačném smyslu.
Ještě je nutné dodat, že úprava tempa, ani ladění nemusí být konstantní pro celou skladbu a některé programy umožňují obojí měnit postupně.
Praktické příklady:
U tohoto programu jsou oba nástroje sloučeny do jednoho efektu. Obrázek zachycuje nastavení pro postupné snížení ladění z původní hodnoty na 1/(1,64) původní výšky tónu při konstantním tempu. „Splicing frequency“ je počet úseků za 1s, které se budou v daném případě mazat, respektive počet „slepek“ za sekundu. „Overlapping“ vyjadřuje část úseku, která se bude překrývat s následujícím v místě navázání.Čím je tato hodnota vyšší, tím musí být úseky delší. Je to způsobeno tím, že při konstantním počtu slepek za sekundu se úseky překrývají větší částí a pro obsažení stejné délky záznamu musí být tedy jednotlivé části delší. Pokud to s overlappingem přeženeme, bude znít výsledek jako při použití efektu „chorus“. V opačném případě budou jednotlivé slepky příliš patrné a může být dokonce slyšet jakýsi zvuk o základní frekvenci rovné „splicing frequency“.
Harmonická analýza
Dalším způsobem, jak upravit tempo/ladění je využití harmonické analýzy. Tento způsob není tak používán, jako dříve popsané, neboť pro malé změny tempa/ladění dává podstatně horší výsledky. S výhodou se ale dá použít pro zvuky dlouhodobějšího charakteru (např. různé šumy) a při velmi velkých změnách tempa (především pro snižování tempa na ½,1/3,atd).
Celé kouzlo spočívá v rozdělení signálu na části po 2n vzorků (512,1024,…) a získání spektra signálu pomocí harmonické analýzy (nejčastěji FFT – fast Fourier transformation). Získané spektrum má poloviční počet harmonických frekvencí, než kolik vzorků má vybraný úsek signálu, z čehož je patrný vztah délky disktrétního („digitalizovaného“) signálů a počtu frekvenčních složek jeho spektra. Pak se ze získaného spektra vytvoří nové spektrum, které by odpovídalo signálu složenému ze stejných frekvencí, pokud by trval delší dobu, čímž dojde ke změně trvání jednotlivých úseků a tím i ke změně tempa.
V praxi se toho docílí takzvanou interpolací/decimací vzorků původního spektra. Délka jednoho bloku po snížení tempa bude větší (signál bude mít více vzorků) a jeho spektrum bude tedy obsahovat více složek. Vychází se z toho, že obě frekvenční charakteristiky jsou přibližně spojité a mají „stejné obálky“. Tímto způsobem se dopočítají (interpolují) chybějící body a vzniklé spektrum se přepočítá zpátky na zvukový signál. V opačném případě dochází ke snížení počtu vzorků (decimaci) frekvenční charakteristiky.
Hlavní problém nastane, pokud výsledné tempo nebude celistvým násobkem/podílem původní hodnoty, protože pak se frekvence obsažené v původním signálu budou nacházet v nové frekvenční charakteristice mezi jejími jednotlivými vzorky a bude docházet k nepřesnostem. Pokud budeme tempo zvyšovat, budou některé kmitočty zcela odstraněny. Další nevýhodou je náročnost harmonické analýzy a syntézy na výpočetní výkon.
Změny ladění celé nahrávky lze docílit posunutím spektra původního signálu ve směru transpozice, při zachování počtu vzorků frekvenční charakteristiky. Ovšem ve výsledku není mezi úpravou signálu přes FFT či pomocí kopírování/mazání částí záznamu až takový rozdíl, neboť i při uvedených úpravách spektra nahrávky a následnému přepočítání zpět na zvukový záznam dochází k opakování částí jednotlivých úseků(->ze kterých se původně počítala FFT), jak vyplývá z vlastností FFT.
Uvedeného postupu využívá například známý editor GoldWave. Jeho nástroje na úpravu tempa jsou na obr.2 (standardní způsob popsaný výše) a obr.3 (přes FFT ). Na obr.4 je nástroj pro editaci změny ladění.
Závěrem se dá říci, že popsané efekty mívají velmi destruktivní charakter na celou nahrávku a jejich použití je třeba volit uvážlivě. Zároveň se omlouvám, bylo toho poněkud více, ale doufám, že to bylo zajímavé čtení.