[FFmpeg-user] fftfilt

Michael Koch astroelectronic at t-online.de
Tue Oct 12 20:29:13 EEST 2021


Am 12.10.2021 um 18:52 schrieb Paul B Mahol:
> On Tue, Oct 12, 2021 at 10:55 AM Michael Koch <astroelectronic at t-online.de>
> wrote:
>
>> I have a question about the "fftfilt" filter. What's the default value
>> of the weight_U and weight_V options? I'm asking because I get an
>> unexpected result.
>>
>> This command line creates my input image for testing:
>>
>> ffmpeg -f lavfi -i color=black:s=300x50 -lavfi
>> drawgrid=c=white:y=-1:w=2:h=51,split[a][b];[b]crop=iw/2:x=0,scale=2*iw:ih:flags=neighbor,split[b][c];[c]crop=iw/2:x=0,scale=2*iw:ih:flags=neighbor,split[c][d];[d]crop=iw/2:x=0,scale=2*iw:ih:flags=neighbor,split[d][e];[e]crop=iw/2:x=0,scale=2*iw:ih:flags=neighbor,split[e][f];[f]crop=iw/2:x=0,scale=2*iw:ih:flags=neighbor[f];[a][b][c][d][e][f]vstack=6,split[h][v];[v]transpose[v];[v][h]hstack
>>
>> -frames 1 -y test.png
>>
>> This is the fftfilt lowpass example from the official documentation:
>>
>> ffmpeg -i test.png -vf fftfilt=dc_Y=0:weight_Y='squish((Y+X)/100-1)' -y
>> out1.png
>>
>> Problem: The output has a greenish tint.
>>
> Expressions by default for U and V are copied from Y if are unset.
> filter works only in YUV or gray space thus in above combination one gets
> green tint.

ok, that explains the greenish tint. I think in most cases it doesn't 
make sense to copy the weight_Y expression to the U and V weights. It 
would be better to set them to 1 by default.
With the current behaviour, all four examples in the documentation are 
incomplete and :weight_U=1:weight_V=1 must be added.

Michael



More information about the ffmpeg-user mailing list