Closed subnetsRU closed 4 years ago
VAD служит для определения времени начала и конца фразы. По умолчанию он включен для Recognize и StreamingRecognize. Его можно выключить для Recognize, передав RecognitionConfig.do_not_perform_vad = True. Это может помочь, если аудиофайл уже разделён на фразы на клиентской стороне, и нужно только распознать эти фразы. Для StreamingRecognize в текущей версии API VAD выключить нельзя, но на подходе новая, в которой можно будет использовать параметр single_utterance для того, чтобы распознать в потоке одну фразу и завершить распознавание по её окончании.
В VoiceActivityDetectionConfig довольно много параметров, большая часть из них не будет иметь значения в новой API, но хочется выделить один, который будет. Это silence_duration_threshold - количество секунд, которое должно пройти с того момента, как закончилась речь, чтобы VAD считал это концом фразы и прислал финальную гипотезу.
Попробовал выставить silence_duration_threshold. Итоговый конфиг:
sttServiceConfig = {
streaming_config: {
config: {
encoding: 'LINEAR16',
sample_rate_hertz: 8000,
language_code: "ru-RU",
max_alternatives: 1,
num_channels: 1,
},
interim_results_config:{
enable_interim_results: true,
interval: 2,
},
vad_config: {
silence_duration_threshold: 0.7
}
}
};
Мне сказали, что вы передали что параметр silence_duration_threshold не видите.
Я не верно интерпретировал proto ?
Осознал свой косяк. vad_config должен быть внутри config. Сейчас переделаю.
Добавил в репозиторий примеры c silence_duration_threshold
Доброго дня.
В stt.proto есть упоминание о Voice Activity Detection (VoiceActivityDetectionConfig)
Хочу попросить Вас написать пару слов об этом. Т.е. для чего именно тут служит VAD и каково его состояние по умолчанию. Он включен ? Он выключен ? Стоит ли его включать ? Описание параметров ?
Хоть пару слов. Спасибо.