Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#9915 closed defect (wontfix)

gblur sigma=0 vs sigmaV=10

Reported by: Jozef Chutka Owned by:
Priority: normal Component: undetermined
Version: unspecified Keywords: gblur
Cc: Jozef Chutka Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Using ffmpeg version 2022-09-07-git-e4c1272711-full_build-www.gyan.dev

ffmpeg -i video.mp4 -vf "gblur=sigma=0:sigmaV=10" -y out.mp4

Command produces none blur effect, sigmaV is being ignored. (workaround is to use sigma=0.001:sigmaV=10)

This issue was also reported on https://trac.ffmpeg.org/ticket/9845 , however the ticket is already closed.

Change History (8)

comment:1 by Elon Musk, 4 years ago

Resolution: wontfix
Status: newclosed

That is big ill case. If one of radius is 0 than blurring is disabled.

comment:2 by Jozef Chutka, 4 years ago

I am sorry you see it ill case, I believe it is reasonable to apply just vertical blur or horizontal blur. gblur now supports "one of radius is 0" (horizontal blur) using gblur=sigma=10:sigmaV=0, so one would expect vertical can be achieved similarly gblur=sigma=0:sigmaV=10

Last edited 4 years ago by Jozef Chutka (previous) (diff)

comment:3 by Elon Musk, 4 years ago

So you want that if sigma is 0 it picks value from sigmaV?

comment:4 by Michael Koch, 4 years ago

sigma > 0, sigmaV not specified or negative: same amount of blur in both directions
sigma > 0, sigmaV > 0: elliptical blur
sigma > 0, sigmaV = 0: horizontal blur
sigma = 0, sigmaV > 0: vertical blur

comment:5 by Elon Musk, 4 years ago

Sigma != radius.
You can do that already just replace 0 with 1.

comment:6 by Michael Koch, 4 years ago

With gblur=sigma=1:sigmaV=5 it's not a purely vertical blur. It has a small horizontal blur component.

ffmpeg -f lavfi -i color=black:s=50x50 -vf drawbox=w=1:h=1:x=25:y=25:color=white,gblur=sigma=1:sigmaV=5,colorlevels=rimin=0:gimin=0:bimin=0:rimax=0.1:gimax=0.1:bimax=0.1 -frames 1 -y out.png

Purely horizontal blur does work fine: gblur=sigma=5:sigmaV=0
It sounds logical that purely vertical blur should also work, but it doesn't: gblur=sigma=0:sigmaV=5

comment:7 by Michael Koch, 4 years ago

Thank you for fixing the issue in gblur.

A similar problem is also in the avgblur filter. The minimum values for sizeX and sizeY is 1, which results in a 3x3 box size. If the minimum values could be changed to 0, then it would be possible to make pure horizontal or pure vertical blur. The default value of sizeY could be changed to -1, which means use the same value as sizeX.

comment:8 by Jozef Chutka, 4 years ago

I can see gblur fixed in ffmpeg version 2022-09-12-git-3ce6fa6b6d-full_build-www.gyan.dev

thank you

Last edited 4 years ago by Jozef Chutka (previous) (diff)
Note: See TracTickets for help on using tickets.