introduce a way for encoder to manifest its capabilities
[nihav.git] / nihav-ms / src / codecs / msadpcm.rs
index 6b6c63e699734ec7da0d8811bb270a2ad8a98a1b..179b097515f95ffa27a05edc78647928fb6f8725 100644 (file)
@@ -310,9 +310,9 @@ impl NAEncoder for MSADPCMEncoder {
     fn negotiate_format(&self, encinfo: &EncodeParameters) -> EncoderResult<EncodeParameters> {
         match encinfo.format {
             NACodecTypeInfo::None => {
-                let mut ofmt = EncodeParameters::default();
-                ofmt.format = NACodecTypeInfo::Audio(NAAudioInfo::new(0, 1, SND_S16_FORMAT, DEFAULT_BLOCK_LEN));
-                Ok(ofmt)
+                Ok(EncodeParameters {
+                    format: NACodecTypeInfo::Audio(NAAudioInfo::new(0, 1, SND_S16_FORMAT, DEFAULT_BLOCK_LEN)),
+                    ..Default::default() })
             },
             NACodecTypeInfo::Video(_) => Err(EncoderError::FormatError),
             NACodecTypeInfo::Audio(ainfo) => {
@@ -336,6 +336,7 @@ impl NAEncoder for MSADPCMEncoder {
             }
         }
     }
+    fn get_capabilities(&self) -> u64 { ENC_CAPS_CBR }
     fn init(&mut self, stream_id: u32, encinfo: EncodeParameters) -> EncoderResult<NAStreamRef> {
         match encinfo.format {
             NACodecTypeInfo::None => Err(EncoderError::FormatError),