это документы Google по речевым API: https://cloud.google.com/speech/docs/sync-recognize
Я пробую этот API в течение 2 недель. но до сих пор не могу решить мою основную цель (перевод в прямом эфире).
Я использую PHP. (другие предложения разрешены, я найду сам)
Что я могу сделать за 2 недели:
Синхронное распознавание речи (<= 1min)
Асинхронное распознавание речи (> 1 мин и <= 80 мин). ЗаметкаЯ могу изменить это, чтобы принять 3 часа видео.
Распознавание живой речи с микрофона: https://www.google.com/intl/en/chrome/demos/speech.html
ОБНОВИТЬ: Выполните потоковый API со звуком продолжительностью менее 6 секунд.
Что я не могу сделать, это:
Как транслировать прямые трансляции. Например: потоковое радио (задержка допускается)
Как перевести при воспроизведении видео / аудио. (задержка допускается)
ОБНОВИТЬ:
Я также задаю вопрос на Google GitHub тоже. но так как нет ответа, я спрашиваю Вот.
Резюме:
я могу выполнять потоковую передачу речи, но только с 6-секундным звуком. Это не то, что я ожидал. Я ожидаю признания неограниченной продолжительности (кажется, мы не знаем, когда закончится потоковое радио).
Спасибо за любую помощь. я очень ценю это
#ОБНОВИТЬ:
чтобы подтвердить, что я не могу использовать видео более 6 секунд. так что я пишу это:
я пробую это видео interview.mp4 и преобразовать его с помощью ffmpeg в interview.flac используя это ffmpeg -i interview.mp4 -c:a flac -ar 16000 -ac 1 -sample_fmt s16 interview.flac
,
я использую это библиотека для расшифровки видео с помощью этой команды:
php speech.php transcribe --encoding FLAC --language-code en-US --sample-rate 16000 --stream interview.flac
и результат:
[Google\GAX\ApiException]
Invalid 'audio_content': too long.
это не может быть слишком долго, потому что продолжительность видео составляет всего 48 секунд. это мета из результата ffmpeg:
Output #0, flac, to 'interview.flac':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf57.72.101
Stream #0:0(und): Audio: flac, 16000 Hz, mono, s16, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
encoder : Lavc57.92.100 flac
size= 810kB time=00:00:48.01 bitrate= 138.1kbits/s speed= 108x
video:0kB audio:801kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.019650%
Вам нужно использовать StreamingRecognize
Вызов API. Вы можете найти пример этого в PHP Вот.
Других решений пока нет …