[FFmpeg-cvslog] avconv: do not use lavfi direct rendering with -deinterlace
Anton Khirnov
git at videolan.org
Tue Aug 27 16:39:00 CEST 2013
ffmpeg | branch: release/1.1 | Anton Khirnov <anton at khirnov.net> | Sun Aug 4 18:57:39 2013 +0200| [3f5824aa18aa7b18016701123efc7e1714d56001] | committer: Anton Khirnov
avconv: do not use lavfi direct rendering with -deinterlace
-deinterlace allocates a temporary buffer that is freed immediately
after the frame is sent to lavfi, which results in use after free.
Disable direct rendering when -deinterlace is used.
CC:libav-stable at libav.org
Bug-id: 479
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3f5824aa18aa7b18016701123efc7e1714d56001
---
avconv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/avconv.c b/avconv.c
index dd998ab..6544fc6 100644
--- a/avconv.c
+++ b/avconv.c
@@ -1215,7 +1215,7 @@ static int decode_video(InputStream *ist, AVPacket *pkt, int *got_output)
}
for (i = 0; i < ist->nb_filters; i++) {
- if (ist->st->codec->codec->capabilities & CODEC_CAP_DR1) {
+ if (ist->st->codec->codec->capabilities & CODEC_CAP_DR1 && !do_deinterlace) {
FrameBuffer *buf = decoded_frame->opaque;
AVFilterBufferRef *fb = avfilter_get_video_buffer_ref_from_arrays(
decoded_frame->data, decoded_frame->linesize,
More information about the ffmpeg-cvslog
mailing list