aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/args.rs5
-rw-r--r--src/main.rs10
2 files changed, 15 insertions, 0 deletions
diff --git a/src/args.rs b/src/args.rs
index c27ff78..679d8e1 100644
--- a/src/args.rs
+++ b/src/args.rs
@@ -23,6 +23,11 @@ pub struct DMVOPArguments {
// Show help
#[arg(long = "help", short = 'h')]
pub help: bool,
+
+ // Instant mode — aggressive VAD for near-real-time output
+ #[arg(long = "instant")]
+ pub instant: bool,
+
// Verbose output (show debug messages)
#[arg(long = "verbose", short = 'V')]
pub verbose: bool,
diff --git a/src/main.rs b/src/main.rs
index 15f23f7..fabf16c 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -116,6 +116,16 @@ async fn main() {
let mut builder = EngineBuilder::new().app_name("dmvop").model(model);
+ if args.instant {
+ debug_log!("[dmvop] Instant mode: aggressive VAD for near-real-time output");
+ builder = builder
+ .vad_voiced_onset_ms(40)
+ .vad_whisper_onset_ms(60)
+ .segment_max_duration_ms(800)
+ .segment_word_break_grace_ms(100)
+ .word_break_segmentation_enabled(true);
+ }
+
if let Some(ref lang) = args.lang {
debug_log!("[dmvop] Language hint: {}", lang);
builder = builder.language(lang.as_str());