diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/dxr3/Makefile.am | 1 | ||||
-rw-r--r-- | src/dxr3/dxr3_decode_spu.c | 32 | ||||
-rw-r--r-- | src/input/Makefile.am | 2 | ||||
-rw-r--r-- | src/input/input_dvd.c | 35 | ||||
-rw-r--r-- | src/libspucc/xine_decoder.c | 6 | ||||
-rw-r--r-- | src/libspudec/Makefile.am | 1 | ||||
-rw-r--r-- | src/libspudec/spu.c | 13 | ||||
-rw-r--r-- | src/libspudec/spu_decoder_api.h | 64 | ||||
-rw-r--r-- | src/libspudec/xine_decoder.c | 16 | ||||
-rw-r--r-- | src/libsputext/xine_decoder.c | 6 | ||||
-rw-r--r-- | src/libsputext/xine_decoder_ogm.c | 6 |
11 files changed, 96 insertions, 86 deletions
diff --git a/src/dxr3/Makefile.am b/src/dxr3/Makefile.am index 33b71dc23..8cd3759c2 100644 --- a/src/dxr3/Makefile.am +++ b/src/dxr3/Makefile.am @@ -27,6 +27,7 @@ xineplug_decode_dxr3_video_la_LIBADD = $(XINE_LIB) xineplug_decode_dxr3_video_la_LDFLAGS = -avoid-version -module if HAVE_DVDNAV +AM_CPPFLAGS = $(DVDNAV_CFLAGS) xineplug_decode_dxr3_spu_la_SOURCES = dxr3_decode_spu.c xineplug_decode_dxr3_spu_la_LIBADD = $(XINE_LIB) $(DVDNAV_LIBS) else diff --git a/src/dxr3/dxr3_decode_spu.c b/src/dxr3/dxr3_decode_spu.c index e0d367e91..8f5abb7dd 100644 --- a/src/dxr3/dxr3_decode_spu.c +++ b/src/dxr3/dxr3_decode_spu.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: dxr3_decode_spu.c,v 1.34 2003/04/30 16:51:57 mroi Exp $ + * $Id: dxr3_decode_spu.c,v 1.35 2003/05/03 14:24:07 mroi Exp $ */ /* dxr3 spu decoder plugin. @@ -71,7 +71,7 @@ static decoder_info_t dxr3_spudec_info = { plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_SPU_DECODER, 13, "dxr3-spudec", XINE_VERSION_CODE, &dxr3_spudec_info, &dxr3_spudec_init_plugin }, + { PLUGIN_SPU_DECODER, 14, "dxr3-spudec", XINE_VERSION_CODE, &dxr3_spudec_info, &dxr3_spudec_init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; @@ -87,7 +87,7 @@ static void dxr3_spudec_decode_data(spu_decoder_t *this_gen, buf_element_t *b static void dxr3_spudec_reset(spu_decoder_t *this_gen); static void dxr3_spudec_discontinuity(spu_decoder_t *this_gen); static void dxr3_spudec_dispose(spu_decoder_t *this_gen); -static int dxr3_spudec_get_nav_pci(spu_decoder_t *this_gen, pci_t *pci); +static int dxr3_spudec_interact_info(spu_decoder_t *this_gen, void *data); static void dxr3_spudec_set_button(spu_decoder_t *this_gen, int32_t button, int32_t mode); /* plugin structures */ @@ -174,7 +174,7 @@ static spu_decoder_t *dxr3_spudec_open_plugin(spu_decoder_class_t *class_gen, xi this->spu_decoder.reset = dxr3_spudec_reset; this->spu_decoder.discontinuity = dxr3_spudec_discontinuity; this->spu_decoder.dispose = dxr3_spudec_dispose; - this->spu_decoder.get_nav_pci = dxr3_spudec_get_nav_pci; + this->spu_decoder.get_interact_info = dxr3_spudec_interact_info; this->spu_decoder.set_button = dxr3_spudec_set_button; this->class = class; @@ -319,15 +319,14 @@ static void dxr3_spudec_decode_data(spu_decoder_t *this_gen, buf_element_t *buf) this->button_filter = 0; if ( this->pci.hli.hl_gi.fosl_btnn > 0) { /* a button is forced here, inform nav plugin */ - spu_button_t spu_button; + int buttonN; xine_event_t event; - this->buttonN = this->pci.hli.hl_gi.fosl_btnn ; + this->buttonN = this->pci.hli.hl_gi.fosl_btnn; event.type = XINE_EVENT_INPUT_BUTTON_FORCE; event.stream = this->stream; - event.data = &spu_button; - event.data_length = sizeof(spu_button); - spu_button.buttonN = this->buttonN; - memcpy(&spu_button.nav_pci, &this->pci, sizeof(pci_t)); + event.data = &buttonN; + event.data_length = sizeof(buttonN); + buttonN = this->buttonN; xine_event_send(this->stream, &event); } if ((dxr3_spudec_copy_nav_to_btn(this, 0, &btn ) > 0)) { @@ -514,12 +513,12 @@ static void dxr3_spudec_dispose(spu_decoder_t *this_gen) free (this); } -static int dxr3_spudec_get_nav_pci(spu_decoder_t *this_gen, pci_t *pci) +static int dxr3_spudec_interact_info(spu_decoder_t *this_gen, void *data) { dxr3_spudec_t *this = (dxr3_spudec_t *)this_gen; pthread_mutex_lock(&this->pci_lock); - memcpy(pci, &this->pci, sizeof(pci_t) ); + memcpy(data, &this->pci, sizeof(pci_t) ); pthread_mutex_unlock(&this->pci_lock); return 1; } @@ -598,7 +597,7 @@ static int dxr3_spudec_copy_nav_to_btn(dxr3_spudec_t *this, int32_t mode, em8300 btni_t *button_ptr; if ((this->buttonN <= 0) || (this->buttonN > this->pci.hli.hl_gi.btn_ns)) { - spu_button_t spu_button; + int buttonN; xine_event_t event; printf("dxr3_decode_spu: Unable to select button number %i as it doesn't exist. Forcing button 1\n", @@ -607,10 +606,9 @@ static int dxr3_spudec_copy_nav_to_btn(dxr3_spudec_t *this, int32_t mode, em8300 /* inform nav plugin that we have chosen another button */ event.type = XINE_EVENT_INPUT_BUTTON_FORCE; event.stream = this->stream; - event.data = &spu_button; - event.data_length = sizeof(spu_button); - spu_button.buttonN = this->buttonN; - memcpy(&spu_button.nav_pci, &this->pci, sizeof(pci_t)); + event.data = &buttonN; + event.data_length = sizeof(buttonN); + buttonN = this->buttonN; xine_event_send(this->stream, &event); } diff --git a/src/input/Makefile.am b/src/input/Makefile.am index 7265c69da..da0156f7b 100644 --- a/src/input/Makefile.am +++ b/src/input/Makefile.am @@ -38,7 +38,7 @@ endif # For DVD if HAVE_DVDNAV -DVD_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE +DVD_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE $(DVDNAV_CFLAGS) link_dvdnav = $(DVDNAV_LIBS) else DVD_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \ diff --git a/src/input/input_dvd.c b/src/input/input_dvd.c index f36b7a726..8a207a644 100644 --- a/src/input/input_dvd.c +++ b/src/input/input_dvd.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: input_dvd.c,v 1.158 2003/04/30 16:41:15 mroi Exp $ + * $Id: input_dvd.c,v 1.159 2003/05/03 14:24:08 mroi Exp $ * */ @@ -968,7 +968,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { if(!this->stream || !this->stream->spu_decoder_plugin) { return; } - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) { + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) { if (dvdnav_button_activate(this->dvdnav, &nav_pci) == DVDNAV_STATUS_OK) xine_dvd_send_button_update(this, 1); } @@ -980,7 +980,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { if(!this->stream || !this->stream->spu_decoder_plugin) { return; } - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) { + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) { xine_input_data_t *input = event->data; if (dvdnav_mouse_activate(this->dvdnav, &nav_pci, input->x, input->y) == DVDNAV_STATUS_OK) xine_dvd_send_button_update(this, 1); @@ -989,11 +989,15 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { break; case XINE_EVENT_INPUT_BUTTON_FORCE: /* For libspudec to feedback forced button select from NAV PCI packets. */ { - spu_button_t *but = event->data; + pci_t nav_pci; + int *but = event->data; #ifdef INPUT_DEBUG - printf("input_dvd: BUTTON_FORCE %d\n", but->buttonN); + printf("input_dvd: BUTTON_FORCE %d\n", *but); #endif - dvdnav_button_select(this->dvdnav, &but->nav_pci, but->buttonN); + if(!this->stream || !this->stream->spu_decoder_plugin) + return; + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) + dvdnav_button_select(this->dvdnav, &nav_pci, *but); } break; case XINE_EVENT_INPUT_MOUSE_MOVE: @@ -1001,7 +1005,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { pci_t nav_pci; if(!this->stream || !this->stream->spu_decoder_plugin) return; - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) { + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) { xine_input_data_t *input = event->data; /* printf("input_dvd: Mouse move (x,y) = (%i,%i)\n", input->x, input->y); */ dvdnav_mouse_select(this->dvdnav, &nav_pci, input->x, input->y); @@ -1013,7 +1017,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { pci_t nav_pci; if(!this->stream || !this->stream->spu_decoder_plugin) return; - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) dvdnav_upper_button_select(this->dvdnav, &nav_pci); break; } @@ -1022,7 +1026,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { pci_t nav_pci; if(!this->stream || !this->stream->spu_decoder_plugin) return; - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) dvdnav_lower_button_select(this->dvdnav, &nav_pci); break; } @@ -1031,7 +1035,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { pci_t nav_pci; if(!this->stream || !this->stream->spu_decoder_plugin) return; - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) dvdnav_left_button_select(this->dvdnav, &nav_pci); break; } @@ -1040,7 +1044,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { pci_t nav_pci; if(!this->stream || !this->stream->spu_decoder_plugin) return; - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) dvdnav_right_button_select(this->dvdnav, &nav_pci); break; } @@ -1067,7 +1071,7 @@ static void dvd_handle_events(dvd_input_plugin_t *this) { pci_t nav_pci; if(!this->stream || !this->stream->spu_decoder_plugin) return; - if (this->stream->spu_decoder_plugin->get_nav_pci(this->stream->spu_decoder_plugin, &nav_pci) ) { + if (this->stream->spu_decoder_plugin->get_interact_info(this->stream->spu_decoder_plugin, &nav_pci) ) { if (dvdnav_button_select_and_activate(this->dvdnav, &nav_pci, this->typed_buttonN) == DVDNAV_STATUS_OK) xine_dvd_send_button_update(this, 1); this->typed_buttonN = 0; @@ -1608,6 +1612,13 @@ static void *init_class (xine_t *xine, void *data) { /* * $Log: input_dvd.c,v $ + * Revision 1.159 2003/05/03 14:24:08 mroi + * as announced on xine-devel: + * * I change the SPU decoder API to make it look less DVD specific + * * adapt all related files + * * increase SPU decoder API version + * * include DVDNAV_CFLAGS locally where needed + * * Revision 1.158 2003/04/30 16:41:15 mroi * the standalone libdvdnav can do raw device reads now, so this limitation * here is no longer necessary diff --git a/src/libspucc/xine_decoder.c b/src/libspucc/xine_decoder.c index 845fae699..321b9652b 100644 --- a/src/libspucc/xine_decoder.c +++ b/src/libspucc/xine_decoder.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: xine_decoder.c,v 1.24 2002/12/26 21:53:42 miguelfreitas Exp $ + * $Id: xine_decoder.c,v 1.25 2003/05/03 14:24:08 mroi Exp $ * * closed caption spu decoder. receive data by events. * @@ -347,7 +347,7 @@ static spu_decoder_t *spudec_open_plugin (spu_decoder_class_t *class, xine_strea this->spu_decoder.reset = spudec_reset; this->spu_decoder.discontinuity = spudec_discontinuity; this->spu_decoder.dispose = spudec_dispose; - this->spu_decoder.get_nav_pci = NULL; + this->spu_decoder.get_interact_info = NULL; this->spu_decoder.set_button = NULL; this->stream = stream; @@ -398,6 +398,6 @@ static decoder_info_t spudec_info = { plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_SPU_DECODER, 13, "spucc", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, + { PLUGIN_SPU_DECODER, 14, "spucc", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; diff --git a/src/libspudec/Makefile.am b/src/libspudec/Makefile.am index 6480f6788..2d7478d20 100644 --- a/src/libspudec/Makefile.am +++ b/src/libspudec/Makefile.am @@ -10,6 +10,7 @@ if HAVE_DVDNAV xineplug_decode_spu_la_SOURCES = \ spu.c \ xine_decoder.c +AM_CPPFLAGS = $(DVDNAV_CFLAGS) xineplug_decode_spu_la_LIBADD = $(XINE_LIB) $(DVDNAV_LIBS) else diff --git a/src/libspudec/spu.c b/src/libspudec/spu.c index c2e8ccabc..b09314b20 100644 --- a/src/libspudec/spu.c +++ b/src/libspudec/spu.c @@ -35,7 +35,7 @@ * along with this program; see the file COPYING. If not, write to * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: spu.c,v 1.65 2003/05/02 15:54:33 miguelfreitas Exp $ + * $Id: spu.c,v 1.66 2003/05/03 14:24:06 mroi Exp $ * */ @@ -364,18 +364,15 @@ void spudec_process (spudec_decoder_t *this, uint32_t stream_id) { continue; } if ( this->pci.hli.hl_gi.fosl_btnn > 0) { - spu_button_t spu_button; + int buttonN; xine_event_t event; this->buttonN = this->pci.hli.hl_gi.fosl_btnn ; event.type = XINE_EVENT_INPUT_BUTTON_FORCE; event.stream = this->stream; - event.data = &spu_button; - event.data_length = sizeof(spu_button); - spu_button.buttonN = this->buttonN; - /* The BUTTON_FORCE event cannot call "get_nav_pci", - so the nav_pci info has to be passed in the event instead. */ - memcpy(&spu_button.nav_pci, &this->pci, sizeof(pci_t) ); + event.data = &buttonN; + event.data_length = sizeof(buttonN); + buttonN = this->buttonN; xine_event_send(this->stream, &event); } #ifdef LOG_BUTTON diff --git a/src/libspudec/spu_decoder_api.h b/src/libspudec/spu_decoder_api.h index e43cc51f2..7eb33ed61 100644 --- a/src/libspudec/spu_decoder_api.h +++ b/src/libspudec/spu_decoder_api.h @@ -24,17 +24,7 @@ #ifndef HAVE_SPU_API_H #define HAVE_SPU_API_H -#define SPU_DECODER_IFACE_VERSION 13 - -#ifdef XINE_COMPILE -# ifdef HAVE_DVDNAV -# include <dvdnav/nav_types.h> -# else -# include "../input/libdvdnav/nav_types.h" -# endif -#else -# include "nav_types.h" -#endif +#define SPU_DECODER_IFACE_VERSION 14 /* * generic xine spu decoder plugin interface @@ -70,38 +60,50 @@ struct spu_decoder_class_s { struct spu_decoder_s { -/* void (*init) (spu_decoder_t *this, vo_instance_t *video_out);*/ - + /* + * decode data from buf and feed the overlay to overlay manager + */ void (*decode_data) (spu_decoder_t *this, buf_element_t *buf); + /* + * reset decoder after engine flush (prepare for new + * SPU data not related to recently decoded data) + */ void (*reset) (spu_decoder_t *this); + /* + * inform decoder that a time reference discontinuity has happened. + * that is, it must forget any currently held pts value + */ void (*discontinuity) (spu_decoder_t *this); + /* + * close down, free all resources + */ void (*dispose) (spu_decoder_t *this); - int (*get_nav_pci) (spu_decoder_t *this, pci_t *nav_pci); + /* + * When the SPU decoder also handles data used in user interaction, + * you can query the related information here. The typical example + * for this is DVD NAV packets which are handled by the SPU decoder + * and can be received readily parsed from here. + * The caller and the decoder must agree on the structure which is + * passed here. + * This function pointer may be NULL, if the plugin does not have + * such functionality. + */ + int (*get_interact_info) (spu_decoder_t *this, void *data); + /* + * When the SPU decoder also handles menu overlays for user inter- + * action, you can set a menu button here. The typical example for + * this is DVD menus. + * This function pointer may be NULL, if the plugin does not have + * such functionality. + */ void (*set_button) (spu_decoder_t *this_gen, int32_t button, int32_t mode); void *node; /* used by plugin loader */ }; -typedef struct spu_button_s spu_button_t; -struct spu_button_s { - uint32_t show; - uint8_t color[4]; - uint8_t trans[4]; - uint16_t left, right; - uint16_t top, bottom; - int64_t pts; - uint32_t buttonN; - pci_t nav_pci; -}; - -typedef struct spudec_clut_table_s spudec_clut_table_t; -struct spudec_clut_table_s { - uint32_t clut[16]; -}; - #endif /* HAVE_SPUDEC_H */ diff --git a/src/libspudec/xine_decoder.c b/src/libspudec/xine_decoder.c index 68e09fa17..92b714d0c 100644 --- a/src/libspudec/xine_decoder.c +++ b/src/libspudec/xine_decoder.c @@ -19,7 +19,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: xine_decoder.c,v 1.97 2003/04/30 16:49:35 mroi Exp $ + * $Id: xine_decoder.c,v 1.98 2003/05/03 14:24:07 mroi Exp $ * * stuff needed to turn libspu into a xine decoder plugin */ @@ -199,15 +199,15 @@ static void spudec_dispose (spu_decoder_t *this_gen) { /* This is not perfectly in sync with the display, but all the same, */ /* much closer than doing it at the input stage. */ /* returns a bool for error/success.*/ -static int spudec_get_nav_pci (spu_decoder_t *this_gen, pci_t *pci) { +static int spudec_get_interact_info (spu_decoder_t *this_gen, void *data) { spudec_decoder_t *this = (spudec_decoder_t *) this_gen; - /*printf("get_nav_pci() called\n");*/ - if (!this || !pci) + /*printf("get_interact_info() called\n");*/ + if (!this || !data) return 0; - /*printf("get_nav_pci() coping nav_pci\n");*/ + /*printf("get_interact_info() coping nav_pci\n");*/ pthread_mutex_lock(&this->nav_pci_lock); - memcpy(pci, &this->pci, sizeof(pci_t) ); + memcpy(data, &this->pci, sizeof(pci_t) ); pthread_mutex_unlock(&this->nav_pci_lock); return 1; @@ -305,7 +305,7 @@ static spu_decoder_t *open_plugin (spu_decoder_class_t *class_gen, xine_stream_t this->spu_decoder.reset = spudec_reset; this->spu_decoder.discontinuity = spudec_discontinuity; this->spu_decoder.dispose = spudec_dispose; - this->spu_decoder.get_nav_pci = spudec_get_nav_pci; + this->spu_decoder.get_interact_info = spudec_get_interact_info; this->spu_decoder.set_button = spudec_set_button; this->stream = stream; this->class = (spudec_class_t *) class_gen; @@ -379,6 +379,6 @@ static decoder_info_t dec_info_data = { plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_SPU_DECODER, 13, "spudec", XINE_VERSION_CODE, &dec_info_data, &init_plugin }, + { PLUGIN_SPU_DECODER, 14, "spudec", XINE_VERSION_CODE, &dec_info_data, &init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; diff --git a/src/libsputext/xine_decoder.c b/src/libsputext/xine_decoder.c index c4776bb70..9f826941b 100644 --- a/src/libsputext/xine_decoder.c +++ b/src/libsputext/xine_decoder.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: xine_decoder.c,v 1.57 2003/03/31 16:12:55 mroi Exp $ + * $Id: xine_decoder.c,v 1.58 2003/05/03 14:24:09 mroi Exp $ * */ @@ -406,7 +406,7 @@ static spu_decoder_t *sputext_class_open_plugin (spu_decoder_class_t *class_gen, this->spu_decoder.reset = spudec_reset; this->spu_decoder.discontinuity = spudec_discontinuity; this->spu_decoder.dispose = spudec_dispose; - this->spu_decoder.get_nav_pci = NULL; + this->spu_decoder.get_interact_info = NULL; this->spu_decoder.set_button = NULL; this->spu_decoder.dispose = spudec_dispose; @@ -491,6 +491,6 @@ static decoder_info_t spudec_info = { plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_SPU_DECODER, 13, "sputext", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, + { PLUGIN_SPU_DECODER, 14, "sputext", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; diff --git a/src/libsputext/xine_decoder_ogm.c b/src/libsputext/xine_decoder_ogm.c index fa144b75d..2b6865f6b 100644 --- a/src/libsputext/xine_decoder_ogm.c +++ b/src/libsputext/xine_decoder_ogm.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: xine_decoder_ogm.c,v 1.2 2003/04/26 13:46:48 heinchen Exp $ + * $Id: xine_decoder_ogm.c,v 1.3 2003/05/03 14:24:09 mroi Exp $ * */ @@ -475,7 +475,7 @@ static spu_decoder_t *spuogm_class_open_plugin (spu_decoder_class_t *class_gen, this->spu_decoder.reset = spudec_reset; this->spu_decoder.discontinuity = spudec_discontinuity; this->spu_decoder.dispose = spudec_dispose; - this->spu_decoder.get_nav_pci = NULL; + this->spu_decoder.get_interact_info = NULL; this->spu_decoder.set_button = NULL; this->spu_decoder.dispose = spudec_dispose; @@ -560,6 +560,6 @@ static decoder_info_t spudec_info = { plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_SPU_DECODER, 13, "spuogm", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, + { PLUGIN_SPU_DECODER, 14, "spuogm", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; |