[FFmpeg-devel] [PATCH 01/10] ffmpeg: replace av_buffersrc_buffer with av_buffersrc_add_ref.

Nicolas George nicolas.george at normalesup.org
Sat May 5 10:22:29 CEST 2012


Signed-off-by: Nicolas George <nicolas.george at normalesup.org>
---
 ffmpeg.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)


The second instance is an exact copy of how av_buffersrc_buffer is
implemented internally.

For the first instance, flags are ignored when the ref is NULL.


diff --git a/ffmpeg.c b/ffmpeg.c
index 896dcc0..0b011ff 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2594,7 +2594,7 @@ static int transcode_video(InputStream *ist, AVPacket *pkt, int *got_output, int
         /* no picture yet */
         if (!pkt->size)
             for (i = 0; i < ist->nb_filters; i++)
-                av_buffersrc_buffer(ist->filters[i]->filter, NULL);
+                av_buffersrc_add_ref(ist->filters[i]->filter, NULL, 0);
         return ret;
     }
 
@@ -2658,7 +2658,9 @@ static int transcode_video(InputStream *ist, AVPacket *pkt, int *got_output, int
 
             av_assert0(buf->refcount>0);
             buf->refcount++;
-            av_buffersrc_buffer(ist->filters[i]->filter, fb);
+            av_buffersrc_add_ref(ist->filters[i]->filter, fb,
+                                 AV_BUFFERSRC_FLAG_NO_CHECK_FORMAT |
+                                 AV_BUFFERSRC_FLAG_NO_COPY);
         } else
         if(av_vsrc_buffer_add_frame(ist->filters[i]->filter, decoded_frame,AV_VSRC_BUF_FLAG_OVERWRITE)<0) {
             av_log(NULL, AV_LOG_FATAL, "Failed to inject frame into filter network\n");
-- 
1.7.10



More information about the ffmpeg-devel mailing list