annotate dvd_types.h @ 166:3bfaec0c1288 src

* fix warnings with gcc 3.3 * some menu sanity checking in highlight.c (the button functions should do nothing, when called outside a menu) * escape should take us to the Root menu, not the Title menu, since this is what the standard "Menu" button on a DVD player does
author mroi
date Mon, 21 Apr 2003 13:18:06 +0000
parents 4e5ebc1491d5
children 6fac6a613ea5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
1 /*
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
2 * Copyright (C) 2000, 2001 Björn Englund, Håkan Hjort
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
3 *
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
4 * This file is part of libdvdnav, a DVD navigation library. It is a modified
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
5 * file originally part of the Ogle DVD player project.
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
6 *
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
7 * libdvdnav is free software; you can redistribute it and/or modify
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
10 * (at your option) any later version.
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
11 *
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
12 * libdvdnav is distributed in the hope that it will be useful,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
15 * GNU General Public License for more details.
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
16 *
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
20 *
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
21 * $Id$
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
22 *
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
23 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
24
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
25 /*
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
26 * Various useful structs and enums for DVDs.
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
27 */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
28
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
29 #ifndef DVD_H_INCLUDED
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
30 #define DVD_H_INCLUDED
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
31
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
32 #include <inttypes.h>
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
33
43
0ba15bf3dc25 Biiiiiiig change to let doxygen generate some docs for the library. Note that I'm in no way sure that the autoconf stuff plays nice.
richwareham
parents: 22
diff changeset
34
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
35 /*
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
36 * DVD Menu ID
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
37 * (see dvdnav_menu_call())
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
38 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
39 typedef enum {
166
3bfaec0c1288 * fix warnings with gcc 3.3
mroi
parents: 165
diff changeset
40 /* When used in VTS domain, DVD_MENU_Escape behaves like DVD_MENU_Root,
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
41 * but from within a menu domain, DVD_MENU_Escape resumes playback. */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
42 DVD_MENU_Escape = 0,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
43 DVD_MENU_Title = 2,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
44 DVD_MENU_Root = 3,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
45 DVD_MENU_Subpicture = 4,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
46 DVD_MENU_Audio = 5,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
47 DVD_MENU_Angle = 6,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
48 DVD_MENU_Part = 7
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
49 } DVDMenuID_t;
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
50
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
51
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
52 /*
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
53 * Structure containing info on highlight areas
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
54 * (see dvdnav_get_highlight_area())
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
55 */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
56 typedef struct {
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
57 uint32_t palette; /* The CLUT entries for the highlight palette
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
58 (4-bits per entry -> 4 entries) */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
59 uint16_t sx,sy,ex,ey; /* The start/end x,y positions */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
60 uint32_t pts; /* Highlight PTS to match with SPU */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
61
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
62 /* button number for the SPU decoder/overlaying engine */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
63 uint32_t buttonN;
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
64 } dvdnav_highlight_area_t;
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
65
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
66
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
67 /* the following types are currently unused */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
68
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
69 #if 0
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
70
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
71 /* Domain */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
72 typedef enum {
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
73 DVD_DOMAIN_FirstPlay, /* First Play Domain */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
74 DVD_DOMAIN_VMG, /* Video Manager Domain */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
75 DVD_DOMAIN_VTSMenu, /* Video Title Set Menu Domain */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
76 DVD_DOMAIN_VTSTitle, /* Video Title Set Domain */
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
77 DVD_DOMAIN_Stop /* Stop Domain */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
78 } DVDDomain_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
79
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
80 /* User operation permissions */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
81 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
82 UOP_FLAG_TitleOrTimePlay = 0x00000001,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
83 UOP_FLAG_ChapterSearchOrPlay = 0x00000002,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
84 UOP_FLAG_TitlePlay = 0x00000004,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
85 UOP_FLAG_Stop = 0x00000008,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
86 UOP_FLAG_GoUp = 0x00000010,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
87 UOP_FLAG_TimeOrChapterSearch = 0x00000020,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
88 UOP_FLAG_PrevOrTopPGSearch = 0x00000040,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
89 UOP_FLAG_NextPGSearch = 0x00000080,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
90 UOP_FLAG_ForwardScan = 0x00000100,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
91 UOP_FLAG_BackwardScan = 0x00000200,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
92 UOP_FLAG_TitleMenuCall = 0x00000400,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
93 UOP_FLAG_RootMenuCall = 0x00000800,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
94 UOP_FLAG_SubPicMenuCall = 0x00001000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
95 UOP_FLAG_AudioMenuCall = 0x00002000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
96 UOP_FLAG_AngleMenuCall = 0x00004000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
97 UOP_FLAG_ChapterMenuCall = 0x00008000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
98 UOP_FLAG_Resume = 0x00010000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
99 UOP_FLAG_ButtonSelectOrActivate = 0x00020000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
100 UOP_FLAG_StillOff = 0x00040000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
101 UOP_FLAG_PauseOn = 0x00080000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
102 UOP_FLAG_AudioStreamChange = 0x00100000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
103 UOP_FLAG_SubPicStreamChange = 0x00200000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
104 UOP_FLAG_AngleChange = 0x00400000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
105 UOP_FLAG_KaraokeAudioPresModeChange = 0x00800000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
106 UOP_FLAG_VideoPresModeChange = 0x01000000
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
107 } DVDUOP_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
108
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
109 /* Parental Level */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
110 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
111 DVD_PARENTAL_LEVEL_1 = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
112 DVD_PARENTAL_LEVEL_2 = 2,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
113 DVD_PARENTAL_LEVEL_3 = 3,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
114 DVD_PARENTAL_LEVEL_4 = 4,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
115 DVD_PARENTAL_LEVEL_5 = 5,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
116 DVD_PARENTAL_LEVEL_6 = 6,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
117 DVD_PARENTAL_LEVEL_7 = 7,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
118 DVD_PARENTAL_LEVEL_8 = 8,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
119 DVD_PARENTAL_LEVEL_None = 15
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
120 } DVDParentalLevel_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
121
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
122 /* Language ID (ISO-639 language code) */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
123 typedef uint16_t DVDLangID_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
124
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
125 /* Country ID (ISO-3166 country code) */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
126 typedef uint16_t DVDCountryID_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
127
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
128 /* Register */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
129 typedef uint16_t DVDRegister_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
130 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
131 DVDFalse = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
132 DVDTrue = 1
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
133 } DVDBool_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
134 typedef DVDRegister_t DVDGPRMArray_t[16];
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
135 typedef DVDRegister_t DVDSPRMArray_t[24];
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
136
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
137 /* Navigation */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
138 typedef int DVDStream_t;
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
139 typedef int DVDPTT_t;
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
140 typedef int DVDTitle_t;
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
141
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
142 /* Angle number (1-9 or default?) */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
143 typedef int DVDAngle_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
144
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
145 /* Timecode */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
146 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
147 uint8_t Hours;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
148 uint8_t Minutes;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
149 uint8_t Seconds;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
150 uint8_t Frames;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
151 } DVDTimecode_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
152
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
153 /* Subpicture stream number (0-31,62,63) */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
154 typedef int DVDSubpictureStream_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
155
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
156 /* Audio stream number (0-7, 15(none)) */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
157 typedef int DVDAudioStream_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
158
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
159 /* The audio application mode */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
160 typedef enum {
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
161 DVD_AUDIO_APP_MODE_None = 0,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
162 DVD_AUDIO_APP_MODE_Karaoke = 1,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
163 DVD_AUDIO_APP_MODE_Surround = 2,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
164 DVD_AUDIO_APP_MODE_Other = 3
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
165 } DVDAudioAppMode_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
166
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
167 /* The audio format */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
168 typedef enum {
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
169 DVD_AUDIO_FORMAT_AC3 = 0,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
170 DVD_AUDIO_FORMAT_MPEG1 = 1,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
171 DVD_AUDIO_FORMAT_MPEG1_DRC = 2,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
172 DVD_AUDIO_FORMAT_MPEG2 = 3,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
173 DVD_AUDIO_FORMAT_MPEG2_DRC = 4,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
174 DVD_AUDIO_FORMAT_LPCM = 5,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
175 DVD_AUDIO_FORMAT_DTS = 6,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
176 DVD_AUDIO_FORMAT_SDDS = 7,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
177 DVD_AUDIO_FORMAT_Other = 8
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
178 } DVDAudioFormat_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
179
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
180 /* Audio language extension */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
181 typedef enum {
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
182 DVD_AUDIO_LANG_EXT_NotSpecified = 0,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
183 DVD_AUDIO_LANG_EXT_NormalCaptions = 1,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
184 DVD_AUDIO_LANG_EXT_VisuallyImpaired = 2,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
185 DVD_AUDIO_LANG_EXT_DirectorsComments1 = 3,
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
186 DVD_AUDIO_LANG_EXT_DirectorsComments2 = 4
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
187 } DVDAudioLangExt_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
188
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
189 /* Subpicture language extension */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
190 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
191 DVD_SUBPICTURE_LANG_EXT_NotSpecified = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
192 DVD_SUBPICTURE_LANG_EXT_NormalCaptions = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
193 DVD_SUBPICTURE_LANG_EXT_BigCaptions = 2,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
194 DVD_SUBPICTURE_LANG_EXT_ChildrensCaptions = 3,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
195 DVD_SUBPICTURE_LANG_EXT_NormalCC = 5,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
196 DVD_SUBPICTURE_LANG_EXT_BigCC = 6,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
197 DVD_SUBPICTURE_LANG_EXT_ChildrensCC = 7,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
198 DVD_SUBPICTURE_LANG_EXT_Forced = 9,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
199 DVD_SUBPICTURE_LANG_EXT_NormalDirectorsComments = 13,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
200 DVD_SUBPICTURE_LANG_EXT_BigDirectorsComments = 14,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
201 DVD_SUBPICTURE_LANG_EXT_ChildrensDirectorsComments = 15,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
202 } DVDSubpictureLangExt_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
203
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
204 /* Karaoke Downmix mode */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
205 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
206 DVD_KARAOKE_DOWNMIX_0to0 = 0x0001,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
207 DVD_KARAOKE_DOWNMIX_1to0 = 0x0002,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
208 DVD_KARAOKE_DOWNMIX_2to0 = 0x0004,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
209 DVD_KARAOKE_DOWNMIX_3to0 = 0x0008,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
210 DVD_KARAOKE_DOWNMIX_4to0 = 0x0010,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
211 DVD_KARAOKE_DOWNMIX_Lto0 = 0x0020,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
212 DVD_KARAOKE_DOWNMIX_Rto0 = 0x0040,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
213 DVD_KARAOKE_DOWNMIX_0to1 = 0x0100,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
214 DVD_KARAOKE_DOWNMIX_1to1 = 0x0200,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
215 DVD_KARAOKE_DOWNMIX_2to1 = 0x0400,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
216 DVD_KARAOKE_DOWNMIX_3to1 = 0x0800,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
217 DVD_KARAOKE_DOWNMIX_4to1 = 0x1000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
218 DVD_KARAOKE_DOWNMIX_Lto1 = 0x2000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
219 DVD_KARAOKE_DOWNMIX_Rto1 = 0x4000
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
220 } DVDKaraokeDownmix_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
221 typedef int DVDKaraokeDownmixMask_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
222
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
223 /* Display mode */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
224 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
225 DVD_DISPLAY_MODE_ContentDefault = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
226 DVD_DISPLAY_MODE_16x9 = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
227 DVD_DISPLAY_MODE_4x3PanScan = 2,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
228 DVD_DISPLAY_MODE_4x3Letterboxed = 3
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
229 } DVDDisplayMode_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
230
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
231 /* Audio attributes */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
232 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
233 DVDAudioAppMode_t AppMode;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
234 DVDAudioFormat_t AudioFormat;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
235 DVDLangID_t Language;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
236 DVDAudioLangExt_t LanguageExtension;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
237 DVDBool_t HasMultichannelInfo;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
238 DVDAudioSampleFreq_t SampleFrequency;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
239 DVDAudioSampleQuant_t SampleQuantization;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
240 DVDChannelNumber_t NumberOfChannels;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
241 } DVDAudioAttributes_t;
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
242 typedef int DVDAudioSampleFreq_t;
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
243 typedef int DVDAudioSampleQuant_t;
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
244 typedef int DVDChannelNumber_t;
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
245
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
246 /* Subpicture attributes */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
247 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
248 DVD_SUBPICTURE_TYPE_NotSpecified = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
249 DVD_SUBPICTURE_TYPE_Language = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
250 DVD_SUBPICTURE_TYPE_Other = 2
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
251 } DVDSubpictureType_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
252 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
253 DVD_SUBPICTURE_CODING_RunLength = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
254 DVD_SUBPICTURE_CODING_Extended = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
255 DVD_SUBPICTURE_CODING_Other = 2
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
256 } DVDSubpictureCoding_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
257 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
258 DVDSubpictureType_t Type;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
259 DVDSubpictureCoding_t CodingMode;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
260 DVDLangID_t Language;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
261 DVDSubpictureLangExt_t LanguageExtension;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
262 } DVDSubpictureAttributes_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
263
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
264 /* Video attributes */
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
265 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
266 DVDBool_t PanscanPermitted;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
267 DVDBool_t LetterboxPermitted;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
268 int AspectX;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
269 int AspectY;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
270 int FrameRate;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
271 int FrameHeight;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
272 DVDVideoCompression_t Compression;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
273 DVDBool_t Line21Field1InGop;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
274 DVDBool_t Line21Field2InGop;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
275 int more_to_come;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
276 } DVDVideoAttributes_t;
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
277 typedef int DVDVideoCompression_t;
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
278
165
4e5ebc1491d5 comments reviewed
mroi
parents: 162
diff changeset
279 #endif
22
3c1df0cb3aee Start of rewrite of libdvdnav. Still need to re-implement seeking.
jcdutton
parents: 0
diff changeset
280
0
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
281 #endif /* DVD_H_INCLUDED */