mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-24 13:56:33 +02:00
vf_drawtext: Add pkt_pos, pkt_duration, pkt_size as variables
Changes to vf_drawtext.c written by Calvin Walton <calvin.walton@kepstin.ca> Changes to filters.texi written by greg Luce <electron.rotoscope@gmail.com> with lots of help from Moritz Barsnick and Gyan Fixes #7947.
This commit is contained in:
parent
b7b6ddd596
commit
2bd21b9609
@ -9002,6 +9002,17 @@ to each other, so you can for example specify @code{y=x/dar}.
|
||||
|
||||
@item pict_type
|
||||
A one character description of the current frame's picture type.
|
||||
|
||||
@item pkt_pos
|
||||
The current packet's position in the input file or stream
|
||||
(in bytes, from the start of the input). A value of -1 indicates
|
||||
this info is not available.
|
||||
|
||||
@item pkt_duration
|
||||
The current packet's duration, in seconds.
|
||||
|
||||
@item pkt_size
|
||||
The current packet's size (in bytes).
|
||||
@end table
|
||||
|
||||
@anchor{drawtext_expansion}
|
||||
|
@ -31,7 +31,8 @@
|
||||
|
||||
#define LIBAVFILTER_VERSION_MAJOR 7
|
||||
#define LIBAVFILTER_VERSION_MINOR 56
|
||||
#define LIBAVFILTER_VERSION_MICRO 100
|
||||
#define LIBAVFILTER_VERSION_MICRO 101
|
||||
|
||||
|
||||
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
|
||||
LIBAVFILTER_VERSION_MINOR, \
|
||||
|
@ -88,6 +88,9 @@ static const char *const var_names[] = {
|
||||
"x",
|
||||
"y",
|
||||
"pict_type",
|
||||
"pkt_pos",
|
||||
"pkt_duration",
|
||||
"pkt_size",
|
||||
NULL
|
||||
};
|
||||
|
||||
@ -125,6 +128,9 @@ enum var_name {
|
||||
VAR_X,
|
||||
VAR_Y,
|
||||
VAR_PICT_TYPE,
|
||||
VAR_PKT_POS,
|
||||
VAR_PKT_DURATION,
|
||||
VAR_PKT_SIZE,
|
||||
VAR_VARS_NB
|
||||
};
|
||||
|
||||
@ -1516,6 +1522,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
|
||||
NAN : frame->pts * av_q2d(inlink->time_base);
|
||||
|
||||
s->var_values[VAR_PICT_TYPE] = frame->pict_type;
|
||||
s->var_values[VAR_PKT_POS] = frame->pkt_pos;
|
||||
s->var_values[VAR_PKT_DURATION] = frame->pkt_duration * av_q2d(inlink->time_base);
|
||||
s->var_values[VAR_PKT_SIZE] = frame->pkt_size;
|
||||
s->metadata = frame->metadata;
|
||||
|
||||
draw_text(ctx, frame, frame->width, frame->height);
|
||||
|
Loading…
x
Reference in New Issue
Block a user