]> git.nihav.org Git - nihav.git/blobdiff - nihav-duck/src/codecs/vp7dsp.rs
make edge_emu() accept block alignment
[nihav.git] / nihav-duck / src / codecs / vp7dsp.rs
index 0b141d2c2352d56485c425a7499b9ff24f027ae4..bf21d62e9957bd806facf27d5501214deb7eef5b 100644 (file)
@@ -1,5 +1,5 @@
 use nihav_core::frame::*;
-use nihav_core::codecs::blockdsp::edge_emu;
+use nihav_codec_support::codecs::blockdsp::edge_emu;
 
 fn clip_u8(val: i16) -> u8 {
     val.max(0).min(255) as u8
@@ -58,7 +58,7 @@ impl Default for IPredContext {
 const DCT_COEFFS: [i32; 16] = [
     23170,  23170,  23170,  23170,
     30274,  12540, -12540, -30274,
-    23170, -23170, -23170,  23170, 
+    23170, -23170, -23170,  23170,
     12540, -30274,  30274, -12540
 ];
 
@@ -582,7 +582,7 @@ fn mc_block(dst: &mut [u8], doff: usize, dstride: usize, xpos: usize, ypos: usiz
     let ref_y = (ypos as isize) + ((mvy >> 3) as isize) - (EDGE_PRE as isize);
 
     let (src, sstride) = if (ref_x < 0) || (ref_x + bsize > wa) || (ref_y < 0) || (ref_y + bsize > ha) {
-            edge_emu(&reffrm, ref_x, ref_y, bsize as usize, bsize as usize, mc_buf, 32, plane);
+            edge_emu(&reffrm, ref_x, ref_y, bsize as usize, bsize as usize, mc_buf, 32, plane, 0);
             (mc_buf as &[u8], 32)
         } else {
             let off     = reffrm.get_offset(plane);
@@ -647,7 +647,7 @@ pub fn mc_block_special(dst: &mut [u8], doff: usize, dstride: usize, xpos: usize
             let bw = size + EDGE_PRE + EDGE_POST + add;
             let bh = (end_y - start_y) as usize;
             let bo = if xstep >= 0 { 0 } else { add };
-            edge_emu(&reffrm, start_x + (bo as isize), start_y, bw, bh, mc_buf, 128, plane);
+            edge_emu(&reffrm, start_x + (bo as isize), start_y, bw, bh, mc_buf, 128, plane, 0);
             (&mc_buf[bo..], (128 + xstep) as usize)
         };
     let mx = (mvx & 7) as usize;