v4l2_vidc_extensions.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2. /*
  3. * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #ifndef __V4l2_VIDC_EXTENSIONS_H__
  7. #define __V4l2_VIDC_EXTENSIONS_H__
  8. #include <linux/types.h>
  9. #include <linux/v4l2-controls.h>
  10. /* AV1 */
  11. #ifndef V4L2_PIX_FMT_AV1
  12. #define V4L2_PIX_FMT_AV1 v4l2_fourcc('A', 'V', '1', '0')
  13. #endif
  14. #ifndef V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE
  15. #define V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE (3)
  16. #endif
  17. /* vendor controls start */
  18. #ifdef V4L2_CTRL_CLASS_CODEC
  19. #define V4L2_CID_MPEG_VIDC_BASE (V4L2_CTRL_CLASS_CODEC | 0x2000)
  20. #else
  21. #define V4L2_CID_MPEG_VIDC_BASE (V4L2_CTRL_CLASS_MPEG | 0x2000)
  22. #endif
  23. #define V4L2_MPEG_MSM_VIDC_DISABLE 0
  24. #define V4L2_MPEG_MSM_VIDC_ENABLE 1
  25. #define V4L2_CID_MPEG_VIDC_SECURE (V4L2_CID_MPEG_VIDC_BASE + 0x1)
  26. #define V4L2_CID_MPEG_VIDC_LOWLATENCY_REQUEST (V4L2_CID_MPEG_VIDC_BASE + 0x3)
  27. #define V4L2_CID_MPEG_VIDC_TIME_DELTA_BASED_RC (V4L2_CID_MPEG_VIDC_BASE + 0xD)
  28. #define V4L2_CID_MPEG_VIDC_PRIORITY (V4L2_CID_MPEG_VIDC_BASE + 0x2A)
  29. /* Encoder Complexity control */
  30. #define V4L2_CID_MPEG_VIDC_VENC_COMPLEXITY \
  31. (V4L2_CID_MPEG_VIDC_BASE + 0x2F)
  32. /* Decoder Max Number of Reorder Frames */
  33. #define V4L2_CID_MPEG_VIDC_METADATA_MAX_NUM_REORDER_FRAMES \
  34. (V4L2_CID_MPEG_VIDC_BASE + 0x30)
  35. #define V4L2_CID_MPEG_VIDC_VUI_TIMING_INFO \
  36. (V4L2_CID_MPEG_VIDC_BASE + 0x43)
  37. #endif