Как я могу получить время начала и окончания слов в аудиофайле с известной расшифровкой с помощью Vosk?Python

Программы на Python
Anonymous
Как я могу получить время начала и окончания слов в аудиофайле с известной расшифровкой с помощью Vosk?

Сообщение Anonymous »

Я использую Vosk (https://alphacephei.com/vosk/) на Python и хочу получить время начала и окончания каждого слова в аудиофайле, и у меня есть расшифровка аудиофайла.
Я использую код, который нашел в Интернете, для преобразования речи в текст с помощью Vosk, и он также дает время начала и окончания каждого слова. К сожалению, транскрипция не идеальна.
Поскольку у меня есть идеальная расшифровка, я хочу сообщить Воску, какая расшифровка правильная, и чтобы она сообщала мне время начала и окончания каждого слова. Возможно ли это?
Вот код, который я сейчас использую:
import wave
import json

from vosk import Model, KaldiRecognizer

model_path = r".\vosk_models\vosk-model-en-us-0.22"
audio_filename = "some_audio_file.wav"

model = Model(model_path)
wf = wave.open(audio_filename, "rb")
rec = KaldiRecognizer(model, wf.getframerate())
rec.SetWords(True) # Include the start and end times for each word in the output

# get the list of JSON dictionaries
results = []
# recognize speech using vosk model
while True:
data = wf.readframes(4000)
if len(data) == 0:
break
if rec.AcceptWaveform(data):
part_result = json.loads(rec.Result())
results.append(part_result)
part_result = json.loads(rec.FinalResult())
results.append(part_result)

wf.close() # close audiofile


Подробнее здесь: https://stackoverflow.com/questions/745 ... -known-tra

Вернуться в «Python»