no warnings but still nothing sane coming out...
parent
d631def834
commit
62e764436a
|
|
@ -1,6 +1,5 @@
|
|||
use whisper_rs::{WhisperContext, FullParams, SamplingStrategy, WhisperError};
|
||||
use cpal::traits::{HostTrait, DeviceTrait, StreamTrait};
|
||||
use cpal::Data;
|
||||
use signal_hook::{iterator::Signals, consts::signal::SIGINT};
|
||||
use std::time::{Duration, Instant};
|
||||
|
||||
|
|
@ -37,16 +36,15 @@ fn main() {
|
|||
|
||||
let mut buffer = vec![];
|
||||
let mut last = Instant::now();
|
||||
let fiveSeconds = Duration::new(15, 0);
|
||||
let five_seconds = Duration::new(15, 0);
|
||||
let stream = device.build_input_stream(
|
||||
&cfg.clone().into(),
|
||||
&cfg.into(),
|
||||
move |data: &[f32], _: &cpal::InputCallbackInfo| {
|
||||
let before = buffer.len();
|
||||
data.iter()
|
||||
.map(|x| *x)
|
||||
.step_by(channels)
|
||||
.for_each(|x| buffer.push(x));
|
||||
if Instant::now() - last > fiveSeconds {
|
||||
if Instant::now() - last > five_seconds {
|
||||
let result = w.transcribe(&buffer).unwrap();
|
||||
println!("({}) {}", buffer.len(), result);
|
||||
|
||||
|
|
@ -62,8 +60,10 @@ fn main() {
|
|||
eprintln!("input error: {}", err)
|
||||
},
|
||||
None,
|
||||
);
|
||||
).unwrap();
|
||||
stream.play().unwrap();
|
||||
|
||||
eprintln!("listening on {}", device.name().unwrap());
|
||||
let mut signals = Signals::new(&[SIGINT]).unwrap();
|
||||
for sig in signals.forever() {
|
||||
println!("sig {}", sig);
|
||||
|
|
|
|||
Loading…
Reference in New Issue