X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-codec-support%2Fsrc%2Fcodecs%2Fh263%2Fmod.rs;h=8c3ca655088008480e30e64f32c7d63d66123770;hp=33d71baa580a97d56ee9349ac6ed9d4ce7b5f8e2;hb=401b2b60a38e3eb19ae19aee9e652f7c8c0cf6f8;hpb=7f73eeeeff30f6319d5ff3fe6b945d64ce2c8fef diff --git a/nihav-codec-support/src/codecs/h263/mod.rs b/nihav-codec-support/src/codecs/h263/mod.rs index 33d71ba..8c3ca65 100644 --- a/nihav-codec-support/src/codecs/h263/mod.rs +++ b/nihav-codec-support/src/codecs/h263/mod.rs @@ -1,6 +1,6 @@ use nihav_core::codecs::DecoderResult; use super::{MV, ZERO_MV}; -use nihav_core::frame::NAVideoBuffer; +use nihav_core::frame::{NAVideoBuffer, NAVideoBufferRef}; #[allow(clippy::many_single_char_names)] pub mod code; @@ -19,8 +19,10 @@ pub trait BlockDecoder { pub trait BlockDSP { fn idct(&self, blk: &mut [i16; 64]); - fn copy_blocks(&self, dst: &mut NAVideoBuffer, src: &NAVideoBuffer, xpos: usize, ypos: usize, w: usize, h: usize, mv: MV); - fn avg_blocks(&self, dst: &mut NAVideoBuffer, src: &NAVideoBuffer, xpos: usize, ypos: usize, w: usize, h: usize, mv: MV); + fn copy_blocks(&self, dst: &mut NAVideoBuffer, src: NAVideoBufferRef, xpos: usize, ypos: usize, mv: MV); + fn copy_blocks8x8(&self, dst: &mut NAVideoBuffer, src: NAVideoBufferRef, xpos: usize, ypos: usize, mvs: &[MV; 4]); + fn avg_blocks(&self, dst: &mut NAVideoBuffer, src: NAVideoBufferRef, xpos: usize, ypos: usize, mv: MV); + fn avg_blocks8x8(&self, dst: &mut NAVideoBuffer, src: NAVideoBufferRef, xpos: usize, ypos: usize, mvs: &[MV; 4]); fn filter_row(&self, buf: &mut NAVideoBuffer, mb_y: usize, mb_w: usize, cbpi: &CBPInfo); }