[FFmpeg-user] asubboost and asupercut
Michael Koch
astroelectronic at t-online.de
Sat Nov 28 15:23:59 EET 2020
Am 28.11.2020 um 13:44 schrieb Paul B Mahol:
> On Sat, Nov 28, 2020 at 1:35 PM Michael Koch <astroelectronic at t-online.de>
> wrote:
>
>> Am 28.11.2020 um 12:57 schrieb Paul B Mahol:
>>> On Sat, Nov 28, 2020 at 12:41 PM Michael Koch <
>> astroelectronic at t-online.de>
>>> wrote:
>>>
>>>> Am 27.11.2020 um 20:50 schrieb Paul B Mahol:
>>>>> On Fri, Nov 27, 2020 at 8:24 PM Michael Koch <
>>>> astroelectronic at t-online.de>
>>>>> wrote:
>>>>>
>>>>>> Am 27.11.2020 um 19:25 schrieb Paul B Mahol:
>>>>>>> On Fri, Nov 27, 2020 at 7:09 PM Michael Koch <
>>>>>> astroelectronic at t-online.de>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I have a few questions about the asubboost and asupercut filters.
>>>>>>>>
>>>>>>>> -- In asubboost it's not yet clear how the block diagram of the
>> filter
>>>>>>>> looks like. Especially the "decay" and "feedback" options are
>> unclear.
>>>>>>>> What's the input of the the delay line? Before or after the low pass
>>>>>>>> filter? Where does the feedback go to? Before or after the lowpass
>>>>>>>> filter? I have attached a sketch of a possible block diagram, but
>> it's
>>>>>>>> only a wild guess.
>>>>>>>>
>>>>>>> This filter just adds delayed sub frequencies set by cut off
>> frequency
>>>>>> back
>>>>>>> to output. Decay sets decay of old sub echo in buffer and feedback
>> sets
>>>>>> how
>>>>>>> much
>>>>>>> new sub frequencies are added to the delay buffer.
>>>> I did try to reverse engineer the asubboost filter from its output
>>>> signal. Is the attached sketch correct?
>>>> It seems the "feedback" parameter is unnecessary because it does exactly
>>>> the same thing as "wet".
>>>>
>>> No, your reasoning is invalid.
>>>
>>> I do not have time to draw graphs or do consulting for free.
>> When you swap the values of "wet" and "feedback", the output does always
>> remain the same.
>> If you think that I'm wrong, please show an example to prove the opposite.
>>
> Make sure that you take into account decay parameter, delay buffer is still
> used.
When you swap the values of "wet" and "feedback", the output does always
remain the same, regardless which values you use for "dry", "decay" and "delay".
As can be shown with this example:
set "A=0.4"
set "B=0.7"
ffmpeg -f lavfi -i aevalsrc='0.5*gt(t,0.1)':d=1 -lavfi
asplit[a][b];[b]asubboost=dry=0.3:wet=%A%:decay=0.4:feedback=%B%:delay=50[c],[a][c]join,showwaves=draw=full:s=800x300:r=1
-frames 1 -y out1.png
ffmpeg -f lavfi -i aevalsrc='0.5*gt(t,0.1)':d=1 -lavfi
asplit[a][b];[b]asubboost=dry=0.3:wet=%B%:decay=0.4:feedback=%A%:delay=50[c],[a][c]join,showwaves=draw=full:s=800x300:r=1
-frames 1 -y out2.png
ffmpeg -i out1.png -i out2.png -lavfi vstack -y out.png
Red is input step signal, green is output step response of the asubboost
filter. In the lower half of the output image the "wet" and "feedback"
values are swapped.
Michael
More information about the ffmpeg-user
mailing list