Fix trac ticket #1949.tags/n1.1
@@ -2083,6 +2083,9 @@ It can accept an argument: a strftime() format string. | |||||
The time at which the filter is running, expressed in the local time zone. | The time at which the filter is running, expressed in the local time zone. | ||||
It can accept an argument: a strftime() format string. | It can accept an argument: a strftime() format string. | ||||
@item n, frame_num | |||||
The frame number, starting from 0. | |||||
@item pts | @item pts | ||||
The timestamp of the current frame, in seconds, with microsecond accuracy. | The timestamp of the current frame, in seconds, with microsecond accuracy. | ||||
@@ -30,7 +30,7 @@ | |||||
#define LIBAVFILTER_VERSION_MAJOR 3 | #define LIBAVFILTER_VERSION_MAJOR 3 | ||||
#define LIBAVFILTER_VERSION_MINOR 23 | #define LIBAVFILTER_VERSION_MINOR 23 | ||||
#define LIBAVFILTER_VERSION_MICRO 101 | |||||
#define LIBAVFILTER_VERSION_MICRO 102 | |||||
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ | #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ | ||||
LIBAVFILTER_VERSION_MINOR, \ | LIBAVFILTER_VERSION_MINOR, \ | ||||
@@ -611,6 +611,15 @@ static int func_pts(AVFilterContext *ctx, AVBPrint *bp, | |||||
return 0; | return 0; | ||||
} | } | ||||
static int func_frame_num(AVFilterContext *ctx, AVBPrint *bp, | |||||
char *fct, unsigned argc, char **argv, int tag) | |||||
{ | |||||
DrawTextContext *dtext = ctx->priv; | |||||
av_bprintf(bp, "%d", (int)dtext->var_values[VAR_N]); | |||||
return 0; | |||||
} | |||||
#if !HAVE_LOCALTIME_R | #if !HAVE_LOCALTIME_R | ||||
static void localtime_r(const time_t *t, struct tm *tm) | static void localtime_r(const time_t *t, struct tm *tm) | ||||
{ | { | ||||
@@ -643,6 +652,8 @@ static const struct drawtext_function { | |||||
{ "pts", 0, 0, 0, func_pts }, | { "pts", 0, 0, 0, func_pts }, | ||||
{ "gmtime", 0, 1, 'G', func_strftime }, | { "gmtime", 0, 1, 'G', func_strftime }, | ||||
{ "localtime", 0, 1, 'L', func_strftime }, | { "localtime", 0, 1, 'L', func_strftime }, | ||||
{ "frame_num", 0, 0, 0, func_frame_num }, | |||||
{ "n", 0, 0, 0, func_frame_num }, | |||||
}; | }; | ||||
static int eval_function(AVFilterContext *ctx, AVBPrint *bp, char *fct, | static int eval_function(AVFilterContext *ctx, AVBPrint *bp, char *fct, | ||||