Hey #linuxmobile people.
Maybe you heard about my little #libobscura project.
Which phone should #libobscura support after #Librem5 ?
I'm looking for one which has the kernel drivers but cameras still don't work great.
@dcz maybe the Pixel 3a? Now supported by multiple distros, relatively modern, and with cameras working but with some hickups as you describe :)
@dcz I'd ask for the Pinephone Pro, though I'd have to confirm kernel drivers for the cameras
The cameras work, but are decidedly not great. Rear camera especially (unless I'm out of date), if only because it can't be used after the phone goes to sleep
@xethos If the issue is sleep, then it's most likely in the kernel, and libobscura won't improve the situation :(
@pabloyoyoista I might actually know where to find one lying around.
Can you tell me what the cameras are missing? Is there like a device page describing problems somewhere?
@dcz unfortunately https://wiki.postmarketos.org/wiki/Google_Pixel_3a_(google-sargo)#Camera does not have that much info. Front camera with Snapshot has some problems with color correction and saturation (maybe some fixed in non-released versions). Back camera missing autofocus driver, sdm670 kernel repo as an issue about it, and currently one gets a remarkably zoomed in image. You can find quite some examples in @rmader@mastodo.social profile :)
@dcz I'm not really a fan of the precedent that each phone will have two distinct camera support statuses, one for libcamera and one for libobscura. It was bad enough with Megapixels and libcamera both having to individually support devices. Do you have any thoughts about how we can avoid this future?
@newbyte I hope lessons from my experiment get incorporated elsewhere and I can move on to other projects.
In the end, it all depends on how much interest there is.
I also expect that the status will be the same for both, only because I can't find anything with kernel drivers that libcamera doesn't support.
@newbyte Oh, thanks for believing in me :) It's far from certain that the project is actually going to catch on :P
@dcz please share your opinion about #fairphone 5
I'd like to have supper for it.
@Oleksii Never used it, never seen one. I haven't been tracking mobile Linux very closely recently.
What's your opinion?
@dcz I think #fairphone is one of the best hardware candidate for FOSS. I have been using it for a few months and I'm happy with the hardware. Mostly I explore what kind of soft I could use. IMHO fairphone is the perfect sandbox for playing with software. I hope to make it my main driver one day.
@Oleksii What's the driver situation? How much is mainlined?
Does it run GNU/Linux today?
@dcz So your goal would be for e.g. libcamera to improve based on the ideas of libobscura, thus eventually making it obsolete?
@newbyte That would be great, yes. I stay in touch with the maintainers.
@jite Emulating v4l is awkward. I'd rather do Pipewire, although I reserve the right to change my mind.
@pavel I haven't gotten to the Librem 5 yet.
There is only support for UVC cameras now.
If you want to build it on the Librem 5, I would use a recent operating system (not PureOS) or install Rust using Rustup.
Yes, it is "execute random shell from the internet", but I think that's the only way to get recenr Rust on PureOS.
@pavel Yeah, it's actually implemented and you don't need a phone. There's the "bayer" binary that will pick up a file and decode it.
Check out --help.
@pavel Sorry, I mixed it up. The binary using the bayer shader is still called "raw":
https://codeberg.org/libobscura/libobscura/src/branch/master/crates/conv/src/bin/raw.rs
@pavel Ouch. This looks like it's related to creating the GBM buffer?
@pavel It *should* be possible to skip the GBM parts and create regular OpenGL buffers, but my OpenGL skills are not enough to do it quickly.
@pavel Of course! L5 is my next target.
Are you interested in having a compiling version that produces only Bayer data, or minimally working debayering?
Also, what OS are you using on the L5?