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 29*ead61989SStephan Aßmus | media_file_format::B_KNOWS_RAW_VIDEO 30*ead61989SStephan Aßmus | media_file_format::B_KNOWS_RAW_AUDIO 31*ead61989SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_VIDEO 32*ead61989SStephan Aßmus | media_file_format::B_KNOWS_ENCODED_AUDIO, 33*ead61989SStephan Aßmus { 0 }, 34*ead61989SStephan Aßmus B_AVI_FORMAT_FAMILY, 35*ead61989SStephan Aßmus 100, 36*ead61989SStephan Aßmus { 0 }, 37*ead61989SStephan Aßmus "video/x-matroska", 38*ead61989SStephan Aßmus "Matroska file format", 39*ead61989SStephan Aßmus "mkv", 40*ead61989SStephan Aßmus "mkv", 41*ead61989SStephan Aßmus { 0 } 42*ead61989SStephan Aßmus }, 43*ead61989SStephan Aßmus { 44*ead61989SStephan 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. 606780c24dSStephan Aßmus // { 616780c24dSStephan Aßmus // media_file_format::B_WRITABLE 626780c24dSStephan Aßmus // | media_file_format::B_KNOWS_ENCODED_VIDEO 636780c24dSStephan Aßmus // | media_file_format::B_KNOWS_ENCODED_AUDIO, 646780c24dSStephan Aßmus // { 0 }, 656780c24dSStephan Aßmus // B_AVI_FORMAT_FAMILY, 666780c24dSStephan Aßmus // 100, 676780c24dSStephan Aßmus // { 0 }, 686780c24dSStephan Aßmus // "application/ogg", 696780c24dSStephan Aßmus // "Ogg (Xiph.Org Foundation)", 706780c24dSStephan Aßmus // "ogg", 716780c24dSStephan Aßmus // "ogg", 726780c24dSStephan Aßmus // { 0 } 736780c24dSStephan 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