X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-registry%2Fsrc%2Fregister.rs;h=0e3cc6403b118df470742b76a7a2b004f0d39a9f;hp=d4e2b028097d7c753533663b2ec31bc09f4afdb9;hb=549152963d868fc896287193b7ac7767e8794e01;hpb=696e4e20bf7167121352f247893370cb83213d5c diff --git a/nihav-registry/src/register.rs b/nihav-registry/src/register.rs index d4e2b02..0e3cc64 100644 --- a/nihav-registry/src/register.rs +++ b/nihav-registry/src/register.rs @@ -155,7 +155,7 @@ pub fn get_codec_description(name: &str) -> Option<&'static CodecDescription> { None } -static CODEC_REGISTER: &'static [CodecDescription] = &[ +static CODEC_REGISTER: &[CodecDescription] = &[ desc!(audio-ll; "pcm", "PCM"), desc!(audio; "alaw", "A-law PCM"), desc!(audio; "ulaw", "mu-law PCM"), @@ -185,8 +185,14 @@ static CODEC_REGISTER: &'static [CodecDescription] = &[ desc!(audio; "atrac3", "Sony Atrac3"), desc!(audio; "sipro", "Sipro Labs ADPCM"), + + desc!(video-ll; "rawvideo", "Raw video data"), + desc!(video-ll; "rawvideo-ms", "Raw video data"), + desc!(video; "cinepak", "Cinepak"), + desc!(video-llp; "zmbv", "Zip Motion Blocks Video"), + desc!(video; "msvideo1", "MS Video 1"), desc!(video; "msrle", "MS RLE"), desc!(audio; "ms-adpcm", "MS ADPCM"), @@ -197,6 +203,7 @@ static CODEC_REGISTER: &'static [CodecDescription] = &[ desc!(video; "apple-video", "Apple video"), desc!(video; "sorenson-video", "Sorenson Video"), desc!(video; "sorenson-video3", "Sorenson Video 3", CODEC_CAP_REORDER), + desc!(audio-ll; "alac", "Apple Lossless Audio Codec"), desc!(audio; "mace-3", "MACE 3:1"), desc!(audio; "mace-6", "MACE 6:1"), desc!(audio; "ima-adpcm-qt", "IMA ADPCM (Apple variant)"), @@ -212,7 +219,8 @@ static CODEC_REGISTER: &'static [CodecDescription] = &[ desc!(video; "vp4", "VP4"), desc!(video; "vp5", "VP5"), desc!(video; "vp6", "VP6"), - desc!(video; "vp6a", "VP6"), + desc!(video; "vp6f", "VP6 (in Flash)"), + desc!(video; "vp6a", "VP6 with alpha"), desc!(video; "vp7", "VP7"), desc!(video; "vp8", "VP8"), desc!(video; "vp9", "VP9"), @@ -221,12 +229,29 @@ static CODEC_REGISTER: &'static [CodecDescription] = &[ desc!(audio; "on2avc-500", "On2 AVC"), desc!(audio; "on2avc-501", "On2 AVC"), + desc!(video; "flv263", "Sorenson H.263"), + desc!(video-llp; "flashsv", "Flash Screen Video"), + desc!(video-llp; "flashsv2", "Flash Screen Video 2"), + desc!(audio; "asao", "N*llym*s*r ASAO"), + desc!(audio; "flv-adpcm", "Flash ADPCM"), + + desc!(audio; "mp1", "MPEG Audio Layer I"), + desc!(audio; "mp2", "MPEG Audio Layer II"), + desc!(audio; "mp3", "MPEG Audio Layer III"), + desc!(audio; "speex", "Speex"), + desc!(video; "gdv-video", "Gremlin Digital Video - video"), desc!(audio; "gdv-audio", "Gremlin Digital Video - audio"), desc!(video; "bmv-video", "BMV video"), desc!(audio; "bmv-audio", "BMV audio"), desc!(video; "bmv3-video", "DW Noir BMV video"), desc!(audio; "bmv3-audio", "DW Noir BMV audio"), + desc!(video; "fable-imax", "Fable IMAX video"), + desc!(video; "fst-video", "FutureVision video"), + desc!(audio; "fst-audio", "FutureVision audio"), + desc!(video-llp; "ipma", "Imagination Pilots Matte Animation"), + desc!(video-llp; "ipma2", "Imagination Pilots Matte Animation v2"), + desc!(video; "legend-q-video", "Legend Entertainment Q video"), desc!(video; "midivid", "MidiVid"), desc!(video; "midivid3", "MidiVid 3"), desc!(video-ll; "midivid-ll", "MidiVid Lossless"), @@ -257,10 +282,13 @@ static CODEC_REGISTER: &'static [CodecDescription] = &[ desc!(audio-ll; "tta", "True Audio codec"), desc!(audio-hyb; "wavpack", "WavPack"), + desc!(video-im; "jpeg", "JPEG"), desc!(video; "h264", "ITU H.264", CODEC_CAP_COMPLEX_REORDER | CODEC_CAP_HYBRID), + + desc!(video-im; "mwv1", "Aware MotionWavelets"), ]; -static AVI_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ +static AVI_VIDEO_CODEC_REGISTER: &[(&[u8;4], &str)] = &[ (&[1, 0, 0, 0], "msrle"), (&[2, 0, 0, 0], "msrle"), @@ -268,6 +296,8 @@ static AVI_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ (b"MSVC", "msvideo1"), (b"WHAM", "msvideo1"), + (b"MJPG", "jpeg"), + (b"IF09", "indeo1"), (b"RT21", "indeo2"), (b"IV31", "indeo3"), @@ -278,6 +308,10 @@ static AVI_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ (b"UCOD", "clearvideo"), (b"cvid", "cinepak"), + (b"ZMBV", "zmbv"), + + (b"Ipma", "ipma"), + (b"Ip20", "ipma2"), (b"MVDV", "midivid"), (b"MV30", "midivid3"), @@ -297,9 +331,11 @@ static AVI_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ (b"VP62", "vp6"), (b"VP6A", "vp6a"), (b"VP70", "vp7"), + + (b"MWV1", "mwv1"), ]; -static WAV_CODEC_REGISTER: &'static [(u16, &str)] = &[ +static WAV_CODEC_REGISTER: &[(u16, &str)] = &[ (0x0000, "unknown"), (0x0001, "pcm"), (0x0002, "ms-adpcm"), @@ -313,7 +349,7 @@ static WAV_CODEC_REGISTER: &'static [(u16, &str)] = &[ (0x0501, "on2avc-501"), ]; -static MOV_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ +static MOV_VIDEO_CODEC_REGISTER: &[(&[u8;4], &str)] = &[ (b"cvid", "cinepak"), (b"jpeg", "jpeg"), //(b"raw ", "raw"), @@ -341,7 +377,7 @@ static MOV_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ (b"avc1", "h264"), ]; -static MOV_AUDIO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ +static MOV_AUDIO_CODEC_REGISTER: &[(&[u8;4], &str)] = &[ (b"NONE", "pcm"), (b"raw ", "pcm"), (b"twos", "pcm"), @@ -362,6 +398,8 @@ static MOV_AUDIO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[ //(b".mp3", "mpeg-layer3"), (b"mp4a", "aac"), + + (b"alac", "alac"), ]; /// Returns video codec short name for provided FOURCC (used in AVI format).