Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] proposal for a minor change in the behavior of the drawtext filter
@ 2022-04-22 10:01 Francesco Carusi
  2022-04-22 10:30 ` Michael Niedermayer
  2022-04-24 10:07 ` Nicolas George
  0 siblings, 2 replies; 8+ messages in thread
From: Francesco Carusi @ 2022-04-22 10:01 UTC (permalink / raw)
  To: ffmpeg-devel

[-- Attachment #1: Type: text/plain, Size: 1773 bytes --]

Hello ffmpeg team,

I'm working on an enhanced version of the drawtext filter and would like 
to discuss with you about a minor change in its behavior related to line 
spacing management.
In the current implementation the space between two lines of text is set 
equal to the height of the highest glyph found in the text plus the 
optional user defined "line_spacing" parameter (which defaults to 0):

line_height = max_glyph_h + line_spacing

This has some drawbacks:
1) the line height depends on the text
     See image "line_height-old.png" (the blue lines where added by me)
     The filter is applied three times with tree slightly different 
texts: the line_spacing parameter was not specified,
     but the actual line height changes due to the different heights of 
the glyphs
2) the line height is not consistent between the same text being 
rendered by the filter and by external tools

The proposed change is:
1) the default line height is set to the font-defined line height
2) the line_spacing parameter, if specified, sets the actual line height 
(line_height = line_spacing)
3) the default value of line_spacing is set to -1 (which means: use the 
default line height)

The image "line_height-new.png" shows the effect of the new behavior.

Which is the impact of the change?
A) users using the line_spacing parameter would see less space between lines
B) users not using the line_spacing parameter would see (in most cases) 
more space between lines

Can the impact be mitigated?
Well, yes, we may add a new parameter named 'line_height' and deprecate 
'line_spacing', in this way anyone using line_spacing explicitly would 
not see any change in the filter behavior. I don't like this solution 
but it may help reducing the impact of the change.

[-- Attachment #2: line_height-new.png --]
[-- Type: image/png, Size: 19328 bytes --]

[-- Attachment #3: line_height-old.png --]
[-- Type: image/png, Size: 22474 bytes --]

[-- Attachment #4: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-04-26 10:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-22 10:01 [FFmpeg-devel] proposal for a minor change in the behavior of the drawtext filter Francesco Carusi
2022-04-22 10:30 ` Michael Niedermayer
2022-04-22 12:48   ` Francesco Carusi
2022-04-22 13:22     ` Michael Koch
2022-04-22 15:07       ` Francesco Carusi
2022-04-22 15:57         ` Michael Koch
2022-04-24 10:07 ` Nicolas George
2022-04-26 10:15   ` Francesco Carusi

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git