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

У меня есть требование добавить речь к тексту с веб-страницы. Я не могу найти достаточно документации, чтобы сказать мне, какой будет лучший подход. Я читал посты и просматривал образцы Stream Audio из 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] Удалены устаревшие фрагменты кода

0 ответов

Другие вопросы по тегам