[FFmpeg-devel] [PATCH 1/6] buffersink: check that the API is called on the correct filter.

Nicolas George nicolas.george at normalesup.org
Mon Jun 25 00:35:55 CEST 2012


Signed-off-by: Nicolas George <nicolas.george at normalesup.org>
---
 libavfilter/buffersink.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavfilter/buffersink.c b/libavfilter/buffersink.c
index 6423500..c1c6375 100644
--- a/libavfilter/buffersink.c
+++ b/libavfilter/buffersink.c
@@ -39,6 +39,8 @@ typedef struct {
     int64_t next_pts;            ///< interpolating audio pts
 } BufferSinkContext;
 
+extern AVFilter avfilter_asink_abuffer;
+
 static av_cold void uninit(AVFilterContext *ctx)
 {
     BufferSinkContext *sink = ctx->priv;
@@ -62,6 +64,7 @@ int av_buffersink_read(AVFilterContext *ctx, AVFilterBufferRef **buf)
     AVFilterLink      *link = ctx->inputs[0];
     int ret;
 
+    av_assert1(ctx->filter == &avfilter_asink_abuffer);
     if (!buf)
         return ff_poll_frame(ctx->inputs[0]);
 
@@ -104,6 +107,7 @@ int av_buffersink_read_samples(AVFilterContext *ctx, AVFilterBufferRef **pbuf,
     AVFilterLink   *link = ctx->inputs[0];
     int ret = 0;
 
+    av_assert1(ctx->filter == &avfilter_asink_abuffer);
     if (!s->audio_fifo) {
         int nb_channels = av_get_channel_layout_nb_channels(link->channel_layout);
         if (!(s->audio_fifo = av_audio_fifo_alloc(link->format, nb_channels, nb_samples)))
-- 
1.7.10



More information about the ffmpeg-devel mailing list