annotate stream/stream_dvd.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 d09f288a7179
children a06ffbca3c37
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20635
9ed557ae1383 Streamline and simplify internal vs external libdvdread handling.
diego
parents: 20615
diff changeset
1 #ifdef USE_DVDREAD_INTERNAL
20981
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
2 #include "dvdread/dvd_reader.h"
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
3 #include "dvdread/ifo_types.h"
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
4 #include "dvdread/ifo_read.h"
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
5 #include "dvdread/nav_read.h"
19763
b3855eac66ca detect dvdnav before mpdvdkit and dvdread; if dvdnav is set mplayer will use the version of dvdread embedded in dvdnav
nicodvb
parents: 19271
diff changeset
6 #elif defined(USE_DVDNAV)
b3855eac66ca detect dvdnav before mpdvdkit and dvdread; if dvdnav is set mplayer will use the version of dvdread embedded in dvdnav
nicodvb
parents: 19271
diff changeset
7 #include <dvd_reader.h>
b3855eac66ca detect dvdnav before mpdvdkit and dvdread; if dvdnav is set mplayer will use the version of dvdread embedded in dvdnav
nicodvb
parents: 19271
diff changeset
8 #include <ifo_types.h>
b3855eac66ca detect dvdnav before mpdvdkit and dvdread; if dvdnav is set mplayer will use the version of dvdread embedded in dvdnav
nicodvb
parents: 19271
diff changeset
9 #include <ifo_read.h>
b3855eac66ca detect dvdnav before mpdvdkit and dvdread; if dvdnav is set mplayer will use the version of dvdread embedded in dvdnav
nicodvb
parents: 19271
diff changeset
10 #include <nav_read.h>
18681
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
11 #else
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
12 #include <dvdread/dvd_reader.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
13 #include <dvdread/ifo_types.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
14 #include <dvdread/ifo_read.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
15 #include <dvdread/nav_read.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
16 #endif
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
17
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
18 typedef struct {
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
19 dvd_reader_t *dvd;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
20 dvd_file_t *title;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
21 ifo_handle_t *vmg_file;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
22 tt_srpt_t *tt_srpt;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
23 ifo_handle_t *vts_file;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
24 vts_ptt_srpt_t *vts_ptt_srpt;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
25 pgc_t *cur_pgc;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
26 //
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
27 int cur_title;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
28 int cur_cell;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
29 int last_cell;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
30 int cur_pack;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
31 int cell_last_pack;
20746
a40246d0c941 implemented STREAM_CTRL_GET_CURRENT_TIME and STREAM_CTRL_SEEK_TO_TIME (precise seeking)
nicodvb
parents: 20635
diff changeset
32 int cur_pgc_idx;
18681
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
33 // Navi:
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
34 int packs_left;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
35 dsi_t dsi_pack;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
36 int angle_seek;
20746
a40246d0c941 implemented STREAM_CTRL_GET_CURRENT_TIME and STREAM_CTRL_SEEK_TO_TIME (precise seeking)
nicodvb
parents: 20635
diff changeset
37 unsigned int *cell_times_table;
18681
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
38 // audio datas
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
39 int nr_of_channels;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
40 stream_language_t audio_streams[32];
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
41 // subtitles
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
42 int nr_of_subtitles;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
43 stream_language_t subtitles[32];
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
44 } dvd_priv_t;
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
45
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
46 int dvd_number_of_subs(stream_t *stream);
20156
42b46a42f83b added OSD audio switching visualization
ptt
parents: 19763
diff changeset
47 int dvd_lang_from_aid(stream_t *stream, int id);
18681
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
48 int dvd_lang_from_sid(stream_t *stream, int id);
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
49 int dvd_aid_from_lang(stream_t *stream, unsigned char* lang);
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
50 int dvd_sid_from_lang(stream_t *stream, unsigned char* lang);
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
51 int dvd_chapter_from_cell(dvd_priv_t *dvd,int title,int cell);