fir
This commit is contained in:
11
src/main.rs
11
src/main.rs
@ -1,4 +1,5 @@
|
||||
use crate::agc::Agc;
|
||||
use crate::fir::Fir;
|
||||
use crate::iq_reader::FileSource;
|
||||
use std::error::Error;
|
||||
|
||||
@ -10,17 +11,21 @@ mod utils;
|
||||
fn main() -> Result<(), Box<dyn Error>> {
|
||||
let source = FileSource::new("test.iq", 32769)?;
|
||||
|
||||
// for chunk in source {
|
||||
// println!("{chunk :?}");
|
||||
// }
|
||||
// TODO: make a clean pipline use like GNU radio with iterators (like chunk.agc(...).fir(...)...)
|
||||
|
||||
// 20 MSps
|
||||
let mut agc = Agc::new(20_000_000.0, 0.1, 0.001, 100.0);
|
||||
|
||||
// Fir coefs
|
||||
let taps = [1.0; 64];
|
||||
// Fir
|
||||
let mut fir = Fir::<64>::new(taps, 4);
|
||||
|
||||
// Apply Auto Gain Control
|
||||
for chunk_r in source {
|
||||
let mut chunk = chunk_r?;
|
||||
agc.process_chunk(&mut chunk);
|
||||
fir.process_chunk(&mut chunk);
|
||||
}
|
||||
|
||||
Ok(())
|
||||
|
||||
Reference in New Issue
Block a user