annotate stream/stream_dvd.h @ 26818:089ac698f8b1

Avoid crash with video stream switching and -nosound
author reimar
date Wed, 21 May 2008 20:46:05 +0000
parents 7ee4ae1648e6
children bae68d1afda2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25553
diff changeset
1 #ifndef MPLAYER_STREAM_DVD_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25553
diff changeset
2 #define MPLAYER_STREAM_DVD_H
25553
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 25112
diff changeset
3
26184
7ee4ae1648e6 Add missing header #includes to fix 'make checkheaders'.
diego
parents: 26029
diff changeset
4 #include <stdint.h>
20635
9ed557ae1383 Streamline and simplify internal vs external libdvdread handling.
diego
parents: 20615
diff changeset
5 #ifdef USE_DVDREAD_INTERNAL
20981
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
6 #include "dvdread/dvd_reader.h"
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
7 #include "dvdread/ifo_types.h"
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
8 #include "dvdread/ifo_read.h"
22cb9d5f1e21 Rename libdvdread to dvdread. We really only include only the dvdread
diego
parents: 20746
diff changeset
9 #include "dvdread/nav_read.h"
18681
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
10 #else
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
11 #include <dvdread/dvd_reader.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
12 #include <dvdread/ifo_types.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
13 #include <dvdread/ifo_read.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
14 #include <dvdread/nav_read.h>
303506bac0b5 moved stream_dvd's interface to stream_dvd.h
nicodvb
parents:
diff changeset
15 #endif
26184
7ee4ae1648e6 Add missing header #includes to fix 'make checkheaders'.
diego
parents: 26029
diff changeset
16 #include "stream.h"
18681
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);
25553
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 25112
diff changeset
52
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25553
diff changeset
53 #endif /* MPLAYER_STREAM_DVD_H */