usbd_video.h 922 B

12345678910111213141516171819202122232425262728293031
  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. #include "usb_video.h"
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. /* Init video interface driver */
  13. struct usbd_interface *usbd_video_init_intf(uint8_t busid, struct usbd_interface *intf,
  14. uint32_t dwFrameInterval,
  15. uint32_t dwMaxVideoFrameSize,
  16. uint32_t dwMaxPayloadTransferSize);
  17. void usbd_video_open(uint8_t busid, uint8_t intf);
  18. void usbd_video_close(uint8_t busid, uint8_t intf);
  19. bool usbd_video_stream_split_transfer(uint8_t busid, uint8_t ep);
  20. int usbd_video_stream_start_write(uint8_t busid, uint8_t ep, uint8_t *ep_buf0, uint8_t *ep_buf1, uint32_t ep_bufsize, uint8_t *stream_buf, uint32_t stream_len);
  21. #ifdef __cplusplus
  22. }
  23. #endif
  24. #endif /* USBD_VIDEO_H */