Как записать видео с 90 FPS с Picamera V2 в Python - PullRequest
1 голос
/ 22 мая 2019

Я хочу использовать Picamera V2 через Raspberry Pi 3 модель B + с 90 FPS и разрешением 1280x720 в скрипте Python. Согласно https://picamera.readthedocs.io/en/release-1.13/fov.html Picamera V2 должна быть в состоянии работать с этими настройками, но в моем скрипте Python этого нет. Как мне решить проблему? Есть ли какая-нибудь команда для повышения уровня H.264 до 4,2 в Python?

Если я использую команду raspivid -o video.h264 -md 6 -fps 90 -w 1280 -h 720 через консоль, я получаю сообщение Too many macroblocks/s: Increasing H264 Level to 4.2, но она записывает видео с (почти) 90 FPS

Если я запускаю следующий код, как я хотел бы использовать камеру, я получаю сообщение об ошибке. Использование того же сценария с использованием camera.framerate = 60 работает совершенно нормально.

import picamera
import subprocess

camera = picamera.PiCamera()
camera.resolution = (1280, 720)
camera.sensor_mode = 6
camera.framerate = 90
camera.start_recording('video.h264')
camera.wait_recording(10)
camera.stop_recording()
camera.close()

Сообщение об ошибке:

Traceback (most recent call last):
  File "/home/pi/GEA/video.py", line 8, in <module>
    camera.start_recording('video.h264')
  File "/usr/lib/python3/dist-packages/picamera/camera.py", line 1046, in start_recording
    camera_port, output_port, format, resize, **options)
  File "/usr/lib/python3/dist-packages/picamera/camera.py", line 723, in _get_video_encoder
    self, camera_port, output_port, format, resize, **options)
  File "/usr/lib/python3/dist-packages/picamera/encoders.py", line 601, in __init__
    parent, camera_port, input_port, format, resize, **options)
  File "/usr/lib/python3/dist-packages/picamera/encoders.py", line 187, in __init__
    self._create_encoder(format, **options)
  File "/usr/lib/python3/dist-packages/picamera/encoders.py", line 736, in _create_encoder
    'level' % macroblocks_per_s_limit)
picamera.exc.PiCameraValueError: output resolution and framerate exceeds macroblocks/s limit (245760) for the selected H.264 profile and level
```
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...