1 /* 2 * Copyright (c) 2022, sakumisu 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 #ifndef USBD_VIDEO_H 7 #define USBD_VIDEO_H 8 9 #include "usb_video.h" 10 11 #ifdef __cplusplus 12 extern "C" { 13 #endif 14 15 /* Init video interface driver */ 16 struct usbd_interface *usbd_video_init_intf(uint8_t busid, struct usbd_interface *intf, 17 uint32_t dwFrameInterval, 18 uint32_t dwMaxVideoFrameSize, 19 uint32_t dwMaxPayloadTransferSize); 20 21 void usbd_video_open(uint8_t busid, uint8_t intf); 22 void usbd_video_close(uint8_t busid, uint8_t intf); 23 24 bool usbd_video_stream_split_transfer(uint8_t busid, uint8_t ep); 25 int usbd_video_stream_start_write(uint8_t busid, uint8_t ep, uint8_t *ep_buf, uint8_t *stream_buf, uint32_t stream_len, bool do_copy); 26 27 #ifdef __cplusplus 28 } 29 #endif 30 31 #endif /* USBD_VIDEO_H */ 32