Leksykon IT › Programowanie › Interpolacja sinc

Interpolacja sinc

Programowanie Svenska → Zaktualizowano: 2026-10-29

Teoretycznie doskonały sposób obliczania wartości między próbkami sygnału o ograniczonym paśmie i wzór, do którego przybliża się każdy poważny resampler.

Twierdzenie o próbkowaniu mówi, że sygnał poniżej częstotliwości Nyquista można dokładnie odtworzyć z jego próbek. Przepisem jest wzór interpolacyjny Whittakera–Shannona: na każdej próbce centruje się funkcję sinc, sin(πx)/(πx), i sumuje je wszystkie. W dziedzinie czasu to idealny filtr dolnoprzepustowy.

Kłopot w tym, że sinc nigdy się nie kończy, więc nikt nie może go użyć dosłownie. Prawdziwe implementacje obcinają go i wygładzają oknem, często Kaisera, a długość decyduje o kompromisie między ostrością, zużyciem CPU i przedzwonem. Biblioteki takie jak libsamplerate i SoX udostępniają właśnie tę gałkę. Interpolacja liniowa jest tańsza, ale przepuszcza aliasing jak sito, co po części tłumaczy, jak brzmiały dawne silniki gier.

← Wróć do leksykonu