@hypit/hypit 0.1.3 → 0.1.5
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 +5 -3
- package/dist/public/caption.d.ts +206 -183
- package/dist/public/composition.d.ts +25 -3
- package/dist/public/endpoint-kit.d.ts +24 -2
- package/dist/public/generation.d.ts +5 -1
- package/dist/public/hyperframes.d.ts +19 -1
- package/dist/public/narrative.d.ts +17 -3
- package/dist/public/performance.d.ts +1590 -0
- package/dist/public/program-space.d.ts +179 -32
- package/dist/public/runtime-kit.d.ts +21 -8
- package/dist/public/sound.d.ts +822 -0
- package/dist/public/speech.d.ts +41 -0
- package/dist/public/studio-adapter.d.ts +107 -16
- package/dist/public/temporal-markup.d.ts +9 -44
- package/dist/public/temporal.d.ts +37 -28
- package/dist/public/{semantic-track.d.ts → timeline.d.ts} +62 -49
- package/examples/README.md +18 -10
- package/examples/minimal-author-package/packages/example-component/preview/preview.svml +19 -12
- package/examples/minimal-author-package/packages/example-component/src/component.ts +5 -5
- package/examples/minimal-author-package/packages/example-component/src/fragment.ts +3 -5
- package/examples/minimal-author-package/packages/example-component/src/manifest.ts +8 -10
- package/examples/minimal-author-package/packages/example-component/src/surface.ts +2 -2
- package/examples/provider-package/README.md +78 -0
- package/examples/provider-package/hypit.runtime.json +12 -0
- package/examples/provider-package/packages/provider-images/package.json +11 -0
- package/examples/provider-package/packages/provider-images/src/activation.ts +24 -0
- package/examples/provider-package/packages/provider-images/src/provider.ts +122 -0
- package/examples/provider-package/packages/provider-images/tsconfig.json +9 -0
- package/examples/semantic-composition/README.md +6 -0
- package/examples/semantic-composition/chat.svml +6 -5
- package/examples/semantic-composition/packages/chat-scene/README.md +3 -3
- package/examples/semantic-composition/packages/chat-scene/src/activation.ts +18 -21
- package/examples/semantic-composition/packages/chat-scene/src/render.ts +4 -4
- package/examples/semantic-composition/packages/performance-styles/README.md +42 -0
- package/examples/semantic-composition/packages/performance-styles/package.json +25 -0
- package/examples/semantic-composition/packages/performance-styles/src/activation.ts +57 -0
- package/examples/semantic-composition/packages/performance-styles/src/render.ts +54 -0
- package/examples/semantic-composition/packages/performance-styles/src/studio.ts +28 -0
- package/examples/semantic-composition/packages/performance-styles/tsconfig.json +18 -0
- package/examples/semantic-composition/packages/responsive-explainer/README.md +16 -9
- package/examples/semantic-composition/packages/responsive-explainer/src/activation.ts +12 -12
- package/examples/semantic-composition/packages/responsive-explainer/src/render.ts +5 -5
- package/examples/semantic-composition/packages/sound-styles/README.md +36 -0
- package/examples/semantic-composition/packages/sound-styles/package.json +25 -0
- package/examples/semantic-composition/packages/sound-styles/src/activation.ts +53 -0
- package/examples/semantic-composition/packages/sound-styles/src/render.ts +14 -0
- package/examples/semantic-composition/packages/sound-styles/tsconfig.json +18 -0
- package/package.json +35 -15
- package/packages/audio-track/README.md +20 -13
- package/packages/audio-track/package.json +1 -1
- package/packages/audio-track/src/component.ts +4 -4
- package/packages/audio-track/src/fragment.ts +6 -5
- package/packages/audio-track/src/index.ts +1 -1
- package/packages/audio-track/src/manifest.ts +17 -16
- package/packages/audio-track/src/program.ts +21 -25
- package/packages/audio-track/src/surface.ts +19 -18
- package/packages/audio-track-studio/README.md +23 -0
- package/packages/audio-track-studio/src/index.ts +33 -19
- package/packages/author-kit/README.md +1 -1
- package/packages/background-removal/README.md +4 -7
- package/packages/browser-capture/package.json +1 -1
- package/packages/build-result/README.md +69 -0
- package/packages/build-result/package.json +2 -1
- package/packages/build-result/src/decode.ts +12 -8
- package/packages/build-result/src/execution-log.ts +17 -0
- package/packages/build-result/src/file-reference.ts +42 -0
- package/packages/build-result/src/index.ts +4 -0
- package/packages/build-result/src/replace-file-windows.ts +58 -0
- package/packages/build-result/src/replace-file.ts +11 -0
- package/packages/build-result/src/store.ts +58 -14
- package/packages/build-result/src/types.ts +41 -8
- package/packages/build-result/src/writer.ts +12 -1
- package/packages/build-result-fs/README.md +23 -1
- package/packages/build-result-s3/README.md +5 -0
- package/packages/build-result-s3/src/repository.ts +23 -5
- package/packages/caption/README.md +61 -73
- package/packages/caption/package.json +3 -2
- package/packages/caption/src/activation.ts +2 -2
- package/packages/caption/src/component.ts +20 -5
- package/packages/caption/src/display.ts +3 -18
- package/packages/caption/src/fragment.ts +3 -7
- package/packages/caption/src/index.ts +6 -5
- package/packages/caption/src/manifest.ts +29 -46
- package/packages/caption/src/style.ts +24 -135
- package/packages/caption/src/surface.ts +12 -92
- package/packages/caption/src/temporalize.ts +18 -53
- package/packages/caption/src/types.ts +8 -35
- package/packages/caption/src/visibility.ts +23 -0
- package/packages/caption-fine/README.md +31 -11
- package/packages/caption-fine/package.json +4 -2
- package/packages/caption-fine/src/component.ts +3 -3
- package/packages/caption-fine/src/fragment.ts +7 -19
- package/packages/caption-fine/src/index.ts +2 -0
- package/packages/caption-fine/src/manifest.ts +27 -18
- package/packages/caption-fine/src/recipe.ts +7 -0
- package/packages/caption-fine/src/render.ts +62 -49
- package/packages/caption-fine/src/schedule.ts +39 -35
- package/packages/caption-fine/src/style.ts +10 -9
- package/packages/caption-fine/src/surface.ts +62 -35
- package/packages/caption-fine/src/types.ts +2 -0
- package/packages/caption-fine-studio/README.md +24 -2
- package/packages/caption-fine-studio/package.json +10 -3
- package/packages/caption-fine-studio/src/activation.ts +3 -3
- package/packages/caption-fine-studio/src/index.ts +61 -40
- package/packages/cli/README.md +81 -3
- package/packages/cli/package.json +1 -0
- package/packages/cli/src/arguments.ts +39 -15
- package/packages/cli/src/build-planning.ts +9 -3
- package/packages/cli/src/command.ts +7 -1
- package/packages/cli/src/commands/environment.ts +66 -27
- package/packages/cli/src/commands/execution.ts +81 -26
- package/packages/cli/src/commands/results.ts +7 -11
- package/packages/cli/src/index.ts +2 -2
- package/packages/cli/src/machine-view.ts +15 -5
- package/packages/cli/src/main.ts +38 -42
- package/packages/cli/src/observation.ts +7 -1
- package/packages/cli/src/output.ts +92 -34
- package/packages/cli/src/result-export.ts +22 -13
- package/packages/cli/src/run-file.ts +19 -8
- package/packages/cli/src/view.ts +64 -18
- package/packages/comment-sticker/README.md +3 -3
- package/packages/comment-sticker/package.json +1 -1
- package/packages/comment-sticker/src/component.ts +4 -4
- package/packages/comment-sticker/src/fragment.ts +5 -4
- package/packages/comment-sticker/src/manifest.ts +7 -6
- package/packages/comment-sticker/src/program.ts +9 -9
- package/packages/comment-sticker/src/surface.ts +6 -7
- package/packages/comment-sticker-studio/src/index.ts +2 -1
- package/packages/compiler-node/src/compiler.ts +1 -0
- package/packages/composition/README.md +21 -0
- package/packages/composition/src/audio-presentation.ts +44 -0
- package/packages/composition/src/index.ts +3 -0
- package/packages/composition/src/schema.ts +8 -3
- package/packages/composition/src/track.ts +15 -1
- package/packages/credential-store-env/README.md +1 -1
- package/packages/deck-track/README.md +3 -3
- package/packages/deck-track/package.json +1 -1
- package/packages/deck-track/src/component.ts +5 -5
- package/packages/deck-track/src/fragment.ts +6 -5
- package/packages/deck-track/src/lower.ts +12 -12
- package/packages/deck-track/src/manifest.ts +8 -7
- package/packages/deck-track/src/program.ts +13 -16
- package/packages/deck-track/src/surface.ts +9 -10
- package/packages/driver-node/src/driver.ts +41 -3
- package/packages/elevenlabs-speech/README.md +27 -0
- package/packages/{provider-xiaomi-mimo → elevenlabs-speech}/package.json +5 -8
- package/packages/elevenlabs-speech/src/activation.ts +26 -0
- package/packages/elevenlabs-speech/src/fragment.ts +11 -0
- package/packages/elevenlabs-speech/src/index.ts +111 -0
- package/packages/elevenlabs-speech/src/surface.ts +167 -0
- package/packages/endpoint-kit/README.md +24 -0
- package/packages/endpoint-kit/src/index.ts +7 -1
- package/packages/estimate/README.md +56 -3
- package/packages/estimate/src/program.ts +7 -8
- package/packages/film/README.md +12 -7
- package/packages/film/package.json +1 -1
- package/packages/film/src/component.ts +4 -4
- package/packages/film/src/fragment.ts +6 -5
- package/packages/film/src/manifest.ts +11 -10
- package/packages/film/src/program.ts +5 -5
- package/packages/film/src/recipe.ts +2 -1
- package/packages/film/src/surface.ts +6 -6
- package/packages/film-studio/package.json +1 -1
- package/packages/film-studio/src/index.ts +2 -2
- package/packages/fishaudio-speech/README.md +33 -0
- package/packages/fishaudio-speech/package.json +21 -0
- package/packages/fishaudio-speech/src/activation.ts +32 -0
- package/packages/fishaudio-speech/src/fragment.ts +11 -0
- package/packages/fishaudio-speech/src/index.ts +156 -0
- package/packages/fishaudio-speech/src/surface.ts +192 -0
- package/packages/fonts-open/README.md +5 -0
- package/packages/fonts-open/package.json +5 -1
- package/packages/fonts-open/src/studio.ts +21 -0
- package/packages/generation/README.md +11 -1
- package/packages/generation/src/mapping.ts +28 -30
- package/packages/gpt-image/README.md +1 -2
- package/packages/grok-imagine/README.md +1 -2
- package/packages/hyperframes/README.md +7 -3
- package/packages/hyperframes/src/browser-program.ts +11 -2
- package/packages/hyperframes/src/document.ts +15 -2
- package/packages/interview-emoji-reveal/README.md +4 -4
- package/packages/interview-emoji-reveal/package.json +1 -1
- package/packages/interview-emoji-reveal/src/component.ts +4 -4
- package/packages/interview-emoji-reveal/src/fragment.ts +6 -5
- package/packages/interview-emoji-reveal/src/manifest.ts +9 -8
- package/packages/interview-emoji-reveal/src/program.ts +14 -14
- package/packages/interview-emoji-reveal/src/surface.ts +8 -9
- package/packages/media-execution/README.md +7 -3
- package/packages/media-execution/src/audio-presentation.ts +23 -0
- package/packages/media-execution/src/execute.ts +2 -0
- package/packages/media-pipeline/README.md +7 -3
- package/packages/media-pipeline/src/audio-plan.ts +4 -1
- package/packages/media-pipeline/src/component.ts +16 -2
- package/packages/media-pipeline/src/manifest.ts +3 -1
- package/packages/media-pipeline/src/types.ts +2 -1
- package/packages/media-track/README.md +14 -47
- package/packages/media-track/package.json +1 -1
- package/packages/media-track/preview/preview.svml +5 -5
- package/packages/media-track/src/author.ts +12 -6
- package/packages/media-track/src/component.ts +10 -16
- package/packages/media-track/src/fragment.ts +8 -7
- package/packages/media-track/src/index.ts +3 -1
- package/packages/media-track/src/lower.ts +7 -7
- package/packages/media-track/src/manifest.ts +16 -38
- package/packages/media-track/src/program.ts +62 -67
- package/packages/media-track/src/sampling.ts +6 -6
- package/packages/media-track/src/sequence.ts +8 -8
- package/packages/media-track/src/surface.ts +25 -43
- package/packages/media-track-studio/README.md +9 -0
- package/packages/media-track-studio/src/index.ts +23 -13
- package/packages/mimo-speech/README.md +1 -1
- package/packages/minimax-h3/README.md +1 -1
- package/packages/nano-banana/README.md +1 -1
- package/packages/narrative/README.md +23 -1
- package/packages/narrative/src/identity.ts +11 -0
- package/packages/narrative/src/index.ts +3 -0
- package/packages/narrative/src/schema.ts +28 -27
- package/packages/narrative/src/selection.ts +52 -0
- package/packages/narrative/src/types.ts +2 -0
- package/packages/package-loader-node/README.md +30 -0
- package/packages/package-loader-node/package.json +5 -2
- package/packages/package-loader-node/src/distribution-resolution.ts +10 -3
- package/packages/package-loader-node/src/index.ts +1 -0
- package/packages/package-loader-node/src/loader.ts +12 -15
- package/packages/package-loader-node/src/location.ts +27 -1
- package/packages/package-loader-node/src/module-scope.ts +183 -0
- package/packages/package-loader-node/src/types.ts +4 -0
- package/packages/performance/README.md +83 -0
- package/packages/performance/package.json +30 -0
- package/packages/performance/src/activation.ts +11 -0
- package/packages/performance/src/component.ts +46 -0
- package/packages/performance/src/index.ts +6 -0
- package/packages/performance/src/manifest.ts +53 -0
- package/packages/{media-track/src/performance.ts → performance/src/media.ts} +9 -10
- package/packages/performance/src/program.ts +51 -0
- package/packages/performance/src/style.ts +35 -0
- package/packages/performance/src/surface.ts +99 -0
- package/packages/performance-studio/README.md +25 -0
- package/packages/performance-studio/package.json +21 -0
- package/packages/performance-studio/src/activation.ts +6 -0
- package/packages/performance-studio/src/index.ts +84 -0
- package/packages/program-space/README.md +9 -18
- package/packages/program-space/src/activation.ts +1 -5
- package/packages/program-space/src/index.ts +2 -11
- package/packages/program-space/src/surface.ts +1 -20
- package/packages/project-context-node/README.md +20 -0
- package/packages/project-context-node/package.json +10 -0
- package/packages/project-context-node/src/index.ts +3 -0
- package/packages/{cli → project-context-node}/src/runtime-selection.ts +7 -2
- package/packages/provider-hyperframes-local/README.md +43 -15
- package/packages/provider-hyperframes-local/src/activation.ts +4 -3
- package/packages/provider-hyperframes-local/src/capture-process.ts +26 -4
- package/packages/provider-hyperframes-local/src/capture.ts +96 -26
- package/packages/provider-hyperframes-local/src/concurrency.ts +86 -0
- package/packages/provider-hyperframes-local/src/opaque-capture.ts +92 -0
- package/packages/provider-hyperframes-local/src/options.ts +2 -0
- package/packages/provider-hyperframes-local/src/program.ts +6 -3
- package/packages/provider-hyperframes-local/src/progress.ts +53 -0
- package/packages/provider-hyperframes-local/src/provider.ts +18 -5
- package/packages/provider-hyperframes-local/src/render.ts +48 -7
- package/packages/provider-hypihub/README.md +48 -17
- package/packages/provider-hypihub/package.json +2 -0
- package/packages/provider-hypihub/src/mapping.ts +31 -7
- package/packages/provider-hypihub/src/oauth.ts +6 -0
- package/packages/provider-hypihub/src/provider.ts +25 -13
- package/packages/provider-hypihub/src/routes.ts +1 -2
- package/packages/provider-hypihub/src/upload.ts +2 -0
- package/packages/provider-media-local/README.md +3 -4
- package/packages/provider-whisperx-local/README.md +57 -0
- package/packages/provider-whisperx-local/src/program.ts +1 -0
- package/packages/provider-whisperx-local/src/provider.ts +3 -0
- package/packages/ranking/README.md +8 -6
- package/packages/ranking/package.json +1 -1
- package/packages/ranking/src/component.ts +6 -6
- package/packages/ranking/src/fragment.ts +11 -7
- package/packages/ranking/src/manifest.ts +21 -14
- package/packages/ranking/src/render.ts +33 -35
- package/packages/ranking/src/schedule.ts +16 -19
- package/packages/ranking/src/surface.ts +12 -13
- package/packages/ranking-studio/README.md +29 -0
- package/packages/ranking-studio/package.json +8 -3
- package/packages/ranking-studio/src/index.ts +71 -12
- package/packages/render-hyperframes/README.md +7 -7
- package/packages/render-hyperframes/package.json +1 -1
- package/packages/render-hyperframes/src/component.ts +11 -1
- package/packages/render-hyperframes/src/fragment.ts +7 -4
- package/packages/render-hyperframes/src/manifest.ts +4 -4
- package/packages/render-hyperframes/src/surface.ts +6 -6
- package/packages/runtime/README.md +8 -1
- package/packages/runtime/src/catalog.ts +2 -0
- package/packages/runtime/src/execution.ts +15 -4
- package/packages/runtime/src/index.ts +2 -1
- package/packages/runtime/src/log.ts +51 -0
- package/packages/runtime/src/types.ts +5 -8
- package/packages/runtime-host-node/README.md +30 -0
- package/packages/runtime-host-node/package.json +1 -0
- package/packages/runtime-host-node/src/index.ts +25 -9
- package/packages/runtime-host-node/src/packages.ts +47 -50
- package/packages/runtime-kit/README.md +5 -0
- package/packages/runtime-kit/src/index.ts +3 -1
- package/packages/runtime-local/README.md +111 -4
- package/packages/runtime-local/src/config.ts +202 -56
- package/packages/runtime-local/src/control.ts +9 -1
- package/packages/runtime-local/src/executor.ts +66 -0
- package/packages/runtime-local/src/host.ts +37 -17
- package/packages/runtime-local/src/log.ts +48 -0
- package/packages/runtime-local/src/programs.ts +41 -25
- package/packages/runtime-local/src/result-writer.ts +2 -0
- package/packages/runtime-local/src/runtime.ts +10 -6
- package/packages/runtime-local/src/supervisor.ts +142 -0
- package/packages/runtime-local/src/types.ts +9 -2
- package/packages/runtime-local/src/worker-process.ts +7 -24
- package/packages/runtime-local/src/worker.ts +55 -83
- package/packages/screen-overlay/README.md +3 -3
- package/packages/screen-overlay/package.json +1 -1
- package/packages/screen-overlay/src/component.ts +3 -3
- package/packages/screen-overlay/src/fragment.ts +5 -4
- package/packages/screen-overlay/src/manifest.ts +7 -6
- package/packages/screen-overlay/src/program.ts +9 -9
- package/packages/screen-overlay/src/surface.ts +6 -7
- package/packages/script/README.md +37 -2
- package/packages/script/src/edit.ts +123 -73
- package/packages/script/src/lexical.ts +40 -6
- package/packages/script/src/manifest.ts +2 -2
- package/packages/script/src/narrative.ts +1 -0
- package/packages/script/src/parser.ts +36 -8
- package/packages/script/src/surface.ts +4 -3
- package/packages/script/src/types.ts +5 -1
- package/packages/script-studio/package.json +9 -3
- package/packages/script-studio/src/index.ts +2 -0
- package/packages/script-studio/src/projection.ts +105 -0
- package/packages/seedance/README.md +30 -1
- package/packages/seedance/src/index.ts +18 -7
- package/packages/seedance/src/surface.ts +17 -4
- package/packages/seedance-kits/README.md +10 -2
- package/packages/seedance-kits/kits/speaker-v1.svs +5 -5
- package/packages/seedream/README.md +1 -1
- package/packages/sound/README.md +81 -0
- package/packages/sound/package.json +25 -0
- package/packages/sound/src/activation.ts +11 -0
- package/packages/sound/src/component.ts +28 -0
- package/packages/sound/src/index.ts +5 -0
- package/packages/sound/src/manifest.ts +47 -0
- package/packages/sound/src/program.ts +84 -0
- package/packages/sound/src/style.ts +34 -0
- package/packages/sound/src/surface.ts +90 -0
- package/packages/sound-studio/README.md +22 -0
- package/packages/sound-studio/package.json +20 -0
- package/packages/sound-studio/src/activation.ts +6 -0
- package/packages/sound-studio/src/index.ts +74 -0
- package/packages/speech/README.md +2 -2
- package/packages/speech-alignment/src/align.ts +45 -21
- package/packages/speech-alignment/src/local.ts +8 -0
- package/packages/speech-alignment/src/locate.ts +1 -1
- package/packages/store-sqlite/README.md +7 -0
- package/packages/store-sqlite/src/store.ts +84 -83
- package/packages/studio/INSPECTOR.md +117 -0
- package/packages/studio/README.md +149 -14
- package/packages/studio/package.json +8 -7
- package/packages/studio/src/build-library.ts +99 -84
- package/packages/studio/src/companion-assembly.ts +1 -0
- package/packages/studio/src/domain.ts +1 -1
- package/packages/studio/src/fallback-companions.ts +3 -3
- package/packages/studio/src/feedback-server.ts +51 -0
- package/packages/studio/src/feedback-store.ts +66 -0
- package/packages/studio/src/feedback.ts +60 -0
- package/packages/studio/src/library-media.ts +19 -0
- package/packages/studio/src/parameter-values.ts +83 -1
- package/packages/studio/src/parameters.ts +132 -43
- package/packages/studio/src/preview/render.ts +5 -1
- package/packages/studio/src/preview/runtime-shim.ts +49 -3
- package/packages/studio/src/programme.ts +14 -30
- package/packages/studio/src/server.ts +66 -34
- package/packages/studio/src/shared.ts +24 -8
- package/packages/studio/src/snapshot.ts +21 -132
- package/packages/studio/src/studio-preflight.ts +3 -3
- package/packages/studio/src/studio-registry.ts +72 -6
- package/packages/studio/src/style.css +342 -190
- package/packages/studio/src/temporal-edit.ts +131 -0
- package/packages/studio/src/ui/artifact-name.ts +80 -0
- package/packages/studio/src/ui/artifact-preview.ts +99 -0
- package/packages/studio/src/ui/comments.ts +233 -0
- package/packages/studio/src/ui/icons.ts +10 -1
- package/packages/studio/src/ui/library.ts +373 -192
- package/packages/studio/src/ui/main.ts +291 -110
- package/packages/studio/src/ui/material-preview.ts +1 -1
- package/packages/studio/src/ui/overlay.ts +31 -26
- package/packages/studio/src/ui/scrub-preview.ts +108 -0
- package/packages/studio/src/ui/sidebar-panel.ts +31 -0
- package/packages/studio/src/ui/stage.ts +188 -9
- package/packages/studio/src/ui/timeline.ts +187 -281
- package/packages/studio/start.ts +19 -5
- package/packages/studio-adapter/README.md +151 -11
- package/packages/studio-adapter/src/index.ts +126 -14
- package/packages/temporal/README.md +6 -6
- package/packages/temporal/package.json +1 -1
- package/packages/temporal/src/component.ts +5 -6
- package/packages/temporal/src/index.ts +8 -6
- package/packages/temporal/src/location.ts +11 -11
- package/packages/temporal/src/projection.ts +19 -19
- package/packages/temporal/src/rational.ts +4 -4
- package/packages/temporal-markup/EDITING.md +183 -0
- package/packages/temporal-markup/README.md +31 -11
- package/packages/temporal-markup/package.json +1 -1
- package/packages/temporal-markup/src/index.ts +20 -25
- package/packages/temporal-markup/src/space.ts +10 -41
- package/packages/timeline/README.md +31 -0
- package/packages/{semantic-track → timeline}/package.json +1 -1
- package/packages/timeline/src/activation.ts +8 -0
- package/packages/timeline/src/component.ts +24 -0
- package/packages/timeline/src/identity.ts +60 -0
- package/packages/timeline/src/index.ts +6 -0
- package/packages/{semantic-track → timeline}/src/location.ts +20 -20
- package/packages/timeline/src/manifest.ts +39 -0
- package/packages/{semantic-track → timeline}/src/projection.ts +14 -14
- package/packages/timeline/src/types.ts +24 -0
- package/packages/timeline-author/README.md +68 -0
- package/packages/{speech-track → timeline-author}/package.json +6 -4
- package/packages/timeline-author/src/activation.ts +22 -0
- package/packages/{speech-track → timeline-author}/src/component.ts +15 -13
- package/packages/{speech-track → timeline-author}/src/fragment.ts +14 -23
- package/packages/timeline-author/src/index.ts +7 -0
- package/packages/timeline-author/src/manifest.ts +78 -0
- package/packages/timeline-author/src/program.ts +107 -0
- package/packages/timeline-author/src/surface.ts +46 -0
- package/packages/timeline-author/src/types.ts +6 -0
- package/packages/typography-track/README.md +4 -4
- package/packages/typography-track/package.json +1 -1
- package/packages/typography-track/src/component.ts +4 -4
- package/packages/typography-track/src/fragment.ts +4 -3
- package/packages/typography-track/src/manifest.ts +11 -9
- package/packages/typography-track/src/program.ts +15 -15
- package/packages/typography-track/src/surface.ts +17 -18
- package/packages/typography-track-studio/package.json +8 -3
- package/packages/typography-track-studio/src/index.ts +5 -1
- package/packages/video-cli/README.md +16 -4
- package/packages/video-cli/package.json +2 -1
- package/packages/video-cli/src/creation.ts +25 -9
- package/packages/video-cli/src/index.ts +1 -1
- package/packages/video-cli/src/studio-distribution.ts +2 -1
- package/packages/volcengine-matting/README.md +3 -3
- package/packages/whisperx/README.md +8 -1
- package/packages/workspace/src/index.ts +2 -0
- package/packages/workspace-fs-node/README.md +4 -1
- package/packages/workspace-fs-node/src/workspace.ts +3 -1
- package/services/whisperx/README.md +14 -0
- package/services/whisperx/pyproject.toml +2 -0
- package/services/whisperx/uv.lock +20 -20
- package/packages/provider-hyperframes-aws-lambda/README.md +0 -30
- package/packages/provider-hyperframes-aws-lambda/package.json +0 -30
- package/packages/provider-hyperframes-aws-lambda/src/activation.ts +0 -97
- package/packages/provider-hyperframes-aws-lambda/src/client.ts +0 -114
- package/packages/provider-hyperframes-aws-lambda/src/index.ts +0 -21
- package/packages/provider-hyperframes-aws-lambda/src/provider.ts +0 -522
- package/packages/provider-kie/README.md +0 -134
- package/packages/provider-kie/package.json +0 -43
- package/packages/provider-kie/src/activation.ts +0 -71
- package/packages/provider-kie/src/index.ts +0 -10
- package/packages/provider-kie/src/mapping.ts +0 -182
- package/packages/provider-kie/src/provider.ts +0 -657
- package/packages/provider-kie/src/routes.ts +0 -150
- package/packages/provider-xiaomi-mimo/README.md +0 -32
- package/packages/provider-xiaomi-mimo/src/activation.ts +0 -57
- package/packages/provider-xiaomi-mimo/src/index.ts +0 -5
- package/packages/provider-xiaomi-mimo/src/provider.ts +0 -214
- package/packages/runtime/src/environment.ts +0 -6
- package/packages/semantic-track/README.md +0 -21
- package/packages/semantic-track/src/activation.ts +0 -8
- package/packages/semantic-track/src/component.ts +0 -24
- package/packages/semantic-track/src/identity.ts +0 -58
- package/packages/semantic-track/src/index.ts +0 -6
- package/packages/semantic-track/src/manifest.ts +0 -38
- package/packages/semantic-track/src/types.ts +0 -26
- package/packages/speech-track/README.md +0 -51
- package/packages/speech-track/src/activation.ts +0 -19
- package/packages/speech-track/src/index.ts +0 -7
- package/packages/speech-track/src/manifest.ts +0 -73
- package/packages/speech-track/src/program.ts +0 -64
- package/packages/speech-track/src/surface.ts +0 -35
- package/packages/speech-track/src/types.ts +0 -6
- package/packages/speech-track-studio/README.md +0 -3
- package/packages/speech-track-studio/package.json +0 -14
- package/packages/speech-track-studio/src/activation.ts +0 -7
- package/packages/speech-track-studio/src/index.ts +0 -40
- /package/packages/{cli → project-context-node}/src/project-context.ts +0 -0
- /package/packages/{speech-track → timeline-author}/preview/Track.png +0 -0
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
# `@hypit/speech-track`
|
|
2
|
-
|
|
3
|
-
Assemble ordered SemanticTakes into a semantic timeline and its original sound. The performance
|
|
4
|
-
carrying the Script is the A-roll, whether its picture fills the screen, appears in an inset,
|
|
5
|
-
is a transparent cutout, or is covered by other pictures. This role establishes time; the visual
|
|
6
|
-
composition decides where and how that material appears.
|
|
7
|
-
|
|
8
|
-
```svml
|
|
9
|
-
<speech:Track id="speech">
|
|
10
|
-
<speech:Take source={opening.take}/>
|
|
11
|
-
<speech:Take source={answer.take}/>
|
|
12
|
-
</speech:Track>
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
The Takes are already normalized and semantic. Source order and actual prepared lengths establish
|
|
16
|
-
the shared ProgramSpace. Local word positions and Segment boundaries become global positions.
|
|
17
|
-
One Take may contain several speakers or camera cuts; a wordless Take supplies its media boundaries.
|
|
18
|
-
|
|
19
|
-
| Output | Use |
|
|
20
|
-
| --- | --- |
|
|
21
|
-
| `.semantic` | Semantic time and prepared materials for Film, Caption, Media and project components |
|
|
22
|
-
| `.audio` | Original performance sound at its assembled positions |
|
|
23
|
-
|
|
24
|
-
Select `.audio` in Film when that sound belongs in the result. This explicit convenience projection
|
|
25
|
-
keeps the prepared source at its original speed and gain; a Take without audio contributes no clip.
|
|
26
|
-
For independent music, effects or authored mixing choices, use [Audio Track](../audio-track/README.md).
|
|
27
|
-
|
|
28
|
-
## Present the performance
|
|
29
|
-
|
|
30
|
-
[Media Track](../media-track/README.md#display-a-semantic-performance) can consume the assembled
|
|
31
|
-
performance through a Media Performance:
|
|
32
|
-
|
|
33
|
-
```svml
|
|
34
|
-
<media:Track id="performance" semantic={speech.semantic} canvas={canvas}>
|
|
35
|
-
<media:Performance during="program" frame={layout.full}
|
|
36
|
-
appearance={look.performance}/>
|
|
37
|
-
</media:Track>
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
Include `performance.visual` and `speech.audio` in Film. The Media Recipe supplies `stack-order`,
|
|
41
|
-
fit, clipping, rounded corners, border and other presentation choices. A selected window that starts
|
|
42
|
-
inside a Take begins at the matching source frame. Presentation continues across Take boundaries.
|
|
43
|
-
|
|
44
|
-
A project component can also consume `.semantic` and use `projectSemanticMedia` from
|
|
45
|
-
`@hypit/hypit/semantic-track` to obtain selected material spans and their source positions. When video and
|
|
46
|
-
graphics share layout or motion, that component can own both in one visual program. Independent
|
|
47
|
-
Caption or other overlays can remain separate Tracks.
|
|
48
|
-
|
|
49
|
-
[Media Pipeline](../media-pipeline/README.md) owns preparation;
|
|
50
|
-
[Semantic Track](../semantic-track/README.md) owns the timeline and its projections.
|
|
51
|
-
The [Studio Companion](../speech-track-studio/src/index.ts) exposes the original audio clips.
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { createMarkupSurfaceHostFacet } from "@hypit/markup";
|
|
2
|
-
import {
|
|
3
|
-
decodeSpeechTrackSurface, speechTrackComponent, speechTrackManifest,
|
|
4
|
-
speechTrackModuleRef,
|
|
5
|
-
speechTrackMarkupSurfaces,
|
|
6
|
-
} from "./index.js";
|
|
7
|
-
|
|
8
|
-
export const hypitPackage = {
|
|
9
|
-
format: "hypit.node-package@1" as const,
|
|
10
|
-
modules: [{
|
|
11
|
-
manifest: speechTrackManifest,
|
|
12
|
-
}],
|
|
13
|
-
components: [speechTrackComponent],
|
|
14
|
-
hostFacets: [createMarkupSurfaceHostFacet({
|
|
15
|
-
module: speechTrackModuleRef,
|
|
16
|
-
declaration: speechTrackMarkupSurfaces.find((item) => item.name === "track")!, handler: decodeSpeechTrackSurface,
|
|
17
|
-
})],
|
|
18
|
-
};
|
|
19
|
-
export default hypitPackage;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/** Official Speech Track authoring and deterministic SemanticTrack assembly. */
|
|
2
|
-
export { speechTrackComponent } from "./component.js";
|
|
3
|
-
export { createSpeechTrackFragment } from "./fragment.js";
|
|
4
|
-
export { speechTrackManifest, speechTrackMarkupSurfaces, speechTrackModuleRef, speechTrackProducers, speechTrackTypes, speechTrackHeaderSchema, speechTrackSetSchema } from "./manifest.js";
|
|
5
|
-
export { appendSpeechTrackTake, assembleSpeechTrack, assertSpeechTrackHeader, assertSpeechTrackSet, createSpeechTrackSet, sealSpeechTrackHeader } from "./program.js";
|
|
6
|
-
export { decodeSpeechTrackSurface } from "./surface.js";
|
|
7
|
-
export type * from "./types.js";
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { semanticTakeSchema, speechDependency, speechTypes } from "@hypit/speech";
|
|
2
|
-
import { compositionDependency, compositionTypes } from "@hypit/composition";
|
|
3
|
-
import { semanticTrackDependency, semanticTrackTypes } from "@hypit/semantic-track";
|
|
4
|
-
import type { ModuleManifest, ValueSchema } from "@hypit/protocol";
|
|
5
|
-
export const speechTrackModuleRef = { name: "@hypit/speech-track", version: "1" } as const;
|
|
6
|
-
export const speechTrackTypes = {
|
|
7
|
-
header: { module: speechTrackModuleRef, name: "SpeechTrackHeader" },
|
|
8
|
-
trackSet: { module: speechTrackModuleRef, name: "SpeechTrackSet" },
|
|
9
|
-
} as const;
|
|
10
|
-
export const speechTrackProducers = {
|
|
11
|
-
createSet: { module: speechTrackModuleRef, name: "create-track-set" },
|
|
12
|
-
appendTake: { module: speechTrackModuleRef, name: "append-track-take" },
|
|
13
|
-
assembleTrack: { module: speechTrackModuleRef, name: "assemble-semantic-track" },
|
|
14
|
-
} as const;
|
|
15
|
-
export const speechTrackHeaderSchema: ValueSchema = { kind: "object", fields: { id: { schema: { kind: "string", minLength: 1 } } } };
|
|
16
|
-
export const speechTrackSetSchema: ValueSchema = { kind: "object", fields: { takes: { schema: { kind: "array", items: { kind: "object", fields: { semantic: { schema: semanticTakeSchema } } } } } } };
|
|
17
|
-
export const speechTrackMarkupSurfaces = [{
|
|
18
|
-
name: "track", tag: "Track", mode: "structured",
|
|
19
|
-
outputs: [speechTrackTypes.header, semanticTrackTypes.track, compositionTypes.audioTrack],
|
|
20
|
-
vocabulary: {
|
|
21
|
-
summary: "Assembles ordered SemanticTakes into one semantic timeline and its original performance audio.",
|
|
22
|
-
attributes: [{ name: "id", kind: "identifier", required: true, summary: "Names the semantic assembly and its outputs." }],
|
|
23
|
-
children: [{ tag: "Take", cardinality: "many", summary: "A prepared SemanticTake in performance order.",
|
|
24
|
-
attributes: [{ name: "source", kind: "reference", required: true, accepts: [speechTypes.semanticTake], summary: "The normalized, aligned performance." }] }],
|
|
25
|
-
ports: [
|
|
26
|
-
{ name: "semantic", type: semanticTrackTypes.track, summary: "The semantic timeline, retaining its prepared material." },
|
|
27
|
-
{ name: "audio", type: compositionTypes.audioTrack, summary: "Original performance audio aligned to that timeline; select it explicitly in Film." },
|
|
28
|
-
],
|
|
29
|
-
example: '<speech:Track id="speech"><speech:Take source={opening.take}/><speech:Take source={answer.take}/></speech:Track>',
|
|
30
|
-
notes: ["Use Media or a project visual component to present the performance. Those components choose placement and motion independently of semantic assembly."],
|
|
31
|
-
},
|
|
32
|
-
}] as const;
|
|
33
|
-
export const speechTrackManifest: ModuleManifest = {
|
|
34
|
-
format: "hypit.module@1",
|
|
35
|
-
name: speechTrackModuleRef.name,
|
|
36
|
-
version: speechTrackModuleRef.version,
|
|
37
|
-
dependencies: [
|
|
38
|
-
speechDependency,
|
|
39
|
-
compositionDependency,
|
|
40
|
-
semanticTrackDependency,
|
|
41
|
-
],
|
|
42
|
-
types: [
|
|
43
|
-
{ name: speechTrackTypes.header.name },
|
|
44
|
-
{ name: speechTrackTypes.trackSet.name },
|
|
45
|
-
],
|
|
46
|
-
capabilities: [],
|
|
47
|
-
producers: [
|
|
48
|
-
{
|
|
49
|
-
name: speechTrackProducers.createSet.name,
|
|
50
|
-
inputs: [],
|
|
51
|
-
outputs: [{ name: "set", type: speechTrackTypes.trackSet }],
|
|
52
|
-
needs: [],
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
name: speechTrackProducers.appendTake.name,
|
|
56
|
-
inputs: [
|
|
57
|
-
{ name: "set", type: speechTrackTypes.trackSet },
|
|
58
|
-
{ name: "take", type: speechTypes.semanticTake },
|
|
59
|
-
],
|
|
60
|
-
outputs: [{ name: "set", type: speechTrackTypes.trackSet }],
|
|
61
|
-
needs: [],
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
name: speechTrackProducers.assembleTrack.name,
|
|
65
|
-
inputs: [
|
|
66
|
-
{ name: "header", type: speechTrackTypes.header },
|
|
67
|
-
{ name: "set", type: speechTrackTypes.trackSet },
|
|
68
|
-
],
|
|
69
|
-
outputs: [{ name: "track", type: semanticTrackTypes.track }],
|
|
70
|
-
needs: [],
|
|
71
|
-
},
|
|
72
|
-
],
|
|
73
|
-
};
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { assertSemanticTakeIdentity } from "@hypit/speech";
|
|
2
|
-
import type { SemanticTake } from "@hypit/speech";
|
|
3
|
-
import { sealSemanticTrack } from "@hypit/semantic-track";
|
|
4
|
-
import type { SemanticTrack } from "@hypit/semantic-track";
|
|
5
|
-
import type { SpeechTrackHeader, SpeechTrackSet, SpeechTrackTake } from "./types.js";
|
|
6
|
-
function assert(condition: unknown, message: string): asserts condition {
|
|
7
|
-
if (!condition) throw new Error(message);
|
|
8
|
-
}
|
|
9
|
-
export function sealSpeechTrackHeader(value: SpeechTrackHeader): SpeechTrackHeader { return { id: value.id }; }
|
|
10
|
-
export function assertSpeechTrackHeader(value: SpeechTrackHeader): void {
|
|
11
|
-
assert(value.id.trim().length > 0, "SpeechTrackHeader id must not be empty");
|
|
12
|
-
}
|
|
13
|
-
function sealSpeechTrackSet(value: SpeechTrackSet): SpeechTrackSet { return structuredClone(value); }
|
|
14
|
-
function assertTake(take: SpeechTrackTake): void { assertSemanticTakeIdentity(take.semantic); }
|
|
15
|
-
export function assertSpeechTrackSet(value: SpeechTrackSet): void {
|
|
16
|
-
const segments = new Set<string>();
|
|
17
|
-
for (const take of value.takes) {
|
|
18
|
-
assertSemanticTakeIdentity(take.semantic);
|
|
19
|
-
const segmentId = take.semantic.segment.segmentId;
|
|
20
|
-
assert(!segments.has(segmentId), `Speech Track repeats Segment ${segmentId}`);
|
|
21
|
-
segments.add(segmentId);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export function createSpeechTrackSet(): SpeechTrackSet {
|
|
26
|
-
return sealSpeechTrackSet({
|
|
27
|
-
takes: [],
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
function appendTake(
|
|
32
|
-
set: SpeechTrackSet,
|
|
33
|
-
take: SpeechTrackTake,
|
|
34
|
-
): SpeechTrackSet {
|
|
35
|
-
assertSpeechTrackSet(set);
|
|
36
|
-
assertTake(take);
|
|
37
|
-
assert(!set.takes.some((item) => item.semantic.segment.segmentId === take.semantic.segment.segmentId),
|
|
38
|
-
`Speech Track repeats Segment ${take.semantic.segment.segmentId}`);
|
|
39
|
-
return sealSpeechTrackSet({
|
|
40
|
-
takes: [...set.takes, take],
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export function appendSpeechTrackTake(set: SpeechTrackSet, semantic: SemanticTake): SpeechTrackSet {
|
|
45
|
-
return appendTake(set, { semantic });
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export function assembleSpeechTrack(
|
|
49
|
-
header: SpeechTrackHeader,
|
|
50
|
-
set: SpeechTrackSet,
|
|
51
|
-
): SemanticTrack {
|
|
52
|
-
assertSpeechTrackHeader(header);
|
|
53
|
-
assertSpeechTrackSet(set);
|
|
54
|
-
assert(set.takes.length > 0, "Speech Track must contain at least one Take");
|
|
55
|
-
for (const take of set.takes) assertTake(take);
|
|
56
|
-
const narrativeId = set.takes[0]!.semantic.narrativeId;
|
|
57
|
-
assert(set.takes.every((take) => take.semantic.narrativeId === narrativeId),
|
|
58
|
-
"Speech Track cannot mix Takes from different Narratives");
|
|
59
|
-
return sealSemanticTrack({
|
|
60
|
-
id: header.id,
|
|
61
|
-
narrativeId,
|
|
62
|
-
items: set.takes.map((item) => ({ take: item.semantic })),
|
|
63
|
-
});
|
|
64
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { assertAttributes, assertEmptyElement, localName, textAttribute, type StructuredSurfaceHandler } from "@hypit/markup";
|
|
2
|
-
import { sameType } from "@hypit/protocol";
|
|
3
|
-
import { speechTypes } from "@hypit/speech";
|
|
4
|
-
import { createSpeechTrackFragment } from "./fragment.js";
|
|
5
|
-
import { speechTrackTypes } from "./manifest.js";
|
|
6
|
-
|
|
7
|
-
export const decodeSpeechTrackSurface: StructuredSurfaceHandler = ({ element, resolveReference }) => {
|
|
8
|
-
assertAttributes(element, ["id"]);
|
|
9
|
-
const id = textAttribute(element, "id");
|
|
10
|
-
const takes = element.children.flatMap(child => {
|
|
11
|
-
if (child.kind === "text") {
|
|
12
|
-
if (child.value.trim()) throw new Error("Speech Track accepts only Take children.");
|
|
13
|
-
return [];
|
|
14
|
-
}
|
|
15
|
-
if (localName(child.name) !== "Take") throw new Error("Speech Track accepts only Take children.");
|
|
16
|
-
assertAttributes(child, ["source"]);
|
|
17
|
-
assertEmptyElement(child);
|
|
18
|
-
const source = child.attributes.source;
|
|
19
|
-
if (typeof source !== "object" || source.kind !== "reference") throw new Error("Speech Take source must be a reference.");
|
|
20
|
-
const resolved = resolveReference(source.path);
|
|
21
|
-
if (resolved === undefined || !sameType(resolved.type, speechTypes.semanticTake)) throw new Error("Speech Take source must be a SemanticTake.");
|
|
22
|
-
return [resolved];
|
|
23
|
-
});
|
|
24
|
-
const inputs = takes.map((_, index) => ({ takeName: `take-${index + 1}` }));
|
|
25
|
-
const fragment = createSpeechTrackFragment({ takes: inputs });
|
|
26
|
-
return {
|
|
27
|
-
records: [{ id: `${id}.header`, type: speechTrackTypes.header, value: { kind: "inline", value: { id } }, range: element.range }],
|
|
28
|
-
fragments: [fragment],
|
|
29
|
-
components: [{ id, fragment: fragment.id, inputs: {
|
|
30
|
-
header: { kind: "record", id: `${id}.header` },
|
|
31
|
-
...Object.fromEntries(takes.map((take, index) => [inputs[index]!.takeName, take.ref])),
|
|
32
|
-
}, outputs: { semantic: `${id}.semantic`, audio: `${id}.audio` }, range: element.range }],
|
|
33
|
-
exports: [`${id}.semantic`, `${id}.audio`],
|
|
34
|
-
};
|
|
35
|
-
};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { SemanticTake } from "@hypit/speech";
|
|
2
|
-
export type SpeechTrackHeader = { readonly id: string };
|
|
3
|
-
export type SpeechTrackTake = { readonly semantic: SemanticTake };
|
|
4
|
-
export type SpeechTrackSet = { readonly takes: readonly SpeechTrackTake[] };
|
|
5
|
-
export type SpeechTrackInput = { readonly takeName: string };
|
|
6
|
-
export type SpeechTrackFragmentOptions = { readonly takes: readonly SpeechTrackInput[] };
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@hypit/speech-track-studio",
|
|
3
|
-
"version": "0.0.0-dev",
|
|
4
|
-
"license": "SEE LICENSE IN LICENSE",
|
|
5
|
-
"private": true,
|
|
6
|
-
"type": "module",
|
|
7
|
-
"exports": { ".": "./src/index.ts" },
|
|
8
|
-
"hypit": { "activation": "./src/activation.ts" },
|
|
9
|
-
"dependencies": {
|
|
10
|
-
"@hypit/speech-track": "workspace:*",
|
|
11
|
-
"@hypit/composition": "workspace:*",
|
|
12
|
-
"@hypit/studio-adapter": "workspace:*"
|
|
13
|
-
}
|
|
14
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { createStudioTrackCompanionHostFacet } from "@hypit/studio-adapter";
|
|
2
|
-
import { speechTrackStudioTrackCompanions } from "./index.js";
|
|
3
|
-
|
|
4
|
-
export default {
|
|
5
|
-
format: "hypit.node-package@1" as const,
|
|
6
|
-
hostFacets: [createStudioTrackCompanionHostFacet(speechTrackStudioTrackCompanions)],
|
|
7
|
-
};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { speechTrackModuleRef } from "@hypit/speech-track";
|
|
2
|
-
import { compositionTypes } from "@hypit/composition";
|
|
3
|
-
import type { StudioTrackCompanion, StudioTrackCompanionContext, StudioEntityDraft } from "@hypit/studio-adapter";
|
|
4
|
-
import { artifactPreview, previewLayer } from "@hypit/studio-adapter";
|
|
5
|
-
type SpeechAudioTrack = {
|
|
6
|
-
readonly clips?: readonly {
|
|
7
|
-
readonly id: string;
|
|
8
|
-
readonly subjectId?: string;
|
|
9
|
-
readonly artifact?: { readonly resource?: string };
|
|
10
|
-
}[];
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
function projectSpeechAudio(context: StudioTrackCompanionContext): readonly StudioEntityDraft[] {
|
|
14
|
-
const clips = new Map(((context.track.value as SpeechAudioTrack).clips ?? [])
|
|
15
|
-
.map((clip) => [clip.id, clip] as const));
|
|
16
|
-
return context.generic().map((entity) => {
|
|
17
|
-
const id = entity.presentId ?? entity.authoredId;
|
|
18
|
-
const clip = clips.get(id);
|
|
19
|
-
const subjectId = clip?.subjectId;
|
|
20
|
-
return {
|
|
21
|
-
...entity,
|
|
22
|
-
authoredId: subjectId ?? id,
|
|
23
|
-
display: {
|
|
24
|
-
title: subjectId ?? entity.authoredId,
|
|
25
|
-
layers: clip?.artifact?.resource === undefined ? [] : [previewLayer(artifactPreview("audio", clip.artifact.resource), "waveform")],
|
|
26
|
-
},
|
|
27
|
-
presentation: { entity: "audio-clip", chrome: "standard" },
|
|
28
|
-
};
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export const speechTrackStudioTrackCompanions: readonly StudioTrackCompanion[] = [
|
|
33
|
-
{
|
|
34
|
-
id: "audio", role: "track",
|
|
35
|
-
output: { type: compositionTypes.audioTrack, surface: "track", modules: [speechTrackModuleRef] },
|
|
36
|
-
family: "speech-audio", tone: "green", label: "Speech Audio", icon: "waveform",
|
|
37
|
-
bindings: [], inspector: [], project: projectSpeechAudio,
|
|
38
|
-
lane: { heightPx: 48 },
|
|
39
|
-
},
|
|
40
|
-
];
|
|
File without changes
|
|
File without changes
|