Я работаю над проектом, который включает в себя передачу данных в FFmpeg из библиотеки Python PiCamera (на RPI3).Недавно я увидел, что кто-то еще получил ответ для такой работы:
Как передать видео Picamera в FFMPEG с подпроцессом (Python)
Но когда я пытаюсь запуститьэтот код, я получаю эту ошибку от FFmpeg:
pipe :: недопустимые данные, найденные при обработке ввода.
Если я задаю формат ввода для FFmpeg следующим образом:
ffmpeg -f h264 -i - -vcodec copy test.mp4
Я получил это:
Could not find codec parameters for stream 0 (Video: h264, none):
unspecified size
COnsider increasing the value for the analyzeduration and probesize options.
Весь мой код выглядит следующим образом:
import picamera
import subprocess
import time
command = "ffmpeg -f h264 -i - -vcodec copy test.h264"
ffmpeg = subprocess.Popen(command, stdin=subprocess.PIPE, shell=True)
camera = picamera.PiCamera(resolution=(800,480), framerate=25)
camera.start_recording(ffmpeg.stdin, format='h264', bitrate=2000000)
Я подозреваю, что это проблема с ffmpeg, не распознающим должным образом данные, поступающие из канала подпроцесса.Кто-нибудь знает, как это сделать правильно?Спасибо.