[PATCH v6 0/7] Add VirtualPipelineHandler
Harvey Yang
chenghaoyang at chromium.org
Fri Jul 26 11:54:21 CEST 2024
Hi folks,
Sorry for the super late update. It's been a while since the last series
of patches, as we were busy with mtkisp7's bringup & migration.
Thanks to Hans de Goede's work on DmaBufAllocator, the prerequisites of
VirtualPipelineHandler are almost landed. Only a helper function added
in the first patch.
Konami, our intern in 2023, helped to add test patterns and real image
loading into VirtualPipelineHandler.
I tried to address the previous comments, while it's very likely that I
left some behind. Please leave the comments again if I do. Many thanks!
BR,
Harvey
Harvey Yang (3):
Add a helper function exportFrameBuffers in DmaBufAllocator to make it
easier to use.
The Fatal check of having at least one MediaDevice was to prevent
pipeline handler implementations searching and owning media devices
with custom conventions, instead of using the base function
|acquireMediaDevice|. It also has the assumption that there's at
least one media device to make a camera work.
libcamera: pipeline: Add VirtualPipelineHandler
Konami Shu (4):
libcamera: pipeline: Add test pattern for VirtualPipelineHandler
libcamera: pipeline: Read config and register cameras based on the
config
libcamera: pipeline: Shift test pattern by 1 pixel left every frame
libcamera: pipeline: Load images
.../libcamera/internal/dma_buf_allocator.h | 10 +
meson.build | 1 +
meson_options.txt | 3 +-
src/libcamera/dma_buf_allocator.cpp | 57 +++-
src/libcamera/pipeline/virtual/README.md | 76 +++++
.../pipeline/virtual/common_functions.cpp | 27 ++
.../pipeline/virtual/common_functions.h | 18 ++
.../pipeline/virtual/data/virtual.yaml | 51 ++++
.../pipeline/virtual/frame_generator.h | 33 +++
.../virtual/image_frame_generator.cpp | 154 ++++++++++
.../pipeline/virtual/image_frame_generator.h | 65 ++++
src/libcamera/pipeline/virtual/meson.build | 32 ++
src/libcamera/pipeline/virtual/parser.cpp | 243 +++++++++++++++
src/libcamera/pipeline/virtual/parser.h | 48 +++
.../virtual/test_pattern_generator.cpp | 148 ++++++++++
.../pipeline/virtual/test_pattern_generator.h | 58 ++++
src/libcamera/pipeline/virtual/virtual.cpp | 279 ++++++++++++++++++
src/libcamera/pipeline/virtual/virtual.h | 96 ++++++
src/libcamera/pipeline_handler.cpp | 11 +-
19 files changed, 1404 insertions(+), 6 deletions(-)
create mode 100644 src/libcamera/pipeline/virtual/README.md
create mode 100644 src/libcamera/pipeline/virtual/common_functions.cpp
create mode 100644 src/libcamera/pipeline/virtual/common_functions.h
create mode 100644 src/libcamera/pipeline/virtual/data/virtual.yaml
create mode 100644 src/libcamera/pipeline/virtual/frame_generator.h
create mode 100644 src/libcamera/pipeline/virtual/image_frame_generator.cpp
create mode 100644 src/libcamera/pipeline/virtual/image_frame_generator.h
create mode 100644 src/libcamera/pipeline/virtual/meson.build
create mode 100644 src/libcamera/pipeline/virtual/parser.cpp
create mode 100644 src/libcamera/pipeline/virtual/parser.h
create mode 100644 src/libcamera/pipeline/virtual/test_pattern_generator.cpp
create mode 100644 src/libcamera/pipeline/virtual/test_pattern_generator.h
create mode 100644 src/libcamera/pipeline/virtual/virtual.cpp
create mode 100644 src/libcamera/pipeline/virtual/virtual.h
--
2.46.0.rc1.232.g9752f9e123-goog
More information about the libcamera-devel
mailing list