Žádné nahrávání, 100% lokálně, bez účtu

Článek

Zpomalení zvuku pro přepis

Rychlé mluvčí, neznámé přízvuky a více překrývajících se hlasů jsou tři hlavní důvody, proč přepis vázne. Zpomalení nahrávky dává čas zachytit to, co bylo řečeno. Háček je v tom, že naivní zpomalení přehrávání také snižuje tónovou výšku každého hlasu, což řeč spíše ztěžuje než usnadňuje. Tento článek vysvětluje rozdíl mezi pouhým snížením rychlosti a time-stretchingem zachovávajícím výšku tónu a pokrývá praktické rozsahy, které skutečně pomáhají.

Proč zpomalení pomáhá

Lidská řeč nese velké množství informací v krátkém okně. Rychlý mluvčí může dodat 200 slov za minutu nebo více, a při takovém tempu má ucho málo času na rozpoznání jednotlivých fonémů před příchodem další slabiky. Zpomalení zvuku dává mozku více času na zpracování na slabiku, což je nejdůležitější ve třech situacích: mluvčí s neznámým přízvukem, jehož mapování fonémů se liší od očekávaného; hustá technická pasáž, kde každé slovo nese význam a jedno špatné pochopení produkuje špatný termín; a nahrávky se dvěma nebo více překrývajícími se hlasy, kde ucho musí sledovat oddělené proudy najednou. Ve všech třech případech cílem není slyšet něco, co tam nebylo, ale dát si dostatek času, aby se přesně slyšelo to, co bylo již nahráno. Rychlost přehrávání 0.75x je často dostatečná pro přízvuk nebo hustou pasáž. Rychlost 0.5x je užitečná pro krátký úsek, kde prvních několik průchodů nevyřešilo slova.

Zobrazení průběhu vlny ukazující segment řeči s časovou osou roztaženou horizontálně pro reprezentaci pomalejšího přehrávání, hranice slabik viditelné jako vrcholy a prohlubně

Rychlost a výška tónu: proč naivní zpomalení nefunguje

Nejjednodušším způsobem zpomalení zvuku je přehrávání vzorků nižší rychlostí, než byly nahrány. Takto staré magnetofonové přehrávače zpomalovaly: pomalejší otáčení pásky snížilo jak délku, tak výšku tónu. Při 0.75x se hlasy sníží přibližně o malou tercii. Při 0.5x se sníží o celou oktávu. Výsledkem je obeznámené pomalé, hluboké zkreslení, které řeč zní nepřirozeně a paradoxně hůře srozumitelně, protože formantové frekvence odlišující samohlásky se všechny posunuly dolů. Správným přístupem je time-stretching: změna délky zvuku bez změny frekvencí. Výška tónu každého hlasu zůstává stejná; mění se pouze rychlost, s jakou přicházejí slabiky. Toto je přístup používaný nástrojem audio-speed a většinou specializovaného softwaru pro přepis. Výsledkem vnímání je, že zpomalená nahrávka zní jako stejný mluvčí, který mluví pomalejším tempem, což je přesně to, co potřebujete, když je cílem přesný přepis.

Jak funguje time-stretching: přístup atempo

Nejrozšířenějším algoritmem pro time-stretching v praktických zvukových nástrojích je algoritmus založený na fázovém kodování, jehož běžnou implementací ve ffmpeg je filtr atempo. Vstupní zvuk je rozdělen na krátké překrývající se rámce, typicky 20 až 40 milisekund každý. Algoritmus analyzuje fázové vztahy mezi sousedními rámci, poté syntetizuje nové rámce s upravenou rychlostí a přitom upravuje fáze tak, aby se po sobě jdoucí rámce správně seřadily. Výsledkem je kontinuální výstupní signál, jehož délka se změnila, ale jehož frekvenční obsah se nezměnil. Protože rámce jsou krátké vzhledem k typické době výšky tónu lidského hlasu, základní frekvence řeči je zachována přes protažení. Vedlejším účinkem algoritmu je, že rychlé tranzienty, jako je klapnutí souhlásky, mohou být mírně rozmazány při velkém protažení, protože syntéza překryvem rámců zavádí malé množství průměrování. Toto není chyba v implementaci; je to inherentní vlastnost rodiny algoritmů overlap-add.

Diagram procesu time-stretchingu overlap-add: vstupní zvukové rámce vlevo, překrývající se syntetizační rámce uprostřed a protažená výstupní průběhová vlna vpravo

Praktické rozsahy rychlosti a limity kvality

Pro přepisovou práci pokrývají dvě hodnoty rychlosti většinu praktických potřeb. Při 0.75x je řeč protažena na 133 % původní délky. Shluky souhlásek a rychlé přechody samohlásek se snadněji oddělují a změna je dostatečně malá, aby algoritmus zaváděl jen velmi málo vnímatelných artefaktů. Většina posluchačů může sledovat řeč při tomto tempu bez ztráty přirozeného rytmu věty. Při 0.5x je zvuk protažen na dvojnásobek původní délky. To je užitečné pro jednu větu nebo krátkou obtížnou pasáž, ale je příliš pomalé pro nepřetržité poslouchání po dobu několika minut; koncentrace klesá dříve, než jsou slova rozpoznána. Pod 0.5x se kvalita výstupu znatelně zhoršuje. Syntéza overlap-add začíná zavádět chvění nebo fázovost na prodloužených samohláskách a časové narážky mezi souhláskami a samohláskami nesoucí prozódii se zkreslují. Filtr atempo ve ffmpeg stanovuje minimum 0.5x pro jeden průchod, což odráží tento limit kvality. Hodnoty pod 0.5x vyžadují řetězení dvou průchodů a úroveň artefaktů odpovídajícím způsobem roste. Pro téměř všechny případy přepisové práce, setrvání při 0.75x nebo maximálně 0.5x pro krátké segmenty, produkuje čistý, použitelný výstup.

Lokálně pomocí nástroje audio-speed

Nástroj audio-speed na tomto webu běží celý v prohlížeči pomocí ffmpeg zkompilovaného do WebAssembly. Přetáhnete zvukový soubor na stránku, nastavíte násobitel rychlosti a zpracování probíhá na vašem zařízení. Nahrávka neopustí váš počítač v žádném okamžiku: žádné nahrávání, žádný server, žádná služba třetí strany. To je důležité pro nahrané rozhovory, interview, lékářský diktát, soudní řízení a jakýkoli jiný kontext, kde je obsah zvuku citlivý. Nástroj přijímá běžné zvukové formáty zpracovávané ffmpeg, včetně MP3, WAV, M4A, OGG a FLAC. Výstupem je soubor ke stažení v rychlosti, kterou jste zvolili. Protože zpracování probíhá lokálně, doba závisí na délce souboru a rychlosti vašeho zařízení. Několik minut zvuku se typicky zpracuje za méně než minutu na moderním laptopu. Nástroj používá stejný filtr atempo popsaný v tomto článku, takže zde popsané charakteristiky kvality se přímo vztahují na to, co ve výstupu uslyšíte.

Nástroje v tomto článku

Časté dotazy

Změní zpomalení zvuku také výšku tónu?

Záleží na metodě. Jednoduché snížení rychlosti přehrávání výšku tónu mění: při 0.5x se hlasy sníží o celou oktávu. Nástroj audio-speed používá time-stretching (filtr atempo), který mění délku bez změny výšky tónu, takže hlasy zůstávají na původní frekvenci.

Jaká je nejpomalejší rychlost, která stále zní čistě?

Při 0.75x je výstup čistý pro většinu nahrávek. Při 0.5x je přijatelný pro krátké pasáže. Pod 0.5x začíná algoritmus overlap-add zavádět slyšitelné artefakty na prodloužených samohláskách a přechodech souhlásek. Pro přepisovou práci, setrvání na 0.5x nebo výše dává nejlepší výsledky.

Je soubor nahrán, když používám nástroj audio-speed?

Ne. Nástroj audio-speed běží celý v prohlížeči. Soubor je zpracován lokálně na vašem zařízení pomocí WebAssembly. Nic není odesláno na žádný server, takže obsah vaší nahrávky zůstává soukromý.