From 71d118733a45e359c0ec645455fac2005efb2692 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 28 Aug 2020 20:07:12 +0200 Subject: f_async_queue: don't count EOF frames as samples That's dumb. --- filters/f_async_queue.c | 2 ++ filters/f_async_queue.h | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/filters/f_async_queue.c b/filters/f_async_queue.c index 8aa2041dd9..84f38e9460 100644 --- a/filters/f_async_queue.c +++ b/filters/f_async_queue.c @@ -88,6 +88,8 @@ static int64_t frame_get_samples(struct async_queue *q, struct mp_frame frame) struct mp_aframe *aframe = frame.data; res = mp_aframe_get_size(aframe); } + if (mp_frame_is_signaling(frame)) + return 0; return res; } diff --git a/filters/f_async_queue.h b/filters/f_async_queue.h index dcc5ba57eb..50678faec1 100644 --- a/filters/f_async_queue.h +++ b/filters/f_async_queue.h @@ -65,7 +65,8 @@ struct mp_filter *mp_async_queue_create_filter(struct mp_filter *parent, enum mp_async_queue_sample_unit { AQUEUE_UNIT_FRAME = 0, // a frame counts as 1 sample - AQUEUE_UNIT_SAMPLES, // number of audio samples (1 for other media types) + AQUEUE_UNIT_SAMPLES, // number of audio samples (1 for other media types, + // 0 for signaling) }; // Setting this struct to all-0 is equivalent to defaults. -- cgit v1.2.3