@omnimedia/omnitool 1.1.0-9 → 1.1.0-91
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/README.md +358 -73
- package/package.json +19 -17
- package/s/context.ts +0 -7
- package/s/demo/demo.bundle.ts +104 -43
- package/s/demo/demo.css +244 -14
- package/s/demo/routines/export-test.ts +16 -0
- package/s/demo/routines/filmstrip-test.ts +22 -18
- package/s/demo/routines/load-video.ts +2 -3
- package/s/demo/routines/playback-test.ts +61 -0
- package/s/demo/routines/timeline-setup.ts +49 -0
- package/s/demo/routines/transcode-test.ts +19 -5
- package/s/demo/routines/transitions-test.ts +2 -2
- package/s/demo/routines/waveform-test.ts +35 -8
- package/s/driver/driver-worker.ts +9 -0
- package/s/driver/driver.test.ts +1 -1
- package/s/driver/driver.ts +43 -42
- package/s/driver/fns/schematic.ts +26 -6
- package/s/driver/fns/work.ts +65 -189
- package/s/driver/parts/compositor.ts +316 -0
- package/s/driver/parts/machina.ts +19 -20
- package/s/driver/utils/find-pixi-filter.ts +24 -0
- package/s/index.html.ts +103 -25
- package/s/index.ts +1 -0
- package/s/tests.bundle.ts +11 -0
- package/s/tests.html.ts +28 -0
- package/s/timeline/index.ts +9 -1
- package/s/timeline/parts/animations/make.ts +38 -0
- package/s/timeline/parts/animations/presets.ts +138 -0
- package/s/timeline/parts/animations/properties.ts +30 -0
- package/s/timeline/parts/animations/registry.ts +13 -0
- package/s/timeline/parts/animations/types.ts +80 -0
- package/s/timeline/parts/filmstrip.ts +43 -16
- package/s/timeline/parts/filters.ts +453 -0
- package/s/timeline/parts/item.ts +59 -7
- package/s/timeline/parts/media.ts +12 -2
- package/s/timeline/parts/resource-pool.ts +8 -5
- package/s/timeline/parts/resource.ts +3 -0
- package/s/timeline/parts/waveform/parts/collect.ts +72 -0
- package/s/timeline/parts/waveform/parts/render.ts +45 -0
- package/s/timeline/parts/waveform/parts/types.ts +24 -0
- package/s/timeline/parts/waveform/waveform.ts +161 -0
- package/s/timeline/renderers/export/parts/audio-gain.ts +17 -0
- package/s/timeline/renderers/export/parts/audio-mix.ts +133 -0
- package/s/timeline/renderers/export/parts/cursor.ts +292 -0
- package/s/timeline/renderers/export/parts/produce-audio.ts +64 -0
- package/s/timeline/renderers/export/parts/produce-video.ts +49 -0
- package/s/timeline/renderers/export/parts/resamplers.ts +48 -0
- package/s/timeline/renderers/export/produce.ts +28 -0
- package/s/timeline/renderers/parts/handy.ts +418 -0
- package/s/timeline/renderers/parts/samplers/audio/parts/find.ts +19 -0
- package/s/timeline/renderers/parts/samplers/audio/parts/init.ts +60 -0
- package/s/timeline/renderers/parts/samplers/audio/parts/sink.ts +38 -0
- package/s/timeline/renderers/parts/samplers/audio/parts/types.ts +16 -0
- package/s/timeline/renderers/parts/samplers/audio/sampler.ts +35 -0
- package/s/timeline/renderers/parts/samplers/visual/parts/defaults.ts +16 -0
- package/s/timeline/renderers/parts/samplers/visual/parts/sample.ts +69 -0
- package/s/timeline/renderers/parts/samplers/visual/parts/sequence.ts +111 -0
- package/s/timeline/renderers/parts/samplers/visual/parts/sink.ts +38 -0
- package/s/timeline/renderers/parts/samplers/visual/parts/transition.ts +28 -0
- package/s/timeline/renderers/parts/samplers/visual/parts/types.ts +10 -0
- package/s/timeline/renderers/parts/samplers/visual/sampler.ts +28 -0
- package/s/timeline/renderers/parts/schedulers.ts +96 -0
- package/s/timeline/renderers/player/parts/playback.ts +213 -0
- package/s/timeline/renderers/player/player.ts +86 -0
- package/s/timeline/renderers/renderers.test.ts +403 -0
- package/s/timeline/sugar/helpers.ts +215 -0
- package/s/timeline/sugar/o.ts +274 -54
- package/s/timeline/sugar/omni.test.ts +210 -0
- package/s/timeline/sugar/omni.ts +25 -9
- package/s/timeline/types.ts +36 -3
- package/s/timeline/utils/anim.ts +63 -0
- package/s/timeline/utils/checksum.ts +3 -1
- package/s/timeline/utils/datafile.ts +15 -4
- package/s/timeline/utils/dummy-data.ts +3 -3
- package/s/timeline/utils/matrix.ts +21 -0
- package/s/timeline/utils/terps.ts +81 -0
- package/s/units/fps.ts +8 -0
- package/s/units/ms.ts +8 -0
- package/s/units/seconds.ts +8 -0
- package/x/WebGLRenderer-4CHIZDHY.js +2 -0
- package/x/WebGLRenderer-4CHIZDHY.js.map +7 -0
- package/x/WebGPURenderer-O6WXU2QR.js +2 -0
- package/x/WebGPURenderer-O6WXU2QR.js.map +7 -0
- package/x/browserAll-WNIOTNNP.js +2 -0
- package/x/browserAll-WNIOTNNP.js.map +7 -0
- package/x/chunk-23FOBGX6.js +2 -0
- package/x/chunk-23FOBGX6.js.map +7 -0
- package/x/chunk-73XOWA4F.js +393 -0
- package/x/chunk-73XOWA4F.js.map +7 -0
- package/x/chunk-IAWJKNX5.js +42 -0
- package/x/chunk-IAWJKNX5.js.map +7 -0
- package/x/chunk-KCMVLWBS.js +157 -0
- package/x/chunk-KCMVLWBS.js.map +7 -0
- package/x/chunk-MR32SQ27.js +2 -0
- package/x/chunk-MR32SQ27.js.map +7 -0
- package/x/chunk-VCUJJYRJ.js +327 -0
- package/x/chunk-VCUJJYRJ.js.map +7 -0
- package/x/chunk-XNIZ4L5W.js +269 -0
- package/x/chunk-XNIZ4L5W.js.map +7 -0
- package/x/chunk-ZLGNQFUI.js +15 -0
- package/x/chunk-ZLGNQFUI.js.map +7 -0
- package/x/context.d.ts +1 -4
- package/x/context.js +1 -5
- package/x/context.js.map +1 -1
- package/x/demo/WebGLRenderer-RSJAHIG2.js +2 -0
- package/x/demo/WebGLRenderer-RSJAHIG2.js.map +7 -0
- package/x/demo/WebGPURenderer-MGFAJCYY.js +2 -0
- package/x/demo/WebGPURenderer-MGFAJCYY.js.map +7 -0
- package/x/demo/browserAll-PTRBXBRP.js +2 -0
- package/x/demo/browserAll-PTRBXBRP.js.map +7 -0
- package/x/demo/chunk-CUYOGHWU.js +42 -0
- package/x/demo/chunk-CUYOGHWU.js.map +7 -0
- package/x/demo/chunk-DGTDNJ7W.js +2 -0
- package/x/demo/chunk-DGTDNJ7W.js.map +7 -0
- package/x/demo/chunk-FZ5BYF63.js +15 -0
- package/x/demo/chunk-FZ5BYF63.js.map +7 -0
- package/x/demo/chunk-KWN4NNES.js +269 -0
- package/x/demo/chunk-KWN4NNES.js.map +7 -0
- package/x/demo/chunk-OJ3FPXW7.js +157 -0
- package/x/demo/chunk-OJ3FPXW7.js.map +7 -0
- package/x/demo/chunk-PSLUOGTZ.js +393 -0
- package/x/demo/chunk-PSLUOGTZ.js.map +7 -0
- package/x/demo/chunk-VLCVEIFU.js +327 -0
- package/x/demo/chunk-VLCVEIFU.js.map +7 -0
- package/x/demo/chunk-ZWCPT5FR.js +2 -0
- package/x/demo/chunk-ZWCPT5FR.js.map +7 -0
- package/x/demo/demo.bundle.js +94 -40
- package/x/demo/demo.bundle.js.map +1 -1
- package/x/demo/demo.bundle.min.js +7340 -90
- package/x/demo/demo.bundle.min.js.map +4 -4
- package/x/demo/demo.css +244 -14
- package/x/demo/routines/export-test.d.ts +2 -0
- package/x/demo/routines/export-test.js +10 -0
- package/x/demo/routines/export-test.js.map +1 -0
- package/x/demo/routines/filmstrip-test.d.ts +1 -1
- package/x/demo/routines/filmstrip-test.js +20 -17
- package/x/demo/routines/filmstrip-test.js.map +1 -1
- package/x/demo/routines/load-video.d.ts +1 -1
- package/x/demo/routines/load-video.js +1 -2
- package/x/demo/routines/load-video.js.map +1 -1
- package/x/demo/routines/playback-test.d.ts +2 -0
- package/x/demo/routines/playback-test.js +51 -0
- package/x/demo/routines/playback-test.js.map +1 -0
- package/x/demo/routines/timeline-setup.d.ts +6 -0
- package/x/demo/routines/timeline-setup.js +33 -0
- package/x/demo/routines/timeline-setup.js.map +1 -0
- package/x/demo/routines/transcode-test.js +15 -5
- package/x/demo/routines/transcode-test.js.map +1 -1
- package/x/demo/routines/transitions-test.js +2 -2
- package/x/demo/routines/transitions-test.js.map +1 -1
- package/x/demo/routines/waveform-test.d.ts +2 -1
- package/x/demo/routines/waveform-test.js +29 -8
- package/x/demo/routines/waveform-test.js.map +1 -1
- package/x/demo/webworkerAll-JENRT6BT.js +2 -0
- package/x/demo/webworkerAll-JENRT6BT.js.map +7 -0
- package/x/driver/driver-worker.d.ts +1 -0
- package/x/driver/driver-worker.js +6 -0
- package/x/driver/driver-worker.js.map +1 -0
- package/x/driver/driver.d.ts +25 -8
- package/x/driver/driver.js +43 -39
- package/x/driver/driver.js.map +1 -1
- package/x/driver/driver.test.js +1 -1
- package/x/driver/driver.test.js.map +1 -1
- package/x/driver/driver.worker.bundle.min.js +117 -3506
- package/x/driver/driver.worker.bundle.min.js.map +4 -4
- package/x/driver/fns/host.d.ts +3 -2
- package/x/driver/fns/schematic.d.ts +25 -4
- package/x/driver/fns/work.d.ts +4 -4
- package/x/driver/fns/work.js +55 -155
- package/x/driver/fns/work.js.map +1 -1
- package/x/driver/parts/compositor.d.ts +39 -0
- package/x/driver/parts/compositor.js +261 -0
- package/x/driver/parts/compositor.js.map +1 -0
- package/x/driver/parts/machina.d.ts +0 -20
- package/x/driver/parts/machina.js +6 -10
- package/x/driver/parts/machina.js.map +1 -1
- package/x/driver/utils/find-pixi-filter.d.ts +5 -0
- package/x/driver/utils/find-pixi-filter.js +13 -0
- package/x/driver/utils/find-pixi-filter.js.map +1 -0
- package/x/features/speech/transcribe/parts/prep-audio.d.ts +1 -1
- package/x/features/speech/transcribe/worker.bundle.min.js +899 -899
- package/x/features/speech/transcribe/worker.bundle.min.js.map +4 -4
- package/x/index.d.ts +1 -0
- package/x/index.html +347 -38
- package/x/index.html.js +103 -24
- package/x/index.html.js.map +1 -1
- package/x/index.js +1 -0
- package/x/index.js.map +1 -1
- package/x/tests.bundle.js +8 -0
- package/x/tests.bundle.js.map +1 -0
- package/x/tests.bundle.min.js +7374 -0
- package/x/tests.bundle.min.js.map +7 -0
- package/x/tests.html +316 -0
- package/x/tests.html.d.ts +2 -0
- package/x/tests.html.js +22 -0
- package/x/tests.html.js.map +1 -0
- package/x/timeline/index.d.ts +8 -0
- package/x/timeline/index.js +8 -0
- package/x/timeline/index.js.map +1 -1
- package/x/timeline/parts/animations/make.d.ts +3 -0
- package/x/timeline/parts/animations/make.js +29 -0
- package/x/timeline/parts/animations/make.js.map +1 -0
- package/x/timeline/parts/animations/presets.d.ts +170 -0
- package/x/timeline/parts/animations/presets.js +135 -0
- package/x/timeline/parts/animations/presets.js.map +1 -0
- package/x/timeline/parts/animations/properties.d.ts +84 -0
- package/x/timeline/parts/animations/properties.js +25 -0
- package/x/timeline/parts/animations/properties.js.map +1 -0
- package/x/timeline/parts/animations/registry.d.ts +218 -0
- package/x/timeline/parts/animations/registry.js +11 -0
- package/x/timeline/parts/animations/registry.js.map +1 -0
- package/x/timeline/parts/animations/types.d.ts +60 -0
- package/x/timeline/parts/animations/types.js.map +1 -0
- package/x/timeline/parts/filmstrip.d.ts +4 -3
- package/x/timeline/parts/filmstrip.js +29 -10
- package/x/timeline/parts/filmstrip.js.map +1 -1
- package/x/timeline/parts/filters.d.ts +108 -0
- package/x/timeline/parts/filters.js +340 -0
- package/x/timeline/parts/filters.js.map +1 -0
- package/x/timeline/parts/item.d.ts +47 -4
- package/x/timeline/parts/item.js +4 -1
- package/x/timeline/parts/item.js.map +1 -1
- package/x/timeline/parts/media.d.ts +2 -0
- package/x/timeline/parts/media.js +11 -2
- package/x/timeline/parts/media.js.map +1 -1
- package/x/timeline/parts/resource-pool.d.ts +3 -0
- package/x/timeline/parts/resource-pool.js +7 -4
- package/x/timeline/parts/resource-pool.js.map +1 -1
- package/x/timeline/parts/resource.d.ts +3 -0
- package/x/timeline/parts/waveform/parts/collect.d.ts +11 -0
- package/x/timeline/parts/waveform/parts/collect.js +56 -0
- package/x/timeline/parts/waveform/parts/collect.js.map +1 -0
- package/x/timeline/parts/waveform/parts/render.d.ts +5 -0
- package/x/timeline/parts/waveform/parts/render.js +29 -0
- package/x/timeline/parts/waveform/parts/render.js.map +1 -0
- package/x/timeline/parts/waveform/parts/types.d.ts +21 -0
- package/x/timeline/parts/waveform/parts/types.js +2 -0
- package/x/timeline/parts/waveform/parts/types.js.map +1 -0
- package/x/timeline/parts/waveform/waveform.d.ts +19 -0
- package/x/timeline/parts/waveform/waveform.js +133 -0
- package/x/timeline/parts/waveform/waveform.js.map +1 -0
- package/x/timeline/renderers/export/parts/audio-gain.d.ts +1 -0
- package/x/timeline/renderers/export/parts/audio-gain.js +13 -0
- package/x/timeline/renderers/export/parts/audio-gain.js.map +1 -0
- package/x/timeline/renderers/export/parts/audio-mix.d.ts +21 -0
- package/x/timeline/renderers/export/parts/audio-mix.js +89 -0
- package/x/timeline/renderers/export/parts/audio-mix.js.map +1 -0
- package/x/timeline/renderers/export/parts/cursor.d.ts +35 -0
- package/x/timeline/renderers/export/parts/cursor.js +237 -0
- package/x/timeline/renderers/export/parts/cursor.js.map +1 -0
- package/x/timeline/renderers/export/parts/produce-audio.d.ts +6 -0
- package/x/timeline/renderers/export/parts/produce-audio.js +41 -0
- package/x/timeline/renderers/export/parts/produce-audio.js.map +1 -0
- package/x/timeline/renderers/export/parts/produce-video.d.ts +10 -0
- package/x/timeline/renderers/export/parts/produce-video.js +26 -0
- package/x/timeline/renderers/export/parts/produce-video.js.map +1 -0
- package/x/timeline/renderers/export/parts/resamplers.d.ts +12 -0
- package/x/timeline/renderers/export/parts/resamplers.js +29 -0
- package/x/timeline/renderers/export/parts/resamplers.js.map +1 -0
- package/x/timeline/renderers/export/produce.d.ts +13 -0
- package/x/timeline/renderers/export/produce.js +15 -0
- package/x/timeline/renderers/export/produce.js.map +1 -0
- package/x/timeline/renderers/parts/handy.d.ts +36 -0
- package/x/timeline/renderers/parts/handy.js +254 -0
- package/x/timeline/renderers/parts/handy.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/find.d.ts +6 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/find.js +15 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/find.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/init.d.ts +5 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/init.js +40 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/init.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/sink.d.ts +8 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/sink.js +24 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/sink.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/types.d.ts +14 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/types.js +2 -0
- package/x/timeline/renderers/parts/samplers/audio/parts/types.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/audio/sampler.d.ts +11 -0
- package/x/timeline/renderers/parts/samplers/audio/sampler.js +22 -0
- package/x/timeline/renderers/parts/samplers/audio/sampler.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/defaults.d.ts +5 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/defaults.js +10 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/defaults.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sample.d.ts +6 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sample.js +48 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sample.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sequence.d.ts +6 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sequence.js +75 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sequence.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sink.d.ts +8 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sink.js +24 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/sink.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/transition.d.ts +3 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/transition.js +18 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/transition.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/types.d.ts +8 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/types.js +2 -0
- package/x/timeline/renderers/parts/samplers/visual/parts/types.js.map +1 -0
- package/x/timeline/renderers/parts/samplers/visual/sampler.d.ts +7 -0
- package/x/timeline/renderers/parts/samplers/visual/sampler.js +17 -0
- package/x/timeline/renderers/parts/samplers/visual/sampler.js.map +1 -0
- package/x/timeline/renderers/parts/schedulers.d.ts +17 -0
- package/x/timeline/renderers/parts/schedulers.js +64 -0
- package/x/timeline/renderers/parts/schedulers.js.map +1 -0
- package/x/timeline/renderers/player/parts/playback.d.ts +39 -0
- package/x/timeline/renderers/player/parts/playback.js +160 -0
- package/x/timeline/renderers/player/parts/playback.js.map +1 -0
- package/x/timeline/renderers/player/player.d.ts +27 -0
- package/x/timeline/renderers/player/player.js +64 -0
- package/x/timeline/renderers/player/player.js.map +1 -0
- package/x/timeline/renderers/renderers.test.d.ts +33 -0
- package/x/timeline/renderers/renderers.test.js +321 -0
- package/x/timeline/renderers/renderers.test.js.map +1 -0
- package/x/timeline/sugar/helpers.d.ts +64 -0
- package/x/timeline/sugar/helpers.js +114 -0
- package/x/timeline/sugar/helpers.js.map +1 -0
- package/x/timeline/sugar/o.d.ts +38 -9
- package/x/timeline/sugar/o.js +200 -39
- package/x/timeline/sugar/o.js.map +1 -1
- package/x/timeline/sugar/omni.d.ts +9 -3
- package/x/timeline/sugar/omni.js +20 -7
- package/x/timeline/sugar/omni.js.map +1 -1
- package/x/timeline/sugar/omni.test.d.ts +27 -0
- package/x/timeline/sugar/omni.test.js +128 -0
- package/x/timeline/sugar/omni.test.js.map +1 -0
- package/x/timeline/types.d.ts +15 -2
- package/x/timeline/utils/anim.d.ts +3 -0
- package/x/timeline/utils/anim.js +40 -0
- package/x/timeline/utils/anim.js.map +1 -0
- package/x/timeline/utils/checksum.d.ts +3 -2
- package/x/timeline/utils/checksum.js.map +1 -1
- package/x/timeline/utils/datafile.d.ts +5 -3
- package/x/timeline/utils/datafile.js +18 -5
- package/x/timeline/utils/datafile.js.map +1 -1
- package/x/timeline/utils/dummy-data.d.ts +1 -2
- package/x/timeline/utils/dummy-data.js +4 -2
- package/x/timeline/utils/dummy-data.js.map +1 -1
- package/x/timeline/utils/matrix.d.ts +9 -0
- package/x/timeline/utils/matrix.js +10 -0
- package/x/timeline/utils/matrix.js.map +1 -1
- package/x/timeline/utils/terps.d.ts +11 -0
- package/x/timeline/utils/terps.js +57 -0
- package/x/timeline/utils/terps.js.map +1 -0
- package/x/units/fps.d.ts +6 -0
- package/x/units/fps.js +2 -0
- package/x/units/fps.js.map +1 -0
- package/x/units/ms.d.ts +6 -0
- package/x/units/ms.js +2 -0
- package/x/units/ms.js.map +1 -0
- package/x/units/seconds.d.ts +6 -0
- package/x/units/seconds.js +2 -0
- package/x/units/seconds.js.map +1 -0
- package/x/webworkerAll-RLCTMSDD.js +2 -0
- package/x/webworkerAll-RLCTMSDD.js.map +7 -0
- package/s/tests.test.ts +0 -8
- package/s/timeline/parts/compositor/export.ts +0 -77
- package/s/timeline/parts/compositor/parts/html-tree.ts +0 -37
- package/s/timeline/parts/compositor/parts/schedulers.ts +0 -85
- package/s/timeline/parts/compositor/parts/tree-builder.ts +0 -184
- package/s/timeline/parts/compositor/parts/webcodecs-tree.ts +0 -30
- package/s/timeline/parts/compositor/playback.ts +0 -81
- package/s/timeline/parts/compositor/samplers/html.ts +0 -115
- package/s/timeline/parts/compositor/samplers/webcodecs.ts +0 -60
- package/s/timeline/parts/waveform.ts +0 -62
- package/s/timeline/sugar/builders.ts +0 -102
- package/s/timeline/sugar/omni-test.ts +0 -38
- package/s/timeline/utils/audio-stream.ts +0 -15
- package/s/timeline/utils/video-cursor.ts +0 -40
- package/s/tools/common/loader.ts +0 -26
- package/s/tools/common/transformer-pipeline.ts +0 -26
- package/s/tools/speech-recognition/common/model.ts +0 -26
- package/s/tools/speech-recognition/whisper/fns/host.ts +0 -25
- package/s/tools/speech-recognition/whisper/fns/schematic.ts +0 -23
- package/s/tools/speech-recognition/whisper/fns/work.ts +0 -91
- package/s/tools/speech-recognition/whisper/parts/types.ts +0 -38
- package/s/tools/speech-recognition/whisper/parts/worker.bundle.ts +0 -7
- package/s/tools/speech-recognition/whisper/tool.ts +0 -70
- package/x/tests.test.js +0 -6
- package/x/tests.test.js.map +0 -1
- package/x/timeline/parts/compositor/export.d.ts +0 -9
- package/x/timeline/parts/compositor/export.js +0 -64
- package/x/timeline/parts/compositor/export.js.map +0 -1
- package/x/timeline/parts/compositor/parts/html-tree.d.ts +0 -3
- package/x/timeline/parts/compositor/parts/html-tree.js +0 -40
- package/x/timeline/parts/compositor/parts/html-tree.js.map +0 -1
- package/x/timeline/parts/compositor/parts/schedulers.d.ts +0 -15
- package/x/timeline/parts/compositor/parts/schedulers.js +0 -64
- package/x/timeline/parts/compositor/parts/schedulers.js.map +0 -1
- package/x/timeline/parts/compositor/parts/tree-builder.d.ts +0 -37
- package/x/timeline/parts/compositor/parts/tree-builder.js +0 -147
- package/x/timeline/parts/compositor/parts/tree-builder.js.map +0 -1
- package/x/timeline/parts/compositor/parts/webcodecs-tree.d.ts +0 -3
- package/x/timeline/parts/compositor/parts/webcodecs-tree.js +0 -28
- package/x/timeline/parts/compositor/parts/webcodecs-tree.js.map +0 -1
- package/x/timeline/parts/compositor/playback.d.ts +0 -19
- package/x/timeline/parts/compositor/playback.js +0 -71
- package/x/timeline/parts/compositor/playback.js.map +0 -1
- package/x/timeline/parts/compositor/samplers/html.d.ts +0 -3
- package/x/timeline/parts/compositor/samplers/html.js +0 -106
- package/x/timeline/parts/compositor/samplers/html.js.map +0 -1
- package/x/timeline/parts/compositor/samplers/webcodecs.d.ts +0 -2
- package/x/timeline/parts/compositor/samplers/webcodecs.js +0 -55
- package/x/timeline/parts/compositor/samplers/webcodecs.js.map +0 -1
- package/x/timeline/parts/waveform.d.ts +0 -8
- package/x/timeline/parts/waveform.js +0 -51
- package/x/timeline/parts/waveform.js.map +0 -1
- package/x/timeline/sugar/builders.d.ts +0 -1
- package/x/timeline/sugar/builders.js +0 -104
- package/x/timeline/sugar/builders.js.map +0 -1
- package/x/timeline/sugar/omni-test.d.ts +0 -1
- package/x/timeline/sugar/omni-test.js +0 -22
- package/x/timeline/sugar/omni-test.js.map +0 -1
- package/x/timeline/utils/audio-stream.d.ts +0 -6
- package/x/timeline/utils/audio-stream.js +0 -17
- package/x/timeline/utils/audio-stream.js.map +0 -1
- package/x/timeline/utils/video-cursor.d.ts +0 -10
- package/x/timeline/utils/video-cursor.js +0 -36
- package/x/timeline/utils/video-cursor.js.map +0 -1
- package/x/tools/common/loader.d.ts +0 -19
- package/x/tools/common/loader.js +0 -18
- package/x/tools/common/loader.js.map +0 -1
- package/x/tools/common/transformer-pipeline.d.ts +0 -8
- package/x/tools/common/transformer-pipeline.js +0 -24
- package/x/tools/common/transformer-pipeline.js.map +0 -1
- package/x/tools/speech-recognition/common/model.d.ts +0 -14
- package/x/tools/speech-recognition/common/model.js +0 -16
- package/x/tools/speech-recognition/common/model.js.map +0 -1
- package/x/tools/speech-recognition/whisper/fns/host.d.ts +0 -13
- package/x/tools/speech-recognition/whisper/fns/host.js +0 -19
- package/x/tools/speech-recognition/whisper/fns/host.js.map +0 -1
- package/x/tools/speech-recognition/whisper/fns/schematic.d.ts +0 -19
- package/x/tools/speech-recognition/whisper/fns/schematic.js +0 -2
- package/x/tools/speech-recognition/whisper/fns/schematic.js.map +0 -1
- package/x/tools/speech-recognition/whisper/fns/work.d.ts +0 -12
- package/x/tools/speech-recognition/whisper/fns/work.js +0 -74
- package/x/tools/speech-recognition/whisper/fns/work.js.map +0 -1
- package/x/tools/speech-recognition/whisper/parts/types.d.ts +0 -31
- package/x/tools/speech-recognition/whisper/parts/types.js.map +0 -1
- package/x/tools/speech-recognition/whisper/parts/worker.bundle.d.ts +0 -1
- package/x/tools/speech-recognition/whisper/parts/worker.bundle.js +0 -4
- package/x/tools/speech-recognition/whisper/parts/worker.bundle.js.map +0 -1
- package/x/tools/speech-recognition/whisper/parts/worker.bundle.min.js +0 -8
- package/x/tools/speech-recognition/whisper/parts/worker.bundle.min.js.map +0 -7
- package/x/tools/speech-recognition/whisper/tool.d.ts +0 -12
- package/x/tools/speech-recognition/whisper/tool.js +0 -63
- package/x/tools/speech-recognition/whisper/tool.js.map +0 -1
- /package/x/{tests.test.d.ts → tests.bundle.d.ts} +0 -0
- /package/x/{tools/speech-recognition/whisper/parts → timeline/parts/animations}/types.js +0 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
export const animationPresets = {
|
|
2
|
+
slideIn: {
|
|
3
|
+
type: "motion",
|
|
4
|
+
label: "Slide in",
|
|
5
|
+
defaults: {
|
|
6
|
+
duration: 700,
|
|
7
|
+
from: [-400, 0],
|
|
8
|
+
to: [0, 0],
|
|
9
|
+
terp: "easeOut",
|
|
10
|
+
},
|
|
11
|
+
transform: {
|
|
12
|
+
from: { position: [-400, 0] },
|
|
13
|
+
to: { position: [0, 0] },
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
slideOut: {
|
|
17
|
+
type: "motion",
|
|
18
|
+
label: "Slide out",
|
|
19
|
+
defaults: {
|
|
20
|
+
duration: 700,
|
|
21
|
+
from: [0, 0],
|
|
22
|
+
to: [400, 0],
|
|
23
|
+
terp: "easeIn",
|
|
24
|
+
},
|
|
25
|
+
transform: {
|
|
26
|
+
from: { position: [0, 0] },
|
|
27
|
+
to: { position: [400, 0] },
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
spinIn: {
|
|
31
|
+
type: "motion",
|
|
32
|
+
label: "Spin in",
|
|
33
|
+
defaults: {
|
|
34
|
+
duration: 700,
|
|
35
|
+
from: [0, 0],
|
|
36
|
+
to: [0, 0],
|
|
37
|
+
terp: "easeOut",
|
|
38
|
+
},
|
|
39
|
+
transform: {
|
|
40
|
+
from: { scale: [0, 0], rotation: -180 },
|
|
41
|
+
to: { scale: [1, 1], rotation: 0 },
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
spinOut: {
|
|
45
|
+
type: "motion",
|
|
46
|
+
label: "Spin out",
|
|
47
|
+
defaults: {
|
|
48
|
+
duration: 700,
|
|
49
|
+
from: [0, 0],
|
|
50
|
+
to: [0, 0],
|
|
51
|
+
terp: "easeIn",
|
|
52
|
+
},
|
|
53
|
+
transform: {
|
|
54
|
+
from: { scale: [1, 1], rotation: 0 },
|
|
55
|
+
to: { scale: [0, 0], rotation: 180 },
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
zoomIn: {
|
|
59
|
+
type: "motion",
|
|
60
|
+
label: "Zoom in",
|
|
61
|
+
defaults: {
|
|
62
|
+
duration: 700,
|
|
63
|
+
from: [0, 0],
|
|
64
|
+
to: [0, 0],
|
|
65
|
+
terp: "easeOut",
|
|
66
|
+
},
|
|
67
|
+
transform: {
|
|
68
|
+
from: { scale: [0, 0] },
|
|
69
|
+
to: { scale: [1, 1] },
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
zoomOut: {
|
|
73
|
+
type: "motion",
|
|
74
|
+
label: "Zoom out",
|
|
75
|
+
defaults: {
|
|
76
|
+
duration: 700,
|
|
77
|
+
from: [0, 0],
|
|
78
|
+
to: [0, 0],
|
|
79
|
+
terp: "easeIn",
|
|
80
|
+
},
|
|
81
|
+
transform: {
|
|
82
|
+
from: { scale: [1, 1] },
|
|
83
|
+
to: { scale: [0, 0] },
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
bounceIn: {
|
|
87
|
+
type: "motion",
|
|
88
|
+
label: "Bounce in",
|
|
89
|
+
defaults: {
|
|
90
|
+
duration: 700,
|
|
91
|
+
from: [0, 0],
|
|
92
|
+
to: [0, 0],
|
|
93
|
+
terp: "bounce",
|
|
94
|
+
},
|
|
95
|
+
transform: {
|
|
96
|
+
from: { scale: [0, 0] },
|
|
97
|
+
to: { scale: [1, 1] },
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
bounceOut: {
|
|
101
|
+
type: "motion",
|
|
102
|
+
label: "Bounce out",
|
|
103
|
+
defaults: {
|
|
104
|
+
duration: 700,
|
|
105
|
+
from: [0, 0],
|
|
106
|
+
to: [0, 0],
|
|
107
|
+
terp: "bounce",
|
|
108
|
+
},
|
|
109
|
+
transform: {
|
|
110
|
+
from: { scale: [1, 1] },
|
|
111
|
+
to: { scale: [0, 0] },
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
fadeIn: {
|
|
115
|
+
type: "scalar",
|
|
116
|
+
label: "Fade in",
|
|
117
|
+
defaults: {
|
|
118
|
+
duration: 700,
|
|
119
|
+
from: 0,
|
|
120
|
+
to: 1,
|
|
121
|
+
terp: "easeIn",
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
fadeOut: {
|
|
125
|
+
type: "scalar",
|
|
126
|
+
label: "Fade out",
|
|
127
|
+
defaults: {
|
|
128
|
+
duration: 700,
|
|
129
|
+
from: 1,
|
|
130
|
+
to: 0,
|
|
131
|
+
terp: "easeOut",
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
//# sourceMappingURL=presets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../../s/timeline/parts/animations/presets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
export declare const visualAnimations: {
|
|
2
|
+
readonly transform: {
|
|
3
|
+
readonly type: "transform";
|
|
4
|
+
readonly defaultTerp: "linear";
|
|
5
|
+
readonly channels: readonly [{
|
|
6
|
+
readonly path: "position.x";
|
|
7
|
+
readonly type: "number";
|
|
8
|
+
readonly default: 0;
|
|
9
|
+
readonly unit: "pixel";
|
|
10
|
+
}, {
|
|
11
|
+
readonly path: "position.y";
|
|
12
|
+
readonly type: "number";
|
|
13
|
+
readonly default: 0;
|
|
14
|
+
readonly unit: "pixel";
|
|
15
|
+
}, {
|
|
16
|
+
readonly path: "scale.x";
|
|
17
|
+
readonly type: "number";
|
|
18
|
+
readonly default: 1;
|
|
19
|
+
readonly unit: "scale";
|
|
20
|
+
}, {
|
|
21
|
+
readonly path: "scale.y";
|
|
22
|
+
readonly type: "number";
|
|
23
|
+
readonly default: 1;
|
|
24
|
+
readonly unit: "scale";
|
|
25
|
+
}, {
|
|
26
|
+
readonly path: "rotation";
|
|
27
|
+
readonly type: "number";
|
|
28
|
+
readonly default: 0;
|
|
29
|
+
readonly unit: "degree";
|
|
30
|
+
}];
|
|
31
|
+
};
|
|
32
|
+
readonly opacity: {
|
|
33
|
+
readonly type: "scalar";
|
|
34
|
+
readonly defaultTerp: "linear";
|
|
35
|
+
readonly channels: readonly [{
|
|
36
|
+
readonly type: "number";
|
|
37
|
+
readonly default: 1;
|
|
38
|
+
readonly unit: "ratio";
|
|
39
|
+
readonly range: readonly [0, 1];
|
|
40
|
+
}];
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
export declare const animatableProperties: {
|
|
44
|
+
readonly transform: {
|
|
45
|
+
readonly type: "transform";
|
|
46
|
+
readonly defaultTerp: "linear";
|
|
47
|
+
readonly channels: readonly [{
|
|
48
|
+
readonly path: "position.x";
|
|
49
|
+
readonly type: "number";
|
|
50
|
+
readonly default: 0;
|
|
51
|
+
readonly unit: "pixel";
|
|
52
|
+
}, {
|
|
53
|
+
readonly path: "position.y";
|
|
54
|
+
readonly type: "number";
|
|
55
|
+
readonly default: 0;
|
|
56
|
+
readonly unit: "pixel";
|
|
57
|
+
}, {
|
|
58
|
+
readonly path: "scale.x";
|
|
59
|
+
readonly type: "number";
|
|
60
|
+
readonly default: 1;
|
|
61
|
+
readonly unit: "scale";
|
|
62
|
+
}, {
|
|
63
|
+
readonly path: "scale.y";
|
|
64
|
+
readonly type: "number";
|
|
65
|
+
readonly default: 1;
|
|
66
|
+
readonly unit: "scale";
|
|
67
|
+
}, {
|
|
68
|
+
readonly path: "rotation";
|
|
69
|
+
readonly type: "number";
|
|
70
|
+
readonly default: 0;
|
|
71
|
+
readonly unit: "degree";
|
|
72
|
+
}];
|
|
73
|
+
};
|
|
74
|
+
readonly opacity: {
|
|
75
|
+
readonly type: "scalar";
|
|
76
|
+
readonly defaultTerp: "linear";
|
|
77
|
+
readonly channels: readonly [{
|
|
78
|
+
readonly type: "number";
|
|
79
|
+
readonly default: 1;
|
|
80
|
+
readonly unit: "ratio";
|
|
81
|
+
readonly range: readonly [0, 1];
|
|
82
|
+
}];
|
|
83
|
+
};
|
|
84
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export const visualAnimations = {
|
|
2
|
+
transform: {
|
|
3
|
+
type: "transform",
|
|
4
|
+
defaultTerp: "linear",
|
|
5
|
+
channels: [
|
|
6
|
+
{ path: "position.x", type: "number", default: 0, unit: "pixel" },
|
|
7
|
+
{ path: "position.y", type: "number", default: 0, unit: "pixel" },
|
|
8
|
+
{ path: "scale.x", type: "number", default: 1, unit: "scale" },
|
|
9
|
+
{ path: "scale.y", type: "number", default: 1, unit: "scale" },
|
|
10
|
+
{ path: "rotation", type: "number", default: 0, unit: "degree" },
|
|
11
|
+
],
|
|
12
|
+
},
|
|
13
|
+
opacity: {
|
|
14
|
+
type: "scalar",
|
|
15
|
+
defaultTerp: "linear",
|
|
16
|
+
channels: [
|
|
17
|
+
{ type: "number", default: 1, unit: "ratio", range: [0, 1] },
|
|
18
|
+
],
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
// const audioAnimations = {}
|
|
22
|
+
export const animatableProperties = {
|
|
23
|
+
...visualAnimations,
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=properties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../../s/timeline/parts/animations/properties.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC/B,SAAS,EAAE;QACV,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,QAAQ;QACrB,QAAQ,EAAE;YACT,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAC;YAC/D,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAC;YAC/D,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAC;YAC5D,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAC;YAC5D,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAC;SAC9D;KACD;IACD,OAAO,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,QAAQ;QACrB,QAAQ,EAAE;YACT,EAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAC;SAC1D;KACD;CACsD,CAAA;AAExD,6BAA6B;AAE7B,MAAM,CAAC,MAAM,oBAAoB,GAAG;IACnC,GAAG,gBAAgB;CACV,CAAA"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
export declare const animationRegistry: {
|
|
2
|
+
readonly presets: {
|
|
3
|
+
readonly slideIn: {
|
|
4
|
+
readonly type: "motion";
|
|
5
|
+
readonly label: "Slide in";
|
|
6
|
+
readonly defaults: {
|
|
7
|
+
readonly duration: 700;
|
|
8
|
+
readonly from: [-400, 0];
|
|
9
|
+
readonly to: [0, 0];
|
|
10
|
+
readonly terp: "easeOut";
|
|
11
|
+
};
|
|
12
|
+
readonly transform: {
|
|
13
|
+
readonly from: {
|
|
14
|
+
readonly position: [-400, 0];
|
|
15
|
+
};
|
|
16
|
+
readonly to: {
|
|
17
|
+
readonly position: [0, 0];
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
readonly slideOut: {
|
|
22
|
+
readonly type: "motion";
|
|
23
|
+
readonly label: "Slide out";
|
|
24
|
+
readonly defaults: {
|
|
25
|
+
readonly duration: 700;
|
|
26
|
+
readonly from: [0, 0];
|
|
27
|
+
readonly to: [400, 0];
|
|
28
|
+
readonly terp: "easeIn";
|
|
29
|
+
};
|
|
30
|
+
readonly transform: {
|
|
31
|
+
readonly from: {
|
|
32
|
+
readonly position: [0, 0];
|
|
33
|
+
};
|
|
34
|
+
readonly to: {
|
|
35
|
+
readonly position: [400, 0];
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
readonly spinIn: {
|
|
40
|
+
readonly type: "motion";
|
|
41
|
+
readonly label: "Spin in";
|
|
42
|
+
readonly defaults: {
|
|
43
|
+
readonly duration: 700;
|
|
44
|
+
readonly from: [0, 0];
|
|
45
|
+
readonly to: [0, 0];
|
|
46
|
+
readonly terp: "easeOut";
|
|
47
|
+
};
|
|
48
|
+
readonly transform: {
|
|
49
|
+
readonly from: {
|
|
50
|
+
readonly scale: [0, 0];
|
|
51
|
+
readonly rotation: -180;
|
|
52
|
+
};
|
|
53
|
+
readonly to: {
|
|
54
|
+
readonly scale: [1, 1];
|
|
55
|
+
readonly rotation: 0;
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
readonly spinOut: {
|
|
60
|
+
readonly type: "motion";
|
|
61
|
+
readonly label: "Spin out";
|
|
62
|
+
readonly defaults: {
|
|
63
|
+
readonly duration: 700;
|
|
64
|
+
readonly from: [0, 0];
|
|
65
|
+
readonly to: [0, 0];
|
|
66
|
+
readonly terp: "easeIn";
|
|
67
|
+
};
|
|
68
|
+
readonly transform: {
|
|
69
|
+
readonly from: {
|
|
70
|
+
readonly scale: [1, 1];
|
|
71
|
+
readonly rotation: 0;
|
|
72
|
+
};
|
|
73
|
+
readonly to: {
|
|
74
|
+
readonly scale: [0, 0];
|
|
75
|
+
readonly rotation: 180;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
readonly zoomIn: {
|
|
80
|
+
readonly type: "motion";
|
|
81
|
+
readonly label: "Zoom in";
|
|
82
|
+
readonly defaults: {
|
|
83
|
+
readonly duration: 700;
|
|
84
|
+
readonly from: [0, 0];
|
|
85
|
+
readonly to: [0, 0];
|
|
86
|
+
readonly terp: "easeOut";
|
|
87
|
+
};
|
|
88
|
+
readonly transform: {
|
|
89
|
+
readonly from: {
|
|
90
|
+
readonly scale: [0, 0];
|
|
91
|
+
};
|
|
92
|
+
readonly to: {
|
|
93
|
+
readonly scale: [1, 1];
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
readonly zoomOut: {
|
|
98
|
+
readonly type: "motion";
|
|
99
|
+
readonly label: "Zoom out";
|
|
100
|
+
readonly defaults: {
|
|
101
|
+
readonly duration: 700;
|
|
102
|
+
readonly from: [0, 0];
|
|
103
|
+
readonly to: [0, 0];
|
|
104
|
+
readonly terp: "easeIn";
|
|
105
|
+
};
|
|
106
|
+
readonly transform: {
|
|
107
|
+
readonly from: {
|
|
108
|
+
readonly scale: [1, 1];
|
|
109
|
+
};
|
|
110
|
+
readonly to: {
|
|
111
|
+
readonly scale: [0, 0];
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
readonly bounceIn: {
|
|
116
|
+
readonly type: "motion";
|
|
117
|
+
readonly label: "Bounce in";
|
|
118
|
+
readonly defaults: {
|
|
119
|
+
readonly duration: 700;
|
|
120
|
+
readonly from: [0, 0];
|
|
121
|
+
readonly to: [0, 0];
|
|
122
|
+
readonly terp: "bounce";
|
|
123
|
+
};
|
|
124
|
+
readonly transform: {
|
|
125
|
+
readonly from: {
|
|
126
|
+
readonly scale: [0, 0];
|
|
127
|
+
};
|
|
128
|
+
readonly to: {
|
|
129
|
+
readonly scale: [1, 1];
|
|
130
|
+
};
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
readonly bounceOut: {
|
|
134
|
+
readonly type: "motion";
|
|
135
|
+
readonly label: "Bounce out";
|
|
136
|
+
readonly defaults: {
|
|
137
|
+
readonly duration: 700;
|
|
138
|
+
readonly from: [0, 0];
|
|
139
|
+
readonly to: [0, 0];
|
|
140
|
+
readonly terp: "bounce";
|
|
141
|
+
};
|
|
142
|
+
readonly transform: {
|
|
143
|
+
readonly from: {
|
|
144
|
+
readonly scale: [1, 1];
|
|
145
|
+
};
|
|
146
|
+
readonly to: {
|
|
147
|
+
readonly scale: [0, 0];
|
|
148
|
+
};
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
readonly fadeIn: {
|
|
152
|
+
readonly type: "scalar";
|
|
153
|
+
readonly label: "Fade in";
|
|
154
|
+
readonly defaults: {
|
|
155
|
+
readonly duration: 700;
|
|
156
|
+
readonly from: 0;
|
|
157
|
+
readonly to: 1;
|
|
158
|
+
readonly terp: "easeIn";
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
readonly fadeOut: {
|
|
162
|
+
readonly type: "scalar";
|
|
163
|
+
readonly label: "Fade out";
|
|
164
|
+
readonly defaults: {
|
|
165
|
+
readonly duration: 700;
|
|
166
|
+
readonly from: 1;
|
|
167
|
+
readonly to: 0;
|
|
168
|
+
readonly terp: "easeOut";
|
|
169
|
+
};
|
|
170
|
+
};
|
|
171
|
+
};
|
|
172
|
+
readonly properties: {
|
|
173
|
+
readonly transform: {
|
|
174
|
+
readonly type: "transform";
|
|
175
|
+
readonly defaultTerp: "linear";
|
|
176
|
+
readonly channels: readonly [{
|
|
177
|
+
readonly path: "position.x";
|
|
178
|
+
readonly type: "number";
|
|
179
|
+
readonly default: 0;
|
|
180
|
+
readonly unit: "pixel";
|
|
181
|
+
}, {
|
|
182
|
+
readonly path: "position.y";
|
|
183
|
+
readonly type: "number";
|
|
184
|
+
readonly default: 0;
|
|
185
|
+
readonly unit: "pixel";
|
|
186
|
+
}, {
|
|
187
|
+
readonly path: "scale.x";
|
|
188
|
+
readonly type: "number";
|
|
189
|
+
readonly default: 1;
|
|
190
|
+
readonly unit: "scale";
|
|
191
|
+
}, {
|
|
192
|
+
readonly path: "scale.y";
|
|
193
|
+
readonly type: "number";
|
|
194
|
+
readonly default: 1;
|
|
195
|
+
readonly unit: "scale";
|
|
196
|
+
}, {
|
|
197
|
+
readonly path: "rotation";
|
|
198
|
+
readonly type: "number";
|
|
199
|
+
readonly default: 0;
|
|
200
|
+
readonly unit: "degree";
|
|
201
|
+
}];
|
|
202
|
+
};
|
|
203
|
+
readonly opacity: {
|
|
204
|
+
readonly type: "scalar";
|
|
205
|
+
readonly defaultTerp: "linear";
|
|
206
|
+
readonly channels: readonly [{
|
|
207
|
+
readonly type: "number";
|
|
208
|
+
readonly default: 1;
|
|
209
|
+
readonly unit: "ratio";
|
|
210
|
+
readonly range: readonly [0, 1];
|
|
211
|
+
}];
|
|
212
|
+
};
|
|
213
|
+
};
|
|
214
|
+
};
|
|
215
|
+
export * from "./make.js";
|
|
216
|
+
export * from "./presets.js";
|
|
217
|
+
export * from "./properties.js";
|
|
218
|
+
export * from "./types.js";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { animationPresets } from "./presets.js";
|
|
2
|
+
import { animatableProperties } from "./properties.js";
|
|
3
|
+
export const animationRegistry = {
|
|
4
|
+
presets: animationPresets,
|
|
5
|
+
properties: animatableProperties,
|
|
6
|
+
};
|
|
7
|
+
export * from "./make.js";
|
|
8
|
+
export * from "./presets.js";
|
|
9
|
+
export * from "./properties.js";
|
|
10
|
+
export * from "./types.js";
|
|
11
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../s/timeline/parts/animations/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAC,oBAAoB,EAAC,MAAM,iBAAiB,CAAA;AAEpD,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAChC,OAAO,EAAE,gBAAgB;IACzB,UAAU,EAAE,oBAAoB;CACvB,CAAA;AAEV,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { animationPresets } from "./presets.js";
|
|
2
|
+
import type { Item, VisualAnimatableItem } from "../item.js";
|
|
3
|
+
import { visualAnimations, animatableProperties } from "./properties.js";
|
|
4
|
+
import type { Anim, Interpolation, Keyframes, ScalarAnimation, TrackTransform, TransformAnimation, TransformOptions, Vec2 } from "../../types.js";
|
|
5
|
+
export type AnimationType = "scalar" | "transform";
|
|
6
|
+
export type AnimationChannelType = "number";
|
|
7
|
+
export type AnimationUnit = "pixel" | "scale" | "degree" | "ratio";
|
|
8
|
+
export type AnimationChannel = {
|
|
9
|
+
path?: string;
|
|
10
|
+
type: AnimationChannelType;
|
|
11
|
+
default: number;
|
|
12
|
+
unit?: AnimationUnit;
|
|
13
|
+
range?: readonly [min: number, max: number];
|
|
14
|
+
};
|
|
15
|
+
export type AnimationDefinition = {
|
|
16
|
+
type: AnimationType;
|
|
17
|
+
defaultTerp: Interpolation;
|
|
18
|
+
channels: readonly AnimationChannel[];
|
|
19
|
+
};
|
|
20
|
+
export type MotionAnimationPresetDefinition = {
|
|
21
|
+
type: "motion";
|
|
22
|
+
label: string;
|
|
23
|
+
defaults: Required<Omit<MotionAnimationOptions, "offset">>;
|
|
24
|
+
transform: {
|
|
25
|
+
from: TransformOptions;
|
|
26
|
+
to: TransformOptions;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export type ScalarAnimationPresetDefinition = {
|
|
30
|
+
type: "scalar";
|
|
31
|
+
label: string;
|
|
32
|
+
defaults: Required<Omit<ScalarAnimationOptions, "offset">>;
|
|
33
|
+
};
|
|
34
|
+
export type AnimationPresetDefinition = MotionAnimationPresetDefinition | ScalarAnimationPresetDefinition;
|
|
35
|
+
export type VisualAnimationProperty = keyof typeof visualAnimations;
|
|
36
|
+
export type AnimationProperty = keyof typeof animatableProperties;
|
|
37
|
+
export type AnimationPreset = keyof typeof animationPresets;
|
|
38
|
+
type AnimationPresetAction<TPreset extends AnimationPresetDefinition> = TPreset extends MotionAnimationPresetDefinition ? (options?: MotionAnimationOptions) => Anim<TrackTransform> : TPreset extends ScalarAnimationPresetDefinition ? (options?: ScalarAnimationOptions) => Anim<Keyframes> : never;
|
|
39
|
+
export type AnimationPresetActions = {
|
|
40
|
+
[TName in AnimationPreset]: AnimationPresetAction<(typeof animationPresets)[TName]>;
|
|
41
|
+
};
|
|
42
|
+
export type AnimationPresetOptions<Value> = {
|
|
43
|
+
duration?: number;
|
|
44
|
+
offset?: number;
|
|
45
|
+
from?: Value;
|
|
46
|
+
to?: Value;
|
|
47
|
+
terp?: Interpolation;
|
|
48
|
+
};
|
|
49
|
+
export type MotionAnimationOptions = AnimationPresetOptions<Vec2>;
|
|
50
|
+
export type ScalarAnimationOptions = AnimationPresetOptions<number>;
|
|
51
|
+
export type PresetAnimation = ScalarAnimation | TransformAnimation;
|
|
52
|
+
export type PresetOptions = MotionAnimationOptions | ScalarAnimationOptions;
|
|
53
|
+
export interface PresetAnimateAction {
|
|
54
|
+
<T extends VisualAnimatableItem>(item: T, options?: PresetOptions): T;
|
|
55
|
+
make(options?: PresetOptions): Item.Animation;
|
|
56
|
+
}
|
|
57
|
+
export type PresetAnimateActions = {
|
|
58
|
+
[TKey in AnimationPreset]: PresetAnimateAction;
|
|
59
|
+
};
|
|
60
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../s/timeline/parts/animations/types.ts"],"names":[],"mappings":""}
|
|
@@ -25,12 +25,13 @@ export declare class Filmstrip {
|
|
|
25
25
|
* Returns the cached thumbnail (if any) for a given timestamp.
|
|
26
26
|
* @param time - The timestamp to retrieve the canvas for.
|
|
27
27
|
*/
|
|
28
|
-
getThumbnail(time: number):
|
|
28
|
+
getThumbnail(time: number): WrappedCanvas | undefined;
|
|
29
29
|
}
|
|
30
|
-
type TimeRange = [number, number];
|
|
30
|
+
export type TimeRange = [start: number, end: number];
|
|
31
31
|
interface FilmstripOptions {
|
|
32
|
-
frequency
|
|
32
|
+
frequency: number;
|
|
33
33
|
canvasSinkOptions?: CanvasSinkOptions;
|
|
34
|
+
onPlaceholders?: (timestamps: number[]) => void;
|
|
34
35
|
onChange: (tiles: {
|
|
35
36
|
time: number;
|
|
36
37
|
canvas: WrappedCanvas;
|
|
@@ -21,7 +21,8 @@ export class Filmstrip {
|
|
|
21
21
|
return new Filmstrip(videoTrack, {
|
|
22
22
|
frequency: options.frequency ?? 1,
|
|
23
23
|
canvasSinkOptions: options.canvasSinkOptions ?? { width: 80, height: 50, fit: "fill" },
|
|
24
|
-
onChange: options.onChange
|
|
24
|
+
onChange: options.onChange,
|
|
25
|
+
onPlaceholders: options.onPlaceholders
|
|
25
26
|
});
|
|
26
27
|
else
|
|
27
28
|
throw new Error("Source has no video track");
|
|
@@ -40,19 +41,31 @@ export class Filmstrip {
|
|
|
40
41
|
get frequency() {
|
|
41
42
|
return this.options.frequency;
|
|
42
43
|
}
|
|
43
|
-
#computeActiveRange([start, end]) {
|
|
44
|
+
#computeActiveRange([start, end], margin = 1) {
|
|
44
45
|
const tileSize = end - start;
|
|
45
|
-
return [start - tileSize, end + tileSize];
|
|
46
|
+
return [start - tileSize * margin, end + tileSize * margin];
|
|
47
|
+
}
|
|
48
|
+
async #generatePlaceholders() {
|
|
49
|
+
const [rangeStart, rangeEnd] = this.#activeRange;
|
|
50
|
+
const neededTimestamps = new Set();
|
|
51
|
+
// duration should be computed but with trim etc also
|
|
52
|
+
const duration = await this.videoTrack.computeDuration();
|
|
53
|
+
for (let timestamp = Math.max(0, rangeStart); timestamp <= rangeEnd; timestamp += this.options.frequency) {
|
|
54
|
+
// Clamp to valid time range
|
|
55
|
+
if (timestamp >= 0 && timestamp <= duration)
|
|
56
|
+
neededTimestamps.add(timestamp);
|
|
57
|
+
}
|
|
58
|
+
this.options.onPlaceholders?.([...neededTimestamps]);
|
|
46
59
|
}
|
|
47
60
|
async #generateTiles() {
|
|
48
61
|
const [rangeStart, rangeEnd] = this.#activeRange;
|
|
49
62
|
const neededTimestamps = new Set();
|
|
50
63
|
// duration should be computed but with trim etc also
|
|
51
64
|
const duration = await this.videoTrack.computeDuration();
|
|
52
|
-
for (let timestamp = rangeStart; timestamp <= rangeEnd; timestamp += this.options.frequency) {
|
|
65
|
+
for (let timestamp = Math.max(0, rangeStart); timestamp <= rangeEnd; timestamp += this.options.frequency) {
|
|
53
66
|
// Clamp to valid time range
|
|
54
67
|
if (timestamp >= 0 && timestamp <= duration)
|
|
55
|
-
neededTimestamps.add(
|
|
68
|
+
neededTimestamps.add(timestamp);
|
|
56
69
|
}
|
|
57
70
|
const missingTimestamps = [...neededTimestamps]
|
|
58
71
|
.filter(t => !this.#cache.has(t));
|
|
@@ -81,17 +94,23 @@ export class Filmstrip {
|
|
|
81
94
|
* @param visibleRange - The current timeline viewport as a [start, end] tuple in seconds.
|
|
82
95
|
*/
|
|
83
96
|
set range(visibleRange) {
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
97
|
+
const [visStart, visEnd] = visibleRange;
|
|
98
|
+
const visibleSize = visEnd - visStart;
|
|
99
|
+
const [actStart, actEnd] = this.#activeRange;
|
|
100
|
+
// trigger when we're 1x visible width away from margin edges
|
|
101
|
+
const leftTrigger = actStart + visibleSize;
|
|
102
|
+
const rightTrigger = actEnd - visibleSize;
|
|
103
|
+
const nearLeftEdge = visStart < leftTrigger;
|
|
104
|
+
const nearRightEdge = visEnd > rightTrigger;
|
|
105
|
+
if (!nearLeftEdge && !nearRightEdge)
|
|
88
106
|
return;
|
|
89
|
-
this.#activeRange =
|
|
107
|
+
this.#activeRange = this.#computeActiveRange(visibleRange, 2);
|
|
90
108
|
this.#update();
|
|
91
109
|
}
|
|
92
110
|
#updating = null;
|
|
93
111
|
#shouldRunAgain = false;
|
|
94
112
|
async #update() {
|
|
113
|
+
this.#generatePlaceholders();
|
|
95
114
|
// Perform update immediately. If multiple updates are requested while updating,
|
|
96
115
|
// only the latest one will run after the current finishes (skips intermediate ones).
|
|
97
116
|
if (this.#updating) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filmstrip.js","sourceRoot":"","sources":["../../../s/timeline/parts/filmstrip.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EACX,UAAU,EAEV,KAAK,GAGL,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAC,iBAAiB,EAAC,MAAM,2CAA2C,CAAA;AAE3E,MAAM,OAAO,SAAS;IAMZ;IACA;IANT,KAAK,CAAY;IACjB,MAAM,GAA+B,IAAI,GAAG,EAAE,CAAA;IAC9C,YAAY,GAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAEhC,YACS,UAA2B,EAC3B,
|
|
1
|
+
{"version":3,"file":"filmstrip.js","sourceRoot":"","sources":["../../../s/timeline/parts/filmstrip.ts"],"names":[],"mappings":"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"}
|