annotate dvd_types.h @ 0:3ddf0eaece51 src

Initial revision
author richwareham
date Tue, 12 Mar 2002 19:45:53 +0000
parents
children 3c1df0cb3aee
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
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
25 #ifndef DVD_H_INCLUDED
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
26 #define DVD_H_INCLUDED
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
27
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
28 #include <inttypes.h>
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
29
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
30 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
31 * DVD Domain
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
32 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
33 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
34 DVD_DOMAIN_FirstPlay, /**< First Play Domain */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
35 DVD_DOMAIN_VMG, /**< Video Manager Domain */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
36 DVD_DOMAIN_VTSMenu, /**< Video Title Set Menu Domain */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
37 DVD_DOMAIN_VTSTitle, /**< Video Title Set Domain */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
38 DVD_DOMAIN_Stop /**< Stop Domain */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
39 } DVDDomain_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
40
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
41 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
42 * DVD Menu
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
43 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
44 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
45 DVD_MENU_Title = 2, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
46 DVD_MENU_Root = 3, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
47 DVD_MENU_Subpicture = 4, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
48 DVD_MENU_Audio = 5, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
49 DVD_MENU_Angle = 6, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
50 DVD_MENU_Part = 7 /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
51 } DVDMenuID_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
52
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
53 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
54 * User operations
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
55 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
56 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
57 UOP_FLAG_TitleOrTimePlay = 0x00000001,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
58 UOP_FLAG_ChapterSearchOrPlay = 0x00000002,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
59 UOP_FLAG_TitlePlay = 0x00000004,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
60 UOP_FLAG_Stop = 0x00000008,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
61 UOP_FLAG_GoUp = 0x00000010,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
62 UOP_FLAG_TimeOrChapterSearch = 0x00000020,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
63 UOP_FLAG_PrevOrTopPGSearch = 0x00000040,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
64 UOP_FLAG_NextPGSearch = 0x00000080,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
65 UOP_FLAG_ForwardScan = 0x00000100,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
66 UOP_FLAG_BackwardScan = 0x00000200,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
67 UOP_FLAG_TitleMenuCall = 0x00000400,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
68 UOP_FLAG_RootMenuCall = 0x00000800,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
69 UOP_FLAG_SubPicMenuCall = 0x00001000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
70 UOP_FLAG_AudioMenuCall = 0x00002000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
71 UOP_FLAG_AngleMenuCall = 0x00004000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
72 UOP_FLAG_ChapterMenuCall = 0x00008000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
73 UOP_FLAG_Resume = 0x00010000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
74 UOP_FLAG_ButtonSelectOrActivate = 0x00020000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
75 UOP_FLAG_StillOff = 0x00040000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
76 UOP_FLAG_PauseOn = 0x00080000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
77 UOP_FLAG_AudioStreamChange = 0x00100000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
78 UOP_FLAG_SubPicStreamChange = 0x00200000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
79 UOP_FLAG_AngleChange = 0x00400000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
80 UOP_FLAG_KaraokeAudioPresModeChange = 0x00800000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
81 UOP_FLAG_VideoPresModeChange = 0x01000000
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
82 } DVDUOP_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
83
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
84
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
85 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
86 * Parental Level
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
87 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
88 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
89 DVD_PARENTAL_LEVEL_1 = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
90 DVD_PARENTAL_LEVEL_2 = 2,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
91 DVD_PARENTAL_LEVEL_3 = 3,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
92 DVD_PARENTAL_LEVEL_4 = 4,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
93 DVD_PARENTAL_LEVEL_5 = 5,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
94 DVD_PARENTAL_LEVEL_6 = 6,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
95 DVD_PARENTAL_LEVEL_7 = 7,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
96 DVD_PARENTAL_LEVEL_8 = 8,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
97 DVD_PARENTAL_LEVEL_None = 15
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
98 } DVDParentalLevel_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
99
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
100 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
101 * Language ID (ISO-639 language code)
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
102 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
103 typedef uint16_t DVDLangID_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
104
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
105 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
106 * Country ID (ISO-3166 country code)
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
107 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
108 typedef uint16_t DVDCountryID_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
109
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
110 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
111 * Register
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
112 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
113 typedef uint16_t DVDRegister_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
114
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
115 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
116 DVDFalse = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
117 DVDTrue = 1
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
118 } DVDBool_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
119
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
120 typedef DVDRegister_t DVDGPRMArray_t[16];
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
121 typedef DVDRegister_t DVDSPRMArray_t[24];
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
122
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
123 typedef int DVDStream_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
124
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
125 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
126 * Angle number (1-9 or default?)
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
127 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
128 typedef int DVDAngle_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
129
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
130 typedef int DVDPTT_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
131 typedef int DVDTitle_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
132 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
133 uint8_t Hours;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
134 uint8_t Minutes;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
135 uint8_t Seconds;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
136 uint8_t Frames;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
137 } DVDTimecode_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
138
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
139 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
140 * Subpicture stream number (0-31,62,63)
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
141 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
142 typedef int DVDSubpictureStream_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
143
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
144 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
145 * Audio stream number (0-7, 15(none))
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
146 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
147 typedef int DVDAudioStream_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
148
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
149
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
150 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
151 * The audio application mode
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
152 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
153 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
154 DVD_AUDIO_APP_MODE_None = 0, /**< app mode none */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
155 DVD_AUDIO_APP_MODE_Karaoke = 1, /**< app mode karaoke */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
156 DVD_AUDIO_APP_MODE_Surround = 2, /**< app mode surround */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
157 DVD_AUDIO_APP_MODE_Other = 3 /**< app mode other */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
158 } DVDAudioAppMode_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
159
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
160 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
161 * The audio format
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
162 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
163 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
164 DVD_AUDIO_FORMAT_AC3 = 0, /**< Dolby AC-3 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
165 DVD_AUDIO_FORMAT_MPEG1 = 1, /**< MPEG-1 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
166 DVD_AUDIO_FORMAT_MPEG1_DRC = 2, /**< MPEG-1 with dynamic range control */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
167 DVD_AUDIO_FORMAT_MPEG2 = 3, /**< MPEG-2 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
168 DVD_AUDIO_FORMAT_MPEG2_DRC = 4, /**< MPEG-2 with dynamic range control */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
169 DVD_AUDIO_FORMAT_LPCM = 5, /**< Linear Pulse Code Modulation */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
170 DVD_AUDIO_FORMAT_DTS = 6, /**< Digital Theater Systems */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
171 DVD_AUDIO_FORMAT_SDDS = 7, /**< Sony Dynamic Digital Sound */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
172 DVD_AUDIO_FORMAT_Other = 8 /**< Other format*/
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
173 } DVDAudioFormat_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
174
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
175 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
176 * Audio language extension
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
177 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
178 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
179 DVD_AUDIO_LANG_EXT_NotSpecified = 0, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
180 DVD_AUDIO_LANG_EXT_NormalCaptions = 1, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
181 DVD_AUDIO_LANG_EXT_VisuallyImpaired = 2, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
182 DVD_AUDIO_LANG_EXT_DirectorsComments1 = 3, /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
183 DVD_AUDIO_LANG_EXT_DirectorsComments2 = 4 /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
184 } DVDAudioLangExt_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
185
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
186 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
187 * Subpicture language extension
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
188 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
189 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
190 DVD_SUBPICTURE_LANG_EXT_NotSpecified = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
191 DVD_SUBPICTURE_LANG_EXT_NormalCaptions = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
192 DVD_SUBPICTURE_LANG_EXT_BigCaptions = 2,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
193 DVD_SUBPICTURE_LANG_EXT_ChildrensCaptions = 3,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
194 DVD_SUBPICTURE_LANG_EXT_NormalCC = 5,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
195 DVD_SUBPICTURE_LANG_EXT_BigCC = 6,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
196 DVD_SUBPICTURE_LANG_EXT_ChildrensCC = 7,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
197 DVD_SUBPICTURE_LANG_EXT_Forced = 9,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
198 DVD_SUBPICTURE_LANG_EXT_NormalDirectorsComments = 13,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
199 DVD_SUBPICTURE_LANG_EXT_BigDirectorsComments = 14,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
200 DVD_SUBPICTURE_LANG_EXT_ChildrensDirectorsComments = 15,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
201 } DVDSubpictureLangExt_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
202
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
203 /**
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
204 * Karaoke Downmix mode
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
205 */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
206 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
207 DVD_KARAOKE_DOWNMIX_0to0 = 0x0001,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
208 DVD_KARAOKE_DOWNMIX_1to0 = 0x0002,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
209 DVD_KARAOKE_DOWNMIX_2to0 = 0x0004,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
210 DVD_KARAOKE_DOWNMIX_3to0 = 0x0008,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
211 DVD_KARAOKE_DOWNMIX_4to0 = 0x0010,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
212 DVD_KARAOKE_DOWNMIX_Lto0 = 0x0020,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
213 DVD_KARAOKE_DOWNMIX_Rto0 = 0x0040,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
214 DVD_KARAOKE_DOWNMIX_0to1 = 0x0100,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
215 DVD_KARAOKE_DOWNMIX_1to1 = 0x0200,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
216 DVD_KARAOKE_DOWNMIX_2to1 = 0x0400,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
217 DVD_KARAOKE_DOWNMIX_3to1 = 0x0800,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
218 DVD_KARAOKE_DOWNMIX_4to1 = 0x1000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
219 DVD_KARAOKE_DOWNMIX_Lto1 = 0x2000,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
220 DVD_KARAOKE_DOWNMIX_Rto1 = 0x4000
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
221 } DVDKaraokeDownmix_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
222
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
223 typedef int DVDKaraokeDownmixMask_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
224
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
225 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
226 DVD_DISPLAY_MODE_ContentDefault = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
227 DVD_DISPLAY_MODE_16x9 = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
228 DVD_DISPLAY_MODE_4x3PanScan = 2,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
229 DVD_DISPLAY_MODE_4x3Letterboxed = 3
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
230 } DVDDisplayMode_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
231
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
232 typedef int DVDAudioSampleFreq_t; /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
233 typedef int DVDAudioSampleQuant_t; /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
234 typedef int DVDChannelNumber_t; /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
235
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
236
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
237 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
238 DVDAudioAppMode_t AppMode;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
239 DVDAudioFormat_t AudioFormat;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
240 DVDLangID_t Language;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
241 DVDAudioLangExt_t LanguageExtension;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
242 DVDBool_t HasMultichannelInfo;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
243 DVDAudioSampleFreq_t SampleFrequency;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
244 DVDAudioSampleQuant_t SampleQuantization;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
245 DVDChannelNumber_t NumberOfChannels;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
246 } DVDAudioAttributes_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
247
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
248 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
249 DVD_SUBPICTURE_TYPE_NotSpecified = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
250 DVD_SUBPICTURE_TYPE_Language = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
251 DVD_SUBPICTURE_TYPE_Other = 2
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
252 } DVDSubpictureType_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
253
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
254 typedef enum {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
255 DVD_SUBPICTURE_CODING_RunLength = 0,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
256 DVD_SUBPICTURE_CODING_Extended = 1,
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
257 DVD_SUBPICTURE_CODING_Other = 2
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
258 } DVDSubpictureCoding_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
259
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
260 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
261 DVDSubpictureType_t Type;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
262 DVDSubpictureCoding_t CodingMode;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
263 DVDLangID_t Language;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
264 DVDSubpictureLangExt_t LanguageExtension;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
265 } DVDSubpictureAttributes_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
266
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
267 typedef int DVDVideoCompression_t; /**< TBD */
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
268
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
269 typedef struct {
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
270 DVDBool_t PanscanPermitted;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
271 DVDBool_t LetterboxPermitted;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
272 int AspectX;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
273 int AspectY;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
274 int FrameRate;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
275 int FrameHeight;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
276 DVDVideoCompression_t Compression;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
277 DVDBool_t Line21Field1InGop;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
278 DVDBool_t Line21Field2InGop;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
279 int more_to_come;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
280 } DVDVideoAttributes_t;
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
281
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
282
3ddf0eaece51 Initial revision
richwareham
parents:
diff changeset
283 #endif /* DVD_H_INCLUDED */