Performance Issue: FPS does not increase despite lowering/compressing video resolution on Raspberry Pi 5 + IMX296

Ouverte
#367 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
42/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
cpp, raspberry-pi

Piste de recherche

Start by reading the IMX296 sensor driver and its supported sensor modes, then trace how rpicam-vid requests frame rate and image dimensions. Check whether the driver supports cropped sensor readout at the requested 1024×128 size and 240 FPS. Done means identifying whether the requested rate is supported and documenting the relevant configuration or limitation; the issue names no source files or tests.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Description

I am currently building a high-speed camera project using a Raspberry Pi 5 and the Raspberry Pi Global Shutter Camera (IMX296).

My goal is to achieve a higher frame rate (FPS). However, even though I have tried to lower and compress the video resolution using rpicam-vid, the actual FPS remains stagnant and does not increase as expected.

Environment

Hardware: Raspberry Pi 5, Raspberry Pi Global Shutter Camera (IMX296)
OS / Kernel: Raspberry Pi OS (Bookworm)
Software / Tool: rpicam-vid

What I've Tried

I attempted to lower the resolution using the --width and --height arguments in rpicam-vid (for example, dropping it down from the native 1456x1088).
While the output video file size decreases and the resolution changes, the running FPS does not go up. It seems to be capped at the default sensor frame rate.

Question
  1. Does the IMX296 sensor support windowing/cropping (ROI) or specific sensor modes to achieve higher FPS at lower resolutions on the Raspberry Pi 5?
  2. Are there specific rpicam-vid arguments (such as --viewfinder-width/--viewfinder-height or explicit --framerate / --level settings) required to properly unlock higher frame rates?

Any guidance or suggestions from the community or the developers would be greatly appreciated!

盧謙毓, 週二 下午5:19

Description

I am currently building a high-speed camera project using a Raspberry Pi 5 and the Raspberry Pi Global Shutter Camera (IMX296).

My goal is to achieve a higher frame rate (FPS). However, even though I have tried to lower and compress the video resolution using rpicam-vid, the actual FPS remains stagnant and does not increase as expected.

Environment

Hardware: Raspberry Pi 5, Raspberry Pi Global Shutter Camera (IMX296)
OS / Kernel: Raspberry Pi OS (Bookworm)
Software / Tool: rpicam-vid

What I've Tried

I attempted to run the following command to record uncompressed high-speed video directly into a ramdisk:
bash
rpicam-vid --frames 480 --framerate 240 --width 1024 --height 128 --codec yuv420 --denoise cdn_off -n -o /mnt/ramdisk/test.yuv
Observed Behavior:
Although the output resolution successfully changes to 1024x128 and the yuv420 file is saved to /mnt/ramdisk/, the actual frame rate does not reach the requested 240 FPS. It seems to be capped at the sensor's standard hardware/driver limit.

Question
  1. Does the IMX296 sensor driver support a high-speed mode or sensor crop/windowing (ROI) that can unlock higher FPS (like 240 FPS) at lower heights (e.g., 128px) on the Raspberry Pi 5?
  2. Are there any specific configurations needed in /boot/firmware/config.txt or additional rpicam-vid switches required to achieve this?

Any guidance or suggestions from the community or the developers would be greatly appreciated!

Langage dominant
C++
Étoiles
491
Forks
199
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de raspberrypi/libcamera

Toutes les issues de raspberrypi/libcamera

Issues similaires

Plus d'issues C++

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.