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

Audio file processor fade in/out #5855

Open
Qtamo opened this issue Dec 21, 2020 · 6 comments
Open

Audio file processor fade in/out #5855

Qtamo opened this issue Dec 21, 2020 · 6 comments

Comments

@Qtamo
Copy link

Qtamo commented Dec 21, 2020

I think it would be good to have a "fade in" knob for the start and loopback points, as well as a "fade out" knob for the end point. The unit for these knobs could be milliseconds. Having the ability to add microfades would make it very simple to remove clicks from a sample that is looped/cut at a part where the volume is high.

Maybe another option that would make the UI less cluttered, but would give less control, would be to add a global "fade" knob that adds the same amount (in milliseconds) of fade in/out to all the points (start, loopback, end).

@RoxasKH
Copy link
Contributor

RoxasKH commented Dec 21, 2020

Imo you should clarify a good use of what you suggested, because seen as it is, i think that envelope attack and release are there for that.

@Qtamo
Copy link
Author

Qtamo commented Dec 21, 2020

@RoxasKH Lets say that you want to loop "church_organ01.ogg". So you put the end point somewhere, e.g at 0.03, and enable loop. Then you hold down a note. The sample will click every time it loops. If you then change it to enable "ping pong loop" and move the starts point to 0.01 and hold the note, it will click on both sides of the sample.The envelope won't help with this sort of use case.

Even if you are not looping the sound, you need to time the amplitude envelope in such a way that the sound is completely quiet at the time that you reach the end of the sample, so that no clicking can be heard. This sort of "fade" parameter would automatically be timed from the start and end points of the sample and be less fiddly.

@qnebra
Copy link

qnebra commented Dec 21, 2020

It is controlled in "Envelope, filter & LFO" tab.

@RoxasKH
Copy link
Contributor

RoxasKH commented Dec 21, 2020

@RoxasKH Lets say that you want to loop "church_organ01.ogg". So you put the end point somewhere, e.g at 0.03, and enable loop. Then you hold down a note. The sample will click every time it loops. If you then change it to enable "ping pong loop" and move the starts point to 0.01 and hold the note, it will click on both sides of the sample.The envelope won't help with this sort of use case.

Even if you are not looping the sound, you need to time the amplitude envelope in such a way that the sound is completely quiet at the time that you reach the end of the sample, so that no clicking can be heard. This sort of "fade" parameter would automatically be timed from the start and end points of the sample and be less fiddly.

I got what you mean and you would like to do, practically you want someway to avoid clicking when looping a sample; but, unless you someway get to get a crossfade where the end of the loop get quiet and at the same time the start of the loop gets louder and starts playing exactly when the end start getting quiet, that won't work.

Adding fades as you ask would just result in having some silence in between, slight or not.

@Qtamo
Copy link
Author

Qtamo commented Dec 21, 2020

@RoxasKH I think if the fades are short enough (milliseconds or less) there will be no audible silence or even "quietness". The way I thought about it, the fade only reaches zero amplitude (= silence) at the end point (for example), but the fade starts slightly before that. If there is looping, then the sound immediately continues with the sample after the end point, so there is no time for it to be silent. Waves regularly momentarily pass the zero amplitude level anyway, and this wouldn't really be that different. I added a drawing of a really short fade to illustrate what I mean.
Audio microfade

Edit: I found a good explanation from musikbear on this (see the answer with the drawing on page 1) https://lmms.io/forum/viewtopic.php?t=148#content-wrapper. Clicks result from a sudden change in amplitude level, or speaker cone position more concretely (e.g if the amplitude level changes suddenly from nonzero to zero when the sample ends, the speaker cone moves abruptly to the middle resting position and produces a click sound). This would prevent that.

@RoxasKH
Copy link
Contributor

RoxasKH commented Feb 14, 2021

Unluckily clicks had been an issue until 0.4

#3086

The envelope can avoid the ones at the end or at the start of a sounds, but obviously not the ones created with looping points.

Letting a sound finish the cycle could solve this, but it wasn't seen as a good solution, for possible unnecessary runs.
I anyway think that until the clicks problem get solved, this won't be solved before.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants