Skip to content

Commit 43309a2

Browse files
author
Alain Volmat
committed
samples: usb: uvc: use video_transfer_buffer helper function
Replace video_dequeue / video_enqueue buffer exchange code by video_transfer_buffer helper function. Signed-off-by: Alain Volmat <[email protected]>
1 parent eab2ff8 commit 43309a2

File tree

1 file changed

+10
-26
lines changed
  • samples/subsys/usb/uvc/src

1 file changed

+10
-26
lines changed

samples/subsys/usb/uvc/src/main.c

Lines changed: 10 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -269,34 +269,18 @@ int main(void)
269269
return ret;
270270
}
271271

272-
vbuf = &(struct video_buffer){.type = VIDEO_BUF_TYPE_OUTPUT};
273-
274-
if (video_dequeue(video_dev, &vbuf, K_NO_WAIT) == 0) {
275-
LOG_DBG("Dequeued %p from %s, enqueueing to %s",
276-
(void *)vbuf, video_dev->name, uvc_dev->name);
277-
278-
vbuf->type = VIDEO_BUF_TYPE_INPUT;
279-
280-
ret = video_enqueue(uvc_dev, vbuf);
281-
if (ret != 0) {
282-
LOG_ERR("Could not enqueue video buffer to %s", uvc_dev->name);
283-
return ret;
284-
}
272+
ret = video_transfer_buffer(video_dev, uvc_dev,
273+
VIDEO_BUF_TYPE_OUTPUT, VIDEO_BUF_TYPE_INPUT, K_NO_WAIT);
274+
if (ret != 0 && ret != -EAGAIN) {
275+
LOG_ERR("Failed to transfer from %s to %s", video_dev->name, uvc_dev->name);
276+
return ret;
285277
}
286278

287-
vbuf = &(struct video_buffer){.type = VIDEO_BUF_TYPE_INPUT};
288-
289-
if (video_dequeue(uvc_dev, &vbuf, K_NO_WAIT) == 0) {
290-
LOG_DBG("Dequeued %p from %s, enqueueing to %s",
291-
(void *)vbuf, uvc_dev->name, video_dev->name);
292-
293-
vbuf->type = VIDEO_BUF_TYPE_OUTPUT;
294-
295-
ret = video_enqueue(video_dev, vbuf);
296-
if (ret != 0) {
297-
LOG_ERR("Could not enqueue video buffer to %s", video_dev->name);
298-
return ret;
299-
}
279+
ret = video_transfer_buffer(uvc_dev, video_dev,
280+
VIDEO_BUF_TYPE_INPUT, VIDEO_BUF_TYPE_OUTPUT, K_NO_WAIT);
281+
if (ret != 0 && ret != -EAGAIN) {
282+
LOG_ERR("Failed to transfer from %s to %s", uvc_dev->name, video_dev->name);
283+
return ret;
300284
}
301285

302286
k_poll_signal_reset(&sig);

0 commit comments

Comments
 (0)