Barnabás Pőcze
f9796fc024
spa: libcamera: remove unnecessary typedef
2022-09-15 11:17:47 +00:00
Barnabás Pőcze
02f2d6b48d
spa: libcamera: remove unnecessary have_config member
...
An extra flag is not needed because the `config` pointer can be
checked to determine if a configuration has already been retrieved.
2022-09-15 11:17:47 +00:00
Barnabás Pőcze
9374c15c3d
spa: libcamera: use std::optional intead of separate bool flag + value
...
`std::optional` conveniently encapsulates a value and a bool flag,
so use that instead of manually replicating it.
2022-09-15 11:17:47 +00:00
Barnabás Pőcze
330686d3aa
spa: libcamera: rework construction/destruction of libcamera source impl
...
Move some things into constructors and try not to depend on the
fact that the storage is zero initialized, try to initialize
everything properly.
2022-09-15 11:17:47 +00:00
Barnabás Pőcze
9370fbee3d
spa: libcamera: indent with tabs instead of spaces
2022-09-15 11:17:47 +00:00
Wim Taymans
cad7db9f58
libcamera: close camera in error path
2022-09-05 09:25:42 +02:00
Wim Taymans
96472e259f
libcamera: return empty controls instead of error
2022-05-26 18:11:06 +02:00
Barnabás Pőcze
57dae3e2b3
spa: libcamera: call get() instead of fd()
...
libcamera commit 560f5cf998646ddc54a20dc1c7326012834d3204
renamed the `fd()` method on `SharedFD` to `get()`.
Adjust the libcamera plugin accordingly.
2021-12-14 09:52:05 +00:00
Wim Taymans
abacea5ca0
libcamera: improve debug
2021-11-03 17:49:10 +01:00
Wim Taymans
0fd5e3fdb2
libcamera: implement allocation and dataflow
...
Keep track of the negotiated parameters and use those to construct
the Buffers param.
Use the FrameAllocator to allocate buffer memory. Keep a request for
each buffer and queue them.
In requestComplete, put the request metadata info into the buffer and
header and write the finished buffer id to a ringbuffer. Then wake up
the data thread to pop the finished buffer_id and push it in the
graph.
Remove some old files.
2021-11-03 17:49:10 +01:00
Wim Taymans
b2c38a2b3b
libcamera: work on rewrite
...
Use manager to hotplug devices
Use StreamConfig to enumerate formats
2021-11-03 17:49:10 +01:00