summaryrefslogtreecommitdiff
path: root/src/libxinevdec
diff options
context:
space:
mode:
authorMichael Roitzsch <mroi@users.sourceforge.net>2002-11-20 11:57:38 +0000
committerMichael Roitzsch <mroi@users.sourceforge.net>2002-11-20 11:57:38 +0000
commit4e95a4f5224e241075b8cd86b4423c85c1d0ee26 (patch)
treecd9287e15591dce94560663ad66fc4005d006012 /src/libxinevdec
parent74893748b868ecc6ae539fa66e326e06947c4ac9 (diff)
downloadxine-lib-4e95a4f5224e241075b8cd86b4423c85c1d0ee26.tar.gz
xine-lib-4e95a4f5224e241075b8cd86b4423c85c1d0ee26.tar.bz2
engine modifications to allow post plugin layer:
* new public output interface xine_{audio,video}_port_t instead of xine_{ao,vo}_driver_t, old names kept as aliases for compatibility * modified the engine to allow multiple streams per output * renaming of some internal structures according to public changes * moving SCR out of per-stream-metronom into a global metronom_clock_t residing in xine_t and therefore easily available to the output layer * adapting all available plugins (note to external projects: the compiler will help you a lot, if a plugin compiles, it is adapted, because all changes add new parameters to some functions) * bump up all interface versions because of xine_t and xine_stream_t changes CVS patchset: 3312 CVS date: 2002/11/20 11:57:38
Diffstat (limited to 'src/libxinevdec')
-rw-r--r--src/libxinevdec/cinepak.c10
-rw-r--r--src/libxinevdec/cyuv.c10
-rw-r--r--src/libxinevdec/fli.c12
-rw-r--r--src/libxinevdec/foovideo.c14
-rw-r--r--src/libxinevdec/idcinvideo.c12
-rw-r--r--src/libxinevdec/msrle.c12
-rw-r--r--src/libxinevdec/msvc.c10
-rw-r--r--src/libxinevdec/qtrle.c11
-rw-r--r--src/libxinevdec/qtrpza.c12
-rw-r--r--src/libxinevdec/qtsmc.c12
-rw-r--r--src/libxinevdec/rgb.c12
-rw-r--r--src/libxinevdec/roqvideo.c10
-rw-r--r--src/libxinevdec/svq1.c10
-rw-r--r--src/libxinevdec/wc3video.c11
-rw-r--r--src/libxinevdec/yuv.c11
15 files changed, 84 insertions, 85 deletions
diff --git a/src/libxinevdec/cinepak.c b/src/libxinevdec/cinepak.c
index 298e01154..c345c31bf 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.20 2002/11/12 18:40:53 miguelfreitas Exp $
+ * $Id: cinepak.c,v 1.21 2002/11/20 11:57:46 mroi Exp $
*/
#include <stdlib.h>
@@ -369,7 +369,7 @@ static void cvid_decode_data (video_decoder_t *this_gen, buf_element_t *buf) {
color_depth = bih->biBitCount;
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* stream/meta info */
@@ -447,7 +447,7 @@ static void cvid_decode_data (video_decoder_t *this_gen, buf_element_t *buf) {
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -482,7 +482,7 @@ static void cvid_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -553,6 +553,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "cinepak", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "cinepak", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/cyuv.c b/src/libxinevdec/cyuv.c
index 1daf75a17..f2d614aaa 100644
--- a/src/libxinevdec/cyuv.c
+++ b/src/libxinevdec/cyuv.c
@@ -18,7 +18,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: cyuv.c,v 1.11 2002/11/12 18:40:53 miguelfreitas Exp $
+ * $Id: cyuv.c,v 1.12 2002/11/20 11:57:46 mroi Exp $
*/
/* And this is the header that came with the CYUV decoder: */
@@ -149,7 +149,7 @@ static void cyuv_decode_data (video_decoder_t *this_gen,
return;
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -204,7 +204,7 @@ static void cyuv_decode_data (video_decoder_t *this_gen,
}
}
- this->skipframes = img->draw(img);
+ this->skipframes = img->draw(img, this->stream);
if( this->skipframes < 0 )
this->skipframes = 0;
img->free(img);
@@ -226,7 +226,7 @@ static void cyuv_dispose (video_decoder_t *this_gen) {
cyuv_decoder_t *this = (cyuv_decoder_t *) this_gen;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
free (this_gen);
}
@@ -294,6 +294,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "cyuv", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "cyuv", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/fli.c b/src/libxinevdec/fli.c
index 6c898093b..4aae7d418 100644
--- a/src/libxinevdec/fli.c
+++ b/src/libxinevdec/fli.c
@@ -23,7 +23,7 @@
* avoid when implementing a FLI decoder, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: fli.c,v 1.9 2002/11/12 18:40:53 miguelfreitas Exp $
+ * $Id: fli.c,v 1.10 2002/11/20 11:57:46 mroi Exp $
*/
#include <stdio.h>
@@ -421,7 +421,7 @@ static void fli_decode_data (video_decoder_t *this_gen,
return;
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -439,7 +439,7 @@ static void fli_decode_data (video_decoder_t *this_gen,
this->buf = malloc(this->bufsize);
this->size = 0;
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
return;
@@ -482,7 +482,7 @@ static void fli_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -526,7 +526,7 @@ static void fli_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -596,7 +596,7 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "fli", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "fli", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/foovideo.c b/src/libxinevdec/foovideo.c
index 2ca96e8d9..23e48a6fe 100644
--- a/src/libxinevdec/foovideo.c
+++ b/src/libxinevdec/foovideo.c
@@ -23,7 +23,7 @@
* value from the last frame. This creates a slowly rotating solid color
* frame when the frames are played in succession.
*
- * $Id: foovideo.c,v 1.10 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: foovideo.c,v 1.11 2002/11/20 11:57:46 mroi Exp $
*/
#include <stdio.h>
@@ -92,7 +92,7 @@ static void foovideo_decode_data (video_decoder_t *this_gen,
return;
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -115,7 +115,6 @@ static void foovideo_decode_data (video_decoder_t *this_gen,
/* do anything else relating to initializing this decoder */
this->current_yuv_byte = 0;
- this->stream->video_out->open (this->stream->video_out);
this->decoder_ok = 1;
return;
@@ -160,7 +159,7 @@ static void foovideo_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -183,6 +182,9 @@ static void foovideo_reset (video_decoder_t *this_gen) {
this->size = 0;
}
+/*
+ * The decoder should forget any stored pts values here.
+ */
static void foovideo_discontinuity (video_decoder_t *this_gen) {
foovideo_decoder_t *this = (foovideo_decoder_t *) this_gen;
@@ -202,7 +204,7 @@ static void foovideo_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -306,6 +308,6 @@ static decoder_info_t dec_info_video = {
*/
plugin_info_t xine_plugin_info[] = {
/* { type, API, "name", version, special_info, init_function } */
- { PLUGIN_VIDEO_DECODER, 12, "foovideo", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "foovideo", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/idcinvideo.c b/src/libxinevdec/idcinvideo.c
index 6ebfa1f07..e774d7d1f 100644
--- a/src/libxinevdec/idcinvideo.c
+++ b/src/libxinevdec/idcinvideo.c
@@ -21,7 +21,7 @@
* the Id CIN format, visit:
* http://www.csse.monash.edu.au/~timf/
*
- * $Id: idcinvideo.c,v 1.8 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: idcinvideo.c,v 1.9 2002/11/20 11:57:46 mroi Exp $
*/
#include <stdio.h>
@@ -246,7 +246,7 @@ static void idcinvideo_decode_data (video_decoder_t *this_gen,
}
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -263,7 +263,7 @@ static void idcinvideo_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes, this->width, this->height);
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -310,7 +310,7 @@ static void idcinvideo_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -351,7 +351,7 @@ static void idcinvideo_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -415,6 +415,6 @@ static decoder_info_t video_decoder_info = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "idcinvideo", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "idcinvideo", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/msrle.c b/src/libxinevdec/msrle.c
index c2fd5d033..70e050f07 100644
--- a/src/libxinevdec/msrle.c
+++ b/src/libxinevdec/msrle.c
@@ -21,7 +21,7 @@
* For more information on the MS RLE format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: msrle.c,v 1.10 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: msrle.c,v 1.11 2002/11/20 11:57:46 mroi Exp $
*/
#include <stdio.h>
@@ -203,7 +203,7 @@ static void msrle_decode_data (video_decoder_t *this_gen,
}
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -221,7 +221,7 @@ static void msrle_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes, this->width, this->height);
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -268,7 +268,7 @@ static void msrle_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -308,7 +308,7 @@ static void msrle_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -378,6 +378,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "msrle", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "msrle", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/msvc.c b/src/libxinevdec/msvc.c
index 598259654..78260833f 100644
--- a/src/libxinevdec/msvc.c
+++ b/src/libxinevdec/msvc.c
@@ -22,7 +22,7 @@
* based on overview of Microsoft Video-1 algorithm
* by Mike Melanson: http://www.pcisys.net/~melanson/codecs/video1.txt
*
- * $Id: msvc.c,v 1.15 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: msvc.c,v 1.16 2002/11/20 11:57:47 mroi Exp $
*/
#include <stdlib.h>
@@ -240,7 +240,7 @@ static void msvc_decode_data (video_decoder_t *this_gen, buf_element_t *buf) {
this->buf = malloc(this->bufsize);
this->size = 0;
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -303,7 +303,7 @@ static void msvc_decode_data (video_decoder_t *this_gen, buf_element_t *buf) {
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -339,7 +339,7 @@ static void msvc_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -409,6 +409,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "msvc", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "msvc", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/qtrle.c b/src/libxinevdec/qtrle.c
index 6382e888d..4c355b2c1 100644
--- a/src/libxinevdec/qtrle.c
+++ b/src/libxinevdec/qtrle.c
@@ -21,7 +21,7 @@
* For more information on the QT RLE format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: qtrle.c,v 1.6 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: qtrle.c,v 1.7 2002/11/20 11:57:47 mroi Exp $
*/
#include <stdio.h>
@@ -705,7 +705,7 @@ static void qtrle_decode_data (video_decoder_t *this_gen,
}
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -724,7 +724,6 @@ static void qtrle_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes, this->width, this->height);
- this->stream->video_out->open (this->stream->video_out);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -803,7 +802,7 @@ static void qtrle_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -844,7 +843,7 @@ static void qtrle_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -913,6 +912,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "qtrle", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "qtrle", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/qtrpza.c b/src/libxinevdec/qtrpza.c
index 5e215acab..733c41616 100644
--- a/src/libxinevdec/qtrpza.c
+++ b/src/libxinevdec/qtrpza.c
@@ -21,7 +21,7 @@
* For more information about the RPZA format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: qtrpza.c,v 1.8 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: qtrpza.c,v 1.9 2002/11/20 11:57:47 mroi Exp $
*/
#include <stdio.h>
@@ -297,7 +297,7 @@ static void qtrpza_decode_data (video_decoder_t *this_gen,
return;
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -315,7 +315,7 @@ static void qtrpza_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes, this->width, this->height);
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -362,7 +362,7 @@ static void qtrpza_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -403,7 +403,7 @@ static void qtrpza_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -467,6 +467,6 @@ static decoder_info_t video_decoder_info = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "rpza", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "rpza", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/qtsmc.c b/src/libxinevdec/qtsmc.c
index a3ded3765..45194b934 100644
--- a/src/libxinevdec/qtsmc.c
+++ b/src/libxinevdec/qtsmc.c
@@ -23,7 +23,7 @@
* For more information on the SMC format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: qtsmc.c,v 1.8 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: qtsmc.c,v 1.9 2002/11/20 11:57:47 mroi Exp $
*/
#include <stdio.h>
@@ -529,7 +529,7 @@ static void qtsmc_decode_data (video_decoder_t *this_gen,
}
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -547,7 +547,7 @@ static void qtsmc_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes, this->width, this->height);
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -594,7 +594,7 @@ static void qtsmc_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -635,7 +635,7 @@ static void qtsmc_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -699,7 +699,7 @@ static decoder_info_t video_decoder_info = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "smc", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "smc", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/rgb.c b/src/libxinevdec/rgb.c
index ff7ba044c..510108383 100644
--- a/src/libxinevdec/rgb.c
+++ b/src/libxinevdec/rgb.c
@@ -21,7 +21,7 @@
* Actually, this decoder just converts a raw RGB image to a YUY2 map
* suitable for display under xine.
*
- * $Id: rgb.c,v 1.11 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: rgb.c,v 1.12 2002/11/20 11:57:47 mroi Exp $
*/
#include <stdio.h>
@@ -99,7 +99,7 @@ static void rgb_decode_data (video_decoder_t *this_gen,
}
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -119,7 +119,7 @@ static void rgb_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes, this->width, this->height);
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -213,7 +213,7 @@ static void rgb_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -253,7 +253,7 @@ static void rgb_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -323,6 +323,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "rgb", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "rgb", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/roqvideo.c b/src/libxinevdec/roqvideo.c
index 2c164dae7..dc4179cf8 100644
--- a/src/libxinevdec/roqvideo.c
+++ b/src/libxinevdec/roqvideo.c
@@ -18,7 +18,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: roqvideo.c,v 1.14 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: roqvideo.c,v 1.15 2002/11/20 11:57:47 mroi Exp $
*/
/* And this is the header that came with the RoQ video decoder: */
@@ -391,7 +391,7 @@ static void roqvideo_decode_data (video_decoder_t *this_gen,
return;
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -489,7 +489,7 @@ static void roqvideo_decode_data (video_decoder_t *this_gen,
}
}
- this->skipframes = img->draw(img);
+ this->skipframes = img->draw(img, this->stream);
if( this->skipframes < 0 )
this->skipframes = 0;
img->free(img);
@@ -511,7 +511,7 @@ static void roqvideo_dispose (video_decoder_t *this_gen) {
roqvideo_decoder_t *this = (roqvideo_decoder_t *) this_gen;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
free(this->y[0]);
free(this->y[1]);
@@ -586,6 +586,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "roq", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "roq", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/svq1.c b/src/libxinevdec/svq1.c
index 161bd84d2..a06c38d58 100644
--- a/src/libxinevdec/svq1.c
+++ b/src/libxinevdec/svq1.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: svq1.c,v 1.13 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: svq1.c,v 1.14 2002/11/20 11:57:47 mroi Exp $
*/
#include <stdio.h>
@@ -1387,7 +1387,7 @@ static void svq1dec_decode_data (video_decoder_t *this_gen, buf_element_t *buf)
this->buf = malloc(this->bufsize);
this->size = 0;
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -1446,7 +1446,7 @@ static void svq1dec_decode_data (video_decoder_t *this_gen, buf_element_t *buf)
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
}
@@ -1490,7 +1490,7 @@ static void svq1dec_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -1562,6 +1562,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "svq1", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "svq1", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/wc3video.c b/src/libxinevdec/wc3video.c
index 44fb4bf2a..bed53b93d 100644
--- a/src/libxinevdec/wc3video.c
+++ b/src/libxinevdec/wc3video.c
@@ -22,7 +22,7 @@
* For more information on the WC3 Movie format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: wc3video.c,v 1.9 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: wc3video.c,v 1.10 2002/11/20 11:57:48 mroi Exp $
*/
#include <stdio.h>
@@ -365,7 +365,7 @@ static void wc3video_decode_data (video_decoder_t *this_gen,
}
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -382,7 +382,6 @@ static void wc3video_decode_data (video_decoder_t *this_gen,
init_yuv_planes(&this->yuv_planes2, WC3_WIDTH, WC3_HEIGHT);
this->current_planes = 1;
- this->stream->video_out->open (this->stream->video_out);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -439,7 +438,7 @@ static void wc3video_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -480,7 +479,7 @@ static void wc3video_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -544,6 +543,6 @@ static decoder_info_t video_decoder_info = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "wc3video", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "wc3video", XINE_VERSION_CODE, &video_decoder_info, &init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/libxinevdec/yuv.c b/src/libxinevdec/yuv.c
index a73289f05..b83cad942 100644
--- a/src/libxinevdec/yuv.c
+++ b/src/libxinevdec/yuv.c
@@ -21,7 +21,7 @@
* Actually, this decoder just reorganizes chunks of raw YUV data in such
* a way that xine can display them.
*
- * $Id: yuv.c,v 1.11 2002/11/12 18:40:54 miguelfreitas Exp $
+ * $Id: yuv.c,v 1.12 2002/11/20 11:57:48 mroi Exp $
*/
#include <stdio.h>
@@ -89,7 +89,7 @@ static void yuv_decode_data (video_decoder_t *this_gen,
return;
if (buf->decoder_flags & BUF_FLAG_HEADER) { /* need to initialize */
- this->stream->video_out->open (this->stream->video_out);
+ this->stream->video_out->open (this->stream->video_out, this->stream);
if(this->buf)
free(this->buf);
@@ -105,7 +105,6 @@ static void yuv_decode_data (video_decoder_t *this_gen,
this->buf = malloc(this->bufsize);
this->size = 0;
- this->stream->video_out->open (this->stream->video_out);
this->decoder_ok = 1;
/* load the stream/meta info */
@@ -239,7 +238,7 @@ static void yuv_decode_data (video_decoder_t *this_gen,
}
}
- img->draw(img);
+ img->draw(img, this->stream);
img->free(img);
this->size = 0;
@@ -279,7 +278,7 @@ static void yuv_dispose (video_decoder_t *this_gen) {
if (this->decoder_ok) {
this->decoder_ok = 0;
- this->stream->video_out->close(this->stream->video_out);
+ this->stream->video_out->close(this->stream->video_out, this->stream);
}
free (this_gen);
@@ -353,6 +352,6 @@ static decoder_info_t dec_info_video = {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_VIDEO_DECODER, 12, "yuv", XINE_VERSION_CODE, &dec_info_video, init_plugin },
+ { PLUGIN_VIDEO_DECODER, 13, "yuv", XINE_VERSION_CODE, &dec_info_video, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};