I'm not big-brained enough to use cameras on Linux, so I decided to write my own camera stack (based on a real story).
The libobscura experiment exists to find out what a point-and-shoot API abstracting Video4Linux should look like. It has its roots on one hand in the Librem 5 project, where I wrote some 70% of the camera stack, and on the other hand in libcamera, which I found too difficult to use.
You think controlling a modern camera is easy? Think again. Between pixel formats, depths, media entities, pads and links, sensitivity, denoising, phase detection, shutter lengths, DMAbuf, OpenGL, feedback loops, requests, and statistics, there's enough opportunities to get lost in the detail.
Thankfully, Prototype Fund thinks I'm up for the challenge, so they are funding me through libobscura in order to get lost, and maybe find something in the process.
Project repo: https://codeberg.org/libobscura/libobscura
Licensed to the public under http://creativecommons.org/licenses/by/4.0
This Talk was translated into multiple languages. The files available for download contain all languages as separate audio-tracks. Most desktop video players allow you to choose between them.
Please look for "audio tracks" in your desktop video player.