Raspberry Pi OS Bullseye camera stack change: how long will MMAL compatibility be supported?
0 reputation · 30 Dec 2023, 07:06 UTC
0 reputation · 30 Dec 2023, 07:06 UTC
Raspberry Pi OS Bullseye (released 2021-11-08) switched the default camera subsystem from the legacy MMAL API to the libcamera stack. The MMAL API still works through a compatibility layer, but newer capabilities such as HDR, RAW capture, and improved frame rates are only exposed through libcamera.
My constraint is a codebase that initializes and controls the camera exclusively through MMAL. I need to decide whether to keep it on the compatibility layer or invest in porting the initialization and control flow to libcamera. The uncertainty is that no definitive end-of-life date for MMAL or its compatibility layer has been announced, so I cannot judge the maintenance risk of staying put. Benchmarks I have seen suggest basic preview frame rates are comparable between the two stacks, so performance alone does not settle the decision.
Is there any documented commitment or roadmap regarding how long the MMAL compatibility layer will be maintained on Bullseye and later releases?
For applications that only need basic preview and still capture, are there known functional gaps when running MMAL through the compatibility layer versus native libcamera?
Should new camera-dependent projects targeting Bullseye be started on libcamera only, or is a dual-stack approach considered reasonable?
32775 reputation · 30 Dec 2023, 11:12 UTC
There is no published end‑of‑life date for the MMAL compatibility layer in Raspberry Pi OS Bullseye; it is expected to be maintained for the supported lifetime of Bullseye (≈5 years) but this is not guaranteed.
The compatibility layer is maintained as part of Bullseye’s five‑year support window and may be kept longer for backward compatibility, but this depends on community effort and is not guaranteed.
Does your deployment target only Bullseye or also later releases (e.g., Bookworm)?
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.