Mercurial > mplayer.hg
changeset 21538:c9b6588932b5
export spu palette; part of a patch by Otvos Attila
author | nicodvb |
---|---|
date | Sat, 09 Dec 2006 19:23:35 +0000 |
parents | 21263c9ddd87 |
children | ad7616b01560 |
files | stream/stream_dvdnav.c stream/stream_dvdnav.h |
diffstat | 2 files changed, 13 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/stream/stream_dvdnav.c Sat Dec 09 19:12:51 2006 +0000 +++ b/stream/stream_dvdnav.c Sat Dec 09 19:23:35 2006 +0000 @@ -179,6 +179,11 @@ priv->duration = ev->pgc_length/90; break; } + case DVDNAV_SPU_CLUT_CHANGE: { + memcpy(priv->spu_clut, buf, 16*sizeof(unsigned int)); + priv->spu_set = 1; + break; + } case DVDNAV_WAIT: dvdnav_wait_skip(priv->dvdnav); break; @@ -511,6 +516,12 @@ return n; } +unsigned int *mp_dvdnav_get_spu_clut(stream_t *stream) { + dvdnav_priv_t *priv=(dvdnav_priv_t*)stream->priv; + if(!priv->spu_set) return NULL; + return priv->spu_clut; +} + void mp_dvdnav_get_highlight (stream_t *stream, nav_highlight_t *hl) { dvdnav_priv_t *priv = (dvdnav_priv_t *) stream->priv; dvdnav_highlight_event_t hlev = priv->hlev;
--- a/stream/stream_dvdnav.h Sat Dec 09 19:12:51 2006 +0000 +++ b/stream/stream_dvdnav.h Sat Dec 09 19:23:35 2006 +0000 @@ -24,6 +24,7 @@ unsigned int duration; /* in milliseconds */ int mousex, mousey; int title; + unsigned int spu_clut[16], spu_set; dvdnav_highlight_event_t hlev; } dvdnav_priv_t; @@ -33,5 +34,6 @@ int mp_dvdnav_handle_input(stream_t *stream, int cmd, int *button); void mp_dvdnav_update_mouse_pos(stream_t *stream, int32_t x, int32_t y, int* button); void mp_dvdnav_get_highlight (stream_t *stream, nav_highlight_t *hl); +unsigned int *mp_dvdnav_get_spu_clut(stream_t *stream); #endif