@swf2es/player 0.1.0 → 0.1.1

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 (277) hide show
  1. package/package.json +7 -7
  2. package/dist/audio.d.ts +0 -22
  3. package/dist/audio.d.ts.map +0 -1
  4. package/dist/audio.js +0 -106
  5. package/dist/audio.js.map +0 -1
  6. package/dist/bitmap-filters.d.ts +0 -29
  7. package/dist/bitmap-filters.d.ts.map +0 -1
  8. package/dist/bitmap-filters.js +0 -906
  9. package/dist/bitmap-filters.js.map +0 -1
  10. package/dist/bitmap-ops.d.ts +0 -113
  11. package/dist/bitmap-ops.d.ts.map +0 -1
  12. package/dist/bitmap-ops.js +0 -725
  13. package/dist/bitmap-ops.js.map +0 -1
  14. package/dist/bitmap.d.ts +0 -98
  15. package/dist/bitmap.d.ts.map +0 -1
  16. package/dist/bitmap.js +0 -314
  17. package/dist/bitmap.js.map +0 -1
  18. package/dist/bounds.d.ts +0 -26
  19. package/dist/bounds.d.ts.map +0 -1
  20. package/dist/bounds.js +0 -300
  21. package/dist/bounds.js.map +0 -1
  22. package/dist/color.d.ts +0 -7
  23. package/dist/color.d.ts.map +0 -1
  24. package/dist/color.js +0 -42
  25. package/dist/color.js.map +0 -1
  26. package/dist/display.d.ts +0 -425
  27. package/dist/display.d.ts.map +0 -1
  28. package/dist/display.js +0 -1274
  29. package/dist/display.js.map +0 -1
  30. package/dist/drawing.d.ts +0 -52
  31. package/dist/drawing.d.ts.map +0 -1
  32. package/dist/drawing.js +0 -204
  33. package/dist/drawing.js.map +0 -1
  34. package/dist/filters.d.ts +0 -54
  35. package/dist/filters.d.ts.map +0 -1
  36. package/dist/filters.js +0 -155
  37. package/dist/filters.js.map +0 -1
  38. package/dist/fonts.d.ts +0 -23
  39. package/dist/fonts.d.ts.map +0 -1
  40. package/dist/fonts.js +0 -91
  41. package/dist/fonts.js.map +0 -1
  42. package/dist/geometry.d.ts +0 -21
  43. package/dist/geometry.d.ts.map +0 -1
  44. package/dist/geometry.js +0 -76
  45. package/dist/geometry.js.map +0 -1
  46. package/dist/gradients.d.ts +0 -29
  47. package/dist/gradients.d.ts.map +0 -1
  48. package/dist/gradients.js +0 -116
  49. package/dist/gradients.js.map +0 -1
  50. package/dist/images.d.ts +0 -22
  51. package/dist/images.d.ts.map +0 -1
  52. package/dist/images.js +0 -147
  53. package/dist/images.js.map +0 -1
  54. package/dist/input.d.ts +0 -79
  55. package/dist/input.d.ts.map +0 -1
  56. package/dist/input.js +0 -366
  57. package/dist/input.js.map +0 -1
  58. package/dist/keyboard.d.ts +0 -97
  59. package/dist/keyboard.d.ts.map +0 -1
  60. package/dist/keyboard.js +0 -583
  61. package/dist/keyboard.js.map +0 -1
  62. package/dist/morph.d.ts +0 -17
  63. package/dist/morph.d.ts.map +0 -1
  64. package/dist/morph.js +0 -218
  65. package/dist/morph.js.map +0 -1
  66. package/dist/pixi-blend.d.ts +0 -7
  67. package/dist/pixi-blend.d.ts.map +0 -1
  68. package/dist/pixi-blend.js +0 -253
  69. package/dist/pixi-blend.js.map +0 -1
  70. package/dist/pixi-color.d.ts +0 -54
  71. package/dist/pixi-color.d.ts.map +0 -1
  72. package/dist/pixi-color.js +0 -336
  73. package/dist/pixi-color.js.map +0 -1
  74. package/dist/pixi-filters.d.ts +0 -40
  75. package/dist/pixi-filters.d.ts.map +0 -1
  76. package/dist/pixi-filters.js +0 -953
  77. package/dist/pixi-filters.js.map +0 -1
  78. package/dist/pixi-resolve.d.ts +0 -4
  79. package/dist/pixi-resolve.d.ts.map +0 -1
  80. package/dist/pixi-resolve.js +0 -76
  81. package/dist/pixi-resolve.js.map +0 -1
  82. package/dist/pixi.d.ts +0 -219
  83. package/dist/pixi.d.ts.map +0 -1
  84. package/dist/pixi.js +0 -2169
  85. package/dist/pixi.js.map +0 -1
  86. package/dist/playerglobal/flash/filters/filters.d.ts +0 -26
  87. package/dist/playerglobal/flash/filters/filters.d.ts.map +0 -1
  88. package/dist/playerglobal/flash/filters/filters.js +0 -287
  89. package/dist/playerglobal/flash/filters/filters.js.map +0 -1
  90. package/dist/playerglobal/flash/system/FSCommand.d.ts +0 -4
  91. package/dist/playerglobal/flash/system/FSCommand.d.ts.map +0 -1
  92. package/dist/playerglobal/flash/system/FSCommand.js +0 -18
  93. package/dist/playerglobal/flash/system/FSCommand.js.map +0 -1
  94. package/dist/playerglobal/natives.d.ts +0 -10
  95. package/dist/playerglobal/natives.d.ts.map +0 -1
  96. package/dist/playerglobal/natives.js +0 -53
  97. package/dist/playerglobal/natives.js.map +0 -1
  98. package/dist/png.d.ts +0 -4
  99. package/dist/png.d.ts.map +0 -1
  100. package/dist/png.js +0 -140
  101. package/dist/png.js.map +0 -1
  102. package/dist/render/art.d.ts +0 -148
  103. package/dist/render/art.d.ts.map +0 -1
  104. package/dist/render/art.js +0 -575
  105. package/dist/render/art.js.map +0 -1
  106. package/dist/render/batchers.d.ts +0 -23
  107. package/dist/render/batchers.d.ts.map +0 -1
  108. package/dist/render/batchers.js +0 -52
  109. package/dist/render/batchers.js.map +0 -1
  110. package/dist/render/bitmaps.d.ts +0 -117
  111. package/dist/render/bitmaps.d.ts.map +0 -1
  112. package/dist/render/bitmaps.js +0 -422
  113. package/dist/render/bitmaps.js.map +0 -1
  114. package/dist/render/blend.d.ts +0 -37
  115. package/dist/render/blend.d.ts.map +0 -1
  116. package/dist/render/blend.js +0 -195
  117. package/dist/render/blend.js.map +0 -1
  118. package/dist/render/color.d.ts +0 -111
  119. package/dist/render/color.d.ts.map +0 -1
  120. package/dist/render/color.js +0 -533
  121. package/dist/render/color.js.map +0 -1
  122. package/dist/render/compositing.d.ts +0 -77
  123. package/dist/render/compositing.d.ts.map +0 -1
  124. package/dist/render/compositing.js +0 -188
  125. package/dist/render/compositing.js.map +0 -1
  126. package/dist/render/filters.d.ts +0 -98
  127. package/dist/render/filters.d.ts.map +0 -1
  128. package/dist/render/filters.js +0 -1326
  129. package/dist/render/filters.js.map +0 -1
  130. package/dist/render/hooks.d.ts +0 -4
  131. package/dist/render/hooks.d.ts.map +0 -1
  132. package/dist/render/hooks.js +0 -48
  133. package/dist/render/hooks.js.map +0 -1
  134. package/dist/render/node.d.ts +0 -139
  135. package/dist/render/node.d.ts.map +0 -1
  136. package/dist/render/node.js +0 -59
  137. package/dist/render/node.js.map +0 -1
  138. package/dist/render/patches.d.ts +0 -54
  139. package/dist/render/patches.d.ts.map +0 -1
  140. package/dist/render/patches.js +0 -154
  141. package/dist/render/patches.js.map +0 -1
  142. package/dist/render/planes.d.ts +0 -74
  143. package/dist/render/planes.d.ts.map +0 -1
  144. package/dist/render/planes.js +0 -267
  145. package/dist/render/planes.js.map +0 -1
  146. package/dist/render/pointer.d.ts +0 -5
  147. package/dist/render/pointer.d.ts.map +0 -1
  148. package/dist/render/pointer.js +0 -279
  149. package/dist/render/pointer.js.map +0 -1
  150. package/dist/render/pools.d.ts +0 -122
  151. package/dist/render/pools.d.ts.map +0 -1
  152. package/dist/render/pools.js +0 -238
  153. package/dist/render/pools.js.map +0 -1
  154. package/dist/render/resolve.d.ts +0 -4
  155. package/dist/render/resolve.d.ts.map +0 -1
  156. package/dist/render/resolve.js +0 -76
  157. package/dist/render/resolve.js.map +0 -1
  158. package/dist/render/saffron.d.ts +0 -135
  159. package/dist/render/saffron.d.ts.map +0 -1
  160. package/dist/render/saffron.js +0 -725
  161. package/dist/render/saffron.js.map +0 -1
  162. package/dist/render/settle.d.ts +0 -60
  163. package/dist/render/settle.d.ts.map +0 -1
  164. package/dist/render/settle.js +0 -128
  165. package/dist/render/settle.js.map +0 -1
  166. package/dist/render/shared.d.ts +0 -25
  167. package/dist/render/shared.d.ts.map +0 -1
  168. package/dist/render/shared.js +0 -33
  169. package/dist/render/shared.js.map +0 -1
  170. package/dist/render/snapshot.d.ts +0 -21
  171. package/dist/render/snapshot.d.ts.map +0 -1
  172. package/dist/render/snapshot.js +0 -91
  173. package/dist/render/snapshot.js.map +0 -1
  174. package/dist/render/spares.d.ts +0 -56
  175. package/dist/render/spares.d.ts.map +0 -1
  176. package/dist/render/spares.js +0 -160
  177. package/dist/render/spares.js.map +0 -1
  178. package/dist/render/strokes.d.ts +0 -107
  179. package/dist/render/strokes.d.ts.map +0 -1
  180. package/dist/render/strokes.js +0 -448
  181. package/dist/render/strokes.js.map +0 -1
  182. package/dist/render/table.d.ts +0 -213
  183. package/dist/render/table.d.ts.map +0 -1
  184. package/dist/render/table.js +0 -795
  185. package/dist/render/table.js.map +0 -1
  186. package/dist/render/tessellate.d.ts +0 -89
  187. package/dist/render/tessellate.d.ts.map +0 -1
  188. package/dist/render/tessellate.js +0 -386
  189. package/dist/render/tessellate.js.map +0 -1
  190. package/dist/render/text.d.ts +0 -40
  191. package/dist/render/text.d.ts.map +0 -1
  192. package/dist/render/text.js +0 -309
  193. package/dist/render/text.js.map +0 -1
  194. package/dist/render/three.d.ts +0 -83
  195. package/dist/render/three.d.ts.map +0 -1
  196. package/dist/render/three.js +0 -511
  197. package/dist/render/three.js.map +0 -1
  198. package/dist/render/triangles.d.ts +0 -28
  199. package/dist/render/triangles.d.ts.map +0 -1
  200. package/dist/render/triangles.js +0 -189
  201. package/dist/render/triangles.js.map +0 -1
  202. package/dist/render/view.d.ts +0 -238
  203. package/dist/render/view.d.ts.map +0 -1
  204. package/dist/render/view.js +0 -1173
  205. package/dist/render/view.js.map +0 -1
  206. package/dist/render/worker/bitmaps.d.ts +0 -43
  207. package/dist/render/worker/bitmaps.d.ts.map +0 -1
  208. package/dist/render/worker/bitmaps.js +0 -151
  209. package/dist/render/worker/bitmaps.js.map +0 -1
  210. package/dist/render/worker/drawing.d.ts +0 -21
  211. package/dist/render/worker/drawing.d.ts.map +0 -1
  212. package/dist/render/worker/drawing.js +0 -356
  213. package/dist/render/worker/drawing.js.map +0 -1
  214. package/dist/render/worker/filters.d.ts +0 -7
  215. package/dist/render/worker/filters.d.ts.map +0 -1
  216. package/dist/render/worker/filters.js +0 -125
  217. package/dist/render/worker/filters.js.map +0 -1
  218. package/dist/render/worker/frames.d.ts +0 -32
  219. package/dist/render/worker/frames.d.ts.map +0 -1
  220. package/dist/render/worker/frames.js +0 -124
  221. package/dist/render/worker/frames.js.map +0 -1
  222. package/dist/render/worker/host.d.ts +0 -60
  223. package/dist/render/worker/host.d.ts.map +0 -1
  224. package/dist/render/worker/host.js +0 -297
  225. package/dist/render/worker/host.js.map +0 -1
  226. package/dist/render/worker/libraries.d.ts +0 -36
  227. package/dist/render/worker/libraries.d.ts.map +0 -1
  228. package/dist/render/worker/libraries.js +0 -153
  229. package/dist/render/worker/libraries.js.map +0 -1
  230. package/dist/render/worker/presentation.d.ts +0 -18
  231. package/dist/render/worker/presentation.d.ts.map +0 -1
  232. package/dist/render/worker/presentation.js +0 -47
  233. package/dist/render/worker/presentation.js.map +0 -1
  234. package/dist/render/worker/renderer.d.ts +0 -4
  235. package/dist/render/worker/renderer.d.ts.map +0 -1
  236. package/dist/render/worker/renderer.js +0 -21
  237. package/dist/render/worker/renderer.js.map +0 -1
  238. package/dist/render/worker/scene.d.ts +0 -32
  239. package/dist/render/worker/scene.d.ts.map +0 -1
  240. package/dist/render/worker/scene.js +0 -611
  241. package/dist/render/worker/scene.js.map +0 -1
  242. package/dist/render/worker/text.d.ts +0 -47
  243. package/dist/render/worker/text.d.ts.map +0 -1
  244. package/dist/render/worker/text.js +0 -261
  245. package/dist/render/worker/text.js.map +0 -1
  246. package/dist/render/worker/thread.d.ts +0 -23
  247. package/dist/render/worker/thread.d.ts.map +0 -1
  248. package/dist/render/worker/thread.js +0 -107
  249. package/dist/render/worker/thread.js.map +0 -1
  250. package/dist/render/worker/values.d.ts +0 -18
  251. package/dist/render/worker/values.d.ts.map +0 -1
  252. package/dist/render/worker/values.js +0 -64
  253. package/dist/render/worker/values.js.map +0 -1
  254. package/dist/sha256.d.ts +0 -5
  255. package/dist/sha256.d.ts.map +0 -1
  256. package/dist/sha256.js +0 -96
  257. package/dist/sha256.js.map +0 -1
  258. package/dist/shapes.d.ts +0 -71
  259. package/dist/shapes.d.ts.map +0 -1
  260. package/dist/shapes.js +0 -340
  261. package/dist/shapes.js.map +0 -1
  262. package/dist/static-text.d.ts +0 -33
  263. package/dist/static-text.d.ts.map +0 -1
  264. package/dist/static-text.js +0 -105
  265. package/dist/static-text.js.map +0 -1
  266. package/dist/text-layout.d.ts +0 -66
  267. package/dist/text-layout.d.ts.map +0 -1
  268. package/dist/text-layout.js +0 -315
  269. package/dist/text-layout.js.map +0 -1
  270. package/dist/text.d.ts +0 -67
  271. package/dist/text.d.ts.map +0 -1
  272. package/dist/text.js +0 -383
  273. package/dist/text.js.map +0 -1
  274. package/dist/timeline.d.ts +0 -150
  275. package/dist/timeline.d.ts.map +0 -1
  276. package/dist/timeline.js +0 -266
  277. package/dist/timeline.js.map +0 -1
@@ -1,124 +0,0 @@
1
- // One producer and one consumer. Only a slot's owner may touch its payload;
2
- // publishing READY and acquiring it with Atomics makes the non-atomic bytes visible.
3
- const FREE = 0;
4
- const WRITING = 1;
5
- const READY = 2;
6
- const READING = 3;
7
- const WORDS = 3;
8
- const MAX_SEQUENCE = 0x7fffffff;
9
- export function sharedFrames(capacity, slots = 3) {
10
- if (!Number.isSafeInteger(capacity) || capacity <= 0 || !Number.isInteger(slots) || slots < 2) {
11
- throw new RangeError("shared frames need a positive byte capacity and at least two slots");
12
- }
13
- return {
14
- control: new SharedArrayBuffer((1 + slots * WORDS) * 4),
15
- payload: new SharedArrayBuffer(capacity * slots),
16
- capacity,
17
- slots,
18
- };
19
- }
20
- class Frames {
21
- control;
22
- payloads;
23
- constructor(frames) {
24
- const { capacity, slots, control, payload } = frames;
25
- if (!Number.isSafeInteger(capacity) ||
26
- capacity <= 0 ||
27
- !Number.isInteger(slots) ||
28
- slots < 2 ||
29
- !(control instanceof SharedArrayBuffer) ||
30
- !(payload instanceof SharedArrayBuffer) ||
31
- control.byteLength !== (1 + slots * WORDS) * 4 ||
32
- payload.byteLength !== capacity * slots) {
33
- throw new RangeError("invalid shared frame buffers");
34
- }
35
- this.control = new Int32Array(control);
36
- this.payloads = Array.from({ length: slots }, (_, i) => new Uint8Array(payload, i * capacity, capacity));
37
- }
38
- }
39
- export class FrameWriter extends Frames {
40
- /**
41
- * Encode a complete snapshot synchronously. Null means all slots are occupied:
42
- * retain the source state and try its latest snapshot later, without waiting.
43
- */
44
- write(encode) {
45
- for (let slot = 0; slot < this.payloads.length; slot++) {
46
- const at = 1 + slot * WORDS;
47
- if (Atomics.compareExchange(this.control, at, FREE, WRITING) !== FREE) {
48
- continue;
49
- }
50
- try {
51
- const bytes = this.payloads[slot];
52
- const length = encode(bytes);
53
- if (!Number.isInteger(length) || length < 0 || length > bytes.length) {
54
- throw new RangeError("shared frame exceeds its slot capacity");
55
- }
56
- const sequence = Atomics.load(this.control, 0) + 1;
57
- if (sequence > MAX_SEQUENCE) {
58
- throw new RangeError("shared frame sequence exhausted; replace the buffers");
59
- }
60
- Atomics.store(this.control, 0, sequence);
61
- Atomics.store(this.control, at + 1, length);
62
- Atomics.store(this.control, at + 2, sequence);
63
- Atomics.store(this.control, at, READY);
64
- return sequence;
65
- }
66
- catch (error) {
67
- Atomics.store(this.control, at, FREE);
68
- throw error;
69
- }
70
- }
71
- return null;
72
- }
73
- }
74
- export class FrameReader extends Frames {
75
- reading = false;
76
- /** Take the newest complete snapshot; older unconsumed presentations can be discarded. */
77
- take() {
78
- if (this.reading) {
79
- throw new Error("release the previous shared frame before taking another");
80
- }
81
- let chosen = -1;
82
- let sequence = 0;
83
- for (let slot = 0; slot < this.payloads.length; slot++) {
84
- const at = 1 + slot * WORDS;
85
- if (Atomics.load(this.control, at) === READY) {
86
- const candidate = Atomics.load(this.control, at + 2);
87
- if (candidate > sequence) {
88
- chosen = slot;
89
- sequence = candidate;
90
- }
91
- }
92
- }
93
- if (chosen < 0) {
94
- return null;
95
- }
96
- const at = 1 + chosen * WORDS;
97
- if (Atomics.compareExchange(this.control, at, READY, READING) !== READY) {
98
- return null;
99
- }
100
- for (let slot = 0; slot < this.payloads.length; slot++) {
101
- const other = 1 + slot * WORDS;
102
- if (slot !== chosen &&
103
- Atomics.load(this.control, other) === READY &&
104
- Atomics.load(this.control, other + 2) < sequence) {
105
- Atomics.compareExchange(this.control, other, READY, FREE);
106
- }
107
- }
108
- this.reading = true;
109
- let released = false;
110
- return {
111
- bytes: this.payloads[chosen].subarray(0, Atomics.load(this.control, at + 1)),
112
- sequence,
113
- release: () => {
114
- if (released) {
115
- throw new Error("shared frame already released");
116
- }
117
- released = true;
118
- this.reading = false;
119
- Atomics.store(this.control, at, FREE);
120
- },
121
- };
122
- }
123
- }
124
- //# sourceMappingURL=frames.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frames.js","sourceRoot":"","sources":["../../../src/render/worker/frames.ts"],"names":[],"mappings":"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"}
@@ -1,60 +0,0 @@
1
- import type { Library } from "../../display/timeline.js";
2
- import type { Player } from "../../player.js";
3
- import type { PixiView } from "../view.js";
4
- import { type RenderState } from "./presentation.js";
5
- export interface WorkerViewOptions {
6
- url: URL | string;
7
- redraw(): void;
8
- status(state: string, reason: string): void;
9
- capacity?: number;
10
- }
11
- export declare class WorkerView {
12
- readonly player: Player;
13
- readonly main: PixiView;
14
- readonly options: WorkerViewOptions;
15
- readonly stats: {
16
- published: number;
17
- presented: number;
18
- busy: number;
19
- dropped: number;
20
- encodeMs: number;
21
- decodeMs: number;
22
- renderMs: number;
23
- latencyMs: number;
24
- assetBytes: number;
25
- transportBytes: number;
26
- restarts: number;
27
- state: string;
28
- reason: string;
29
- };
30
- private readonly assets;
31
- private readonly snapshot;
32
- private readonly registrations;
33
- private readonly registered;
34
- private readonly pending;
35
- private worker;
36
- private canvas;
37
- private writer;
38
- private ready;
39
- private enabled;
40
- private disposed;
41
- private waiting;
42
- private retryAt;
43
- private retry;
44
- private timer;
45
- private capacity;
46
- private readonly inputRoot;
47
- constructor(player: Player, main: PixiView, options: WorkerViewOptions);
48
- register(bytes: Uint8Array, library: Library): void;
49
- private state;
50
- private send;
51
- private start;
52
- private stop;
53
- private fallback;
54
- private failed;
55
- /** False asks the caller to draw the current stage through its normal view. */
56
- render(state: RenderState): boolean;
57
- private releaseAssets;
58
- destroy(): void;
59
- }
60
- //# sourceMappingURL=host.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/render/worker/host.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAsB,KAAK,WAAW,EAAqB,MAAM,mBAAmB,CAAC;AAY5F,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC;IAClB,MAAM,IAAI,IAAI,CAAC;IACf,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,UAAU;IAmCnB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,IAAI,EAAE,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,iBAAiB;IApCrC,QAAQ,CAAC,KAAK;QACZ,SAAS;QACT,SAAS;QACT,IAAI;QACJ,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,UAAU;QACV,cAAc;QACd,QAAQ;QACR,KAAK;QACL,MAAM;MACN;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IACrD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgC;IAE1D,YACW,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,iBAAiB,EAKpC;IAED,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CA2BlD;IAED,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,KAAK;IA4Hb,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IAYd,+EAA+E;IAC/E,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAiDlC;IAED,OAAO,CAAC,aAAa;IASrB,OAAO,IAAI,IAAI,CAOd;CACF"}
@@ -1,297 +0,0 @@
1
- // Experimental host: the main canvas keeps input and synchronous bitmap work;
2
- // a separate, noninteractive canvas shows frames submitted by the worker.
3
- import { FrameWriter, sharedFrames } from "./frames.js";
4
- import { SceneLibraries, shareLibrary } from "./libraries.js";
5
- import { PRESENTATION_BYTES, writePresentation } from "./presentation.js";
6
- import { SceneSnapshot } from "./scene.js";
7
- export class WorkerView {
8
- player;
9
- main;
10
- options;
11
- stats = {
12
- published: 0,
13
- presented: 0,
14
- busy: 0,
15
- dropped: 0,
16
- encodeMs: 0,
17
- decodeMs: 0,
18
- renderMs: 0,
19
- latencyMs: 0,
20
- assetBytes: 0,
21
- transportBytes: 0,
22
- restarts: 0,
23
- state: "starting",
24
- reason: "",
25
- };
26
- assets = new SceneLibraries();
27
- snapshot = new SceneSnapshot(this.assets);
28
- registrations = [];
29
- registered = new WeakSet();
30
- pending = new Map();
31
- worker = null;
32
- canvas = null;
33
- writer = null;
34
- ready = false;
35
- enabled = true;
36
- disposed = false;
37
- waiting = false;
38
- retryAt = 0;
39
- retry = 0;
40
- timer = 0;
41
- capacity;
42
- inputRoot;
43
- constructor(player, main, options) {
44
- this.player = player;
45
- this.main = main;
46
- this.options = options;
47
- this.inputRoot = main.renderer.events.rootTarget;
48
- this.capacity = options.capacity ?? 8 * 1024 * 1024;
49
- this.start();
50
- }
51
- register(bytes, library) {
52
- if (this.registered.has(library) || this.disposed || !this.enabled) {
53
- return;
54
- }
55
- try {
56
- const asset = shareLibrary(bytes, library);
57
- let size = asset.swf.byteLength;
58
- for (let i = 0; i < asset.bitmaps.length; i++) {
59
- size += asset.bitmaps[i].pixels.byteLength;
60
- }
61
- if (this.stats.assetBytes + size > 256 * 1024 * 1024 || this.registrations.length >= 512) {
62
- throw new Error("worker preview asset budget exceeded");
63
- }
64
- const id = this.registrations.length + 1;
65
- this.assets.add(id, library);
66
- this.registered.add(library);
67
- this.registrations.push({ id, asset });
68
- this.stats.assetBytes += size;
69
- this.send({ type: "library", id, asset });
70
- }
71
- catch (error) {
72
- this.enabled = false;
73
- this.stop();
74
- this.releaseAssets();
75
- this.fallback(String(error));
76
- }
77
- }
78
- state(state, reason = "") {
79
- if (this.stats.state !== state || this.stats.reason !== reason) {
80
- this.stats.state = state;
81
- this.stats.reason = reason;
82
- this.options.status(state, reason);
83
- }
84
- }
85
- send(command) {
86
- this.worker?.postMessage(command);
87
- }
88
- start() {
89
- if (this.disposed) {
90
- return;
91
- }
92
- if (!globalThis.crossOriginIsolated ||
93
- typeof SharedArrayBuffer !== "function" ||
94
- !HTMLCanvasElement.prototype.transferControlToOffscreen) {
95
- this.enabled = false;
96
- this.fallback("SharedArrayBuffer/OffscreenCanvas requires an isolated browser page");
97
- return;
98
- }
99
- try {
100
- const canvas = document.createElement("canvas");
101
- canvas.style.cssText = this.main.renderer.canvas.style.cssText;
102
- canvas.style.pointerEvents = "none";
103
- canvas.hidden = true;
104
- canvas.setAttribute("aria-hidden", "true");
105
- this.main.renderer.canvas.after(canvas);
106
- const frames = sharedFrames(this.capacity);
107
- this.canvas = canvas;
108
- const worker = new Worker(this.options.url, { type: "module" });
109
- this.worker = worker;
110
- this.writer = new FrameWriter(frames);
111
- this.stats.transportBytes = frames.payload.byteLength + frames.control.byteLength;
112
- const offscreen = canvas.transferControlToOffscreen();
113
- worker.onmessage = ({ data }) => {
114
- if (this.worker !== worker || this.disposed) {
115
- return;
116
- }
117
- switch (data.type) {
118
- case "ready":
119
- this.ready = true;
120
- this.options.redraw();
121
- break;
122
- case "presented": {
123
- const sent = this.pending.get(data.sequence);
124
- if (!sent) {
125
- return;
126
- }
127
- for (let i = 0; i < sent.morphs.length; i++) {
128
- const p = sent.morphs[i];
129
- if (p.object.morph === p.morph && this.player.stage.encloses(p.object)) {
130
- p.object.drawn(p.ratio);
131
- }
132
- }
133
- for (const sequence of this.pending.keys()) {
134
- if (sequence <= data.sequence) {
135
- this.stats.dropped += Number(sequence !== data.sequence);
136
- this.pending.delete(sequence);
137
- }
138
- }
139
- this.stats.presented++;
140
- this.stats.decodeMs += data.decodeMs;
141
- this.stats.renderMs += data.renderMs;
142
- this.stats.latencyMs += performance.now() - sent.at;
143
- canvas.hidden = false;
144
- this.state("worker");
145
- if (this.waiting) {
146
- this.waiting = false;
147
- this.options.redraw();
148
- }
149
- break;
150
- }
151
- case "skipped":
152
- for (const sequence of this.pending.keys()) {
153
- if (sequence <= data.sequence) {
154
- this.pending.delete(sequence);
155
- this.stats.dropped++;
156
- }
157
- }
158
- this.options.redraw();
159
- break;
160
- case "lost":
161
- this.ready = false;
162
- this.fallback("worker WebGL context lost; waiting for restoration");
163
- break;
164
- case "error":
165
- this.failed(String(data.error));
166
- break;
167
- }
168
- };
169
- worker.onerror = (event) => {
170
- event.preventDefault();
171
- if (this.worker === worker) {
172
- this.failed(event.message || "worker failed");
173
- }
174
- };
175
- worker.onmessageerror = () => {
176
- if (this.worker === worker) {
177
- this.failed("worker message could not be decoded");
178
- }
179
- };
180
- worker.postMessage({ type: "init", canvas: offscreen, frames }, [
181
- offscreen,
182
- ]);
183
- for (let i = 0; i < this.registrations.length; i++) {
184
- this.send({ type: "library", ...this.registrations[i] });
185
- }
186
- this.state("starting");
187
- this.timer = window.setInterval(() => {
188
- const first = this.pending.values().next().value;
189
- if ((first && performance.now() - first.at > 5000) ||
190
- (!this.ready && this.stats.state === "starting")) {
191
- this.failed("worker did not respond within five seconds");
192
- }
193
- }, 5000);
194
- }
195
- catch (error) {
196
- this.enabled = false;
197
- this.stop();
198
- this.releaseAssets();
199
- this.fallback(String(error));
200
- }
201
- }
202
- stop() {
203
- clearInterval(this.timer);
204
- this.worker?.terminate();
205
- this.worker = null;
206
- this.canvas?.remove();
207
- this.canvas = null;
208
- this.writer = null;
209
- this.ready = false;
210
- this.pending.clear();
211
- this.waiting = false;
212
- }
213
- fallback(reason) {
214
- this.pending.clear();
215
- if (this.canvas) {
216
- this.canvas.hidden = true;
217
- }
218
- this.state("main", reason);
219
- this.options.redraw();
220
- }
221
- failed(reason) {
222
- this.stop();
223
- this.fallback(reason);
224
- if (this.retry++ === 0 && !this.disposed && this.enabled) {
225
- this.stats.restarts++;
226
- this.start();
227
- }
228
- else {
229
- this.enabled = false;
230
- this.releaseAssets();
231
- }
232
- }
233
- /** False asks the caller to draw the current stage through its normal view. */
234
- render(state) {
235
- if (!this.enabled || !this.ready || !this.writer || this.disposed) {
236
- return false;
237
- }
238
- if (performance.now() < this.retryAt) {
239
- return false;
240
- }
241
- const morphs = [];
242
- const begin = performance.now();
243
- try {
244
- const sequence = this.writer.write((bytes) => {
245
- writePresentation(bytes, state, this.registrations.length);
246
- return (PRESENTATION_BYTES +
247
- this.snapshot.encode(this.player.stage, bytes.subarray(PRESENTATION_BYTES), morphs));
248
- });
249
- this.stats.encodeMs += performance.now() - begin;
250
- // BitmapData.draw may have used the main renderer since its last stage draw.
251
- this.main.renderer.events.rootTarget = this.main.stage;
252
- if (sequence === null) {
253
- this.stats.busy++;
254
- this.waiting = true;
255
- return this.stats.state === "worker";
256
- }
257
- this.pending.set(sequence, { at: begin, morphs });
258
- this.stats.published++;
259
- this.send({ type: "render" });
260
- return this.stats.state === "worker";
261
- }
262
- catch (error) {
263
- this.stats.encodeMs += performance.now() - begin;
264
- if (error instanceof RangeError &&
265
- /capacity/.test(error.message) &&
266
- this.capacity < 32 * 1024 * 1024) {
267
- this.capacity *= 2;
268
- this.stop();
269
- this.start();
270
- }
271
- else {
272
- // A loader can temporarily show unsupported content. Retry at most
273
- // once per second instead of throwing through every SWF frame.
274
- this.retryAt = performance.now() + 1000;
275
- }
276
- this.fallback(String(error));
277
- return false;
278
- }
279
- }
280
- releaseAssets() {
281
- for (let i = 0; i < this.registrations.length; i++) {
282
- this.assets.drop(this.registrations[i].id);
283
- }
284
- this.registrations.length = 0;
285
- this.stats.assetBytes = 0;
286
- this.stats.transportBytes = 0;
287
- }
288
- destroy() {
289
- this.disposed = true;
290
- this.stop();
291
- this.releaseAssets();
292
- if (this.main.renderer.events.rootTarget === this.main.stage) {
293
- this.main.renderer.events.rootTarget = this.inputRoot;
294
- }
295
- }
296
- }
297
- //# sourceMappingURL=host.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../../src/render/worker/host.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- import { type Font, type Glyph } from "@swf2es/format";
2
- import { type Character, type Library } from "../../display/timeline.js";
3
- export interface AssetRef {
4
- library: number;
5
- character: number;
6
- }
7
- export interface SharedLibrary {
8
- swf: SharedArrayBuffer;
9
- bitmaps: {
10
- id: number;
11
- width: number;
12
- height: number;
13
- transparent: boolean;
14
- pixels: SharedArrayBuffer;
15
- }[];
16
- }
17
- /** Publish once after linking/decoding. Neither side writes these asset buffers. */
18
- export declare function shareLibrary(bytes: Uint8Array, library: Library): SharedLibrary;
19
- export declare function readSharedLibrary(asset: SharedLibrary): Library;
20
- export declare class SceneLibraries {
21
- private readonly libraries;
22
- private readonly used;
23
- private readonly references;
24
- private readonly glyphs;
25
- add(id: number, library: Library): void;
26
- private index;
27
- /** Retire only after every frame referencing this library has been released. */
28
- drop(id: number): void;
29
- ref(asset: object): AssetRef;
30
- character(library: number, id: number): Character | undefined;
31
- library(id: number): Library | undefined;
32
- font(library: number, id: number): Font;
33
- glyph(font: Font, glyph: Glyph): number;
34
- }
35
- export declare function sceneLibraries(source: Library | SceneLibraries): SceneLibraries;
36
- //# sourceMappingURL=libraries.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"libraries.d.ts","sourceRoot":"","sources":["../../../src/render/worker/libraries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,KAAK,EAAW,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,OAAO,EAAe,MAAM,2BAA2B,CAAC;AAEtF,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,iBAAiB,CAAC;IACvB,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,OAAO,CAAC;QACrB,MAAM,EAAE,iBAAiB,CAAC;KAC3B,EAAE,CAAC;CACL;AAQD,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,aAAa,CAsB/E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAuC/D;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqC;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;IAEvD,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAiBtC;IAED,OAAO,CAAC,KAAK;IASb,gFAAgF;IAChF,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAgBrB;IAED,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAU3B;IAED,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE5D;IAED,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAEvC;IAED,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAOtC;IAED,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAOtC;CACF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,GAAG,cAAc,CAQ/E"}