При инициализации службы распознавания речи Google мы видим ответ примерно через 300 миллисекунд. Однако если мы остановим службу reco и запустим ее снова, каждый последующий «запуск» будет иметь гораздо более длительную задержку, прежде чем служба будет готова начать прием нашего аудиопотока. Мы видели этот интервал времени от 5 до 11 секунд.
Кто-нибудь знает, почему это может происходить?
- ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ -
2019-05-30:
Наша команда разработчиков внимательно следит за примером, который мы нашли здесь . Разница лишь в том, что мы не отправляем файл, а перенаправляем аудиопоток в этот сервис.
При отладке нашего кода мы видим, что задержка находится в пределах этих трех строк.
auto creds = grpc::GoogleDefaultCredentials();
auto channel = grpc::CreateChannel( "speech.googleapis.com", creds );
std::unique_ptr<Speech::Stub> speech( Speech::NewStub( channel ) );
(Эти три строки - первые три строки в нашем потоке создания потока.)