Редактирование речи в текст с метками времени - PullRequest
0 голосов
/ 07 ноября 2018

Я использую Речь, чтобы текстировать Google API со словами метки времени. Пример:

{ "transcript": "okay so what ...(etc)...",
"words": [
{"startTime": "1.400s", "endTime": "1.800s", "word": "okay"},
{"startTime": "1.800s","endTime": "2.300s","word": "so"},
{"startTime": "2.300s,"endTime": "2.400s","word": "what"}]}

Проблема в том, что транскрипция не на 100% надежна и требует вмешательства человека, чтобы исправить некоторые слова. В моей системе я помещу эти слова в TextArea (html5), и кто-то исправит текст, но я не хочу потерять временную метку слов, и в конце концов, новые слова могут быть вставлены или существующие слова могут быть удаляется между "токенами". Я думал о двух подходах:

  • Первый отслеживает каждое событие keyDown и использует позицию курсора, чтобы знать, куда пользователь вставляет или удаляет какой-либо символ.

    Проблема с этими подходами заключается в том, что мне нужно хранить индекс начальной и конечной позиции каждого токена, и для каждой операции вставки / удаления мне нужно сделать сдвиг всего списка, что даст мне точный алгоритм ,

  • Второй подход состоит в том, чтобы пометить исправленный текст и, в некотором роде, сравнить два помеченных текста, чтобы объединить свойства меток времени слов.

У кого-нибудь есть советы, как мне решить эту проблему?

...