From e4704f1ba3ff7d9c75714d432768ce12f630e745 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Wed, 7 Dec 2022 22:31:20 +0100 Subject: small cleanup --- evc/scripts/gen | 7 ++++--- evc/scripts/stream | 2 +- evc/src/bin/decode.rs | 1 + evc/src/bin/encode.rs | 6 +++--- evc/src/codec/encode.rs | 8 ++++++++ 5 files changed, 17 insertions(+), 7 deletions(-) diff --git a/evc/scripts/gen b/evc/scripts/gen index 620c69f..22448c5 100755 --- a/evc/scripts/gen +++ b/evc/scripts/gen @@ -3,8 +3,9 @@ set w $argv[1] set h $argv[2] set t $argv[3] ffmpeg -hide_banner -i $argv[4] -to {$t} -vf scale={$w}x{$h},fps=30,format=rgb24 -f rawvideo pipe:1 | - LOG=info cargo run --release --bin encode -- -W {$w} -H {$h} > samples/encoded -LOG=info cargo run --release --bin decode -- < samples/encoded | + LOG=info cargo run --release --bin encode -- -W {$w} -H {$h} $argv[5..] >samples/encoded +ffmpeg -hide_banner -y -i $argv[4] -to {$t} -vf scale={$w}x{$h},fps=30,format=rgb24 samples/reference.webm +LOG=info cargo run --release --bin decode -- anyhow::Result<()> { let mut prev = Frame::new(size); for i in 0.. { info!("decode frame {i}"); + let block = Block::read(&mut input, size).context("reading encoded frame")?; let mut frame = Frame::new(size); diff --git a/evc/src/bin/encode.rs b/evc/src/bin/encode.rs index 20da7b6..6f3f0a7 100644 --- a/evc/src/bin/encode.rs +++ b/evc/src/bin/encode.rs @@ -26,7 +26,7 @@ pub struct EncodeArgs { #[arg(short, long, default_value = "8")] jobs: usize, - #[arg(short = 't', long, default_value = "1.5")] + #[arg(short = 't', long, default_value = "100")] ref_thres: f64, #[arg(short = 'T', long)] no_translation: bool, @@ -40,8 +40,8 @@ fn main() -> anyhow::Result<()> { let mut output = BufWriter::new(std::io::stdout()); let config = EncodeConfig { - mode: evc::codec::encode::EncodeMode::Advanced, - ref_thres: 500.0, + mode: args.mode, + ref_thres: args.ref_thres, max_diff_area: 10_000, min_block_size: 8, max_threads: args.jobs, diff --git a/evc/src/codec/encode.rs b/evc/src/codec/encode.rs index 484ae4b..c9a1172 100644 --- a/evc/src/codec/encode.rs +++ b/evc/src/codec/encode.rs @@ -86,10 +86,18 @@ pub fn encode_block(view: View<&Frame>, prev: View<&Frame>, config: &EncodeConfi } let (mut d, mut p) = (diff, params.clone()); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.x += 4); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.x -= 4); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.y += 4); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.y -= 4); pk(&view, &prev, &mut d, &mut p, |p| p.translation.x += 2); pk(&view, &prev, &mut d, &mut p, |p| p.translation.x -= 2); pk(&view, &prev, &mut d, &mut p, |p| p.translation.y += 2); pk(&view, &prev, &mut d, &mut p, |p| p.translation.y -= 2); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.x += 1); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.x -= 1); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.y += 1); + pk(&view, &prev, &mut d, &mut p, |p| p.translation.y -= 1); pk(&view, &prev, &mut d, &mut p, |p| p.transform.a -= 1); pk(&view, &prev, &mut d, &mut p, |p| p.transform.a += 1); pk(&view, &prev, &mut d, &mut p, |p| p.transform.b -= 1); -- cgit v1.2.3-70-g09d2