Skip to main content

For a FOSS Digital Camera System, an Android Phone + Open Camera is The Answer

·
Categories Linux FOSS Issues
Tags Android Free Software Linux

I thought about a question: does an open source digital camera system exist?

Does an open source photography image-processing workflow exist? There are open source image-processing programs like GIMP, Krita, digiKam, and darktable. But first we have to solve the problem of the upstream image-capturing device, right?

Those DSLR cameras and camcorders with apertures much larger than phones, such as the ones made by Nikon and Sony, all run closed-source OSes, don’t they?

Is it possible to have a digital camera whose low-level drivers and software are all open? I do not mean just a Raspberry Pi with a camera attached, that kind of toy.

A camera that lacks open source software makes me unable to bring myself to buy it. Actually, I cannot afford it either :P

It is just like how I refuse to buy home consoles such as the Switch or PS5 because I reject proprietary software. They have taken away the open source achievements of BSD. The Steam platform is barely acceptable. But playing proprietary Steam games on a PC is already enough inner torment for me.

Even Android camera photography technology seems to be controlled to a large extent by the algorithms of closed-source apps. Every phone manufacturer develops its own stock camera app, forcing us to depend on these closed-source apps.

Even though we have feature-rich open source apps like Open Camera, FreeDCam, and Photon Camera, they still cannot fully support the lens hardware features of every phone, such as 30x AI zoom or the algorithms behind photo beautification.

As for the algorithms that perform post-processing after a photo is taken, those are even more the trade secrets of the major manufacturers. Sony, Xiaomi, Pixel, and Samsung all have their own flavor. Even if you can port Gcam to other phones, you still cannot figure out what is going on with the algorithms behind it.

As a result, even if photos taken by OpenCamera are a notch below those from the stock camera, it becomes purely a matter of the image sensor’s hardware capability. You need more manual parameter intervention, or you save as RAW and then manually retouch with digiKam.

Still, Android is at least more mature than pure Linux when it comes to accessing camera hardware features. Look at the official AOSP documentation: at least Camera2API can adjust ISO, and Pixel even has official open APIs that let third-party apps use Night Sight.

If you try to drive IMX components in a pure GNU/Linux environment, it is even harder. On Linux, you should already thank heaven if libcamera can make the camera work normally. Nobody is studying the discipline of taking photos.

The guy responsible for writing the Megapixels camera app for PinePhone only barely managed to put together a pipeline.

In short, buying an Android phone with strong enough lens hardware, flashing it with LineageOS, and using Open Camera, just as I did with the Sony Xperia 1 III, is a more acceptable way to do open source photography. If the low-level drivers have to be closed-source, then so be it.

Related


Thank you for reading. Public comments are not available on this website. I write to explore ideas honestly, not to chase social engagement or traffic. I would be glad to hear your thoughts after reading the article with care. If you found any errors, technical issues, or would like to share feedback, feel free to contact me via the email listed on the About page.