16ac391b3SStephan Aßmus /* 26ac391b3SStephan Aßmus * Copyright 2009 Stephan Aßmus <superstippi@gmx.de> 36ac391b3SStephan Aßmus * All rights reserved. Distributed under the terms of the MIT license. 46ac391b3SStephan Aßmus */ 56ac391b3SStephan Aßmus 66ac391b3SStephan Aßmus 76ac391b3SStephan Aßmus #include "MuxerTable.h" 86ac391b3SStephan Aßmus 96ac391b3SStephan Aßmus 106ac391b3SStephan Aßmus const media_file_format gMuxerTable[] = { 116ac391b3SStephan Aßmus { 126ac391b3SStephan Aßmus media_file_format::B_WRITABLE 136ac391b3SStephan Aßmus | media_file_format::B_KNOWS_RAW_VIDEO 146ac391b3SStephan Aßmus | media_file_format::B_KNOWS_RAW_AUDIO 156ac391b3SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_VIDEO 166ac391b3SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_AUDIO, 176ac391b3SStephan Aßmus { 0 }, 186ac391b3SStephan Aßmus B_AVI_FORMAT_FAMILY, 196ac391b3SStephan Aßmus 100, 206ac391b3SStephan Aßmus { 0 }, 216ac391b3SStephan Aßmus "video/x-msvideo", 226ac391b3SStephan Aßmus "AVI (Audio Video Interleaved)", 234384acf6SStephan Aßmus "avi", 246ac391b3SStephan Aßmus "avi", 256ac391b3SStephan Aßmus { 0 } 266ac391b3SStephan Aßmus }, 2754897d5cSStephan Aßmus { 2854897d5cSStephan Aßmus media_file_format::B_WRITABLE 29ead61989SStephan Aßmus | media_file_format::B_KNOWS_RAW_VIDEO 30ead61989SStephan Aßmus | media_file_format::B_KNOWS_RAW_AUDIO 31ead61989SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_VIDEO 32ead61989SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_AUDIO, 33ead61989SStephan Aßmus { 0 }, 34ead61989SStephan Aßmus B_AVI_FORMAT_FAMILY, 35ead61989SStephan Aßmus 100, 36ead61989SStephan Aßmus { 0 }, 37ead61989SStephan Aßmus "video/x-matroska", 38ead61989SStephan Aßmus "Matroska file format", 39ead61989SStephan Aßmus "mkv", 40ead61989SStephan Aßmus "mkv", 41ead61989SStephan Aßmus { 0 } 42ead61989SStephan Aßmus }, 43ead61989SStephan Aßmus { 44ead61989SStephan Aßmus media_file_format::B_WRITABLE 4554897d5cSStephan Aßmus | media_file_format::B_KNOWS_ENCODED_VIDEO 4654897d5cSStephan Aßmus | media_file_format::B_KNOWS_ENCODED_AUDIO, 4754897d5cSStephan Aßmus { 0 }, 4854897d5cSStephan Aßmus B_MPEG_FORMAT_FAMILY, 4954897d5cSStephan Aßmus 100, 5054897d5cSStephan Aßmus { 0 }, 5154897d5cSStephan Aßmus "video/mpeg", 5254897d5cSStephan Aßmus "MPEG (Motion Picture Experts Group)", 5354897d5cSStephan Aßmus "mpg", 5454897d5cSStephan Aßmus "mpg", 5554897d5cSStephan Aßmus { 0 } 5654897d5cSStephan Aßmus }, 576780c24dSStephan Aßmus // TODO: This one rejects unknown codecs. We probably need to define 586780c24dSStephan Aßmus // a media_format_family for it so that Encoders can announce their support 596780c24dSStephan Aßmus // for it specifically. 60*73e5249cSStephan Aßmus { 61*73e5249cSStephan Aßmus media_file_format::B_WRITABLE 62*73e5249cSStephan Aßmus | media_file_format::B_KNOWS_ENCODED_VIDEO 63*73e5249cSStephan Aßmus | media_file_format::B_KNOWS_ENCODED_AUDIO, 64*73e5249cSStephan Aßmus { 0 }, 65*73e5249cSStephan Aßmus B_MISC_FORMAT_FAMILY, 66*73e5249cSStephan Aßmus 100, 67*73e5249cSStephan Aßmus { 0 }, 68*73e5249cSStephan Aßmus "application/ogg", 69*73e5249cSStephan Aßmus "Ogg (Xiph.Org Foundation)", 70*73e5249cSStephan Aßmus "ogg", 71*73e5249cSStephan Aßmus "ogg", 72*73e5249cSStephan Aßmus { 0 } 73*73e5249cSStephan Aßmus }, 746d15d130SStephan Aßmus { 756d15d130SStephan Aßmus media_file_format::B_WRITABLE 766d15d130SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_AUDIO, 776d15d130SStephan Aßmus { 0 }, 786d15d130SStephan Aßmus B_WAV_FORMAT_FAMILY, 796d15d130SStephan Aßmus 100, 806d15d130SStephan Aßmus { 0 }, 816d15d130SStephan Aßmus "audio/x-wav", 826d15d130SStephan Aßmus "WAV Format", 836d15d130SStephan Aßmus "wav", 846d15d130SStephan Aßmus "wav", 856d15d130SStephan Aßmus { 0 } 866d15d130SStephan Aßmus }, 876ac391b3SStephan Aßmus }; 886ac391b3SStephan Aßmus 896ac391b3SStephan Aßmus const size_t gMuxerCount = sizeof(gMuxerTable) / sizeof(media_file_format); 906ac391b3SStephan Aßmus 91