Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add implementation of AudioWindowKaiserBessel #485

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

scrain777
Copy link

This PR implements the KaiserBessel window from https://en.wikipedia.org/wiki/Window_function and adds the
computed window to the available windows. The Python script used to generate the windows is included alongside the Perl script used to generate other windows.

KaiserBessel has a shape parameter. I selected one specific value (3) because it was excellent for my application. In particular, I was wanting to minimize the width of the leakage at the -60dB level. The Python script can be trivially modified to implement additional variants of KaiserBessel if that is desired.

@scrain777 scrain777 marked this pull request as draft November 18, 2024 00:23
@scrain777
Copy link
Author

I have not tested this code yet.

@scrain777
Copy link
Author

I have not tested this code yet.

Tested with the FFT example on a Teensy 3.5. Works great, although on the sine example the Hanning window has less leakage....

@scrain777 scrain777 closed this Nov 19, 2024
@scrain777
Copy link
Author

Sorry, I closed the PR by mistake.

@scrain777 scrain777 reopened this Nov 19, 2024
@scrain777
Copy link
Author

Also tested in a real application on a Teensy 4.1 with audio shield.

@scrain777 scrain777 marked this pull request as ready for review November 19, 2024 04:04
@scrain777 scrain777 changed the title (draft) Add implementation of AudioWindowKaiserBessel Add implementation of AudioWindowKaiserBessel Nov 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant