Skip to content

drivers: video: sw_isp: software-based image processing #87007

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions drivers/video/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ zephyr_library_sources(video_device.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_MCUX_CSI video_mcux_csi.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_MCUX_MIPI_CSI2RX video_mcux_mipi_csi2rx.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_SW_GENERATOR video_sw_generator.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_SW_ISP video_sw_isp.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_MT9M114 mt9m114.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_OV7725 ov7725.c)
zephyr_library_sources_ifdef(CONFIG_VIDEO_OV2640 ov2640.c)
Expand Down
2 changes: 2 additions & 0 deletions drivers/video/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ source "drivers/video/Kconfig.mcux_mipi_csi2rx"

source "drivers/video/Kconfig.sw_generator"

source "drivers/video/Kconfig.sw_isp"

source "drivers/video/Kconfig.mt9m114"

source "drivers/video/Kconfig.ov7725"
Expand Down
37 changes: 37 additions & 0 deletions drivers/video/Kconfig.sw_isp
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Copyright (c) 2025 tinyVision.ai Inc.
# SPDX-License-Identifier: Apache-2.0

config VIDEO_SW_ISP
bool "Video Software Image Signal Processor (ISP)"
imply PIXEL
help
Enable a software-based image processing pipeline, providing the essential components
of an Image Signal Processsor (ISP) exposing the essential features of the "pixel"
library as a native Video API.

config VIDEO_SW_ISP_STACK_SIZE
int "Stack size for the thread executing the pipelne"
default 1024
help
Stack size for the thread executing the pipeline. All of the processing elements are not
allocated on the stack but use global variables instead. The default value is therefore
planning only for the temporary variables.

config VIDEO_SW_ISP_THREAD_PRIORITY
int "Stack size for the thread executing the pipelne"
default 5
help
Priority for the thread executing the pipeline. The default value is an intermediate
starting point to be tuned arbitrarily to fit the application.

config VIDEO_SW_ISP_INPUT_WIDTH
int "Width of the input of the pipeline in pixels, used for buffer allocation purposees."
default 640
help
The default value is VGA width, a widespread default resolution supported broadly.

config VIDEO_SW_ISP_INPUT_HEIGHT
int "Height of the input of the pipeline in pixels, used for buffer allocation purposees."
default 480
help
The default value is VGA height, a widespread default resolution supported broadly.
Loading