summaryrefslogtreecommitdiff
path: root/src/libxinevdec/cinepak.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libxinevdec/cinepak.c')
-rw-r--r--src/libxinevdec/cinepak.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/libxinevdec/cinepak.c b/src/libxinevdec/cinepak.c
index 4e75c4de8..a2fa78cce 100644
--- a/src/libxinevdec/cinepak.c
+++ b/src/libxinevdec/cinepak.c
@@ -22,7 +22,7 @@
* based on overview of Cinepak algorithm and example decoder
* by Tim Ferguson: http://www.csse.monash.edu.au/~timf/
*
- * $Id: cinepak.c,v 1.37 2004/01/12 17:35:18 miguelfreitas Exp $
+ * $Id: cinepak.c,v 1.38 2004/02/09 22:04:11 jstembridge Exp $
*/
#include <stdlib.h>
@@ -387,13 +387,17 @@ static void cvid_decode_data (video_decoder_t *this_gen, buf_element_t *buf) {
COMPUTE_V(palette[i].r, palette[i].g, palette[i].b);
}
}
+
+ if (buf->decoder_flags & BUF_FLAG_FRAMERATE) {
+ this->video_step = buf->decoder_info[0];
+ _x_stream_info_set(this->stream, XINE_STREAM_INFO_FRAME_DURATION, this->video_step);
+ }
if (buf->decoder_flags & BUF_FLAG_STDHEADER) {
xine_bmiheader *bih;
int chroma_size;
bih = (xine_bmiheader *) buf->content;
- this->video_step = buf->decoder_info[1];
this->width = (bih->biWidth + 1) & ~0x1;
this->height = (bih->biHeight + 1) & ~0x1;
@@ -434,9 +438,6 @@ static void cvid_decode_data (video_decoder_t *this_gen, buf_element_t *buf) {
this->size += buf->size;
- if (buf->decoder_flags & BUF_FLAG_FRAMERATE)
- this->video_step = buf->decoder_info[0];
-
if (buf->decoder_flags & BUF_FLAG_FRAME_END) {
vo_frame_t *img;