Skip to content

audio Flanger FX implementation - #11175

Open
FoamyGuy wants to merge 3 commits into
adafruit:mainfrom
FoamyGuy:audio_flanger
Open

audio Flanger FX implementation#11175
FoamyGuy wants to merge 3 commits into
adafruit:mainfrom
FoamyGuy:audio_flanger

Conversation

@FoamyGuy

@FoamyGuy FoamyGuy commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Adds a new effect class Flanger to audiodelays implementing flanging effect

Testing was performed on Metro RP2350

@tannewt tannewt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great to me! Please always consider a new module for new effects. That way boards won't need the existing ones disabled for the new one to fit.

@relic-se relic-se left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good so far. I'd like to see a getter to obtain the current state of the internal triangle lfo (from 0.0 to 1.0). Would also be cool to be able to change the waveform, but then we're getting into synthio.BlockInput territory in which some of this functionality could already be achieved with audiodelays.Echo.

// Store if we have more data in the sample to retrieve
self->more_data = result == GET_BUFFER_MORE_DATA;

return;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This return isn't necessary.


void common_hal_audiodelays_flanger_stop(audiodelays_flanger_obj_t *self) {
self->sample = NULL;
return;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This return isn't necessary.

//| spectrum, and the ``feedback`` path routes the delayed signal back into the delay line
//| to sharpen those notches into resonant peaks.
//|
//| The delay is swept upwards from ``delay_ms`` towards ``max_delay_ms``::

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the naming min_delay_ms would make more sense to me following this logic.

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.

3 participants