free audio fifo
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Sat, 31 Jan 2009 11:17:04 +0000 (11:17 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Sat, 31 Jan 2009 11:17:04 +0000 (11:17 +0000)
Originally committed as revision 16905 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/mxfenc.c

index ba23a00..ab05e00 100644 (file)
@@ -901,6 +901,18 @@ static int ff_audio_interleave_init(AVFormatContext *s, const int *samples_per_f
     return 0;
 }
 
+static void ff_audio_interleave_close(AVFormatContext *s)
+{
+    int i;
+    for (i = 0; i < s->nb_streams; i++) {
+        AVStream *st = s->streams[i];
+        AudioInterleaveContext *aic = st->priv_data;
+
+        if (st->codec->codec_type == CODEC_TYPE_AUDIO)
+            av_fifo_free(&aic->fifo);
+    }
+}
+
 static int mxf_write_header(AVFormatContext *s)
 {
     MXFContext *mxf = s->priv_data;
@@ -1009,6 +1021,9 @@ static int mxf_write_footer(AVFormatContext *s)
         url_fseek(pb, 0, SEEK_SET);
         mxf_write_partition(s, 1, header_closed_partition_key, 1);
     }
+
+    ff_audio_interleave_close(s);
+
     mxf_free(s);
     return 0;
 }