From feed8c2af3d1b00e53a09fb51de9b0b22e012fdf Mon Sep 17 00:00:00 2001 From: Thiago Santos Date: Thu, 5 Nov 2009 12:13:44 -0300 Subject: [PATCH] avimux: do not write empty INFO list avoid writing an empty INFO list chunk, both because it is useless and because vlc refuses to play the resulting file. --- gst/avi/gstavimux.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/gst/avi/gstavimux.c b/gst/avi/gstavimux.c index 584f0e782d..ac1e814f0b 100644 --- a/gst/avi/gstavimux.c +++ b/gst/avi/gstavimux.c @@ -1399,8 +1399,16 @@ gst_avi_mux_riff_get_avi_header (GstAviMux * avimux) GST_BUFFER_SIZE (buffer) += 12; buffdata = GST_BUFFER_DATA (buffer) + highmark; - /* update list size */ - GST_WRITE_UINT32_LE (ptr, highmark - startsize - 4); + if (highmark - startsize - 4 == 4) { + /* no tags writen, remove the empty INFO LIST as it is useless + * and prevents playback in vlc */ + highmark -= 12; + buffdata = GST_BUFFER_DATA (buffer) + highmark; + /* no need to erase the writen data, it will be overwriten anyway */ + } else { + /* update list size */ + GST_WRITE_UINT32_LE (ptr, highmark - startsize - 4); + } } /* avi data header */