framefields 2.9.3 → 2.11.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.
Files changed (480) hide show
  1. package/README.md +9 -2
  2. package/dist/audio/index.d.mts +5 -5
  3. package/dist/audio/index.mjs +13 -13
  4. package/dist/{audio-B6RmYOPe.mjs → audio-BuCVk1IQ.mjs} +32 -6
  5. package/dist/audio-BuCVk1IQ.mjs.map +1 -0
  6. package/dist/audio-CYZkDwae.d.mts +62 -0
  7. package/dist/audio-CYZkDwae.d.mts.map +1 -0
  8. package/dist/{audio-BlDbnteH.mjs → audio-KHBadECb.mjs} +1 -1
  9. package/dist/{audio-BlDbnteH.mjs.map → audio-KHBadECb.mjs.map} +1 -1
  10. package/dist/{check-result-Bj7g62ka.mjs → check-result-Culfu7Nx.mjs} +1 -1
  11. package/dist/{check-result-Bj7g62ka.mjs.map → check-result-Culfu7Nx.mjs.map} +1 -1
  12. package/dist/cli/check-worker.mjs +50 -50
  13. package/dist/cli.mjs +179 -3
  14. package/dist/cli.mjs.map +1 -1
  15. package/dist/cloud/index.d.mts +118 -0
  16. package/dist/cloud/index.d.mts.map +1 -0
  17. package/dist/cloud/index.mjs +3 -0
  18. package/dist/cloud-xcfV4J03.mjs +233 -0
  19. package/dist/cloud-xcfV4J03.mjs.map +1 -0
  20. package/dist/components/index.d.mts +14 -14
  21. package/dist/components/index.mjs +47 -47
  22. package/dist/{dist-Cn8bDsQF.mjs → dist-BIE8fvlv.mjs} +1 -1
  23. package/dist/{dist-Cn8bDsQF.mjs.map → dist-BIE8fvlv.mjs.map} +1 -1
  24. package/dist/{dist-ByxHoMQI.mjs → dist-Bf2_efYP.mjs} +1 -1
  25. package/dist/{dist-ByxHoMQI.mjs.map → dist-Bf2_efYP.mjs.map} +1 -1
  26. package/dist/{dist-BlulwErl.mjs → dist-CNGv-JTX.mjs} +1 -1
  27. package/dist/{dist-D12-a3-x.mjs → dist-CWLLnigL.mjs} +375 -15
  28. package/dist/dist-CWLLnigL.mjs.map +1 -0
  29. package/dist/{dist-DL1GwJvs.mjs → dist-CySGkG54.mjs} +2 -2
  30. package/dist/{dist-DL1GwJvs.mjs.map → dist-CySGkG54.mjs.map} +1 -1
  31. package/dist/{dist-Dq5TkNDI.mjs → dist-Dg9LMWoX.mjs} +2 -2
  32. package/dist/{dist-Dq5TkNDI.mjs.map → dist-Dg9LMWoX.mjs.map} +1 -1
  33. package/dist/{dist-DEUU6sNe.mjs → dist-EQX3TUUl.mjs} +4 -4
  34. package/dist/{dist-DEUU6sNe.mjs.map → dist-EQX3TUUl.mjs.map} +1 -1
  35. package/dist/effects/index.d.mts +6 -6
  36. package/dist/effects/index.mjs +36 -36
  37. package/dist/{effects-CViUoQSV.mjs → effects-DKLbLXF7.mjs} +3 -3
  38. package/dist/{effects-CViUoQSV.mjs.map → effects-DKLbLXF7.mjs.map} +1 -1
  39. package/dist/fonts/index.d.mts +1 -1
  40. package/dist/fonts/index.mjs +3 -3
  41. package/dist/{fonts-B0U2KO5I.mjs → fonts-gPbGbShD.mjs} +2 -2
  42. package/dist/{fonts-B0U2KO5I.mjs.map → fonts-gPbGbShD.mjs.map} +1 -1
  43. package/dist/{gpu-zFNrvhV9.mjs → gpu-CpkJJLQP.mjs} +2 -2
  44. package/dist/{gpu-zFNrvhV9.mjs.map → gpu-CpkJJLQP.mjs.map} +1 -1
  45. package/dist/{index-BuYtrhzL.d.mts → index-BW0Q1ygn.d.mts} +1 -1
  46. package/dist/{index-BuYtrhzL.d.mts.map → index-BW0Q1ygn.d.mts.map} +1 -1
  47. package/dist/{index-f4IF1vRH.d.mts → index-Bly-7YM1.d.mts} +3 -3
  48. package/dist/{index-f4IF1vRH.d.mts.map → index-Bly-7YM1.d.mts.map} +1 -1
  49. package/dist/{index-Bzo1uj8h.d.mts → index-BuiZzc6i.d.mts} +23 -3
  50. package/dist/index-BuiZzc6i.d.mts.map +1 -0
  51. package/dist/{index-DBhswLMO.d.mts → index-C8YwZ6k1.d.mts} +2 -2
  52. package/dist/{index-DBhswLMO.d.mts.map → index-C8YwZ6k1.d.mts.map} +1 -1
  53. package/dist/{index-svAgwTY_.d.mts → index-CEU_Zsb9.d.mts} +2 -2
  54. package/dist/{index-svAgwTY_.d.mts.map → index-CEU_Zsb9.d.mts.map} +1 -1
  55. package/dist/{index-9_4X2ro1.d.mts → index-COYNQ_mf.d.mts} +1 -1
  56. package/dist/{index-9_4X2ro1.d.mts.map → index-COYNQ_mf.d.mts.map} +1 -1
  57. package/dist/{index-CgGM31I9.d.mts → index-CdCrae-I.d.mts} +2 -2
  58. package/dist/{index-CgGM31I9.d.mts.map → index-CdCrae-I.d.mts.map} +1 -1
  59. package/dist/{index-B9Lm1x8i.d.mts → index-Cro-818i.d.mts} +297 -283
  60. package/dist/index-Cro-818i.d.mts.map +1 -0
  61. package/dist/{index-w28KUM9A.d.mts → index-D2i9J9Zq.d.mts} +3 -3
  62. package/dist/{index-w28KUM9A.d.mts.map → index-D2i9J9Zq.d.mts.map} +1 -1
  63. package/dist/{index-V0ZQ4JN6.d.mts → index-gOVtTm-P.d.mts} +125 -3
  64. package/dist/index-gOVtTm-P.d.mts.map +1 -0
  65. package/dist/{index-C6GcuYVA.d.mts → index-jSDEM-uE.d.mts} +5 -5
  66. package/dist/{index-C6GcuYVA.d.mts.map → index-jSDEM-uE.d.mts.map} +1 -1
  67. package/dist/index.d.mts +16 -16
  68. package/dist/index.mjs +59 -59
  69. package/dist/preview/index.d.mts +4 -4
  70. package/dist/preview/index.mjs +12 -12
  71. package/dist/{preview-ZKJ_zTmd.mjs → preview-BToKUTtZ.mjs} +3 -3
  72. package/dist/{preview-ZKJ_zTmd.mjs.map → preview-BToKUTtZ.mjs.map} +1 -1
  73. package/dist/preview-engine/audio.mjs +1 -1
  74. package/dist/preview-engine/{chunk-VN36PRVD.mjs → chunk-26XWIHW3.mjs} +1 -1
  75. package/dist/preview-engine/{chunk-BVDWS3D2.mjs → chunk-4AGQN53P.mjs} +1 -1
  76. package/dist/preview-engine/{chunk-IB6GZJOL.mjs → chunk-54Q5CKSV.mjs} +1 -1
  77. package/dist/preview-engine/{chunk-Y5K5LVOR.mjs → chunk-5KSBS3AL.mjs} +1 -1
  78. package/dist/preview-engine/{chunk-ZJ5SWTCW.mjs → chunk-65NANVQL.mjs} +1 -1
  79. package/dist/preview-engine/{chunk-34RJ7GAS.mjs → chunk-6LTINEA4.mjs} +1 -1
  80. package/dist/preview-engine/{chunk-SPJPM43P.mjs → chunk-7GMHSTRP.mjs} +1 -1
  81. package/dist/preview-engine/{chunk-BEYA25UZ.mjs → chunk-ACBBBOUM.mjs} +1 -1
  82. package/dist/preview-engine/{chunk-7U34VKNO.mjs → chunk-BRV7TQDV.mjs} +1 -1
  83. package/dist/preview-engine/{chunk-KHJZMTOS.mjs → chunk-CCORQLMR.mjs} +1 -1
  84. package/dist/preview-engine/{chunk-5AWAOMBR.mjs → chunk-CIVEZJYF.mjs} +1 -1
  85. package/dist/preview-engine/{chunk-FKG27DVO.mjs → chunk-CIVJXFWH.mjs} +1 -1
  86. package/dist/preview-engine/{chunk-JIPMF42Z.mjs → chunk-D6LM7DTJ.mjs} +2 -2
  87. package/dist/preview-engine/{chunk-GA4HNR44.mjs → chunk-DNNGWS2C.mjs} +1 -1
  88. package/dist/preview-engine/{chunk-ZY47XIRK.mjs → chunk-EAWJXW4J.mjs} +1 -1
  89. package/dist/preview-engine/{chunk-6R3UJBL5.mjs → chunk-EPRINA4V.mjs} +1 -1
  90. package/dist/preview-engine/{chunk-GRJJVSOV.mjs → chunk-EXEO245X.mjs} +1 -1
  91. package/dist/preview-engine/{chunk-DVZITDQS.mjs → chunk-FQL4IJZN.mjs} +1 -1
  92. package/dist/preview-engine/{chunk-QCSVT73T.mjs → chunk-GHTG5XV6.mjs} +1 -1
  93. package/dist/preview-engine/{chunk-VVY4PG5E.mjs → chunk-GXFYRMJZ.mjs} +25 -25
  94. package/dist/preview-engine/{chunk-AHQCDTD6.mjs → chunk-IBPYV6HF.mjs} +1 -1
  95. package/dist/preview-engine/{chunk-PM2W4VLT.mjs → chunk-IKVJ4MW5.mjs} +1 -1
  96. package/dist/preview-engine/{chunk-GZWA5QJS.mjs → chunk-JDB7PMRI.mjs} +1 -1
  97. package/dist/preview-engine/{chunk-CC4NNNIY.mjs → chunk-KVOFO273.mjs} +1 -1
  98. package/dist/preview-engine/{chunk-RJIAES3X.mjs → chunk-LFNCWMKS.mjs} +1 -1
  99. package/dist/preview-engine/{chunk-FTCEG3SF.mjs → chunk-LMXMBX4J.mjs} +1 -1
  100. package/dist/preview-engine/{chunk-MIEH74UH.mjs → chunk-M4QANUJI.mjs} +1 -1
  101. package/dist/preview-engine/{chunk-VVE2QHVG.mjs → chunk-NOKPBMIP.mjs} +1 -1
  102. package/dist/preview-engine/{chunk-P5FKRQFU.mjs → chunk-O63FLYWC.mjs} +1 -1
  103. package/dist/preview-engine/chunk-OELPPLML.mjs +107 -0
  104. package/dist/preview-engine/{chunk-GIICZZQI.mjs → chunk-OLB4TQLQ.mjs} +1 -1
  105. package/dist/preview-engine/{chunk-CN2VLYLB.mjs → chunk-PKNUTHPI.mjs} +1 -1
  106. package/dist/preview-engine/{chunk-2B722GXM.mjs → chunk-QF4JWVO3.mjs} +1 -1
  107. package/dist/preview-engine/{chunk-EJJITH6U.mjs → chunk-RDWLLITE.mjs} +1 -1
  108. package/dist/preview-engine/{chunk-K3C6GUQD.mjs → chunk-SE2C623Z.mjs} +1 -1
  109. package/dist/preview-engine/{chunk-34DL53D5.mjs → chunk-TEWRQKX3.mjs} +1 -1
  110. package/dist/preview-engine/{chunk-H7BSN7V7.mjs → chunk-UGB6JKVS.mjs} +1 -1
  111. package/dist/preview-engine/{chunk-BJV2LBII.mjs → chunk-UI3VH33L.mjs} +1 -1
  112. package/dist/preview-engine/{chunk-UXYM2G6J.mjs → chunk-UMJ3VGKN.mjs} +1 -1
  113. package/dist/preview-engine/{chunk-2DWY7UBV.mjs → chunk-VFQH5KVS.mjs} +1 -1
  114. package/dist/preview-engine/{chunk-73CNXGAK.mjs → chunk-VQA4DYZU.mjs} +1 -1
  115. package/dist/preview-engine/{chunk-LVYVXVZO.mjs → chunk-VZLIRYAL.mjs} +1 -1
  116. package/dist/preview-engine/{chunk-4WYM72ZN.mjs → chunk-WFMUDL55.mjs} +1 -1
  117. package/dist/preview-engine/{chunk-Q62GPWGD.mjs → chunk-XF6DYP6B.mjs} +11 -11
  118. package/dist/preview-engine/{chunk-35HMRW4I.mjs → chunk-YHMBGJP6.mjs} +1 -1
  119. package/dist/preview-engine/{chunk-DMSZXG56.mjs → chunk-YKM7JDQY.mjs} +1 -1
  120. package/dist/preview-engine/{chunk-SF37HXAH.mjs → chunk-YVZTRH4Y.mjs} +1 -1
  121. package/dist/preview-engine/{chunk-TNJEZKXM.mjs → chunk-Z24UEN4P.mjs} +1 -1
  122. package/dist/preview-engine/{chunk-2PYTDN2C.mjs → chunk-ZF2MEFKO.mjs} +1 -1
  123. package/dist/preview-engine/{chunk-OH5W5EL6.mjs → chunk-ZIXPWP2B.mjs} +1 -1
  124. package/dist/preview-engine/components.mjs +1 -1
  125. package/dist/preview-engine/effects.mjs +1 -1
  126. package/dist/preview-engine/framefields.mjs +1 -1
  127. package/dist/preview-engine/player.mjs +1 -1
  128. package/dist/preview-engine/renderers-2NGIILMI.mjs +1 -0
  129. package/dist/preview-engine/{renderers-5TO2SXFR.mjs → renderers-33FCFHDR.mjs} +1 -1
  130. package/dist/preview-engine/renderers-466Z77BH.mjs +1 -0
  131. package/dist/preview-engine/{renderers-PIIEUKFE.mjs → renderers-4IBFDW2S.mjs} +1 -1
  132. package/dist/preview-engine/renderers-4KRENGZA.mjs +1 -0
  133. package/dist/preview-engine/renderers-4W52BQEU.mjs +1 -0
  134. package/dist/preview-engine/{renderers-ZACSHGNZ.mjs → renderers-53EI26GL.mjs} +1 -1
  135. package/dist/preview-engine/renderers-55PRAS7G.mjs +1 -0
  136. package/dist/preview-engine/renderers-5LLYINHW.mjs +1 -0
  137. package/dist/preview-engine/{renderers-A24KZK2Q.mjs → renderers-5XLGCEOA.mjs} +1 -1
  138. package/dist/preview-engine/renderers-63N3Y2XO.mjs +1 -0
  139. package/dist/preview-engine/{renderers-V3AQO7AR.mjs → renderers-6LNDAO4B.mjs} +1 -1
  140. package/dist/preview-engine/renderers-6ROVFDIN.mjs +1 -0
  141. package/dist/preview-engine/{renderers-CUMVIVHI.mjs → renderers-6YVZUQOH.mjs} +1 -1
  142. package/dist/preview-engine/renderers-7CAHX35U.mjs +1 -0
  143. package/dist/preview-engine/renderers-A4RVLPMG.mjs +1 -0
  144. package/dist/preview-engine/renderers-A53P4J6O.mjs +1 -0
  145. package/dist/preview-engine/{renderers-WEYAHOBK.mjs → renderers-ACUJMDEK.mjs} +1 -1
  146. package/dist/preview-engine/renderers-AFJ3373L.mjs +1 -0
  147. package/dist/preview-engine/renderers-ATFWTA3U.mjs +1 -0
  148. package/dist/preview-engine/{renderers-TSBV4KPE.mjs → renderers-BOBVXYAA.mjs} +1 -1
  149. package/dist/preview-engine/renderers-BPYJXHBU.mjs +1 -0
  150. package/dist/preview-engine/{renderers-NCGH2WWJ.mjs → renderers-C7SI3NIE.mjs} +1 -1
  151. package/dist/preview-engine/{renderers-FSI5KNGZ.mjs → renderers-CCRZNGVK.mjs} +1 -1
  152. package/dist/preview-engine/{renderers-NUAI4TO5.mjs → renderers-CYJAVWHT.mjs} +1 -1
  153. package/dist/preview-engine/renderers-D3ZF7FXT.mjs +1 -0
  154. package/dist/preview-engine/renderers-D7YN6B4B.mjs +1 -0
  155. package/dist/preview-engine/renderers-DBLASKF5.mjs +1 -0
  156. package/dist/preview-engine/renderers-DC5ZYYHM.mjs +1 -0
  157. package/dist/preview-engine/{renderers-5UZ3YFBD.mjs → renderers-EN7LXJLG.mjs} +1 -1
  158. package/dist/preview-engine/{renderers-L6YDX6GS.mjs → renderers-FY2HOQCS.mjs} +1 -1
  159. package/dist/preview-engine/{renderers-6Z7DWAPH.mjs → renderers-GQM3KMV3.mjs} +1 -1
  160. package/dist/preview-engine/{renderers-QA2HKUJJ.mjs → renderers-H6PBHEYU.mjs} +1 -1
  161. package/dist/preview-engine/{renderers-MD3PRFZL.mjs → renderers-HKLCB4U6.mjs} +1 -1
  162. package/dist/preview-engine/{renderers-TGJSOKDY.mjs → renderers-HSFQIILN.mjs} +1 -1
  163. package/dist/preview-engine/{renderers-7C5RA3R5.mjs → renderers-I6QKZ7CH.mjs} +1 -1
  164. package/dist/preview-engine/renderers-J6ZEXW5L.mjs +1 -0
  165. package/dist/preview-engine/renderers-JV4MF46Q.mjs +1 -0
  166. package/dist/preview-engine/{renderers-SEIAUKJF.mjs → renderers-KCGK33Y2.mjs} +1 -1
  167. package/dist/preview-engine/renderers-KQKH4ZIX.mjs +1 -0
  168. package/dist/preview-engine/renderers-MEITHN4N.mjs +1 -0
  169. package/dist/preview-engine/renderers-MN3HSBTJ.mjs +1 -0
  170. package/dist/preview-engine/renderers-NTG3QGNH.mjs +1 -0
  171. package/dist/preview-engine/{renderers-KC6ZSKCW.mjs → renderers-OGOW3NA4.mjs} +1 -1
  172. package/dist/preview-engine/renderers-OU4SFMB2.mjs +1 -0
  173. package/dist/preview-engine/{renderers-ENMY4DKF.mjs → renderers-P2HORBZ6.mjs} +1 -1
  174. package/dist/preview-engine/renderers-P6TIBJIG.mjs +1 -0
  175. package/dist/preview-engine/renderers-POJWQ7L3.mjs +1 -0
  176. package/dist/preview-engine/renderers-RJ7S6VHD.mjs +1 -0
  177. package/dist/preview-engine/renderers-RJJAJZYN.mjs +1 -0
  178. package/dist/preview-engine/renderers-UEQ733VK.mjs +1 -0
  179. package/dist/preview-engine/{renderers-T74CQCEN.mjs → renderers-UG2C3C7T.mjs} +1 -1
  180. package/dist/preview-engine/renderers-ULO2AW2U.mjs +1 -0
  181. package/dist/preview-engine/renderers-UPVHGHCK.mjs +1 -0
  182. package/dist/preview-engine/renderers-UZHSNNIM.mjs +1 -0
  183. package/dist/preview-engine/renderers-V5KWZL2C.mjs +1 -0
  184. package/dist/preview-engine/{renderers-5KANN7XF.mjs → renderers-VIGZYJYX.mjs} +1 -1
  185. package/dist/preview-engine/{renderers-4F7WLQD5.mjs → renderers-VVP5WQOY.mjs} +1 -1
  186. package/dist/preview-engine/{renderers-7XHO6M3B.mjs → renderers-WL372W36.mjs} +1 -1
  187. package/dist/preview-engine/{renderers-U4M7ZCV4.mjs → renderers-WSABL3QO.mjs} +1 -1
  188. package/dist/preview-engine/{renderers-Y22VSOXF.mjs → renderers-X6CORAES.mjs} +1 -1
  189. package/dist/preview-engine/renderers-YMXKYOHQ.mjs +1 -0
  190. package/dist/preview-engine/renderers-YWDAZ2NZ.mjs +1 -0
  191. package/dist/preview-engine/signals.mjs +1 -1
  192. package/dist/{program-xjIwjKb6.mjs → program-Bc860ko5.mjs} +4 -4
  193. package/dist/{program-xjIwjKb6.mjs.map → program-Bc860ko5.mjs.map} +1 -1
  194. package/dist/registry/focus-zoom.json +9 -2
  195. package/dist/renderer/index.d.mts +4 -4
  196. package/dist/renderer/index.mjs +4 -4
  197. package/dist/renderer--Ymc_4XJ.mjs +5 -0
  198. package/dist/{renderer-Dee8ksIV.mjs → renderer-1uoKiILq.mjs} +3 -3
  199. package/dist/{renderer-Dee8ksIV.mjs.map → renderer-1uoKiILq.mjs.map} +1 -1
  200. package/dist/{renderer-CIB5L_C4.mjs → renderer-4ZUv3X1I.mjs} +5 -5
  201. package/dist/{renderer-CIB5L_C4.mjs.map → renderer-4ZUv3X1I.mjs.map} +1 -1
  202. package/dist/{renderer-BPYIqtNg.mjs → renderer-50JEMaVo.mjs} +5 -5
  203. package/dist/{renderer-BPYIqtNg.mjs.map → renderer-50JEMaVo.mjs.map} +1 -1
  204. package/dist/{renderer-BdbI_u9w.mjs → renderer-7ow5Acsg.mjs} +3 -3
  205. package/dist/{renderer-BdbI_u9w.mjs.map → renderer-7ow5Acsg.mjs.map} +1 -1
  206. package/dist/{renderer-B-inTgyb.d.mts → renderer-88C3QpKL.d.mts} +2 -2
  207. package/dist/{renderer-B-inTgyb.d.mts.map → renderer-88C3QpKL.d.mts.map} +1 -1
  208. package/dist/{renderer-DH7l5WFr.mjs → renderer-B-CMRUag.mjs} +4 -4
  209. package/dist/{renderer-DH7l5WFr.mjs.map → renderer-B-CMRUag.mjs.map} +1 -1
  210. package/dist/renderer-B-OdV-eq.mjs +5 -0
  211. package/dist/{renderer-NTCk1Srf.mjs → renderer-B1LD29TV.mjs} +3 -3
  212. package/dist/{renderer-NTCk1Srf.mjs.map → renderer-B1LD29TV.mjs.map} +1 -1
  213. package/dist/{renderer-ESkPj6pk.mjs → renderer-B1esRxGy.mjs} +4 -4
  214. package/dist/{renderer-ESkPj6pk.mjs.map → renderer-B1esRxGy.mjs.map} +1 -1
  215. package/dist/{renderer-g7fF2AYk.mjs → renderer-B3Dme2es.mjs} +5 -5
  216. package/dist/{renderer-g7fF2AYk.mjs.map → renderer-B3Dme2es.mjs.map} +1 -1
  217. package/dist/renderer-B65fwoA2.mjs +5 -0
  218. package/dist/{renderer-CDVb4OfJ.mjs → renderer-B6Oeahe_.mjs} +5 -5
  219. package/dist/{renderer-CDVb4OfJ.mjs.map → renderer-B6Oeahe_.mjs.map} +1 -1
  220. package/dist/renderer-B92Ahkcv.mjs +5 -0
  221. package/dist/renderer-B9z2AK31.mjs +5 -0
  222. package/dist/{renderer-BZmmekE8.mjs → renderer-BDZC3o3N.mjs} +4 -4
  223. package/dist/{renderer-BZmmekE8.mjs.map → renderer-BDZC3o3N.mjs.map} +1 -1
  224. package/dist/renderer-BIF3Dg3Z.mjs +5 -0
  225. package/dist/{renderer-C06U4c9k.mjs → renderer-BJ-7WRgO.mjs} +3 -3
  226. package/dist/{renderer-C06U4c9k.mjs.map → renderer-BJ-7WRgO.mjs.map} +1 -1
  227. package/dist/renderer-BJUVaIAT.mjs +5 -0
  228. package/dist/renderer-BKRDMbI-.mjs +5 -0
  229. package/dist/{renderer-HnSiwSW8.mjs → renderer-BNHcwxw9.mjs} +4 -4
  230. package/dist/{renderer-HnSiwSW8.mjs.map → renderer-BNHcwxw9.mjs.map} +1 -1
  231. package/dist/{renderer-B78W9uad.mjs → renderer-BNJ6Jk7-.mjs} +4 -4
  232. package/dist/{renderer-B78W9uad.mjs.map → renderer-BNJ6Jk7-.mjs.map} +1 -1
  233. package/dist/{renderer-BVql26Ay.mjs → renderer-BOrMBwQS.mjs} +2 -2
  234. package/dist/{renderer-BVql26Ay.mjs.map → renderer-BOrMBwQS.mjs.map} +1 -1
  235. package/dist/{renderer-Cl8r1LJe.mjs → renderer-BQetXCcZ.mjs} +4 -4
  236. package/dist/{renderer-Cl8r1LJe.mjs.map → renderer-BQetXCcZ.mjs.map} +1 -1
  237. package/dist/{renderer-C4yKI8MT.mjs → renderer-BSELd5vU.mjs} +3 -3
  238. package/dist/{renderer-C4yKI8MT.mjs.map → renderer-BSELd5vU.mjs.map} +1 -1
  239. package/dist/renderer-BSwhyVWa.mjs +5 -0
  240. package/dist/{renderer-CcJyD9Q5.mjs → renderer-BURhYcpA.mjs} +4 -4
  241. package/dist/{renderer-CcJyD9Q5.mjs.map → renderer-BURhYcpA.mjs.map} +1 -1
  242. package/dist/renderer-BUqSZn2X.mjs +5 -0
  243. package/dist/{renderer-DoPEPlbG.d.mts → renderer-BVKOQarx.d.mts} +3 -3
  244. package/dist/{renderer-DoPEPlbG.d.mts.map → renderer-BVKOQarx.d.mts.map} +1 -1
  245. package/dist/{renderer-CwVbHki6.mjs → renderer-BaIJIfJ6.mjs} +5 -5
  246. package/dist/{renderer-CwVbHki6.mjs.map → renderer-BaIJIfJ6.mjs.map} +1 -1
  247. package/dist/renderer-BbmvjqK9.mjs +3 -0
  248. package/dist/{renderer-Be5hfwSd.mjs → renderer-Bbxh4N8Y.mjs} +425 -115
  249. package/dist/renderer-Bbxh4N8Y.mjs.map +1 -0
  250. package/dist/{renderer-BG6bkKtY.mjs → renderer-Bf4-N7k7.mjs} +5 -5
  251. package/dist/{renderer-BG6bkKtY.mjs.map → renderer-Bf4-N7k7.mjs.map} +1 -1
  252. package/dist/{renderer-CpedZNEG.mjs → renderer-BhsrlGKp.mjs} +3 -3
  253. package/dist/{renderer-CpedZNEG.mjs.map → renderer-BhsrlGKp.mjs.map} +1 -1
  254. package/dist/{renderer-AUK_ZS3p.mjs → renderer-Bo7shNdU.mjs} +4 -4
  255. package/dist/{renderer-AUK_ZS3p.mjs.map → renderer-Bo7shNdU.mjs.map} +1 -1
  256. package/dist/renderer-Bpe4k_x6.mjs +5 -0
  257. package/dist/{renderer-BfbSvElt.mjs → renderer-BwrfKKqw.mjs} +4 -4
  258. package/dist/{renderer-BfbSvElt.mjs.map → renderer-BwrfKKqw.mjs.map} +1 -1
  259. package/dist/{renderer-CWLF6cAz.mjs → renderer-Bx14Wnxl.mjs} +3 -3
  260. package/dist/{renderer-CWLF6cAz.mjs.map → renderer-Bx14Wnxl.mjs.map} +1 -1
  261. package/dist/{renderer-CCFHnafT.mjs → renderer-Bxjb0HYU.mjs} +4 -4
  262. package/dist/{renderer-CCFHnafT.mjs.map → renderer-Bxjb0HYU.mjs.map} +1 -1
  263. package/dist/{renderer-5qJPGvVL.mjs → renderer-ByjaseAo.mjs} +5 -5
  264. package/dist/{renderer-5qJPGvVL.mjs.map → renderer-ByjaseAo.mjs.map} +1 -1
  265. package/dist/renderer-C1NjG0CJ.mjs +5 -0
  266. package/dist/renderer-C7Puyst9.mjs +5 -0
  267. package/dist/{renderer-CYX9vKZ-.mjs → renderer-C9BSXyrq.mjs} +4 -4
  268. package/dist/{renderer-CYX9vKZ-.mjs.map → renderer-C9BSXyrq.mjs.map} +1 -1
  269. package/dist/{renderer-CUBDxuxh.mjs → renderer-CAWnCsQc.mjs} +5 -5
  270. package/dist/{renderer-CUBDxuxh.mjs.map → renderer-CAWnCsQc.mjs.map} +1 -1
  271. package/dist/renderer-CGA_7320.mjs +5 -0
  272. package/dist/{renderer-CEfVvcw-.mjs → renderer-CLAvn9c6.mjs} +4 -4
  273. package/dist/{renderer-CEfVvcw-.mjs.map → renderer-CLAvn9c6.mjs.map} +1 -1
  274. package/dist/renderer-CLnFkXO7.mjs +5 -0
  275. package/dist/renderer-CMQIT1Kh.mjs +5 -0
  276. package/dist/{renderer-BYqrtBvd.mjs → renderer-COcKhouz.mjs} +5 -5
  277. package/dist/{renderer-BYqrtBvd.mjs.map → renderer-COcKhouz.mjs.map} +1 -1
  278. package/dist/renderer-CQ1rwjIh.mjs +5 -0
  279. package/dist/{renderer-US4GsamT.mjs → renderer-CR0mDPYY.mjs} +3 -3
  280. package/dist/renderer-CT8h0boY.mjs +5 -0
  281. package/dist/{renderer-VhkubIx_.mjs → renderer-CU8v-LxD.mjs} +5 -5
  282. package/dist/{renderer-VhkubIx_.mjs.map → renderer-CU8v-LxD.mjs.map} +1 -1
  283. package/dist/renderer-Cb0lszt3.mjs +5 -0
  284. package/dist/renderer-Ci7oLye9.mjs +5 -0
  285. package/dist/renderer-CjqXB3CZ.mjs +5 -0
  286. package/dist/{renderer-DIEmK57T.mjs → renderer-Co6UFbZB.mjs} +5 -5
  287. package/dist/{renderer-DIEmK57T.mjs.map → renderer-Co6UFbZB.mjs.map} +1 -1
  288. package/dist/renderer-CqTV04zQ.mjs +5 -0
  289. package/dist/{renderer-xDV2cCkX.mjs → renderer-CrR8Mpxq.mjs} +5 -5
  290. package/dist/{renderer-xDV2cCkX.mjs.map → renderer-CrR8Mpxq.mjs.map} +1 -1
  291. package/dist/renderer-CtWeRtHK.mjs +5 -0
  292. package/dist/{renderer-BRWjLiHX.mjs → renderer-CxGx1Lhi.mjs} +3 -3
  293. package/dist/{renderer-BRWjLiHX.mjs.map → renderer-CxGx1Lhi.mjs.map} +1 -1
  294. package/dist/{renderer-BQOeeXTr.mjs → renderer-Cz-n883J.mjs} +5 -5
  295. package/dist/{renderer-BQOeeXTr.mjs.map → renderer-Cz-n883J.mjs.map} +1 -1
  296. package/dist/renderer-CzolnwCo.mjs +5 -0
  297. package/dist/{renderer-sPI7aY6c.mjs → renderer-D-QVGphn.mjs} +4 -4
  298. package/dist/{renderer-sPI7aY6c.mjs.map → renderer-D-QVGphn.mjs.map} +1 -1
  299. package/dist/{renderer-C3tVrzyT.mjs → renderer-D06HxSXO.mjs} +3 -3
  300. package/dist/{renderer-CXLugAe8.mjs → renderer-D0aAZHC7.mjs} +4 -4
  301. package/dist/{renderer-CXLugAe8.mjs.map → renderer-D0aAZHC7.mjs.map} +1 -1
  302. package/dist/{renderer-mLlgfM7X.mjs → renderer-D4f8f66C.mjs} +4 -4
  303. package/dist/{renderer-mLlgfM7X.mjs.map → renderer-D4f8f66C.mjs.map} +1 -1
  304. package/dist/renderer-D6qhcx_C.mjs +5 -0
  305. package/dist/{renderer-C7MAqpIS.mjs → renderer-DAn9xiQT.mjs} +4 -4
  306. package/dist/{renderer-C7MAqpIS.mjs.map → renderer-DAn9xiQT.mjs.map} +1 -1
  307. package/dist/renderer-DDfEf0jt.mjs +5 -0
  308. package/dist/renderer-DDpa8ztp.mjs +5 -0
  309. package/dist/{renderer-DW7hbluw.mjs → renderer-DE9Jik9K.mjs} +3 -3
  310. package/dist/{renderer-DW7hbluw.mjs.map → renderer-DE9Jik9K.mjs.map} +1 -1
  311. package/dist/{renderer-C6st34I6.mjs → renderer-DFJWPqOJ.mjs} +3 -3
  312. package/dist/{renderer-C6st34I6.mjs.map → renderer-DFJWPqOJ.mjs.map} +1 -1
  313. package/dist/{renderer-D2TTDcgh.mjs → renderer-DLPhfwbR.mjs} +3 -3
  314. package/dist/{renderer-D2TTDcgh.mjs.map → renderer-DLPhfwbR.mjs.map} +1 -1
  315. package/dist/{renderer-D1VsqFf4.mjs → renderer-DOkbn1ot.mjs} +5 -5
  316. package/dist/{renderer-D1VsqFf4.mjs.map → renderer-DOkbn1ot.mjs.map} +1 -1
  317. package/dist/{renderer-BWMzjSgf.mjs → renderer-DaXQgGg3.mjs} +5 -5
  318. package/dist/{renderer-BWMzjSgf.mjs.map → renderer-DaXQgGg3.mjs.map} +1 -1
  319. package/dist/renderer-DbQBqzmx.mjs +5 -0
  320. package/dist/{renderer-DrWeb39d.mjs → renderer-DcvjSolU.mjs} +1 -1
  321. package/dist/{renderer-DrWeb39d.mjs.map → renderer-DcvjSolU.mjs.map} +1 -1
  322. package/dist/renderer-DfUcwMKa.mjs +5 -0
  323. package/dist/renderer-DgIjNANM.mjs +6 -0
  324. package/dist/{renderer-DOKHd37M.mjs → renderer-DgPn_SOC.mjs} +4 -4
  325. package/dist/{renderer-DOKHd37M.mjs.map → renderer-DgPn_SOC.mjs.map} +1 -1
  326. package/dist/{renderer-BgDLCCuq.mjs → renderer-DkqZmfm8.mjs} +5 -5
  327. package/dist/{renderer-BgDLCCuq.mjs.map → renderer-DkqZmfm8.mjs.map} +1 -1
  328. package/dist/{renderer-q4zMFfnY.mjs → renderer-Dpl6poqD.mjs} +2 -2
  329. package/dist/{renderer-q4zMFfnY.mjs.map → renderer-Dpl6poqD.mjs.map} +1 -1
  330. package/dist/renderer-Dsh6Tgu0.mjs +3 -0
  331. package/dist/renderer-DuIwR9GT.mjs +5 -0
  332. package/dist/renderer-Dv4u2c14.mjs +5 -0
  333. package/dist/{renderer-BJKzZwyn.mjs → renderer-DwK9jsER.mjs} +4 -4
  334. package/dist/{renderer-BJKzZwyn.mjs.map → renderer-DwK9jsER.mjs.map} +1 -1
  335. package/dist/{renderer-mQt-y49D.mjs → renderer-HDj9Zb-O.mjs} +5 -5
  336. package/dist/{renderer-mQt-y49D.mjs.map → renderer-HDj9Zb-O.mjs.map} +1 -1
  337. package/dist/renderer-IE1yu3lZ.mjs +5 -0
  338. package/dist/{renderer-B7kOF_Az.mjs → renderer-JHByuUNb.mjs} +3 -3
  339. package/dist/{renderer-B7kOF_Az.mjs.map → renderer-JHByuUNb.mjs.map} +1 -1
  340. package/dist/{renderer-B3IRvukr.mjs → renderer-KKk7myX1.mjs} +5 -5
  341. package/dist/{renderer-B3IRvukr.mjs.map → renderer-KKk7myX1.mjs.map} +1 -1
  342. package/dist/renderer-PY_wnEN0.mjs +5 -0
  343. package/dist/{renderer-BcO7LUla.mjs → renderer-Ros7XQg2.mjs} +3 -3
  344. package/dist/{renderer-BcO7LUla.mjs.map → renderer-Ros7XQg2.mjs.map} +1 -1
  345. package/dist/{renderer-bbaMOD4I.mjs → renderer-RvI3qRUI.mjs} +5 -5
  346. package/dist/{renderer-bbaMOD4I.mjs.map → renderer-RvI3qRUI.mjs.map} +1 -1
  347. package/dist/{renderer-CPTXJs0n.mjs → renderer-Rw87u1Cr.mjs} +6 -6
  348. package/dist/{renderer-CPTXJs0n.mjs.map → renderer-Rw87u1Cr.mjs.map} +1 -1
  349. package/dist/{renderer-Du-GnKLb.mjs → renderer-TKZCA0B9.mjs} +9 -9
  350. package/dist/{renderer-Du-GnKLb.mjs.map → renderer-TKZCA0B9.mjs.map} +1 -1
  351. package/dist/{renderer-C_2UDMEG.mjs → renderer-V4dhrf_h.mjs} +6 -6
  352. package/dist/{renderer-C_2UDMEG.mjs.map → renderer-V4dhrf_h.mjs.map} +1 -1
  353. package/dist/{renderer-eT7Gp7FS.mjs → renderer-_9gbYS-3.mjs} +5 -5
  354. package/dist/{renderer-eT7Gp7FS.mjs.map → renderer-_9gbYS-3.mjs.map} +1 -1
  355. package/dist/{renderer-IQ97z2rw.mjs → renderer-celhuAL7.mjs} +3 -3
  356. package/dist/{renderer-IQ97z2rw.mjs.map → renderer-celhuAL7.mjs.map} +1 -1
  357. package/dist/{renderer-DIqkhsLI.mjs → renderer-eMCTAa9e.mjs} +4 -4
  358. package/dist/{renderer-DIqkhsLI.mjs.map → renderer-eMCTAa9e.mjs.map} +1 -1
  359. package/dist/{renderer-B6TjJi1g.mjs → renderer-fs8f1QeE.mjs} +5 -5
  360. package/dist/{renderer-B6TjJi1g.mjs.map → renderer-fs8f1QeE.mjs.map} +1 -1
  361. package/dist/{renderer-BJQt0RiZ.mjs → renderer-fwKnV9zs.mjs} +5 -5
  362. package/dist/{renderer-BJQt0RiZ.mjs.map → renderer-fwKnV9zs.mjs.map} +1 -1
  363. package/dist/{renderer-F1D9ZJ8I.mjs → renderer-g_1t2je9.mjs} +3 -3
  364. package/dist/renderer-gv24VyzO.mjs +5 -0
  365. package/dist/{renderer-C3Iev6zu.mjs → renderer-h62QaJYz.mjs} +4 -4
  366. package/dist/{renderer-C3Iev6zu.mjs.map → renderer-h62QaJYz.mjs.map} +1 -1
  367. package/dist/{renderer-BNbMi9CI.mjs → renderer-jnAIhWn_.mjs} +5 -5
  368. package/dist/{renderer-BNbMi9CI.mjs.map → renderer-jnAIhWn_.mjs.map} +1 -1
  369. package/dist/{renderer-CyCtm0UV.mjs → renderer-lHNTgiOM.mjs} +3 -3
  370. package/dist/{renderer-CyCtm0UV.mjs.map → renderer-lHNTgiOM.mjs.map} +1 -1
  371. package/dist/renderer-nN6lPZf9.mjs +5 -0
  372. package/dist/{renderer-Dat8opUZ.mjs → renderer-o68mVeyk.mjs} +4 -4
  373. package/dist/{renderer-Dat8opUZ.mjs.map → renderer-o68mVeyk.mjs.map} +1 -1
  374. package/dist/{renderer-Dss7T71q.mjs → renderer-pNmI-A9o.mjs} +5 -5
  375. package/dist/{renderer-Dss7T71q.mjs.map → renderer-pNmI-A9o.mjs.map} +1 -1
  376. package/dist/{renderer-CbhnJi_8.mjs → renderer-q7q6k_cD.mjs} +4 -4
  377. package/dist/{renderer-CbhnJi_8.mjs.map → renderer-q7q6k_cD.mjs.map} +1 -1
  378. package/dist/{renderer-OsQRvOle.mjs → renderer-riIFosX6.mjs} +5 -5
  379. package/dist/{renderer-OsQRvOle.mjs.map → renderer-riIFosX6.mjs.map} +1 -1
  380. package/dist/{renderer-BMP_lYMk.mjs → renderer-sfqZK6L5.mjs} +4 -4
  381. package/dist/{renderer-BMP_lYMk.mjs.map → renderer-sfqZK6L5.mjs.map} +1 -1
  382. package/dist/{renderer-DEQeONTd.mjs → renderer-ynFRJh7G.mjs} +3 -3
  383. package/dist/{renderers-CP8CFWDs-BH1gUTYa.mjs → renderers-CP8CFWDs-DRoslK4F.mjs} +4 -4
  384. package/dist/{renderers-CP8CFWDs-BH1gUTYa.mjs.map → renderers-CP8CFWDs-DRoslK4F.mjs.map} +1 -1
  385. package/dist/sam/index.d.mts +3 -3
  386. package/dist/sam/index.mjs +1 -1
  387. package/dist/signals/index.d.mts +8 -8
  388. package/dist/signals/index.mjs +8 -8
  389. package/dist/{signals-gOd0Ui9B.mjs → signals-BfJ1aqpT.mjs} +4 -4
  390. package/dist/{signals-gOd0Ui9B.mjs.map → signals-BfJ1aqpT.mjs.map} +1 -1
  391. package/dist/{src-BU1VOWSk.mjs → src-BYp6r-cS.mjs} +11 -11
  392. package/dist/{src-BU1VOWSk.mjs.map → src-BYp6r-cS.mjs.map} +1 -1
  393. package/dist/{src-Bnr8DUC--DzkRGA62.mjs → src-Bnr8DUC--BRDqRF6I.mjs} +3 -3
  394. package/dist/{src-Bnr8DUC--DzkRGA62.mjs.map → src-Bnr8DUC--BRDqRF6I.mjs.map} +1 -1
  395. package/package.json +65 -59
  396. package/dist/audio-B6RmYOPe.mjs.map +0 -1
  397. package/dist/audio-D6tBMbHh.d.mts +0 -38
  398. package/dist/audio-D6tBMbHh.d.mts.map +0 -1
  399. package/dist/dist-D12-a3-x.mjs.map +0 -1
  400. package/dist/index-B9Lm1x8i.d.mts.map +0 -1
  401. package/dist/index-Bzo1uj8h.d.mts.map +0 -1
  402. package/dist/index-V0ZQ4JN6.d.mts.map +0 -1
  403. package/dist/preview-engine/chunk-S2ABWY5G.mjs +0 -1
  404. package/dist/preview-engine/renderers-3BOQOUEU.mjs +0 -1
  405. package/dist/preview-engine/renderers-3M2FESR2.mjs +0 -1
  406. package/dist/preview-engine/renderers-5XRKZHVT.mjs +0 -1
  407. package/dist/preview-engine/renderers-6LHIWKMZ.mjs +0 -1
  408. package/dist/preview-engine/renderers-A43VCJ7X.mjs +0 -1
  409. package/dist/preview-engine/renderers-AKY464RY.mjs +0 -1
  410. package/dist/preview-engine/renderers-C5UO6PL5.mjs +0 -1
  411. package/dist/preview-engine/renderers-C64QSZO4.mjs +0 -1
  412. package/dist/preview-engine/renderers-CIRCR6NG.mjs +0 -1
  413. package/dist/preview-engine/renderers-CIWOPETY.mjs +0 -1
  414. package/dist/preview-engine/renderers-CZEZCELP.mjs +0 -1
  415. package/dist/preview-engine/renderers-FSQMWHQM.mjs +0 -1
  416. package/dist/preview-engine/renderers-FZEW5C23.mjs +0 -1
  417. package/dist/preview-engine/renderers-HCET2IML.mjs +0 -1
  418. package/dist/preview-engine/renderers-IUOOC6K7.mjs +0 -1
  419. package/dist/preview-engine/renderers-KYYJLVIJ.mjs +0 -1
  420. package/dist/preview-engine/renderers-L4GE7WV3.mjs +0 -1
  421. package/dist/preview-engine/renderers-LRAFWKCO.mjs +0 -1
  422. package/dist/preview-engine/renderers-LU3XZWEB.mjs +0 -1
  423. package/dist/preview-engine/renderers-ND2WV4K3.mjs +0 -1
  424. package/dist/preview-engine/renderers-NJ5CWVVH.mjs +0 -1
  425. package/dist/preview-engine/renderers-NKXYPR3V.mjs +0 -1
  426. package/dist/preview-engine/renderers-NWR66CGK.mjs +0 -1
  427. package/dist/preview-engine/renderers-O22WTBRM.mjs +0 -1
  428. package/dist/preview-engine/renderers-PBBA7LQB.mjs +0 -1
  429. package/dist/preview-engine/renderers-Q6LJRZ7R.mjs +0 -1
  430. package/dist/preview-engine/renderers-RMEACSRL.mjs +0 -1
  431. package/dist/preview-engine/renderers-SP42LCSI.mjs +0 -1
  432. package/dist/preview-engine/renderers-T7SZA3BX.mjs +0 -1
  433. package/dist/preview-engine/renderers-VADTDAHD.mjs +0 -1
  434. package/dist/preview-engine/renderers-VNNWI5C3.mjs +0 -1
  435. package/dist/preview-engine/renderers-WZ75MLP3.mjs +0 -1
  436. package/dist/preview-engine/renderers-XB5R4UQA.mjs +0 -1
  437. package/dist/preview-engine/renderers-YBIUZDGQ.mjs +0 -1
  438. package/dist/preview-engine/renderers-YESJR4O7.mjs +0 -1
  439. package/dist/preview-engine/renderers-YKSRZRRT.mjs +0 -1
  440. package/dist/renderer-129U3pc9.mjs +0 -5
  441. package/dist/renderer-2phFTFxQ.mjs +0 -5
  442. package/dist/renderer-9muKpDeE.mjs +0 -5
  443. package/dist/renderer-B5Dhv6j9.mjs +0 -5
  444. package/dist/renderer-BBUgCS3C.mjs +0 -5
  445. package/dist/renderer-BKXM28Mx.mjs +0 -5
  446. package/dist/renderer-BKqm6xdf.mjs +0 -5
  447. package/dist/renderer-BMfMMf0R.mjs +0 -5
  448. package/dist/renderer-BPsjEnnl.mjs +0 -5
  449. package/dist/renderer-Be5hfwSd.mjs.map +0 -1
  450. package/dist/renderer-Bofr6f88.mjs +0 -6
  451. package/dist/renderer-BqoGcujR.mjs +0 -5
  452. package/dist/renderer-BvuBt2aH.mjs +0 -5
  453. package/dist/renderer-BxTgXHu1.mjs +0 -5
  454. package/dist/renderer-Bz2Rrz60.mjs +0 -5
  455. package/dist/renderer-CBjG8rjE.mjs +0 -5
  456. package/dist/renderer-CS2zyPyZ.mjs +0 -5
  457. package/dist/renderer-CXnbl_jR.mjs +0 -5
  458. package/dist/renderer-CaF9vod_.mjs +0 -5
  459. package/dist/renderer-CbSBH3lp.mjs +0 -5
  460. package/dist/renderer-CdjuGRbO.mjs +0 -5
  461. package/dist/renderer-CoLbxC13.mjs +0 -5
  462. package/dist/renderer-Cr9G0dXB.mjs +0 -5
  463. package/dist/renderer-D63l6_UC.mjs +0 -5
  464. package/dist/renderer-DCJqnzER.mjs +0 -5
  465. package/dist/renderer-DFBOR5J3.mjs +0 -5
  466. package/dist/renderer-DGAZSzw6.mjs +0 -5
  467. package/dist/renderer-DPLGk1Qk.mjs +0 -5
  468. package/dist/renderer-DTCUzByS.mjs +0 -5
  469. package/dist/renderer-DdGahYi1.mjs +0 -5
  470. package/dist/renderer-DhL4nNPk.mjs +0 -5
  471. package/dist/renderer-DkyTbiVz.mjs +0 -3
  472. package/dist/renderer-DnAZweRX.mjs +0 -5
  473. package/dist/renderer-DpisVnT2.mjs +0 -5
  474. package/dist/renderer-Ds7pAKnE.mjs +0 -3
  475. package/dist/renderer-DxZD5B54.mjs +0 -5
  476. package/dist/renderer-PMHOnbnA.mjs +0 -5
  477. package/dist/renderer-STufNpMx.mjs +0 -5
  478. package/dist/renderer-SdrgfCxH.mjs +0 -5
  479. /package/dist/{chunk-D8S17ehY.mjs → chunk-W71TSjRM.mjs} +0 -0
  480. /package/dist/{renderer-Cputd36d.mjs → renderer-B6rZUBwE.mjs} +0 -0
@@ -1,3 +1,3 @@
1
- import { C as sam3Run, E as validateSam3Prompts, S as sam3Revision, T as validateSam2Prompts, _ as sam3EncoderFiles, a as SAM_MODELS, b as sam3Position, c as Sam3MemoryBank, d as assertSamLicenseAccepted, f as decodeSam2Mask, g as sam3DenseDecoder, h as sam2Tokens, i as SAM_LICENSE_TERMS_URL, l as Sam3TextSelector, m as sam2Revision, n as SAM3_ENCODER, o as Sam2MemoryBank, p as ensureSamModelsRegistered, r as SAM_LICENSE, s as Sam2Tracker, t as SAM2_EXPORTS, u as Sam3Tracker, v as sam3Floats, w as sam3SupportGraphs, x as sam3Precision, y as sam3Mask } from "./dist-Dq5TkNDI.mjs";
1
+ import { C as sam3Run, E as validateSam3Prompts, S as sam3Revision, T as validateSam2Prompts, _ as sam3EncoderFiles, a as SAM_MODELS, b as sam3Position, c as Sam3MemoryBank, d as assertSamLicenseAccepted, f as decodeSam2Mask, g as sam3DenseDecoder, h as sam2Tokens, i as SAM_LICENSE_TERMS_URL, l as Sam3TextSelector, m as sam2Revision, n as SAM3_ENCODER, o as Sam2MemoryBank, p as ensureSamModelsRegistered, r as SAM_LICENSE, s as Sam2Tracker, t as SAM2_EXPORTS, u as Sam3Tracker, v as sam3Floats, w as sam3SupportGraphs, x as sam3Precision, y as sam3Mask } from "./dist-Dg9LMWoX.mjs";
2
2
 
3
3
  export { SAM2_EXPORTS, SAM3_ENCODER, SAM_LICENSE, SAM_LICENSE_TERMS_URL, SAM_MODELS, Sam2MemoryBank, Sam2Tracker, Sam3MemoryBank, Sam3TextSelector, Sam3Tracker, assertSamLicenseAccepted, decodeSam2Mask, ensureSamModelsRegistered, sam2Revision, sam2Tokens, sam3DenseDecoder, sam3EncoderFiles, sam3Floats, sam3Mask, sam3Position, sam3Precision, sam3Revision, sam3Run, sam3SupportGraphs, validateSam2Prompts, validateSam3Prompts };
@@ -1,5 +1,5 @@
1
- import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-D8S17ehY.mjs";
2
- import { $t as limitGradientStops, Et as emojiPresentation, Ht as gradientStopsToOklab, Xt as isSignal, Zt as isValueSignal, dn as parseCssGradient, un as parseCssColor } from "./dist-ByxHoMQI.mjs";
1
+ import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-W71TSjRM.mjs";
2
+ import { $t as limitGradientStops, Et as emojiPresentation, Ht as gradientStopsToOklab, Xt as isSignal, Zt as isValueSignal, dn as parseCssGradient, un as parseCssColor } from "./dist-Bf2_efYP.mjs";
3
3
  import { ALL_FORMATS, AudioBufferSink, CanvasSink, FilePathSource, Input, UrlSource, VideoSampleSink } from "mediabunny";
4
4
  import fs from "node:fs";
5
5
  import path from "node:path";
@@ -10,7 +10,7 @@ import { DotLottie } from "@lottiefiles/dotlottie-web";
10
10
  import earcut from "earcut";
11
11
  import { Path2D } from "skia-canvas";
12
12
 
13
- //#region ../webgpu-renderers/dist/text-animations-CaYMwhsz.mjs
13
+ //#region ../webgpu-renderers/dist/text-animations-COSsiLBc.mjs
14
14
  /**
15
15
  * 1. Biquad IIR Filter Bank Compute Shader
16
16
  * Applies resonant bandpass/lowpass/highpass filtering on PCM audio buffer.
@@ -293,6 +293,12 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
293
293
  }
294
294
  }
295
295
  `;
296
+ /** Averages every channel into one mono buffer for storage buffer upload. */
297
+ function downmixToMono(channels) {
298
+ const mono = new Float32Array(channels[0]?.length ?? 0);
299
+ for (const ch of channels) for (let i = 0; i < mono.length; i++) mono[i] += ch[i] / channels.length;
300
+ return mono;
301
+ }
296
302
  function calculateBiquadBandpassCoeffs(sampleRate, centerFreq, Q) {
297
303
  const w0 = 2 * Math.PI * centerFreq / sampleRate;
298
304
  const alpha = Math.sin(w0) / (2 * Q);
@@ -363,18 +369,13 @@ var AudioSignalComputePipeline = class AudioSignalComputePipeline$1 {
363
369
  * Processes raw PCM audio channels on the GPU and outputs extracted feature buffers and textures.
364
370
  */
365
371
  static async extractFeatures(device, audioChannels, sampleRate, fps, config$1 = {}, targetWidth = 512) {
366
- const numChannels = audioChannels.length;
367
- if (numChannels === 0 || audioChannels[0].length === 0) throw new Error("Empty audio buffer supplied to AudioSignalComputePipeline.");
372
+ if (audioChannels.length === 0 || audioChannels[0].length === 0) throw new Error("Empty audio buffer supplied to AudioSignalComputePipeline.");
368
373
  const numAudioSamples = audioChannels[0].length;
369
374
  const durationSec = numAudioSamples / sampleRate;
370
375
  const numFrames = Math.max(1, Math.ceil(durationSec * fps));
371
376
  const hopSize = Math.max(1, Math.round(sampleRate / fps));
372
377
  const windowSize = Math.max(32, Math.round(hopSize * 2));
373
- const monoPcm = new Float32Array(numAudioSamples);
374
- for (let c = 0; c < numChannels; c++) {
375
- const ch = audioChannels[c];
376
- for (let i = 0; i < numAudioSamples; i++) monoPcm[i] += ch[i] / numChannels;
377
- }
378
+ const monoPcm = downmixToMono(audioChannels);
378
379
  const rawAudioBuffer = device.createBuffer({
379
380
  size: numAudioSamples * 4,
380
381
  usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST,
@@ -26443,9 +26444,9 @@ async function drawSignalNode(ctx, encoder, pass, props) {
26443
26444
  const elapsedTimeSec = elapsedMs / 1e3;
26444
26445
  await signalRegistry.ensureAudioSourcesExtracted(ctx.device, config$1, fps, props.renderId);
26445
26446
  const signalView = signalRegistry.getOrCreate2DTextureView(ctx.device, encoder, nodeId, elapsedTimeSec, durationSec, config$1, width, height, props.renderId, frame, fps);
26446
- const pipelines = getDevicePipelines(ctx.device);
26447
+ const pipelines$1 = getDevicePipelines(ctx.device);
26447
26448
  const cacheKey = `preview_${ctx.renderer.format}`;
26448
- let pipeline = pipelines.get(cacheKey);
26449
+ let pipeline = pipelines$1.get(cacheKey);
26449
26450
  if (!pipeline) {
26450
26451
  const shaderModule = ctx.device.createShaderModule({
26451
26452
  label: `signal_preview_static.wgsl`,
@@ -26465,7 +26466,7 @@ async function drawSignalNode(ctx, encoder, pass, props) {
26465
26466
  },
26466
26467
  primitive: { topology: "triangle-strip" }
26467
26468
  });
26468
- pipelines.set(cacheKey, pipeline);
26469
+ pipelines$1.set(cacheKey, pipeline);
26469
26470
  }
26470
26471
  let previewModeInt = 0;
26471
26472
  if (!isMathNode && !isGateNode) {
@@ -40950,6 +40951,365 @@ struct VSOut {
40950
40951
  return vec4<f32>(outRgb, outAlpha);
40951
40952
  }
40952
40953
  `;
40954
+ const MAX_PITCH_LAG = 2048;
40955
+ const PITCH_CANDIDATES = 8;
40956
+ const EMPTY_CANDIDATE = 2;
40957
+ /** Cost of switching between voiced and unvoiced from one frame to the next. */
40958
+ const VOICING_SWITCH_COST = .6;
40959
+ /** Extra cost of a dip that echoes a shorter candidate's period. */
40960
+ const SUBHARMONIC_COST = .5;
40961
+ /** How many times shallower the shorter dip may be and still explain a longer one. */
40962
+ const SUBHARMONIC_DEPTH_RATIO = 1.25;
40963
+ /** Relative lag error allowed when matching a period multiple. */
40964
+ const PERIOD_MULTIPLE_TOLERANCE = .03;
40965
+ /** Relative lag distance under which two local minima are one noisy dip. */
40966
+ const RIPPLE_MERGE = .03;
40967
+ const WORKGROUP_SIZE = 128;
40968
+ const MAX_GRID_X = 65535;
40969
+ const AUDIO_PITCH_CANDIDATES_SHADER = `
40970
+ struct PitchUniforms {
40971
+ sampleRate : f32,
40972
+ numSamples : u32,
40973
+ numFrames : u32,
40974
+ windowSize : u32,
40975
+ lagMin : u32,
40976
+ lagMax : u32,
40977
+ gridX : u32,
40978
+ fps : f32,
40979
+ };
40980
+
40981
+ const K : u32 = ${PITCH_CANDIDATES}u;
40982
+ const WG : u32 = ${WORKGROUP_SIZE}u;
40983
+ const EMPTY : f32 = ${EMPTY_CANDIDATE}.0f;
40984
+ const MERGE : f32 = ${RIPPLE_MERGE}f;
40985
+
40986
+ @group(0) @binding(0) var<uniform> u : PitchUniforms;
40987
+ @group(0) @binding(1) var<storage, read> pcm : array<f32>;
40988
+ @group(0) @binding(2) var<storage, read_write> candidates : array<vec2f>;
40989
+
40990
+ var<workgroup> yin : array<f32, ${MAX_PITCH_LAG + 1}>;
40991
+
40992
+ fn sampleAt(i : u32) -> f32 {
40993
+ if (i >= u.numSamples) { return 0.0f; }
40994
+ return pcm[i];
40995
+ }
40996
+
40997
+ // Keeps the K deepest dips sorted by value, shallowest last. A dip within
40998
+ // MERGE of an existing candidate's lag is the same broad dip: only the
40999
+ // deeper of the two survives.
41000
+ fn insertCandidate(lags : ptr<function, array<f32, K>>, vals : ptr<function, array<f32, K>>, lag : f32, val : f32) {
41001
+ var slot = K - 1u;
41002
+ for (var k = 0u; k < K; k = k + 1u) {
41003
+ if ((*vals)[k] < EMPTY && abs((*lags)[k] - lag) <= MERGE * lag) {
41004
+ if ((*vals)[k] <= val) { return; }
41005
+ slot = k;
41006
+ break;
41007
+ }
41008
+ }
41009
+ if ((*vals)[slot] <= val) { return; }
41010
+ var i = slot;
41011
+ loop {
41012
+ if (i == 0u || (*vals)[i - 1u] <= val) { break; }
41013
+ (*vals)[i] = (*vals)[i - 1u];
41014
+ (*lags)[i] = (*lags)[i - 1u];
41015
+ i = i - 1u;
41016
+ }
41017
+ (*vals)[i] = val;
41018
+ (*lags)[i] = lag;
41019
+ }
41020
+
41021
+ @compute @workgroup_size(${WORKGROUP_SIZE})
41022
+ fn main(@builtin(workgroup_id) wid : vec3<u32>, @builtin(local_invocation_index) lid : u32) {
41023
+ let frame = wid.x + wid.y * u.gridX;
41024
+ if (frame >= u.numFrames) { return; }
41025
+
41026
+ // Center the analysed span (window + longest lag) on the frame time.
41027
+ let span = u.windowSize + u.lagMax;
41028
+ let center = i32(round(f32(frame) * u.sampleRate / u.fps));
41029
+ let maxStart = max(i32(u.numSamples) - i32(span), 0);
41030
+ let start = u32(clamp(center - i32(span / 2u), 0, maxStart));
41031
+
41032
+ // YIN difference function, one lag per invocation per stride.
41033
+ for (var tau = lid; tau <= u.lagMax; tau = tau + WG) {
41034
+ var acc = 0.0f;
41035
+ for (var j = 0u; j < u.windowSize; j = j + 1u) {
41036
+ let d = sampleAt(start + j) - sampleAt(start + j + tau);
41037
+ acc = acc + d * d;
41038
+ }
41039
+ yin[tau] = acc;
41040
+ }
41041
+ workgroupBarrier();
41042
+ if (lid != 0u) { return; }
41043
+
41044
+ // Cumulative mean normalized difference, in place.
41045
+ var running = 0.0f;
41046
+ yin[0] = 1.0f;
41047
+ for (var tau = 1u; tau <= u.lagMax; tau = tau + 1u) {
41048
+ running = running + yin[tau];
41049
+ yin[tau] = select(1.0f, yin[tau] * f32(tau) / running, running > 0.0f);
41050
+ }
41051
+
41052
+ var lags : array<f32, K>;
41053
+ var vals : array<f32, K>;
41054
+ for (var k = 0u; k < K; k = k + 1u) {
41055
+ lags[k] = 0.0f;
41056
+ vals[k] = EMPTY;
41057
+ }
41058
+ for (var tau = max(u.lagMin, 1u); tau < u.lagMax; tau = tau + 1u) {
41059
+ let prev = yin[tau - 1u];
41060
+ let cur = yin[tau];
41061
+ let next = yin[tau + 1u];
41062
+ if (cur < prev && cur <= next) {
41063
+ // Parabolic interpolation of the dip for sub-sample period.
41064
+ let den = prev - 2.0f * cur + next;
41065
+ let offset = select(0.0f, 0.5f * (prev - next) / den, den > 0.0f);
41066
+ insertCandidate(&lags, &vals, f32(tau) + offset, cur);
41067
+ }
41068
+ }
41069
+
41070
+ let base = frame * K;
41071
+ for (var k = 0u; k < K; k = k + 1u) {
41072
+ candidates[base + k] = vec2f(lags[k], vals[k]);
41073
+ }
41074
+ }
41075
+ `;
41076
+ function resolvePitchConfig(sampleRate, config$1) {
41077
+ const minHz = config$1.minHz ?? 50;
41078
+ const maxHz = config$1.maxHz ?? 1e3;
41079
+ if (!(minHz > 0 && maxHz > minHz)) throw new Error(`Pitch range needs 0 < minHz < maxHz (got ${minHz}..${maxHz}).`);
41080
+ const lagMax = Math.ceil(sampleRate / minHz) + 1;
41081
+ if (lagMax > MAX_PITCH_LAG) throw new Error(`minHz ${minHz} needs a ${lagMax}-sample period at ${sampleRate} Hz; the limit is ${MAX_PITCH_LAG} (minHz >= ${Math.ceil(sampleRate / (MAX_PITCH_LAG - 1))}).`);
41082
+ const lagMin = Math.max(2, Math.floor(sampleRate / maxHz));
41083
+ const windowMs = config$1.windowMs ?? 45;
41084
+ return {
41085
+ lagMin,
41086
+ lagMax,
41087
+ windowSize: Math.max(lagMax, Math.round(windowMs / 1e3 * sampleRate)),
41088
+ voicingThreshold: config$1.voicingThreshold ?? .8,
41089
+ octaveJumpCost: config$1.octaveJumpCost ?? 8
41090
+ };
41091
+ }
41092
+ function transitionCost(prevLag, lag, octaveJumpCost) {
41093
+ const prevVoiced = prevLag > 0;
41094
+ const voiced = lag > 0;
41095
+ if (prevVoiced !== voiced) return VOICING_SWITCH_COST;
41096
+ if (!voiced) return 0;
41097
+ return octaveJumpCost * Math.abs(Math.log2(lag / prevLag));
41098
+ }
41099
+ /**
41100
+ * True when `lag` is an integer multiple (2x, 3x, ...) of a shorter candidate
41101
+ * that is about as deep. YIN's normalized difference dips at every multiple
41102
+ * of the true period, often slightly deeper, so such a dip is an echo.
41103
+ */
41104
+ function isPeriodMultiple(data, base, lag, depth) {
41105
+ for (let j = 0; j < PITCH_CANDIDATES; j++) {
41106
+ const shorter = data[(base + j) * 2];
41107
+ const shorterDepth = data[(base + j) * 2 + 1];
41108
+ if (shorterDepth >= EMPTY_CANDIDATE || shorter <= 0 || shorter >= lag) continue;
41109
+ const m = Math.round(lag / shorter);
41110
+ if (m >= 2 && Math.abs(lag - m * shorter) <= PERIOD_MULTIPLE_TOLERANCE * lag && shorterDepth <= depth * SUBHARMONIC_DEPTH_RATIO) return true;
41111
+ }
41112
+ return false;
41113
+ }
41114
+ /**
41115
+ * Writes each state's lag and emission cost for frame `f`. A candidate costs
41116
+ * its YIN dip depth, plus `SUBHARMONIC_COST` when it is a period multiple;
41117
+ * the unvoiced state (index K, lag 0) costs the voicing threshold.
41118
+ */
41119
+ function observeFrame(data, f, voicingThreshold, lags, costs) {
41120
+ const K = PITCH_CANDIDATES;
41121
+ const base = f * K;
41122
+ const row = f * (K + 1);
41123
+ for (let k = 0; k < K; k++) {
41124
+ const lag = data[(base + k) * 2];
41125
+ const depth = data[(base + k) * 2 + 1];
41126
+ const valid = depth < EMPTY_CANDIDATE && lag > 0;
41127
+ lags[row + k] = valid ? lag : 0;
41128
+ costs[row + k] = !valid ? Number.POSITIVE_INFINITY : depth + (isPeriodMultiple(data, base, lag, depth) ? SUBHARMONIC_COST : 0);
41129
+ }
41130
+ lags[row + K] = 0;
41131
+ costs[row + K] = voicingThreshold;
41132
+ }
41133
+ /** Most likely state per frame given per-state lags and -log emission costs. */
41134
+ function viterbi(lags, costs, numFrames, octaveJumpCost) {
41135
+ const S = PITCH_CANDIDATES + 1;
41136
+ const back = new Uint8Array(numFrames * S);
41137
+ let total = costs.slice(0, S);
41138
+ for (let f = 1; f < numFrames; f++) {
41139
+ const next = new Float64Array(S);
41140
+ for (let s = 0; s < S; s++) {
41141
+ let best = Number.POSITIVE_INFINITY;
41142
+ for (let p = 0; p < S; p++) {
41143
+ const c = total[p] + transitionCost(lags[(f - 1) * S + p], lags[f * S + s], octaveJumpCost);
41144
+ if (c < best) {
41145
+ best = c;
41146
+ back[f * S + s] = p;
41147
+ }
41148
+ }
41149
+ next[s] = best + costs[f * S + s];
41150
+ }
41151
+ total = next;
41152
+ }
41153
+ const path$1 = new Uint8Array(numFrames);
41154
+ let state = total.indexOf(Math.min(...total));
41155
+ for (let f = numFrames - 1; f >= 0; f--) {
41156
+ path$1[f] = state;
41157
+ state = back[f * S + state];
41158
+ }
41159
+ return path$1;
41160
+ }
41161
+ /**
41162
+ * Viterbi decode over each frame's period candidates plus one unvoiced state,
41163
+ * emissions from `observeFrame`, transitions costing `octaveJumpCost` per
41164
+ * octave and a fixed voicing switch.
41165
+ */
41166
+ function decodePitchTrack(candidates, config$1) {
41167
+ const { data, numFrames, sampleRate } = candidates;
41168
+ const K = PITCH_CANDIDATES;
41169
+ const S = K + 1;
41170
+ const lags = new Float64Array(numFrames * S);
41171
+ const costs = new Float64Array(numFrames * S);
41172
+ for (let f = 0; f < numFrames; f++) observeFrame(data, f, config$1.voicingThreshold ?? .8, lags, costs);
41173
+ const path$1 = viterbi(lags, costs, numFrames, config$1.octaveJumpCost ?? 8);
41174
+ const hz = new Float32Array(numFrames);
41175
+ const confidence = new Float32Array(numFrames);
41176
+ const voiced = new Float32Array(numFrames);
41177
+ for (let f = 0; f < numFrames; f++) {
41178
+ const s = path$1[f];
41179
+ if (lags[f * S + s] === 0) continue;
41180
+ hz[f] = sampleRate / lags[f * S + s];
41181
+ confidence[f] = Math.min(1, Math.max(0, 1 - data[(f * K + s) * 2 + 1]));
41182
+ voiced[f] = 1;
41183
+ }
41184
+ fillUnvoiced(hz, voiced);
41185
+ return {
41186
+ hz,
41187
+ confidence,
41188
+ voiced,
41189
+ numFrames
41190
+ };
41191
+ }
41192
+ /** Linearly interpolates `hz` across unvoiced runs; holds the nearest voiced value at the ends. */
41193
+ function fillUnvoiced(hz, voiced) {
41194
+ let prev = -1;
41195
+ for (let f = 0; f <= hz.length; f++) {
41196
+ if (f < hz.length && voiced[f] === 0) continue;
41197
+ const from = prev >= 0 ? hz[prev] : f < hz.length ? hz[f] : 0;
41198
+ const to = f < hz.length ? hz[f] : from;
41199
+ for (let g$1 = prev + 1; g$1 < f; g$1++) {
41200
+ const t = prev >= 0 && f < hz.length ? (g$1 - prev) / (f - prev) : 0;
41201
+ hz[g$1] = from + (to - from) * t;
41202
+ }
41203
+ prev = f;
41204
+ }
41205
+ }
41206
+ const pipelines = /* @__PURE__ */ new WeakMap();
41207
+ function getPipeline(device) {
41208
+ let pipeline = pipelines.get(device);
41209
+ if (!pipeline) {
41210
+ pipeline = device.createComputePipeline({
41211
+ label: "AudioPitchCandidatesPipeline",
41212
+ layout: "auto",
41213
+ compute: {
41214
+ module: device.createShaderModule({
41215
+ label: "AudioPitchCandidatesPipeline.wgsl",
41216
+ code: AUDIO_PITCH_CANDIDATES_SHADER
41217
+ }),
41218
+ entryPoint: "main"
41219
+ }
41220
+ });
41221
+ pipelines.set(device, pipeline);
41222
+ }
41223
+ return pipeline;
41224
+ }
41225
+ /** Runs the YIN candidate pass on the GPU: `PITCH_CANDIDATES` periods per frame. */
41226
+ async function extractPitchCandidates(device, audioChannels, sampleRate, fps, config$1 = {}) {
41227
+ if (audioChannels.length === 0 || audioChannels[0].length === 0) throw new Error("Empty audio buffer supplied to the pitch tracker.");
41228
+ const { lagMin, lagMax, windowSize } = resolvePitchConfig(sampleRate, config$1);
41229
+ const mono = downmixToMono(audioChannels);
41230
+ const numFrames = Math.max(1, Math.ceil(mono.length / sampleRate * fps));
41231
+ const gridX = Math.min(numFrames, MAX_GRID_X);
41232
+ const outBytes = numFrames * PITCH_CANDIDATES * 2 * 4;
41233
+ const uniforms = /* @__PURE__ */ new ArrayBuffer(32);
41234
+ const f32 = new Float32Array(uniforms);
41235
+ const u32 = new Uint32Array(uniforms);
41236
+ f32[0] = sampleRate;
41237
+ u32[1] = mono.length;
41238
+ u32[2] = numFrames;
41239
+ u32[3] = windowSize;
41240
+ u32[4] = lagMin;
41241
+ u32[5] = lagMax;
41242
+ u32[6] = gridX;
41243
+ f32[7] = fps;
41244
+ const uniformBuffer = device.createBuffer({
41245
+ size: uniforms.byteLength,
41246
+ usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST,
41247
+ label: "audio_pitch_uniforms"
41248
+ });
41249
+ device.queue.writeBuffer(uniformBuffer, 0, uniforms);
41250
+ const pcmBuffer = device.createBuffer({
41251
+ size: mono.byteLength,
41252
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST,
41253
+ label: "audio_pitch_pcm"
41254
+ });
41255
+ device.queue.writeBuffer(pcmBuffer, 0, mono);
41256
+ const candidateBuffer = device.createBuffer({
41257
+ size: outBytes,
41258
+ usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_SRC,
41259
+ label: "audio_pitch_candidates"
41260
+ });
41261
+ const readback = device.createBuffer({
41262
+ size: outBytes,
41263
+ usage: GPUBufferUsage.MAP_READ | GPUBufferUsage.COPY_DST,
41264
+ label: "audio_pitch_candidates_readback"
41265
+ });
41266
+ const pipeline = getPipeline(device);
41267
+ const encoder = device.createCommandEncoder({ label: "audio_pitch_encoder" });
41268
+ const pass = encoder.beginComputePass({ label: "audio_pitch_candidates_pass" });
41269
+ pass.setPipeline(pipeline);
41270
+ pass.setBindGroup(0, device.createBindGroup({
41271
+ layout: pipeline.getBindGroupLayout(0),
41272
+ entries: [
41273
+ {
41274
+ binding: 0,
41275
+ resource: { buffer: uniformBuffer }
41276
+ },
41277
+ {
41278
+ binding: 1,
41279
+ resource: { buffer: pcmBuffer }
41280
+ },
41281
+ {
41282
+ binding: 2,
41283
+ resource: { buffer: candidateBuffer }
41284
+ }
41285
+ ]
41286
+ }));
41287
+ pass.dispatchWorkgroups(gridX, Math.ceil(numFrames / gridX));
41288
+ pass.end();
41289
+ encoder.copyBufferToBuffer(candidateBuffer, 0, readback, 0, outBytes);
41290
+ device.queue.submit([encoder.finish()]);
41291
+ await readback.mapAsync(GPUMapMode.READ);
41292
+ const data = new Float32Array(readback.getMappedRange().slice(0));
41293
+ readback.unmap();
41294
+ for (const b of [
41295
+ readback,
41296
+ candidateBuffer,
41297
+ pcmBuffer,
41298
+ uniformBuffer
41299
+ ]) b.destroy();
41300
+ return {
41301
+ data,
41302
+ numFrames,
41303
+ sampleRate
41304
+ };
41305
+ }
41306
+ /** Tracks the fundamental frequency of the downmixed channels at `fps` frames per second. */
41307
+ async function trackAudioPitch(device, audioChannels, sampleRate, fps, config$1 = {}) {
41308
+ return {
41309
+ ...decodePitchTrack(await extractPitchCandidates(device, audioChannels, sampleRate, fps, config$1), config$1),
41310
+ durationSec: audioChannels[0].length / sampleRate
41311
+ };
41312
+ }
40953
41313
  const GLOBAL_WEBGPU_REGISTRY_KEY = Symbol.for("gatewai.webgpuRegistry");
40954
41314
  const GLOBAL_ANALYSIS_STORE_KEY = Symbol.for("gatewai.videoAnalysisStore");
40955
41315
  var NodeSurfaceProvider = class {
@@ -41017,5 +41377,5 @@ var NodeSurfaceProvider = class {
41017
41377
  if (typeof globalThis !== "undefined") globalThis.__GATEWAI_DELAYS__ = globalThis.__GATEWAI_DELAYS__ || /* @__PURE__ */ new Set();
41018
41378
 
41019
41379
  //#endregion
41020
- export { probeVideoSize as $, TextPathBuilder as $t, emojiGraphemes as A, generateArcLengthLUT as An, CubicBezierSegmentSchema as At, jointMatrices as B, ParticleDissolveConfigSchema as Bt, drawGifNode as C, evaluateExpressionSelector as Cn, AdvancedTextAnimatorSchema as Ct, drawSignalNode as D, evaluateSpringProgress as Dn, AudioSignalComputePipeline as Dt, drawParagraphNode as E, evaluateSkewMatrix as En, AnimatableGlyphPropsSchema as Et, getPrimitiveGeometry as F, sampleAudioSpectrumScale as Fn, GlyphAnchorGroupingSchema as Ft, measureMaxCaptionHeight as G, SignalRegistry as Gt, loadModel3D as H, SelectorModeSchema as Ht, getRegisteredFontSource as I, sampleCurveGeometry as In, GlyphAnchorPointSchema as It, parseFBX as J, SpringPhysicsSchema as Jt, mediaDecoderCache as K, SkewPropertiesSchema as Kt, getRenderer2D as L, samplePathChainGeometry as Ln, KineticMarqueeConfigSchema as Lt, fitSpansToText as M, getScramblePool as Mn, EnhancedTextNodeSchema as Mt, generateExtrudedTextGeometry as N, getShuffledOrder as Nn, ExpressionSelectorSchema as Nt, drawSvgNode as O, evaluateTypewriterState as On, AudioSpectrumTypographySchema as Ot, getHeadlessFontPath as P, parseSvgPathToCubicBeziers as Pn, ExtendedGlyphPropertiesSchema as Pt, poseNodes as Q, TextCursorStyleSchema as Qt, initHeadlessWebGPU as R, signalRegistry as Rn, LineSpacingDynamicsSchema as Rt, drawCaptionNode as S, evaluateCubicBezierDerivative as Sn, AdvancedTextAnimatorBuilder as St, drawLottieNode as T, evaluateSelectorCombination as Tn, AnchorPresetSchema as Tt, loadOBJ as U, SelectorShapeSchema as Ut, loadFBX as V, SelectorBasedOnSchema as Vt, lutStore as W, SelectorUnitsSchema as Wt, parseOBJ as X, TextAnimatorBuilder as Xt, parseMTL as Y, TextAnchorConfigSchema as Yt, parseSvgPathToSegments as Z, TextCursorConfigSchema as Zt, buildShapeSvgPath as _, computeRangeSelectorWeight as _n, Vector3Math as _t, GlassPipeline as a, TextSignalSelectorSchema as an, spansText as at, colorMatrixWgsl as b, ellipseToCubicBeziers as bn, resolveEnvironment as bt, Renderer2D as c, TypingCadenceSchema as cn, GetFontAssetUrl as ct, ScreenSpaceRelightPipeline as d, VolumetricFormationConfigSchema as dn, ENVIRONMENT_PRESETS as dt, TextPathOptionsSchema as en, registerHeadlessFont as et, ShadowPipeline as f, VolumetricFormationModeSchema as fn, LIGHT_UNIFORM_SIZE_BYTES as ft, WebGPUAudioProcessor as g, computeLineLeadingDisplacement as gn, Path3D as gt, SlugPipeline as h, computeAnchorPivotOffset as hn, Matrix4Math as ht, EffectPipeline as i, TextSelectorSchema as in, shaderStore as it, ensureDevice as j, generatePathSegments as jn, DynamicStrokePropertiesSchema as jt, drawVideoNode as k, evaluateVolumetricFormation as kn, ChromaticGlitchConfigSchema as kt, Renderer3D as l, VariableFontAxesSchema as ln, resolveMediaSourceUrl as lt, SlugGeometry as m, buildWGSLSignalFn as mn, MAX_LIGHTS as mt, AudioLatentTrackCache as n, TextRangeSelectorSchema as nn, sampleMorphWeights as nt, MotionBlurPipeline as o, TextWigglySelectorSchema as on, srtLoader as ot, SlugFontCache as p, buildPathLUT as pn, Light3D as pt, parseColor as q, Spatial3DPropertiesSchema as qt, AudioMeshDeformPipeline as r, TextScrambleConfigSchema as rn, setRegisteredFontSource as rt, NodeSurfaceProvider as s, TypewriterAnimatorSchema as sn, textureCache as st, AudioLatentEngine as t, TextPathSourceSchema as tn, resolveTextSpans as tt, SSAOPipeline as u, Vec2Schema as un, Camera3D as ut, clearAllVideoCache as v, deterministicWigglyNoise as vn, linearRgb as vt, drawImageNode as w, evaluateMarqueeOffset as wn, AnchorGroupingSchema as wt, describeGpu as x, evaluateCubicBezier as xn, AETextAnimatorSchema as xt, clearHeadlessFonts as y, distanceToCurveParameter as yn, parseColorToRgb as yt, inputStore as z, waveToCubicBeziers as zn, LongShadowConfigSchema as zt };
41021
- //# sourceMappingURL=dist-D12-a3-x.mjs.map
41380
+ export { probeVideoSize as $, TextCursorStyleSchema as $t, emojiGraphemes as A, evaluateVolumetricFormation as An, ChromaticGlitchConfigSchema as At, jointMatrices as B, waveToCubicBeziers as Bn, LongShadowConfigSchema as Bt, drawGifNode as C, evaluateCubicBezierDerivative as Cn, AdvancedTextAnimatorBuilder as Ct, drawSignalNode as D, evaluateSkewMatrix as Dn, AnimatableGlyphPropsSchema as Dt, drawParagraphNode as E, evaluateSelectorCombination as En, AnchorPresetSchema as Et, getPrimitiveGeometry as F, parseSvgPathToCubicBeziers as Fn, ExtendedGlyphPropertiesSchema as Ft, measureMaxCaptionHeight as G, SelectorUnitsSchema as Gt, loadModel3D as H, SelectorBasedOnSchema as Ht, getRegisteredFontSource as I, sampleAudioSpectrumScale as In, GlyphAnchorGroupingSchema as It, parseFBX as J, Spatial3DPropertiesSchema as Jt, mediaDecoderCache as K, SignalRegistry as Kt, getRenderer2D as L, sampleCurveGeometry as Ln, GlyphAnchorPointSchema as Lt, fitSpansToText as M, generatePathSegments as Mn, DynamicStrokePropertiesSchema as Mt, generateExtrudedTextGeometry as N, getScramblePool as Nn, EnhancedTextNodeSchema as Nt, drawSvgNode as O, evaluateSpringProgress as On, AudioSignalComputePipeline as Ot, getHeadlessFontPath as P, getShuffledOrder as Pn, ExpressionSelectorSchema as Pt, poseNodes as Q, TextCursorConfigSchema as Qt, initHeadlessWebGPU as R, samplePathChainGeometry as Rn, KineticMarqueeConfigSchema as Rt, drawCaptionNode as S, evaluateCubicBezier as Sn, AETextAnimatorSchema as St, drawLottieNode as T, evaluateMarqueeOffset as Tn, AnchorGroupingSchema as Tt, loadOBJ as U, SelectorModeSchema as Ut, loadFBX as V, ParticleDissolveConfigSchema as Vt, lutStore as W, SelectorShapeSchema as Wt, parseOBJ as X, TextAnchorConfigSchema as Xt, parseMTL as Y, SpringPhysicsSchema as Yt, parseSvgPathToSegments as Z, TextAnimatorBuilder as Zt, buildShapeSvgPath as _, computeLineLeadingDisplacement as _n, Path3D as _t, GlassPipeline as a, TextSelectorSchema as an, spansText as at, colorMatrixWgsl as b, distanceToCurveParameter as bn, parseColorToRgb as bt, Renderer2D as c, TypewriterAnimatorSchema as cn, trackAudioPitch as ct, ScreenSpaceRelightPipeline as d, Vec2Schema as dn, Camera3D as dt, TextPathBuilder as en, registerHeadlessFont as et, ShadowPipeline as f, VolumetricFormationConfigSchema as fn, ENVIRONMENT_PRESETS as ft, WebGPUAudioProcessor as g, computeAnchorPivotOffset as gn, Matrix4Math as gt, SlugPipeline as h, buildWGSLSignalFn as hn, MAX_LIGHTS as ht, EffectPipeline as i, TextScrambleConfigSchema as in, shaderStore as it, ensureDevice as j, generateArcLengthLUT as jn, CubicBezierSegmentSchema as jt, drawVideoNode as k, evaluateTypewriterState as kn, AudioSpectrumTypographySchema as kt, Renderer3D as l, TypingCadenceSchema as ln, GetFontAssetUrl as lt, SlugGeometry as m, buildPathLUT as mn, Light3D as mt, AudioLatentTrackCache as n, TextPathSourceSchema as nn, sampleMorphWeights as nt, MotionBlurPipeline as o, TextSignalSelectorSchema as on, srtLoader as ot, SlugFontCache as p, VolumetricFormationModeSchema as pn, LIGHT_UNIFORM_SIZE_BYTES as pt, parseColor as q, SkewPropertiesSchema as qt, AudioMeshDeformPipeline as r, TextRangeSelectorSchema as rn, setRegisteredFontSource as rt, NodeSurfaceProvider as s, TextWigglySelectorSchema as sn, textureCache as st, AudioLatentEngine as t, TextPathOptionsSchema as tn, resolveTextSpans as tt, SSAOPipeline as u, VariableFontAxesSchema as un, resolveMediaSourceUrl as ut, clearAllVideoCache as v, computeRangeSelectorWeight as vn, Vector3Math as vt, drawImageNode as w, evaluateExpressionSelector as wn, AdvancedTextAnimatorSchema as wt, describeGpu as x, ellipseToCubicBeziers as xn, resolveEnvironment as xt, clearHeadlessFonts as y, deterministicWigglyNoise as yn, linearRgb as yt, inputStore as z, signalRegistry as zn, LineSpacingDynamicsSchema as zt };
41381
+ //# sourceMappingURL=dist-CWLLnigL.mjs.map