From: Miguel F. <mig...@us...> - 2003-08-04 03:47:13
|
Update of /cvsroot/xine/xine-lib/src/libw32dll In directory sc8-pr-cvs1:/tmp/cvs-serv11486/src/libw32dll Modified Files: qt_decoder.c w32codec.c Log Message: support for arbitrary aspect ratios patch by Philip Jgenstedt Index: qt_decoder.c =================================================================== RCS file: /cvsroot/xine/xine-lib/src/libw32dll/qt_decoder.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- qt_decoder.c 10 May 2003 04:26:18 -0000 1.20 +++ qt_decoder.c 4 Aug 2003 03:47:10 -0000 1.21 @@ -688,6 +688,7 @@ HINSTANCE qtml_dll; xine_bmiheader bih; + double ratio; int codec_initialized; @@ -1024,6 +1025,7 @@ #endif memcpy (&this->bih, buf->content, sizeof (xine_bmiheader)); + this->ratio = (double)this->bih.biWidth / (double)this->bih.biHeight; /* video decoder only handles SVQ3 at this point */ this->stream->meta_info[XINE_META_INFO_VIDEOCODEC] = @@ -1086,7 +1088,7 @@ img = this->stream->video_out->get_frame (this->stream->video_out, this->bih.biWidth, this->bih.biHeight, - 42, + this->ratio, XINE_IMGFMT_YUY2, VO_BOTH_FIELDS); @@ -1232,7 +1234,7 @@ plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_VIDEO_DECODER | PLUGIN_MUST_PRELOAD, 14, "qtv", XINE_VERSION_CODE, &qtv_dec_info, qtv_init_class }, + { PLUGIN_VIDEO_DECODER | PLUGIN_MUST_PRELOAD, 15, "qtv", XINE_VERSION_CODE, &qtv_dec_info, qtv_init_class }, { PLUGIN_AUDIO_DECODER | PLUGIN_MUST_PRELOAD, 13, "qta", XINE_VERSION_CODE, &qta_dec_info, qta_init_class }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; Index: w32codec.c =================================================================== RCS file: /cvsroot/xine/xine-lib/src/libw32dll/w32codec.c,v retrieving revision 1.124 retrieving revision 1.125 diff -u -r1.124 -r1.125 --- w32codec.c 16 Jul 2003 00:25:38 -0000 1.124 +++ w32codec.c 4 Aug 2003 03:47:10 -0000 1.125 @@ -141,6 +141,7 @@ int decoder_ok; BITMAPINFOHEADER *bih, o_bih; + double ratio; char scratch1[16]; /* some codecs overflow o_bih */ HIC hic; int yuv_supported ; @@ -709,6 +710,8 @@ memcpy ( this->bih, buf->content, buf->size ); this->video_step = buf->decoder_info[1]; + this->ratio = (double)this->bih->biWidth/(double)this->bih->biHeight; + this->stream->stream_info[XINE_STREAM_INFO_VIDEO_WIDTH] = this->bih->biWidth; this->stream->stream_info[XINE_STREAM_INFO_VIDEO_HEIGHT] = this->bih->biHeight; this->stream->stream_info[XINE_STREAM_INFO_FRAME_DURATION] = this->video_step; @@ -783,7 +786,7 @@ img = this->stream->video_out->get_frame (this->stream->video_out, this->bih->biWidth, this->bih->biHeight, - 42, + this->ratio, IMGFMT_YUY2, VO_BOTH_FIELDS); @@ -1621,7 +1624,7 @@ plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_VIDEO_DECODER | PLUGIN_MUST_PRELOAD, 14, "win32v", XINE_VERSION_CODE, &dec_info_video, init_video_decoder_class }, + { PLUGIN_VIDEO_DECODER | PLUGIN_MUST_PRELOAD, 15, "win32v", XINE_VERSION_CODE, &dec_info_video, init_video_decoder_class }, { PLUGIN_AUDIO_DECODER | PLUGIN_MUST_PRELOAD, 13, "win32a", XINE_VERSION_CODE, &dec_info_audio, init_audio_decoder_class }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; |