@shopify/react-native-skia 2.6.4 → 2.6.5
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.
- package/android/CMakeLists.txt +7 -4
- package/android/build.gradle +22 -3
- package/android/cpp/rnskia-android/RNSkAndroidPlatformContext.h +62 -0
- package/apple/RNSkApplePlatformContext.h +2 -0
- package/apple/RNSkApplePlatformContext.mm +71 -0
- package/apple/RNWebGPUAppleNativeBuffer.mm +33 -0
- package/cpp/api/JsiNativeBuffer.h +9 -1
- package/cpp/api/JsiSkAnimatedImageFactory.h +1 -1
- package/cpp/api/JsiSkApi.h +2 -2
- package/cpp/api/JsiSkCanvas.h +1 -1
- package/cpp/api/JsiSkDataFactory.h +1 -1
- package/cpp/api/JsiSkFont.h +1 -1
- package/cpp/api/JsiSkFontMgr.h +1 -1
- package/cpp/api/JsiSkHostObjects.h +3 -3
- package/cpp/api/JsiSkImage.h +2 -2
- package/cpp/api/JsiSkImageFactory.h +2 -2
- package/cpp/api/JsiSkPath.h +1 -1
- package/cpp/api/JsiSkPathFactory.h +1 -1
- package/cpp/api/JsiSkSurface.h +13 -5
- package/cpp/api/JsiSkTypeface.h +1 -1
- package/cpp/api/JsiSkTypefaceFontProvider.h +1 -1
- package/cpp/api/JsiSkiaContext.h +2 -2
- package/cpp/api/JsiTextureInfo.h +1 -1
- package/cpp/api/JsiVideo.h +2 -2
- package/cpp/api/recorder/Drawings.h +1 -1
- package/cpp/api/recorder/JsiRecorder.h +4 -4
- package/cpp/api/recorder/RNRecorder.h +1 -1
- package/cpp/jsi/ViewProperty.h +1 -1
- package/cpp/rnskia/RNDawnContext.h +13 -0
- package/cpp/rnskia/RNDawnUtils.h +11 -1
- package/cpp/rnskia/RNSkJsiViewApi.h +2 -2
- package/cpp/rnskia/RNSkManager.cpp +88 -2
- package/cpp/rnskia/RNSkPictureView.h +4 -4
- package/cpp/rnskia/RNSkPlatformContext.h +7 -0
- package/cpp/rnskia/RNSkView.h +9 -6
- package/cpp/rnwgpu/ArrayBuffer.h +51 -7
- package/cpp/rnwgpu/api/AppleNativeBuffer.h +22 -0
- package/cpp/rnwgpu/api/Convertors.h +33 -11
- package/cpp/rnwgpu/api/GPUAdapter.cpp +28 -2
- package/cpp/rnwgpu/api/GPUBuffer.h +1 -1
- package/cpp/rnwgpu/api/GPUDevice.cpp +29 -2
- package/cpp/rnwgpu/api/GPUDevice.h +6 -0
- package/cpp/rnwgpu/api/GPUExternalTexture.cpp +139 -0
- package/cpp/rnwgpu/api/GPUExternalTexture.h +52 -2
- package/cpp/rnwgpu/api/GPUQueue.cpp +50 -45
- package/cpp/rnwgpu/api/GPUSharedTextureMemory.cpp +82 -0
- package/cpp/rnwgpu/api/GPUSharedTextureMemory.h +70 -0
- package/cpp/rnwgpu/api/ImageBitmap.h +62 -0
- package/cpp/rnwgpu/api/NativeBufferUtils.h +87 -0
- package/cpp/rnwgpu/api/descriptors/GPUBindGroupEntry.h +4 -1
- package/cpp/rnwgpu/api/descriptors/GPUCanvasConfiguration.h +1 -1
- package/cpp/rnwgpu/api/descriptors/GPUDawnTogglesDescriptor.h +56 -0
- package/cpp/rnwgpu/api/descriptors/GPUDeviceDescriptor.h +10 -0
- package/cpp/rnwgpu/api/descriptors/GPUExternalTextureDescriptor.h +43 -24
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyExternalImage.h +9 -9
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyTexture.h +1 -1
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyTextureTagged.h +2 -2
- package/cpp/rnwgpu/api/descriptors/GPUSharedTextureMemoryDescriptor.h +73 -0
- package/cpp/rnwgpu/api/descriptors/GPUTextureDescriptor.h +1 -1
- package/cpp/rnwgpu/api/descriptors/GPUUncapturedErrorEventInit.h +1 -1
- package/cpp/skia/include/core/SkRegion.h +10 -5
- package/cpp/skia/include/effects/SkRuntimeEffect.h +2 -2
- package/cpp/skia/include/gpu/graphite/Context.h +1 -1
- package/lib/commonjs/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
- package/lib/commonjs/skia/types/NativeBuffer/NativeBufferFactory.js.map +1 -1
- package/lib/commonjs/skia/types/WebGPU.d.ts +88 -0
- package/lib/commonjs/skia/types/WebGPU.js +6 -0
- package/lib/commonjs/skia/types/WebGPU.js.map +1 -0
- package/lib/commonjs/skia/types/index.d.ts +1 -0
- package/lib/commonjs/skia/types/index.js +11 -0
- package/lib/commonjs/skia/types/index.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.js +19 -0
- package/lib/commonjs/skia/web/JsiSkNativeBufferFactory.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
- package/lib/module/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
- package/lib/module/skia/types/NativeBuffer/NativeBufferFactory.js.map +1 -1
- package/lib/module/skia/types/WebGPU.d.ts +88 -0
- package/lib/module/skia/types/WebGPU.js +2 -0
- package/lib/module/skia/types/WebGPU.js.map +1 -0
- package/lib/module/skia/types/index.d.ts +1 -0
- package/lib/module/skia/types/index.js +1 -0
- package/lib/module/skia/types/index.js.map +1 -1
- package/lib/module/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/module/skia/web/JsiSkNativeBufferFactory.js +19 -0
- package/lib/module/skia/web/JsiSkNativeBufferFactory.js.map +1 -1
- package/lib/module/skia/web/JsiSkPath.js.map +1 -1
- package/lib/module/web/LoadSkiaWeb.js +1 -2
- package/lib/module/web/LoadSkiaWeb.js.map +1 -1
- package/lib/typescript/lib/commonjs/skia/types/WebGPU.d.ts +1 -0
- package/lib/typescript/lib/commonjs/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/typescript/lib/module/skia/types/WebGPU.d.ts +1 -0
- package/lib/typescript/lib/module/skia/types/index.d.ts +1 -0
- package/lib/typescript/lib/module/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/lib/typescript/src/skia/types/NativeBuffer/NativeBufferFactory.d.ts +10 -1
- package/lib/typescript/src/skia/types/WebGPU.d.ts +88 -0
- package/lib/typescript/src/skia/types/index.d.ts +1 -0
- package/lib/typescript/src/skia/web/JsiSkNativeBufferFactory.d.ts +1 -0
- package/package.json +10 -8
- package/react-native-skia.podspec +59 -7
- package/src/skia/types/NativeBuffer/NativeBufferFactory.ts +10 -1
- package/src/skia/types/WebGPU.ts +108 -0
- package/src/skia/types/index.ts +1 -0
- package/src/skia/web/JsiSkNativeBufferFactory.ts +20 -0
- package/src/skia/web/JsiSkPath.ts +8 -2
- package/scripts/install-libs.js +0 -133
|
@@ -1,26 +1,36 @@
|
|
|
1
1
|
#pragma once
|
|
2
2
|
|
|
3
|
+
#include <cstdint>
|
|
3
4
|
#include <memory>
|
|
4
5
|
#include <optional>
|
|
5
6
|
#include <string>
|
|
6
|
-
#include <variant>
|
|
7
7
|
|
|
8
8
|
#include "webgpu/webgpu_cpp.h"
|
|
9
9
|
|
|
10
|
-
#include "Convertors.h"
|
|
11
|
-
|
|
12
10
|
#include "jsi2/JSIConverter.h"
|
|
13
11
|
|
|
14
12
|
namespace jsi = facebook::jsi;
|
|
15
13
|
|
|
16
14
|
namespace rnwgpu {
|
|
17
15
|
|
|
16
|
+
// Mirror of GPUExternalTextureDescriptor from the WebGPU spec, adapted to
|
|
17
|
+
// Skia's binding. Skia has no VideoFrame; instead `source` is a native buffer
|
|
18
|
+
// pointer (the BigInt returned by Skia.NativeBuffer.MakeFromImage): a
|
|
19
|
+
// CVPixelBufferRef on Apple, an AHardwareBuffer* on Android. The pointer's
|
|
20
|
+
// lifetime is owned by the caller (Skia.NativeBuffer.Release); the imported
|
|
21
|
+
// texture must not outlive it.
|
|
22
|
+
//
|
|
23
|
+
// We don't expose colorSpace yet; the C++ side picks dst-sRGB and identity
|
|
24
|
+
// gamut, the right default for "render this BGRA frame to an sRGB framebuffer".
|
|
25
|
+
//
|
|
26
|
+
// `rotation` / `mirrored` are a non-spec extension baked into Dawn's sampling
|
|
27
|
+
// transform. `rotation` is in degrees and must be one of 0 / 90 / 180 / 270.
|
|
18
28
|
struct GPUExternalTextureDescriptor {
|
|
19
|
-
//
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
std::optional<
|
|
29
|
+
// native buffer pointer (CVPixelBufferRef / AHardwareBuffer*)
|
|
30
|
+
uint64_t source = 0;
|
|
31
|
+
std::optional<std::string> label;
|
|
32
|
+
std::optional<double> rotation;
|
|
33
|
+
std::optional<bool> mirrored;
|
|
24
34
|
};
|
|
25
35
|
|
|
26
36
|
} // namespace rnwgpu
|
|
@@ -31,23 +41,21 @@ template <>
|
|
|
31
41
|
struct JSIConverter<std::shared_ptr<rnwgpu::GPUExternalTextureDescriptor>> {
|
|
32
42
|
static std::shared_ptr<rnwgpu::GPUExternalTextureDescriptor>
|
|
33
43
|
fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
|
|
34
|
-
auto result = std::
|
|
44
|
+
auto result = std::make_shared<rnwgpu::GPUExternalTextureDescriptor>();
|
|
35
45
|
if (!outOfBounds && arg.isObject()) {
|
|
36
46
|
auto value = arg.getObject(runtime);
|
|
37
47
|
if (value.hasProperty(runtime, "source")) {
|
|
38
48
|
auto prop = value.getProperty(runtime, "source");
|
|
39
|
-
//
|
|
40
|
-
//
|
|
41
|
-
//
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
// JSIConverter<std::optional<wgpu::definedColorSpace>>::fromJSI(
|
|
50
|
-
// runtime, prop, false);
|
|
49
|
+
// The native buffer pointer arrives as a BigInt (uintptr_t value). It
|
|
50
|
+
// must be a BigInt: a JS number can't represent a 64-bit pointer
|
|
51
|
+
// without truncation, so we reject it rather than corrupt the address.
|
|
52
|
+
if (prop.isBigInt()) {
|
|
53
|
+
result->source = prop.asBigInt(runtime).asUint64(runtime);
|
|
54
|
+
} else if (!prop.isUndefined() && !prop.isNull()) {
|
|
55
|
+
throw jsi::JSError(
|
|
56
|
+
runtime, "GPUExternalTextureDescriptor.source must be a "
|
|
57
|
+
"NativeBuffer (BigInt) from "
|
|
58
|
+
"Skia.NativeBuffer.MakeFromImage / MakeTestBuffer");
|
|
51
59
|
}
|
|
52
60
|
}
|
|
53
61
|
if (value.hasProperty(runtime, "label")) {
|
|
@@ -57,13 +65,24 @@ struct JSIConverter<std::shared_ptr<rnwgpu::GPUExternalTextureDescriptor>> {
|
|
|
57
65
|
runtime, prop, false);
|
|
58
66
|
}
|
|
59
67
|
}
|
|
68
|
+
if (value.hasProperty(runtime, "rotation")) {
|
|
69
|
+
auto prop = value.getProperty(runtime, "rotation");
|
|
70
|
+
if (prop.isNumber()) {
|
|
71
|
+
result->rotation = prop.asNumber();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
if (value.hasProperty(runtime, "mirrored")) {
|
|
75
|
+
auto prop = value.getProperty(runtime, "mirrored");
|
|
76
|
+
if (prop.isBool()) {
|
|
77
|
+
result->mirrored = prop.getBool();
|
|
78
|
+
}
|
|
79
|
+
}
|
|
60
80
|
}
|
|
61
|
-
|
|
62
81
|
return result;
|
|
63
82
|
}
|
|
64
83
|
static jsi::Value
|
|
65
|
-
toJSI(jsi::Runtime &runtime
|
|
66
|
-
std::shared_ptr<rnwgpu::GPUExternalTextureDescriptor> arg) {
|
|
84
|
+
toJSI(jsi::Runtime & /*runtime*/,
|
|
85
|
+
std::shared_ptr<rnwgpu::GPUExternalTextureDescriptor> /*arg*/) {
|
|
67
86
|
throw std::runtime_error("Invalid GPUExternalTextureDescriptor::toJSI()");
|
|
68
87
|
}
|
|
69
88
|
};
|
|
@@ -7,17 +7,18 @@
|
|
|
7
7
|
|
|
8
8
|
#include "webgpu/webgpu_cpp.h"
|
|
9
9
|
|
|
10
|
-
#include "Convertors.h"
|
|
10
|
+
#include "rnwgpu/api/Convertors.h"
|
|
11
11
|
#include "jsi2/JSIConverter.h"
|
|
12
12
|
|
|
13
|
-
#include "GPUOrigin2D.h"
|
|
13
|
+
#include "rnwgpu/api/GPUOrigin2D.h"
|
|
14
|
+
#include "rnwgpu/api/ImageBitmap.h"
|
|
14
15
|
|
|
15
16
|
namespace jsi = facebook::jsi;
|
|
16
17
|
|
|
17
18
|
namespace rnwgpu {
|
|
18
19
|
|
|
19
20
|
struct GPUImageCopyExternalImage {
|
|
20
|
-
|
|
21
|
+
std::shared_ptr<ImageBitmap> source; // GPUImageCopyExternalImageSource
|
|
21
22
|
std::optional<std::shared_ptr<GPUOrigin2D>> origin; // GPUOrigin2DStrict
|
|
22
23
|
std::optional<bool> flipY; // boolean
|
|
23
24
|
};
|
|
@@ -33,12 +34,11 @@ struct JSIConverter<std::shared_ptr<rnwgpu::GPUImageCopyExternalImage>> {
|
|
|
33
34
|
auto result = std::make_unique<rnwgpu::GPUImageCopyExternalImage>();
|
|
34
35
|
if (!outOfBounds && arg.isObject()) {
|
|
35
36
|
auto obj = arg.getObject(runtime);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
// }
|
|
37
|
+
if (obj.hasProperty(runtime, "source")) {
|
|
38
|
+
auto prop = obj.getProperty(runtime, "source");
|
|
39
|
+
result->source = JSIConverter<std::shared_ptr<ImageBitmap>>::fromJSI(
|
|
40
|
+
runtime, prop, false);
|
|
41
|
+
}
|
|
42
42
|
if (obj.hasProperty(runtime, "origin")) {
|
|
43
43
|
auto prop = obj.getProperty(runtime, "origin");
|
|
44
44
|
result->origin = JSIConverter<std::shared_ptr<GPUOrigin2D>>::fromJSI(
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <cstdint>
|
|
4
|
+
#include <memory>
|
|
5
|
+
#include <optional>
|
|
6
|
+
#include <string>
|
|
7
|
+
|
|
8
|
+
#include "webgpu/webgpu_cpp.h"
|
|
9
|
+
|
|
10
|
+
#include "jsi2/JSIConverter.h"
|
|
11
|
+
|
|
12
|
+
namespace jsi = facebook::jsi;
|
|
13
|
+
|
|
14
|
+
namespace rnwgpu {
|
|
15
|
+
|
|
16
|
+
// Descriptor for GPUDevice.importSharedTextureMemory.
|
|
17
|
+
//
|
|
18
|
+
// `handle` is a native buffer pointer as a uintptr_t (passed as a BigInt from
|
|
19
|
+
// JS), i.e. the value returned by Skia.NativeBuffer.MakeFromImage:
|
|
20
|
+
// - Apple platforms: CVPixelBufferRef (its backing IOSurface is imported)
|
|
21
|
+
// - Android: AHardwareBuffer*
|
|
22
|
+
//
|
|
23
|
+
// Lifetime: the caller is responsible for keeping the underlying object alive
|
|
24
|
+
// (via Skia.NativeBuffer.Release) for as long as this shared memory is in use.
|
|
25
|
+
struct GPUSharedTextureMemoryDescriptor {
|
|
26
|
+
uint64_t handle = 0;
|
|
27
|
+
std::optional<std::string> label;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
} // namespace rnwgpu
|
|
31
|
+
|
|
32
|
+
namespace rnwgpu {
|
|
33
|
+
|
|
34
|
+
template <>
|
|
35
|
+
struct JSIConverter<std::shared_ptr<rnwgpu::GPUSharedTextureMemoryDescriptor>> {
|
|
36
|
+
static std::shared_ptr<rnwgpu::GPUSharedTextureMemoryDescriptor>
|
|
37
|
+
fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
|
|
38
|
+
auto result = std::make_shared<rnwgpu::GPUSharedTextureMemoryDescriptor>();
|
|
39
|
+
if (!outOfBounds && arg.isObject()) {
|
|
40
|
+
auto value = arg.getObject(runtime);
|
|
41
|
+
if (value.hasProperty(runtime, "handle")) {
|
|
42
|
+
auto prop = value.getProperty(runtime, "handle");
|
|
43
|
+
// The native buffer pointer arrives as a BigInt (uintptr_t value). It
|
|
44
|
+
// must be a BigInt: a JS number can't represent a 64-bit pointer
|
|
45
|
+
// without truncation, so we reject it rather than corrupt the address.
|
|
46
|
+
if (prop.isBigInt()) {
|
|
47
|
+
result->handle = prop.asBigInt(runtime).asUint64(runtime);
|
|
48
|
+
} else if (!prop.isUndefined() && !prop.isNull()) {
|
|
49
|
+
throw jsi::JSError(
|
|
50
|
+
runtime, "GPUSharedTextureMemoryDescriptor.handle must be a "
|
|
51
|
+
"NativeBuffer (BigInt) from "
|
|
52
|
+
"Skia.NativeBuffer.MakeFromImage / MakeTestBuffer");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (value.hasProperty(runtime, "label")) {
|
|
56
|
+
auto prop = value.getProperty(runtime, "label");
|
|
57
|
+
if (!prop.isUndefined()) {
|
|
58
|
+
result->label = JSIConverter<std::optional<std::string>>::fromJSI(
|
|
59
|
+
runtime, prop, false);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
static jsi::Value
|
|
66
|
+
toJSI(jsi::Runtime & /*runtime*/,
|
|
67
|
+
std::shared_ptr<rnwgpu::GPUSharedTextureMemoryDescriptor> /*arg*/) {
|
|
68
|
+
throw std::runtime_error(
|
|
69
|
+
"Invalid GPUSharedTextureMemoryDescriptor::toJSI()");
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
} // namespace rnwgpu
|
|
@@ -447,8 +447,9 @@ public:
|
|
|
447
447
|
#endif
|
|
448
448
|
|
|
449
449
|
/** \class SkRegion::Iterator
|
|
450
|
-
|
|
451
|
-
|
|
450
|
+
Goes through the region one rectangle at a time. For each "strip" of one or more contiguous
|
|
451
|
+
Y values (scanlines) in ascending order, the iterator returns each rectangle in that strip
|
|
452
|
+
(from left to right) before advancing to the next strip (which may or may not have a gap).
|
|
452
453
|
*/
|
|
453
454
|
class SK_API Iterator {
|
|
454
455
|
public:
|
|
@@ -494,9 +495,12 @@ public:
|
|
|
494
495
|
bool done() const { return fDone; }
|
|
495
496
|
|
|
496
497
|
/** Advances SkRegion::Iterator to next SkIRect in SkRegion if it is not done.
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
498
|
+
* This moves to the next rectangle to the right within the current
|
|
499
|
+
* horizontal strip. If the end of the strip is reached, it automatically
|
|
500
|
+
* advances to the first rectangle in the next strip, skipping any vertical gaps.
|
|
501
|
+
*
|
|
502
|
+
* example: https://fiddle.skia.org/c/@Region_Iterator_next
|
|
503
|
+
*/
|
|
500
504
|
void next();
|
|
501
505
|
|
|
502
506
|
/** Returns SkIRect element in SkRegion. Does not return predictable results if SkRegion
|
|
@@ -514,6 +518,7 @@ public:
|
|
|
514
518
|
|
|
515
519
|
private:
|
|
516
520
|
const SkRegion* fRgn;
|
|
521
|
+
// See top of SkRegion.cpp for more on the RLE encoding
|
|
517
522
|
const SkRegion::RunType* fRuns;
|
|
518
523
|
SkIRect fRect = {0, 0, 0, 0};
|
|
519
524
|
bool fDone;
|
|
@@ -324,8 +324,8 @@ private:
|
|
|
324
324
|
uint32_t fStableKey = 0;
|
|
325
325
|
SkString fName;
|
|
326
326
|
|
|
327
|
-
std::unique_ptr<SkSL::Program> fBaseProgram;
|
|
328
|
-
std::unique_ptr<SkSL::RP::Program> fRPProgram;
|
|
327
|
+
std::unique_ptr<const SkSL::Program> fBaseProgram;
|
|
328
|
+
std::unique_ptr<const SkSL::RP::Program> fRPProgram;
|
|
329
329
|
mutable SkOnce fCompileRPProgramOnce;
|
|
330
330
|
const SkSL::FunctionDefinition& fMain;
|
|
331
331
|
std::vector<Uniform> fUniforms;
|
|
@@ -403,8 +403,8 @@ private:
|
|
|
403
403
|
|
|
404
404
|
sk_sp<SharedContext> fSharedContext;
|
|
405
405
|
std::unique_ptr<ResourceProvider> fResourceProvider;
|
|
406
|
-
std::unique_ptr<QueueManager> fQueueManager;
|
|
407
406
|
std::unique_ptr<ClientMappedBufferManager> fMappedBufferManager;
|
|
407
|
+
std::unique_ptr<QueueManager> fQueueManager;
|
|
408
408
|
std::unique_ptr<const skcpu::ContextImpl> fCPUContext;
|
|
409
409
|
|
|
410
410
|
PersistentPipelineStorage* fPersistentPipelineStorage;
|
|
@@ -14,7 +14,16 @@ export interface NativeBufferFactory {
|
|
|
14
14
|
*/
|
|
15
15
|
MakeFromImage: (image: SkImage) => NativeBuffer;
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* Create a native buffer of the given size filled with a procedural test
|
|
18
|
+
* pattern (RGB gradient + diagonal stripes), entirely on the CPU. Useful for
|
|
19
|
+
* examples and tests that need a buffer to feed into
|
|
20
|
+
* `GPUDevice.importExternalTexture` without a camera/video source. Release it
|
|
21
|
+
* with `Release`.
|
|
22
|
+
*/
|
|
23
|
+
MakeTestBuffer: (width: number, height: number) => NativeBuffer;
|
|
24
|
+
/**
|
|
25
|
+
* Release a native buffer that was created with `MakeFromImage` or
|
|
26
|
+
* `MakeTestBuffer`.
|
|
18
27
|
*/
|
|
19
28
|
Release: (nativeBuffer: NativeBuffer) => void;
|
|
20
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CanvasKitWebGLBuffer","exports","isNativeBufferAddr","buffer","BigInt","isNativeBufferWeb","HTMLVideoElement","HTMLCanvasElement","ImageBitmap","OffscreenCanvas","VideoFrame","HTMLImageElement","SVGImageElement","isNativeBufferNode","ArrayBuffer"],"sources":["NativeBufferFactory.ts"],"sourcesContent":["import type { SkImage } from \"../Image\";\n\nexport abstract class CanvasKitWebGLBuffer {}\n\nexport type NativeBuffer<\n T extends\n | bigint\n | ArrayBuffer\n | CanvasImageSource\n | CanvasKitWebGLBuffer\n | unknown = unknown,\n> = T;\n\nexport type NativeBufferAddr = NativeBuffer<bigint>;\nexport type NativeBufferWeb = NativeBuffer<CanvasImageSource>;\nexport type NativeBufferNode = NativeBuffer<ArrayBuffer>;\n\nexport const isNativeBufferAddr = (\n buffer: NativeBuffer\n): buffer is NativeBufferAddr => buffer instanceof BigInt;\nexport const isNativeBufferWeb = (\n buffer: NativeBuffer\n): buffer is NativeBufferWeb =>\n buffer instanceof HTMLVideoElement ||\n buffer instanceof HTMLCanvasElement ||\n buffer instanceof ImageBitmap ||\n buffer instanceof OffscreenCanvas ||\n (typeof VideoFrame !== \"undefined\" && buffer instanceof VideoFrame) ||\n buffer instanceof HTMLImageElement ||\n buffer instanceof SVGImageElement ||\n buffer instanceof CanvasKitWebGLBuffer;\n\nexport const isNativeBufferNode = (\n buffer: NativeBuffer\n): buffer is NativeBufferNode => buffer instanceof ArrayBuffer;\n\nexport interface NativeBufferFactory {\n /**\n * Copy pixels to a native buffer.\n */\n MakeFromImage: (image: SkImage) => NativeBuffer;\n /**\n * Release a native buffer that was created with `MakeFromImage`.\n */\n Release: (nativeBuffer: NativeBuffer) => void;\n}\n"],"mappings":";;;;;;AAEO,MAAeA,oBAAoB,CAAC;AAAEC,OAAA,CAAAD,oBAAA,GAAAA,oBAAA;AAetC,MAAME,kBAAkB,GAC7BC,MAAoB,IACWA,MAAM,YAAYC,MAAM;AAACH,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AACnD,MAAMG,iBAAiB,GAC5BF,MAAoB,IAEpBA,MAAM,YAAYG,gBAAgB,IAClCH,MAAM,YAAYI,iBAAiB,IACnCJ,MAAM,YAAYK,WAAW,IAC7BL,MAAM,YAAYM,eAAe,IAChC,OAAOC,UAAU,KAAK,WAAW,IAAIP,MAAM,YAAYO,UAAW,IACnEP,MAAM,YAAYQ,gBAAgB,IAClCR,MAAM,YAAYS,eAAe,IACjCT,MAAM,YAAYH,oBAAoB;AAACC,OAAA,CAAAI,iBAAA,GAAAA,iBAAA;AAElC,MAAMQ,kBAAkB,GAC7BV,MAAoB,IACWA,MAAM,YAAYW,WAAW;AAACb,OAAA,CAAAY,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["CanvasKitWebGLBuffer","exports","isNativeBufferAddr","buffer","BigInt","isNativeBufferWeb","HTMLVideoElement","HTMLCanvasElement","ImageBitmap","OffscreenCanvas","VideoFrame","HTMLImageElement","SVGImageElement","isNativeBufferNode","ArrayBuffer"],"sources":["NativeBufferFactory.ts"],"sourcesContent":["import type { SkImage } from \"../Image\";\n\nexport abstract class CanvasKitWebGLBuffer {}\n\nexport type NativeBuffer<\n T extends\n | bigint\n | ArrayBuffer\n | CanvasImageSource\n | CanvasKitWebGLBuffer\n | unknown = unknown,\n> = T;\n\nexport type NativeBufferAddr = NativeBuffer<bigint>;\nexport type NativeBufferWeb = NativeBuffer<CanvasImageSource>;\nexport type NativeBufferNode = NativeBuffer<ArrayBuffer>;\n\nexport const isNativeBufferAddr = (\n buffer: NativeBuffer\n): buffer is NativeBufferAddr => buffer instanceof BigInt;\nexport const isNativeBufferWeb = (\n buffer: NativeBuffer\n): buffer is NativeBufferWeb =>\n buffer instanceof HTMLVideoElement ||\n buffer instanceof HTMLCanvasElement ||\n buffer instanceof ImageBitmap ||\n buffer instanceof OffscreenCanvas ||\n (typeof VideoFrame !== \"undefined\" && buffer instanceof VideoFrame) ||\n buffer instanceof HTMLImageElement ||\n buffer instanceof SVGImageElement ||\n buffer instanceof CanvasKitWebGLBuffer;\n\nexport const isNativeBufferNode = (\n buffer: NativeBuffer\n): buffer is NativeBufferNode => buffer instanceof ArrayBuffer;\n\nexport interface NativeBufferFactory {\n /**\n * Copy pixels to a native buffer.\n */\n MakeFromImage: (image: SkImage) => NativeBuffer;\n /**\n * Create a native buffer of the given size filled with a procedural test\n * pattern (RGB gradient + diagonal stripes), entirely on the CPU. Useful for\n * examples and tests that need a buffer to feed into\n * `GPUDevice.importExternalTexture` without a camera/video source. Release it\n * with `Release`.\n */\n MakeTestBuffer: (width: number, height: number) => NativeBuffer;\n /**\n * Release a native buffer that was created with `MakeFromImage` or\n * `MakeTestBuffer`.\n */\n Release: (nativeBuffer: NativeBuffer) => void;\n}\n"],"mappings":";;;;;;AAEO,MAAeA,oBAAoB,CAAC;AAAEC,OAAA,CAAAD,oBAAA,GAAAA,oBAAA;AAetC,MAAME,kBAAkB,GAC7BC,MAAoB,IACWA,MAAM,YAAYC,MAAM;AAACH,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AACnD,MAAMG,iBAAiB,GAC5BF,MAAoB,IAEpBA,MAAM,YAAYG,gBAAgB,IAClCH,MAAM,YAAYI,iBAAiB,IACnCJ,MAAM,YAAYK,WAAW,IAC7BL,MAAM,YAAYM,eAAe,IAChC,OAAOC,UAAU,KAAK,WAAW,IAAIP,MAAM,YAAYO,UAAW,IACnEP,MAAM,YAAYQ,gBAAgB,IAClCR,MAAM,YAAYS,eAAe,IACjCT,MAAM,YAAYH,oBAAoB;AAACC,OAAA,CAAAI,iBAAA,GAAAA,iBAAA;AAElC,MAAMQ,kBAAkB,GAC7BV,MAAoB,IACWA,MAAM,YAAYW,WAAW;AAACb,OAAA,CAAAY,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import type { NativeBuffer } from "./NativeBuffer";
|
|
2
|
+
/**
|
|
3
|
+
* Descriptor for {@link GPUDevice.importExternalTexture} when the source is a
|
|
4
|
+
* Skia NativeBuffer (Skia has no WebCodecs `VideoFrame`).
|
|
5
|
+
*
|
|
6
|
+
* `source` is the handle returned by `Skia.NativeBuffer.MakeFromImage`: a
|
|
7
|
+
* `CVPixelBufferRef` on Apple, an `AHardwareBuffer*` on Android. The caller
|
|
8
|
+
* owns its lifetime (release it with `Skia.NativeBuffer.Release`) and must keep
|
|
9
|
+
* it alive until the imported texture is destroyed.
|
|
10
|
+
*/
|
|
11
|
+
export interface SkiaGPUExternalTextureDescriptor extends GPUObjectDescriptorBase {
|
|
12
|
+
source: NativeBuffer;
|
|
13
|
+
/** Rotation applied while sampling, in degrees. One of 0 | 90 | 180 | 270. */
|
|
14
|
+
rotation?: number;
|
|
15
|
+
/** Mirror horizontally while sampling. */
|
|
16
|
+
mirrored?: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Descriptor for {@link GPUDevice.importSharedTextureMemory}. `handle` is the
|
|
20
|
+
* NativeBuffer returned by `Skia.NativeBuffer.MakeFromImage` (see
|
|
21
|
+
* {@link SkiaGPUExternalTextureDescriptor} for the platform-specific types and
|
|
22
|
+
* lifetime rules).
|
|
23
|
+
*/
|
|
24
|
+
export interface GPUSharedTextureMemoryDescriptor extends GPUObjectDescriptorBase {
|
|
25
|
+
handle: NativeBuffer;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Shared texture memory imported from a platform native buffer via
|
|
29
|
+
* {@link GPUDevice.importSharedTextureMemory}. Create a texture that aliases
|
|
30
|
+
* the memory, then bracket the GPU work that touches it with
|
|
31
|
+
* {@link GPUSharedTextureMemory.beginAccess} / {@link GPUSharedTextureMemory.endAccess}.
|
|
32
|
+
*/
|
|
33
|
+
export interface GPUSharedTextureMemory extends GPUObjectBase {
|
|
34
|
+
/** Create a texture that aliases the shared memory. */
|
|
35
|
+
createTexture(descriptor?: GPUTextureDescriptor): GPUTexture;
|
|
36
|
+
/**
|
|
37
|
+
* Acquire the memory for GPU access. `initialized` marks whether the existing
|
|
38
|
+
* contents should be preserved (pass `true` for an already-rendered frame).
|
|
39
|
+
* Returns `false` if access could not be acquired.
|
|
40
|
+
*/
|
|
41
|
+
beginAccess(texture: GPUTexture, initialized: boolean): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Release the memory after the GPU work that accessed it has been submitted.
|
|
44
|
+
* Returns `false` on failure.
|
|
45
|
+
*/
|
|
46
|
+
endAccess(texture: GPUTexture): boolean;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Dawn-specific toggles, passed via {@link GPUDeviceDescriptor.dawnToggles} to
|
|
50
|
+
* `adapter.requestDevice`. This is a non-spec, Dawn-only extension; see Dawn's
|
|
51
|
+
* toggle list for valid names.
|
|
52
|
+
*/
|
|
53
|
+
export interface GPUDawnTogglesDescriptor {
|
|
54
|
+
enabledToggles?: string[];
|
|
55
|
+
disabledToggles?: string[];
|
|
56
|
+
}
|
|
57
|
+
declare global {
|
|
58
|
+
interface GPUDeviceDescriptor {
|
|
59
|
+
/** Dawn-specific toggles (Skia/Graphite extension, non-spec). */
|
|
60
|
+
dawnToggles?: GPUDawnTogglesDescriptor;
|
|
61
|
+
}
|
|
62
|
+
interface GPUExternalTexture {
|
|
63
|
+
/**
|
|
64
|
+
* Skia extension: end the imported buffer's shared-memory access window and
|
|
65
|
+
* release the underlying resources. Call right after the `queue.submit()`
|
|
66
|
+
* that sampled this texture (never before). Idempotent, and also runs at
|
|
67
|
+
* garbage collection as a fallback.
|
|
68
|
+
*/
|
|
69
|
+
destroy(): void;
|
|
70
|
+
}
|
|
71
|
+
interface GPUDevice {
|
|
72
|
+
/**
|
|
73
|
+
* Skia extension: import a NativeBuffer (from
|
|
74
|
+
* `Skia.NativeBuffer.MakeFromImage`) as a {@link GPUExternalTexture}, sampled
|
|
75
|
+
* with `texture_external` in WGSL. The returned texture owns the
|
|
76
|
+
* shared-memory access window; call `destroy()` on it after the sampling
|
|
77
|
+
* `queue.submit()`.
|
|
78
|
+
*/
|
|
79
|
+
importExternalTexture(descriptor: SkiaGPUExternalTextureDescriptor): GPUExternalTexture;
|
|
80
|
+
/**
|
|
81
|
+
* Skia extension: import a NativeBuffer (from
|
|
82
|
+
* `Skia.NativeBuffer.MakeFromImage`) as {@link GPUSharedTextureMemory}, the
|
|
83
|
+
* lower-level path that lets you create an aliasing texture and manage the
|
|
84
|
+
* begin/end access window yourself.
|
|
85
|
+
*/
|
|
86
|
+
importSharedTextureMemory(descriptor: GPUSharedTextureMemoryDescriptor): GPUSharedTextureMemory;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["WebGPU.ts"],"sourcesContent":["import type { NativeBuffer } from \"./NativeBuffer\";\n\n// Skia's Graphite/Dawn backend extends the standard WebGPU API (typed by\n// @webgpu/types) with a few Skia- and Dawn-specific entry points. These are\n// only available on native (SK_GRAPHITE) builds, reachable through\n// `Skia.getDevice()`.\n//\n// The exported interfaces below describe the descriptors and objects those\n// entry points use; the `declare global` block augments the standard WebGPU\n// interfaces so the new methods are typed without casting to `any`.\n\n/**\n * Descriptor for {@link GPUDevice.importExternalTexture} when the source is a\n * Skia NativeBuffer (Skia has no WebCodecs `VideoFrame`).\n *\n * `source` is the handle returned by `Skia.NativeBuffer.MakeFromImage`: a\n * `CVPixelBufferRef` on Apple, an `AHardwareBuffer*` on Android. The caller\n * owns its lifetime (release it with `Skia.NativeBuffer.Release`) and must keep\n * it alive until the imported texture is destroyed.\n */\nexport interface SkiaGPUExternalTextureDescriptor extends GPUObjectDescriptorBase {\n source: NativeBuffer;\n /** Rotation applied while sampling, in degrees. One of 0 | 90 | 180 | 270. */\n rotation?: number;\n /** Mirror horizontally while sampling. */\n mirrored?: boolean;\n}\n\n/**\n * Descriptor for {@link GPUDevice.importSharedTextureMemory}. `handle` is the\n * NativeBuffer returned by `Skia.NativeBuffer.MakeFromImage` (see\n * {@link SkiaGPUExternalTextureDescriptor} for the platform-specific types and\n * lifetime rules).\n */\nexport interface GPUSharedTextureMemoryDescriptor extends GPUObjectDescriptorBase {\n handle: NativeBuffer;\n}\n\n/**\n * Shared texture memory imported from a platform native buffer via\n * {@link GPUDevice.importSharedTextureMemory}. Create a texture that aliases\n * the memory, then bracket the GPU work that touches it with\n * {@link GPUSharedTextureMemory.beginAccess} / {@link GPUSharedTextureMemory.endAccess}.\n */\nexport interface GPUSharedTextureMemory extends GPUObjectBase {\n /** Create a texture that aliases the shared memory. */\n createTexture(descriptor?: GPUTextureDescriptor): GPUTexture;\n /**\n * Acquire the memory for GPU access. `initialized` marks whether the existing\n * contents should be preserved (pass `true` for an already-rendered frame).\n * Returns `false` if access could not be acquired.\n */\n beginAccess(texture: GPUTexture, initialized: boolean): boolean;\n /**\n * Release the memory after the GPU work that accessed it has been submitted.\n * Returns `false` on failure.\n */\n endAccess(texture: GPUTexture): boolean;\n}\n\n/**\n * Dawn-specific toggles, passed via {@link GPUDeviceDescriptor.dawnToggles} to\n * `adapter.requestDevice`. This is a non-spec, Dawn-only extension; see Dawn's\n * toggle list for valid names.\n */\nexport interface GPUDawnTogglesDescriptor {\n enabledToggles?: string[];\n disabledToggles?: string[];\n}\n\ndeclare global {\n interface GPUDeviceDescriptor {\n /** Dawn-specific toggles (Skia/Graphite extension, non-spec). */\n dawnToggles?: GPUDawnTogglesDescriptor;\n }\n\n interface GPUExternalTexture {\n /**\n * Skia extension: end the imported buffer's shared-memory access window and\n * release the underlying resources. Call right after the `queue.submit()`\n * that sampled this texture (never before). Idempotent, and also runs at\n * garbage collection as a fallback.\n */\n destroy(): void;\n }\n\n interface GPUDevice {\n /**\n * Skia extension: import a NativeBuffer (from\n * `Skia.NativeBuffer.MakeFromImage`) as a {@link GPUExternalTexture}, sampled\n * with `texture_external` in WGSL. The returned texture owns the\n * shared-memory access window; call `destroy()` on it after the sampling\n * `queue.submit()`.\n */\n importExternalTexture(\n descriptor: SkiaGPUExternalTextureDescriptor\n ): GPUExternalTexture;\n /**\n * Skia extension: import a NativeBuffer (from\n * `Skia.NativeBuffer.MakeFromImage`) as {@link GPUSharedTextureMemory}, the\n * lower-level path that lets you create an aliasing texture and manage the\n * begin/end access window yourself.\n */\n importSharedTextureMemory(\n descriptor: GPUSharedTextureMemoryDescriptor\n ): GPUSharedTextureMemory;\n }\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -355,6 +355,17 @@ Object.keys(_NativeBuffer).forEach(function (key) {
|
|
|
355
355
|
}
|
|
356
356
|
});
|
|
357
357
|
});
|
|
358
|
+
var _WebGPU = require("./WebGPU");
|
|
359
|
+
Object.keys(_WebGPU).forEach(function (key) {
|
|
360
|
+
if (key === "default" || key === "__esModule") return;
|
|
361
|
+
if (key in exports && exports[key] === _WebGPU[key]) return;
|
|
362
|
+
Object.defineProperty(exports, key, {
|
|
363
|
+
enumerable: true,
|
|
364
|
+
get: function () {
|
|
365
|
+
return _WebGPU[key];
|
|
366
|
+
}
|
|
367
|
+
});
|
|
368
|
+
});
|
|
358
369
|
var _Recorder = require("./Recorder");
|
|
359
370
|
Object.keys(_Recorder).forEach(function (key) {
|
|
360
371
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Picture","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Data","_SVG","_Surface","_Vertices","_RuntimeEffect","_Shader","_Image","_AnimatedImage","_ColorFilter","_ImageFilter","_Font","_Typeface","_Paint","_Path","_Color","_Canvas","_ContourMeasure","_MaskFilter","_Matrix","_PathEffect","_Point","_Rect","_RRect","_RSXform","_JsiInstance","_Skia","_TextBlob","_Size","_Paragraph","_Matrix2","_NativeBuffer","_Recorder","_Video","_Skottie"],"sources":["index.ts"],"sourcesContent":["export * from \"./Picture\";\nexport * from \"./Data\";\nexport * from \"./SVG\";\nexport * from \"./Surface\";\nexport * from \"./Vertices\";\nexport * from \"./RuntimeEffect\";\nexport * from \"./Shader\";\nexport * from \"./Image\";\nexport * from \"./AnimatedImage\";\nexport * from \"./ColorFilter\";\nexport * from \"./ImageFilter\";\nexport * from \"./Font\";\nexport * from \"./Typeface\";\nexport * from \"./Paint\";\nexport * from \"./Path\";\nexport * from \"./Color\";\nexport * from \"./Canvas\";\nexport * from \"./ContourMeasure\";\nexport * from \"./MaskFilter\";\nexport * from \"./Matrix\";\nexport * from \"./PathEffect\";\nexport * from \"./Point\";\nexport * from \"./Rect\";\nexport * from \"./RRect\";\nexport * from \"./RSXform\";\nexport * from \"./JsiInstance\";\nexport * from \"./Skia\";\nexport * from \"./TextBlob\";\nexport * from \"./Size\";\nexport * from \"./Paragraph\";\nexport * from \"./Matrix4\";\nexport * from \"./NativeBuffer\";\nexport * from \"./Recorder\";\nexport * from \"./Video\";\nexport * from \"./Skottie\";\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_Picture","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Data","_SVG","_Surface","_Vertices","_RuntimeEffect","_Shader","_Image","_AnimatedImage","_ColorFilter","_ImageFilter","_Font","_Typeface","_Paint","_Path","_Color","_Canvas","_ContourMeasure","_MaskFilter","_Matrix","_PathEffect","_Point","_Rect","_RRect","_RSXform","_JsiInstance","_Skia","_TextBlob","_Size","_Paragraph","_Matrix2","_NativeBuffer","_WebGPU","_Recorder","_Video","_Skottie"],"sources":["index.ts"],"sourcesContent":["export * from \"./Picture\";\nexport * from \"./Data\";\nexport * from \"./SVG\";\nexport * from \"./Surface\";\nexport * from \"./Vertices\";\nexport * from \"./RuntimeEffect\";\nexport * from \"./Shader\";\nexport * from \"./Image\";\nexport * from \"./AnimatedImage\";\nexport * from \"./ColorFilter\";\nexport * from \"./ImageFilter\";\nexport * from \"./Font\";\nexport * from \"./Typeface\";\nexport * from \"./Paint\";\nexport * from \"./Path\";\nexport * from \"./Color\";\nexport * from \"./Canvas\";\nexport * from \"./ContourMeasure\";\nexport * from \"./MaskFilter\";\nexport * from \"./Matrix\";\nexport * from \"./PathEffect\";\nexport * from \"./Point\";\nexport * from \"./Rect\";\nexport * from \"./RRect\";\nexport * from \"./RSXform\";\nexport * from \"./JsiInstance\";\nexport * from \"./Skia\";\nexport * from \"./TextBlob\";\nexport * from \"./Size\";\nexport * from \"./Paragraph\";\nexport * from \"./Matrix4\";\nexport * from \"./NativeBuffer\";\nexport * from \"./WebGPU\";\nexport * from \"./Recorder\";\nexport * from \"./Video\";\nexport * from \"./Skottie\";\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,5 +4,6 @@ import { Host } from "./Host";
|
|
|
4
4
|
export declare class JsiSkNativeBufferFactory extends Host implements NativeBufferFactory {
|
|
5
5
|
constructor(CanvasKit: CanvasKit);
|
|
6
6
|
MakeFromImage(image: SkImage): NativeBuffer;
|
|
7
|
+
MakeTestBuffer(width: number, height: number): NativeBuffer;
|
|
7
8
|
Release(_nativeBuffer: NativeBuffer): void;
|
|
8
9
|
}
|
|
@@ -21,6 +21,25 @@ class JsiSkNativeBufferFactory extends _Host.Host {
|
|
|
21
21
|
ctx.putImageData(imageData, 0, 0);
|
|
22
22
|
return canvas;
|
|
23
23
|
}
|
|
24
|
+
MakeTestBuffer(width, height) {
|
|
25
|
+
const pixels = new Uint8ClampedArray(width * height * 4);
|
|
26
|
+
for (let y = 0; y < height; y++) {
|
|
27
|
+
for (let x = 0; x < width; x++) {
|
|
28
|
+
const i = (y * width + x) * 4;
|
|
29
|
+
pixels[i + 0] = Math.floor(x * 255 / Math.max(width - 1, 1));
|
|
30
|
+
pixels[i + 1] = Math.floor(y * 255 / Math.max(height - 1, 1));
|
|
31
|
+
pixels[i + 2] = x + y & 0x20 ? 220 : 30;
|
|
32
|
+
pixels[i + 3] = 0xff;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
const canvas = new OffscreenCanvas(width, height);
|
|
36
|
+
const ctx = canvas.getContext("2d");
|
|
37
|
+
if (!ctx) {
|
|
38
|
+
throw new Error("Failed to get 2d context from canvas");
|
|
39
|
+
}
|
|
40
|
+
ctx.putImageData(new ImageData(pixels, width, height), 0, 0);
|
|
41
|
+
return canvas;
|
|
42
|
+
}
|
|
24
43
|
Release(_nativeBuffer) {
|
|
25
44
|
// it's a noop on Web
|
|
26
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Host","require","JsiSkNativeBufferFactory","Host","constructor","CanvasKit","MakeFromImage","image","info","getImageInfo","uint8ClampedArray","Uint8ClampedArray","readPixels","imageData","ImageData","width","height","canvas","OffscreenCanvas","ctx","getContext","Error","putImageData","Release","_nativeBuffer","exports"],"sources":["JsiSkNativeBufferFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { NativeBuffer, NativeBufferFactory, SkImage } from \"../types\";\n\nimport { Host } from \"./Host\";\n\nexport class JsiSkNativeBufferFactory\n extends Host\n implements NativeBufferFactory\n{\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeFromImage(image: SkImage): NativeBuffer {\n const info = image.getImageInfo();\n const uint8ClampedArray = new Uint8ClampedArray(image.readPixels()!);\n const imageData = new ImageData(uint8ClampedArray, info.width, info.height);\n const canvas = new OffscreenCanvas(info.width, info.height);\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) {\n throw new Error(\"Failed to get 2d context from canvas\");\n }\n ctx.putImageData(imageData, 0, 0);\n return canvas;\n }\n\n Release(_nativeBuffer: NativeBuffer) {\n // it's a noop on Web\n }\n}\n"],"mappings":";;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,wBAAwB,SAC3BC,UAAI,CAEd;EACEC,WAAWA,CAACC,SAAoB,EAAE;IAChC,KAAK,CAACA,SAAS,CAAC;EAClB;EAEAC,aAAaA,CAACC,KAAc,EAAgB;IAC1C,MAAMC,IAAI,GAAGD,KAAK,CAACE,YAAY,CAAC,CAAC;IACjC,MAAMC,iBAAiB,GAAG,IAAIC,iBAAiB,CAACJ,KAAK,CAACK,UAAU,CAAC,CAAE,CAAC;IACpE,MAAMC,SAAS,GAAG,IAAIC,SAAS,CAACJ,iBAAiB,EAAEF,IAAI,CAACO,KAAK,EAAEP,IAAI,CAACQ,MAAM,CAAC;IAC3E,MAAMC,MAAM,GAAG,IAAIC,eAAe,CAACV,IAAI,CAACO,KAAK,EAAEP,IAAI,CAACQ,MAAM,CAAC;IAC3D,MAAMG,GAAG,GAAGF,MAAM,CAACG,UAAU,CAAC,IAAI,CAAC;IACnC,IAAI,CAACD,GAAG,EAAE;MACR,MAAM,IAAIE,KAAK,CAAC,sCAAsC,CAAC;IACzD;IACAF,GAAG,CAACG,YAAY,CAACT,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;IACjC,OAAOI,MAAM;EACf;EAEAM,OAAOA,CAACC,aAA2B,EAAE;IACnC;EAAA;AAEJ;AAACC,OAAA,
|
|
1
|
+
{"version":3,"names":["_Host","require","JsiSkNativeBufferFactory","Host","constructor","CanvasKit","MakeFromImage","image","info","getImageInfo","uint8ClampedArray","Uint8ClampedArray","readPixels","imageData","ImageData","width","height","canvas","OffscreenCanvas","ctx","getContext","Error","putImageData","MakeTestBuffer","pixels","y","x","i","Math","floor","max","Release","_nativeBuffer","exports"],"sources":["JsiSkNativeBufferFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { NativeBuffer, NativeBufferFactory, SkImage } from \"../types\";\n\nimport { Host } from \"./Host\";\n\nexport class JsiSkNativeBufferFactory\n extends Host\n implements NativeBufferFactory\n{\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeFromImage(image: SkImage): NativeBuffer {\n const info = image.getImageInfo();\n const uint8ClampedArray = new Uint8ClampedArray(image.readPixels()!);\n const imageData = new ImageData(uint8ClampedArray, info.width, info.height);\n const canvas = new OffscreenCanvas(info.width, info.height);\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) {\n throw new Error(\"Failed to get 2d context from canvas\");\n }\n ctx.putImageData(imageData, 0, 0);\n return canvas;\n }\n\n MakeTestBuffer(width: number, height: number): NativeBuffer {\n const pixels = new Uint8ClampedArray(width * height * 4);\n for (let y = 0; y < height; y++) {\n for (let x = 0; x < width; x++) {\n const i = (y * width + x) * 4;\n pixels[i + 0] = Math.floor((x * 255) / Math.max(width - 1, 1));\n pixels[i + 1] = Math.floor((y * 255) / Math.max(height - 1, 1));\n pixels[i + 2] = (x + y) & 0x20 ? 220 : 30;\n pixels[i + 3] = 0xff;\n }\n }\n const canvas = new OffscreenCanvas(width, height);\n const ctx = canvas.getContext(\"2d\");\n if (!ctx) {\n throw new Error(\"Failed to get 2d context from canvas\");\n }\n ctx.putImageData(new ImageData(pixels, width, height), 0, 0);\n return canvas;\n }\n\n Release(_nativeBuffer: NativeBuffer) {\n // it's a noop on Web\n }\n}\n"],"mappings":";;;;;;AAIA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,wBAAwB,SAC3BC,UAAI,CAEd;EACEC,WAAWA,CAACC,SAAoB,EAAE;IAChC,KAAK,CAACA,SAAS,CAAC;EAClB;EAEAC,aAAaA,CAACC,KAAc,EAAgB;IAC1C,MAAMC,IAAI,GAAGD,KAAK,CAACE,YAAY,CAAC,CAAC;IACjC,MAAMC,iBAAiB,GAAG,IAAIC,iBAAiB,CAACJ,KAAK,CAACK,UAAU,CAAC,CAAE,CAAC;IACpE,MAAMC,SAAS,GAAG,IAAIC,SAAS,CAACJ,iBAAiB,EAAEF,IAAI,CAACO,KAAK,EAAEP,IAAI,CAACQ,MAAM,CAAC;IAC3E,MAAMC,MAAM,GAAG,IAAIC,eAAe,CAACV,IAAI,CAACO,KAAK,EAAEP,IAAI,CAACQ,MAAM,CAAC;IAC3D,MAAMG,GAAG,GAAGF,MAAM,CAACG,UAAU,CAAC,IAAI,CAAC;IACnC,IAAI,CAACD,GAAG,EAAE;MACR,MAAM,IAAIE,KAAK,CAAC,sCAAsC,CAAC;IACzD;IACAF,GAAG,CAACG,YAAY,CAACT,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;IACjC,OAAOI,MAAM;EACf;EAEAM,cAAcA,CAACR,KAAa,EAAEC,MAAc,EAAgB;IAC1D,MAAMQ,MAAM,GAAG,IAAIb,iBAAiB,CAACI,KAAK,GAAGC,MAAM,GAAG,CAAC,CAAC;IACxD,KAAK,IAAIS,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGT,MAAM,EAAES,CAAC,EAAE,EAAE;MAC/B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGX,KAAK,EAAEW,CAAC,EAAE,EAAE;QAC9B,MAAMC,CAAC,GAAG,CAACF,CAAC,GAAGV,KAAK,GAAGW,CAAC,IAAI,CAAC;QAC7BF,MAAM,CAACG,CAAC,GAAG,CAAC,CAAC,GAAGC,IAAI,CAACC,KAAK,CAAEH,CAAC,GAAG,GAAG,GAAIE,IAAI,CAACE,GAAG,CAACf,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9DS,MAAM,CAACG,CAAC,GAAG,CAAC,CAAC,GAAGC,IAAI,CAACC,KAAK,CAAEJ,CAAC,GAAG,GAAG,GAAIG,IAAI,CAACE,GAAG,CAACd,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/DQ,MAAM,CAACG,CAAC,GAAG,CAAC,CAAC,GAAID,CAAC,GAAGD,CAAC,GAAI,IAAI,GAAG,GAAG,GAAG,EAAE;QACzCD,MAAM,CAACG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;MACtB;IACF;IACA,MAAMV,MAAM,GAAG,IAAIC,eAAe,CAACH,KAAK,EAAEC,MAAM,CAAC;IACjD,MAAMG,GAAG,GAAGF,MAAM,CAACG,UAAU,CAAC,IAAI,CAAC;IACnC,IAAI,CAACD,GAAG,EAAE;MACR,MAAM,IAAIE,KAAK,CAAC,sCAAsC,CAAC;IACzD;IACAF,GAAG,CAACG,YAAY,CAAC,IAAIR,SAAS,CAACU,MAAM,EAAET,KAAK,EAAEC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC5D,OAAOC,MAAM;EACf;EAEAc,OAAOA,CAACC,aAA2B,EAAE;IACnC;EAAA;AAEJ;AAACC,OAAA,CAAA/B,wBAAA,GAAAA,wBAAA","ignoreList":[]}
|