projects
/
nihav.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rename register_all_codecs to register_all_decoders
[nihav.git]
/
nihav-indeo
/
src
/
codecs
/
imc.rs
diff --git
a/nihav-indeo/src/codecs/imc.rs
b/nihav-indeo/src/codecs/imc.rs
index f8a4f28fcb5acb0a7ffcc39212314b38877b37a6..ea84d0ab01977f91285045264d60488f5df197d7 100644
(file)
--- a/
nihav-indeo/src/codecs/imc.rs
+++ b/
nihav-indeo/src/codecs/imc.rs
@@
-7,8
+7,8
@@
use nihav_core::frame::*;
use nihav_core::codecs::*;
use nihav_core::io::bitreader::*;
use nihav_core::io::codebook::*;
use nihav_core::codecs::*;
use nihav_core::io::bitreader::*;
use nihav_core::io::codebook::*;
-use nihav_co
re
::dsp::fft::*;
-use nihav_co
re
::dsp::window::*;
+use nihav_co
dec_support
::dsp::fft::*;
+use nihav_co
dec_support
::dsp::window::*;
const BANDS: usize = 32;
const COEFFS: usize = 256;
const BANDS: usize = 32;
const COEFFS: usize = 256;
@@
-103,6
+103,7
@@
impl BitAlloc {
self.skip_flag[i] = false;
}
}
self.skip_flag[i] = false;
}
}
+ #[allow(clippy::cyclomatic_complexity)]
fn calculate_bit_allocation(&mut self, ch_data: &mut IMCChannel, bits: usize, fixed_head: bool, adj_idx: usize) -> DecoderResult<()> {
let mut peak = 0.0;
fn calculate_bit_allocation(&mut self, ch_data: &mut IMCChannel, bits: usize, fixed_head: bool, adj_idx: usize) -> DecoderResult<()> {
let mut peak = 0.0;
@@
-728,7
+729,7
@@
impl IMCDecoder {
}
fn decode_block(&mut self, data: &[u8], ch: usize, dst: &mut [f32]) -> DecoderResult<()> {
}
fn decode_block(&mut self, data: &[u8], ch: usize, dst: &mut [f32]) -> DecoderResult<()> {
- let mut br = BitReader::new(&data[BLOCK_SIZE*ch..]
, BLOCK_SIZE
, BitReaderMode::LE16MSB);
+ let mut br = BitReader::new(&data[BLOCK_SIZE*ch..]
[..BLOCK_SIZE]
, BitReaderMode::LE16MSB);
let hdr = br.read(9)?;
validate!((hdr & 0x18) == 0);
let hdr = br.read(9)?;
validate!((hdr & 0x18) == 0);
@@
-926,6
+927,12
@@
impl NADecoder for IMCDecoder {
}
}
}
}
+impl NAOptionHandler for IMCDecoder {
+ fn get_supported_options(&self) -> &[NAOptionDefinition] { &[] }
+ fn set_options(&mut self, _options: &[NAOption]) { }
+ fn query_option_value(&self, _name: &str) -> Option<NAValue> { None }
+}
+
pub fn get_decoder_imc() -> Box<dyn NADecoder + Send> {
Box::new(IMCDecoder::new(true))
}
pub fn get_decoder_imc() -> Box<dyn NADecoder + Send> {
Box::new(IMCDecoder::new(true))
}
@@
-1111,15
+1118,15
@@
const IMC_CB_SELECTOR: [[usize; BANDS]; 4] = [
mod test {
use nihav_core::codecs::RegisteredDecoders;
use nihav_core::demuxers::RegisteredDemuxers;
mod test {
use nihav_core::codecs::RegisteredDecoders;
use nihav_core::demuxers::RegisteredDemuxers;
- use nihav_co
re
::test::dec_video::*;
- use crate::
codecs::indeo_register_all_codec
s;
- use nihav_commonfmt::
demuxers::
generic_register_all_demuxers;
+ use nihav_co
dec_support
::test::dec_video::*;
+ use crate::
indeo_register_all_decoder
s;
+ use nihav_commonfmt::generic_register_all_demuxers;
#[test]
fn test_imc() {
let mut dmx_reg = RegisteredDemuxers::new();
generic_register_all_demuxers(&mut dmx_reg);
let mut dec_reg = RegisteredDecoders::new();
#[test]
fn test_imc() {
let mut dmx_reg = RegisteredDemuxers::new();
generic_register_all_demuxers(&mut dmx_reg);
let mut dec_reg = RegisteredDecoders::new();
- indeo_register_all_
codec
s(&mut dec_reg);
+ indeo_register_all_
decoder
s(&mut dec_reg);
// let file = "assets/Indeo/neal73_saber.avi";
// let file = "assets/Indeo/IMC/hvalen.avi";
// let file = "assets/Indeo/neal73_saber.avi";
// let file = "assets/Indeo/IMC/hvalen.avi";