Opened 3 years ago

Last modified 3 years ago

#9686 new defect

drawbox breaks dynamic size

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

Description (last modified by Jozef Chutka)

When a particular combination of format+drawbox is used, it can break dynamic size.

In the following sample green box gets smaller over time, while there is red box drawn on it. Following combination of format+scale+drawbox however does not work and green box remains with the original size.

ffmpeg -filter_complex "color=c=black:r=20:s=400x400,format=argb[b];color=c=green:r=20:s=200x200,format=argb,scale=w=400-n:h=400-n:eval=frame,drawbox=w=10:h=10:t=fill:c=red[g];[b][g]overlay=format=auto" -t 4 -y out.mp4

One can fix it by either:

  1. remove format=argb from [b]
  2. remove drawbox
  3. remove format=auto in overlay

Change History (5)

comment:1 by Jozef Chutka, 3 years ago

btw. using ffmpeg version from yesterday https://github.com/BtbN/FFmpeg-Builds/releases

comment:2 by Jozef Chutka, 3 years ago

Description: modified (diff)

comment:3 by Jozef Chutka, 3 years ago

Hi, I just verified this issue exists in the latest build based on 607ecc27ed9c22c75d063b462b3e78b47e7d742c from 2022-04-07

Is there any ongoing work to resolve?

Is the reported example self explanatory or would providing more details and examples help?

comment:4 by Elon Musk, 3 years ago

Please refrain from bumping issues, thanks.

comment:5 by Elon Musk, 3 years ago

One issues is that auto inserted scale filter does not use eval=frame but eval=init and there is no way to change that via ffmpeg tool. And because you use format conversion filters drawbox that supports only yuv and not packed rgb formats auto inserts scale filter.

Will look into adding rgb support to drawbox filter.

Note: See TracTickets for help on using tickets.