diff options
author | Paul B Mahol <onemda@gmail.com> | 2020-06-03 15:22:41 +0200 |
---|---|---|
committer | Paul B Mahol <onemda@gmail.com> | 2021-08-05 15:42:48 +0200 |
commit | c317862c883bdec40292f709add3ba30f606c6a3 (patch) | |
tree | e34d70bf2a04a420326a0944d85aa9a88aab9616 | |
parent | 82123e133db6d556f3366a1cbb4f0439d70539d4 (diff) | |
download | ffmpeg-c317862c883bdec40292f709add3ba30f606c6a3.tar.gz |
avfilter/avfilter: add sample_count_in and sample_count_out
-rw-r--r-- | libavfilter/avfilter.c | 2 | ||||
-rw-r--r-- | libavfilter/avfilter.h | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index 24de8ebee3..e0847c724b 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -1013,6 +1013,7 @@ int ff_filter_frame(AVFilterLink *link, AVFrame *frame) link->frame_blocked_in = link->frame_wanted_out = 0; link->frame_count_in++; + link->sample_count_in += frame->nb_samples; filter_unblock(link->dst); ret = ff_framequeue_add(&link->fifo, frame); if (ret < 0) { @@ -1372,6 +1373,7 @@ static void consume_update(AVFilterLink *link, const AVFrame *frame) ff_inlink_process_commands(link, frame); link->dst->is_disabled = !ff_inlink_evaluate_timeline_at_frame(link, frame); link->frame_count_out++; + link->sample_count_out += frame->nb_samples; } int ff_inlink_consume_frame(AVFilterLink *link, AVFrame **rframe) diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index b82f72d040..a71745283c 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -585,6 +585,11 @@ struct AVFilterLink { int64_t frame_count_in, frame_count_out; /** + * Number of past samples sent through the link. + */ + int64_t sample_count_in, sample_count_out; + + /** * A pointer to a FFFramePool struct. */ void *frame_pool; |