b96213f5cf30574566aa3b4b71e27ab1c9fd05b4
[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     /// Enumeration for media format type
21     /// </summary>
22     public enum MediaFormatType
23     {
24         /// <summary>
25         /// Audio
26         /// </summary>
27         Audio = 0x01000000,
28
29         /// <summary>
30         /// Video
31         /// </summary>
32         Video = 0x02000000,
33
34         /// <summary>
35         /// Container
36         /// </summary>
37         Container = 0x04000000,
38
39         /// <summary>
40         /// Text
41         /// </summary>
42         Text = 0x03000000,
43     }
44
45     /// <summary>
46     /// Enumeration for media format data type
47     /// </summary>
48     internal enum MediaFormatDataType
49     {
50         /// <summary>
51         /// Encoded type
52         /// </summary>
53         Encoded = 0x10000000,
54
55         /// <summary>
56         /// Raw type
57         /// </summary>
58         Raw = 0x20000000,
59     }
60
61     /// <summary>
62     /// Enumeration for audio mime type
63     /// </summary>
64     public enum MediaFormatAudioMimeType
65     {
66         /// <summary>
67         /// L16, Audio
68         /// </summary>
69         //L16 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1010),
70
71         /// <summary>
72         /// ALAW, Audio
73         /// </summary>
74         //ALaw = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1020),
75
76         /// <summary>
77         /// ULAW,  Audio
78         /// </summary>
79         //ULaw = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1030),
80
81         /// <summary>
82         /// AMR, Audio, Alias for AmrNB
83         /// </summary>
84         Amr = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1040),
85
86         /// <summary>
87         /// AMR-NB, Audio
88         /// </summary>
89         AmrNB = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1040),
90
91         /// <summary>
92         /// AMR-WB, Audio
93         /// </summary>
94         AmrWB = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1041),
95
96         /// <summary>
97         /// G729, Audio
98         /// </summary>
99         //G729 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1050),
100
101         /// <summary>
102         /// AAC, Audio, Alias for AacLc
103         /// </summary>
104         Aac = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1060),
105
106         /// <summary>
107         /// AAC-LC (Advanced Audio Coding Low-Complexity profile), Audio
108         /// </summary>
109         AacLC = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1060),
110
111         /// <summary>
112         /// HE-AAC (High-Efficiency Advanced Audio Coding), Audio
113         /// </summary>
114         AacHE = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1061),
115
116         /// <summary>
117         /// HE-AAC-PS (High-Efficiency Advanced Audio Coding with Parametric Stereo), Audio
118         /// </summary>
119         AacHEPS = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1062),
120
121         /// <summary>
122         /// MP3, Audio
123         /// </summary>
124         MP3 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1070),
125
126         /// <summary>
127         /// VORBIS, Audio
128         /// </summary>
129         Vorbis = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1080),
130
131         /// <summary>
132         /// FLAC, Audio
133         /// </summary>
134         Flac = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1090),
135
136         /// <summary>
137         /// Windows Media Audio 1, Audio
138         /// </summary>
139         Wma1 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A0),
140
141         /// <summary>
142         /// Windows Media Audio 2, Audio
143         /// </summary>
144         Wma2 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A1),
145
146         /// <summary>
147         /// Windows Media Audio Professional, Audio
148         /// </summary>
149         WmaPro = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A2),
150
151         /// <summary>
152         /// Windows Media Audio Lossless, Audio
153         /// </summary>
154         WmaLossless = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x10A3),
155
156         /// <summary>
157         /// PCM, Audio, Alias for PcmS16LE
158         /// </summary>
159         Pcm = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1510),
160
161         /// <summary>
162         /// PCM signed 16-bit little-endian, Audio
163         /// </summary>
164         //PcmS16LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1510),
165
166         /// <summary>
167         /// PCM signed 24-bit little-endian, Audio
168         /// </summary>
169         //PcmS24LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1511),
170
171         /// <summary>
172         /// PCM signed 32-bit little-endian, Audio
173         /// </summary>
174         //Pcm32LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1512),
175
176         /// <summary>
177         /// PCM signed 16-bit big-endian, Audio
178         /// </summary>
179         //PcmS16BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1513),
180
181         /// <summary>
182         /// PCM signed 24-bit big-endian, Audio
183         /// </summary>
184         //PcmS24BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1514),
185
186         /// <summary>
187         /// PCM signed 32-bit big-endian, Audio
188         /// </summary>
189         //PcmS32BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1515),
190
191         /// <summary>
192         /// PCM 32-bit floating point little-endian, Audio
193         /// </summary>
194         //PcmF32LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1516),
195
196         /// <summary>
197         /// PCM 32-bit floating point big-endian, Audio
198         /// </summary>
199         //PcmF32BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1517),
200
201         /// <summary>
202         /// PCM A-law, Audio
203         /// </summary>
204         //PcmALaw = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1520),
205
206         /// <summary>
207         /// PCM U-law, Audio
208         /// </summary>
209         //PcmULaw = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1530),
210     }
211
212     /// <summary>
213     /// Enumeration for video mime type
214     /// </summary>
215     public enum MediaFormatVideoMimeType
216     {
217         /// <summary>
218         /// H261
219         /// </summary>
220         H261 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2010),
221
222         /// <summary>
223         /// H263
224         /// </summary>
225         H263 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2020),
226
227         /// <summary>
228         /// H263P
229         /// </summary>
230         H263P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2021),
231
232         /// <summary>
233         /// H263 Baseline Profile
234         /// </summary>
235         //H263BP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2022),
236
237         /// <summary>
238         /// H263 H.320 Coding Efficiency Profile
239         /// </summary>
240         //H263H320Cep = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2023),
241
242         /// <summary>
243         /// H263 Backward-Compatibility Profile
244         /// </summary>
245         //H263Bcp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2024),
246
247         /// <summary>
248         /// H263 Interactive and Streaming Wireless Profile
249         /// </summary>
250         //H263Isw2p = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2025),
251
252         /// <summary>
253         /// H263 Interactive and Streaming Wireless Profile
254         /// </summary>
255         //H263Isw3p = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2026),
256
257         /// <summary>
258         /// H263 Conversation High Compression Profile
259         /// </summary>
260         //H263Chcp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2027),
261
262         /// <summary>
263         /// H263 Conversational Internet Profile
264         /// </summary>
265         //H263CInternetP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2028),
266
267         /// <summary>
268         /// H263 Conversational Interlace Profile
269         /// </summary>
270         //H263CInterlaceP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2029),
271
272         /// <summary>
273         /// H263 High Latency Profile
274         /// </summary>
275         //H263Hlp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x202A),
276
277         /// <summary>
278         /// H264_SP
279         /// </summary>
280         H264SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2030),
281
282         /// <summary>
283         /// H264_MP
284         /// </summary>
285         H264MP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2031),
286
287         /// <summary>
288         /// H264_HP
289         /// </summary>
290         H264HP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2032),
291
292         /// <summary>
293         /// H264 Extended Profile
294         /// </summary>
295         //H264XP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2033),
296
297         /// <summary>
298         /// H264 High10 Profile
299         /// </summary>
300         //H264H10P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2034),
301
302         /// <summary>
303         /// H264 High422 Profile
304         /// </summary>
305         //H264H422P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2035),
306
307         /// <summary>
308         /// H264 High444 Profile
309         /// </summary>
310         //H264H444P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2036),
311
312         /// <summary>
313         /// H264 CAVLC444 Profile
314         /// </summary>
315         //H264C444P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2037),
316
317         /// <summary>
318         /// MJPEG
319         /// </summary>
320         MJpeg = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2040),
321
322         /// <summary>
323         /// MPEG1
324         /// </summary>
325         Mpeg1 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2050),
326
327         /// <summary>
328         /// MPEG2_SP
329         /// </summary>
330         Mpeg2SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2060),
331
332         /// <summary>
333         /// MPEG2_MP
334         /// </summary>
335         Mpeg2MP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2061),
336
337         /// <summary>
338         /// MPEG2_HP
339         /// </summary>
340         Mpeg2HP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2062),
341
342         /// <summary>
343         /// MPEG4_SP
344         /// </summary>
345         Mpeg4SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2070),
346
347         /// <summary>
348         /// MPEG4_ASP
349         /// </summary>
350         Mpeg4Asp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2071),
351
352         /// <summary>
353         /// HEVC
354         /// </summary>
355         //Hevc = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2080),
356
357         /// <summary>
358         /// HEVC Main Profile
359         /// </summary>
360         //HevcMP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2081),
361
362         /// <summary>
363         /// HEVC Main10 Profile
364         /// </summary>
365         //HevcM10P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2082),
366
367         /// <summary>
368         /// VP8
369         /// </summary>
370         //VP8 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2090),
371
372         /// <summary>
373         /// VP9
374         /// </summary>
375         //VP9 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x20A0),
376
377         /// <summary>
378         /// VC1
379         /// </summary>
380         //VC1 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x20B0),
381
382         /// <summary>
383         /// I420
384         /// </summary>
385         I420 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2510),
386
387         /// <summary>
388         /// NV12
389         /// </summary>
390         NV12 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2520),
391
392         /// <summary>
393         /// NV12T
394         /// </summary>
395         NV12T = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2530),
396
397         /// <summary>
398         /// YV12
399         /// </summary>
400         YV12 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2540),
401
402         /// <summary>
403         /// NV21
404         /// </summary>
405         NV21 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2550),
406
407         /// <summary>
408         /// NV16
409         /// </summary>
410         NV16 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2560),
411
412         /// <summary>
413         /// YUYV
414         /// </summary>
415         Yuyv = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2570),
416
417         /// <summary>
418         /// UYVY
419         /// </summary>
420         Uyvy = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2580),
421
422         /// <summary>
423         /// 422P
424         /// </summary>
425         Yuv422P = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2590),
426
427         /// <summary>
428         /// RGB565
429         /// </summary>
430         Rgb565 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25a0),
431
432         /// <summary>
433         /// RGB888
434         /// </summary>
435         Rgb888 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25b0),
436
437         /// <summary>
438         /// RGBA
439         /// </summary>
440         Rgba = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25c0),
441
442         /// <summary>
443         /// ARGB
444         /// </summary>
445         Argb = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25d0),
446
447         /// <summary>
448         /// BGRA
449         /// </summary>
450         Bgra = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x25e0),
451
452         /// <summary>
453         /// HW dependent
454         /// </summary>
455         //NativeVideo = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x7000),
456     }
457
458     /// <summary>
459     /// Enumeration for container mime type
460     /// </summary>
461     public enum MediaFormatContainerMimeType
462     {
463         /// <summary>
464         /// MP4 container, Video
465         /// </summary>
466         MP4 = (MediaFormatType.Container | 0x3010),
467
468         /// <summary>
469         /// AVI container, Video
470         /// </summary>
471         Avi = (MediaFormatType.Container | 0x3020),
472
473         /// <summary>
474         /// MPEG2TS container, Video
475         /// </summary>
476         Mpeg2TS = (MediaFormatType.Container | 0x3030),
477
478         /// <summary>
479         /// MPEG2PS container, Video
480         /// </summary>
481         Mpeg2PS = (MediaFormatType.Container | 0x3040),
482
483         /// <summary>
484         /// MATROSKA container, Video
485         /// </summary>
486         Matroska = (MediaFormatType.Container | 0x3050),
487
488         /// <summary>
489         /// WEBM container, Video
490         /// </summary>
491         Webm = (MediaFormatType.Container | 0x3060),
492
493         /// <summary>
494         /// 3GP container, Video
495         /// </summary>
496         ThreeGP = (MediaFormatType.Container | 0x3070),
497
498         /// <summary>
499         /// WAV container, Audio
500         /// </summary>
501         Wav = (MediaFormatType.Container | 0x4010),
502
503         /// <summary>
504         ///  OGG container, Audio
505         /// </summary>
506         Ogg = (MediaFormatType.Container | 0x4020),
507
508         /// <summary>
509         /// AAC_ADTS container, Audio
510         /// </summary>
511         AacAdts = (MediaFormatType.Container | 0x4030),
512
513         /// <summary>
514         /// AAC_ADIF container, Audio
515         /// </summary>
516         AacAdif = (MediaFormatType.Container | 0x4031),
517     }
518
519     /// <summary>
520     /// Enumeration for text mime type
521     /// </summary>
522     public enum MediaFormatTextMimeType
523     {
524         /// <summary>
525         /// MP4
526         /// </summary>
527         MP4 = (MediaFormatType.Text | MediaFormatDataType.Encoded | 0x8010),
528
529         /// <summary>
530         /// 3GP
531         /// </summary>
532         ThreeGP = (MediaFormatType.Text | MediaFormatDataType.Encoded | 0x8020),
533     }
534
535 }
536