Как использовать FFmpeg и OpenAI Whisper для расшифровки потока RTMP?
Мне удалось использовать FFmpeg с OpenAI Whisper для расшифровки аудиофайла в текст.
Я хотел бы вместо использования заранее записанного файла передать поток RTMP в FFmpeg для расшифровки в режиме реального времени.
1 ответ
Я добился успеха с этим сценарием оболочки , который требует от вас наличия:inotifywait
и установлено:
ffmpeg -i STREAM_URL -f segment -segment_time 30 -strftime 1 %s.mp4 -v verbose 2>&1 |
grep -Po --line-buffered "Opening '\K\d+" |
xargs -I _ bash -c 'echo; date -d @_; inotifywait -qqe CLOSE _.mp4; whisper --model medium.en _.mp4'
Команда сохраняет 30-секундные сегменты в текущем каталоге в формате mp4, названном по временной метке Unix. Затем его выходные данные фильтруются для отладочных сообщений, которые печатаются, когда он открывает файл сегмента для записи. Команда напечатает время открытия каждого файла сегмента, подождитеffmpeg
закрыть его, а затем позвонитьwhisper
.