5 using namespace SubFormats;
23 return "Advanced Audio Coding Main Profile";
25 return "Advanced Audio Coding Low Complexity Profile";
27 return "Advanced Audio Coding Scalable Sampling Rate Profile";
29 return "Advanced Audio Coding Main Profile";
31 return "Advanced Audio Coding Low Complexity Profile";
33 return "Advanced Audio Coding Scaleable Sampling Rate Profile";
35 return "Advanced Audio Coding Long Term Predicition";
37 return "Advanced Audio Coding Error Resilient Low Complexity Profile";
39 return "Advanced Audio Coding Error Resilient Scalable Sampling Rate Profile";
41 return "Advanced Audio Coding Error Resilient Long Term Predicition";
43 return "Advanced Audio Coding Error Resilient Low Delay";
45 return "Advanced Audio Coding Error Resilient Enhanced Low Delay";
47 return "Advanced Audio Coding";
50 return "Dolby Digital";
58 return "Apple Lossless Audio Codec";
62 return "Adaptive Multi-Rate audio codec";
66 return "Advanced Video Coding CAVLC 4:4:4 Intra Profile";
68 return "Advanced Video Coding Basline Profile";
70 return "Advanced Video Coding Main Profile";
72 return "Advanced Video Coding Scalable Basline Profile";
74 return "Advanced Video Coding Scalable High Profile";
76 return "Advanced Video Coding Extended Profile";
78 return "Advanced Video Coding High Profile";
80 return "Advanced Video Coding High 10 Profile";
82 return "Advanced Video Coding Multiview Profile";
84 return "Advanced Video Coding High 4:2:2 Profile";
86 return "Advanced Video Coding Stereo High Profile";
88 return "Advanced Video Coding Multiview Depth High Profile";
90 return "Advanced Video Coding High 4:4:4 Profile";
92 return "Advanced Video Coding High 4:4:4 Predictive Profile";
94 return "Advanced Video Coding";
96 case GeneralMediaFormat::Av1:
97 return "AOMedia Video 1";
98 case GeneralMediaFormat::Bitmap:
99 return "Windows Bitmap";
100 case GeneralMediaFormat::Daala:
107 return "DTS Lossless";
109 return "DTS Express";
113 case GeneralMediaFormat::DtsHd:
116 return "DTS-HD High Resolution";
118 return "DTS-HD Master Audio";
120 return "DTS-HD Express";
125 return "Dolby Digital Plus";
129 return "Free Lossless Audio Codec";
131 return "Font Data Stream";
135 return "3GPP2 Compact Multimedia Format (CMF)";
136 case GeneralMediaFormat::Hevc:
137 return "High Efficiency Video Coding";
139 return "IMAADPCM ACM";
143 return "Bitmap subtitle";
145 return "Image subtitle";
148 return "Interaction Stream";
151 case GeneralMediaFormat::OggKate:
152 return "Karaoke And Text Encapsulation";
155 case GeneralMediaFormat::MicrosoftAudioCodecManager:
156 return "Microsoft Audio Codec Manager";
157 case GeneralMediaFormat::MicrosoftMpeg4:
160 return "Microsoft MPEG-4 version 1";
162 return "Microsoft MPEG-4 version 2";
164 return "Microsoft MPEG-4 version 3";
166 return "Microsoft MPEG-4";
168 case GeneralMediaFormat::MicrosoftVideoCodecManager:
169 return "Microsoft Video Codec Manager";
170 case GeneralMediaFormat::DolbyMlp:
171 return "Dolby TrueHD";
175 return "MPEG-1 Layer 1";
177 return "MPEG-1 Layer 2";
179 return "MPEG-1 Layer 3";
181 return "MPEG-1 Audio";
184 return "MPEG-1 Video";
188 return "MPEG-2 Layer 1";
190 return "MPEG-2 Layer 2";
192 return "MPEG-2 Layer 3";
194 return "MPEG-2 Audio";
196 case GeneralMediaFormat::Mpeg2Video:
199 return "MPEG-2 Video Simple Profile";
201 return "MPEG-2 Video Main Profile";
203 return "MPEG-2 Video SNR Profile";
205 return "MPEG-2 Video Spatial Profile";
207 return "MPEG-2 Video High Profile";
209 return "MPEG-2 Video 422 Profile";
211 return "MPEG-2 Video";
216 return "MPEG-4 Simple Profile L1";
218 return "MPEG-4 Simple Profile L2";
220 return "MPEG-4 Simple Profile L2";
222 return "MPEG-4 Simple Profile";
224 return "MPEG-4 Simple Scalable Profile";
226 return "MPEG-4 Simple Scalable Profile L1";
228 return "MPEG-4 Simple Scalable Profile L2";
230 return "MPEG-4 Core Profile L1";
232 return "MPEG-4 Core Profile L2";
234 return "MPEG-4 Main Profile L2";
236 return "MPEG-4 Main Profile L3";
238 return "MPEG-4 Main Profile L4";
240 return "MPEG-4 N-Bit Profile L2";
242 return "MPEG-4 Scalable Texture Profile L1";
244 return "MPEG-4 Simple Face Animation Profile L1";
246 return "MPEG-4 Simple Face Animation Profile L2";
248 return "MPEG-4 Simple FBA Profile L1";
250 return "MPEG-4 Simple FBA Profile L2";
252 return "MPEG-4 Basic Animated Texture Profile L1";
254 return "MPEG-4 Basic Animated Texture Profile L2";
256 return "MPEG-4 Advanced Audio Coding Profile";
258 return "MPEG-4 Hybrid Profile L1";
260 return "MPEG-4 Hybrid Profile L2";
262 return "MPEG-4 Basic Animated Texture Profile L1";
264 return "MPEG-4 Basic Animated Texture Profile L2";
266 return "MPEG-4 Basic Animated Texture Profile L3";
268 return "MPEG-4 Basic Animated Texture Profile L4";
270 return "MPEG-4 Core Scalable Profile L1";
272 return "MPEG-4 Core Scalable Profile L2";
274 return "MPEG-4 Core Scalable Profile L3";
276 return "MPEG-4 Advanced Coding Efficiency Profile L1";
278 return "MPEG-4 Advanced Coding Efficiency Profile L2";
280 return "MPEG-4 Advanced Coding Efficiency Profile L3";
282 return "MPEG-4 Advanced Coding Efficiency Profile L4";
284 return "MPEG-4 Advanced Core Profile L1";
286 return "MPEG-4 Advanced Core Profile L2";
288 return "MPEG-4 Advanced Scalable Texture L1";
290 return "MPEG-4 Advanced Scalable Texture L2";
292 return "MPEG-4 Simple Studio Profile L1";
294 return "MPEG-4 Simple Studio Profile L2";
296 return "MPEG-4 Simple Studio Profile L3";
298 return "MPEG-4 Simple Studio Profile L4";
300 return "MPEG-4 Core Studio Profile L1";
302 return "MPEG-4 Core Studio Profile L2";
304 return "MPEG-4 Core Studio Profile L3";
306 return "MPEG-4 Core Studio Profile L4";
308 return "MPEG-4 Advanced Simple Profile";
310 return "MPEG-4 Advanced Simple Profile L1";
312 return "MPEG-4 Advanced Simple Profile L2";
314 return "MPEG-4 Advanced Simple Profile L3";
316 return "MPEG-4 Advanced Simple Profile L4";
318 return "MPEG-4 Advanced Simple Profile L5";
320 return "MPEG-4 Advanced Simple Profile L3b";
322 return "MPEG-4 Fine Granularity Scalable Profile";
324 return "MPEG-4 Fine Granularity Scalable Profile L1";
326 return "MPEG-4 Fine Granularity Scalable Profile L2";
328 return "MPEG-4 Fine Granularity Scalable Profile L3";
330 return "MPEG-4 Fine Granularity Scalable Profile L4";
332 return "MPEG-4 Fine Granularity Scalable Profile L5";
334 return "MPEG-4 Visual";
337 return "MPEG-4 Timed Text";
338 case GeneralMediaFormat::Mpc:
339 return "Musepack SV8";
340 case GeneralMediaFormat::Pcm:
343 return "Pulse Code Modulation (integer, big endian)";
345 return "Pulse Code Modulation (integer, little endian)";
347 return "Pulse Code Modulation (float, IEEE)";
349 return "Pulse Code Modulation";
352 return "Portable Network Graphics";
353 case GeneralMediaFormat::ProRes:
355 case GeneralMediaFormat::Qcelp:
357 case GeneralMediaFormat::QuicktimeAudio:
358 return "Quicktime Audio";
359 case GeneralMediaFormat::QuicktimeVideo:
360 return "Quicktime Video";
361 case GeneralMediaFormat::RealAudio:
363 case GeneralMediaFormat::RealVideo:
370 return "Streaming Text Stream";
372 return "Synthesized Texture Stream";
373 case GeneralMediaFormat::Systems:
383 return "plain UTF-8 subtitle";
385 return "SubStation Alpha";
387 return "Advanced SubStation Alpha";
389 return "Universal Subtitle Format";
391 return "Web Video Text Tracks Format";
393 return "Text subtitle";
395 case GeneralMediaFormat::Theora:
398 return "Tagged Image File Format";
399 case GeneralMediaFormat::TimedText:
401 case GeneralMediaFormat::Tta:
402 return "The True Audio";
403 case GeneralMediaFormat::UncompressedVideoFrames:
404 return "uncompressed video frames";
406 return "Windows Media Video";
407 case GeneralMediaFormat::VobBtn:
408 return "VobBtn Buttons";
409 case GeneralMediaFormat::VobSub:
411 case GeneralMediaFormat::Vorbis:
420 return "Windows Media Audio";
424 return "Windows Media Video v1/v7";
426 return "Windows Media Video v2/v8";
428 return "Windows Media Video";
430 case GeneralMediaFormat::DvbSub:
431 return "DVB subtitles";
432 case GeneralMediaFormat::Speex:
435 return "Monkey's Audio";
452 return "MPEG-2 AAC Main";
454 return "MPEG-2 AAC-LC";
456 return "MPEG-2 AAC-SSR";
458 return "MPEG-4 AAC Main";
460 return "MPEG-4 AAC-LC";
462 return "MPEG-4 AAC-SSR";
464 return "MPEG-4 AAC-LTP";
466 return "MPEG-4 ER AAC-LC";
468 return "MPEG-4 ER AAC-LC";
470 return "MPEG-4 ER AAC-LTP";
472 return "MPEG-4 ER AAC-LD";
474 return "MPEG-4 ER AAC-ELD";
495 return "H.264 CAVLC 4:4:4 Intra";
497 return "H.264 Basline";
501 return "H.264 Scalable Basline";
503 return "H.264 Scalable High";
505 return "H.264 Extended";
509 return "H.264 High 10";
511 return "H.264 Multiview";
513 return "H.264 High 4:2:2";
515 return "H.264 Stereo High";
517 return "H.264 Multiview Depth High";
519 return "H.264 High 4:4:4";
521 return "H.264 High 4:4:4 Predictive";
525 case GeneralMediaFormat::Av1:
527 case GeneralMediaFormat::Bitmap:
529 case GeneralMediaFormat::Daala:
536 return "DTS Lossless";
542 case GeneralMediaFormat::DtsHd:
545 return "DTS-HD High Resolution";
547 return "DTS-HD Master Audio";
549 return "DTS-HD Express";
565 case GeneralMediaFormat::Hevc:
568 return "IMAADPCM ACM";
572 return "BMP subtitle";
574 return "Image subtitle";
577 return "Interaction Stream";
580 case GeneralMediaFormat::OggKate:
584 case GeneralMediaFormat::MicrosoftAudioCodecManager:
586 case GeneralMediaFormat::MicrosoftMpeg4:
589 return "MS MPEG-4 v1";
591 return "MS MPEG-4 v2";
593 return "MS MPEG-4 v3";
597 case GeneralMediaFormat::MicrosoftVideoCodecManager:
599 case GeneralMediaFormat::DolbyMlp:
600 return "Dolby TrueHD";
610 return "MPEG-1 Audio";
623 return "MPEG-2 Audio";
625 case GeneralMediaFormat::Mpeg2Video:
630 return "MPEG-2 Main";
634 return "MPEG-2 Spatial";
636 return "MPEG-2 High";
640 return "MPEG-2 Video";
660 return "MPEG-4 Visual";
662 case GeneralMediaFormat::Mpc:
664 case GeneralMediaFormat::Pcm:
667 return "PCM (int, BE)";
669 return "PCM (int, LE)";
677 case GeneralMediaFormat::ProRes:
679 case GeneralMediaFormat::Qcelp:
681 case GeneralMediaFormat::QuicktimeAudio:
682 return "Quicktime Audio";
683 case GeneralMediaFormat::QuicktimeVideo:
684 return "Quicktime Video";
685 case GeneralMediaFormat::RealAudio:
687 case GeneralMediaFormat::RealVideo:
694 return "Streaming Text Stream";
696 return "Synthesized Texture Stream";
697 case GeneralMediaFormat::Systems:
719 case GeneralMediaFormat::Theora:
723 case GeneralMediaFormat::TimedText:
725 case GeneralMediaFormat::Tta:
727 case GeneralMediaFormat::UncompressedVideoFrames:
728 return "uncompressed video frames";
731 case GeneralMediaFormat::VobBtn:
733 case GeneralMediaFormat::VobSub:
735 case GeneralMediaFormat::Vorbis:
747 case GeneralMediaFormat::DvbSub:
749 case GeneralMediaFormat::Speex:
773 using namespace ExtensionFormats;
813 return "H.264-CAVLC";
815 return "H.264-Basline";
819 return "H.264-Scalable-Basline";
821 return "H.264-Scalable-High";
823 return "H.264-Extended";
827 return "H.264-High-10";
829 return "H.264-Multiview";
831 return "H.264-High-4:2:2";
833 return "H.264-Stereo-High";
835 return "H.264-Multiview-Depth-High";
837 return "H.264-High-4:4:4";
839 return "H.264-High-4:4:4-Predictive";
843 case GeneralMediaFormat::Av1:
845 case GeneralMediaFormat::Bitmap:
847 case GeneralMediaFormat::Daala:
854 return "DTS-Lossless";
860 case GeneralMediaFormat::DtsHd:
874 case GeneralMediaFormat::Hevc:
877 return "IMAADPCM-ACM";
882 case GeneralMediaFormat::OggKate:
886 case GeneralMediaFormat::MicrosoftAudioCodecManager:
888 case GeneralMediaFormat::MicrosoftMpeg4:
890 case GeneralMediaFormat::MicrosoftVideoCodecManager:
892 case GeneralMediaFormat::DolbyMlp:
916 case GeneralMediaFormat::Mpeg2Video:
921 return "MPEG-2-Main";
925 return "MPEG-2-Spatial";
927 return "MPEG-2-High";
951 return "MPEG-4-Visual";
953 case GeneralMediaFormat::Mpc:
955 case GeneralMediaFormat::Pcm:
959 case GeneralMediaFormat::ProRes:
961 case GeneralMediaFormat::Qcelp:
963 case GeneralMediaFormat::QuicktimeAudio:
965 case GeneralMediaFormat::QuicktimeVideo:
967 case GeneralMediaFormat::RealAudio:
969 case GeneralMediaFormat::RealVideo:
975 case GeneralMediaFormat::Systems:
992 case GeneralMediaFormat::Theora:
996 case GeneralMediaFormat::TimedText:
998 case GeneralMediaFormat::Tta:
1000 case GeneralMediaFormat::UncompressedVideoFrames:
1004 case GeneralMediaFormat::VobBtn:
1006 case GeneralMediaFormat::VobSub:
1008 case GeneralMediaFormat::Vorbis:
1020 case GeneralMediaFormat::DvbSub:
1022 case GeneralMediaFormat::Speex:
1039 using namespace ExtensionFormats;
1041 switch (extension) {
1043 return "Spectral Band Replication / HE-AAC";
1045 return "Parametric Stereo / HE-AAC v2";
1047 return "Spectral Band Replication and Parametric Stereo / HE-AAC v2";
1061 switch (mediaType) {
1062 case MediaType::Unknown:
1068 case MediaType::Text: