Потоковая передача аудио-буфера с веб-страницы в C # Google Cloud Speech to Text SDK и получение 400 ошибок - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть требование добавить текст к веб-странице.Я не могу найти достаточно документации, чтобы сказать мне, какой будет лучший подход.Я прочитал сообщения и рассмотрел образцы Потоковое аудио из C # .

ОБНОВЛЕНИЕ: Я перешел в формат WAV на клиенте перед отправкой на сервер.В результате получается файл, который распознается как WAV без вывода.

ОБНОВЛЕНИЕ [20181004]: Я могу успешно отправить запись и сохранить полный файл WAV, а затемотправьте его в Google Speech API branch_Record-in-browser-before-sending-all.В ветке также содержится код, который успешно отправляет фрагменты данных WAV на сервер, но Google Speech API не возвращает результаты для этих аудио частей

ОБНОВЛЕНИЕ [20181005]: Попытка использовать ConcurrentQueue для реализации потоковой передачи без успеха.Самый последний код перемещен в ветку develop и установлен по умолчанию.

ОБНОВЛЕНИЕ [20181012] Попытка скопировать и преобразовать код из https://github.com/googlecodelabs/speaking-with-a-webpage

Мой подход: Пример AspnetCore Source + WebPage

Я записываю звук с микрофона и отправляю буфер через веб-сокеты в веб-приложение AspNetCore.В веб-приложении я попытался буферизовать данные и выложить куски по 32 Кб.Код локального буфера был введен, чтобы увидеть, исправит ли это 400 ошибок.

Код работает для отправки данных в Google Speech API.В консоли Google я вижу, что 100% моих вызовов «WriteAsync» вернули ошибку 400, но я понятия не имею, где взять детали.Я также не получаю никаких ответов от API, позволяющих мне распечатать подробности ошибки.

Я предполагаю, что данные, отправляемые в речевой API, имеют неправильный формат или размер.

[20181004] Удалены устаревшие фрагменты кода

...