[Libav-user] OpenCV VideoCapture FFmpeg Module Bug on Linux using Video without a Codec

Rafael Lúcio rafael at inova.in
Thu Mar 5 14:22:42 CET 2015


I'm not an expert but maybe I can give u a simpler solution.... just ignore
if I'm talking nonsense stuffs..

maybe if u just av_init_packet before av_free_packet your problem is solved
and you don't have memory leak.
I haven't tested this theory, its just an idea.

2015-03-05 8:30 GMT-03:00 Johannes Rehm <hahne.rehm at gmx.de>:

> Hi All,
>
> there is a known bug in the VideoCapture ffmpeg module of OpenCV. It
> occurs while loading videos without  a codec:
> http://code.opencv.org/issues/1915
> I had some time now to debug this bug and found the issue in:
> CvCapture_FFMPEG::grabFrame()
> In the function
> avcodec_decode_video2(video_st->codec, picture, &got_picture, &packet);
> the AVFrame picture get set. But after
> av_free_packet (&packet);
> I get: "error: Cannot access memory at address..." for picture.data[0]
> which leads to a segmentation fault later in the function sws_scale().
> I can encode this video with a video codec using ffmpeg or whatever and I
> get no segmentation fault (memory in picture.data[0] can still be accessed).
> Of course there is an easy fix for this bug: Simply comment out / delete
> av_free_packet (&packet);
> This is working fine for me. Now I can process videos with and without
> codecs. But I am not sure if this will lead to memory issues if
> av_free_packet gets not called. Is there anybody who is familiar with the
> FFmpeg interface of OpenCV and can help me here?
> Thanks a lot!
>
> Best regards,
> Johannes Rehm
>
> _______________________________________________
> Libav-user mailing list
> Libav-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/libav-user
>
>


-- 
-----------------------------------------------------------------
Rafael Lúcio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://ffmpeg.org/pipermail/libav-user/attachments/20150305/d0475625/attachment.html>


More information about the Libav-user mailing list