Leksykon IT › Programowanie › Splot dzielony (partitioned convolution)

Splot dzielony (partitioned convolution)

Programowanie Svenska → Zaktualizowano: 2026-10-28

Podział długiej odpowiedzi impulsowej na bloki i splatanie każdego z nich przez FFT, dzięki czemu pogłos splotowy staje się tani i prawie pozbawiony opóźnienia.

Splot bezpośredni kosztuje jedno mnożenie na każdą próbkę odpowiedzi impulsowej dla każdej próbki wyjściowej — przy trzysekundowej katedrze i 48 kHz to około 144 000 na próbkę. Splot przez FFT jest znacznie tańszy, ale musi czekać na pełny blok, a blok długości całej odpowiedzi to sekundy latencji.

Rozwiązaniem jest pocięcie odpowiedzi impulsowej. Przy blokach równej wielkości latencja wynosi jeden blok, a widma obliczone dla wcześniejszych bloków można wykorzystać ponownie. Bill Gardner pokazał w 1995 roku, jak zejść do zera: sam początek odpowiedzi splata się bezpośrednio jako filtr FIR, a każdy kolejny fragment ma blok dwa razy dłuższy. Od Altiverba po ConvolverNode w przeglądarce — wszystko działa na jakimś wariancie tego pomysłu.

← Wróć do leksykonu