[FFmpeg-devel] [PATCH] ffprobe: replace av_destruct_packet() with av_free_packet()

Stefano Sabatini stefasab at gmail.com
Thu Jan 12 00:39:27 CET 2012


av_destruct_packet() always frees the packet data even when the demuxer
is going to re-use it, thus causing crashes when decoding audio
frames (as implemented in a pending patch).

av_free_packet() is used instead, as it allows each demuxer to set the
right packet data releasing mechanism through the pkt->destruct callback.
---
 ffprobe.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ffprobe.c b/ffprobe.c
index be6ed19..44f2a15 100644
--- a/ffprobe.c
+++ b/ffprobe.c
@@ -1349,7 +1349,7 @@ static void show_packets(WriterContext *w, AVFormatContext *fmt_ctx)
         if (do_show_frames &&
             get_video_frame(fmt_ctx, &frame, &pkt)) {
             show_frame(w, &frame, fmt_ctx->streams[pkt.stream_index]);
-            av_destruct_packet(&pkt);
+            av_free_packet(&pkt);
         }
     }
     av_init_packet(&pkt);
-- 
1.7.5.4



More information about the ffmpeg-devel mailing list