diff --git a/src/osgPlugins/xine/ReaderWriterXine.cpp b/src/osgPlugins/xine/ReaderWriterXine.cpp index 004ac93e8..c860da104 100644 --- a/src/osgPlugins/xine/ReaderWriterXine.cpp +++ b/src/osgPlugins/xine/ReaderWriterXine.cpp @@ -183,7 +183,9 @@ class ReaderWriterXine : public osgDB::ReaderWriter xine_init(_xine); - register_plugin(_xine, "/usr/local/lib/osgPlugins", "osgdb_xine.so"); + register_rgbout_plugin(_xine); + + // register_plugin(_xine, "/usr/local/lib/osgPlugins", "osgdb_xine.so"); } diff --git a/src/osgPlugins/xine/video_out_rgb.c b/src/osgPlugins/xine/video_out_rgb.c index 2f07818ae..8e4f5dc09 100644 --- a/src/osgPlugins/xine/video_out_rgb.c +++ b/src/osgPlugins/xine/video_out_rgb.c @@ -2773,3 +2773,11 @@ plugin_info_t xine_plugin_info[] = { PLUGIN_VIDEO_OUT, 20, "rgb", XINE_VERSION_CODE, &vo_info_rgbout, init_class}, { PLUGIN_NONE, 0, "", 0, NULL, NULL} }; + +void register_rgbout_plugin(xine_t *self) +{ + fprintf(stderr,"register_rgbout_plugin...\n"); + xine_register_plugins(self, xine_plugin_info); + fprintf(stderr,"done register_rgbout_plugin\n"); +} + diff --git a/src/osgPlugins/xine/video_out_rgb.h b/src/osgPlugins/xine/video_out_rgb.h index 9c324be38..1fb6a2e25 100644 --- a/src/osgPlugins/xine/video_out_rgb.h +++ b/src/osgPlugins/xine/video_out_rgb.h @@ -27,6 +27,9 @@ #ifndef VIDEO_OUT_RGB_H #define VIDEO_OUT_RGB_H +#ifdef __cplusplus +extern "C" { +#endif typedef struct @@ -176,9 +179,13 @@ typedef struct } rgbout_packer_t; +void register_rgbout_plugin(xine_t *self); #define XINE_VISUAL_TYPE_RGBOUT 100 +#ifdef __cplusplus +} +#endif #endif /* VIDEO_OUT_RGB_H */