add detailed debug logging for sidecar execution
This commit is contained in:
1 parent
c9f0147c0d
commit
92cf1fef97
1 file changed
+38
-10
@@ -75,16 +75,44 @@ impl Transcriber for SherpaOnnxTranscriber {
|
||||
let sidecar = self.sidecar_name().to_string();
|
||||
let threads = self.num_threads();
|
||||
let mut program = locate_sidecar(&sidecar, env!("CARGO_MANIFEST_DIR"));
|
||||
let output = program
|
||||
.arg(format!("--tokens={}", tokens.display()))
|
||||
.arg(format!("--encoder={}", encoder.display()))
|
||||
.arg(format!("--decoder={}", decoder.display()))
|
||||
.arg(format!("--joiner={}", joiner.display()))
|
||||
.arg("--model-type=nemo_transducer")
|
||||
.arg(format!("--num-threads={threads}"))
|
||||
.arg(&input.audio_path)
|
||||
.output()
|
||||
.map_err(|error| AppError::Transcription(error.to_string()))?;
|
||||
|
||||
// Debug: log do comando completo
|
||||
eprintln!("[transcript:debug] Executando sidecar: {:?}", program.get_program());
|
||||
eprintln!("[transcript:debug] CWD configurado: {:?}", program.get_current_dir());
|
||||
|
||||
let args = vec![
|
||||
format!("--tokens={}", tokens.display()),
|
||||
format!("--encoder={}", encoder.display()),
|
||||
format!("--decoder={}", decoder.display()),
|
||||
format!("--joiner={}", joiner.display()),
|
||||
"--model-type=nemo_transducer".to_string(),
|
||||
format!("--num-threads={threads}"),
|
||||
input.audio_path.to_string_lossy().to_string(),
|
||||
];
|
||||
|
||||
eprintln!("[transcript:debug] Args: {:?}", args);
|
||||
|
||||
program.args(&args);
|
||||
|
||||
// Tenta spawn + wait_with_output para ter mais controle
|
||||
let child = program
|
||||
.spawn()
|
||||
.map_err(|error| {
|
||||
eprintln!("[transcript:debug] Falha ao fazer spawn: {}", error);
|
||||
AppError::Transcription(format!("spawn falhou: {}", error))
|
||||
})?;
|
||||
|
||||
eprintln!("[transcript:debug] Processo iniciado com PID: {}", child.id());
|
||||
|
||||
let output = child.wait_with_output()
|
||||
.map_err(|error| {
|
||||
eprintln!("[transcript:debug] Falha ao esperar output: {}", error);
|
||||
AppError::Transcription(format!("wait_with_output falhou: {}", error))
|
||||
})?;
|
||||
|
||||
eprintln!("[transcript:debug] Processo terminou com status: {:?}", output.status);
|
||||
eprintln!("[transcript:debug] stdout length: {}", output.stdout.len());
|
||||
eprintln!("[transcript:debug] stderr length: {}", output.stderr.len());
|
||||
|
||||
let attempt = TranscriptionAttempt {
|
||||
stage: if output.status.success() {
|
||||
|
||||
Reference in new issue
Block a user