diff --git a/src/anki_hsk_creator/constants.py b/src/anki_hsk_creator/constants.py index 69078b8..fb5755d 100644 --- a/src/anki_hsk_creator/constants.py +++ b/src/anki_hsk_creator/constants.py @@ -22,6 +22,10 @@ PHRASES_TYPE = ".phrases" DICT_TYPE = ".dictionary" DICTATION_TYPE = ".dictation" +# time dalays +WORD = 0.1 +COMMA = 0.5 +POINT = 1.0 class LANGUAGES: """Available laguages for translation""" diff --git a/src/anki_hsk_creator/proccessor.py b/src/anki_hsk_creator/proccessor.py index c0f189d..a1a6386 100644 --- a/src/anki_hsk_creator/proccessor.py +++ b/src/anki_hsk_creator/proccessor.py @@ -8,7 +8,7 @@ import argostranslate.translate import torchaudio # Local -from .constants import LANGUAGES +from .constants import LANGUAGES, WORD, COMMA from .utility import CCCEDICT, TTS, DictionaryResult, ProcessFile, TranslationResult # Constants @@ -27,7 +27,8 @@ def dictation_process( for n, line in enumerate(text_lines): line = line.strip() line = " ".join(line.split()) - line = line.replace(",", ", 。。。 ") + audio_line = f"[pause:{WORD}s]".join(line) + audio_line = audio_line.replace(",", f",[pause:{COMMA}s]") audio_path = process_file.resources / f"N{n:03n}.wav" if not audio_path.exists(): audio = TTS.MODEL.generate( @@ -51,11 +52,12 @@ def translator_process( for n, line in enumerate(text_lines): line = line.strip() line = " ".join(line.split()) - line = line.replace(",", ", 。。。 ") + audio_line = "[pause:0.1s]".join(line) + audio_line = audio_line.replace(",", ",[pause:0.5s]") audio_path = process_file.resources / f"N{n:03n}.wav" if not audio_path.exists(): audio = TTS.MODEL.generate( - f"{line}。", language_id=LANGUAGES.CN, **TTS.DEFAULTS + f"{audio_line}。", language_id=LANGUAGES.CN, **TTS.DEFAULTS ) torchaudio.save(audio_path, audio, TTS.MODEL.sr) translated = argostranslate.translate.translate(