-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Custom effect example #1284
Custom effect example #1284
Conversation
Do you want to have this merged or leave it as an unmerged pull request that can be referenced from a tutorial? I think we could merge it if the lines registering this effect in src/effects/native/nativebackend.cpp and builds/depends.py are commented out. I think "Example Effect" would be a better name than "Custom DSP Effect". |
I just wrote it to be referenced in the wiki article of a mixxx effect development guide. To be honest I found it quite useful as a quick and dirty utility effect to mute the effect chain I am working on, and if there is interest in such a utility effect (or a set of utility effects i.e mute/dc/gain/panning/phase) it would be meaningful to be further developed and merged. |
I think it will be helpful to merge it. If it is left out of the upstream code base it will likely not get updated as changes are made to the effects system. |
I don't think we need it in this stage in the code base. We have already other simple effects like bit rushed, that can be treated as an example. If you think we have a use case for a gain effect, we can include it. But this requires a popper naming here and ramping to avoid crackling. |
update to most recent master the commit.
@@ -6,6 +6,7 @@ | |||
#include "effects/native/bessel4lvmixeqeffect.h" | |||
#include "effects/native/bessel8lvmixeqeffect.h" | |||
#include "effects/native/bitcrushereffect.h" | |||
#include "../effects/native/utilityeffect.h" |
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.
please use includes relative to the src directory, without ../
EffectManifest manifest; | ||
manifest.setId(getId()); | ||
manifest.setName(QObject::tr("Utility")); | ||
manifest.setAuthor("sqrwvzblw"); |
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.
hää? I think we use "The Mixxx Team" in the other effects.
|
||
|
||
const int kChannels = 2; | ||
for (unsigned int i = 0; i < numSamples; i += kChannels) { |
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.
we have vectorized functions for this case. SampleUtil::copyWithRampingGain() or similar. Pleas try to make use of this.
Why is it now called Utility and not just Gain? |
This has not been updated in a long time and it is not clear that this is something that should be merged into the Mixxx code, so I am closing this PR. |
This is a very simple utility effect, with a gain knob and a mute switch for input channels. Purpose of this PR is to reference it in a basic wiki tutorial/guide on effects development for mixxx.