mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-22 08:17:01 +00:00
gst/avi/gstavimux.c: Fix VPRP chunk setup in avimux.
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>
This commit is contained in:
parent
8508561fcc
commit
772201830f
2 changed files with 12 additions and 4 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
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>
|
2008-10-21 Jan Schmidt <jan.schmidt@sun.com>
|
||||||
|
|
||||||
* gst/videobox/gstvideobox.c:
|
* gst/videobox/gstvideobox.c:
|
||||||
|
|
|
@ -990,6 +990,7 @@ gst_avi_mux_riff_get_avi_header (GstAviMux * avimux)
|
||||||
+ (g_slist_length (avimux->sinkpads) * (100 + sizeof (gst_riff_strh_full)
|
+ (g_slist_length (avimux->sinkpads) * (100 + sizeof (gst_riff_strh_full)
|
||||||
+ sizeof (gst_riff_strf_vids)
|
+ sizeof (gst_riff_strf_vids)
|
||||||
+ sizeof (gst_riff_vprp)
|
+ sizeof (gst_riff_vprp)
|
||||||
|
+ sizeof (gst_riff_vprp_video_field_desc) * 2
|
||||||
+ sizeof (gst_riff_strf_auds) + 2 + ODML_SUPERINDEX_SIZE));
|
+ sizeof (gst_riff_strf_auds) + 2 + ODML_SUPERINDEX_SIZE));
|
||||||
buffer = gst_buffer_new_and_alloc (size);
|
buffer = gst_buffer_new_and_alloc (size);
|
||||||
buffdata = GST_BUFFER_DATA (buffer);
|
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 + 32, vidpad->vprp.width);
|
||||||
GST_WRITE_UINT32_LE (buffdata + 36, vidpad->vprp.height);
|
GST_WRITE_UINT32_LE (buffdata + 36, vidpad->vprp.height);
|
||||||
GST_WRITE_UINT32_LE (buffdata + 40, vidpad->vprp.fields);
|
GST_WRITE_UINT32_LE (buffdata + 40, vidpad->vprp.fields);
|
||||||
buffdata += codec_size + 44;
|
buffdata += 44;
|
||||||
highmark += codec_size + 44;
|
highmark += 44;
|
||||||
for (f = 0; f < vidpad->vprp.fields; ++f) {
|
for (f = 0; f < vidpad->vprp.fields; ++f) {
|
||||||
gst_riff_vprp_video_field_desc *fd;
|
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 + 20, fd->valid_bm_y_offset);
|
||||||
GST_WRITE_UINT32_LE (buffdata + 24, fd->video_x_t_offset);
|
GST_WRITE_UINT32_LE (buffdata + 24, fd->video_x_t_offset);
|
||||||
GST_WRITE_UINT32_LE (buffdata + 28, fd->video_y_start);
|
GST_WRITE_UINT32_LE (buffdata + 28, fd->video_y_start);
|
||||||
buffdata += codec_size + 32;
|
buffdata += 32;
|
||||||
highmark += codec_size + 32;
|
highmark += 32;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue