Woohoo, #libobscura returned an image from the #librem5 !
```
Buffer size: 823296, seq: 0, timestamp: 18178.362439 [s]
Writing to frame.GRBG
```
Now I'm scared to look at the data. It's probably garbage.
But the proof of concept is there: you can treat the Media Controller API as a database and query it for valid image pipeline configurations.
I wonder if the debayering #shader still works.
But first, clean up and publish.
@dcz great work!
@pavel Published and described!
https://codeberg.org/libobscura/libobscura#devices
Cleaned... not so much :P
I'm still going to bump version numbers, run CI and publish crates, but it's already useable.
Also I'm not proud of how messy some parts are...
@pavel We're on the same page now :D
Thanks for the bug report.
@pavel cargo run --bin raw -- --raw width_px,height_px,bpp foo.sv GRBG delme.tif
you missed the params to --raw. Any idea how to make that clearer?
Also maybe I should print the used resolution somewhere.
sudo usermod -a -G render purism
that should take care of this problem. Also, the new master is more informative about where it came from if you use RUST_LOG=debug
It still fails on mapping the memory :/ I hope I don't have to bisect that.
@pavel Well, I'm bisecting now :P
@pavel Bisected, fixed. Please update.
The bayer conversion test returns even worse garbage than last time so I'll have to investigate but at least it runs.
@pavel Okay, it had always returned this garbage. Moving on to controls.
@pavel Totally! Please post on the repo.
That 1 fps is worrying though.
@pavel If you measured a single frame, then that's epected with all the GPU initialization. I'd wager it will get amortized if you process several frames in a row.
@pavel Yeah, raw.rs is more of a verification tool than an example.
The live demos show how to process multiple frames but they are also complicated with drawing.
vidi_loop_frames and vidi_shared_buffers.
I guess I need a shader loop example.
@pavel I guess continuous capturing is unavoidable unless you're fine with a 2-3 frames delay.
> Rumors say it is bandwidth limit somewhere
Nope, I just decided not to make it too hard for myself and use the simplest format. Then more important things came up. The other camera streams 10 bit, so definitely possible and desired.
I'll try to get bayer working this weekend but then I'm out for the funding finale for a few days.