Filtr dolnoprzepustowy, górnoprzepustowy, ...

0

Chodzi mi o napisanie algorytmu nakładającego filtr dolnoprzepustowy, górnoprzepustowy, środkowoprzepustowy i środkowozaporowy na dowolny przebieg szesnastobitowy unsigned (ewentualnie przebieg szesnastobitowy signed).

Dane to by były następujące: Częstotliwość próbkowania przebiegu (dźwięku), częstotliwość filtru (dolnoprzepustowy, górnoprzepustowy), ewentualnie druga częstotliwość filtru (środkowoprzepustowy i środkowozaporowy).

Jeżeli filtrowi dolno lub górnoprzepustowemu poddamy szum biały (przebieg o płaskiej charakterystyce częstotliwościowej), to wokól częstotliwości tego filtru po jego przepuszczeniu zobaczymy jakby "zbocze", którego "stromość" w niektórych programach można ustawić w decybelach na oktawę. Mnie głównie interesuje taki filtr, który "twardo" ucina częstotliwości bez łskośnego "zbocza".

Czy może mi ktoś podać algorytm Delphi lub Pascala realizujący filtr dolno lub górnoprzepustowy? Środkowoprzepustowy i środkowozaporowy to chyba połączenie dolno- i górnoprzepustowego.

0

Jeżeli nie da rady w prosty sposób zrealizować filtru lowpass lub highpass, to chciałbym wiedzieć, czy da się zrobić algorytm obliczający charakterystykę częstotliwościową nagrania lub analizator widma częstotliwości dźwięku w danym momencie nagrania (nagranie szesnastobitowe, dowolna częstotliwość próbkowania, mono).

0

jesli dobrze pamietam z zajęć: jezeli jestes w stanie przedstawic sygnał obrabiany w formie dyskretnej znasz jego częstotliwość próbkowania oraz wartość poniżej lub powyżej której ma być odcięcie to nie powinno chyba byc problemu. Zerujesz próbki mające poniżej wartości odcięcia a od probek powyzej odejmujesz wartośc odciecia (dla dolno-zaporowego). Jeśli się nie myle. Dane gromadzisz w jakimś buforze? masz do niego swobodny dostęp??

0

Sygnał źródłowy jest zapisany w pliku RAW jako ciąg szesnastobitowych liczb Word (od 0 do 65536). Watość częstotliwości próbkowania oraz wartość częstotliwości odcięcia filtru wprowadzałoby się ręcznie w programie. Chcę w wyniku działania programu otrzymać drugi plik RAW, który zawierałby przefiltrowany sygnał.

0

Pooglądaj 16 rozdział książki do której link podałem wcześniej. Znajdziesz tam maleńki program w BASICu, jest to filtr dolnoprzepustowy, przerobić go łatwo na górnoprzepustowy (spectral inversion ? rozdział 14)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0