summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libspudec/xine_decoder.c12
-rw-r--r--src/xine-engine/buffer.h3
-rw-r--r--src/xine-engine/video_overlay.c8
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 ) {