pub const CODEC_CAP_HYBRID:u32 = 0x0008;
/// Codec capability flag for codecs with scalability features.
pub const CODEC_CAP_SCALABLE:u32 = 0x0010;
+/// Codec capability flag for codecs with complex frame reordering.
+pub const CODEC_CAP_COMPLEX_REORDER:u32 = 0x0020;
/// Codec description structure.
#[derive(Clone)]
CodecDescription{ name: $n, fname: $fn, ctype: CodecType::Audio,
caps: CODEC_CAP_LOSSLESS | CODEC_CAP_INTRAONLY }
});
+ (audio-hyb; $n:expr, $fn:expr) => ({
+ CodecDescription{ name: $n, fname: $fn, ctype: CodecType::Audio,
+ caps: CODEC_CAP_HYBRID }
+ });
}
/// Returns codec description for the provided codec short name if it is found.
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; "midivid", "MidiVid"),
desc!(video; "midivid3", "MidiVid 3"),
desc!(video-ll; "midivid-ll", "MidiVid Lossless"),
desc!(video; "vmd-video", "VMD video"),
desc!(audio; "vmd-audio", "VMD audio"),
+ desc!(video; "vxvideo", "Actimagine Vx"),
+ desc!(audio; "vxaudio", "Actimagine Sx"),
desc!(video; "smacker-video", "Smacker video"),
desc!(audio; "smacker-audio", "Smacker audio"),
desc!(video; "vivo2", "VivoActive Video 2.0", CODEC_CAP_REORDER),
desc!(audio; "g723.1", "ITU G.723.1"),
desc!(audio; "siren", "Polycom Siren"),
+
+ desc!(audio-ll; "ape", "Monkey's Audio"),
+ desc!(audio-ll; "flac", "Free Lossless Audio Codec"),
+ desc!(audio-ll; "tta", "True Audio codec"),
+ desc!(audio-hyb; "wavpack", "WavPack"),
+
+ desc!(video; "h264", "ITU H.264", CODEC_CAP_COMPLEX_REORDER | CODEC_CAP_HYBRID),
];
static AVI_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[
(b"VP30", "vp3"),
(b"VP31", "vp3"),
+
+ (b"avc1", "h264"),
];
static MOV_AUDIO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[
(b"QDM2", "qdesign-music2"),
(b"Qclp", "qualcomm-purevoice"),
//(b".mp3", "mpeg-layer3"),
+
+ (b"mp4a", "aac"),
];
/// Returns video codec short name for provided FOURCC (used in AVI format).