nihav_registry/register: make CODEC_CAP_* public and document them
[nihav.git] / nihav-registry / src / register.rs
index b92746cfc1d3c10ab9d346be05a35332e32fbdcb..177cf0604546f6797abaa29dff5d4115e6c4f0bd 100644 (file)
@@ -31,11 +31,16 @@ impl fmt::Display for CodecType {
     }
 }
 
-const CODEC_CAP_INTRAONLY:u32   = 0x0001;
-const CODEC_CAP_LOSSLESS:u32    = 0x0002;
-const CODEC_CAP_REORDER:u32     = 0x0004;
-const CODEC_CAP_HYBRID:u32      = 0x0008;
-const CODEC_CAP_SCALABLE:u32    = 0x0010;
+/// Codec capability flag for intra-only codecs.
+pub const CODEC_CAP_INTRAONLY:u32   = 0x0001;
+/// Codec capability flag for lossless codecs.
+pub const CODEC_CAP_LOSSLESS:u32    = 0x0002;
+/// Codec capability flag for codecs with frame reordering.
+pub const CODEC_CAP_REORDER:u32     = 0x0004;
+/// Codec capability flag for codecs that can be both lossy and lossless.
+pub const CODEC_CAP_HYBRID:u32      = 0x0008;
+/// Codec capability flag for codecs with scalability features.
+pub const CODEC_CAP_SCALABLE:u32    = 0x0010;
 
 /// Codec description structure.
 #[derive(Clone)]
@@ -185,7 +190,7 @@ static CODEC_REGISTER: &'static [CodecDescription] = &[
     desc!(video;    "qt-rle",               "Apple Animation"),
     desc!(video;    "apple-video",          "Apple video"),
     desc!(video;    "sorenson-video",       "Sorenson Video"),
-    desc!(video;    "sorenson-video3",      "Sorenson Video 3"),
+    desc!(video;    "sorenson-video3",      "Sorenson Video 3", CODEC_CAP_REORDER),
     desc!(audio;    "mace-3",               "MACE 3:1"),
     desc!(audio;    "mace-6",               "MACE 6:1"),
     desc!(audio;    "ima-adpcm-qt",         "IMA ADPCM (Apple variant)"),
@@ -306,7 +311,9 @@ static MOV_VIDEO_CODEC_REGISTER: &'static [(&[u8;4], &str)] = &[
     (b"mjpa", "mjpeg-a"),
     (b"mjpb", "mjpeg-b"),
     (b"svqi", "sorenson-video"),
+    (b"SVQ1", "sorenson-video"),
     (b"svq3", "sorenson-video3"),
+    (b"SVQ3", "sorenson-video3"),
 
     (b"IV31", "indeo3"),
     (b"IV32", "indeo3"),