Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / Tizen.Multimedia / MediaTool / MediaFormatMimeType.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 namespace Tizen.Multimedia
18 {
19     /// <summary>
20     /// Specifies the media format types.
21     /// </summary>
22     /// <seealso cref="MediaFormat"/>
23     public enum MediaFormatType
24     {
25         /// <summary>
26         /// Audio media format.
27         /// </summary>
28         Audio = 0x01000000,
29
30         /// <summary>
31         /// Video media format.
32         /// </summary>
33         Video = 0x02000000,
34
35         /// <summary>
36         /// Container media format.
37         /// </summary>
38         Container = 0x04000000,
39
40         /// <summary>
41         /// Text media format.
42         /// </summary>
43         Text = 0x03000000,
44     }
45
46     /// <summary>
47     /// Enumeration for media format data type
48     /// </summary>
49     internal enum MediaFormatDataType
50     {
51         /// <summary>
52         /// Encoded type
53         /// </summary>
54         Encoded = 0x10000000,
55
56         /// <summary>
57         /// Raw type
58         /// </summary>
59         Raw = 0x20000000,
60     }
61
62     /// <summary>
63     /// Specifies the mime types for audio media formats.
64     /// </summary>
65     public enum MediaFormatAudioMimeType
66     {
67         /// <summary>
68         /// AMR, Alias for <see cref="AmrNB"/>.
69         /// </summary>
70         Amr = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1040),
71
72         /// <summary>
73         /// AMR-NB.
74         /// </summary>
75         AmrNB = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1040),
76
77         /// <summary>
78         /// AMR-WB.
79         /// </summary>
80         AmrWB = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1041),
81
82         /// <summary>
83         /// AAC, Alias for <see cref="AacLC"/>.
84         /// </summary>
85         Aac = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1060),
86
87         /// <summary>
88         /// AAC-LC (Advanced Audio Coding Low-Complexity profile).
89         /// </summary>
90         AacLC = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1060),
91
92         /// <summary>
93         /// HE-AAC (High-Efficiency Advanced Audio Coding).
94         /// </summary>
95         AacHE = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1061),
96
97         /// <summary>
98         /// HE-AAC-PS (High-Efficiency Advanced Audio Coding with Parametric Stereo).
99         /// </summary>
100         AacHEPS = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1062),
101
102         /// <summary>
103         /// MP3.
104         /// </summary>
105         MP3 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1070),
106
107         /// <summary>
108         /// VORBIS.
109         /// </summary>
110         Vorbis = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1080),
111
112         /// <summary>
113         /// FLAC.
114         /// </summary>
115         Flac = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1090),
116
117         /// <summary>
118         /// Windows Media Audio 1.
119         /// </summary>
120         Wma1 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A0),
121
122         /// <summary>
123         /// Windows Media Audio 2.
124         /// </summary>
125         Wma2 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A1),
126
127         /// <summary>
128         /// Windows Media Audio Professional.
129         /// </summary>
130         WmaPro = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A2),
131
132         /// <summary>
133         /// Windows Media Audio Lossless.
134         /// </summary>
135         WmaLossless = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A3),
136
137         /// <summary>
138         /// PCM.
139         /// </summary>
140         Pcm = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1510),
141     }
142
143     /// <summary>
144     /// Specifies the mime types for video media formats.
145     /// </summary>
146     public enum MediaFormatVideoMimeType
147     {
148         /// <summary>
149         /// H261.
150         /// </summary>
151         H261 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2010),
152
153         /// <summary>
154         /// H263.
155         /// </summary>
156         H263 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2020),
157
158         /// <summary>
159         /// H263P.
160         /// </summary>
161         H263P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2021),
162
163         /// <summary>
164         /// H264_SP
165         /// </summary>
166         H264SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2030),
167
168         /// <summary>
169         /// H264_MP.
170         /// </summary>
171         H264MP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2031),
172
173         /// <summary>
174         /// H264_HP.
175         /// </summary>
176         H264HP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2032),
177
178         /// <summary>
179         /// MJPEG
180         /// </summary>
181         MJpeg = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2040),
182
183         /// <summary>
184         /// MPEG1.
185         /// </summary>
186         Mpeg1 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2050),
187
188         /// <summary>
189         /// MPEG2_SP.
190         /// </summary>
191         Mpeg2SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2060),
192
193         /// <summary>
194         /// MPEG2_MP.
195         /// </summary>
196         Mpeg2MP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2061),
197
198         /// <summary>
199         /// MPEG2_HP.
200         /// </summary>
201         Mpeg2HP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2062),
202
203         /// <summary>
204         /// MPEG4_SP.
205         /// </summary>
206         Mpeg4SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2070),
207
208         /// <summary>
209         /// MPEG4_ASP.
210         /// </summary>
211         Mpeg4Asp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2071),
212
213         /// <summary>
214         /// I420
215         /// </summary>
216         I420 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2510),
217
218         /// <summary>
219         /// NV12.
220         /// </summary>
221         NV12 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2520),
222
223         /// <summary>
224         /// NV12T.
225         /// </summary>
226         NV12T = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2530),
227
228         /// <summary>
229         /// YV12.
230         /// </summary>
231         YV12 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2540),
232
233         /// <summary>
234         /// NV21.
235         /// </summary>
236         NV21 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2550),
237
238         /// <summary>
239         /// NV16.
240         /// </summary>
241         NV16 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2560),
242
243         /// <summary>
244         /// YUYV.
245         /// </summary>
246         Yuyv = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2570),
247
248         /// <summary>
249         /// UYVY.
250         /// </summary>
251         Uyvy = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2580),
252
253         /// <summary>
254         /// 422P.
255         /// </summary>
256         Yuv422P = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2590),
257
258         /// <summary>
259         /// RGB565.
260         /// </summary>
261         Rgb565 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25a0),
262
263         /// <summary>
264         /// RGB888.
265         /// </summary>
266         Rgb888 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25b0),
267
268         /// <summary>
269         /// RGBA.
270         /// </summary>
271         Rgba = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25c0),
272
273         /// <summary>
274         /// ARGB.
275         /// </summary>
276         Argb = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25d0),
277
278         /// <summary>
279         /// BGRA.
280         /// </summary>
281         Bgra = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25e0),
282
283     }
284
285     /// <summary>
286     /// Specifies the mime types for container media formats.
287     /// </summary>
288     public enum MediaFormatContainerMimeType
289     {
290         /// <summary>
291         /// MP4 container, Video.
292         /// </summary>
293         MP4 = (MediaFormatType.Container | 0x3010),
294
295         /// <summary>
296         /// AVI container, Video.
297         /// </summary>
298         Avi = (MediaFormatType.Container | 0x3020),
299
300         /// <summary>
301         /// MPEG2TS container, Video.
302         /// </summary>
303         Mpeg2TS = (MediaFormatType.Container | 0x3030),
304
305         /// <summary>
306         /// MPEG2PS container, Video.
307         /// </summary>
308         Mpeg2PS = (MediaFormatType.Container | 0x3040),
309
310         /// <summary>
311         /// MATROSKA container, Video.
312         /// </summary>
313         Matroska = (MediaFormatType.Container | 0x3050),
314
315         /// <summary>
316         /// WEBM container, Video.
317         /// </summary>
318         Webm = (MediaFormatType.Container | 0x3060),
319
320         /// <summary>
321         /// 3GP container, Video.
322         /// </summary>
323         ThreeGP = (MediaFormatType.Container | 0x3070),
324
325         /// <summary>
326         /// WAV container, Audio.
327         /// </summary>
328         Wav = (MediaFormatType.Container | 0x4010),
329
330         /// <summary>
331         ///  OGG container, Audio
332         /// </summary>
333         Ogg = (MediaFormatType.Container | 0x4020),
334
335         /// <summary>
336         /// AAC_ADTS container, Audio
337         /// </summary>
338         AacAdts = (MediaFormatType.Container | 0x4030),
339
340         /// <summary>
341         /// AAC_ADIF container, Audio
342         /// </summary>
343         AacAdif = (MediaFormatType.Container | 0x4031),
344     }
345
346     /// <summary>
347     /// Enumeration for text mime type
348     /// </summary>
349     public enum MediaFormatTextMimeType
350     {
351         /// <summary>
352         /// MP4.
353         /// </summary>
354         MP4 = (MediaFormatType.Text | MediaFormatDataType.Encoded | 0x8010),
355
356         /// <summary>
357         /// 3GP.
358         /// </summary>
359         ThreeGP = (MediaFormatType.Text | MediaFormatDataType.Encoded | 0x8020),
360     }
361
362 }
363