Skip to content

Commit bda979e

Browse files
author
Alain Volmat
committed
samples: video: capture: use video_set_compose_format helper
Simplify the code by using the video_set_compose_format helper. Signed-off-by: Alain Volmat <[email protected]>
1 parent 5e90e13 commit bda979e

File tree

1 file changed

+9
-36
lines changed
  • samples/drivers/video/capture/src

1 file changed

+9
-36
lines changed

samples/drivers/video/capture/src/main.c

Lines changed: 9 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,14 @@ int main(void)
9898
struct video_frmival frmival;
9999
struct video_frmival_enum fie;
100100
enum video_buf_type type = VIDEO_BUF_TYPE_OUTPUT;
101-
#if (CONFIG_VIDEO_SOURCE_CROP_WIDTH && CONFIG_VIDEO_SOURCE_CROP_HEIGHT) || \
102-
CONFIG_VIDEO_FRAME_HEIGHT || CONFIG_VIDEO_FRAME_WIDTH
103-
struct video_selection sel = {
101+
#if (CONFIG_VIDEO_SOURCE_CROP_WIDTH && CONFIG_VIDEO_SOURCE_CROP_HEIGHT)
102+
struct video_selection crop_sel = {
104103
.type = VIDEO_BUF_TYPE_OUTPUT,
104+
.target = VIDEO_SEL_TGT_CROP;
105+
.rect.left = CONFIG_VIDEO_SOURCE_CROP_LEFT;
106+
.rect.top = CONFIG_VIDEO_SOURCE_CROP_TOP;
107+
.rect.width = CONFIG_VIDEO_SOURCE_CROP_WIDTH;
108+
.rect.height = CONFIG_VIDEO_SOURCE_CROP_HEIGHT;
105109
};
106110
#endif
107111
unsigned int frame = 0;
@@ -150,20 +154,14 @@ int main(void)
150154

151155
/* Set the crop setting if necessary */
152156
#if CONFIG_VIDEO_SOURCE_CROP_WIDTH && CONFIG_VIDEO_SOURCE_CROP_HEIGHT
153-
sel.target = VIDEO_SEL_TGT_CROP;
154-
sel.rect.left = CONFIG_VIDEO_SOURCE_CROP_LEFT;
155-
sel.rect.top = CONFIG_VIDEO_SOURCE_CROP_TOP;
156-
sel.rect.width = CONFIG_VIDEO_SOURCE_CROP_WIDTH;
157-
sel.rect.height = CONFIG_VIDEO_SOURCE_CROP_HEIGHT;
158-
if (video_set_selection(video_dev, &sel)) {
157+
if (video_set_selection(video_dev, &crop_sel)) {
159158
LOG_ERR("Unable to set selection crop");
160159
return 0;
161160
}
162161
LOG_INF("Selection crop set to (%u,%u)/%ux%u",
163162
sel.rect.left, sel.rect.top, sel.rect.width, sel.rect.height);
164163
#endif
165164

166-
#if CONFIG_VIDEO_FRAME_HEIGHT || CONFIG_VIDEO_FRAME_WIDTH
167165
#if CONFIG_VIDEO_FRAME_HEIGHT
168166
fmt.height = CONFIG_VIDEO_FRAME_HEIGHT;
169167
#endif
@@ -172,39 +170,14 @@ int main(void)
172170
fmt.width = CONFIG_VIDEO_FRAME_WIDTH;
173171
#endif
174172

175-
/*
176-
* Check (if possible) if targeted size is same as crop
177-
* and if compose is necessary
178-
*/
179-
sel.target = VIDEO_SEL_TGT_CROP;
180-
err = video_get_selection(video_dev, &sel);
181-
if (err < 0 && err != -ENOSYS) {
182-
LOG_ERR("Unable to get selection crop");
183-
return 0;
184-
}
185-
186-
if (err == 0 && (sel.rect.width != fmt.width || sel.rect.height != fmt.height)) {
187-
sel.target = VIDEO_SEL_TGT_COMPOSE;
188-
sel.rect.left = 0;
189-
sel.rect.top = 0;
190-
sel.rect.width = fmt.width;
191-
sel.rect.height = fmt.height;
192-
err = video_set_selection(video_dev, &sel);
193-
if (err < 0 && err != -ENOSYS) {
194-
LOG_ERR("Unable to set selection compose");
195-
return 0;
196-
}
197-
}
198-
#endif
199-
200173
if (strcmp(CONFIG_VIDEO_PIXEL_FORMAT, "")) {
201174
fmt.pixelformat = VIDEO_FOURCC_FROM_STR(CONFIG_VIDEO_PIXEL_FORMAT);
202175
}
203176

204177
LOG_INF("- Video format: %s %ux%u",
205178
VIDEO_FOURCC_TO_STR(fmt.pixelformat), fmt.width, fmt.height);
206179

207-
if (video_set_format(video_dev, &fmt)) {
180+
if (video_set_compose_format(video_dev, &fmt)) {
208181
LOG_ERR("Unable to set format");
209182
return 0;
210183
}

0 commit comments

Comments
 (0)