355 lines
9.1 KiB
C++
355 lines
9.1 KiB
C++
#ifndef MEDIAFOURCC_H
|
|
#define MEDIAFOURCC_H
|
|
|
|
#include <c++utilities/application/global.h>
|
|
#include <c++utilities/conversion/types.h>
|
|
|
|
namespace Media {
|
|
|
|
class MediaFormat;
|
|
|
|
namespace Fourccs {
|
|
|
|
enum KnownValues {
|
|
AMParedesPredictor = 0x31393738,
|
|
VuyBlackmagic = 0x32565559,
|
|
Ivx1 = 0x33495630,
|
|
Ivx2 = 0x33495631,
|
|
Ivx3 = 0x33495632,
|
|
FfmpegDivxMsMpeg4V3 = 0x33495644,
|
|
Ivx4 = 0x33495658,
|
|
PlanarRgbCodec = 0x38425053,
|
|
AutodeskAnimatorCodecRle1 = 0x41415334,
|
|
AutodeskAnimatorCodecRle2 = 0x41415343,
|
|
KensingtonCodec = 0x41425952,
|
|
StreamboxActl2 = 0x4143544C,
|
|
Wavecodec = 0x41445631,
|
|
Advj = 0x4144564A,
|
|
IntelIndeoVideo32 = 0x4145494B,
|
|
ArrayVideooneMpeg1ICapture = 0x41454D49,
|
|
AutodeskAnimatorFlc256Color = 0x41464C43,
|
|
AfliAutodeskAnimatorFli256Color = 0x41464C49,
|
|
Cineform10BitVisuallyPerfectHdWavelet = 0x41484456,
|
|
Ajpg = 0x414A5047,
|
|
Ampg = 0x414D5047,
|
|
Anim = 0x414E494D,
|
|
AngelpotionDefinitive1 = 0x41503431,
|
|
AngelpotionDefinitive2 = 0x41503432,
|
|
AlparysoftLosslessCodec = 0x41534C43,
|
|
AsusVideo = 0x41535631,
|
|
AsusVideo2 = 0x41535632,
|
|
AsusVideo20 = 0x41535658,
|
|
Atm4 = 0x41544D34,
|
|
Aura2CodecYuv422 = 0x41555232,
|
|
Aura1CodecYuv411 = 0x41555241,
|
|
Avc1 = 0x41564331,
|
|
Avrn = 0x4156524E,
|
|
Ba81 = 0x42413831,
|
|
BinkVideo = 0x42494E4B,
|
|
Blz0 = 0x424C5A30,
|
|
ProsumerVideo = 0x42543230,
|
|
Btcv = 0x42544356,
|
|
BroadwayMpegCapturecompression = 0x42573130,
|
|
Byr1 = 0x42595231,
|
|
Byr2 = 0x42595232,
|
|
Cc12 = 0x43433132,
|
|
Cdvc = 0x43445643,
|
|
Cfcc = 0x43464343,
|
|
Cgdi = 0x43474449,
|
|
Cham = 0x4348414D,
|
|
WebcamJpeg = 0x434A5047,
|
|
Cmyk = 0x434D594B,
|
|
Cpla = 0x43504C41,
|
|
Cram = 0x4352414D,
|
|
CamstudioCodec = 0x43534344,
|
|
Ctrx = 0x43545258,
|
|
Cinepak = 0x43564944,
|
|
Cwlt = 0x43574C54,
|
|
ConexantYuv411 = 0x43585931,
|
|
ConexantYuv422 = 0x43585932,
|
|
CreativeYuv = 0x43595556,
|
|
Cyuy = 0x43595559,
|
|
D261 = 0x44323631,
|
|
D263 = 0x44323633,
|
|
Davc = 0x44415643,
|
|
Dcl1 = 0x44434C31,
|
|
Dcl2 = 0x44434C32,
|
|
Dcl3 = 0x44434C33,
|
|
Dcl4 = 0x44434C34,
|
|
Dcl5 = 0x44434C35,
|
|
DivxMpeg41 = 0x44495633,
|
|
DivxMpeg42 = 0x44495634,
|
|
Div5 = 0x44495635,
|
|
Divx = 0x44495658,
|
|
Dm4V = 0x444D3456,
|
|
RainbowRunnerHardwareCompression = 0x444D4231,
|
|
Dmb2 = 0x444D4232,
|
|
Dmk2 = 0x444D4B32,
|
|
Dsvd = 0x44535644,
|
|
TruemotionS = 0x4455434B,
|
|
Dvcpro = 0x44563235,
|
|
Dvcpro50 = 0x44563530,
|
|
Dvan = 0x4456414E,
|
|
Dvcs = 0x44564353,
|
|
Dve2 = 0x44564532,
|
|
Smpte370M = 0x44564831,
|
|
ConsumerDv50Mbps = 0x44564844,
|
|
ConsumerDv25Mbps = 0x44565344,
|
|
ConsumerDv125Mbps = 0x4456534C,
|
|
Dvx1 = 0x44565831,
|
|
Dvx2 = 0x44565832,
|
|
Dvx3 = 0x44565833,
|
|
DivxMpeg43 = 0x44583530,
|
|
Dxgm = 0x4458474D,
|
|
Dxtc = 0x44585443,
|
|
Dxtn = 0x4458544E,
|
|
ElsaQuickCodec = 0x454B5130,
|
|
Elk0 = 0x454C4B30,
|
|
EtymonixMpeg2Video = 0x454D3256,
|
|
Eyestream7Codec = 0x45533037,
|
|
Escp = 0x45534350,
|
|
EtreppidVideoCodec1 = 0x45545631,
|
|
EtreppidVideoCodec2 = 0x45545632,
|
|
Etvc = 0x45545643,
|
|
FfmpegCodec = 0x46465631,
|
|
Fljp = 0x464C4A50,
|
|
Ffmpeg = 0x464D5034,
|
|
FmscreenCaptureCodec = 0x464D5643,
|
|
FrapsCodec = 0x46505331,
|
|
ForwardMotionJpegWithAlphaChannel = 0x46525741,
|
|
ForwardMotionJpeg = 0x46525744,
|
|
Fvf1 = 0x46564631,
|
|
Geompeg4 = 0x47454F58,
|
|
Gjpg = 0x474A5047,
|
|
MotionLzw = 0x474C5A57,
|
|
MotionJpeg1 = 0x47504547,
|
|
Gwlt = 0x47574C54,
|
|
H260ThroughH269 = 0x48323630,
|
|
RawYuv422 = 0x48445943,
|
|
H265Hevc = 0x48455643,
|
|
HuffmanLosslessCodec = 0x48465955,
|
|
Hmcr = 0x484D4352,
|
|
Hmrr = 0x484D5252,
|
|
ItuH263 = 0x49323633,
|
|
Iclb = 0x49434C42,
|
|
Igor = 0x49474F52,
|
|
Ijpg = 0x494A5047,
|
|
Ilvc = 0x494C5643,
|
|
Ilvr = 0x494C5652,
|
|
GigaAviDvCodec = 0x49504456,
|
|
Indeo21 = 0x49523231,
|
|
Iraw = 0x49524157,
|
|
Isme = 0x49534D45,
|
|
Indeo3 = 0x49563330,
|
|
Indeo32 = 0x49563332,
|
|
IndeoInteractive1 = 0x49563430,
|
|
IndeoInteractive2 = 0x49563530,
|
|
Jbyr = 0x4A425952,
|
|
JpegStillImage = 0x4A504547,
|
|
JpegLight = 0x4A50474C,
|
|
Kmvc = 0x4B4D5643,
|
|
L261 = 0x4C323631,
|
|
LeadH263 = 0x4C323633,
|
|
Lbyr = 0x4C425952,
|
|
LeadmcmwVideoCodec = 0x4C434D57,
|
|
LeadMjpeg20001 = 0x4C435732,
|
|
LeadVideoCodec = 0x4C454144,
|
|
Lgry = 0x4C475259,
|
|
LeadJpeg411 = 0x4C4A3131,
|
|
LeadJpeg422 = 0x4C4A3232,
|
|
LeadMjpeg20002 = 0x4C4A324B,
|
|
LeadJpeg444 = 0x4C4A3434,
|
|
LeadMjpegCodec = 0x4C4A5047,
|
|
LeadMpeg2VideoCodec = 0x4C4D5032,
|
|
LeadMpeg4VideoCodec = 0x4C4D5034,
|
|
Lsvc = 0x4C535643,
|
|
Lsvm = 0x4C53564D,
|
|
LightningStrikeVideoCodec = 0x4C535658,
|
|
LempelzivoberhumerCodec = 0x4C5A4F31,
|
|
M261 = 0x4D323631,
|
|
M263 = 0x4D323633,
|
|
M4CcM4Cc = 0x4D344343,
|
|
M4S2 = 0x4D345332,
|
|
Mc12 = 0x4D433132,
|
|
Mcam = 0x4D43414D,
|
|
MotionJpeg2000 = 0x4D4A3243,
|
|
MotionJpeg2 = 0x4D4A5047,
|
|
Mmes = 0x4D4D4553,
|
|
EvalDownload1 = 0x4D503241,
|
|
EvalDownload2 = 0x4D503254,
|
|
EvalDownload3 = 0x4D503256,
|
|
Mpeg4 = 0x4D503432,
|
|
Mp43 = 0x4D503433,
|
|
EvalDownload4 = 0x4D503441,
|
|
Mp4S = 0x4D503453,
|
|
EvalDownload5 = 0x4D503454,
|
|
EvalDownload6 = 0x4D503456,
|
|
Mpeg = 0x4D504547,
|
|
Mpg4 = 0x4D504734,
|
|
Mpgi = 0x4D504749,
|
|
Mr16 = 0x4D523136,
|
|
Mrca = 0x4D524341,
|
|
Mrle = 0x4D524C45,
|
|
Msvc = 0x4D535643,
|
|
Avimszh = 0x4D535A48,
|
|
Mtx1ThroughMtx9 = 0x4D545831,
|
|
MotionPixelsMvi1Codec = 0x4D564931,
|
|
MotionPixelsMvi2Codec = 0x4D564932,
|
|
AwareMotionWavelets = 0x4D575631,
|
|
Navi = 0x4E415649,
|
|
Ndsc = 0x4E445343,
|
|
Ndsm = 0x4E44534D,
|
|
Ndsp = 0x4E445350,
|
|
Ndss = 0x4E445353,
|
|
Ndxc = 0x4E445843,
|
|
Ndxh = 0x4E445848,
|
|
Ndxp = 0x4E445850,
|
|
Ndxs = 0x4E445853,
|
|
Nhvu = 0x4E485655,
|
|
Ntn1 = 0x4E544E31,
|
|
Ntn2 = 0x4E544E32,
|
|
Nvds = 0x4E564453,
|
|
Nvhs = 0x4E564853,
|
|
Nvs0Nvs5 = 0x4E565330,
|
|
Nvt0Nvt5 = 0x4E565430,
|
|
DvcCodec = 0x50445643,
|
|
Pgvv = 0x50475656,
|
|
Phmo = 0x50484D4F,
|
|
Pim1 = 0x50494D31,
|
|
Pim2 = 0x50494D32,
|
|
PegasusLosslessJpeg = 0x50494D4A,
|
|
VideoXl = 0x5049584C,
|
|
Pjpg = 0x504A5047,
|
|
Pvez = 0x5056455A,
|
|
Pvmm = 0x50564D4D,
|
|
PegasusWavelet2000Compression = 0x50565732,
|
|
Qpeg = 0x51504547,
|
|
Qpeq = 0x51504551,
|
|
Rgbt = 0x52474254,
|
|
Rle = 0x524C450,
|
|
Rle4 = 0x524C4534,
|
|
Rle8 = 0x524C4538,
|
|
Rmp4 = 0x524D5034,
|
|
AppleVideo = 0x52505A41,
|
|
Rt21 = 0x52543231,
|
|
Rv20 = 0x52563230,
|
|
Rv30 = 0x52563330,
|
|
Rv40 = 0x52563430,
|
|
VideocapC210 = 0x53343232,
|
|
San3 = 0x53414E33,
|
|
Sdcc = 0x53444343,
|
|
Sedg = 0x53454447,
|
|
SurfaceFittingMethod = 0x53464D43,
|
|
Smp4 = 0x534D5034,
|
|
Smsc = 0x534D5343,
|
|
Smsd = 0x534D5344,
|
|
Smsv = 0x534D5356,
|
|
Sp40 = 0x53503430,
|
|
Sp44 = 0x53503434,
|
|
Sp54 = 0x53503534,
|
|
Spig = 0x53504947,
|
|
Sqz2 = 0x53515A32,
|
|
Stva = 0x53545641,
|
|
Stvb = 0x53545642,
|
|
Stvc = 0x53545643,
|
|
Stvx = 0x53545658,
|
|
Stvy = 0x53545659,
|
|
VideoR1 = 0x53563130,
|
|
SorensonVideo1 = 0x53565131,
|
|
Svq3 = 0x53565133,
|
|
Tlms = 0x544C4D53,
|
|
Tlst = 0x544C5354,
|
|
Tm20 = 0x544D3230,
|
|
Tm2X = 0x544D3258,
|
|
Tmic = 0x544D4943,
|
|
Tmot = 0x544D4F54,
|
|
TruemotionRt20 = 0x54523230,
|
|
TechsmithScreenCaptureCodec = 0x54534343,
|
|
Tv10 = 0x54563130,
|
|
Tvjp = 0x54564A50,
|
|
Tvmj = 0x54564D4A,
|
|
Ty0N = 0x5459304E,
|
|
Ty2C = 0x54593243,
|
|
Ty2N = 0x5459324E,
|
|
Clearvideo = 0x55434F44,
|
|
Ultimotion = 0x554C5449,
|
|
V210 = 0x56323130,
|
|
V261 = 0x56323631,
|
|
V655 = 0x56363535,
|
|
Vcr1 = 0x56435231,
|
|
Vcr2 = 0x56435232,
|
|
Vcr39 = 0x56435233,
|
|
Vdct = 0x56444354,
|
|
Vdom = 0x56444F4D,
|
|
Vdow = 0x56444F57,
|
|
VideotizerYuvCodec = 0x5644545A,
|
|
Videogrampix = 0x56475058,
|
|
Vids = 0x56494453,
|
|
VfapiCodec = 0x56494650,
|
|
Vivo = 0x5649564F,
|
|
Vixl = 0x5649584C,
|
|
Vlv1 = 0x564C5631,
|
|
Vp30 = 0x56503330,
|
|
Vp31 = 0x56503331,
|
|
Vp40 = 0x56503430,
|
|
Vp50 = 0x56503530,
|
|
Vp60 = 0x56503630,
|
|
Vp61 = 0x56503631,
|
|
Vp62 = 0x56503632,
|
|
Vp70 = 0x56503730,
|
|
Vp80 = 0x56503830,
|
|
Vqc1 = 0x56514331,
|
|
Vqc2 = 0x56514332,
|
|
Vqjc = 0x56514A43,
|
|
VssVideo = 0x56535356,
|
|
Vuuu = 0x56555555,
|
|
Vx1K = 0x5658314B,
|
|
Vx2K = 0x5658324B,
|
|
Vxsp = 0x56585350,
|
|
AtiYuv1 = 0x56595539,
|
|
AtiYuv2 = 0x56595559,
|
|
Wbvc = 0x57425643,
|
|
Wham = 0x5748414D,
|
|
WinnovSoftwareCompression = 0x57494E58,
|
|
WinbondJpeg = 0x574A5047,
|
|
Wmv1 = 0x574D5631,
|
|
Wmv2 = 0x574D5632,
|
|
WindowsMediaVideo9 = 0x574D5633,
|
|
Wmva = 0x574D5641,
|
|
WinnovHardwareCompression = 0x574E5631,
|
|
Wvc1 = 0x57564331,
|
|
X263 = 0x58323633,
|
|
H264 = 0x58323634,
|
|
Xlv0 = 0x584C5630,
|
|
Xmpg = 0x584D5047,
|
|
XvidMpeg4 = 0x58564944,
|
|
Xwv0Xwv9 = 0x58575630,
|
|
Xxan = 0x5858414E,
|
|
BppGrayscaleVideo = 0x5931360,
|
|
Y411 = 0x59343131,
|
|
BrooktreeYuv411 = 0x59343150,
|
|
Y444 = 0x59343434,
|
|
Y8 = 0x593800,
|
|
Yc12 = 0x59433132,
|
|
Yuv8 = 0x59555638,
|
|
Yuv9RawFormat = 0x59555639,
|
|
Yuvp = 0x59555650,
|
|
Yuy2 = 0x59555932,
|
|
Yuyv = 0x59555956,
|
|
Yuv420Planar = 0x59563132,
|
|
Yv16 = 0x59563136,
|
|
Yv92 = 0x59563932,
|
|
Zlib = 0x5A4C4942,
|
|
TheDoxboxProject = 0x5A4D4256,
|
|
Zpeg = 0x5A504547,
|
|
Zygovideo = 0x5A59474F
|
|
};
|
|
|
|
LIB_EXPORT MediaFormat fourccToMediaFormat(uint32 fourcc);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
#endif // MEDIAFOURCC_H
|