@shopify/react-native-skia 2.6.4 → 2.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/android/CMakeLists.txt +8 -4
  2. package/android/build.gradle +22 -3
  3. package/android/cpp/rnskia-android/RNSkAndroidPlatformContext.h +62 -0
  4. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaWebGPUViewManagerDelegate.java +35 -0
  5. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaWebGPUViewManagerInterface.java +17 -0
  6. package/apple/RNSkApplePlatformContext.h +2 -0
  7. package/apple/RNSkApplePlatformContext.mm +71 -0
  8. package/apple/RNWebGPUAppleNativeBuffer.mm +33 -0
  9. package/cpp/api/JsiNativeBuffer.h +9 -1
  10. package/cpp/api/JsiSkAnimatedImageFactory.h +1 -1
  11. package/cpp/api/JsiSkApi.h +2 -2
  12. package/cpp/api/JsiSkCanvas.h +34 -1
  13. package/cpp/api/JsiSkDataFactory.h +1 -1
  14. package/cpp/api/JsiSkFont.h +1 -1
  15. package/cpp/api/JsiSkFontMgr.h +1 -1
  16. package/cpp/api/JsiSkHostObjects.h +3 -3
  17. package/cpp/api/JsiSkImage.h +14 -6
  18. package/cpp/api/JsiSkImageFactory.h +2 -2
  19. package/cpp/api/JsiSkPath.h +1 -1
  20. package/cpp/api/JsiSkPathFactory.h +1 -1
  21. package/cpp/api/JsiSkSurface.h +18 -6
  22. package/cpp/api/JsiSkTypeface.h +1 -1
  23. package/cpp/api/JsiSkTypefaceFontProvider.h +1 -1
  24. package/cpp/api/JsiSkiaContext.h +2 -2
  25. package/cpp/api/JsiTextureInfo.h +1 -1
  26. package/cpp/api/JsiVideo.h +2 -2
  27. package/cpp/api/recorder/Drawings.h +1 -1
  28. package/cpp/api/recorder/JsiRecorder.h +4 -4
  29. package/cpp/api/recorder/RNRecorder.h +1 -1
  30. package/cpp/jsi/ViewProperty.h +1 -1
  31. package/cpp/rnskia/RNDawnContext.h +13 -0
  32. package/cpp/rnskia/RNDawnUtils.h +11 -1
  33. package/cpp/rnskia/RNSkJsiViewApi.h +2 -2
  34. package/cpp/rnskia/RNSkManager.cpp +88 -2
  35. package/cpp/rnskia/RNSkPictureView.h +4 -4
  36. package/cpp/rnskia/RNSkPlatformContext.h +7 -0
  37. package/cpp/rnskia/RNSkView.h +9 -6
  38. package/cpp/rnwgpu/ArrayBuffer.h +51 -7
  39. package/cpp/rnwgpu/api/AppleNativeBuffer.h +22 -0
  40. package/cpp/rnwgpu/api/Convertors.h +33 -11
  41. package/cpp/rnwgpu/api/GPU.cpp +0 -3
  42. package/cpp/rnwgpu/api/GPUAdapter.cpp +37 -7
  43. package/cpp/rnwgpu/api/GPUBuffer.h +1 -1
  44. package/cpp/rnwgpu/api/GPUDevice.cpp +84 -6
  45. package/cpp/rnwgpu/api/GPUDevice.h +12 -0
  46. package/cpp/rnwgpu/api/GPUExternalTexture.cpp +139 -0
  47. package/cpp/rnwgpu/api/GPUExternalTexture.h +52 -2
  48. package/cpp/rnwgpu/api/GPUQueue.cpp +50 -45
  49. package/cpp/rnwgpu/api/GPUShaderModule.cpp +1 -1
  50. package/cpp/rnwgpu/api/GPUSharedFence.cpp +80 -0
  51. package/cpp/rnwgpu/api/GPUSharedFence.h +53 -0
  52. package/cpp/rnwgpu/api/GPUSharedTextureMemory.cpp +135 -0
  53. package/cpp/rnwgpu/api/GPUSharedTextureMemory.h +75 -0
  54. package/cpp/rnwgpu/api/ImageBitmap.h +62 -0
  55. package/cpp/rnwgpu/api/NativeBufferUtils.h +87 -0
  56. package/cpp/rnwgpu/api/descriptors/GPUBindGroupEntry.h +4 -1
  57. package/cpp/rnwgpu/api/descriptors/GPUCanvasConfiguration.h +1 -1
  58. package/cpp/rnwgpu/api/descriptors/GPUDawnTogglesDescriptor.h +56 -0
  59. package/cpp/rnwgpu/api/descriptors/GPUDeviceDescriptor.h +10 -0
  60. package/cpp/rnwgpu/api/descriptors/GPUExternalTextureDescriptor.h +43 -24
  61. package/cpp/rnwgpu/api/descriptors/GPUImageCopyExternalImage.h +9 -9
  62. package/cpp/rnwgpu/api/descriptors/GPUImageCopyTexture.h +1 -1
  63. package/cpp/rnwgpu/api/descriptors/GPUImageCopyTextureTagged.h +2 -2
  64. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceDescriptor.h +58 -0
  65. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceState.h +51 -0
  66. package/cpp/rnwgpu/api/descriptors/GPUSharedTextureMemoryDescriptor.h +73 -0
  67. package/cpp/rnwgpu/api/descriptors/GPUTextureDescriptor.h +1 -1
  68. package/cpp/rnwgpu/api/descriptors/GPUUncapturedErrorEventInit.h +1 -1
  69. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +1 -1
  70. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +1 -1
  71. package/cpp/skia/include/android/SkAnimatedImage.h +1 -1
  72. package/cpp/skia/include/codec/SkCodec.h +0 -8
  73. package/cpp/skia/include/codec/SkEncodedOrigin.h +1 -1
  74. package/cpp/skia/include/codec/SkPngRustDecoder.h +1 -1
  75. package/cpp/skia/include/core/SkBitmap.h +2 -8
  76. package/cpp/skia/include/core/SkCPURecorder.h +3 -1
  77. package/cpp/skia/include/core/SkCanvasVirtualEnforcer.h +1 -1
  78. package/cpp/skia/include/core/SkColorType.h +5 -3
  79. package/cpp/skia/include/core/SkContourMeasure.h +1 -1
  80. package/cpp/skia/include/core/SkCoverageMode.h +1 -1
  81. package/cpp/skia/include/core/SkCubicMap.h +1 -1
  82. package/cpp/skia/include/core/SkExecutor.h +1 -1
  83. package/cpp/skia/include/core/SkFont.h +15 -0
  84. package/cpp/skia/include/core/SkFontArguments.h +6 -1
  85. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  86. package/cpp/skia/include/core/SkFontMgr.h +36 -1
  87. package/cpp/skia/include/core/SkFontParameters.h +1 -1
  88. package/cpp/skia/include/core/SkFontScanner.h +1 -1
  89. package/cpp/skia/include/core/SkFontTypes.h +1 -1
  90. package/cpp/skia/include/core/SkM44.h +1 -1
  91. package/cpp/skia/include/core/SkMilestone.h +1 -1
  92. package/cpp/skia/include/core/SkOpenTypeSVGDecoder.h +1 -1
  93. package/cpp/skia/include/core/SkPathBuilder.h +10 -4
  94. package/cpp/skia/include/core/SkPathIter.h +1 -1
  95. package/cpp/skia/include/core/SkPathTypes.h +1 -1
  96. package/cpp/skia/include/core/SkPixelRef.h +4 -1
  97. package/cpp/skia/include/core/SkRecorder.h +2 -1
  98. package/cpp/skia/include/core/SkRegion.h +17 -6
  99. package/cpp/skia/include/core/SkSamplingOptions.h +1 -1
  100. package/cpp/skia/include/core/SkSerialProcs.h +8 -1
  101. package/cpp/skia/include/core/SkShader.h +3 -5
  102. package/cpp/skia/include/core/SkSpan.h +1 -1
  103. package/cpp/skia/include/core/SkStream.h +1 -1
  104. package/cpp/skia/include/core/SkStrikeRef.h +80 -0
  105. package/cpp/skia/include/core/SkTileMode.h +1 -1
  106. package/cpp/skia/include/core/SkVertices.h +1 -1
  107. package/cpp/skia/include/core/SkYUVAPixmaps.h +3 -5
  108. package/cpp/skia/include/docs/SkPDFDocument.h +1 -1
  109. package/cpp/skia/include/docs/SkXPSDocument.h +1 -1
  110. package/cpp/skia/include/effects/SkGradient.h +1 -1
  111. package/cpp/skia/include/effects/SkHighContrastFilter.h +1 -1
  112. package/cpp/skia/include/effects/SkRuntimeEffect.h +2 -2
  113. package/cpp/skia/include/effects/SkShaderMaskFilter.h +1 -1
  114. package/cpp/skia/include/effects/SkTrimPathEffect.h +1 -1
  115. package/cpp/skia/include/encode/SkEncoder.h +1 -1
  116. package/cpp/skia/include/encode/SkJpegEncoder.h +1 -1
  117. package/cpp/skia/include/encode/SkPngEncoder.h +1 -1
  118. package/cpp/skia/include/encode/SkPngRustEncoder.h +1 -1
  119. package/cpp/skia/include/encode/SkWebpEncoder.h +1 -1
  120. package/cpp/skia/include/gpu/GpuTypes.h +2 -0
  121. package/cpp/skia/include/gpu/MutableTextureState.h +1 -1
  122. package/cpp/skia/include/gpu/ganesh/GrBackendSemaphore.h +1 -1
  123. package/cpp/skia/include/gpu/ganesh/GrBackendSurface.h +6 -62
  124. package/cpp/skia/include/gpu/ganesh/GrContextThreadSafeProxy.h +1 -1
  125. package/cpp/skia/include/gpu/ganesh/GrDirectContext.h +1 -1
  126. package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkarounds.h +1 -1
  127. package/cpp/skia/include/gpu/ganesh/GrRecordingContext.h +2 -1
  128. package/cpp/skia/include/gpu/ganesh/mock/GrMockBackendSurface.h +59 -0
  129. package/cpp/skia/include/gpu/ganesh/mock/GrMockTypes.h +1 -1
  130. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendContext.h +1 -1
  131. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlTypes.h +1 -1
  132. package/cpp/skia/include/gpu/ganesh/vk/GrBackendDrawableInfo.h +1 -1
  133. package/cpp/skia/include/gpu/graphite/Context.h +12 -5
  134. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +6 -0
  135. package/cpp/skia/include/gpu/graphite/Image.h +82 -9
  136. package/cpp/skia/include/gpu/graphite/PrecompileContext.h +7 -2
  137. package/cpp/skia/include/gpu/graphite/Recorder.h +6 -4
  138. package/cpp/skia/include/gpu/graphite/precompile/PrecompileColorFilter.h +11 -1
  139. package/cpp/skia/include/gpu/graphite/precompile/PrecompileShader.h +1 -0
  140. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +1 -1
  141. package/cpp/skia/include/gpu/mtl/MtlMemoryAllocator.h +1 -1
  142. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +1 -1
  143. package/cpp/skia/include/gpu/vk/VulkanMemoryAllocator.h +1 -1
  144. package/cpp/skia/include/gpu/vk/VulkanTypes.h +1 -1
  145. package/cpp/skia/include/ports/SkCFObject.h +1 -1
  146. package/cpp/skia/include/ports/SkFontMgr_Fontations.h +1 -1
  147. package/cpp/skia/include/ports/SkFontMgr_android_ndk.h +1 -1
  148. package/cpp/skia/include/ports/SkFontMgr_data.h +1 -1
  149. package/cpp/skia/include/ports/SkFontMgr_fuchsia.h +1 -1
  150. package/cpp/skia/include/ports/SkFontMgr_mac_ct.h +1 -1
  151. package/cpp/skia/include/ports/SkFontScanner_Fontations.h +1 -1
  152. package/cpp/skia/include/ports/SkFontScanner_FreeType.h +1 -1
  153. package/cpp/skia/include/ports/SkTypeface_fontations.h +1 -1
  154. package/cpp/skia/include/private/SkExif.h +1 -1
  155. package/cpp/skia/include/private/SkGainmapInfo.h +1 -1
  156. package/cpp/skia/include/private/SkGainmapShader.h +1 -1
  157. package/cpp/skia/include/private/SkHdrMetadata.h +21 -0
  158. package/cpp/skia/include/private/SkJpegGainmapEncoder.h +1 -1
  159. package/cpp/skia/include/private/SkPixelStorage.h +37 -0
  160. package/cpp/skia/include/private/SkXmp.h +1 -1
  161. package/cpp/skia/include/private/base/SkAssert.h +6 -5
  162. package/cpp/skia/include/private/base/SkContainers.h +1 -1
  163. package/cpp/skia/include/private/base/SkFeatures.h +30 -30
  164. package/cpp/skia/include/private/base/SkLog.h +1 -7
  165. package/cpp/skia/include/private/base/SkLogPriority.h +4 -5
  166. package/cpp/skia/include/private/base/SkMacros.h +1 -1
  167. package/cpp/skia/include/private/base/SkMalloc.h +1 -1
  168. package/cpp/skia/include/private/base/SkSafe32.h +1 -1
  169. package/cpp/skia/include/private/base/SkSpan_impl.h +1 -1
  170. package/cpp/skia/include/private/base/SkTDArray.h +13 -1
  171. package/cpp/skia/include/private/base/SkTPin.h +1 -1
  172. package/cpp/skia/include/private/base/SkTo.h +1 -1
  173. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +1 -1
  174. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +1 -1
  175. package/cpp/skia/include/private/chromium/SkCodecsICCProfileChromium.h +52 -0
  176. package/cpp/skia/include/private/chromium/SkExifChromium.h +26 -0
  177. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +1 -1
  178. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +1 -1
  179. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +2 -1
  180. package/cpp/skia/include/private/gpu/vk/SkiaVulkan.h +1 -1
  181. package/cpp/skia/include/sksl/SkSLDebugTrace.h +1 -1
  182. package/cpp/skia/include/third_party/vulkan/vulkan/vk_icd.h +41 -51
  183. package/cpp/skia/include/third_party/vulkan/vulkan/vk_layer.h +42 -53
  184. package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +2 -1
  185. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std.h +158 -154
  186. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std_decode.h +68 -65
  187. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std_encode.h +90 -87
  188. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std.h +9 -9
  189. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_decode.h +2 -2
  190. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_encode.h +82 -79
  191. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std.h +24 -24
  192. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_decode.h +2 -2
  193. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_encode.h +95 -96
  194. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_vp9std.h +151 -0
  195. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_vp9std_decode.h +68 -0
  196. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codecs_common.h +1 -1
  197. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +5 -1
  198. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +7 -1
  199. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_beta.h +291 -158
  200. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +13174 -10113
  201. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_directfb.h +23 -19
  202. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_fuchsia.h +159 -165
  203. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ggp.h +22 -19
  204. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +3 -1
  205. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +3 -1
  206. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_metal.h +94 -88
  207. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ohos.h +120 -0
  208. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_screen.h +55 -51
  209. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_vi.h +18 -15
  210. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_wayland.h +23 -19
  211. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +31 -1
  212. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +5 -1
  213. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xlib.h +27 -27
  214. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xlib_xrandr.h +20 -16
  215. package/cpp/skia/include/utils/SkEventTracer.h +6 -1
  216. package/cpp/skia/include/utils/SkOrderedFontMgr.h +1 -1
  217. package/cpp/skia/include/utils/SkShadowUtils.h +1 -1
  218. package/cpp/skia/include/utils/SkTextUtils.h +1 -1
  219. package/cpp/skia/modules/jsonreader/SkJSONReader.cpp +20 -4
  220. package/cpp/skia/modules/skcms/src/Transform_inl.h +11 -15
  221. package/cpp/skia/modules/skcms/src/skcms_public.h +2 -0
  222. package/cpp/skia/modules/skottie/include/ExternalLayer.h +1 -1
  223. package/cpp/skia/modules/skottie/include/Skottie.h +1 -1
  224. package/cpp/skia/modules/skottie/include/SkottieProperty.h +1 -1
  225. package/cpp/skia/modules/skottie/include/SlotManager.h +1 -1
  226. package/cpp/skia/modules/skottie/include/TextShaper.h +1 -1
  227. package/cpp/skia/modules/skottie/src/SkottieValue.h +1 -1
  228. package/cpp/skia/modules/skottie/src/animator/Animator.h +1 -1
  229. package/cpp/skia/modules/skottie/src/text/Font.h +1 -1
  230. package/cpp/skia/modules/skottie/src/text/TextAdapter.h +1 -1
  231. package/cpp/skia/modules/skottie/src/text/TextAnimator.h +3 -2
  232. package/cpp/skia/modules/skottie/src/text/TextValue.h +1 -1
  233. package/cpp/skia/modules/skparagraph/include/DartTypes.h +1 -1
  234. package/cpp/skia/modules/skparagraph/include/FontArguments.h +1 -1
  235. package/cpp/skia/modules/skparagraph/include/FontCollection.h +5 -1
  236. package/cpp/skia/modules/skparagraph/include/Metrics.h +1 -1
  237. package/cpp/skia/modules/skparagraph/include/Paragraph.h +1 -1
  238. package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +1 -1
  239. package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -1
  240. package/cpp/skia/modules/skparagraph/include/ParagraphPainter.h +1 -1
  241. package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +12 -5
  242. package/cpp/skia/modules/skparagraph/include/TextShadow.h +1 -1
  243. package/cpp/skia/modules/skparagraph/include/TextStyle.h +1 -1
  244. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -1
  245. package/cpp/skia/modules/sksg/include/SkSGClipEffect.h +1 -1
  246. package/cpp/skia/modules/sksg/include/SkSGColorFilter.h +1 -1
  247. package/cpp/skia/modules/sksg/include/SkSGDraw.h +1 -1
  248. package/cpp/skia/modules/sksg/include/SkSGEffectNode.h +1 -1
  249. package/cpp/skia/modules/sksg/include/SkSGGeometryEffect.h +1 -1
  250. package/cpp/skia/modules/sksg/include/SkSGGeometryNode.h +1 -1
  251. package/cpp/skia/modules/sksg/include/SkSGGradient.h +1 -1
  252. package/cpp/skia/modules/sksg/include/SkSGGroup.h +1 -1
  253. package/cpp/skia/modules/sksg/include/SkSGImage.h +1 -1
  254. package/cpp/skia/modules/sksg/include/SkSGInvalidationController.h +1 -1
  255. package/cpp/skia/modules/sksg/include/SkSGMaskEffect.h +1 -1
  256. package/cpp/skia/modules/sksg/include/SkSGMerge.h +1 -1
  257. package/cpp/skia/modules/sksg/include/SkSGNode.h +1 -1
  258. package/cpp/skia/modules/sksg/include/SkSGOpacityEffect.h +1 -1
  259. package/cpp/skia/modules/sksg/include/SkSGPaint.h +1 -1
  260. package/cpp/skia/modules/sksg/include/SkSGPath.h +1 -1
  261. package/cpp/skia/modules/sksg/include/SkSGPlane.h +1 -1
  262. package/cpp/skia/modules/sksg/include/SkSGRect.h +1 -1
  263. package/cpp/skia/modules/sksg/include/SkSGRenderEffect.h +1 -1
  264. package/cpp/skia/modules/sksg/include/SkSGRenderNode.h +1 -1
  265. package/cpp/skia/modules/sksg/include/SkSGScene.h +1 -1
  266. package/cpp/skia/modules/sksg/include/SkSGText.h +1 -1
  267. package/cpp/skia/modules/sksg/include/SkSGTransform.h +1 -1
  268. package/cpp/skia/modules/skshaper/include/SkShaper_coretext.h +8 -1
  269. package/cpp/skia/modules/svg/include/SkSVGFe.h +1 -1
  270. package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +1 -1
  271. package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +1 -1
  272. package/cpp/skia/modules/svg/include/SkSVGFeComponentTransfer.h +1 -1
  273. package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +1 -1
  274. package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +1 -1
  275. package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +1 -1
  276. package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +1 -1
  277. package/cpp/skia/modules/svg/include/SkSVGFeImage.h +1 -1
  278. package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +1 -1
  279. package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +1 -1
  280. package/cpp/skia/modules/svg/include/SkSVGFeMerge.h +1 -1
  281. package/cpp/skia/modules/svg/include/SkSVGFeMorphology.h +1 -1
  282. package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +1 -1
  283. package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +1 -1
  284. package/cpp/skia/modules/svg/include/SkSVGFilter.h +1 -1
  285. package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +1 -1
  286. package/cpp/skia/modules/svg/include/SkSVGGradient.h +1 -1
  287. package/cpp/skia/modules/svg/include/SkSVGImage.h +1 -1
  288. package/cpp/skia/modules/svg/include/SkSVGMask.h +1 -1
  289. package/cpp/skia/modules/svg/include/SkSVGOpenTypeSVGDecoder.h +1 -1
  290. package/cpp/skia/modules/svg/include/SkSVGPattern.h +1 -1
  291. package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +1 -1
  292. package/cpp/skia/modules/svg/include/SkSVGText.h +1 -1
  293. package/cpp/skia/modules/svg/include/SkSVGUse.h +1 -1
  294. package/cpp/skia/src/base/SkAutoLocaleSetter.h +94 -0
  295. package/cpp/skia/src/base/SkUTF.h +1 -1
  296. package/lib/commonjs/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
  297. package/lib/commonjs/skia/types/NativeBuffer/NativeBufferFactory.js.map +1 -1
  298. package/lib/commonjs/skia/types/WebGPU.d.ts +153 -0
  299. package/lib/commonjs/skia/types/WebGPU.js +6 -0
  300. package/lib/commonjs/skia/types/WebGPU.js.map +1 -0
  301. package/lib/commonjs/skia/types/index.d.ts +1 -0
  302. package/lib/commonjs/skia/types/index.js +11 -0
  303. package/lib/commonjs/skia/types/index.js.map +1 -1
  304. package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
  305. package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.js +19 -0
  306. package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.js.map +1 -1
  307. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  308. package/lib/module/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
  309. package/lib/module/skia/types/NativeBuffer/NativeBufferFactory.js.map +1 -1
  310. package/lib/module/skia/types/WebGPU.d.ts +153 -0
  311. package/lib/module/skia/types/WebGPU.js +2 -0
  312. package/lib/module/skia/types/WebGPU.js.map +1 -0
  313. package/lib/module/skia/types/index.d.ts +1 -0
  314. package/lib/module/skia/types/index.js +1 -0
  315. package/lib/module/skia/types/index.js.map +1 -1
  316. package/lib/module/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
  317. package/lib/module/skia/web/JsiSkNativeBufferFactory.js +19 -0
  318. package/lib/module/skia/web/JsiSkNativeBufferFactory.js.map +1 -1
  319. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  320. package/lib/module/web/LoadSkiaWeb.js +1 -2
  321. package/lib/module/web/LoadSkiaWeb.js.map +1 -1
  322. package/lib/typescript/lib/commonjs/skia/types/WebGPU.d.ts +1 -0
  323. package/lib/typescript/lib/commonjs/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
  324. package/lib/typescript/lib/module/skia/types/WebGPU.d.ts +1 -0
  325. package/lib/typescript/lib/module/skia/types/index.d.ts +1 -0
  326. package/lib/typescript/lib/module/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
  327. package/lib/typescript/src/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
  328. package/lib/typescript/src/skia/types/WebGPU.d.ts +153 -0
  329. package/lib/typescript/src/skia/types/index.d.ts +1 -0
  330. package/lib/typescript/src/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
  331. package/package.json +14 -12
  332. package/react-native-skia.podspec +59 -7
  333. package/src/skia/types/NativeBuffer/NativeBufferFactory.ts +10 -1
  334. package/src/skia/types/WebGPU.ts +186 -0
  335. package/src/skia/types/index.ts +1 -0
  336. package/src/skia/web/JsiSkNativeBufferFactory.ts +20 -0
  337. package/src/skia/web/JsiSkPath.ts +8 -2
  338. package/scripts/install-libs.js +0 -133
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2025 The Khronos Group Inc.
5
+ ** Copyright 2015-2026 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -12,131 +12,134 @@
12
12
  **
13
13
  */
14
14
 
15
+
15
16
  #ifdef __cplusplus
16
17
  extern "C" {
17
18
  #endif
18
19
 
20
+
21
+
19
22
  // vulkan_video_codec_h264std_encode is a preprocessor guard. Do not pass it to API calls.
20
23
  #define vulkan_video_codec_h264std_encode 1
21
24
  #include "vulkan_video_codec_h264std.h"
22
25
 
23
26
  #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0 VK_MAKE_VIDEO_STD_VERSION(1, 0, 0)
24
27
 
25
- #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION \
26
- VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0
28
+ #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_1_0_0
27
29
  #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_encode"
28
30
  typedef struct StdVideoEncodeH264WeightTableFlags {
29
- uint32_t luma_weight_l0_flag;
30
- uint32_t chroma_weight_l0_flag;
31
- uint32_t luma_weight_l1_flag;
32
- uint32_t chroma_weight_l1_flag;
31
+ uint32_t luma_weight_l0_flag;
32
+ uint32_t chroma_weight_l0_flag;
33
+ uint32_t luma_weight_l1_flag;
34
+ uint32_t chroma_weight_l1_flag;
33
35
  } StdVideoEncodeH264WeightTableFlags;
34
36
 
35
37
  typedef struct StdVideoEncodeH264WeightTable {
36
- StdVideoEncodeH264WeightTableFlags flags;
37
- uint8_t luma_log2_weight_denom;
38
- uint8_t chroma_log2_weight_denom;
39
- int8_t luma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF];
40
- int8_t luma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF];
41
- int8_t chroma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
42
- int8_t chroma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
43
- int8_t luma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF];
44
- int8_t luma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF];
45
- int8_t chroma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
46
- int8_t chroma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
38
+ StdVideoEncodeH264WeightTableFlags flags;
39
+ uint8_t luma_log2_weight_denom;
40
+ uint8_t chroma_log2_weight_denom;
41
+ int8_t luma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF];
42
+ int8_t luma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF];
43
+ int8_t chroma_weight_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
44
+ int8_t chroma_offset_l0[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
45
+ int8_t luma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF];
46
+ int8_t luma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF];
47
+ int8_t chroma_weight_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
48
+ int8_t chroma_offset_l1[STD_VIDEO_H264_MAX_NUM_LIST_REF][STD_VIDEO_H264_MAX_CHROMA_PLANES];
47
49
  } StdVideoEncodeH264WeightTable;
48
50
 
49
51
  typedef struct StdVideoEncodeH264SliceHeaderFlags {
50
- uint32_t direct_spatial_mv_pred_flag : 1;
51
- uint32_t num_ref_idx_active_override_flag : 1;
52
- uint32_t reserved : 30;
52
+ uint32_t direct_spatial_mv_pred_flag : 1;
53
+ uint32_t num_ref_idx_active_override_flag : 1;
54
+ uint32_t reserved : 30;
53
55
  } StdVideoEncodeH264SliceHeaderFlags;
54
56
 
55
57
  typedef struct StdVideoEncodeH264PictureInfoFlags {
56
- uint32_t IdrPicFlag : 1;
57
- uint32_t is_reference : 1;
58
- uint32_t no_output_of_prior_pics_flag : 1;
59
- uint32_t long_term_reference_flag : 1;
60
- uint32_t adaptive_ref_pic_marking_mode_flag : 1;
61
- uint32_t reserved : 27;
58
+ uint32_t IdrPicFlag : 1;
59
+ uint32_t is_reference : 1;
60
+ uint32_t no_output_of_prior_pics_flag : 1;
61
+ uint32_t long_term_reference_flag : 1;
62
+ uint32_t adaptive_ref_pic_marking_mode_flag : 1;
63
+ uint32_t reserved : 27;
62
64
  } StdVideoEncodeH264PictureInfoFlags;
63
65
 
64
66
  typedef struct StdVideoEncodeH264ReferenceInfoFlags {
65
- uint32_t used_for_long_term_reference : 1;
66
- uint32_t reserved : 31;
67
+ uint32_t used_for_long_term_reference : 1;
68
+ uint32_t reserved : 31;
67
69
  } StdVideoEncodeH264ReferenceInfoFlags;
68
70
 
69
71
  typedef struct StdVideoEncodeH264ReferenceListsInfoFlags {
70
- uint32_t ref_pic_list_modification_flag_l0 : 1;
71
- uint32_t ref_pic_list_modification_flag_l1 : 1;
72
- uint32_t reserved : 30;
72
+ uint32_t ref_pic_list_modification_flag_l0 : 1;
73
+ uint32_t ref_pic_list_modification_flag_l1 : 1;
74
+ uint32_t reserved : 30;
73
75
  } StdVideoEncodeH264ReferenceListsInfoFlags;
74
76
 
75
77
  typedef struct StdVideoEncodeH264RefListModEntry {
76
- StdVideoH264ModificationOfPicNumsIdc modification_of_pic_nums_idc;
77
- uint16_t abs_diff_pic_num_minus1;
78
- uint16_t long_term_pic_num;
78
+ StdVideoH264ModificationOfPicNumsIdc modification_of_pic_nums_idc;
79
+ uint16_t abs_diff_pic_num_minus1;
80
+ uint16_t long_term_pic_num;
79
81
  } StdVideoEncodeH264RefListModEntry;
80
82
 
81
83
  typedef struct StdVideoEncodeH264RefPicMarkingEntry {
82
- StdVideoH264MemMgmtControlOp memory_management_control_operation;
83
- uint16_t difference_of_pic_nums_minus1;
84
- uint16_t long_term_pic_num;
85
- uint16_t long_term_frame_idx;
86
- uint16_t max_long_term_frame_idx_plus1;
84
+ StdVideoH264MemMgmtControlOp memory_management_control_operation;
85
+ uint16_t difference_of_pic_nums_minus1;
86
+ uint16_t long_term_pic_num;
87
+ uint16_t long_term_frame_idx;
88
+ uint16_t max_long_term_frame_idx_plus1;
87
89
  } StdVideoEncodeH264RefPicMarkingEntry;
88
90
 
89
91
  typedef struct StdVideoEncodeH264ReferenceListsInfo {
90
- StdVideoEncodeH264ReferenceListsInfoFlags flags;
91
- uint8_t num_ref_idx_l0_active_minus1;
92
- uint8_t num_ref_idx_l1_active_minus1;
93
- uint8_t RefPicList0[STD_VIDEO_H264_MAX_NUM_LIST_REF];
94
- uint8_t RefPicList1[STD_VIDEO_H264_MAX_NUM_LIST_REF];
95
- uint8_t refList0ModOpCount;
96
- uint8_t refList1ModOpCount;
97
- uint8_t refPicMarkingOpCount;
98
- uint8_t reserved1[7];
99
- const StdVideoEncodeH264RefListModEntry* pRefList0ModOperations;
100
- const StdVideoEncodeH264RefListModEntry* pRefList1ModOperations;
101
- const StdVideoEncodeH264RefPicMarkingEntry* pRefPicMarkingOperations;
92
+ StdVideoEncodeH264ReferenceListsInfoFlags flags;
93
+ uint8_t num_ref_idx_l0_active_minus1;
94
+ uint8_t num_ref_idx_l1_active_minus1;
95
+ uint8_t RefPicList0[STD_VIDEO_H264_MAX_NUM_LIST_REF];
96
+ uint8_t RefPicList1[STD_VIDEO_H264_MAX_NUM_LIST_REF];
97
+ uint8_t refList0ModOpCount;
98
+ uint8_t refList1ModOpCount;
99
+ uint8_t refPicMarkingOpCount;
100
+ uint8_t reserved1[7];
101
+ const StdVideoEncodeH264RefListModEntry* pRefList0ModOperations;
102
+ const StdVideoEncodeH264RefListModEntry* pRefList1ModOperations;
103
+ const StdVideoEncodeH264RefPicMarkingEntry* pRefPicMarkingOperations;
102
104
  } StdVideoEncodeH264ReferenceListsInfo;
103
105
 
104
106
  typedef struct StdVideoEncodeH264PictureInfo {
105
- StdVideoEncodeH264PictureInfoFlags flags;
106
- uint8_t seq_parameter_set_id;
107
- uint8_t pic_parameter_set_id;
108
- uint16_t idr_pic_id;
109
- StdVideoH264PictureType primary_pic_type;
110
- uint32_t frame_num;
111
- int32_t PicOrderCnt;
112
- uint8_t temporal_id;
113
- uint8_t reserved1[3];
114
- const StdVideoEncodeH264ReferenceListsInfo* pRefLists;
107
+ StdVideoEncodeH264PictureInfoFlags flags;
108
+ uint8_t seq_parameter_set_id;
109
+ uint8_t pic_parameter_set_id;
110
+ uint16_t idr_pic_id;
111
+ StdVideoH264PictureType primary_pic_type;
112
+ uint32_t frame_num;
113
+ int32_t PicOrderCnt;
114
+ uint8_t temporal_id;
115
+ uint8_t reserved1[3];
116
+ const StdVideoEncodeH264ReferenceListsInfo* pRefLists;
115
117
  } StdVideoEncodeH264PictureInfo;
116
118
 
117
119
  typedef struct StdVideoEncodeH264ReferenceInfo {
118
- StdVideoEncodeH264ReferenceInfoFlags flags;
119
- StdVideoH264PictureType primary_pic_type;
120
- uint32_t FrameNum;
121
- int32_t PicOrderCnt;
122
- uint16_t long_term_pic_num;
123
- uint16_t long_term_frame_idx;
124
- uint8_t temporal_id;
120
+ StdVideoEncodeH264ReferenceInfoFlags flags;
121
+ StdVideoH264PictureType primary_pic_type;
122
+ uint32_t FrameNum;
123
+ int32_t PicOrderCnt;
124
+ uint16_t long_term_pic_num;
125
+ uint16_t long_term_frame_idx;
126
+ uint8_t temporal_id;
125
127
  } StdVideoEncodeH264ReferenceInfo;
126
128
 
127
129
  typedef struct StdVideoEncodeH264SliceHeader {
128
- StdVideoEncodeH264SliceHeaderFlags flags;
129
- uint32_t first_mb_in_slice;
130
- StdVideoH264SliceType slice_type;
131
- int8_t slice_alpha_c0_offset_div2;
132
- int8_t slice_beta_offset_div2;
133
- int8_t slice_qp_delta;
134
- uint8_t reserved1;
135
- StdVideoH264CabacInitIdc cabac_init_idc;
136
- StdVideoH264DisableDeblockingFilterIdc disable_deblocking_filter_idc;
137
- const StdVideoEncodeH264WeightTable* pWeightTable;
130
+ StdVideoEncodeH264SliceHeaderFlags flags;
131
+ uint32_t first_mb_in_slice;
132
+ StdVideoH264SliceType slice_type;
133
+ int8_t slice_alpha_c0_offset_div2;
134
+ int8_t slice_beta_offset_div2;
135
+ int8_t slice_qp_delta;
136
+ uint8_t reserved1;
137
+ StdVideoH264CabacInitIdc cabac_init_idc;
138
+ StdVideoH264DisableDeblockingFilterIdc disable_deblocking_filter_idc;
139
+ const StdVideoEncodeH264WeightTable* pWeightTable;
138
140
  } StdVideoEncodeH264SliceHeader;
139
141
 
142
+
140
143
  #ifdef __cplusplus
141
144
  }
142
145
  #endif
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_VIDEO_CODEC_H265STD_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2025 The Khronos Group Inc.
5
+ ** Copyright 2015-2026 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -22,29 +22,29 @@ extern "C" {
22
22
  // vulkan_video_codec_h265std is a preprocessor guard. Do not pass it to API calls.
23
23
  #define vulkan_video_codec_h265std 1
24
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
25
+ #define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32U
26
+ #define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7U
27
+ #define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6U
28
+ #define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16U
29
+ #define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS 6U
30
+ #define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS 64U
31
+ #define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS 6U
32
+ #define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS 64U
33
+ #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS 2U
34
+ #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64U
35
+ #define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6U
36
+ #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19U
37
+ #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21U
38
+ #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3U
39
+ #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128U
40
+ #define STD_VIDEO_H265_MAX_NUM_LIST_REF 15U
41
+ #define STD_VIDEO_H265_MAX_CHROMA_PLANES 2U
42
+ #define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64U
43
+ #define STD_VIDEO_H265_MAX_DPB_SIZE 16U
44
+ #define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32U
45
+ #define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16U
46
+ #define STD_VIDEO_H265_MAX_DELTA_POC 48U
47
+ #define STD_VIDEO_H265_NO_REFERENCE_PICTURE 0xFFU
48
48
 
49
49
  typedef enum StdVideoH265ChromaFormatIdc {
50
50
  STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME = 0,
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2025 The Khronos Group Inc.
5
+ ** Copyright 2015-2026 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -27,7 +27,7 @@ extern "C" {
27
27
 
28
28
  #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0
29
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
30
+ #define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8U
31
31
  typedef struct StdVideoDecodeH265PictureInfoFlags {
32
32
  uint32_t IrapPicFlag : 1;
33
33
  uint32_t IdrPicFlag : 1;
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_VIDEO_CODEC_H265STD_ENCODE_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2025 The Khronos Group Inc.
5
+ ** Copyright 2015-2026 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -12,145 +12,144 @@
12
12
  **
13
13
  */
14
14
 
15
+
15
16
  #ifdef __cplusplus
16
17
  extern "C" {
17
18
  #endif
18
19
 
20
+
21
+
19
22
  // vulkan_video_codec_h265std_encode is a preprocessor guard. Do not pass it to API calls.
20
23
  #define vulkan_video_codec_h265std_encode 1
21
24
  #include "vulkan_video_codec_h265std.h"
22
25
 
23
26
  #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0 VK_MAKE_VIDEO_STD_VERSION(1, 0, 0)
24
27
 
25
- #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION \
26
- VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0
28
+ #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_1_0_0
27
29
  #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_encode"
28
30
  typedef struct StdVideoEncodeH265WeightTableFlags {
29
- uint16_t luma_weight_l0_flag;
30
- uint16_t chroma_weight_l0_flag;
31
- uint16_t luma_weight_l1_flag;
32
- uint16_t chroma_weight_l1_flag;
31
+ uint16_t luma_weight_l0_flag;
32
+ uint16_t chroma_weight_l0_flag;
33
+ uint16_t luma_weight_l1_flag;
34
+ uint16_t chroma_weight_l1_flag;
33
35
  } StdVideoEncodeH265WeightTableFlags;
34
36
 
35
37
  typedef struct StdVideoEncodeH265WeightTable {
36
- StdVideoEncodeH265WeightTableFlags flags;
37
- uint8_t luma_log2_weight_denom;
38
- int8_t delta_chroma_log2_weight_denom;
39
- int8_t delta_luma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
40
- int8_t luma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
41
- int8_t delta_chroma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]
42
- [STD_VIDEO_H265_MAX_CHROMA_PLANES];
43
- int8_t delta_chroma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF]
44
- [STD_VIDEO_H265_MAX_CHROMA_PLANES];
45
- int8_t delta_luma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
46
- int8_t luma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
47
- int8_t delta_chroma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]
48
- [STD_VIDEO_H265_MAX_CHROMA_PLANES];
49
- int8_t delta_chroma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF]
50
- [STD_VIDEO_H265_MAX_CHROMA_PLANES];
38
+ StdVideoEncodeH265WeightTableFlags flags;
39
+ uint8_t luma_log2_weight_denom;
40
+ int8_t delta_chroma_log2_weight_denom;
41
+ int8_t delta_luma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
42
+ int8_t luma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
43
+ int8_t delta_chroma_weight_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES];
44
+ int8_t delta_chroma_offset_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES];
45
+ int8_t delta_luma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
46
+ int8_t luma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
47
+ int8_t delta_chroma_weight_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES];
48
+ int8_t delta_chroma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES];
51
49
  } StdVideoEncodeH265WeightTable;
52
50
 
53
51
  typedef struct StdVideoEncodeH265SliceSegmentHeaderFlags {
54
- uint32_t first_slice_segment_in_pic_flag : 1;
55
- uint32_t dependent_slice_segment_flag : 1;
56
- uint32_t slice_sao_luma_flag : 1;
57
- uint32_t slice_sao_chroma_flag : 1;
58
- uint32_t num_ref_idx_active_override_flag : 1;
59
- uint32_t mvd_l1_zero_flag : 1;
60
- uint32_t cabac_init_flag : 1;
61
- uint32_t cu_chroma_qp_offset_enabled_flag : 1;
62
- uint32_t deblocking_filter_override_flag : 1;
63
- uint32_t slice_deblocking_filter_disabled_flag : 1;
64
- uint32_t collocated_from_l0_flag : 1;
65
- uint32_t slice_loop_filter_across_slices_enabled_flag : 1;
66
- uint32_t reserved : 20;
52
+ uint32_t first_slice_segment_in_pic_flag : 1;
53
+ uint32_t dependent_slice_segment_flag : 1;
54
+ uint32_t slice_sao_luma_flag : 1;
55
+ uint32_t slice_sao_chroma_flag : 1;
56
+ uint32_t num_ref_idx_active_override_flag : 1;
57
+ uint32_t mvd_l1_zero_flag : 1;
58
+ uint32_t cabac_init_flag : 1;
59
+ uint32_t cu_chroma_qp_offset_enabled_flag : 1;
60
+ uint32_t deblocking_filter_override_flag : 1;
61
+ uint32_t slice_deblocking_filter_disabled_flag : 1;
62
+ uint32_t collocated_from_l0_flag : 1;
63
+ uint32_t slice_loop_filter_across_slices_enabled_flag : 1;
64
+ uint32_t reserved : 20;
67
65
  } StdVideoEncodeH265SliceSegmentHeaderFlags;
68
66
 
69
67
  typedef struct StdVideoEncodeH265SliceSegmentHeader {
70
- StdVideoEncodeH265SliceSegmentHeaderFlags flags;
71
- StdVideoH265SliceType slice_type;
72
- uint32_t slice_segment_address;
73
- uint8_t collocated_ref_idx;
74
- uint8_t MaxNumMergeCand;
75
- int8_t slice_cb_qp_offset;
76
- int8_t slice_cr_qp_offset;
77
- int8_t slice_beta_offset_div2;
78
- int8_t slice_tc_offset_div2;
79
- int8_t slice_act_y_qp_offset;
80
- int8_t slice_act_cb_qp_offset;
81
- int8_t slice_act_cr_qp_offset;
82
- int8_t slice_qp_delta;
83
- uint16_t reserved1;
84
- const StdVideoEncodeH265WeightTable* pWeightTable;
68
+ StdVideoEncodeH265SliceSegmentHeaderFlags flags;
69
+ StdVideoH265SliceType slice_type;
70
+ uint32_t slice_segment_address;
71
+ uint8_t collocated_ref_idx;
72
+ uint8_t MaxNumMergeCand;
73
+ int8_t slice_cb_qp_offset;
74
+ int8_t slice_cr_qp_offset;
75
+ int8_t slice_beta_offset_div2;
76
+ int8_t slice_tc_offset_div2;
77
+ int8_t slice_act_y_qp_offset;
78
+ int8_t slice_act_cb_qp_offset;
79
+ int8_t slice_act_cr_qp_offset;
80
+ int8_t slice_qp_delta;
81
+ uint16_t reserved1;
82
+ const StdVideoEncodeH265WeightTable* pWeightTable;
85
83
  } StdVideoEncodeH265SliceSegmentHeader;
86
84
 
87
85
  typedef struct StdVideoEncodeH265ReferenceListsInfoFlags {
88
- uint32_t ref_pic_list_modification_flag_l0 : 1;
89
- uint32_t ref_pic_list_modification_flag_l1 : 1;
90
- uint32_t reserved : 30;
86
+ uint32_t ref_pic_list_modification_flag_l0 : 1;
87
+ uint32_t ref_pic_list_modification_flag_l1 : 1;
88
+ uint32_t reserved : 30;
91
89
  } StdVideoEncodeH265ReferenceListsInfoFlags;
92
90
 
93
91
  typedef struct StdVideoEncodeH265ReferenceListsInfo {
94
- StdVideoEncodeH265ReferenceListsInfoFlags flags;
95
- uint8_t num_ref_idx_l0_active_minus1;
96
- uint8_t num_ref_idx_l1_active_minus1;
97
- uint8_t RefPicList0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
98
- uint8_t RefPicList1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
99
- uint8_t list_entry_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
100
- uint8_t list_entry_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
92
+ StdVideoEncodeH265ReferenceListsInfoFlags flags;
93
+ uint8_t num_ref_idx_l0_active_minus1;
94
+ uint8_t num_ref_idx_l1_active_minus1;
95
+ uint8_t RefPicList0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
96
+ uint8_t RefPicList1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
97
+ uint8_t list_entry_l0[STD_VIDEO_H265_MAX_NUM_LIST_REF];
98
+ uint8_t list_entry_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF];
101
99
  } StdVideoEncodeH265ReferenceListsInfo;
102
100
 
103
101
  typedef struct StdVideoEncodeH265PictureInfoFlags {
104
- uint32_t is_reference : 1;
105
- uint32_t IrapPicFlag : 1;
106
- uint32_t used_for_long_term_reference : 1;
107
- uint32_t discardable_flag : 1;
108
- uint32_t cross_layer_bla_flag : 1;
109
- uint32_t pic_output_flag : 1;
110
- uint32_t no_output_of_prior_pics_flag : 1;
111
- uint32_t short_term_ref_pic_set_sps_flag : 1;
112
- uint32_t slice_temporal_mvp_enabled_flag : 1;
113
- uint32_t reserved : 23;
102
+ uint32_t is_reference : 1;
103
+ uint32_t IrapPicFlag : 1;
104
+ uint32_t used_for_long_term_reference : 1;
105
+ uint32_t discardable_flag : 1;
106
+ uint32_t cross_layer_bla_flag : 1;
107
+ uint32_t pic_output_flag : 1;
108
+ uint32_t no_output_of_prior_pics_flag : 1;
109
+ uint32_t short_term_ref_pic_set_sps_flag : 1;
110
+ uint32_t slice_temporal_mvp_enabled_flag : 1;
111
+ uint32_t reserved : 23;
114
112
  } StdVideoEncodeH265PictureInfoFlags;
115
113
 
116
114
  typedef struct StdVideoEncodeH265LongTermRefPics {
117
- uint8_t num_long_term_sps;
118
- uint8_t num_long_term_pics;
119
- uint8_t lt_idx_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
120
- uint8_t poc_lsb_lt[STD_VIDEO_H265_MAX_LONG_TERM_PICS];
121
- uint16_t used_by_curr_pic_lt_flag;
122
- uint8_t delta_poc_msb_present_flag[STD_VIDEO_H265_MAX_DELTA_POC];
123
- uint8_t delta_poc_msb_cycle_lt[STD_VIDEO_H265_MAX_DELTA_POC];
115
+ uint8_t num_long_term_sps;
116
+ uint8_t num_long_term_pics;
117
+ uint8_t lt_idx_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
118
+ uint8_t poc_lsb_lt[STD_VIDEO_H265_MAX_LONG_TERM_PICS];
119
+ uint16_t used_by_curr_pic_lt_flag;
120
+ uint8_t delta_poc_msb_present_flag[STD_VIDEO_H265_MAX_DELTA_POC];
121
+ uint8_t delta_poc_msb_cycle_lt[STD_VIDEO_H265_MAX_DELTA_POC];
124
122
  } StdVideoEncodeH265LongTermRefPics;
125
123
 
126
124
  typedef struct StdVideoEncodeH265PictureInfo {
127
- StdVideoEncodeH265PictureInfoFlags flags;
128
- StdVideoH265PictureType pic_type;
129
- uint8_t sps_video_parameter_set_id;
130
- uint8_t pps_seq_parameter_set_id;
131
- uint8_t pps_pic_parameter_set_id;
132
- uint8_t short_term_ref_pic_set_idx;
133
- int32_t PicOrderCntVal;
134
- uint8_t TemporalId;
135
- uint8_t reserved1[7];
136
- const StdVideoEncodeH265ReferenceListsInfo* pRefLists;
137
- const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
138
- const StdVideoEncodeH265LongTermRefPics* pLongTermRefPics;
125
+ StdVideoEncodeH265PictureInfoFlags flags;
126
+ StdVideoH265PictureType pic_type;
127
+ uint8_t sps_video_parameter_set_id;
128
+ uint8_t pps_seq_parameter_set_id;
129
+ uint8_t pps_pic_parameter_set_id;
130
+ uint8_t short_term_ref_pic_set_idx;
131
+ int32_t PicOrderCntVal;
132
+ uint8_t TemporalId;
133
+ uint8_t reserved1[7];
134
+ const StdVideoEncodeH265ReferenceListsInfo* pRefLists;
135
+ const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
136
+ const StdVideoEncodeH265LongTermRefPics* pLongTermRefPics;
139
137
  } StdVideoEncodeH265PictureInfo;
140
138
 
141
139
  typedef struct StdVideoEncodeH265ReferenceInfoFlags {
142
- uint32_t used_for_long_term_reference : 1;
143
- uint32_t unused_for_reference : 1;
144
- uint32_t reserved : 30;
140
+ uint32_t used_for_long_term_reference : 1;
141
+ uint32_t unused_for_reference : 1;
142
+ uint32_t reserved : 30;
145
143
  } StdVideoEncodeH265ReferenceInfoFlags;
146
144
 
147
145
  typedef struct StdVideoEncodeH265ReferenceInfo {
148
- StdVideoEncodeH265ReferenceInfoFlags flags;
149
- StdVideoH265PictureType pic_type;
150
- int32_t PicOrderCntVal;
151
- uint8_t TemporalId;
146
+ StdVideoEncodeH265ReferenceInfoFlags flags;
147
+ StdVideoH265PictureType pic_type;
148
+ int32_t PicOrderCntVal;
149
+ uint8_t TemporalId;
152
150
  } StdVideoEncodeH265ReferenceInfo;
153
151
 
152
+
154
153
  #ifdef __cplusplus
155
154
  }
156
155
  #endif