Skip to content

Commit cd4c2b8

Browse files
committed
Begin fixing tests
1 parent 70895b3 commit cd4c2b8

19 files changed

Lines changed: 400 additions & 388 deletions

File tree

adder-codec-rs/examples/events_to_instantaneous_frames.rs

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,54 @@
11
extern crate core;
22

3-
use adder_codec_rs::codec::raw::stream::Raw;
4-
use adder_codec_rs::codec::Codec;
3+
use adder_codec_core::codec::decoder::Decoder;
4+
use adder_codec_core::codec::raw::stream::{RawInput, RawOutput};
5+
use adder_codec_core::codec::ReadCompression;
56
use adder_codec_rs::framer::driver::Framer;
67
use adder_codec_rs::framer::driver::FramerMode::INSTANTANEOUS;
78
use adder_codec_rs::framer::driver::{FrameSequence, FramerBuilder};
9+
use bitstream_io::{BigEndian, BitReader};
810
use std::fs::File;
911
use std::io;
10-
use std::io::{BufWriter, Write};
12+
use std::io::{BufReader, BufWriter, Write};
1113
use std::time::Instant;
1214

1315
fn main() {
1416
let input_path = "/home/andrew/Downloads/hjkhjkl_v2.adder";
15-
let mut stream: Raw = Codec::new();
16-
stream.open_reader(input_path).expect("Invalid path");
17-
stream.decode_header().expect("Invalid header");
17+
let tmp = File::open(input_path).unwrap();
18+
let bufreader = BufReader::new(tmp);
19+
let mut compression = <RawInput as ReadCompression<BufReader<File>>>::new();
20+
21+
let mut bitreader = BitReader::endian(bufreader, BigEndian);
22+
let mut reader = Decoder::new(Box::new(compression), &mut bitreader);
1823

1924
let output_path = "/home/andrew/Downloads/temppp_out";
2025
let mut output_stream = BufWriter::new(File::create(output_path).unwrap());
2126

22-
let reconstructed_frame_rate = f64::from(stream.tps / stream.ref_interval);
27+
let reconstructed_frame_rate = f64::from(reader.meta().tps / reader.meta().ref_interval);
2328
println!("reconstructed_frame_rate: {reconstructed_frame_rate}");
2429
// For instantaneous reconstruction, make sure the frame rate matches the source video rate
2530
// assert_eq!(
2631
// stream.tps / stream.ref_interval,
2732
// reconstructed_frame_rate as u32
2833
// );
2934

30-
let mut frame_sequence: FrameSequence<u8> = FramerBuilder::new(stream.plane.clone(), 260)
31-
.codec_version(stream.codec_version, stream.time_mode)
32-
.time_parameters(
33-
stream.tps,
34-
stream.ref_interval,
35-
stream.delta_t_max,
36-
reconstructed_frame_rate,
37-
)
38-
.mode(INSTANTANEOUS)
39-
.source(stream.get_source_type(), stream.source_camera)
40-
.finish();
35+
let mut frame_sequence: FrameSequence<u8> =
36+
FramerBuilder::new(reader.meta().plane.clone(), 260)
37+
.codec_version(reader.meta().codec_version, reader.meta().time_mode)
38+
.time_parameters(
39+
reader.meta().tps,
40+
reader.meta().ref_interval,
41+
reader.meta().delta_t_max,
42+
reconstructed_frame_rate,
43+
)
44+
.mode(INSTANTANEOUS)
45+
.source(reader.get_source_type(), reader.meta().source_camera)
46+
.finish();
4147

4248
let mut now = Instant::now();
4349
let mut frame_count = 0;
4450
loop {
45-
match stream.decode_event() {
51+
match reader.digest_event(&mut bitreader) {
4652
Ok(mut event) => {
4753
if frame_sequence.ingest_event(&mut event) {
4854
match frame_sequence.write_multi_frame_bytes(&mut output_stream) {

adder-codec-rs/examples/framed_video_to_adder.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,26 @@ extern crate core;
33
use adder_codec_rs::transcoder::source::framed::Framed;
44
use adder_codec_rs::transcoder::source::video::{Source, VideoBuilder};
55

6-
use adder_codec_rs::SourceCamera::FramedU8;
7-
use adder_codec_rs::TimeMode;
6+
use adder_codec_core::SourceCamera::FramedU8;
7+
use adder_codec_core::TimeMode;
88
use rayon::current_num_threads;
99
use std::error::Error;
10+
use std::fs::File;
1011
use std::io;
11-
use std::io::Write;
12+
use std::io::{BufWriter, Write};
1213
use std::time::Instant;
1314

1415
fn main() -> Result<(), Box<dyn Error>> {
15-
let mut source = Framed::new(
16+
let file = File::create("/home/andrew/Downloads/events.adder".to_string())?;
17+
let writer = BufWriter::new(file);
18+
19+
let mut source: Framed<BufWriter<File>> = Framed::new(
1620
"/media/andrew/ExternalM2/LAS/GH010017.mp4".to_string(),
1721
false,
1822
0.5,
1923
)?
2024
.frame_start(1420)?
21-
.write_out(
22-
"/home/andrew/Downloads/events.adder".to_string(),
23-
FramedU8,
24-
TimeMode::DeltaT,
25-
)?
25+
.write_out(FramedU8, TimeMode::DeltaT, writer)?
2626
.contrast_thresholds(10, 10)
2727
.show_display(true)
2828
.auto_time_parameters(255, 255 * 30)?;

adder-codec-rs/src/bin/adder_simulproc.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ extern crate core;
22

33
use adder_codec_rs::transcoder::source::video::{Source, VideoBuilder};
44
use adder_codec_rs::utils::simulproc::{SimulProcArgs, SimulProcessor};
5-
use adder_codec_rs::SourceCamera::FramedU8;
6-
use adder_codec_rs::TimeMode;
75

86
use clap::Parser;
97
use rayon::current_num_threads;
108

119
use std::error::Error;
1210
use std::fs::File;
1311

12+
use adder_codec_core::SourceCamera::FramedU8;
13+
use adder_codec_core::TimeMode;
1414
use adder_codec_rs::transcoder::source::framed::Framed;
1515
use std::io::{BufWriter, Cursor};
1616
use std::path::Path;
@@ -74,12 +74,7 @@ async fn main() -> Result<(), Box<dyn Error>> {
7474
if !args.output_events_filename.is_empty() {
7575
let path = Path::new(&args.output_events_filename);
7676
let file = File::create(&path)?;
77-
source = *source.write_out(
78-
args.output_events_filename,
79-
FramedU8,
80-
time_mode,
81-
BufWriter::new(file),
82-
)?;
77+
source = *source.write_out(FramedU8, time_mode, BufWriter::new(file))?;
8378
}
8479

8580
let source_fps = source.source_fps;
@@ -136,13 +131,16 @@ async fn main() -> Result<(), Box<dyn Error>> {
136131

137132
#[cfg(test)]
138133
mod tests {
134+
use adder_codec_core::SourceCamera::FramedU8;
135+
use adder_codec_core::TimeMode;
139136
use adder_codec_rs::transcoder::source::framed::Framed;
140137
use adder_codec_rs::transcoder::source::video::{Source, VideoBuilder};
141138
use adder_codec_rs::utils::simulproc::{SimulProcArgs, SimulProcessor};
142-
use adder_codec_rs::SourceCamera::FramedU8;
143-
use adder_codec_rs::{DeltaT, TimeMode};
139+
use adder_codec_rs::DeltaT;
144140
use std::error::Error;
145141
use std::fs;
142+
use std::fs::File;
143+
use std::io::BufWriter;
146144
use std::path::PathBuf;
147145
use std::process::Command;
148146
use std::thread::sleep;
@@ -186,7 +184,9 @@ mod tests {
186184
args.delta_t_max,
187185
)?;
188186
if !args.output_events_filename.is_empty() {
189-
source = *source.write_out(args.output_events_filename, FramedU8, TimeMode::DeltaT)?;
187+
let file = File::create(args.output_events_filename)?;
188+
let writer = BufWriter::new(file);
189+
source = *source.write_out(FramedU8, TimeMode::DeltaT, writer)?;
190190
}
191191
let ref_time = source.get_ref_time();
192192

0 commit comments

Comments
 (0)