-
Notifications
You must be signed in to change notification settings - Fork 661
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 custom equalizer plugin with presets (bass booster, rock...) and the ability to add your own presets via a config.json file #2831
base: master
Are you sure you want to change the base?
Conversation
I'd recommend you split this into multiple smaller files, one for menu, one for renderer and one for the presets would be a good way of splitting this. |
The code is quite small, so I think splitting it into multiple files might be unnecessary. Also, I haven't fully figured out how to do it properly yet. |
It seems like there is some overlap in functionality with the equalizer plugin that is already included in this application. |
Yes, but I don't quite understand why to use the already included plugin, since it connects all the filters to the audioSource, which does not allow you to add many filters, only 1. There is also no choice of standard presets, or the ability to add your own. |
JellyBrick meant that your plugin could be merged with the old plugin, essentially updating the old plugin instead of introducing a new one |
Nice! |
A mode for this that would be really nice is per-video EQ; instead of having to switch your presets manually every time a song plays, you can set it once and it'll keep track via videoid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds a custom equalizer plugin that supports default and user-defined presets through a config.json file. Key changes include:
- Removal of the old filters and presets configuration and menu setup.
- Introduction of helper functions to create, connect, and clear biquad filters.
- Updating the menu structure to support custom presets and configuration editing.
Files not reviewed (1)
- src/i18n/resources/en.json: Language not supported
Comments suppressed due to low confidence (2)
src/plugins/equalizer/index.ts:60
- [nitpick] Consider renaming 'allPresetsD' to 'allPresets' for clarity and consistency.
const allPresetsD = config.customPresets.concat(defaultPresets);
src/plugins/equalizer/index.ts:73
- Using 'includes' to check for the preset in customPresets may lead to unexpected behavior if the preset objects are not the same reference. Consider comparing preset names instead.
label: config.customPresets.includes(preset) ? preset.name : t(`plugins.equalizer.menu.presets.list.${preset.name}`),
This PR adds a new Custom Equalizer plugin for EQ settings with a large selection of default presets, and the ability to make your own flexible presets with detailed settings and any number of BiquadFilter. There is no UI, custom presets are added via a config.json file.