Earlier this month, the “OpenGL for cameras” libcamera project enjoyed its first release, versioned 0.0.1.
At Purism, we’re especially happy about this milestone, because we recognize how important libcamera is for the future of the Librem 5 phone.
That doesn’t mean that we sit back and wait for libcamera to gain support for our cameras. Quite the opposite! We already added one of the sensors in 2021. This year, we’ve been pushing forward to execute the plan from our previous blog post.
Behind the scenes
The work we did so far covers the fundamentals of camera image processing. We created a special image processing pipeline for raw Bayer sensors. That is going just crispy.
I mean Crispy. It’s the name of a new library we created along the way. It’s a bunch of mostly Rust code using OpenGL, where image processing algorithms are meant to live. So far, it’s only Bayer demosaicing, but brightness and color balance algorithms will join sooner rather than later.
It’s useful for devices like the Librem 5, which don’t have dedicated hardware for image processing, but do have a GPU. The libcamera maintainers agreed to consider it for upstreaming it once it’s ready, so stay tuned!
P.S If you want to take a look at the operating table, our unfinished work (including Crispy) is done in the public. But it’s not for the faint of heart!
|Librem Mini||In Stock||10 days|
|Librem Servers||Out of Stock||--|
|Librem Key||In Stock||10 days|
|Librem 14||In Stock||10 days|
|Librem 5 USA||In Stock||10 days|
|Librem 5||Currently shipping backlogs||52 weeks|