gst/avi/gstavimux.c: Fix VPRP chunk setup in avimux.
authorMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
Tue, 21 Oct 2008 12:42:45 +0000 (12:42 +0000)
committerJan Schmidt <thaytan@mad.scientist.com>
Tue, 21 Oct 2008 12:42:45 +0000 (12:42 +0000)
Original commit message from CVS:
* gst/avi/gstavimux.c:
Fix VPRP chunk setup in avimux.
Fixes: #556010
Patch By: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>

ChangeLog
gst/avi/gstavimux.c

index b27ea6d..5f41554 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2008-10-21  Jan Schmidt  <jan.schmidt@sun.com>
 
+       * gst/avi/gstavimux.c:
+       Fix VPRP chunk setup in avimux.
+       Fixes: #556010
+       Patch By: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
+
+2008-10-21  Jan Schmidt  <jan.schmidt@sun.com>
+
        * gst/videobox/gstvideobox.c:
        support dynamically changing properties in videobox
        Fixed: #557085
index ac5b834..ad41ed9 100644 (file)
@@ -990,6 +990,7 @@ gst_avi_mux_riff_get_avi_header (GstAviMux * avimux)
       + (g_slist_length (avimux->sinkpads) * (100 + sizeof (gst_riff_strh_full)
           + sizeof (gst_riff_strf_vids)
           + sizeof (gst_riff_vprp)
+          + sizeof (gst_riff_vprp_video_field_desc) * 2
           + sizeof (gst_riff_strf_auds) + 2 + ODML_SUPERINDEX_SIZE));
   buffer = gst_buffer_new_and_alloc (size);
   buffdata = GST_BUFFER_DATA (buffer);
@@ -1135,8 +1136,8 @@ gst_avi_mux_riff_get_avi_header (GstAviMux * avimux)
         GST_WRITE_UINT32_LE (buffdata + 32, vidpad->vprp.width);
         GST_WRITE_UINT32_LE (buffdata + 36, vidpad->vprp.height);
         GST_WRITE_UINT32_LE (buffdata + 40, vidpad->vprp.fields);
-        buffdata += codec_size + 44;
-        highmark += codec_size + 44;
+        buffdata += 44;
+        highmark += 44;
         for (f = 0; f < vidpad->vprp.fields; ++f) {
           gst_riff_vprp_video_field_desc *fd;
 
@@ -1149,8 +1150,8 @@ gst_avi_mux_riff_get_avi_header (GstAviMux * avimux)
           GST_WRITE_UINT32_LE (buffdata + 20, fd->valid_bm_y_offset);
           GST_WRITE_UINT32_LE (buffdata + 24, fd->video_x_t_offset);
           GST_WRITE_UINT32_LE (buffdata + 28, fd->video_y_start);
-          buffdata += codec_size + 32;
-          highmark += codec_size + 32;
+          buffdata += 32;
+          highmark += 32;
         }
       }
     } else {