@shopify/react-native-skia 0.1.234 → 0.1.236

Sign up to get free protection for your applications and to get access to all the features.
Files changed (262) hide show
  1. package/cpp/api/JsiSkTypefaceFactory.h +2 -1
  2. package/cpp/skia/include/android/AHardwareBufferUtils.h +23 -0
  3. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +2 -0
  4. package/cpp/skia/include/android/graphite/SurfaceAndroid.h +59 -0
  5. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -1
  6. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -1
  7. package/cpp/skia/include/codec/SkCodec.h +21 -3
  8. package/cpp/skia/include/codec/SkGifDecoder.h +1 -1
  9. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -1
  10. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -1
  11. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -1
  12. package/cpp/skia/include/codec/SkPngDecoder.h +1 -1
  13. package/cpp/skia/include/codec/SkRawDecoder.h +1 -1
  14. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -1
  15. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -1
  16. package/cpp/skia/include/config/SkUserConfig.h +3 -1
  17. package/cpp/skia/include/core/SkCanvas.h +66 -37
  18. package/cpp/skia/include/core/SkColorFilter.h +5 -2
  19. package/cpp/skia/include/core/SkContourMeasure.h +1 -0
  20. package/cpp/skia/include/core/SkDocument.h +1 -0
  21. package/cpp/skia/include/core/SkFont.h +14 -24
  22. package/cpp/skia/include/core/SkFontArguments.h +1 -1
  23. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  24. package/cpp/skia/include/core/SkFontMgr.h +0 -7
  25. package/cpp/skia/include/core/SkGraphics.h +13 -0
  26. package/cpp/skia/include/core/SkMesh.h +9 -13
  27. package/cpp/skia/include/core/SkMilestone.h +1 -1
  28. package/cpp/skia/include/core/SkPathMeasure.h +2 -0
  29. package/cpp/skia/include/core/SkSerialProcs.h +29 -11
  30. package/cpp/skia/include/core/SkSize.h +3 -3
  31. package/cpp/skia/include/core/SkStream.h +3 -13
  32. package/cpp/skia/include/core/SkSurface.h +6 -3
  33. package/cpp/skia/include/core/SkSurfaceProps.h +2 -4
  34. package/cpp/skia/include/core/SkTraceMemoryDump.h +15 -0
  35. package/cpp/skia/include/core/SkTypeface.h +8 -56
  36. package/cpp/skia/include/core/SkTypes.h +8 -0
  37. package/cpp/skia/include/core/SkVertices.h +1 -1
  38. package/cpp/skia/include/docs/SkMultiPictureDocument.h +53 -0
  39. package/cpp/skia/include/docs/SkPDFDocument.h +11 -0
  40. package/cpp/skia/include/effects/SkGradientShader.h +9 -0
  41. package/cpp/skia/include/effects/SkRuntimeEffect.h +3 -7
  42. package/cpp/skia/include/gpu/GrBackendSemaphore.h +33 -47
  43. package/cpp/skia/include/gpu/GrBackendSurface.h +2 -3
  44. package/cpp/skia/include/gpu/GrContextOptions.h +0 -6
  45. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +44 -28
  46. package/cpp/skia/include/gpu/GrDirectContext.h +12 -31
  47. package/cpp/skia/include/gpu/GrTypes.h +1 -16
  48. package/cpp/skia/include/gpu/MutableTextureState.h +35 -80
  49. package/cpp/skia/include/gpu/ShaderErrorHandler.h +11 -1
  50. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +2 -2
  51. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +1 -1
  52. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +3 -2
  53. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSemaphore.h +20 -0
  54. package/cpp/skia/include/gpu/ganesh/vk/GrVkDirectContext.h +30 -0
  55. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +1 -1
  56. package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -0
  57. package/cpp/skia/include/gpu/gl/glx/GrGLMakeGLXInterface.h +6 -0
  58. package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +3 -3
  59. package/cpp/skia/include/gpu/graphite/BackendTexture.h +39 -27
  60. package/cpp/skia/include/gpu/graphite/Context.h +39 -13
  61. package/cpp/skia/include/gpu/graphite/ContextOptions.h +2 -0
  62. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +2 -1
  63. package/cpp/skia/include/gpu/graphite/Image.h +106 -87
  64. package/cpp/skia/include/gpu/graphite/Recorder.h +24 -3
  65. package/cpp/skia/include/gpu/graphite/Surface.h +7 -2
  66. package/cpp/skia/include/gpu/graphite/dawn/DawnBackendContext.h +41 -2
  67. package/cpp/skia/include/gpu/graphite/dawn/DawnTypes.h +11 -6
  68. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +1 -2
  69. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +6 -6
  70. package/cpp/skia/include/gpu/mock/GrMockTypes.h +1 -0
  71. package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +1 -1
  72. package/cpp/skia/include/gpu/vk/GrVkTypes.h +1 -44
  73. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +1 -1
  74. package/cpp/skia/include/gpu/vk/VulkanMutableTextureState.h +25 -0
  75. package/cpp/skia/include/gpu/vk/VulkanTypes.h +44 -0
  76. package/cpp/skia/include/ports/SkFontConfigInterface.h +3 -6
  77. package/cpp/skia/include/private/SkEncodedInfo.h +5 -0
  78. package/cpp/skia/include/private/SkExif.h +102 -0
  79. package/cpp/skia/include/private/SkGainmapInfo.h +11 -1
  80. package/cpp/skia/include/private/base/SkAssert.h +16 -0
  81. package/cpp/skia/include/private/base/SkDeque.h +2 -7
  82. package/cpp/skia/include/private/base/SkLoadUserConfig.h +1 -1
  83. package/cpp/skia/include/private/base/SkTArray.h +69 -28
  84. package/cpp/skia/include/private/base/SkThreadAnnotations.h +18 -5
  85. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +26 -30
  86. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +4 -3
  87. package/cpp/skia/include/private/chromium/SkImageChromium.h +1 -1
  88. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +8 -6
  89. package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +29 -0
  90. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +12 -9
  91. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +16 -11
  92. package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +2 -2
  93. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std.h +312 -0
  94. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_decode.h +77 -0
  95. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std.h +446 -0
  96. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_decode.h +67 -0
  97. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codecs_common.h +36 -0
  98. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +9 -2
  99. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +31 -3
  100. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +10624 -5716
  101. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +2 -1
  102. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +2 -1
  103. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +28 -1
  104. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +2 -1
  105. package/cpp/skia/include/utils/mac/SkCGUtils.h +23 -11
  106. package/cpp/skia/modules/skcms/skcms.h +2 -410
  107. package/cpp/skia/modules/skcms/src/Transform_inl.h +831 -704
  108. package/cpp/skia/modules/skcms/src/skcms_Transform.h +161 -0
  109. package/cpp/skia/modules/skcms/src/skcms_internals.h +136 -0
  110. package/cpp/skia/modules/skcms/src/skcms_public.h +404 -0
  111. package/cpp/skia/modules/skparagraph/include/FontArguments.h +1 -1
  112. package/cpp/skia/modules/skparagraph/include/FontCollection.h +2 -0
  113. package/cpp/skia/modules/skparagraph/include/Paragraph.h +2 -2
  114. package/cpp/skia/modules/skparagraph/include/TextStyle.h +4 -3
  115. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -3
  116. package/cpp/skia/modules/skresources/include/SkResources.h +28 -17
  117. package/cpp/skia/modules/skunicode/include/SkUnicode.h +12 -0
  118. package/cpp/skia/modules/svg/include/SkSVGDOM.h +4 -1
  119. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +4 -1
  120. package/cpp/skia/src/base/SkUTF.h +7 -0
  121. package/cpp/skia/src/core/SkTHash.h +20 -8
  122. package/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +3 -2
  123. package/lib/commonjs/dom/nodes/JsiSkDOM.js +56 -57
  124. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
  125. package/lib/commonjs/external/reanimated/index.d.ts +1 -0
  126. package/lib/commonjs/external/reanimated/index.js +13 -0
  127. package/lib/commonjs/external/reanimated/index.js.map +1 -1
  128. package/lib/commonjs/external/reanimated/interpolators.js +13 -1
  129. package/lib/commonjs/external/reanimated/interpolators.js.map +1 -1
  130. package/lib/commonjs/external/reanimated/moduleWrapper.d.ts +1 -0
  131. package/lib/commonjs/external/reanimated/moduleWrapper.js +5 -3
  132. package/lib/commonjs/external/reanimated/moduleWrapper.js.map +1 -1
  133. package/lib/commonjs/external/reanimated/textures.d.ts +5 -0
  134. package/lib/commonjs/external/reanimated/textures.js +52 -0
  135. package/lib/commonjs/external/reanimated/textures.js.map +1 -0
  136. package/lib/commonjs/headless/index.js +1 -1
  137. package/lib/commonjs/headless/index.js.map +1 -1
  138. package/lib/commonjs/mock/index.js +3 -0
  139. package/lib/commonjs/mock/index.js.map +1 -1
  140. package/lib/commonjs/renderer/Canvas.js +1 -1
  141. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  142. package/lib/commonjs/renderer/Container.d.ts +1 -1
  143. package/lib/commonjs/renderer/Container.js +2 -1
  144. package/lib/commonjs/renderer/Container.js.map +1 -1
  145. package/lib/commonjs/renderer/Offscreen.d.ts +1 -0
  146. package/lib/commonjs/renderer/Offscreen.js +18 -5
  147. package/lib/commonjs/renderer/Offscreen.js.map +1 -1
  148. package/lib/commonjs/renderer/Reconciler.d.ts +1 -1
  149. package/lib/commonjs/renderer/Reconciler.js +7 -4
  150. package/lib/commonjs/renderer/Reconciler.js.map +1 -1
  151. package/lib/commonjs/skia/types/Matrix4.d.ts +2 -2
  152. package/lib/commonjs/skia/types/Matrix4.js.map +1 -1
  153. package/lib/commonjs/skia/types/Shader/Shader.d.ts +1 -1
  154. package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -1
  155. package/lib/module/dom/nodes/JsiSkDOM.d.ts +3 -2
  156. package/lib/module/dom/nodes/JsiSkDOM.js +56 -56
  157. package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
  158. package/lib/module/external/reanimated/index.d.ts +1 -0
  159. package/lib/module/external/reanimated/index.js +1 -0
  160. package/lib/module/external/reanimated/index.js.map +1 -1
  161. package/lib/module/external/reanimated/interpolators.js +13 -1
  162. package/lib/module/external/reanimated/interpolators.js.map +1 -1
  163. package/lib/module/external/reanimated/moduleWrapper.d.ts +1 -0
  164. package/lib/module/external/reanimated/moduleWrapper.js +3 -2
  165. package/lib/module/external/reanimated/moduleWrapper.js.map +1 -1
  166. package/lib/module/external/reanimated/textures.d.ts +5 -0
  167. package/lib/module/external/reanimated/textures.js +35 -0
  168. package/lib/module/external/reanimated/textures.js.map +1 -0
  169. package/lib/module/headless/index.js +1 -1
  170. package/lib/module/headless/index.js.map +1 -1
  171. package/lib/module/mock/index.js +3 -0
  172. package/lib/module/mock/index.js.map +1 -1
  173. package/lib/module/renderer/Canvas.js +1 -1
  174. package/lib/module/renderer/Canvas.js.map +1 -1
  175. package/lib/module/renderer/Container.d.ts +1 -1
  176. package/lib/module/renderer/Container.js +2 -1
  177. package/lib/module/renderer/Container.js.map +1 -1
  178. package/lib/module/renderer/Offscreen.d.ts +1 -0
  179. package/lib/module/renderer/Offscreen.js +11 -3
  180. package/lib/module/renderer/Offscreen.js.map +1 -1
  181. package/lib/module/renderer/Reconciler.d.ts +1 -1
  182. package/lib/module/renderer/Reconciler.js +7 -4
  183. package/lib/module/renderer/Reconciler.js.map +1 -1
  184. package/lib/module/skia/types/Matrix4.d.ts +2 -2
  185. package/lib/module/skia/types/Matrix4.js.map +1 -1
  186. package/lib/module/skia/types/Shader/Shader.d.ts +1 -1
  187. package/lib/module/skia/types/Shader/Shader.js.map +1 -1
  188. package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +3 -2
  189. package/lib/typescript/src/external/reanimated/index.d.ts +1 -0
  190. package/lib/typescript/src/external/reanimated/moduleWrapper.d.ts +1 -0
  191. package/lib/typescript/src/external/reanimated/textures.d.ts +5 -0
  192. package/lib/typescript/src/renderer/Container.d.ts +1 -1
  193. package/lib/typescript/src/renderer/Offscreen.d.ts +1 -0
  194. package/lib/typescript/src/renderer/Reconciler.d.ts +1 -1
  195. package/lib/typescript/src/skia/types/Matrix4.d.ts +2 -2
  196. package/lib/typescript/src/skia/types/Shader/Shader.d.ts +1 -1
  197. package/libs/android/arm64-v8a/libskia.a +0 -0
  198. package/libs/android/arm64-v8a/libskottie.a +0 -0
  199. package/libs/android/arm64-v8a/libskparagraph.a +0 -0
  200. package/libs/android/arm64-v8a/libsksg.a +0 -0
  201. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  202. package/libs/android/arm64-v8a/libskunicode.a +0 -0
  203. package/libs/android/arm64-v8a/libsvg.a +0 -0
  204. package/libs/android/armeabi-v7a/libskia.a +0 -0
  205. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  206. package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
  207. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  208. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  209. package/libs/android/armeabi-v7a/libskunicode.a +0 -0
  210. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  211. package/libs/android/x86/libskia.a +0 -0
  212. package/libs/android/x86/libskottie.a +0 -0
  213. package/libs/android/x86/libskparagraph.a +0 -0
  214. package/libs/android/x86/libsksg.a +0 -0
  215. package/libs/android/x86/libskshaper.a +0 -0
  216. package/libs/android/x86/libskunicode.a +0 -0
  217. package/libs/android/x86/libsvg.a +0 -0
  218. package/libs/android/x86_64/libskia.a +0 -0
  219. package/libs/android/x86_64/libskottie.a +0 -0
  220. package/libs/android/x86_64/libskparagraph.a +0 -0
  221. package/libs/android/x86_64/libsksg.a +0 -0
  222. package/libs/android/x86_64/libskshaper.a +0 -0
  223. package/libs/android/x86_64/libskunicode.a +0 -0
  224. package/libs/android/x86_64/libsvg.a +0 -0
  225. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  226. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  227. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  228. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  229. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
  230. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
  231. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  232. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  233. package/libs/ios/libskshaper.xcframework/Info.plist +5 -5
  234. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  235. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  236. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
  237. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
  238. package/libs/ios/libsvg.xcframework/Info.plist +5 -5
  239. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  240. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  241. package/package.json +1 -1
  242. package/src/dom/nodes/JsiSkDOM.ts +55 -56
  243. package/src/external/reanimated/index.ts +1 -0
  244. package/src/external/reanimated/interpolators.ts +15 -2
  245. package/src/external/reanimated/moduleWrapper.ts +1 -0
  246. package/src/external/reanimated/textures.tsx +50 -0
  247. package/src/headless/index.ts +1 -1
  248. package/src/mock/index.ts +3 -0
  249. package/src/renderer/Canvas.tsx +1 -1
  250. package/src/renderer/Container.tsx +3 -2
  251. package/src/renderer/Offscreen.tsx +12 -3
  252. package/src/renderer/Reconciler.tsx +5 -2
  253. package/src/skia/types/Matrix4.ts +2 -2
  254. package/src/skia/types/Shader/Shader.ts +6 -1
  255. package/cpp/skia/include/gpu/GrSurfaceInfo.h +0 -142
  256. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +0 -107
  257. package/cpp/skia/include/private/gpu/ganesh/GrMockTypesPriv.h +0 -32
  258. package/cpp/skia/include/private/gpu/ganesh/GrMtlTypesPriv.h +0 -83
  259. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +0 -47
  260. package/cpp/skia/include/private/gpu/vk/VulkanTypesPriv.h +0 -57
  261. package/cpp/skia/include/utils/SkBase64.h +0 -53
  262. package/cpp/skia/modules/skcms/skcms_internal.h +0 -56
@@ -0,0 +1,446 @@
1
+ #ifndef VULKAN_VIDEO_CODEC_H265STD_H_
2
+ #define VULKAN_VIDEO_CODEC_H265STD_H_ 1
3
+
4
+ /*
5
+ ** Copyright 2015-2023 The Khronos Group Inc.
6
+ **
7
+ ** SPDX-License-Identifier: Apache-2.0
8
+ */
9
+
10
+ /*
11
+ ** This header is generated from the Khronos Vulkan XML API Registry.
12
+ **
13
+ */
14
+
15
+
16
+ #ifdef __cplusplus
17
+ extern "C" {
18
+ #endif
19
+
20
+
21
+
22
+ // vulkan_video_codec_h265std is a preprocessor guard. Do not pass it to API calls.
23
+ #define vulkan_video_codec_h265std 1
24
+ #include "vulkan_video_codecs_common.h"
25
+ #define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32
26
+ #define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7
27
+ #define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6
28
+ #define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16
29
+ #define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS 6
30
+ #define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS 64
31
+ #define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS 6
32
+ #define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS 64
33
+ #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS 2
34
+ #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64
35
+ #define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
36
+ #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19
37
+ #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21
38
+ #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3
39
+ #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
40
+ #define STD_VIDEO_H265_MAX_NUM_LIST_REF 15
41
+ #define STD_VIDEO_H265_MAX_CHROMA_PLANES 2
42
+ #define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64
43
+ #define STD_VIDEO_H265_MAX_DPB_SIZE 16
44
+ #define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32
45
+ #define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16
46
+ #define STD_VIDEO_H265_MAX_DELTA_POC 48
47
+ #define STD_VIDEO_H265_NO_REFERENCE_PICTURE 0xFF
48
+
49
+ typedef enum StdVideoH265ChromaFormatIdc {
50
+ STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME = 0,
51
+ STD_VIDEO_H265_CHROMA_FORMAT_IDC_420 = 1,
52
+ STD_VIDEO_H265_CHROMA_FORMAT_IDC_422 = 2,
53
+ STD_VIDEO_H265_CHROMA_FORMAT_IDC_444 = 3,
54
+ STD_VIDEO_H265_CHROMA_FORMAT_IDC_INVALID = 0x7FFFFFFF,
55
+ STD_VIDEO_H265_CHROMA_FORMAT_IDC_MAX_ENUM = 0x7FFFFFFF
56
+ } StdVideoH265ChromaFormatIdc;
57
+
58
+ typedef enum StdVideoH265ProfileIdc {
59
+ STD_VIDEO_H265_PROFILE_IDC_MAIN = 1,
60
+ STD_VIDEO_H265_PROFILE_IDC_MAIN_10 = 2,
61
+ STD_VIDEO_H265_PROFILE_IDC_MAIN_STILL_PICTURE = 3,
62
+ STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS = 4,
63
+ STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS = 9,
64
+ STD_VIDEO_H265_PROFILE_IDC_INVALID = 0x7FFFFFFF,
65
+ STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
66
+ } StdVideoH265ProfileIdc;
67
+
68
+ typedef enum StdVideoH265LevelIdc {
69
+ STD_VIDEO_H265_LEVEL_IDC_1_0 = 0,
70
+ STD_VIDEO_H265_LEVEL_IDC_2_0 = 1,
71
+ STD_VIDEO_H265_LEVEL_IDC_2_1 = 2,
72
+ STD_VIDEO_H265_LEVEL_IDC_3_0 = 3,
73
+ STD_VIDEO_H265_LEVEL_IDC_3_1 = 4,
74
+ STD_VIDEO_H265_LEVEL_IDC_4_0 = 5,
75
+ STD_VIDEO_H265_LEVEL_IDC_4_1 = 6,
76
+ STD_VIDEO_H265_LEVEL_IDC_5_0 = 7,
77
+ STD_VIDEO_H265_LEVEL_IDC_5_1 = 8,
78
+ STD_VIDEO_H265_LEVEL_IDC_5_2 = 9,
79
+ STD_VIDEO_H265_LEVEL_IDC_6_0 = 10,
80
+ STD_VIDEO_H265_LEVEL_IDC_6_1 = 11,
81
+ STD_VIDEO_H265_LEVEL_IDC_6_2 = 12,
82
+ STD_VIDEO_H265_LEVEL_IDC_INVALID = 0x7FFFFFFF,
83
+ STD_VIDEO_H265_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
84
+ } StdVideoH265LevelIdc;
85
+
86
+ typedef enum StdVideoH265SliceType {
87
+ STD_VIDEO_H265_SLICE_TYPE_B = 0,
88
+ STD_VIDEO_H265_SLICE_TYPE_P = 1,
89
+ STD_VIDEO_H265_SLICE_TYPE_I = 2,
90
+ STD_VIDEO_H265_SLICE_TYPE_INVALID = 0x7FFFFFFF,
91
+ STD_VIDEO_H265_SLICE_TYPE_MAX_ENUM = 0x7FFFFFFF
92
+ } StdVideoH265SliceType;
93
+
94
+ typedef enum StdVideoH265PictureType {
95
+ STD_VIDEO_H265_PICTURE_TYPE_P = 0,
96
+ STD_VIDEO_H265_PICTURE_TYPE_B = 1,
97
+ STD_VIDEO_H265_PICTURE_TYPE_I = 2,
98
+ STD_VIDEO_H265_PICTURE_TYPE_IDR = 3,
99
+ STD_VIDEO_H265_PICTURE_TYPE_INVALID = 0x7FFFFFFF,
100
+ STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
101
+ } StdVideoH265PictureType;
102
+
103
+ typedef enum StdVideoH265AspectRatioIdc {
104
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED = 0,
105
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE = 1,
106
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11 = 2,
107
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11 = 3,
108
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11 = 4,
109
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33 = 5,
110
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11 = 6,
111
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11 = 7,
112
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11 = 8,
113
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33 = 9,
114
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11 = 10,
115
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11 = 11,
116
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33 = 12,
117
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99 = 13,
118
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3 = 14,
119
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2 = 15,
120
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1 = 16,
121
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR = 255,
122
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID = 0x7FFFFFFF,
123
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_MAX_ENUM = 0x7FFFFFFF
124
+ } StdVideoH265AspectRatioIdc;
125
+ typedef struct StdVideoH265DecPicBufMgr {
126
+ uint32_t max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
127
+ uint8_t max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
128
+ uint8_t max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
129
+ } StdVideoH265DecPicBufMgr;
130
+
131
+ typedef struct StdVideoH265SubLayerHrdParameters {
132
+ uint32_t bit_rate_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
133
+ uint32_t cpb_size_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
134
+ uint32_t cpb_size_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
135
+ uint32_t bit_rate_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
136
+ uint32_t cbr_flag;
137
+ } StdVideoH265SubLayerHrdParameters;
138
+
139
+ typedef struct StdVideoH265HrdFlags {
140
+ uint32_t nal_hrd_parameters_present_flag : 1;
141
+ uint32_t vcl_hrd_parameters_present_flag : 1;
142
+ uint32_t sub_pic_hrd_params_present_flag : 1;
143
+ uint32_t sub_pic_cpb_params_in_pic_timing_sei_flag : 1;
144
+ uint32_t fixed_pic_rate_general_flag : 8;
145
+ uint32_t fixed_pic_rate_within_cvs_flag : 8;
146
+ uint32_t low_delay_hrd_flag : 8;
147
+ } StdVideoH265HrdFlags;
148
+
149
+ typedef struct StdVideoH265HrdParameters {
150
+ StdVideoH265HrdFlags flags;
151
+ uint8_t tick_divisor_minus2;
152
+ uint8_t du_cpb_removal_delay_increment_length_minus1;
153
+ uint8_t dpb_output_delay_du_length_minus1;
154
+ uint8_t bit_rate_scale;
155
+ uint8_t cpb_size_scale;
156
+ uint8_t cpb_size_du_scale;
157
+ uint8_t initial_cpb_removal_delay_length_minus1;
158
+ uint8_t au_cpb_removal_delay_length_minus1;
159
+ uint8_t dpb_output_delay_length_minus1;
160
+ uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
161
+ uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
162
+ uint16_t reserved[3];
163
+ const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal;
164
+ const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl;
165
+ } StdVideoH265HrdParameters;
166
+
167
+ typedef struct StdVideoH265VpsFlags {
168
+ uint32_t vps_temporal_id_nesting_flag : 1;
169
+ uint32_t vps_sub_layer_ordering_info_present_flag : 1;
170
+ uint32_t vps_timing_info_present_flag : 1;
171
+ uint32_t vps_poc_proportional_to_timing_flag : 1;
172
+ } StdVideoH265VpsFlags;
173
+
174
+ typedef struct StdVideoH265ProfileTierLevelFlags {
175
+ uint32_t general_tier_flag : 1;
176
+ uint32_t general_progressive_source_flag : 1;
177
+ uint32_t general_interlaced_source_flag : 1;
178
+ uint32_t general_non_packed_constraint_flag : 1;
179
+ uint32_t general_frame_only_constraint_flag : 1;
180
+ } StdVideoH265ProfileTierLevelFlags;
181
+
182
+ typedef struct StdVideoH265ProfileTierLevel {
183
+ StdVideoH265ProfileTierLevelFlags flags;
184
+ StdVideoH265ProfileIdc general_profile_idc;
185
+ StdVideoH265LevelIdc general_level_idc;
186
+ } StdVideoH265ProfileTierLevel;
187
+
188
+ typedef struct StdVideoH265VideoParameterSet {
189
+ StdVideoH265VpsFlags flags;
190
+ uint8_t vps_video_parameter_set_id;
191
+ uint8_t vps_max_sub_layers_minus1;
192
+ uint8_t reserved1;
193
+ uint8_t reserved2;
194
+ uint32_t vps_num_units_in_tick;
195
+ uint32_t vps_time_scale;
196
+ uint32_t vps_num_ticks_poc_diff_one_minus1;
197
+ uint32_t reserved3;
198
+ const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
199
+ const StdVideoH265HrdParameters* pHrdParameters;
200
+ const StdVideoH265ProfileTierLevel* pProfileTierLevel;
201
+ } StdVideoH265VideoParameterSet;
202
+
203
+ typedef struct StdVideoH265ScalingLists {
204
+ uint8_t ScalingList4x4[STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS];
205
+ uint8_t ScalingList8x8[STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS];
206
+ uint8_t ScalingList16x16[STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS][STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS];
207
+ uint8_t ScalingList32x32[STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS][STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS];
208
+ uint8_t ScalingListDCCoef16x16[STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS];
209
+ uint8_t ScalingListDCCoef32x32[STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS];
210
+ } StdVideoH265ScalingLists;
211
+
212
+ typedef struct StdVideoH265SpsVuiFlags {
213
+ uint32_t aspect_ratio_info_present_flag : 1;
214
+ uint32_t overscan_info_present_flag : 1;
215
+ uint32_t overscan_appropriate_flag : 1;
216
+ uint32_t video_signal_type_present_flag : 1;
217
+ uint32_t video_full_range_flag : 1;
218
+ uint32_t colour_description_present_flag : 1;
219
+ uint32_t chroma_loc_info_present_flag : 1;
220
+ uint32_t neutral_chroma_indication_flag : 1;
221
+ uint32_t field_seq_flag : 1;
222
+ uint32_t frame_field_info_present_flag : 1;
223
+ uint32_t default_display_window_flag : 1;
224
+ uint32_t vui_timing_info_present_flag : 1;
225
+ uint32_t vui_poc_proportional_to_timing_flag : 1;
226
+ uint32_t vui_hrd_parameters_present_flag : 1;
227
+ uint32_t bitstream_restriction_flag : 1;
228
+ uint32_t tiles_fixed_structure_flag : 1;
229
+ uint32_t motion_vectors_over_pic_boundaries_flag : 1;
230
+ uint32_t restricted_ref_pic_lists_flag : 1;
231
+ } StdVideoH265SpsVuiFlags;
232
+
233
+ typedef struct StdVideoH265SequenceParameterSetVui {
234
+ StdVideoH265SpsVuiFlags flags;
235
+ StdVideoH265AspectRatioIdc aspect_ratio_idc;
236
+ uint16_t sar_width;
237
+ uint16_t sar_height;
238
+ uint8_t video_format;
239
+ uint8_t colour_primaries;
240
+ uint8_t transfer_characteristics;
241
+ uint8_t matrix_coeffs;
242
+ uint8_t chroma_sample_loc_type_top_field;
243
+ uint8_t chroma_sample_loc_type_bottom_field;
244
+ uint8_t reserved1;
245
+ uint8_t reserved2;
246
+ uint16_t def_disp_win_left_offset;
247
+ uint16_t def_disp_win_right_offset;
248
+ uint16_t def_disp_win_top_offset;
249
+ uint16_t def_disp_win_bottom_offset;
250
+ uint32_t vui_num_units_in_tick;
251
+ uint32_t vui_time_scale;
252
+ uint32_t vui_num_ticks_poc_diff_one_minus1;
253
+ uint16_t min_spatial_segmentation_idc;
254
+ uint16_t reserved3;
255
+ uint8_t max_bytes_per_pic_denom;
256
+ uint8_t max_bits_per_min_cu_denom;
257
+ uint8_t log2_max_mv_length_horizontal;
258
+ uint8_t log2_max_mv_length_vertical;
259
+ const StdVideoH265HrdParameters* pHrdParameters;
260
+ } StdVideoH265SequenceParameterSetVui;
261
+
262
+ typedef struct StdVideoH265PredictorPaletteEntries {
263
+ uint16_t PredictorPaletteEntries[STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE][STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE];
264
+ } StdVideoH265PredictorPaletteEntries;
265
+
266
+ typedef struct StdVideoH265SpsFlags {
267
+ uint32_t sps_temporal_id_nesting_flag : 1;
268
+ uint32_t separate_colour_plane_flag : 1;
269
+ uint32_t conformance_window_flag : 1;
270
+ uint32_t sps_sub_layer_ordering_info_present_flag : 1;
271
+ uint32_t scaling_list_enabled_flag : 1;
272
+ uint32_t sps_scaling_list_data_present_flag : 1;
273
+ uint32_t amp_enabled_flag : 1;
274
+ uint32_t sample_adaptive_offset_enabled_flag : 1;
275
+ uint32_t pcm_enabled_flag : 1;
276
+ uint32_t pcm_loop_filter_disabled_flag : 1;
277
+ uint32_t long_term_ref_pics_present_flag : 1;
278
+ uint32_t sps_temporal_mvp_enabled_flag : 1;
279
+ uint32_t strong_intra_smoothing_enabled_flag : 1;
280
+ uint32_t vui_parameters_present_flag : 1;
281
+ uint32_t sps_extension_present_flag : 1;
282
+ uint32_t sps_range_extension_flag : 1;
283
+ uint32_t transform_skip_rotation_enabled_flag : 1;
284
+ uint32_t transform_skip_context_enabled_flag : 1;
285
+ uint32_t implicit_rdpcm_enabled_flag : 1;
286
+ uint32_t explicit_rdpcm_enabled_flag : 1;
287
+ uint32_t extended_precision_processing_flag : 1;
288
+ uint32_t intra_smoothing_disabled_flag : 1;
289
+ uint32_t high_precision_offsets_enabled_flag : 1;
290
+ uint32_t persistent_rice_adaptation_enabled_flag : 1;
291
+ uint32_t cabac_bypass_alignment_enabled_flag : 1;
292
+ uint32_t sps_scc_extension_flag : 1;
293
+ uint32_t sps_curr_pic_ref_enabled_flag : 1;
294
+ uint32_t palette_mode_enabled_flag : 1;
295
+ uint32_t sps_palette_predictor_initializers_present_flag : 1;
296
+ uint32_t intra_boundary_filtering_disabled_flag : 1;
297
+ } StdVideoH265SpsFlags;
298
+
299
+ typedef struct StdVideoH265ShortTermRefPicSetFlags {
300
+ uint32_t inter_ref_pic_set_prediction_flag : 1;
301
+ uint32_t delta_rps_sign : 1;
302
+ } StdVideoH265ShortTermRefPicSetFlags;
303
+
304
+ typedef struct StdVideoH265ShortTermRefPicSet {
305
+ StdVideoH265ShortTermRefPicSetFlags flags;
306
+ uint32_t delta_idx_minus1;
307
+ uint16_t use_delta_flag;
308
+ uint16_t abs_delta_rps_minus1;
309
+ uint16_t used_by_curr_pic_flag;
310
+ uint16_t used_by_curr_pic_s0_flag;
311
+ uint16_t used_by_curr_pic_s1_flag;
312
+ uint16_t reserved1;
313
+ uint8_t reserved2;
314
+ uint8_t reserved3;
315
+ uint8_t num_negative_pics;
316
+ uint8_t num_positive_pics;
317
+ uint16_t delta_poc_s0_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
318
+ uint16_t delta_poc_s1_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
319
+ } StdVideoH265ShortTermRefPicSet;
320
+
321
+ typedef struct StdVideoH265LongTermRefPicsSps {
322
+ uint32_t used_by_curr_pic_lt_sps_flag;
323
+ uint32_t lt_ref_pic_poc_lsb_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
324
+ } StdVideoH265LongTermRefPicsSps;
325
+
326
+ typedef struct StdVideoH265SequenceParameterSet {
327
+ StdVideoH265SpsFlags flags;
328
+ StdVideoH265ChromaFormatIdc chroma_format_idc;
329
+ uint32_t pic_width_in_luma_samples;
330
+ uint32_t pic_height_in_luma_samples;
331
+ uint8_t sps_video_parameter_set_id;
332
+ uint8_t sps_max_sub_layers_minus1;
333
+ uint8_t sps_seq_parameter_set_id;
334
+ uint8_t bit_depth_luma_minus8;
335
+ uint8_t bit_depth_chroma_minus8;
336
+ uint8_t log2_max_pic_order_cnt_lsb_minus4;
337
+ uint8_t log2_min_luma_coding_block_size_minus3;
338
+ uint8_t log2_diff_max_min_luma_coding_block_size;
339
+ uint8_t log2_min_luma_transform_block_size_minus2;
340
+ uint8_t log2_diff_max_min_luma_transform_block_size;
341
+ uint8_t max_transform_hierarchy_depth_inter;
342
+ uint8_t max_transform_hierarchy_depth_intra;
343
+ uint8_t num_short_term_ref_pic_sets;
344
+ uint8_t num_long_term_ref_pics_sps;
345
+ uint8_t pcm_sample_bit_depth_luma_minus1;
346
+ uint8_t pcm_sample_bit_depth_chroma_minus1;
347
+ uint8_t log2_min_pcm_luma_coding_block_size_minus3;
348
+ uint8_t log2_diff_max_min_pcm_luma_coding_block_size;
349
+ uint8_t reserved1;
350
+ uint8_t reserved2;
351
+ uint8_t palette_max_size;
352
+ uint8_t delta_palette_max_predictor_size;
353
+ uint8_t motion_vector_resolution_control_idc;
354
+ uint8_t sps_num_palette_predictor_initializers_minus1;
355
+ uint32_t conf_win_left_offset;
356
+ uint32_t conf_win_right_offset;
357
+ uint32_t conf_win_top_offset;
358
+ uint32_t conf_win_bottom_offset;
359
+ const StdVideoH265ProfileTierLevel* pProfileTierLevel;
360
+ const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
361
+ const StdVideoH265ScalingLists* pScalingLists;
362
+ const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
363
+ const StdVideoH265LongTermRefPicsSps* pLongTermRefPicsSps;
364
+ const StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui;
365
+ const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
366
+ } StdVideoH265SequenceParameterSet;
367
+
368
+ typedef struct StdVideoH265PpsFlags {
369
+ uint32_t dependent_slice_segments_enabled_flag : 1;
370
+ uint32_t output_flag_present_flag : 1;
371
+ uint32_t sign_data_hiding_enabled_flag : 1;
372
+ uint32_t cabac_init_present_flag : 1;
373
+ uint32_t constrained_intra_pred_flag : 1;
374
+ uint32_t transform_skip_enabled_flag : 1;
375
+ uint32_t cu_qp_delta_enabled_flag : 1;
376
+ uint32_t pps_slice_chroma_qp_offsets_present_flag : 1;
377
+ uint32_t weighted_pred_flag : 1;
378
+ uint32_t weighted_bipred_flag : 1;
379
+ uint32_t transquant_bypass_enabled_flag : 1;
380
+ uint32_t tiles_enabled_flag : 1;
381
+ uint32_t entropy_coding_sync_enabled_flag : 1;
382
+ uint32_t uniform_spacing_flag : 1;
383
+ uint32_t loop_filter_across_tiles_enabled_flag : 1;
384
+ uint32_t pps_loop_filter_across_slices_enabled_flag : 1;
385
+ uint32_t deblocking_filter_control_present_flag : 1;
386
+ uint32_t deblocking_filter_override_enabled_flag : 1;
387
+ uint32_t pps_deblocking_filter_disabled_flag : 1;
388
+ uint32_t pps_scaling_list_data_present_flag : 1;
389
+ uint32_t lists_modification_present_flag : 1;
390
+ uint32_t slice_segment_header_extension_present_flag : 1;
391
+ uint32_t pps_extension_present_flag : 1;
392
+ uint32_t cross_component_prediction_enabled_flag : 1;
393
+ uint32_t chroma_qp_offset_list_enabled_flag : 1;
394
+ uint32_t pps_curr_pic_ref_enabled_flag : 1;
395
+ uint32_t residual_adaptive_colour_transform_enabled_flag : 1;
396
+ uint32_t pps_slice_act_qp_offsets_present_flag : 1;
397
+ uint32_t pps_palette_predictor_initializers_present_flag : 1;
398
+ uint32_t monochrome_palette_flag : 1;
399
+ uint32_t pps_range_extension_flag : 1;
400
+ } StdVideoH265PpsFlags;
401
+
402
+ typedef struct StdVideoH265PictureParameterSet {
403
+ StdVideoH265PpsFlags flags;
404
+ uint8_t pps_pic_parameter_set_id;
405
+ uint8_t pps_seq_parameter_set_id;
406
+ uint8_t sps_video_parameter_set_id;
407
+ uint8_t num_extra_slice_header_bits;
408
+ uint8_t num_ref_idx_l0_default_active_minus1;
409
+ uint8_t num_ref_idx_l1_default_active_minus1;
410
+ int8_t init_qp_minus26;
411
+ uint8_t diff_cu_qp_delta_depth;
412
+ int8_t pps_cb_qp_offset;
413
+ int8_t pps_cr_qp_offset;
414
+ int8_t pps_beta_offset_div2;
415
+ int8_t pps_tc_offset_div2;
416
+ uint8_t log2_parallel_merge_level_minus2;
417
+ uint8_t log2_max_transform_skip_block_size_minus2;
418
+ uint8_t diff_cu_chroma_qp_offset_depth;
419
+ uint8_t chroma_qp_offset_list_len_minus1;
420
+ int8_t cb_qp_offset_list[STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE];
421
+ int8_t cr_qp_offset_list[STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE];
422
+ uint8_t log2_sao_offset_scale_luma;
423
+ uint8_t log2_sao_offset_scale_chroma;
424
+ int8_t pps_act_y_qp_offset_plus5;
425
+ int8_t pps_act_cb_qp_offset_plus5;
426
+ int8_t pps_act_cr_qp_offset_plus3;
427
+ uint8_t pps_num_palette_predictor_initializers;
428
+ uint8_t luma_bit_depth_entry_minus8;
429
+ uint8_t chroma_bit_depth_entry_minus8;
430
+ uint8_t num_tile_columns_minus1;
431
+ uint8_t num_tile_rows_minus1;
432
+ uint8_t reserved1;
433
+ uint8_t reserved2;
434
+ uint16_t column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE];
435
+ uint16_t row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE];
436
+ uint32_t reserved3;
437
+ const StdVideoH265ScalingLists* pScalingLists;
438
+ const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
439
+ } StdVideoH265PictureParameterSet;
440
+
441
+
442
+ #ifdef __cplusplus
443
+ }
444
+ #endif
445
+
446
+ #endif
@@ -0,0 +1,67 @@
1
+ #ifndef VULKAN_VIDEO_CODEC_H265STD_DECODE_H_
2
+ #define VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ 1
3
+
4
+ /*
5
+ ** Copyright 2015-2023 The Khronos Group Inc.
6
+ **
7
+ ** SPDX-License-Identifier: Apache-2.0
8
+ */
9
+
10
+ /*
11
+ ** This header is generated from the Khronos Vulkan XML API Registry.
12
+ **
13
+ */
14
+
15
+
16
+ #ifdef __cplusplus
17
+ extern "C" {
18
+ #endif
19
+
20
+
21
+
22
+ // vulkan_video_codec_h265std_decode is a preprocessor guard. Do not pass it to API calls.
23
+ #define vulkan_video_codec_h265std_decode 1
24
+ #include "vulkan_video_codec_h265std.h"
25
+
26
+ #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0 VK_MAKE_VIDEO_STD_VERSION(1, 0, 0)
27
+
28
+ #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0
29
+ #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
30
+ #define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
31
+ typedef struct StdVideoDecodeH265PictureInfoFlags {
32
+ uint32_t IrapPicFlag : 1;
33
+ uint32_t IdrPicFlag : 1;
34
+ uint32_t IsReference : 1;
35
+ uint32_t short_term_ref_pic_set_sps_flag : 1;
36
+ } StdVideoDecodeH265PictureInfoFlags;
37
+
38
+ typedef struct StdVideoDecodeH265PictureInfo {
39
+ StdVideoDecodeH265PictureInfoFlags flags;
40
+ uint8_t sps_video_parameter_set_id;
41
+ uint8_t pps_seq_parameter_set_id;
42
+ uint8_t pps_pic_parameter_set_id;
43
+ uint8_t NumDeltaPocsOfRefRpsIdx;
44
+ int32_t PicOrderCntVal;
45
+ uint16_t NumBitsForSTRefPicSetInSlice;
46
+ uint16_t reserved;
47
+ uint8_t RefPicSetStCurrBefore[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
48
+ uint8_t RefPicSetStCurrAfter[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
49
+ uint8_t RefPicSetLtCurr[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
50
+ } StdVideoDecodeH265PictureInfo;
51
+
52
+ typedef struct StdVideoDecodeH265ReferenceInfoFlags {
53
+ uint32_t used_for_long_term_reference : 1;
54
+ uint32_t unused_for_reference : 1;
55
+ } StdVideoDecodeH265ReferenceInfoFlags;
56
+
57
+ typedef struct StdVideoDecodeH265ReferenceInfo {
58
+ StdVideoDecodeH265ReferenceInfoFlags flags;
59
+ int32_t PicOrderCntVal;
60
+ } StdVideoDecodeH265ReferenceInfo;
61
+
62
+
63
+ #ifdef __cplusplus
64
+ }
65
+ #endif
66
+
67
+ #endif
@@ -0,0 +1,36 @@
1
+ #ifndef VULKAN_VIDEO_CODECS_COMMON_H_
2
+ #define VULKAN_VIDEO_CODECS_COMMON_H_ 1
3
+
4
+ /*
5
+ ** Copyright 2015-2023 The Khronos Group Inc.
6
+ **
7
+ ** SPDX-License-Identifier: Apache-2.0
8
+ */
9
+
10
+ /*
11
+ ** This header is generated from the Khronos Vulkan XML API Registry.
12
+ **
13
+ */
14
+
15
+
16
+ #ifdef __cplusplus
17
+ extern "C" {
18
+ #endif
19
+
20
+
21
+
22
+ // vulkan_video_codecs_common is a preprocessor guard. Do not pass it to API calls.
23
+ #define vulkan_video_codecs_common 1
24
+ #if !defined(VK_NO_STDINT_H)
25
+ #include <stdint.h>
26
+ #endif
27
+
28
+ #define VK_MAKE_VIDEO_STD_VERSION(major, minor, patch) \
29
+ ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
30
+
31
+
32
+ #ifdef __cplusplus
33
+ }
34
+ #endif
35
+
36
+ #endif
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2021 The Khronos Group Inc.
5
+ ** Copyright 2015-2023 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -38,7 +38,6 @@
38
38
 
39
39
 
40
40
  #ifdef VK_USE_PLATFORM_WAYLAND_KHR
41
- #include <wayland-client.h>
42
41
  #include "vulkan_wayland.h"
43
42
  #endif
44
43
 
@@ -85,6 +84,14 @@
85
84
  #include "vulkan_screen.h"
86
85
  #endif
87
86
 
87
+
88
+ #ifdef VK_USE_PLATFORM_SCI
89
+ #include <nvscisync.h>
90
+ #include <nvscibuf.h>
91
+ #include "vulkan_sci.h"
92
+ #endif
93
+
94
+
88
95
  #ifdef VK_ENABLE_BETA_EXTENSIONS
89
96
  #include "vulkan_beta.h"
90
97
  #endif
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_ANDROID_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2021 The Khronos Group Inc.
5
+ ** Copyright 2015-2023 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -19,6 +19,7 @@ extern "C" {
19
19
 
20
20
 
21
21
 
22
+ // VK_KHR_android_surface is a preprocessor guard. Do not pass it to API calls.
22
23
  #define VK_KHR_android_surface 1
23
24
  struct ANativeWindow;
24
25
  #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
@@ -42,9 +43,10 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(
42
43
  #endif
43
44
 
44
45
 
46
+ // VK_ANDROID_external_memory_android_hardware_buffer is a preprocessor guard. Do not pass it to API calls.
45
47
  #define VK_ANDROID_external_memory_android_hardware_buffer 1
46
48
  struct AHardwareBuffer;
47
- #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 4
49
+ #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 5
48
50
  #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME "VK_ANDROID_external_memory_android_hardware_buffer"
49
51
  typedef struct VkAndroidHardwareBufferUsageANDROID {
50
52
  VkStructureType sType;
@@ -95,7 +97,7 @@ typedef struct VkAndroidHardwareBufferFormatProperties2ANDROID {
95
97
  void* pNext;
96
98
  VkFormat format;
97
99
  uint64_t externalFormat;
98
- VkFormatFeatureFlags2KHR formatFeatures;
100
+ VkFormatFeatureFlags2 formatFeatures;
99
101
  VkComponentMapping samplerYcbcrConversionComponents;
100
102
  VkSamplerYcbcrModelConversion suggestedYcbcrModel;
101
103
  VkSamplerYcbcrRange suggestedYcbcrRange;
@@ -118,6 +120,32 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryAndroidHardwareBufferANDROID(
118
120
  struct AHardwareBuffer** pBuffer);
119
121
  #endif
120
122
 
123
+
124
+ // VK_ANDROID_external_format_resolve is a preprocessor guard. Do not pass it to API calls.
125
+ #define VK_ANDROID_external_format_resolve 1
126
+ #define VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_SPEC_VERSION 1
127
+ #define VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_EXTENSION_NAME "VK_ANDROID_external_format_resolve"
128
+ typedef struct VkPhysicalDeviceExternalFormatResolveFeaturesANDROID {
129
+ VkStructureType sType;
130
+ void* pNext;
131
+ VkBool32 externalFormatResolve;
132
+ } VkPhysicalDeviceExternalFormatResolveFeaturesANDROID;
133
+
134
+ typedef struct VkPhysicalDeviceExternalFormatResolvePropertiesANDROID {
135
+ VkStructureType sType;
136
+ void* pNext;
137
+ VkBool32 nullColorAttachmentWithExternalFormatResolve;
138
+ VkChromaLocation externalFormatResolveChromaOffsetX;
139
+ VkChromaLocation externalFormatResolveChromaOffsetY;
140
+ } VkPhysicalDeviceExternalFormatResolvePropertiesANDROID;
141
+
142
+ typedef struct VkAndroidHardwareBufferFormatResolvePropertiesANDROID {
143
+ VkStructureType sType;
144
+ void* pNext;
145
+ VkFormat colorAttachmentFormat;
146
+ } VkAndroidHardwareBufferFormatResolvePropertiesANDROID;
147
+
148
+
121
149
  #ifdef __cplusplus
122
150
  }
123
151
  #endif