diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/libspudec/xine_decoder.c | 12 | ||||
-rw-r--r-- | src/xine-engine/buffer.h | 3 | ||||
-rw-r--r-- | src/xine-engine/video_overlay.c | 8 |
3 files changed, 15 insertions, 8 deletions
diff --git a/src/libspudec/xine_decoder.c b/src/libspudec/xine_decoder.c index b490ebe77..0f30aecf6 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.40 2001/11/30 17:35:32 jcdutton Exp $ + * $Id: xine_decoder.c,v 1.41 2001/11/30 19:31:55 jcdutton Exp $ * * stuff needed to turn libspu into a xine decoder plugin */ @@ -101,7 +101,7 @@ static void spudec_init (spu_decoder_t *this_gen, vo_instance_t *vo_out) { spudec_reset(this); /* FIXME:Do we really need a default clut? */ - memcpy(this->state.clut, __default_clut, sizeof(this->state.clut)); + xine_fast_memcpy(this->state.clut, __default_clut, sizeof(this->state.clut)); this->state.need_clut = 1; } @@ -168,7 +168,7 @@ static void spu_process (spudec_decoder_t *this, uint32_t stream_id) { this->event.object.handle = this->spu_stream_state[stream_id].overlay_handle; - memcpy(this->event.object.overlay, + xine_fast_memcpy(this->event.object.overlay, &this->overlay, sizeof(vo_overlay_t)); this->overlay.rle=NULL; @@ -197,7 +197,7 @@ static void spu_process (spudec_decoder_t *this, uint32_t stream_id) { } this->event.object.handle = this->menu_handle; - memcpy(this->event.object.overlay, + xine_fast_memcpy(this->event.object.overlay, &this->overlay, sizeof(vo_overlay_t)); this->overlay.rle=NULL; @@ -222,7 +222,7 @@ static void spudec_decode_data (spu_decoder_t *this_gen, buf_element_t *buf) { if (buf->type == BUF_SPU_CLUT) { if (buf->content[0]) { /* cheap endianess detection */ - memcpy(this->state.clut, buf->content, sizeof(uint32_t)*16); + xine_fast_memcpy(this->state.clut, buf->content, sizeof(uint32_t)*16); } else { int i; uint32_t *clut = (uint32_t*) buf->content; @@ -429,7 +429,7 @@ static void spudec_event_listener(void *this_gen, xine_event_t *event_gen) { /* FIXME: This function will need checking before it works. */ spu_cltbl_t *clut = event->data; if (clut) { - memcpy(this->state.clut, clut->clut, sizeof(int32_t)*16); + xine_fast_memcpy(this->state.clut, clut->clut, sizeof(uint32_t)*16); this->state.need_clut = 0; } } diff --git a/src/xine-engine/buffer.h b/src/xine-engine/buffer.h index 6e4a6de08..22288ecbd 100644 --- a/src/xine-engine/buffer.h +++ b/src/xine-engine/buffer.h @@ -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: buffer.h,v 1.24 2001/11/10 13:48:03 guenter Exp $ + * $Id: buffer.h,v 1.25 2001/11/30 19:31:55 jcdutton Exp $ * * * contents: @@ -122,6 +122,7 @@ extern "C" { #define BUF_SPU_CLUT 0x04000000 #define BUF_SPU_PACKAGE 0x04010000 #define BUF_SPU_SUBP_CONTROL 0x04020000 +#define BUF_SPU_NAV 0x04030000 /* demuxer block types: */ diff --git a/src/xine-engine/video_overlay.c b/src/xine-engine/video_overlay.c index d62e3a58b..8bcec55bd 100644 --- a/src/xine-engine/video_overlay.c +++ b/src/xine-engine/video_overlay.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: video_overlay.c,v 1.4 2001/11/30 17:35:32 jcdutton Exp $ + * $Id: video_overlay.c,v 1.5 2001/11/30 19:31:55 jcdutton Exp $ * */ @@ -336,6 +336,9 @@ static void video_overlay_event( video_overlay_t *this, int vpts ) { printf ("video_overlay: SHOW SPU NOW\n"); #endif if (this->video_overlay_events[this_event].event->object.overlay != NULL) { +#ifdef LOG_DEBUG + video_overlay_print_overlay( this->video_overlay_events[this_event].event->object.overlay ) ; +#endif internal_video_overlay_free_handle( this, handle ); this->video_overlay_objects[handle].handle = handle; @@ -381,6 +384,9 @@ static void video_overlay_event( video_overlay_t *this, int vpts ) { if (this->video_overlay_events[this_event].event->object.overlay != NULL) { vo_overlay_t *event_overlay = this->video_overlay_events[this_event].event->object.overlay; vo_overlay_t *overlay; +#ifdef LOG_DEBUG + video_overlay_print_overlay( this->video_overlay_events[this_event].event->object.overlay ) ; +#endif /* we need to allocate overlay on first EVENT_MENU_SPU */ if( !this->video_overlay_objects[handle].overlay ) { |