2002-04-03 19:50:48 +02:00
|
|
|
#ifndef _MPLAYER_DVDNAV_STREAM_H
|
|
|
|
#define _MPLAYER_DVDNAV_STREAM_H
|
|
|
|
|
|
|
|
#include <dvdnav.h>
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
int event; /* event number fromd dvdnav_events.h */
|
|
|
|
void * details; /* event details */
|
|
|
|
int len; /* bytes in details */
|
|
|
|
} dvdnav_event_t;
|
|
|
|
|
2006-11-25 14:03:51 +01:00
|
|
|
typedef struct {
|
|
|
|
uint16_t sx, sy;
|
|
|
|
uint16_t ex, ey;
|
|
|
|
} nav_highlight_t;
|
|
|
|
|
2002-04-03 19:50:48 +02:00
|
|
|
typedef struct {
|
|
|
|
dvdnav_t * dvdnav; /* handle to libdvdnav stuff */
|
|
|
|
char * filename; /* path */
|
|
|
|
int ignore_timers; /* should timers be skipped? */
|
|
|
|
int sleeping; /* are we sleeping? */
|
|
|
|
unsigned int sleep_until; /* timer */
|
|
|
|
int started; /* Has mplayer initialization finished? */
|
2006-08-19 21:41:04 +02:00
|
|
|
unsigned int duration; /* in milliseconds */
|
2006-09-20 01:50:21 +02:00
|
|
|
int mousex, mousey;
|
2006-10-23 23:04:31 +02:00
|
|
|
int title;
|
2006-12-09 20:23:35 +01:00
|
|
|
unsigned int spu_clut[16], spu_set;
|
2006-11-25 18:44:22 +01:00
|
|
|
dvdnav_highlight_event_t hlev;
|
2002-04-03 19:50:48 +02:00
|
|
|
} dvdnav_priv_t;
|
|
|
|
|
|
|
|
|
2006-11-25 13:17:34 +01:00
|
|
|
int dvdnav_number_of_subs(stream_t *stream);
|
|
|
|
int dvdnav_sid_from_lang(stream_t *stream, unsigned char *language);
|
2006-12-10 18:25:54 +01:00
|
|
|
int dvdnav_lang_from_sid(stream_t *stream, int sid, unsigned char *buf);
|
2006-09-10 00:40:22 +02:00
|
|
|
int mp_dvdnav_handle_input(stream_t *stream, int cmd, int *button);
|
2006-09-16 17:25:31 +02:00
|
|
|
void mp_dvdnav_update_mouse_pos(stream_t *stream, int32_t x, int32_t y, int* button);
|
2006-11-25 18:44:22 +01:00
|
|
|
void mp_dvdnav_get_highlight (stream_t *stream, nav_highlight_t *hl);
|
2006-12-09 20:23:35 +01:00
|
|
|
unsigned int *mp_dvdnav_get_spu_clut(stream_t *stream);
|
2002-04-03 19:50:48 +02:00
|
|
|
|
|
|
|
#endif
|