framefields 2.5.0 → 2.5.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.
- package/dist/audio/index.mjs +10 -10
- package/dist/{audio-CMHpfOoS.mjs → audio-CZwVENqB.mjs} +3 -3
- package/dist/{audio-CMHpfOoS.mjs.map → audio-CZwVENqB.mjs.map} +1 -1
- package/dist/components/index.d.mts +1 -1
- package/dist/components/index.mjs +42 -42
- package/dist/{dist-BBUrGwqd.mjs → dist-DBWkkSvJ.mjs} +90 -66
- package/dist/dist-DBWkkSvJ.mjs.map +1 -0
- package/dist/{dist-QMVy31gR.mjs → dist-DHQVWaV2.mjs} +32 -19
- package/dist/dist-DHQVWaV2.mjs.map +1 -0
- package/dist/effects/index.mjs +34 -34
- package/dist/{effects-mRe-rLte.mjs → effects-DZvq-nWT.mjs} +2 -2
- package/dist/{effects-mRe-rLte.mjs.map → effects-DZvq-nWT.mjs.map} +1 -1
- package/dist/fonts/index.mjs +2 -2
- package/dist/{fonts-wI3CUYHM.mjs → fonts-DcsxFpyU.mjs} +3 -2
- package/dist/fonts-DcsxFpyU.mjs.map +1 -0
- package/dist/{gpu-I5fdrflL.mjs → gpu-Dq_uI_00.mjs} +2 -2
- package/dist/{gpu-I5fdrflL.mjs.map → gpu-Dq_uI_00.mjs.map} +1 -1
- package/dist/index-CalU-mpZ.d.mts.map +1 -1
- package/dist/index-D6-lH1Mx.d.mts.map +1 -1
- package/dist/{index-BJe_GEyj.d.mts → index-DKssQ_wn.d.mts} +2 -2
- package/dist/index-DKssQ_wn.d.mts.map +1 -0
- package/dist/index-fymoeGNW.d.mts.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +49 -49
- package/dist/preview/index.mjs +10 -10
- package/dist/{preview--DEgW67P.mjs → preview-CYI4i4m3.mjs} +4 -3
- package/dist/preview-CYI4i4m3.mjs.map +1 -0
- package/dist/preview-engine/audio.mjs +1 -1
- package/dist/preview-engine/{chunk-4UI3S3UG.mjs → chunk-2QQQTZHS.mjs} +1 -1
- package/dist/preview-engine/{chunk-MZAAJXUL.mjs → chunk-2RZ6S4SW.mjs} +1 -1
- package/dist/preview-engine/{chunk-QVUT3QNF.mjs → chunk-3AYICEZ5.mjs} +1 -1
- package/dist/preview-engine/{chunk-A5OUYV3I.mjs → chunk-3I6B3YPF.mjs} +1 -1
- package/dist/preview-engine/{chunk-LQBDZSQD.mjs → chunk-6GMEF2QB.mjs} +1 -1
- package/dist/preview-engine/chunk-AB5VITYM.mjs +1974 -0
- package/dist/preview-engine/{chunk-OOJAQBS3.mjs → chunk-BNO5JAEZ.mjs} +1 -1
- package/dist/preview-engine/{chunk-7EHUT5A3.mjs → chunk-CE6CG5BH.mjs} +1 -1
- package/dist/preview-engine/{chunk-LQENNFBA.mjs → chunk-CT2WFPYG.mjs} +11 -11
- package/dist/preview-engine/{chunk-AJLPRIXB.mjs → chunk-DUEY7AXY.mjs} +1 -1
- package/dist/preview-engine/{chunk-NG5WSR3A.mjs → chunk-DWHQSNSJ.mjs} +1 -1
- package/dist/preview-engine/chunk-EU7CFSB5.mjs +1 -0
- package/dist/preview-engine/{chunk-NIRW77QA.mjs → chunk-KJGNTREI.mjs} +1 -1
- package/dist/preview-engine/{chunk-VZGDX7II.mjs → chunk-LNJYHSYX.mjs} +1 -1
- package/dist/preview-engine/{chunk-O6LGKH4S.mjs → chunk-LQVACZDE.mjs} +1 -1
- package/dist/preview-engine/{chunk-5N3GW3NE.mjs → chunk-M6ZKK6ZU.mjs} +1 -1
- package/dist/preview-engine/{chunk-KRVXRP5F.mjs → chunk-MA4YVA2E.mjs} +1 -1
- package/dist/preview-engine/{chunk-JAJOZG5P.mjs → chunk-MBJXS3D7.mjs} +1 -1
- package/dist/preview-engine/{chunk-QQJPPGH5.mjs → chunk-MCR7XMNQ.mjs} +1 -1
- package/dist/preview-engine/{chunk-CBQOJAIS.mjs → chunk-NAISBHLR.mjs} +3 -3
- package/dist/preview-engine/{chunk-TA5OBYRR.mjs → chunk-NHQR76WL.mjs} +1 -1
- package/dist/preview-engine/{chunk-MJN3LOZ7.mjs → chunk-NKGXINCU.mjs} +1 -1
- package/dist/preview-engine/{chunk-ZFURUTVW.mjs → chunk-P734GD7D.mjs} +1 -1
- package/dist/preview-engine/{chunk-2AV7HRRL.mjs → chunk-PDM3TJ45.mjs} +1 -1
- package/dist/preview-engine/{chunk-ANZDLSSM.mjs → chunk-PXWCGXTF.mjs} +1 -1
- package/dist/preview-engine/{chunk-5P764TTF.mjs → chunk-QJYAIQYU.mjs} +1 -1
- package/dist/preview-engine/{chunk-VUFDQJ2B.mjs → chunk-QKQYHPBK.mjs} +1 -1
- package/dist/preview-engine/{chunk-NVTPJUNG.mjs → chunk-QVW5METG.mjs} +1 -1
- package/dist/preview-engine/{chunk-MRDJNDYV.mjs → chunk-QYIKOOFI.mjs} +1 -1
- package/dist/preview-engine/{chunk-CEIOI4HO.mjs → chunk-SIXIF5QZ.mjs} +1 -1
- package/dist/preview-engine/chunk-SNASF7OM.mjs +3 -0
- package/dist/preview-engine/{chunk-7HTTYP6T.mjs → chunk-T4VP45AP.mjs} +1 -1
- package/dist/preview-engine/{chunk-HXHP3UHZ.mjs → chunk-TE2QAKKF.mjs} +1 -1
- package/dist/preview-engine/{chunk-VRNN6H6Y.mjs → chunk-UXCTWFKK.mjs} +1 -1
- package/dist/preview-engine/{chunk-V6DAD4S4.mjs → chunk-V3FODTPI.mjs} +2 -2
- package/dist/preview-engine/{chunk-ILKBHDFB.mjs → chunk-VH5V54RA.mjs} +1 -1
- package/dist/preview-engine/chunk-W4HIVUUA.mjs +4 -0
- package/dist/preview-engine/{chunk-YMQMPBTL.mjs → chunk-WUMVCQYI.mjs} +1 -1
- package/dist/preview-engine/{chunk-4EOS6ZWW.mjs → chunk-X6BJLPW6.mjs} +1 -1
- package/dist/preview-engine/{chunk-PJN7DD55.mjs → chunk-XUPZBI3Y.mjs} +6 -6
- package/dist/preview-engine/{chunk-Z4ZO4RVT.mjs → chunk-YJ24W73B.mjs} +1 -1
- package/dist/preview-engine/{chunk-DPIED3EG.mjs → chunk-Z4TKEI3I.mjs} +1 -1
- package/dist/preview-engine/{chunk-MLW6Y4RN.mjs → chunk-ZAIVXGSS.mjs} +1 -1
- package/dist/preview-engine/{chunk-C2TA65CH.mjs → chunk-ZVUTFXDR.mjs} +1 -1
- package/dist/preview-engine/components.mjs +1 -0
- package/dist/preview-engine/effects.mjs +1 -1
- package/dist/preview-engine/fonts.mjs +1 -1
- package/dist/preview-engine/framefields.mjs +1 -1973
- package/dist/preview-engine/player.mjs +5 -5
- package/dist/preview-engine/renderers-2S5ZWL2J.mjs +1 -0
- package/dist/preview-engine/renderers-37CN7O4S.mjs +1 -1
- package/dist/preview-engine/renderers-3UGG2IMP.mjs +1 -1
- package/dist/preview-engine/{renderers-RV62K5JC.mjs → renderers-4RFB2LG2.mjs} +1 -1
- package/dist/preview-engine/renderers-6NFRKHNO.mjs +1 -0
- package/dist/preview-engine/{renderers-BOT4H6KJ.mjs → renderers-6PVGRTXV.mjs} +1 -1
- package/dist/preview-engine/renderers-7MPBAHYA.mjs +1 -0
- package/dist/preview-engine/renderers-AFTYMS3H.mjs +1 -0
- package/dist/preview-engine/renderers-AKZAAGR7.mjs +1 -0
- package/dist/preview-engine/renderers-AYEWAW7F.mjs +1 -1
- package/dist/preview-engine/{renderers-EOIMH7UE.mjs → renderers-BNXTSIXJ.mjs} +1 -1
- package/dist/preview-engine/{renderers-6ZCFR7BL.mjs → renderers-BQLYS4TM.mjs} +1 -1
- package/dist/preview-engine/renderers-C7SJ3M6S.mjs +1 -0
- package/dist/preview-engine/{renderers-HE42AT5T.mjs → renderers-CEJP6Q7F.mjs} +1 -1
- package/dist/preview-engine/{renderers-C4G7X7LD.mjs → renderers-CLLR5MOQ.mjs} +1 -1
- package/dist/preview-engine/{renderers-DSICQMRF.mjs → renderers-DHKB5LI6.mjs} +1 -1
- package/dist/preview-engine/renderers-DUF2CTX6.mjs +1 -1
- package/dist/preview-engine/{renderers-SIHL5GLI.mjs → renderers-DZZFIYYA.mjs} +1 -1
- package/dist/preview-engine/renderers-EIJFIY6L.mjs +1 -0
- package/dist/preview-engine/renderers-EOMMSENQ.mjs +1 -1
- package/dist/preview-engine/{renderers-V67L3MCY.mjs → renderers-FOHW7RWH.mjs} +1 -1
- package/dist/preview-engine/{renderers-GSRKNT75.mjs → renderers-GF77N2KM.mjs} +1 -1
- package/dist/preview-engine/renderers-H3ZM2TOA.mjs +1 -0
- package/dist/preview-engine/{renderers-W6ZTVA2I.mjs → renderers-HJ6NO5ZD.mjs} +1 -1
- package/dist/preview-engine/renderers-JXBZPQKP.mjs +1 -0
- package/dist/preview-engine/renderers-KSQM7EM5.mjs +1 -0
- package/dist/preview-engine/{renderers-3ZYXHUSW.mjs → renderers-KV3TTCO6.mjs} +1 -1
- package/dist/preview-engine/renderers-LD3COS4X.mjs +1 -0
- package/dist/preview-engine/renderers-MCTBJEL7.mjs +1 -1
- package/dist/preview-engine/renderers-MKEXNBCW.mjs +1 -0
- package/dist/preview-engine/{renderers-PJGFJGJS.mjs → renderers-MPCYLXXU.mjs} +1 -1
- package/dist/preview-engine/{renderers-V5MJJH33.mjs → renderers-MS4HG3M4.mjs} +1 -1
- package/dist/preview-engine/{renderers-SD35PBEM.mjs → renderers-N7T34SCI.mjs} +1 -1
- package/dist/preview-engine/{renderers-QPHOG7QR.mjs → renderers-O56IOD7J.mjs} +1 -1
- package/dist/preview-engine/renderers-OZGEXW2X.mjs +1 -1
- package/dist/preview-engine/renderers-PSEDMUBV.mjs +1 -0
- package/dist/preview-engine/renderers-PVUROEGR.mjs +1 -1
- package/dist/preview-engine/renderers-QBVVTQV6.mjs +1 -1
- package/dist/preview-engine/{renderers-DBRC3SQE.mjs → renderers-QO2RHF7F.mjs} +1 -1
- package/dist/preview-engine/renderers-QPFZBLDI.mjs +1 -0
- package/dist/preview-engine/renderers-R4U2TK6P.mjs +1 -0
- package/dist/preview-engine/renderers-RBLNDAO4.mjs +1 -0
- package/dist/preview-engine/renderers-RM25AXWZ.mjs +1 -0
- package/dist/preview-engine/{renderers-ZAPIBQZC.mjs → renderers-ROSSJ7Y2.mjs} +1 -1
- package/dist/preview-engine/{renderers-ZVKXIQ3E.mjs → renderers-RRJ2DX2W.mjs} +1 -1
- package/dist/preview-engine/renderers-RYRFCEYT.mjs +1 -0
- package/dist/preview-engine/renderers-SIBP54WK.mjs +1 -0
- package/dist/preview-engine/renderers-SRU6QXLN.mjs +1 -0
- package/dist/preview-engine/{renderers-K6J77OI5.mjs → renderers-T62TXGVO.mjs} +1 -1
- package/dist/preview-engine/{renderers-SBX64ERA.mjs → renderers-TAMDNTEQ.mjs} +1 -1
- package/dist/preview-engine/{renderers-T3S7QVM4.mjs → renderers-TASYN62K.mjs} +1 -1
- package/dist/preview-engine/{renderers-C44CEIYB.mjs → renderers-TWZHTKW7.mjs} +1 -1
- package/dist/preview-engine/renderers-UQHKFGDX.mjs +1 -0
- package/dist/preview-engine/{renderers-PPGOYOID.mjs → renderers-UVABXXQF.mjs} +1 -1
- package/dist/preview-engine/{renderers-JM7JEVBN.mjs → renderers-W5CTR4B5.mjs} +1 -1
- package/dist/preview-engine/renderers-WDV7ENJA.mjs +1 -1
- package/dist/preview-engine/renderers-WNBDSSJ3.mjs +1 -0
- package/dist/preview-engine/renderers-WTC2RNGU.mjs +1 -0
- package/dist/preview-engine/{renderers-SPW4SWZ2.mjs → renderers-XLBHSQZJ.mjs} +1 -1
- package/dist/preview-engine/{renderers-JRU2GNPE.mjs → renderers-XSPU2BIQ.mjs} +1 -1
- package/dist/preview-engine/renderers-XVUOO7B6.mjs +1 -1
- package/dist/preview-engine/renderers-YHOQUEHD.mjs +1 -0
- package/dist/preview-engine/renderers-YPFM5UJO.mjs +1 -1
- package/dist/preview-engine/renderers-YW3LBALW.mjs +1 -1
- package/dist/preview-engine/signals.mjs +1 -1
- package/dist/{program-CEHCeDpG.mjs → program-BdPDtfVv.mjs} +2 -2
- package/dist/{program-CEHCeDpG.mjs.map → program-BdPDtfVv.mjs.map} +1 -1
- package/dist/renderer/index.mjs +2 -2
- package/dist/{renderer-BbdgwkDB.mjs → renderer-0cHsK6xR.mjs} +3 -3
- package/dist/{renderer-BbdgwkDB.mjs.map → renderer-0cHsK6xR.mjs.map} +1 -1
- package/dist/{renderer-JaSEubRQ.mjs → renderer-1VKN5j2C.mjs} +2 -2
- package/dist/{renderer-JaSEubRQ.mjs.map → renderer-1VKN5j2C.mjs.map} +1 -1
- package/dist/{renderer-BgOEqtZu.mjs → renderer-2bipMLqz.mjs} +2 -2
- package/dist/{renderer-BgOEqtZu.mjs.map → renderer-2bipMLqz.mjs.map} +1 -1
- package/dist/{renderer-DhQZiRL3.mjs → renderer-7DyjqxEj.mjs} +3 -3
- package/dist/{renderer-DhQZiRL3.mjs.map → renderer-7DyjqxEj.mjs.map} +1 -1
- package/dist/renderer-B-D_VZg3.mjs +5 -0
- package/dist/{renderer-3aLw-la1.mjs → renderer-B31zMDE8.mjs} +3 -3
- package/dist/{renderer-3aLw-la1.mjs.map → renderer-B31zMDE8.mjs.map} +1 -1
- package/dist/{renderer-CPmoA87K.mjs → renderer-B4blg067.mjs} +2 -2
- package/dist/{renderer-CPmoA87K.mjs.map → renderer-B4blg067.mjs.map} +1 -1
- package/dist/{renderer-ChNCtBMR.mjs → renderer-B5YYBBDq.mjs} +2 -2
- package/dist/{renderer-ChNCtBMR.mjs.map → renderer-B5YYBBDq.mjs.map} +1 -1
- package/dist/renderer-B64dhpDX.mjs +5 -0
- package/dist/{renderer-D8D7dKxq.mjs → renderer-B8LXXvHi.mjs} +2 -2
- package/dist/{renderer-D8D7dKxq.mjs.map → renderer-B8LXXvHi.mjs.map} +1 -1
- package/dist/{renderer-BG8jNTHr.mjs → renderer-BAkPq8qo.mjs} +2 -2
- package/dist/{renderer-BG8jNTHr.mjs.map → renderer-BAkPq8qo.mjs.map} +1 -1
- package/dist/{renderer-B5oJN3A5.mjs → renderer-BBTdHKH7.mjs} +3 -3
- package/dist/{renderer-B5oJN3A5.mjs.map → renderer-BBTdHKH7.mjs.map} +1 -1
- package/dist/{renderer-CHFUJyul.mjs → renderer-BBTkfhL8.mjs} +3 -3
- package/dist/{renderer-CHFUJyul.mjs.map → renderer-BBTkfhL8.mjs.map} +1 -1
- package/dist/renderer-BDL4jyrb.mjs +5 -0
- package/dist/{renderer-B5HG6Czb.mjs → renderer-BGNdwdCR.mjs} +2 -2
- package/dist/{renderer-B5HG6Czb.mjs.map → renderer-BGNdwdCR.mjs.map} +1 -1
- package/dist/{renderer-Bvhj-05p.mjs → renderer-BJwOM1Dq.mjs} +3 -3
- package/dist/{renderer-Bvhj-05p.mjs.map → renderer-BJwOM1Dq.mjs.map} +1 -1
- package/dist/renderer-BKCZGKkl.mjs +5 -0
- package/dist/renderer-BKs3jI7-.mjs +5 -0
- package/dist/{renderer-CKGOKBZi.mjs → renderer-BN_n6O6P.mjs} +3 -3
- package/dist/{renderer-CKGOKBZi.mjs.map → renderer-BN_n6O6P.mjs.map} +1 -1
- package/dist/renderer-BW74Zf-u.mjs +5 -0
- package/dist/{renderer-DVnrUnkh.mjs → renderer-BWa3CLK7.mjs} +2 -2
- package/dist/{renderer-DVnrUnkh.mjs.map → renderer-BWa3CLK7.mjs.map} +1 -1
- package/dist/{renderer-CrU0kbiB.mjs → renderer-BWnFh7NO.mjs} +3 -3
- package/dist/{renderer-CrU0kbiB.mjs.map → renderer-BWnFh7NO.mjs.map} +1 -1
- package/dist/renderer-BXuQN61O.mjs +5 -0
- package/dist/renderer-BY1pPvzx.mjs +6 -0
- package/dist/{renderer-BEmDSqXg.mjs → renderer-BYJS2lhn.mjs} +2 -2
- package/dist/{renderer-BEmDSqXg.mjs.map → renderer-BYJS2lhn.mjs.map} +1 -1
- package/dist/renderer-Bahthqvq.mjs +5 -0
- package/dist/renderer-BbaiQG8h.mjs +5 -0
- package/dist/{renderer-Baw30QRI.mjs → renderer-BfrzKmRh.mjs} +2 -2
- package/dist/{renderer-Baw30QRI.mjs.map → renderer-BfrzKmRh.mjs.map} +1 -1
- package/dist/renderer-BhHF-08y.mjs +5 -0
- package/dist/{renderer-CyhSWLKq.mjs → renderer-BhhweLr_.mjs} +3 -3
- package/dist/{renderer-CyhSWLKq.mjs.map → renderer-BhhweLr_.mjs.map} +1 -1
- package/dist/{renderer-DetTl6bQ.mjs → renderer-Bmj7AyJP.mjs} +3 -3
- package/dist/{renderer-DetTl6bQ.mjs.map → renderer-Bmj7AyJP.mjs.map} +1 -1
- package/dist/{renderer-CddpdCL3.mjs → renderer-BmoQJUJO.mjs} +3 -3
- package/dist/{renderer-CddpdCL3.mjs.map → renderer-BmoQJUJO.mjs.map} +1 -1
- package/dist/renderer-BnrMcw6C.mjs +5 -0
- package/dist/{renderer-CcS3Zntx.mjs → renderer-Bo1PY0zW.mjs} +2 -2
- package/dist/{renderer--wMbTRFg.mjs → renderer-Bo_d7h86.mjs} +2 -2
- package/dist/{renderer--wMbTRFg.mjs.map → renderer-Bo_d7h86.mjs.map} +1 -1
- package/dist/renderer-BsS61z5l.mjs +5 -0
- package/dist/renderer-Btuq2Eq8.mjs +5 -0
- package/dist/{renderer-pcpDwv3K.mjs → renderer-Bw5YP2Db.mjs} +2 -2
- package/dist/{renderer-pcpDwv3K.mjs.map → renderer-Bw5YP2Db.mjs.map} +1 -1
- package/dist/renderer-BxmsEl2x.mjs +5 -0
- package/dist/{renderer-DkS6cblv.mjs → renderer-CDX2f82b.mjs} +3 -3
- package/dist/{renderer-DkS6cblv.mjs.map → renderer-CDX2f82b.mjs.map} +1 -1
- package/dist/renderer-CGOyHdKs.mjs +5 -0
- package/dist/renderer-CJjmpmpu.mjs +5 -0
- package/dist/{renderer-wld_ZR0-.mjs → renderer-CJoa4H2G.mjs} +2 -2
- package/dist/{renderer-wld_ZR0-.mjs.map → renderer-CJoa4H2G.mjs.map} +1 -1
- package/dist/{renderer-DWtquP0s.mjs → renderer-CLO8QHWE.mjs} +2 -2
- package/dist/{renderer-DWtquP0s.mjs.map → renderer-CLO8QHWE.mjs.map} +1 -1
- package/dist/{renderer-DkeJefRk.mjs → renderer-CMEqUhrW.mjs} +2 -2
- package/dist/{renderer-DkeJefRk.mjs.map → renderer-CMEqUhrW.mjs.map} +1 -1
- package/dist/{renderer-DILjs1tz.mjs → renderer-COtZ315B.mjs} +2 -2
- package/dist/renderer-CQvDDAIu.mjs +5 -0
- package/dist/{renderer-mSlww_MA.mjs → renderer-CWSM0IGG.mjs} +2 -2
- package/dist/{renderer-mSlww_MA.mjs.map → renderer-CWSM0IGG.mjs.map} +1 -1
- package/dist/{renderer-DqdD8gzX.mjs → renderer-CXbXF7Dh.mjs} +3 -3
- package/dist/{renderer-DqdD8gzX.mjs.map → renderer-CXbXF7Dh.mjs.map} +1 -1
- package/dist/renderer-CYxigw7S.mjs +5 -0
- package/dist/{renderer-D86Y5YYi.mjs → renderer-CdUf7ZDJ.mjs} +3 -3
- package/dist/{renderer-D86Y5YYi.mjs.map → renderer-CdUf7ZDJ.mjs.map} +1 -1
- package/dist/renderer-CgDofO5z.mjs +5 -0
- package/dist/renderer-CgmQchab.mjs +5 -0
- package/dist/{renderer-DvIWhLnY.mjs → renderer-Ch7qwjH9.mjs} +3 -3
- package/dist/{renderer-DvIWhLnY.mjs.map → renderer-Ch7qwjH9.mjs.map} +1 -1
- package/dist/{renderer-CaUJlGoB.mjs → renderer-ChCUad83.mjs} +3 -3
- package/dist/{renderer-CaUJlGoB.mjs.map → renderer-ChCUad83.mjs.map} +1 -1
- package/dist/{renderer-vPJRRVNN.mjs → renderer-ChjkppUz.mjs} +3 -3
- package/dist/{renderer-vPJRRVNN.mjs.map → renderer-ChjkppUz.mjs.map} +1 -1
- package/dist/{renderer-DATAjI6x.mjs → renderer-Cj1giMd0.mjs} +2 -2
- package/dist/{renderer-DATAjI6x.mjs.map → renderer-Cj1giMd0.mjs.map} +1 -1
- package/dist/{renderer-B41jTHFs.mjs → renderer-Cjs1OeBu.mjs} +3 -3
- package/dist/{renderer-B41jTHFs.mjs.map → renderer-Cjs1OeBu.mjs.map} +1 -1
- package/dist/renderer-CjzrLwW_.mjs +5 -0
- package/dist/renderer-ClnYWADT.mjs +5 -0
- package/dist/{renderer-CF25oNd3.mjs → renderer-CmKdr2nA.mjs} +3 -3
- package/dist/{renderer-CF25oNd3.mjs.map → renderer-CmKdr2nA.mjs.map} +1 -1
- package/dist/renderer-CwAd71C6.mjs +5 -0
- package/dist/{renderer-DxLkZGUK.mjs → renderer-D0X7Eh-T.mjs} +3 -3
- package/dist/{renderer-DxLkZGUK.mjs.map → renderer-D0X7Eh-T.mjs.map} +1 -1
- package/dist/{renderer-DIyzKouj.mjs → renderer-D2ru2Afi.mjs} +2 -2
- package/dist/{renderer-DIyzKouj.mjs.map → renderer-D2ru2Afi.mjs.map} +1 -1
- package/dist/renderer-D3Z9t-xT.mjs +5 -0
- package/dist/{renderer-B1yPBJQc.mjs → renderer-D5u3GVtD.mjs} +69 -69
- package/dist/{renderer-B1yPBJQc.mjs.map → renderer-D5u3GVtD.mjs.map} +1 -1
- package/dist/{renderer-ZGJWn-_L.mjs → renderer-D6p8b6ql.mjs} +2 -2
- package/dist/{renderer-ZGJWn-_L.mjs.map → renderer-D6p8b6ql.mjs.map} +1 -1
- package/dist/{renderer-DfxwJVjW.mjs → renderer-DBjV6C2u.mjs} +2 -2
- package/dist/{renderer-C8KEfda3.mjs → renderer-DHqicGgT.mjs} +3 -3
- package/dist/{renderer-C8KEfda3.mjs.map → renderer-DHqicGgT.mjs.map} +1 -1
- package/dist/{renderer-aXwxbXcE.mjs → renderer-DK34NH92.mjs} +3 -3
- package/dist/{renderer-aXwxbXcE.mjs.map → renderer-DK34NH92.mjs.map} +1 -1
- package/dist/renderer-DKH1oSlW.mjs +5 -0
- package/dist/{renderer-Bv0-WmP4.mjs → renderer-DP41Fokp.mjs} +2 -2
- package/dist/{renderer-Bv0-WmP4.mjs.map → renderer-DP41Fokp.mjs.map} +1 -1
- package/dist/{renderer-D2tdNoM6.mjs → renderer-DQuKNgIx.mjs} +3 -3
- package/dist/{renderer-D2tdNoM6.mjs.map → renderer-DQuKNgIx.mjs.map} +1 -1
- package/dist/renderer-DTkf_hwG.mjs +5 -0
- package/dist/renderer-DU0bmOS7.mjs +5 -0
- package/dist/{renderer-C1XZ0fQ-.mjs → renderer-DWaqF7-6.mjs} +3 -3
- package/dist/{renderer-C1XZ0fQ-.mjs.map → renderer-DWaqF7-6.mjs.map} +1 -1
- package/dist/renderer-D_vJHQt5.mjs +5 -0
- package/dist/{renderer-Cg-d78nf.mjs → renderer-Db_wphHH.mjs} +5 -5
- package/dist/{renderer-Cg-d78nf.mjs.map → renderer-Db_wphHH.mjs.map} +1 -1
- package/dist/renderer-Dc5n0M6P.mjs +5 -0
- package/dist/renderer-Ddfn0Dha.mjs +5 -0
- package/dist/renderer-DeSoNQeG.mjs +5 -0
- package/dist/{renderer-Djn4BYtz.mjs → renderer-DkPDYtD3.mjs} +3 -3
- package/dist/{renderer-Djn4BYtz.mjs.map → renderer-DkPDYtD3.mjs.map} +1 -1
- package/dist/{renderer-CYZb9uoO.mjs → renderer-DqO9gBAi.mjs} +2 -2
- package/dist/{renderer-CYZb9uoO.mjs.map → renderer-DqO9gBAi.mjs.map} +1 -1
- package/dist/{renderer-BWtI3wKu.mjs → renderer-DuQMzR3v.mjs} +2 -2
- package/dist/{renderer-BWtI3wKu.mjs.map → renderer-DuQMzR3v.mjs.map} +1 -1
- package/dist/{renderer-DJ78Bgv7.mjs → renderer-DyMEAZIm.mjs} +3 -3
- package/dist/{renderer-DJ78Bgv7.mjs.map → renderer-DyMEAZIm.mjs.map} +1 -1
- package/dist/renderer-Dzca9Qba.mjs +5 -0
- package/dist/{renderer-mWfgWQy_.mjs → renderer-FCqOfN6n.mjs} +3 -3
- package/dist/{renderer-mWfgWQy_.mjs.map → renderer-FCqOfN6n.mjs.map} +1 -1
- package/dist/{renderer-D-bmSKv4.mjs → renderer-Fsdod0yZ.mjs} +3 -3
- package/dist/{renderer-D-bmSKv4.mjs.map → renderer-Fsdod0yZ.mjs.map} +1 -1
- package/dist/{renderer-BMnrBPh1.mjs → renderer-G3px5ODP.mjs} +2 -2
- package/dist/{renderer-BMnrBPh1.mjs.map → renderer-G3px5ODP.mjs.map} +1 -1
- package/dist/renderer-HRVvtc9c.mjs +5 -0
- package/dist/{renderer-AkRxGnFU.mjs → renderer-IMg0dK6K.mjs} +3 -3
- package/dist/{renderer-AkRxGnFU.mjs.map → renderer-IMg0dK6K.mjs.map} +1 -1
- package/dist/renderer-M3Qs4f1K.mjs +5 -0
- package/dist/renderer-NDHJt_Ae.mjs +5 -0
- package/dist/{renderer-GY7D1oAn.mjs → renderer-PLoGrFGz.mjs} +3 -3
- package/dist/{renderer-GY7D1oAn.mjs.map → renderer-PLoGrFGz.mjs.map} +1 -1
- package/dist/{renderer-DstROEvX.mjs → renderer-VdTs-dqH.mjs} +3 -3
- package/dist/{renderer-DstROEvX.mjs.map → renderer-VdTs-dqH.mjs.map} +1 -1
- package/dist/{renderer-COZCwiIr.mjs → renderer-VxVi_0c7.mjs} +2 -2
- package/dist/{renderer-COZCwiIr.mjs.map → renderer-VxVi_0c7.mjs.map} +1 -1
- package/dist/{renderer-gniIzAsk.mjs → renderer-WVrUeiLZ.mjs} +2 -2
- package/dist/{renderer-DqabtpGN.mjs → renderer-Z39F9QK5.mjs} +3 -3
- package/dist/{renderer-DqabtpGN.mjs.map → renderer-Z39F9QK5.mjs.map} +1 -1
- package/dist/{renderer-VcPoZAM2.mjs → renderer-ZjSP5jw6.mjs} +2 -2
- package/dist/{renderer-VcPoZAM2.mjs.map → renderer-ZjSP5jw6.mjs.map} +1 -1
- package/dist/{renderer-BORzpTQP.mjs → renderer-fH9SCJC2.mjs} +2 -2
- package/dist/{renderer-BORzpTQP.mjs.map → renderer-fH9SCJC2.mjs.map} +1 -1
- package/dist/{renderer-DuawUm8D.mjs → renderer-gjT5v76-.mjs} +2 -2
- package/dist/{renderer-DuawUm8D.mjs.map → renderer-gjT5v76-.mjs.map} +1 -1
- package/dist/{renderer-BxDhx8KM.mjs → renderer-kP5Y282J.mjs} +3 -3
- package/dist/{renderer-BxDhx8KM.mjs.map → renderer-kP5Y282J.mjs.map} +1 -1
- package/dist/{renderer-Dw2ZFwDT.mjs → renderer-kkDfQ56G.mjs} +3 -3
- package/dist/{renderer-Dw2ZFwDT.mjs.map → renderer-kkDfQ56G.mjs.map} +1 -1
- package/dist/{renderer-vQrX7Qsw.mjs → renderer-l_U6kA8K.mjs} +2 -2
- package/dist/{renderer-vQrX7Qsw.mjs.map → renderer-l_U6kA8K.mjs.map} +1 -1
- package/dist/{renderer-DGhCIVI4.mjs → renderer-o_JK4YfO.mjs} +3 -3
- package/dist/{renderer-DGhCIVI4.mjs.map → renderer-o_JK4YfO.mjs.map} +1 -1
- package/dist/{renderer-MrvH4L7b.mjs → renderer-vwoyR8pW.mjs} +2 -2
- package/dist/{renderer-MrvH4L7b.mjs.map → renderer-vwoyR8pW.mjs.map} +1 -1
- package/dist/{renderers-CP8CFWDs-DgKdGMvS.mjs → renderers-CP8CFWDs-DiX2Y4Qp.mjs} +2 -2
- package/dist/{renderers-CP8CFWDs-DgKdGMvS.mjs.map → renderers-CP8CFWDs-DiX2Y4Qp.mjs.map} +1 -1
- package/dist/signals/index.mjs +4 -4
- package/dist/{src-CU_7ui4I.mjs → src-Ds9IAk5S.mjs} +7 -7
- package/dist/{src-CU_7ui4I.mjs.map → src-Ds9IAk5S.mjs.map} +1 -1
- package/package.json +58 -58
- package/dist/dist-BBUrGwqd.mjs.map +0 -1
- package/dist/dist-QMVy31gR.mjs.map +0 -1
- package/dist/fonts-wI3CUYHM.mjs.map +0 -1
- package/dist/index-BJe_GEyj.d.mts.map +0 -1
- package/dist/preview--DEgW67P.mjs.map +0 -1
- package/dist/preview-engine/chunk-3T4LB4ZH.mjs +0 -3
- package/dist/preview-engine/chunk-DKXKOUQR.mjs +0 -1
- package/dist/preview-engine/chunk-RQLMW6MA.mjs +0 -4
- package/dist/preview-engine/chunk-XN56POGE.mjs +0 -1
- package/dist/preview-engine/renderers-2CBJYNOC.mjs +0 -1
- package/dist/preview-engine/renderers-3AZ5PMGC.mjs +0 -1
- package/dist/preview-engine/renderers-3VXNHICC.mjs +0 -1
- package/dist/preview-engine/renderers-4FONYSBA.mjs +0 -1
- package/dist/preview-engine/renderers-54I5SFXR.mjs +0 -1
- package/dist/preview-engine/renderers-5LXALKB4.mjs +0 -1
- package/dist/preview-engine/renderers-5TICPV2K.mjs +0 -1
- package/dist/preview-engine/renderers-5YS5WHAV.mjs +0 -1
- package/dist/preview-engine/renderers-6UTRYW7Z.mjs +0 -1
- package/dist/preview-engine/renderers-CLCPP3TZ.mjs +0 -1
- package/dist/preview-engine/renderers-DTZ2AER5.mjs +0 -1
- package/dist/preview-engine/renderers-GUJTPO37.mjs +0 -1
- package/dist/preview-engine/renderers-LGUHDWWB.mjs +0 -1
- package/dist/preview-engine/renderers-LGXD24IJ.mjs +0 -1
- package/dist/preview-engine/renderers-OBXNUQMP.mjs +0 -1
- package/dist/preview-engine/renderers-PUJRHBUW.mjs +0 -1
- package/dist/preview-engine/renderers-SCJTTOEJ.mjs +0 -1
- package/dist/preview-engine/renderers-SNUVYUDE.mjs +0 -1
- package/dist/preview-engine/renderers-SRKCF3LD.mjs +0 -1
- package/dist/preview-engine/renderers-UN6YLFHW.mjs +0 -1
- package/dist/preview-engine/renderers-UTWKTBZI.mjs +0 -1
- package/dist/preview-engine/renderers-W6762MNW.mjs +0 -1
- package/dist/preview-engine/renderers-XP7YFWBV.mjs +0 -1
- package/dist/preview-engine/renderers-ZRR4TUVQ.mjs +0 -1
- package/dist/renderer-7vCBWQVP.mjs +0 -5
- package/dist/renderer-B-XgGMCq.mjs +0 -5
- package/dist/renderer-B0yabPlf.mjs +0 -5
- package/dist/renderer-B9MYevrF.mjs +0 -5
- package/dist/renderer-BCGosndi.mjs +0 -5
- package/dist/renderer-BXTHDEnd.mjs +0 -5
- package/dist/renderer-BbJoZ-zL.mjs +0 -5
- package/dist/renderer-BxAZKOQy.mjs +0 -5
- package/dist/renderer-BxgkH__7.mjs +0 -5
- package/dist/renderer-CFEvikBH.mjs +0 -5
- package/dist/renderer-C_u9B-_7.mjs +0 -5
- package/dist/renderer-Cgx_qzGT.mjs +0 -5
- package/dist/renderer-ClOkY1Ny.mjs +0 -5
- package/dist/renderer-CtDub_ig.mjs +0 -5
- package/dist/renderer-D0duAhCo.mjs +0 -5
- package/dist/renderer-D4wM1dqg.mjs +0 -6
- package/dist/renderer-D5U3d09T.mjs +0 -5
- package/dist/renderer-DKqFxYfP.mjs +0 -5
- package/dist/renderer-DQZNI1zf.mjs +0 -5
- package/dist/renderer-DXITcVbS.mjs +0 -5
- package/dist/renderer-DY1QgdDC.mjs +0 -5
- package/dist/renderer-DYEz06xn.mjs +0 -5
- package/dist/renderer-D_2OrSMc.mjs +0 -5
- package/dist/renderer-DcCl9CO6.mjs +0 -5
- package/dist/renderer-DotZXhrh.mjs +0 -5
- package/dist/renderer-DpYDVTzs.mjs +0 -5
- package/dist/renderer-DpZxLVQF.mjs +0 -5
- package/dist/renderer-DvJbouz0.mjs +0 -5
- package/dist/renderer-S305xm67.mjs +0 -5
- package/dist/renderer-TgUloP-y.mjs +0 -5
- package/dist/renderer-gZ5SMvbU.mjs +0 -5
- package/dist/renderer-kEpx7pUy.mjs +0 -5
- package/dist/renderer-oPWZmzua.mjs +0 -5
- package/dist/renderer-qCNOffLy.mjs +0 -5
- package/dist/renderer-xEVoeq12.mjs +0 -5
- package/dist/renderer-ypw8fzVD.mjs +0 -5
- /package/dist/preview-engine/{chunk-Q4Z54DQ7.mjs → chunk-LXHECDOB.mjs} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as Se}from"./chunk-37EFVZWT.mjs";import{c as Ae}from"./chunk-2SJ4BBMT.mjs";import{c as we,e as ue}from"./chunk-NIRW77QA.mjs";import{i as ie,l as q}from"./chunk-24P6DAB3.mjs";import{D as le}from"./chunk-RNFYEZLL.mjs";import{d as L,e as te}from"./chunk-BVF64D6H.mjs";te();te();te();function ge(t,e){return Math.round(t*e)}function se(t,e,o={timeOffsetSec:0}){if(!t)return t;let{operation:w,metadata:i={},children:a=[]}=t,{timeOffsetSec:p,durationLimitMs:c}=o;if(!w)return{...t,children:(a||[]).map(r=>se(r,e,o))};let l=w.timeline,b=l?.segments||[],u=q(t)?.durationMs??0;if(b.length>0){let r=b.reduce((A,s)=>{let S=s.endSec!=null?s.endSec-s.startSec:0,$=Math.max(1,Math.round(S*e));return A+$},0);r>0&&(u=r/e*1e3)}let d={...w},F=l?.startFrame??d.startFrame;if(typeof F=="number"){let r=ge(p,e);d.startFrame=F-r}let x={...i,durationMs:u},M=typeof F=="number"||d.op==="compose"?{timeOffsetSec:0,durationLimitMs:void 0}:{timeOffsetSec:p,durationLimitMs:c},R=(a||[]).map(r=>se(r,e,M));return{metadata:x,operation:d,children:R}}var De=typeof L<"u"&&/^(debug|trace)$/i.test(L.env?.LOG_LEVEL??""),g={debug:(t,...e)=>{De&&(typeof t=="object"&&t!==null?console.info("[AudioExtractor]",t,...e):console.info(`[AudioExtractor] ${t}`,...e))},warn:(t,...e)=>{typeof t=="object"&&t!==null?console.warn("[AudioExtractor]",t,...e):console.warn(`[AudioExtractor] ${t}`,...e)},error:(t,...e)=>{typeof t=="object"&&t!==null?console.error("[AudioExtractor]",t,...e):console.error(`[AudioExtractor] ${t}`,...e)}},xe=()=>{if(typeof window>"u")return Promise.resolve();let t=globalThis.scheduler;return typeof t?.yield=="function"?t.yield():new Promise(e=>setTimeout(e,0))},Re=async(t=3e4)=>{await new Promise(o=>setTimeout(o,100));let e=Date.now();return new Promise(o=>{let w=()=>{let i=typeof window<"u"&&window.renderer_delayRenderHandles?window.renderer_delayRenderHandles:[],a=typeof globalThis<"u"?globalThis.__GATEWAI_DELAYS__:null,p=i.length>0,c=a instanceof Set&&a.size>0;if(!p&&!c){o();return}if(Date.now()-e>t){g.warn(`[AudioExtractor] waitForDelayRender timed out waiting for handles: ${JSON.stringify({browserHandles:i,globalDelays:a?Array.from(a):[]})}`),o();return}setTimeout(w,50)};w()})};async function Ke(t){let e=await Me(t);return e?{channels:e.channels,sampleRate:e.sampleRate}:null}var $e=.5;async function Me(t,e){g.debug(`[AudioExtractor] decodeAudioSource started for url: ${t}`);try{if(typeof window<"u"&&typeof window.document<"u"&&!(typeof L<"u"&&L.versions&&L.versions.node)){g.debug(`[AudioExtractor] Browser detected. Fetching arrayBuffer for ${t}...`);let i=window.AudioContext||window.webkitAudioContext;if(!i)throw new Error("AudioContext is not supported in this browser");let a=new i;try{let p=await fetch(t);if(g.debug(`[AudioExtractor] Fetch response status for ${t}: ${p.status} (${p.statusText})`),!p.ok)throw new Error(`Failed to fetch audio source: ${p.statusText}`);let c=await p.arrayBuffer();g.debug(`[AudioExtractor] Fetched ${c.byteLength} bytes. Decoding audio data...`);let l=await a.decodeAudioData(c);g.debug(`[AudioExtractor] Decoded successfully: ${l.numberOfChannels} channels, sampleRate: ${l.sampleRate}, duration: ${l.duration}s`);let b=[];for(let u=0;u<l.numberOfChannels;u++)b.push(new Float32Array(l.getChannelData(u)));return{channels:b,sampleRate:l.sampleRate,startIndex:0,validFromSec:0,validToSec:Number.POSITIVE_INFINITY}}finally{a.close(),g.debug(`[AudioExtractor] AudioContext closed for ${t}`)}}let w=!1;try{g.debug(`[AudioExtractor] Server / Node.js detected. Acquiring from inputStore for ${t}...`);let i=await ue.acquire(t);w=!0,g.debug("[AudioExtractor] inputStore acquired. Retrieving primary audio track...");let a=await i.getPrimaryAudioTrack();if(!a)return g.warn(`[AudioExtractor] No primary audio track found in input for ${t}`),null;let p=new we(a),c=e?Math.max(0,e.startSec-$e):0,l=p.samples(c,e?.endSec),b=[],u=0,d=48e3,F=1,x=null;g.debug(`[AudioExtractor] Starting mediabunny generator loop for ${t}...`);for await(let r of l){x===null&&(x=r.timestamp),d=r.sampleRate,F=r.numberOfChannels;let A=r.numberOfFrames;if(b.length===0)for(let s=0;s<F;s++)b.push([]);for(let s=0;s<F;s++){let S;try{let $=r.allocationSize({planeIndex:s,format:"f32-planar"});S=new Float32Array($/4),r.copyTo(S,{planeIndex:s,format:"f32-planar"})}catch{let $=r.allocationSize({planeIndex:s});if(r.format==="s16"||r.format==="s16-planar"){let y=new Int16Array($/2);r.copyTo(y,{planeIndex:s}),S=new Float32Array(y.length);for(let T=0;T<y.length;T++)S[T]=(y[T]??0)/32768}else if(r.format==="s32"||r.format==="s32-planar"){let y=new Int32Array($/4);r.copyTo(y,{planeIndex:s}),S=new Float32Array(y.length);for(let T=0;T<y.length;T++)S[T]=(y[T]??0)/2147483648}else if(r.format==="u8"||r.format==="u8-planar"){let y=new Uint8Array($);r.copyTo(y,{planeIndex:s}),S=new Float32Array(y.length);for(let T=0;T<y.length;T++)S[T]=((y[T]??128)-128)/128}else S=new Float32Array($/4),r.copyTo(S,{planeIndex:s})}b[s].push(S)}u+=A,r.close()}if(g.debug(`[AudioExtractor] Generator loop finished. Decoded total frames: ${u}`),u===0||b.length===0)return null;let D=b.map(r=>{let A=new Float32Array(u),s=0;for(let S of r)A.set(S,s),s+=S.length;return A}),M=0;if(c>0&&x!==null){let r=await p.getSample(0),A=r?.timestamp??await a.getFirstTimestamp();r?.close(),M=Math.round((x-A)*d)}let R=!e||(M+u)/d<e.endSec;return{channels:D,sampleRate:d,startIndex:M,validFromSec:c>0&&e?e.startSec:0,validToSec:R||!e?Number.POSITIVE_INFINITY:e.endSec}}catch(i){if(i instanceof Error&&i.message.includes("Cannot open local media file"))throw i;if(typeof L<"u"&&L.versions?.node)try{let{execFileSync:a}=await import("./child_process-AIL2NBWS.mjs"),p=e?Math.round(Math.max(0,e.startSec)*48e3):0,c=p/48e3,l=a("ffmpeg",["-v","error",...c>0?["-ss",String(c)]:[],"-i",t,...e?["-t",String(e.endSec-c)]:[],"-f","f32le","-ar","48000","-ac","2","pipe:1"],{maxBuffer:Number.POSITIVE_INFINITY}),b=l.byteLength/4,u=b/2,d=new Float32Array(l.buffer,l.byteOffset,b),F=new Float32Array(u),x=new Float32Array(u);for(let M=0;M<u;M++)F[M]=d[M*2],x[M]=d[M*2+1];let D=!e||c+u/48e3<e.endSec;return{channels:[F,x],sampleRate:48e3,startIndex:p,validFromSec:c,validToSec:D||!e?Number.POSITIVE_INFINITY:e.endSec}}catch(a){g.warn({ffmpegErr:a},`[AudioExtractor] ffmpeg fallback decode failed for ${t}`)}return g.error({err:i},`[AudioExtractor] Failed to decode source ${t}`),null}finally{w&&ue.release(t)}}catch(o){if(o instanceof Error&&o.message.includes("Cannot open local media file"))throw o;return g.error({err:o},`[AudioExtractor] Failed to decode source ${t}`),null}}async function Fe(t,e,o,w,i,a,p=0){let c=new Float32Array(i),b=e/o*w,u=1e5;for(let d=0;d<i;d++){d>0&&d%u===0&&await xe();let F=a+d*b-p,x=Math.floor(F),D=Math.ceil(F);if(x<0){c[d]=0;continue}if(x>=t.length)break;let M=F-x,R=t[x]??0,r=D>=0&&D<t.length?t[D]??R:R,A=R+M*(r-R);c[d]=Number.isFinite(A)?A:0}return c}var ke=.05,ve=new Set(["Compositor","CompositorLayer"]);function Ne(t,e,o){let w=Math.max(0,-o),i=Math.min(e.length,t.length-o);for(let a=w;a<i;a++)t[o+a]+=e[a]}var ce=class{constructor(e){this.length=e}length;channels=null;get(){return this.channels??=[new Float32Array(this.length),new Float32Array(this.length)],this.channels}canAdopt(e,o){return this.channels===null&&o===0&&e.every(w=>w.length===this.length)}add(e,o){if(this.canAdopt(e,o)&&e[0]!==e[1]){this.channels=e;return}let w=this.get();for(let i=0;i<2;i++)Ne(w[i],e[i],o)}};function Oe(t){if(t.startsWith("data:"))return"inline audio";let e=t.split(/[?#]/)[0].split(/[\\/]/).pop();return e?_e(e):"audio"}function _e(t){try{return decodeURIComponent(t)}catch{return t}}async function Qe(t,e,o=48e3,w,i,a={}){g.debug(`[AudioExtractor] mixAudioTracks started. FPS: ${e}, targetSampleRate: ${o}`),await Re(),Se.registerSignalsFromComposition(i,t);let p=q(t)?.durationMs||1e3,c=p/1e3,l=Math.ceil(c*o);g.debug(`[AudioExtractor] Composition total duration: ${p}ms (${c}s). Total mixed samples to allocate: ${l}`);let b=new Map,u=new Set;async function d(n,m,f){if(u.has(n))return null;let h=b.get(n),E=h?.find(C=>C.validFromSec<=m&&C.validToSec>=f);if(E)return E;let k=await Me(n,{startSec:m,endSec:f});return k?(h||(h=[],b.set(n,h)),h.push(k),k):(u.add(n),null)}let F=new WeakMap;function x(n){let m=F.get(n);if(m!==void 0)return m;let f=n.operation,h=!1;if(f?.op==="source"){let E=ie(n);h=E==="Audio"||E==="Video"}else f?.op&&!ve.has(f.op)&&le.get(f.op)&&(h=!0);return!h&&n.children&&(h=n.children.some(E=>E&&x(E))),F.set(n,h),h}async function D(n,m,f,h,E,k){if(!n||!x(n))return null;let C=n.operation;if(!C){let O=q(n)?.durationMs??0,_=Math.round(O/1e3*e),Q=k!==null?_>0?Math.min(k,_):k:_,z=Math.ceil(Q/e*o);if(z<=0)return null;let X=new ce(z);for(let H of n.children){let Z=await D(H,m,f,h,E,Q);if(Z){let I=H.operation,ae=I?.startFrame??I?.timeline?.startFrame??0,P=Math.round(ae/e*o);X.add(Z,P)}}return X.channels}let Y=h*(C.volume??1)*(C.opacity===0?0:1)*(C.muted?0:1),de=E,Te=C.startFrame??C.timeline?.startFrame??0,me=f+Te,fe=C.timeline?.segments||[],W=C,he=W.op==="CompositorLayer"?(W.mediaStartFrame??W.trimStartFrames??null)!==null?(W.mediaStartFrame??W.trimStartFrames??0)/e:Math.round((W.trimStartSec??0)*e)/e:0,Ee=q(n)?.durationMs??0,re=Math.round(Ee/1e3*e),Ce=k!==null?re>0?Math.min(k,re):k:re,J=Math.ceil(Ce/e*o);if(J<=0)return null;let K=new ce(J),pe=async(O,_)=>{let Q=O?O.startSec:0,z=m+he+Q,X=me+_,H=0;O?H=Math.max(1,Math.round(((O.endSec??0)-O.startSec)*e)):H=re;let Z=k!==null?Math.min(k,H):H,I=Math.round(_/e*o);if(C.op==="source"){let P=ie(n),v=Ae(n);if(v.sourceUrl&&(P==="Audio"||P==="Video")&&Y>0){let G=Math.max(.5,de*(Number(v.speed)||1)),j=Math.max(0,(Number(v.trimStartSec)||0)+z),ne=Z/e,V=Math.min(J-I,Math.ceil(ne*o)),N=V>0&&I<J?await d(v.sourceUrl,j,j+V/o*G+ke):null;if(N){let ye=Math.round(j*N.sampleRate),U=await Fe(N.channels[0],N.sampleRate,o,G,V,ye,N.startIndex),ee=N.channels.length>1?await Fe(N.channels[1],N.sampleRate,o,G,V,ye,N.startIndex):U,Ie=[U,ee];if(K.canAdopt(Ie,I)){if(Y!==1){for(let B=0;B<V;B++)U[B]*=Y;if(ee!==U)for(let B=0;B<V;B++)ee[B]*=Y}K.channels=[U,ee===U?U.slice():ee]}else{let[B,Pe]=K.get();for(let oe=0;oe<V;oe++){let be=I+oe;B[be]+=U[oe]*Y,Pe[be]+=ee[oe]*Y}}}await xe()}(P==="Audio"||P==="Video")&&(r++,a.onProgress?.({done:r,total:R,...v.sourceUrl&&{source:Oe(v.sourceUrl)}}))}if(n.children)for(let P of n.children){let v=await D(P,z,X,Y,de,Z);if(v){let G=P.operation,j=G?.startFrame??G?.timeline?.startFrame??0,ne=Math.round(j/e*o);K.add(v,I+ne)}}let ae=le.get(C.op);if(ae)try{let P=Z/e,v=Math.min(J-I,Math.ceil(P*o));if(v>0&&I<J&&I>=0){let G=K.get().map(N=>N.subarray(I,I+v)),j=C.op==="CompositorLayer"?me:0,ne=((X-j)/e+z-he)*1e3,V=q(n)?.durationMs??void 0;await ae(G,o,n,{device:w,frame:X,fps:e,renderId:i,elapsedMs:ne,durationMs:V})}}catch(P){g.error({err:P},`[AudioExtractor] Custom plugin for operation '${C.op}' failed`)}};if(fe.length>0){let O=0;for(let _ of fe){let Q=(_.endSec??0)-_.startSec,z=Math.max(1,Math.round(Q*e));await pe(_,O),O+=z}}else await pe(null,0);return K.channels}let M=se(t,e),R=0,r=0;if(a.onProgress){let n=m=>{if(!m)return;let f=m.operation;if(f?.op==="source"){let h=ie(m);(h==="Audio"||h==="Video")&&(R+=Math.max(1,f.timeline?.segments?.length??0))}for(let h of m.children??[])n(h)};n(M),a.onProgress({done:0,total:R})}let A=await D(M,0,0,1,1,null),s=A?.every(n=>n.length===l)&&A[0]!==A[1]?A:[new Float32Array(l),new Float32Array(l)],[S,$]=s;if(A&&s!==A)for(let n=0;n<2;n++){let m=s[n],f=A[n],h=Math.min(f.length,m.length);for(let E=0;E<h;E++)m[E]=f[E]}b.clear();let y=0;for(let n=0;n<l;n++){let m=Math.abs(S[n]??0),f=Math.abs($[n]??0);m>y&&(y=m),f>y&&(y=f)}let T=y>.95?.92/y:1;for(let n=0;n<l;n++){let m=(S[n]??0)*T,f=($[n]??0)*T;S[n]=Number.isFinite(m)?Math.tanh(m):0,$[n]=Number.isFinite(f)?Math.tanh(f):0}return{channels:s,sampleRate:o}}export{Ke as a,Qe as b};
|
|
1
|
+
import{a as Se}from"./chunk-37EFVZWT.mjs";import{c as Ae}from"./chunk-2SJ4BBMT.mjs";import{i as ie,l as q}from"./chunk-24P6DAB3.mjs";import{c as we,e as ue}from"./chunk-KJGNTREI.mjs";import{D as le}from"./chunk-RNFYEZLL.mjs";import{d as L,e as te}from"./chunk-BVF64D6H.mjs";te();te();te();function ge(t,e){return Math.round(t*e)}function se(t,e,o={timeOffsetSec:0}){if(!t)return t;let{operation:w,metadata:i={},children:a=[]}=t,{timeOffsetSec:p,durationLimitMs:c}=o;if(!w)return{...t,children:(a||[]).map(r=>se(r,e,o))};let l=w.timeline,b=l?.segments||[],u=q(t)?.durationMs??0;if(b.length>0){let r=b.reduce((A,s)=>{let S=s.endSec!=null?s.endSec-s.startSec:0,$=Math.max(1,Math.round(S*e));return A+$},0);r>0&&(u=r/e*1e3)}let d={...w},F=l?.startFrame??d.startFrame;if(typeof F=="number"){let r=ge(p,e);d.startFrame=F-r}let x={...i,durationMs:u},M=typeof F=="number"||d.op==="compose"?{timeOffsetSec:0,durationLimitMs:void 0}:{timeOffsetSec:p,durationLimitMs:c},R=(a||[]).map(r=>se(r,e,M));return{metadata:x,operation:d,children:R}}var De=typeof L<"u"&&/^(debug|trace)$/i.test(L.env?.LOG_LEVEL??""),g={debug:(t,...e)=>{De&&(typeof t=="object"&&t!==null?console.info("[AudioExtractor]",t,...e):console.info(`[AudioExtractor] ${t}`,...e))},warn:(t,...e)=>{typeof t=="object"&&t!==null?console.warn("[AudioExtractor]",t,...e):console.warn(`[AudioExtractor] ${t}`,...e)},error:(t,...e)=>{typeof t=="object"&&t!==null?console.error("[AudioExtractor]",t,...e):console.error(`[AudioExtractor] ${t}`,...e)}},xe=()=>{if(typeof window>"u")return Promise.resolve();let t=globalThis.scheduler;return typeof t?.yield=="function"?t.yield():new Promise(e=>setTimeout(e,0))},Re=async(t=3e4)=>{await new Promise(o=>setTimeout(o,100));let e=Date.now();return new Promise(o=>{let w=()=>{let i=typeof window<"u"&&window.renderer_delayRenderHandles?window.renderer_delayRenderHandles:[],a=typeof globalThis<"u"?globalThis.__GATEWAI_DELAYS__:null,p=i.length>0,c=a instanceof Set&&a.size>0;if(!p&&!c){o();return}if(Date.now()-e>t){g.warn(`[AudioExtractor] waitForDelayRender timed out waiting for handles: ${JSON.stringify({browserHandles:i,globalDelays:a?Array.from(a):[]})}`),o();return}setTimeout(w,50)};w()})};async function Ke(t){let e=await Me(t);return e?{channels:e.channels,sampleRate:e.sampleRate}:null}var $e=.5;async function Me(t,e){g.debug(`[AudioExtractor] decodeAudioSource started for url: ${t}`);try{if(typeof window<"u"&&typeof window.document<"u"&&!(typeof L<"u"&&L.versions&&L.versions.node)){g.debug(`[AudioExtractor] Browser detected. Fetching arrayBuffer for ${t}...`);let i=window.AudioContext||window.webkitAudioContext;if(!i)throw new Error("AudioContext is not supported in this browser");let a=new i;try{let p=await fetch(t);if(g.debug(`[AudioExtractor] Fetch response status for ${t}: ${p.status} (${p.statusText})`),!p.ok)throw new Error(`Failed to fetch audio source: ${p.statusText}`);let c=await p.arrayBuffer();g.debug(`[AudioExtractor] Fetched ${c.byteLength} bytes. Decoding audio data...`);let l=await a.decodeAudioData(c);g.debug(`[AudioExtractor] Decoded successfully: ${l.numberOfChannels} channels, sampleRate: ${l.sampleRate}, duration: ${l.duration}s`);let b=[];for(let u=0;u<l.numberOfChannels;u++)b.push(new Float32Array(l.getChannelData(u)));return{channels:b,sampleRate:l.sampleRate,startIndex:0,validFromSec:0,validToSec:Number.POSITIVE_INFINITY}}finally{a.close(),g.debug(`[AudioExtractor] AudioContext closed for ${t}`)}}let w=!1;try{g.debug(`[AudioExtractor] Server / Node.js detected. Acquiring from inputStore for ${t}...`);let i=await ue.acquire(t);w=!0,g.debug("[AudioExtractor] inputStore acquired. Retrieving primary audio track...");let a=await i.getPrimaryAudioTrack();if(!a)return g.warn(`[AudioExtractor] No primary audio track found in input for ${t}`),null;let p=new we(a),c=e?Math.max(0,e.startSec-$e):0,l=p.samples(c,e?.endSec),b=[],u=0,d=48e3,F=1,x=null;g.debug(`[AudioExtractor] Starting mediabunny generator loop for ${t}...`);for await(let r of l){x===null&&(x=r.timestamp),d=r.sampleRate,F=r.numberOfChannels;let A=r.numberOfFrames;if(b.length===0)for(let s=0;s<F;s++)b.push([]);for(let s=0;s<F;s++){let S;try{let $=r.allocationSize({planeIndex:s,format:"f32-planar"});S=new Float32Array($/4),r.copyTo(S,{planeIndex:s,format:"f32-planar"})}catch{let $=r.allocationSize({planeIndex:s});if(r.format==="s16"||r.format==="s16-planar"){let y=new Int16Array($/2);r.copyTo(y,{planeIndex:s}),S=new Float32Array(y.length);for(let T=0;T<y.length;T++)S[T]=(y[T]??0)/32768}else if(r.format==="s32"||r.format==="s32-planar"){let y=new Int32Array($/4);r.copyTo(y,{planeIndex:s}),S=new Float32Array(y.length);for(let T=0;T<y.length;T++)S[T]=(y[T]??0)/2147483648}else if(r.format==="u8"||r.format==="u8-planar"){let y=new Uint8Array($);r.copyTo(y,{planeIndex:s}),S=new Float32Array(y.length);for(let T=0;T<y.length;T++)S[T]=((y[T]??128)-128)/128}else S=new Float32Array($/4),r.copyTo(S,{planeIndex:s})}b[s].push(S)}u+=A,r.close()}if(g.debug(`[AudioExtractor] Generator loop finished. Decoded total frames: ${u}`),u===0||b.length===0)return null;let D=b.map(r=>{let A=new Float32Array(u),s=0;for(let S of r)A.set(S,s),s+=S.length;return A}),M=0;if(c>0&&x!==null){let r=await p.getSample(0),A=r?.timestamp??await a.getFirstTimestamp();r?.close(),M=Math.round((x-A)*d)}let R=!e||(M+u)/d<e.endSec;return{channels:D,sampleRate:d,startIndex:M,validFromSec:c>0&&e?e.startSec:0,validToSec:R||!e?Number.POSITIVE_INFINITY:e.endSec}}catch(i){if(i instanceof Error&&i.message.includes("Cannot open local media file"))throw i;if(typeof L<"u"&&L.versions?.node)try{let{execFileSync:a}=await import("./child_process-AIL2NBWS.mjs"),p=e?Math.round(Math.max(0,e.startSec)*48e3):0,c=p/48e3,l=a("ffmpeg",["-v","error",...c>0?["-ss",String(c)]:[],"-i",t,...e?["-t",String(e.endSec-c)]:[],"-f","f32le","-ar","48000","-ac","2","pipe:1"],{maxBuffer:Number.POSITIVE_INFINITY}),b=l.byteLength/4,u=b/2,d=new Float32Array(l.buffer,l.byteOffset,b),F=new Float32Array(u),x=new Float32Array(u);for(let M=0;M<u;M++)F[M]=d[M*2],x[M]=d[M*2+1];let D=!e||c+u/48e3<e.endSec;return{channels:[F,x],sampleRate:48e3,startIndex:p,validFromSec:c,validToSec:D||!e?Number.POSITIVE_INFINITY:e.endSec}}catch(a){g.warn({ffmpegErr:a},`[AudioExtractor] ffmpeg fallback decode failed for ${t}`)}return g.error({err:i},`[AudioExtractor] Failed to decode source ${t}`),null}finally{w&&ue.release(t)}}catch(o){if(o instanceof Error&&o.message.includes("Cannot open local media file"))throw o;return g.error({err:o},`[AudioExtractor] Failed to decode source ${t}`),null}}async function Fe(t,e,o,w,i,a,p=0){let c=new Float32Array(i),b=e/o*w,u=1e5;for(let d=0;d<i;d++){d>0&&d%u===0&&await xe();let F=a+d*b-p,x=Math.floor(F),D=Math.ceil(F);if(x<0){c[d]=0;continue}if(x>=t.length)break;let M=F-x,R=t[x]??0,r=D>=0&&D<t.length?t[D]??R:R,A=R+M*(r-R);c[d]=Number.isFinite(A)?A:0}return c}var ke=.05,ve=new Set(["Compositor","CompositorLayer"]);function Ne(t,e,o){let w=Math.max(0,-o),i=Math.min(e.length,t.length-o);for(let a=w;a<i;a++)t[o+a]+=e[a]}var ce=class{constructor(e){this.length=e}length;channels=null;get(){return this.channels??=[new Float32Array(this.length),new Float32Array(this.length)],this.channels}canAdopt(e,o){return this.channels===null&&o===0&&e.every(w=>w.length===this.length)}add(e,o){if(this.canAdopt(e,o)&&e[0]!==e[1]){this.channels=e;return}let w=this.get();for(let i=0;i<2;i++)Ne(w[i],e[i],o)}};function Oe(t){if(t.startsWith("data:"))return"inline audio";let e=t.split(/[?#]/)[0].split(/[\\/]/).pop();return e?_e(e):"audio"}function _e(t){try{return decodeURIComponent(t)}catch{return t}}async function Qe(t,e,o=48e3,w,i,a={}){g.debug(`[AudioExtractor] mixAudioTracks started. FPS: ${e}, targetSampleRate: ${o}`),await Re(),Se.registerSignalsFromComposition(i,t);let p=q(t)?.durationMs||1e3,c=p/1e3,l=Math.ceil(c*o);g.debug(`[AudioExtractor] Composition total duration: ${p}ms (${c}s). Total mixed samples to allocate: ${l}`);let b=new Map,u=new Set;async function d(n,m,f){if(u.has(n))return null;let h=b.get(n),E=h?.find(C=>C.validFromSec<=m&&C.validToSec>=f);if(E)return E;let k=await Me(n,{startSec:m,endSec:f});return k?(h||(h=[],b.set(n,h)),h.push(k),k):(u.add(n),null)}let F=new WeakMap;function x(n){let m=F.get(n);if(m!==void 0)return m;let f=n.operation,h=!1;if(f?.op==="source"){let E=ie(n);h=E==="Audio"||E==="Video"}else f?.op&&!ve.has(f.op)&&le.get(f.op)&&(h=!0);return!h&&n.children&&(h=n.children.some(E=>E&&x(E))),F.set(n,h),h}async function D(n,m,f,h,E,k){if(!n||!x(n))return null;let C=n.operation;if(!C){let O=q(n)?.durationMs??0,_=Math.round(O/1e3*e),Q=k!==null?_>0?Math.min(k,_):k:_,z=Math.ceil(Q/e*o);if(z<=0)return null;let X=new ce(z);for(let H of n.children){let Z=await D(H,m,f,h,E,Q);if(Z){let I=H.operation,ae=I?.startFrame??I?.timeline?.startFrame??0,P=Math.round(ae/e*o);X.add(Z,P)}}return X.channels}let Y=h*(C.volume??1)*(C.opacity===0?0:1)*(C.muted?0:1),de=E,Te=C.startFrame??C.timeline?.startFrame??0,me=f+Te,fe=C.timeline?.segments||[],W=C,he=W.op==="CompositorLayer"?(W.mediaStartFrame??W.trimStartFrames??null)!==null?(W.mediaStartFrame??W.trimStartFrames??0)/e:Math.round((W.trimStartSec??0)*e)/e:0,Ee=q(n)?.durationMs??0,re=Math.round(Ee/1e3*e),Ce=k!==null?re>0?Math.min(k,re):k:re,J=Math.ceil(Ce/e*o);if(J<=0)return null;let K=new ce(J),pe=async(O,_)=>{let Q=O?O.startSec:0,z=m+he+Q,X=me+_,H=0;O?H=Math.max(1,Math.round(((O.endSec??0)-O.startSec)*e)):H=re;let Z=k!==null?Math.min(k,H):H,I=Math.round(_/e*o);if(C.op==="source"){let P=ie(n),v=Ae(n);if(v.sourceUrl&&(P==="Audio"||P==="Video")&&Y>0){let G=Math.max(.5,de*(Number(v.speed)||1)),j=Math.max(0,(Number(v.trimStartSec)||0)+z),ne=Z/e,V=Math.min(J-I,Math.ceil(ne*o)),N=V>0&&I<J?await d(v.sourceUrl,j,j+V/o*G+ke):null;if(N){let ye=Math.round(j*N.sampleRate),U=await Fe(N.channels[0],N.sampleRate,o,G,V,ye,N.startIndex),ee=N.channels.length>1?await Fe(N.channels[1],N.sampleRate,o,G,V,ye,N.startIndex):U,Ie=[U,ee];if(K.canAdopt(Ie,I)){if(Y!==1){for(let B=0;B<V;B++)U[B]*=Y;if(ee!==U)for(let B=0;B<V;B++)ee[B]*=Y}K.channels=[U,ee===U?U.slice():ee]}else{let[B,Pe]=K.get();for(let oe=0;oe<V;oe++){let be=I+oe;B[be]+=U[oe]*Y,Pe[be]+=ee[oe]*Y}}}await xe()}(P==="Audio"||P==="Video")&&(r++,a.onProgress?.({done:r,total:R,...v.sourceUrl&&{source:Oe(v.sourceUrl)}}))}if(n.children)for(let P of n.children){let v=await D(P,z,X,Y,de,Z);if(v){let G=P.operation,j=G?.startFrame??G?.timeline?.startFrame??0,ne=Math.round(j/e*o);K.add(v,I+ne)}}let ae=le.get(C.op);if(ae)try{let P=Z/e,v=Math.min(J-I,Math.ceil(P*o));if(v>0&&I<J&&I>=0){let G=K.get().map(N=>N.subarray(I,I+v)),j=C.op==="CompositorLayer"?me:0,ne=((X-j)/e+z-he)*1e3,V=q(n)?.durationMs??void 0;await ae(G,o,n,{device:w,frame:X,fps:e,renderId:i,elapsedMs:ne,durationMs:V})}}catch(P){g.error({err:P},`[AudioExtractor] Custom plugin for operation '${C.op}' failed`)}};if(fe.length>0){let O=0;for(let _ of fe){let Q=(_.endSec??0)-_.startSec,z=Math.max(1,Math.round(Q*e));await pe(_,O),O+=z}}else await pe(null,0);return K.channels}let M=se(t,e),R=0,r=0;if(a.onProgress){let n=m=>{if(!m)return;let f=m.operation;if(f?.op==="source"){let h=ie(m);(h==="Audio"||h==="Video")&&(R+=Math.max(1,f.timeline?.segments?.length??0))}for(let h of m.children??[])n(h)};n(M),a.onProgress({done:0,total:R})}let A=await D(M,0,0,1,1,null),s=A?.every(n=>n.length===l)&&A[0]!==A[1]?A:[new Float32Array(l),new Float32Array(l)],[S,$]=s;if(A&&s!==A)for(let n=0;n<2;n++){let m=s[n],f=A[n],h=Math.min(f.length,m.length);for(let E=0;E<h;E++)m[E]=f[E]}b.clear();let y=0;for(let n=0;n<l;n++){let m=Math.abs(S[n]??0),f=Math.abs($[n]??0);m>y&&(y=m),f>y&&(y=f)}let T=y>.95?.92/y:1;for(let n=0;n<l;n++){let m=(S[n]??0)*T,f=($[n]??0)*T;S[n]=Number.isFinite(m)?Math.tanh(m):0,$[n]=Number.isFinite(f)?Math.tanh(f):0}return{channels:s,sampleRate:o}}export{Ke as a,Qe as b};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as c}from"./chunk-
|
|
1
|
+
import{a as c}from"./chunk-MA4YVA2E.mjs";import{A as p,c as f,e as m,z as n}from"./chunk-RNFYEZLL.mjs";import{e as t}from"./chunk-BVF64D6H.mjs";t();t();var k=["delayTime","feedback","wet","dry"],P=()=>`
|
|
2
2
|
struct Uniforms {
|
|
3
3
|
sampleRate : f32,
|
|
4
4
|
delaySec : f32,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b}from"./chunk-QKQYHPBK.mjs";import{a as l}from"./chunk-DUEY7AXY.mjs";import{a as g}from"./chunk-6YJP57MZ.mjs";import{l as n}from"./chunk-RNFYEZLL.mjs";import{e as c}from"./chunk-BVF64D6H.mjs";c();var S={async extractFromChannels(a,u,r={}){let x=await b(),t=r.fps??24,p=r.targetWidth??512,e=await g.extractFeatures(x,a,u,t,r,p),i=e.channelSamples??{primary:new Float32Array(e.numFrames),beat:new Float32Array(e.numFrames),bass:new Float32Array(e.numFrames),energy:new Float32Array(e.numFrames)},y={nodeId:"audio_primary",channel:"primary",textureView:e.textureView,texture:e.texture,buffer:e.primaryBuffer,stats:e.stats.primary},w={nodeId:"audio_beat",channel:"beat",textureView:e.textureView,texture:e.texture,buffer:e.beatBuffer,stats:e.stats.beat},B={nodeId:"audio_bass",channel:"bass",textureView:e.textureView,texture:e.texture,buffer:e.bassBuffer,stats:e.stats.bass},F={nodeId:"audio_energy",channel:"energy",textureView:e.textureView,texture:e.texture,buffer:e.energyBuffer,stats:e.stats.energy},o=n(i.primary,t,y),m=n(i.beat,t,w),d=n(i.bass,t,B),f=n(i.energy,t,F);return{primary:o,beat:m,bass:d,energy:f,durationSec:e.durationSec,numFrames:e.numFrames,sampleRate:u,textureView:e.textureView,texture:e.texture,primaryBuffer:e.primaryBuffer,beatBuffer:e.beatBuffer,bassBuffer:e.bassBuffer,energyBuffer:e.energyBuffer,seekFrame(s){o.seekFrame?.(s),m.seekFrame?.(s),d.seekFrame?.(s),f.seekFrame?.(s)}}},async extract(a,u={}){let r=await l(a);if(!r||r.channels.length===0)throw new Error(`Failed to decode audio source for feature extraction: ${a}`);return S.extractFromChannels(r.channels,r.sampleRate,u)}};export{S as a};
|