From c803be4ed448fb33ca554dbf52c1c7895defe730 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Tue, 6 Aug 2024 20:23:35 -0400 Subject: [PATCH] provide reference language --- .../job_types/gpt_sovits/gpt_sovits_inference_command.rs | 9 ++++++++- .../tts_inference/process_single_gpt_sovits_tts_job.rs | 5 ++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/crates/service/job/inference_job/src/job/job_types/gpt_sovits/gpt_sovits_inference_command.rs b/crates/service/job/inference_job/src/job/job_types/gpt_sovits/gpt_sovits_inference_command.rs index 2e3f7b7df7..e096593712 100644 --- a/crates/service/job/inference_job/src/job/job_types/gpt_sovits/gpt_sovits_inference_command.rs +++ b/crates/service/job/inference_job/src/job/job_types/gpt_sovits/gpt_sovits_inference_command.rs @@ -51,13 +51,16 @@ pub struct InferenceArgs<'s> { pub input_text_file: &'s Path, pub gpt_model_path: &'s Path, pub sovits_model_path: &'s Path, + pub reference_audio_path: Option<&'s Path>, pub reference_transcript_path: Option<&'s Path>, + pub reference_language : Option<&'s str>, + pub output_audio_directory: &'s Path, pub maybe_reference_free: Option, pub maybe_temperature: Option, - pub maybe_target_language: Option, + pub maybe_target_language: Option<&'s str>, } impl GptSovitsInferenceCommand { @@ -161,6 +164,10 @@ impl GptSovitsInferenceCommand { if let Some(reference_transcript_path) = args.reference_transcript_path { command.push_str(&format!(" --ref_text {}", path_to_string(reference_transcript_path))); } + + if let Some(ref_language) = args.reference_language { + command.push_str(&format!(" --ref_language {}", ref_language)); + } } command.push_str(&format!(" --output_path {}", path_to_string(args.output_audio_directory))); diff --git a/crates/service/job/inference_job/src/job/job_types/gpt_sovits/tts_inference/process_single_gpt_sovits_tts_job.rs b/crates/service/job/inference_job/src/job/job_types/gpt_sovits/tts_inference/process_single_gpt_sovits_tts_job.rs index 187b3f9227..fbb8c4fd34 100644 --- a/crates/service/job/inference_job/src/job/job_types/gpt_sovits/tts_inference/process_single_gpt_sovits_tts_job.rs +++ b/crates/service/job/inference_job/src/job/job_types/gpt_sovits/tts_inference/process_single_gpt_sovits_tts_job.rs @@ -109,6 +109,8 @@ pub async fn process_single_gpt_sovits_tts_job( _ => (None, None), }; + const DEFAULT_LANGUAGE : &str = "english"; + let inference_start_time = Instant::now(); let command_exit_status = gpt_sovits_deps @@ -121,10 +123,11 @@ pub async fn process_single_gpt_sovits_tts_job( sovits_model_path: &sovits_model_path, reference_audio_path: reference_audio_path.as_deref(), reference_transcript_path: reference_transcript_path.as_deref(), + reference_language: Some(DEFAULT_LANGUAGE), output_audio_directory: &output_dir, maybe_reference_free: None, maybe_temperature: None, - maybe_target_language: Some("english".to_string()), + maybe_target_language: Some(DEFAULT_LANGUAGE), }); let inference_duration = Instant::now().duration_since(inference_start_time);