annotate stream/stream_dvdnav.h @ 24576:6704a924d4aa

According to MSDN a thread must call CoUninitialize once for each successful call it has made to CoInitialize or CoInitializeEx, including any call that returns S_FALSE. Only the CoUninitialize call corresponding to the CoInitialize or CoInitializeEx call that initialized the library can close it. patch by Gianluigi Tiesi, mplayer netfarm it
author diego
date Sun, 23 Sep 2007 20:37:33 +0000
parents 7dad6159053b
children 3baf6a2283da
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23689
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 21603
diff changeset
1 #ifndef MPLAYER_STREAM_DVDNAV_H
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 21603
diff changeset
2 #define MPLAYER_STREAM_DVDNAV_H
19302
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
3
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
4 #include <dvdnav.h>
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
5
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
6 typedef struct {
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
7 int event; /* event number fromd dvdnav_events.h */
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
8 void * details; /* event details */
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
9 int len; /* bytes in details */
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
10 } dvdnav_event_t;
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
11
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
12 typedef struct {
21200
c7b5dd2b2291 better nav highlight handling
ben
parents: 21199
diff changeset
13 uint16_t sx, sy;
c7b5dd2b2291 better nav highlight handling
ben
parents: 21199
diff changeset
14 uint16_t ex, ey;
c7b5dd2b2291 better nav highlight handling
ben
parents: 21199
diff changeset
15 } nav_highlight_t;
c7b5dd2b2291 better nav highlight handling
ben
parents: 21199
diff changeset
16
c7b5dd2b2291 better nav highlight handling
ben
parents: 21199
diff changeset
17 typedef struct {
19302
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
18 dvdnav_t * dvdnav; /* handle to libdvdnav stuff */
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
19 char * filename; /* path */
19453
087d4a916ea3 implemented STREAM_CTRL_GET_TIME_LENGTH (duration of the pgc playing)
nicodvb
parents: 19302
diff changeset
20 unsigned int duration; /* in milliseconds */
19912
3fdb44285fe7 introduced new MP_CMD_DVDNAV_MOUSECLICK command (bound to mouse0);
nicodvb
parents: 19851
diff changeset
21 int mousex, mousey;
20405
a11a208925b9 don't play any other title other than N when N is specified (with dvdnav://N)
nicodvb
parents: 19913
diff changeset
22 int title;
21538
c9b6588932b5 export spu palette; part of a patch by Otvos Attila
nicodvb
parents: 21219
diff changeset
23 unsigned int spu_clut[16], spu_set;
21219
8258747951d7 keep nav highlight event in dvdnav priv structure
ben
parents: 21200
diff changeset
24 dvdnav_highlight_event_t hlev;
19302
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
25 } dvdnav_priv_t;
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
26
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
27
21197
7ecd9de03435 added code to identify subs language and count; needed for forthcoming support for -slang
nicodvb
parents: 20405
diff changeset
28 int dvdnav_number_of_subs(stream_t *stream);
21600
ca8327c8d1fb added dvdnav_aid_from_lang() to support -alang
nicodvb
parents: 21560
diff changeset
29 int dvdnav_aid_from_lang(stream_t *stream, unsigned char *language);
21603
4bfdaf8bcae5 implemented dvdnav_lang_from_aid() to retrieve audio language
nicodvb
parents: 21600
diff changeset
30 int dvdnav_lang_from_aid(stream_t *stream, int id, unsigned char *buf);
21197
7ecd9de03435 added code to identify subs language and count; needed for forthcoming support for -slang
nicodvb
parents: 20405
diff changeset
31 int dvdnav_sid_from_lang(stream_t *stream, unsigned char *language);
21560
a16219e6d656 added function to return the language of the specified subtitle id. Patch by
nicodvb
parents: 21538
diff changeset
32 int dvdnav_lang_from_sid(stream_t *stream, int sid, unsigned char *buf);
19774
109e241c0cca in mp_dvdnav_handle_input() assign the currently selected button, shown in the OSD by main()
nicodvb
parents: 19768
diff changeset
33 int mp_dvdnav_handle_input(stream_t *stream, int cmd, int *button);
19851
adfd08588514 report mouse coordinates after movement to dvdnav; this permits to enable button selection using the mouse; patch by Jonas Jermann and me
nicodvb
parents: 19774
diff changeset
34 void mp_dvdnav_update_mouse_pos(stream_t *stream, int32_t x, int32_t y, int* button);
21219
8258747951d7 keep nav highlight event in dvdnav priv structure
ben
parents: 21200
diff changeset
35 void mp_dvdnav_get_highlight (stream_t *stream, nav_highlight_t *hl);
21538
c9b6588932b5 export spu palette; part of a patch by Otvos Attila
nicodvb
parents: 21219
diff changeset
36 unsigned int *mp_dvdnav_get_spu_clut(stream_t *stream);
19302
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
37
cc4774869fbc renamed dvdnav_stream to stream_dvdnav for consistency
ben
parents:
diff changeset
38 #endif