aboutsummaryrefslogtreecommitdiff
path: root/evc/src/bin
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2022-12-07 18:40:24 +0100
committermetamuffin <metamuffin@disroot.org>2022-12-07 18:40:24 +0100
commit7be0d5039db7e8660bced13698178bf1d6758109 (patch)
treea8723d67b6bab98656b182478b6418f2361260fa /evc/src/bin
parent8ca219c6b0d5448fd4529713ccd093e89de4e252 (diff)
downloadvideo-codec-experiments-7be0d5039db7e8660bced13698178bf1d6758109.tar
video-codec-experiments-7be0d5039db7e8660bced13698178bf1d6758109.tar.bz2
video-codec-experiments-7be0d5039db7e8660bced13698178bf1d6758109.tar.zst
refactor
Diffstat (limited to 'evc/src/bin')
-rw-r--r--evc/src/bin/decode.rs5
-rw-r--r--evc/src/bin/encode.rs14
2 files changed, 15 insertions, 4 deletions
diff --git a/evc/src/bin/decode.rs b/evc/src/bin/decode.rs
index b7dd4e1..36b1f80 100644
--- a/evc/src/bin/decode.rs
+++ b/evc/src/bin/decode.rs
@@ -68,5 +68,10 @@ fn draw_debug(block: &Block, mut target: View<&mut Frame>) {
.frame
.draw_line(target.center(), target.center() + *translation, Pixel::RED)
}
+ Block::AdvancedReference {
+ translation: _,
+ transform: _,
+ value_scale: _,
+ } => (), // TODO
}
}
diff --git a/evc/src/bin/encode.rs b/evc/src/bin/encode.rs
index f81bb5e..e5ffa41 100644
--- a/evc/src/bin/encode.rs
+++ b/evc/src/bin/encode.rs
@@ -3,7 +3,7 @@ use clap::Parser;
use evc::{
codec::{
decode::decode_block,
- encode::{encode_block, EncodeConfig},
+ encode::{encode_block, EncodeConfig, EncodeMode},
},
format::{header::Header, ser::Sink},
frame::Frame,
@@ -20,6 +20,12 @@ pub struct EncodeArgs {
#[arg(short = 'H', long)]
height: usize,
+ #[arg(short, long)]
+ mode: EncodeMode,
+
+ #[arg(short, long, default_value = "8")]
+ jobs: usize,
+
#[arg(short = 't', long, default_value = "1.5")]
ref_thres: f64,
#[arg(short = 'T', long)]
@@ -34,11 +40,11 @@ fn main() -> anyhow::Result<()> {
let mut output = BufWriter::new(std::io::stdout());
let config = EncodeConfig {
- translate: !args.no_translation,
+ mode: evc::codec::encode::EncodeMode::Advanced,
ref_thres: 50.0,
- max_diff_size: 10_000,
+ max_diff_area: 10_000,
min_block_size: 8,
- max_threads: 12,
+ max_threads: args.jobs,
};
let size = Vec2 {