@swmansion/smelter-browser-render 0.2.0 → 0.2.2-next.0
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/dist/index.d.ts +22 -18
- package/dist/index.js +649 -689
- package/dist/smelter.wasm +0 -0
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ declare const loadWasmModule: (wasmModuleUrl: string) => Promise<void>;
|
|
|
8
8
|
|
|
9
9
|
type Resolution = Api.Resolution;
|
|
10
10
|
type ImageSpec = Required<Pick<Api.ImageSpec, 'asset_type' | 'url'>>;
|
|
11
|
+
type ShaderSpec = Api.ShaderSpec;
|
|
11
12
|
type Component = Extract<Api.Component, {
|
|
12
13
|
type: 'input_stream' | 'view' | 'rescaler' | 'image' | 'text' | 'tiles';
|
|
13
14
|
}>;
|
|
@@ -20,35 +21,38 @@ type RendererOptions = {
|
|
|
20
21
|
* A timeout that defines when the smelter should switch to fallback on the input stream that stopped sending frames.
|
|
21
22
|
*/
|
|
22
23
|
streamFallbackTimeoutMs: number;
|
|
23
|
-
|
|
24
|
+
loggerLevel?: 'error' | 'warn' | 'info' | 'debug' | 'trace';
|
|
24
25
|
};
|
|
25
|
-
type
|
|
26
|
+
type InputFrameSet = {
|
|
26
27
|
ptsMs: number;
|
|
27
|
-
frames:
|
|
28
|
-
[id: string]: Frame;
|
|
29
|
-
};
|
|
28
|
+
frames: Record<string, InputFrame>;
|
|
30
29
|
};
|
|
31
|
-
type
|
|
30
|
+
type OutputFrameSet = {
|
|
31
|
+
ptsMs: number;
|
|
32
|
+
frames: Record<string, OutputFrame>;
|
|
33
|
+
};
|
|
34
|
+
type InputFrame = {
|
|
35
|
+
readonly frame: VideoFrame | HTMLVideoElement;
|
|
36
|
+
readonly ptsMs: number;
|
|
37
|
+
};
|
|
38
|
+
type OutputFrame = {
|
|
32
39
|
resolution: Resolution;
|
|
33
|
-
format: FrameFormat;
|
|
34
40
|
data: Uint8ClampedArray;
|
|
35
41
|
};
|
|
36
|
-
declare enum FrameFormat {
|
|
37
|
-
RGBA_BYTES = "RGBA_BYTES",
|
|
38
|
-
YUV_BYTES = "YUV_BYTES"
|
|
39
|
-
}
|
|
40
42
|
declare class Renderer {
|
|
41
43
|
private renderer;
|
|
42
44
|
private constructor();
|
|
43
45
|
static create(options: RendererOptions): Promise<Renderer>;
|
|
44
|
-
render(input:
|
|
45
|
-
updateScene(outputId: OutputId, resolution: Resolution, scene: Component): void
|
|
46
|
-
registerInput(inputId: InputId): void
|
|
46
|
+
render(input: InputFrameSet): Promise<OutputFrameSet>;
|
|
47
|
+
updateScene(outputId: OutputId, resolution: Resolution, scene: Component): Promise<void>;
|
|
48
|
+
registerInput(inputId: InputId): Promise<void>;
|
|
47
49
|
registerImage(rendererId: RendererId, imageSpec: ImageSpec): Promise<void>;
|
|
50
|
+
registerShader(rendererId: RendererId, shaderSpec: ShaderSpec): Promise<void>;
|
|
48
51
|
registerFont(fontUrl: string): Promise<void>;
|
|
49
|
-
unregisterInput(inputId: InputId): void
|
|
50
|
-
unregisterImage(rendererId: RendererId): void
|
|
51
|
-
|
|
52
|
+
unregisterInput(inputId: InputId): Promise<void>;
|
|
53
|
+
unregisterImage(rendererId: RendererId): Promise<void>;
|
|
54
|
+
unregisterShader(rendererId: RendererId): Promise<void>;
|
|
55
|
+
unregisterOutput(outputId: OutputId): Promise<void>;
|
|
52
56
|
}
|
|
53
57
|
|
|
54
|
-
export { type Component, type
|
|
58
|
+
export { type Component, type ImageSpec, type InputFrame, type InputFrameSet, type InputId, type OutputFrame, type OutputFrameSet, type OutputId, Renderer, type RendererId, type RendererOptions, type Resolution, type ShaderSpec, loadWasmModule };
|