diff options
author | Ronald S. Bultje <rbultje@ronald.bitfreak.net> | 2004-10-02 20:27:04 +0000 |
---|---|---|
committer | Ronald S. Bultje <rbultje@ronald.bitfreak.net> | 2004-10-02 20:27:04 +0000 |
commit | 993092788c0f0c98850390e78a09f756ceeacd92 (patch) | |
tree | 4838cc8728e57e12cdeffaa8c7e5172b55cfb653 /gst/avi/gstavidemux.c | |
parent | 89e2912bada430273a6219919366cadad87eb210 (diff) |
gst-libs/gst/riff/riff-media.c: Add wing commander format mimetype/fourccs.
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_template_caps):
Add wing commander format mimetype/fourccs.
* gst/avi/gstavidemux.c: (gst_avi_demux_massage_index):
Don't crash if some value is 0.
Diffstat (limited to 'gst/avi/gstavidemux.c')
-rw-r--r-- | gst/avi/gstavidemux.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c index bfe1c706..4ec1d890 100644 --- a/gst/avi/gstavidemux.c +++ b/gst/avi/gstavidemux.c @@ -1369,12 +1369,15 @@ gst_avi_demux_massage_index (GstAviDemux * avi) /* init frames */ for (i = 0; i < avi->num_streams; i++) { stream = &avi->stream[i]; - if (stream->strh->type == GST_RIFF_FCC_vids) - stream->delay = stream->strh->init_frames * GST_SECOND * - stream->strh->scale / stream->strh->rate; - else - stream->delay = GST_SECOND * stream->strh->init_frames * - stream->strh->length / (stream->total_frames * stream->bitrate); + if (stream->strh->type == GST_RIFF_FCC_vids) { + if (stream->strh->rate != 0) + stream->delay = stream->strh->init_frames * GST_SECOND * + stream->strh->scale / stream->strh->rate; + } else { + if (stream->total_frames * stream->bitrate != 0) + stream->delay = GST_SECOND * stream->strh->init_frames * + stream->strh->length / (stream->total_frames * stream->bitrate); + } } for (i = 0; i < avi->index_size; i++) { entry = &avi->index_entries[i]; |