parent
1e56d44b2f
commit
3b6ae8801c
|
|
@ -69,28 +69,3 @@ impl Listener {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
|
||||||
mod tests {
|
|
||||||
use super::*;
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn test_transcribe_tiny_jfk_wav() {
|
|
||||||
main(
|
|
||||||
Flags {
|
|
||||||
model_path: None,
|
|
||||||
model_buffer: Some(include_bytes!("../../models/ggml-tiny.en.bin").to_vec()),
|
|
||||||
threads: 8,
|
|
||||||
stream_step: 0,
|
|
||||||
stream_retain: 0.0,
|
|
||||||
stream_head: 0.0,
|
|
||||||
stream_tail: 0.0,
|
|
||||||
wav: Some("../gitea-whisper-rs/sys/whisper.cpp/bindings/go/samples/jfk.wav".to_string()),
|
|
||||||
debug: false,
|
|
||||||
},
|
|
||||||
| result | {
|
|
||||||
assert!(result.is_ok());
|
|
||||||
assert_eq!(result.unwrap().to_string(), " And so my fellow Americans ask not what your country can do for you ask what you can do for your country.");
|
|
||||||
},
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -563,6 +563,14 @@ version = "0.4.12"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
|
checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "listen-lib"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"cpal",
|
||||||
|
"signal-hook",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lock_api"
|
name = "lock_api"
|
||||||
version = "0.4.11"
|
version = "0.4.11"
|
||||||
|
|
@ -872,6 +880,7 @@ name = "rust-whisper-baked"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"clap",
|
"clap",
|
||||||
|
"listen-lib",
|
||||||
"rust-whisper-baked-lib",
|
"rust-whisper-baked-lib",
|
||||||
"rust-whisper-lib",
|
"rust-whisper-lib",
|
||||||
]
|
]
|
||||||
|
|
@ -890,8 +899,6 @@ dependencies = [
|
||||||
"byteorder",
|
"byteorder",
|
||||||
"chrono",
|
"chrono",
|
||||||
"clap",
|
"clap",
|
||||||
"cpal",
|
|
||||||
"signal-hook",
|
|
||||||
"tokio",
|
"tokio",
|
||||||
"wav",
|
"wav",
|
||||||
"whisper-rs",
|
"whisper-rs",
|
||||||
|
|
|
||||||
|
|
@ -8,4 +8,5 @@ edition = "2021"
|
||||||
[dependencies]
|
[dependencies]
|
||||||
rust-whisper-lib = { path = "../rust-whisper-lib" }
|
rust-whisper-lib = { path = "../rust-whisper-lib" }
|
||||||
rust-whisper-baked-lib = { path = "../rust-whisper-baked-lib" }
|
rust-whisper-baked-lib = { path = "../rust-whisper-baked-lib" }
|
||||||
|
listen-lib = { path = "../listen-lib" }
|
||||||
clap = { version = "4.4.10", features = ["derive"] }
|
clap = { version = "4.4.10", features = ["derive"] }
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,29 @@
|
||||||
use rust_whisper_lib;
|
use rust_whisper_lib;
|
||||||
use rust_whisper_baked_lib;
|
use rust_whisper_baked_lib;
|
||||||
use clap::Parser;
|
use clap::Parser;
|
||||||
|
use listen_lib;
|
||||||
|
use std::thread;
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let flags = rust_whisper_lib::Flags::parse();
|
let flags = rust_whisper_lib::Flags::parse();
|
||||||
rust_whisper_baked_lib::main(
|
let (send, recv) = std::sync::mpsc::sync_channel(100);
|
||||||
flags,
|
|
||||||
|result: Result<rust_whisper_lib::Whispered, String>| {
|
eprintln!("rust whisper baked lib channel...");
|
||||||
match result {
|
thread::spawn(move || {
|
||||||
Ok(whispered) => { println!("{}", whispered.to_string()); },
|
rust_whisper_baked_lib::channel(
|
||||||
Err(msg) => { eprintln!("error: {}", msg); },
|
flags,
|
||||||
};
|
|result: Result<rust_whisper_lib::Transcribed, String>| {
|
||||||
},
|
match result {
|
||||||
);
|
Ok(transcribed) => { println!("{}", transcribed.to_string()); },
|
||||||
|
Err(msg) => { eprintln!("error: {}", msg); },
|
||||||
|
};
|
||||||
|
},
|
||||||
|
recv,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
eprintln!("listen lib main...");
|
||||||
|
listen_lib::main(|data| {
|
||||||
|
send.send(data).unwrap();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,11 +0,0 @@
|
||||||
[package]
|
|
||||||
name = "rust-whisper"
|
|
||||||
version = "0.1.0"
|
|
||||||
edition = "2021"
|
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
rust-whisper-lib = { path = "../rust-whisper-lib" }
|
|
||||||
listen-lib = { path = "../listen-lib" }
|
|
||||||
clap = { version = "4.4.10", features = ["derive"] }
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
#RUSTFLAGS="-Clink-args=-lstd++" \
|
|
||||||
|
|
||||||
export C_INCLUDE_PATH="$C_INCLUDE_PATH:$PWD/.."
|
|
||||||
export LIBRARY_PATH="$LIBRARY_PATH:$PWD/.."
|
|
||||||
|
|
||||||
cargo "$@"
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
use rust_whisper_lib;
|
|
||||||
use listen_lib;
|
|
||||||
use clap::Parser;
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
let flags = rust_whisper_lib::Flags::parse();
|
|
||||||
rust_whisper_lib::main(
|
|
||||||
flags,
|
|
||||||
|result: Result<rust_whisper_lib::Whispered, String>| {
|
|
||||||
match result {
|
|
||||||
Ok(whispered) => { println!("{}", whispered.to_string()); },
|
|
||||||
Err(msg) => { eprintln!("error: {}", msg); },
|
|
||||||
};
|
|
||||||
},
|
|
||||||
);
|
|
||||||
}
|
|
||||||
Loading…
Reference in New Issue