commit
f32eeef4dd
2 changed files with 20 additions and 25 deletions
|
|
@ -551,7 +551,7 @@ def add_shared_args(parser):
|
||||||
|
|
||||||
def asr_factory(args, logfile=sys.stderr):
|
def asr_factory(args, logfile=sys.stderr):
|
||||||
"""
|
"""
|
||||||
Creates and configures an ASR instance based on the specified backend and arguments.
|
Creates and configures an ASR and ASR Online instance based on the specified backend and arguments.
|
||||||
"""
|
"""
|
||||||
backend = args.backend
|
backend = args.backend
|
||||||
if backend == "openai-api":
|
if backend == "openai-api":
|
||||||
|
|
@ -576,8 +576,23 @@ def asr_factory(args, logfile=sys.stderr):
|
||||||
print("Setting VAD filter", file=logfile)
|
print("Setting VAD filter", file=logfile)
|
||||||
asr.use_vad()
|
asr.use_vad()
|
||||||
|
|
||||||
return asr
|
language = args.lan
|
||||||
|
if args.task == "translate":
|
||||||
|
asr.set_translate_task()
|
||||||
|
tgt_language = "en" # Whisper translates into English
|
||||||
|
else:
|
||||||
|
tgt_language = language # Whisper transcribes in this language
|
||||||
|
|
||||||
|
# Create the tokenizer
|
||||||
|
if args.buffer_trimming == "sentence":
|
||||||
|
tokenizer = create_tokenizer(tgt_language)
|
||||||
|
else:
|
||||||
|
tokenizer = None
|
||||||
|
|
||||||
|
# Create the OnlineASRProcessor
|
||||||
|
online = OnlineASRProcessor(asr,tokenizer,logfile=logfile,buffer_trimming=(args.buffer_trimming, args.buffer_trimming_sec))
|
||||||
|
|
||||||
|
return asr, online
|
||||||
## main:
|
## main:
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
@ -605,22 +620,8 @@ if __name__ == "__main__":
|
||||||
duration = len(load_audio(audio_path))/SAMPLING_RATE
|
duration = len(load_audio(audio_path))/SAMPLING_RATE
|
||||||
print("Audio duration is: %2.2f seconds" % duration, file=logfile)
|
print("Audio duration is: %2.2f seconds" % duration, file=logfile)
|
||||||
|
|
||||||
asr = asr_factory(args, logfile=logfile)
|
asr, online = asr_factory(args, logfile=logfile)
|
||||||
language = args.lan
|
|
||||||
if args.task == "translate":
|
|
||||||
asr.set_translate_task()
|
|
||||||
tgt_language = "en" # Whisper translates into English
|
|
||||||
else:
|
|
||||||
tgt_language = language # Whisper transcribes in this language
|
|
||||||
|
|
||||||
|
|
||||||
min_chunk = args.min_chunk_size
|
min_chunk = args.min_chunk_size
|
||||||
if args.buffer_trimming == "sentence":
|
|
||||||
tokenizer = create_tokenizer(tgt_language)
|
|
||||||
else:
|
|
||||||
tokenizer = None
|
|
||||||
online = OnlineASRProcessor(asr,tokenizer,logfile=logfile,buffer_trimming=(args.buffer_trimming, args.buffer_trimming_sec))
|
|
||||||
|
|
||||||
|
|
||||||
# load the audio into the LRU cache before we start the timer
|
# load the audio into the LRU cache before we start the timer
|
||||||
a = load_audio_chunk(audio_path,0,1)
|
a = load_audio_chunk(audio_path,0,1)
|
||||||
|
|
|
||||||
|
|
@ -25,16 +25,10 @@ SAMPLING_RATE = 16000
|
||||||
|
|
||||||
size = args.model
|
size = args.model
|
||||||
language = args.lan
|
language = args.lan
|
||||||
|
asr, online = asr_factory(args)
|
||||||
asr = asr_factory(args)
|
|
||||||
if args.task == "translate":
|
|
||||||
asr.set_translate_task()
|
|
||||||
tgt_language = "en"
|
|
||||||
else:
|
|
||||||
tgt_language = language
|
|
||||||
|
|
||||||
min_chunk = args.min_chunk_size
|
min_chunk = args.min_chunk_size
|
||||||
|
|
||||||
|
|
||||||
if args.buffer_trimming == "sentence":
|
if args.buffer_trimming == "sentence":
|
||||||
tokenizer = create_tokenizer(tgt_language)
|
tokenizer = create_tokenizer(tgt_language)
|
||||||
else:
|
else:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue