diff --git a/libavfilter/vf_blackdetect.c b/libavfilter/vf_blackdetect.c index 90a28a9428..94af61346a 100644 --- a/libavfilter/vf_blackdetect.c +++ b/libavfilter/vf_blackdetect.c @@ -134,6 +134,7 @@ static int request_frame(AVFilterLink *outlink) return ret; } +// TODO: document metadata static int filter_frame(AVFilterLink *inlink, AVFrame *picref) { AVFilterContext *ctx = inlink->dst; @@ -161,12 +162,16 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *picref) /* black starts here */ blackdetect->black_started = 1; blackdetect->black_start = picref->pts; + av_dict_set(avpriv_frame_get_metadatap(picref), "lavfi.black_start", + av_ts2timestr(blackdetect->black_start, &inlink->time_base), 0); } } else if (blackdetect->black_started) { /* black ends here */ blackdetect->black_started = 0; blackdetect->black_end = picref->pts; check_black_end(ctx); + av_dict_set(avpriv_frame_get_metadatap(picref), "lavfi.black_end", + av_ts2timestr(blackdetect->black_end, &inlink->time_base), 0); } blackdetect->last_picref_pts = picref->pts;