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;
|
|
|
|
|
|
|
|
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? */
|
|
|
|
unsigned char prebuf[STREAM_BUFFER_SIZE]; /* prefill buffer */
|
|
|
|
int prelen; /* length of prefill buffer */
|
2006-08-19 21:41:04 +02:00
|
|
|
unsigned int duration; /* in milliseconds */
|
2002-04-03 19:50:48 +02:00
|
|
|
} dvdnav_priv_t;
|
|
|
|
|
|
|
|
extern int dvd_nav_still;
|
|
|
|
extern int dvd_nav_skip_opening;
|
|
|
|
extern char dvd_nav_text[50];
|
|
|
|
extern int osd_show_dvd_nav_delay;
|
|
|
|
extern int osd_show_dvd_nav_highlight;
|
|
|
|
extern int osd_show_dvd_nav_sx;
|
|
|
|
extern int osd_show_dvd_nav_ex;
|
|
|
|
extern int osd_show_dvd_nav_sy;
|
|
|
|
extern int osd_show_dvd_nav_ey;
|
|
|
|
|
|
|
|
dvdnav_priv_t * new_dvdnav_stream(char * filename);
|
|
|
|
int dvdnav_stream_reset(dvdnav_priv_t * dvdnav_priv);
|
|
|
|
void free_dvdnav_stream(dvdnav_priv_t * dvdnav_priv);
|
|
|
|
|
|
|
|
void dvdnav_stream_ignore_timers(dvdnav_priv_t * dvdnav_priv, int ignore);
|
2006-06-14 23:58:17 +02:00
|
|
|
int dvdnav_stream_read(dvdnav_priv_t * dvdnav_priv, unsigned char *buf, int *len);
|
2002-04-03 19:50:48 +02:00
|
|
|
|
|
|
|
void dvdnav_stream_sleep(dvdnav_priv_t *dvdnav_priv, int seconds);
|
|
|
|
int dvdnav_stream_sleeping(dvdnav_priv_t * dvdnav_priv);
|
|
|
|
|
|
|
|
void dvdnav_stream_fullstart(dvdnav_priv_t *dvdnav_priv);
|
|
|
|
unsigned int * dvdnav_stream_get_palette(dvdnav_priv_t * dvdnav_priv);
|
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);
|
2002-04-03 19:50:48 +02:00
|
|
|
|
|
|
|
#endif
|