vidspotai-shared 1.0.69-dev.0 → 1.0.69
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/lib/globals/aiModels/enums.d.ts +6 -63
- package/lib/globals/aiModels/enums.d.ts.map +1 -1
- package/lib/globals/aiModels/enums.js +9 -78
- package/lib/globals/aiModels/index.d.ts +30 -2
- package/lib/globals/aiModels/index.d.ts.map +1 -1
- package/lib/globals/aiModels/index.js +35 -7
- package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/bytedance.js +0 -19
- package/lib/globals/aiModels/providers/google.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/google.js +2 -150
- package/lib/globals/aiModels/providers/kling.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/kling.js +37 -280
- package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/minimax.js +11 -76
- package/lib/globals/aiModels/providers/openai.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/openai.js +6 -90
- package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/pixverse.js +29 -111
- package/lib/globals/aiModels/providers/runway.d.ts.map +1 -1
- package/lib/globals/aiModels/providers/runway.js +2 -64
- package/lib/globals/aiModels/types.d.ts +1 -20
- package/lib/globals/aiModels/types.d.ts.map +1 -1
- package/lib/globals/ttsModels/index.d.ts +0 -2
- package/lib/globals/ttsModels/index.d.ts.map +1 -1
- package/lib/globals/ttsModels/index.js +1 -9
- package/lib/globals/ttsModels/types.d.ts +1 -1
- package/lib/globals/ttsModels/types.d.ts.map +1 -1
- package/lib/globals/ttsModels/voices.d.ts +4 -39
- package/lib/globals/ttsModels/voices.d.ts.map +1 -1
- package/lib/globals/ttsModels/voices.js +26 -273
- package/lib/globals/types.d.ts +1 -59
- package/lib/globals/types.d.ts.map +1 -1
- package/lib/globals/types.js +2 -81
- package/lib/index.d.ts +0 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +0 -1
- package/lib/models/index.d.ts +0 -6
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/index.js +0 -6
- package/lib/models/user.model.d.ts +1 -12
- package/lib/models/user.model.d.ts.map +1 -1
- package/lib/models/video.model.d.ts +8 -120
- package/lib/models/video.model.d.ts.map +1 -1
- package/lib/models/video.model.js +0 -10
- package/lib/services/aiGen/aiGenFactory.service.d.ts +1 -21
- package/lib/services/aiGen/aiGenFactory.service.d.ts.map +1 -1
- package/lib/services/aiGen/aiGenFactory.service.js +21 -84
- package/lib/services/aiGen/helpers.d.ts.map +1 -1
- package/lib/services/aiGen/helpers.js +0 -10
- package/lib/services/aiGen/providers/alibaba/alibaba.d.ts +3 -14
- package/lib/services/aiGen/providers/alibaba/alibaba.d.ts.map +1 -1
- package/lib/services/aiGen/providers/alibaba/alibaba.js +22 -155
- package/lib/services/aiGen/providers/azure/azure.service.d.ts +14 -0
- package/lib/services/aiGen/providers/azure/azure.service.d.ts.map +1 -0
- package/lib/services/aiGen/providers/azure/azure.service.js +108 -0
- package/lib/services/aiGen/providers/azure/index.d.ts +2 -0
- package/lib/services/aiGen/providers/azure/index.d.ts.map +1 -0
- package/lib/services/aiGen/providers/{pexels → azure}/index.js +1 -1
- package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts +4 -22
- package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/baseAiGenProvider.service.js +0 -32
- package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/bytedance/bytedance.service.js +25 -13
- package/lib/services/aiGen/providers/google/google.service.d.ts +2 -11
- package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/google/google.service.js +28 -245
- package/lib/services/aiGen/providers/index.d.ts +0 -3
- package/lib/services/aiGen/providers/index.d.ts.map +1 -1
- package/lib/services/aiGen/providers/index.js +0 -3
- package/lib/services/aiGen/providers/kling/index.d.ts +0 -1
- package/lib/services/aiGen/providers/kling/index.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/index.js +0 -1
- package/lib/services/aiGen/providers/kling/kling.service.d.ts +1 -12
- package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/kling.service.js +26 -357
- package/lib/services/aiGen/providers/kling/types.d.ts +0 -105
- package/lib/services/aiGen/providers/kling/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/minimax/minimax.service.d.ts +2 -15
- package/lib/services/aiGen/providers/minimax/minimax.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/minimax/minimax.service.js +5 -128
- package/lib/services/aiGen/providers/minimax/types.d.ts +1 -10
- package/lib/services/aiGen/providers/minimax/types.d.ts.map +1 -1
- package/lib/services/aiGen/providers/openai/openai.service.d.ts +2 -8
- package/lib/services/aiGen/providers/openai/openai.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/openai/openai.service.js +7 -184
- package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/pixverse/pixverse.service.js +2 -125
- package/lib/services/aiGen/providers/runway/runway.service.d.ts +2 -12
- package/lib/services/aiGen/providers/runway/runway.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/runway/runway.service.js +21 -224
- package/lib/services/aiGen/providers/types.d.ts +6 -263
- package/lib/services/aiGen/providers/types.d.ts.map +1 -1
- package/lib/services/analytics.service.js +4 -2
- package/lib/services/bullmq.service.d.ts +1 -6
- package/lib/services/bullmq.service.d.ts.map +1 -1
- package/lib/services/bullmq.service.js +14 -62
- package/lib/services/credit.service.d.ts.map +1 -1
- package/lib/services/credit.service.js +7 -45
- package/lib/services/firestore.service.d.ts +0 -17
- package/lib/services/firestore.service.d.ts.map +1 -1
- package/lib/services/firestore.service.js +0 -30
- package/lib/services/gcp/index.d.ts +0 -1
- package/lib/services/gcp/index.d.ts.map +1 -1
- package/lib/services/gcp/index.js +0 -1
- package/lib/services/index.d.ts +0 -13
- package/lib/services/index.d.ts.map +1 -1
- package/lib/services/index.js +0 -13
- package/lib/services/redis.service.d.ts +0 -9
- package/lib/services/redis.service.d.ts.map +1 -1
- package/lib/services/redis.service.js +11 -20
- package/lib/services/tts/index.d.ts +0 -2
- package/lib/services/tts/index.d.ts.map +1 -1
- package/lib/services/tts/index.js +0 -2
- package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -1
- package/lib/services/tts/providers/elevenlabs.service.js +24 -91
- package/lib/services/tts/ttsFactory.service.d.ts.map +1 -1
- package/lib/services/tts/ttsFactory.service.js +0 -6
- package/lib/services/tts/types.d.ts +0 -33
- package/lib/services/tts/types.d.ts.map +1 -1
- package/lib/utils/errors.d.ts +0 -8
- package/lib/utils/errors.d.ts.map +1 -1
- package/lib/utils/errors.js +0 -8
- package/lib/utils/helpers.d.ts +0 -13
- package/lib/utils/helpers.d.ts.map +1 -1
- package/lib/utils/helpers.js +11 -48
- package/lib/utils/logger.d.ts.map +1 -1
- package/lib/utils/logger.js +1 -37
- package/package.json +1 -5
- package/lib/globals/aiModels/providers/alibaba.d.ts +0 -4
- package/lib/globals/aiModels/providers/alibaba.d.ts.map +0 -1
- package/lib/globals/aiModels/providers/alibaba.js +0 -194
- package/lib/globals/aiModels/providers/elevenlabs.d.ts +0 -14
- package/lib/globals/aiModels/providers/elevenlabs.d.ts.map +0 -1
- package/lib/globals/aiModels/providers/elevenlabs.js +0 -29
- package/lib/globals/aiModels/providers/pixverseTemplates.d.ts +0 -36
- package/lib/globals/aiModels/providers/pixverseTemplates.d.ts.map +0 -1
- package/lib/globals/aiModels/providers/pixverseTemplates.js +0 -42
- package/lib/globals/aiModels/tierHelpers.d.ts +0 -33
- package/lib/globals/aiModels/tierHelpers.d.ts.map +0 -1
- package/lib/globals/aiModels/tierHelpers.js +0 -109
- package/lib/globals/ttsModels/providers/minimax.d.ts +0 -8
- package/lib/globals/ttsModels/providers/minimax.d.ts.map +0 -1
- package/lib/globals/ttsModels/providers/minimax.js +0 -18
- package/lib/globals/ttsModels/providers/openai.d.ts +0 -12
- package/lib/globals/ttsModels/providers/openai.d.ts.map +0 -1
- package/lib/globals/ttsModels/providers/openai.js +0 -22
- package/lib/models/agent.model.d.ts +0 -357
- package/lib/models/agent.model.d.ts.map +0 -1
- package/lib/models/agent.model.js +0 -21
- package/lib/models/cachedAsset.model.d.ts +0 -18
- package/lib/models/cachedAsset.model.d.ts.map +0 -1
- package/lib/models/cachedAsset.model.js +0 -2
- package/lib/models/cachedRawAsset.model.d.ts +0 -20
- package/lib/models/cachedRawAsset.model.d.ts.map +0 -1
- package/lib/models/cachedRawAsset.model.js +0 -2
- package/lib/models/image.model.d.ts +0 -47
- package/lib/models/image.model.d.ts.map +0 -1
- package/lib/models/image.model.js +0 -2
- package/lib/models/notification.model.d.ts +0 -25
- package/lib/models/notification.model.d.ts.map +0 -1
- package/lib/models/notification.model.js +0 -2
- package/lib/models/ref.model.d.ts +0 -80
- package/lib/models/ref.model.d.ts.map +0 -1
- package/lib/models/ref.model.js +0 -13
- package/lib/models/share.model.d.ts +0 -29
- package/lib/models/share.model.d.ts.map +0 -1
- package/lib/models/share.model.js +0 -2
- package/lib/schemas/agentPersona.schema.d.ts +0 -10
- package/lib/schemas/agentPersona.schema.d.ts.map +0 -1
- package/lib/schemas/agentPersona.schema.js +0 -11
- package/lib/schemas/agentRunJob.schema.d.ts +0 -105
- package/lib/schemas/agentRunJob.schema.d.ts.map +0 -1
- package/lib/schemas/agentRunJob.schema.js +0 -88
- package/lib/schemas/brandKit.schema.d.ts +0 -113
- package/lib/schemas/brandKit.schema.d.ts.map +0 -1
- package/lib/schemas/brandKit.schema.js +0 -46
- package/lib/schemas/brief.schema.d.ts +0 -263
- package/lib/schemas/brief.schema.d.ts.map +0 -1
- package/lib/schemas/brief.schema.js +0 -157
- package/lib/schemas/index.d.ts +0 -7
- package/lib/schemas/index.d.ts.map +0 -1
- package/lib/schemas/index.js +0 -22
- package/lib/schemas/project.schema.d.ts +0 -1025
- package/lib/schemas/project.schema.d.ts.map +0 -1
- package/lib/schemas/project.schema.js +0 -256
- package/lib/schemas/videoPlan.schema.d.ts +0 -590
- package/lib/schemas/videoPlan.schema.d.ts.map +0 -1
- package/lib/schemas/videoPlan.schema.js +0 -412
- package/lib/services/agent/beatSnap.d.ts +0 -10
- package/lib/services/agent/beatSnap.d.ts.map +0 -1
- package/lib/services/agent/beatSnap.js +0 -128
- package/lib/services/agent/bibleBuilder.d.ts +0 -43
- package/lib/services/agent/bibleBuilder.d.ts.map +0 -1
- package/lib/services/agent/bibleBuilder.js +0 -102
- package/lib/services/agent/bibleImageVision.d.ts +0 -45
- package/lib/services/agent/bibleImageVision.d.ts.map +0 -1
- package/lib/services/agent/bibleImageVision.js +0 -169
- package/lib/services/agent/chatAgent.d.ts +0 -79
- package/lib/services/agent/chatAgent.d.ts.map +0 -1
- package/lib/services/agent/chatAgent.js +0 -136
- package/lib/services/agent/costPreflight.d.ts +0 -61
- package/lib/services/agent/costPreflight.d.ts.map +0 -1
- package/lib/services/agent/costPreflight.js +0 -143
- package/lib/services/agent/critic.d.ts +0 -103
- package/lib/services/agent/critic.d.ts.map +0 -1
- package/lib/services/agent/critic.js +0 -139
- package/lib/services/agent/editClassifier.d.ts +0 -262
- package/lib/services/agent/editClassifier.d.ts.map +0 -1
- package/lib/services/agent/editClassifier.js +0 -186
- package/lib/services/agent/eval/index.d.ts +0 -5
- package/lib/services/agent/eval/index.d.ts.map +0 -1
- package/lib/services/agent/eval/index.js +0 -20
- package/lib/services/agent/eval/judge.d.ts +0 -14
- package/lib/services/agent/eval/judge.d.ts.map +0 -1
- package/lib/services/agent/eval/judge.js +0 -96
- package/lib/services/agent/eval/recorder.d.ts +0 -28
- package/lib/services/agent/eval/recorder.d.ts.map +0 -1
- package/lib/services/agent/eval/recorder.js +0 -100
- package/lib/services/agent/eval/seedBriefs.d.ts +0 -16
- package/lib/services/agent/eval/seedBriefs.d.ts.map +0 -1
- package/lib/services/agent/eval/seedBriefs.js +0 -1188
- package/lib/services/agent/eval/types.d.ts +0 -230
- package/lib/services/agent/eval/types.d.ts.map +0 -1
- package/lib/services/agent/eval/types.js +0 -73
- package/lib/services/agent/executor.d.ts +0 -141
- package/lib/services/agent/executor.d.ts.map +0 -1
- package/lib/services/agent/executor.js +0 -561
- package/lib/services/agent/globalActions.d.ts +0 -49
- package/lib/services/agent/globalActions.d.ts.map +0 -1
- package/lib/services/agent/globalActions.js +0 -328
- package/lib/services/agent/index.d.ts +0 -38
- package/lib/services/agent/index.d.ts.map +0 -1
- package/lib/services/agent/index.js +0 -53
- package/lib/services/agent/llmCaller.d.ts +0 -144
- package/lib/services/agent/llmCaller.d.ts.map +0 -1
- package/lib/services/agent/llmCaller.js +0 -16
- package/lib/services/agent/llmCallerAnthropic.d.ts +0 -90
- package/lib/services/agent/llmCallerAnthropic.d.ts.map +0 -1
- package/lib/services/agent/llmCallerAnthropic.js +0 -255
- package/lib/services/agent/llmCallerGateway.d.ts +0 -61
- package/lib/services/agent/llmCallerGateway.d.ts.map +0 -1
- package/lib/services/agent/llmCallerGateway.js +0 -360
- package/lib/services/agent/llmCallerRegistry.d.ts +0 -6
- package/lib/services/agent/llmCallerRegistry.d.ts.map +0 -1
- package/lib/services/agent/llmCallerRegistry.js +0 -39
- package/lib/services/agent/modelQualityNotes.d.ts +0 -100
- package/lib/services/agent/modelQualityNotes.d.ts.map +0 -1
- package/lib/services/agent/modelQualityNotes.js +0 -248
- package/lib/services/agent/modelRouter.d.ts +0 -41
- package/lib/services/agent/modelRouter.d.ts.map +0 -1
- package/lib/services/agent/modelRouter.js +0 -65
- package/lib/services/agent/musicSelect.d.ts +0 -23
- package/lib/services/agent/musicSelect.d.ts.map +0 -1
- package/lib/services/agent/musicSelect.js +0 -109
- package/lib/services/agent/overlayRenderer.d.ts +0 -67
- package/lib/services/agent/overlayRenderer.d.ts.map +0 -1
- package/lib/services/agent/overlayRenderer.js +0 -253
- package/lib/services/agent/perSceneCritic.d.ts +0 -90
- package/lib/services/agent/perSceneCritic.d.ts.map +0 -1
- package/lib/services/agent/perSceneCritic.js +0 -125
- package/lib/services/agent/personas.d.ts +0 -78
- package/lib/services/agent/personas.d.ts.map +0 -1
- package/lib/services/agent/personas.js +0 -177
- package/lib/services/agent/planDiff.d.ts +0 -76
- package/lib/services/agent/planDiff.d.ts.map +0 -1
- package/lib/services/agent/planDiff.js +0 -182
- package/lib/services/agent/planMutations.d.ts +0 -46
- package/lib/services/agent/planMutations.d.ts.map +0 -1
- package/lib/services/agent/planMutations.js +0 -120
- package/lib/services/agent/planner/Planner.d.ts +0 -107
- package/lib/services/agent/planner/Planner.d.ts.map +0 -1
- package/lib/services/agent/planner/Planner.js +0 -591
- package/lib/services/agent/planner/overlaySanity.d.ts +0 -7
- package/lib/services/agent/planner/overlaySanity.d.ts.map +0 -1
- package/lib/services/agent/planner/overlaySanity.js +0 -86
- package/lib/services/agent/planner/promptSections.d.ts +0 -25
- package/lib/services/agent/planner/promptSections.d.ts.map +0 -1
- package/lib/services/agent/planner/promptSections.js +0 -174
- package/lib/services/agent/planner/repair.d.ts +0 -16
- package/lib/services/agent/planner/repair.d.ts.map +0 -1
- package/lib/services/agent/planner/repair.js +0 -51
- package/lib/services/agent/planner/structuralRules.d.ts +0 -10
- package/lib/services/agent/planner/structuralRules.d.ts.map +0 -1
- package/lib/services/agent/planner/structuralRules.js +0 -111
- package/lib/services/agent/planner/validators.d.ts +0 -65
- package/lib/services/agent/planner/validators.d.ts.map +0 -1
- package/lib/services/agent/planner/validators.js +0 -284
- package/lib/services/agent/planner.d.ts +0 -3
- package/lib/services/agent/planner.d.ts.map +0 -1
- package/lib/services/agent/planner.js +0 -14
- package/lib/services/agent/providerFallback/chains.d.ts +0 -100
- package/lib/services/agent/providerFallback/chains.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/chains.js +0 -198
- package/lib/services/agent/providerFallback/classifier.d.ts +0 -36
- package/lib/services/agent/providerFallback/classifier.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/classifier.js +0 -103
- package/lib/services/agent/providerFallback/index.d.ts +0 -4
- package/lib/services/agent/providerFallback/index.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/index.js +0 -19
- package/lib/services/agent/providerFallback/withFallback.d.ts +0 -60
- package/lib/services/agent/providerFallback/withFallback.d.ts.map +0 -1
- package/lib/services/agent/providerFallback/withFallback.js +0 -93
- package/lib/services/agent/providerTaskCache.d.ts +0 -50
- package/lib/services/agent/providerTaskCache.d.ts.map +0 -1
- package/lib/services/agent/providerTaskCache.js +0 -98
- package/lib/services/agent/qualityGate.d.ts +0 -82
- package/lib/services/agent/qualityGate.d.ts.map +0 -1
- package/lib/services/agent/qualityGate.js +0 -232
- package/lib/services/agent/referenceImageRenderer.d.ts +0 -37
- package/lib/services/agent/referenceImageRenderer.d.ts.map +0 -1
- package/lib/services/agent/referenceImageRenderer.js +0 -92
- package/lib/services/agent/regenCore.d.ts +0 -60
- package/lib/services/agent/regenCore.d.ts.map +0 -1
- package/lib/services/agent/regenCore.js +0 -487
- package/lib/services/agent/runHelpers.d.ts +0 -44
- package/lib/services/agent/runHelpers.d.ts.map +0 -1
- package/lib/services/agent/runHelpers.js +0 -196
- package/lib/services/agent/sceneLayoutVision.d.ts +0 -90
- package/lib/services/agent/sceneLayoutVision.d.ts.map +0 -1
- package/lib/services/agent/sceneLayoutVision.js +0 -212
- package/lib/services/agent/stitchedVideoCritic.d.ts +0 -136
- package/lib/services/agent/stitchedVideoCritic.d.ts.map +0 -1
- package/lib/services/agent/stitchedVideoCritic.gemini.d.ts +0 -26
- package/lib/services/agent/stitchedVideoCritic.gemini.d.ts.map +0 -1
- package/lib/services/agent/stitchedVideoCritic.gemini.js +0 -198
- package/lib/services/agent/stitchedVideoCritic.js +0 -162
- package/lib/services/agent/taskPoller.d.ts +0 -65
- package/lib/services/agent/taskPoller.d.ts.map +0 -1
- package/lib/services/agent/taskPoller.js +0 -176
- package/lib/services/agent/textOverlayStyles.d.ts +0 -60
- package/lib/services/agent/textOverlayStyles.d.ts.map +0 -1
- package/lib/services/agent/textOverlayStyles.js +0 -174
- package/lib/services/agent/toolRegistry.d.ts +0 -73
- package/lib/services/agent/toolRegistry.d.ts.map +0 -1
- package/lib/services/agent/toolRegistry.js +0 -95
- package/lib/services/agent/tools/analyzeReference.tool.d.ts +0 -36
- package/lib/services/agent/tools/analyzeReference.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/analyzeReference.tool.js +0 -44
- package/lib/services/agent/tools/animateImage.tool.d.ts +0 -24
- package/lib/services/agent/tools/animateImage.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/animateImage.tool.js +0 -115
- package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts +0 -32
- package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/animateImageWithMotionBrush.tool.js +0 -135
- package/lib/services/agent/tools/composeScene.tool.d.ts +0 -978
- package/lib/services/agent/tools/composeScene.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/composeScene.tool.js +0 -90
- package/lib/services/agent/tools/estimateCost.tool.d.ts +0 -352
- package/lib/services/agent/tools/estimateCost.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/estimateCost.tool.js +0 -62
- package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +0 -32
- package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateAvatarVideo.tool.js +0 -143
- package/lib/services/agent/tools/generateCaptions.tool.d.ts +0 -42
- package/lib/services/agent/tools/generateCaptions.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateCaptions.tool.js +0 -196
- package/lib/services/agent/tools/generateImage.tool.d.ts +0 -74
- package/lib/services/agent/tools/generateImage.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateImage.tool.js +0 -206
- package/lib/services/agent/tools/generateVideo.tool.d.ts +0 -31
- package/lib/services/agent/tools/generateVideo.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateVideo.tool.js +0 -153
- package/lib/services/agent/tools/generateVoiceover.tool.d.ts +0 -44
- package/lib/services/agent/tools/generateVoiceover.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/generateVoiceover.tool.js +0 -206
- package/lib/services/agent/tools/index.d.ts +0 -20
- package/lib/services/agent/tools/index.d.ts.map +0 -1
- package/lib/services/agent/tools/index.js +0 -35
- package/lib/services/agent/tools/planVideo.tool.d.ts +0 -343
- package/lib/services/agent/tools/planVideo.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/planVideo.tool.js +0 -46
- package/lib/services/agent/tools/render.tool.d.ts +0 -367
- package/lib/services/agent/tools/render.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/render.tool.js +0 -48
- package/lib/services/agent/tools/searchMusic.tool.d.ts +0 -49
- package/lib/services/agent/tools/searchMusic.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/searchMusic.tool.js +0 -74
- package/lib/services/agent/tools/searchStock.tool.d.ts +0 -41
- package/lib/services/agent/tools/searchStock.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/searchStock.tool.js +0 -314
- package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +0 -59
- package/lib/services/agent/tools/searchUserLibrary.tool.d.ts.map +0 -1
- package/lib/services/agent/tools/searchUserLibrary.tool.js +0 -58
- package/lib/services/agent/ttsDuration.d.ts +0 -29
- package/lib/services/agent/ttsDuration.d.ts.map +0 -1
- package/lib/services/agent/ttsDuration.js +0 -60
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +0 -31
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +0 -1
- package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +0 -2
- package/lib/services/aiGen/canonicalAdapters/index.d.ts +0 -3
- package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +0 -1
- package/lib/services/aiGen/canonicalAdapters/index.js +0 -18
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +0 -23
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +0 -1
- package/lib/services/aiGen/canonicalAdapters/multiShot.types.js +0 -12
- package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts +0 -18
- package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.js +0 -102
- package/lib/services/aiGen/providers/fal/falImage.service.d.ts +0 -15
- package/lib/services/aiGen/providers/fal/falImage.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/fal/falImage.service.js +0 -141
- package/lib/services/aiGen/providers/fal/index.d.ts +0 -2
- package/lib/services/aiGen/providers/fal/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/fal/index.js +0 -17
- package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts +0 -4
- package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts.map +0 -1
- package/lib/services/aiGen/providers/kling/cameraAdapter.js +0 -53
- package/lib/services/aiGen/providers/kling/klingImage.service.d.ts +0 -21
- package/lib/services/aiGen/providers/kling/klingImage.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/kling/klingImage.service.js +0 -208
- package/lib/services/aiGen/providers/pexels/index.d.ts +0 -2
- package/lib/services/aiGen/providers/pexels/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pexels/pexels.service.d.ts +0 -11
- package/lib/services/aiGen/providers/pexels/pexels.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pexels/pexels.service.js +0 -150
- package/lib/services/aiGen/providers/pixabay/index.d.ts +0 -2
- package/lib/services/aiGen/providers/pixabay/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pixabay/index.js +0 -17
- package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts +0 -12
- package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/pixabay/pixabay.service.js +0 -156
- package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts +0 -3
- package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts.map +0 -1
- package/lib/services/aiGen/providers/runway/cameraAdapter.js +0 -46
- package/lib/services/aiGen/providers/unsplash/index.d.ts +0 -2
- package/lib/services/aiGen/providers/unsplash/index.d.ts.map +0 -1
- package/lib/services/aiGen/providers/unsplash/index.js +0 -17
- package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts +0 -16
- package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts.map +0 -1
- package/lib/services/aiGen/providers/unsplash/unsplash.service.js +0 -131
- package/lib/services/apiUsageCounter.service.d.ts +0 -20
- package/lib/services/apiUsageCounter.service.d.ts.map +0 -1
- package/lib/services/apiUsageCounter.service.js +0 -84
- package/lib/services/asr/assemblyai.service.d.ts +0 -72
- package/lib/services/asr/assemblyai.service.d.ts.map +0 -1
- package/lib/services/asr/assemblyai.service.js +0 -89
- package/lib/services/asr/index.d.ts +0 -3
- package/lib/services/asr/index.d.ts.map +0 -1
- package/lib/services/asr/index.js +0 -18
- package/lib/services/asr/whisper.service.d.ts +0 -18
- package/lib/services/asr/whisper.service.d.ts.map +0 -1
- package/lib/services/asr/whisper.service.js +0 -151
- package/lib/services/assetCache.service.d.ts +0 -54
- package/lib/services/assetCache.service.d.ts.map +0 -1
- package/lib/services/assetCache.service.js +0 -109
- package/lib/services/audioAnalysis/index.d.ts +0 -2
- package/lib/services/audioAnalysis/index.d.ts.map +0 -1
- package/lib/services/audioAnalysis/index.js +0 -17
- package/lib/services/audioAnalysis/onsetDetection.service.d.ts +0 -50
- package/lib/services/audioAnalysis/onsetDetection.service.d.ts.map +0 -1
- package/lib/services/audioAnalysis/onsetDetection.service.js +0 -140
- package/lib/services/credits/pricing.d.ts +0 -58
- package/lib/services/credits/pricing.d.ts.map +0 -1
- package/lib/services/credits/pricing.js +0 -111
- package/lib/services/editor/designToProject.d.ts +0 -75
- package/lib/services/editor/designToProject.d.ts.map +0 -1
- package/lib/services/editor/designToProject.js +0 -295
- package/lib/services/editor/planToProject.d.ts +0 -84
- package/lib/services/editor/planToProject.d.ts.map +0 -1
- package/lib/services/editor/planToProject.js +0 -395
- package/lib/services/editor/projectToDesign.d.ts +0 -4
- package/lib/services/editor/projectToDesign.d.ts.map +0 -1
- package/lib/services/editor/projectToDesign.js +0 -186
- package/lib/services/gcp/uploadAudioBuffer.d.ts +0 -13
- package/lib/services/gcp/uploadAudioBuffer.d.ts.map +0 -1
- package/lib/services/gcp/uploadAudioBuffer.js +0 -28
- package/lib/services/musicGen/index.d.ts +0 -6
- package/lib/services/musicGen/index.d.ts.map +0 -1
- package/lib/services/musicGen/index.js +0 -26
- package/lib/services/musicGen/musicSearchFactory.service.d.ts +0 -14
- package/lib/services/musicGen/musicSearchFactory.service.d.ts.map +0 -1
- package/lib/services/musicGen/musicSearchFactory.service.js +0 -59
- package/lib/services/musicGen/providers/curated.service.d.ts +0 -24
- package/lib/services/musicGen/providers/curated.service.d.ts.map +0 -1
- package/lib/services/musicGen/providers/curated.service.js +0 -173
- package/lib/services/musicGen/providers/jamendo.service.d.ts +0 -8
- package/lib/services/musicGen/providers/jamendo.service.d.ts.map +0 -1
- package/lib/services/musicGen/providers/jamendo.service.js +0 -113
- package/lib/services/musicGen/providers/mubert.service.d.ts +0 -10
- package/lib/services/musicGen/providers/mubert.service.d.ts.map +0 -1
- package/lib/services/musicGen/providers/mubert.service.js +0 -128
- package/lib/services/musicGen/types.d.ts +0 -46
- package/lib/services/musicGen/types.d.ts.map +0 -1
- package/lib/services/musicGen/types.js +0 -10
- package/lib/services/notification.service.d.ts +0 -22
- package/lib/services/notification.service.d.ts.map +0 -1
- package/lib/services/notification.service.js +0 -76
- package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts +0 -78
- package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts.map +0 -1
- package/lib/services/rateLimiter/distributedRateLimiter.service.js +0 -269
- package/lib/services/rateLimiter/index.d.ts +0 -2
- package/lib/services/rateLimiter/index.d.ts.map +0 -1
- package/lib/services/rateLimiter/index.js +0 -17
- package/lib/services/redisOptions.d.ts +0 -22
- package/lib/services/redisOptions.d.ts.map +0 -1
- package/lib/services/redisOptions.js +0 -51
- package/lib/services/tts/providers/minimax.service.d.ts +0 -14
- package/lib/services/tts/providers/minimax.service.d.ts.map +0 -1
- package/lib/services/tts/providers/minimax.service.js +0 -78
- package/lib/services/tts/providers/openai.service.d.ts +0 -14
- package/lib/services/tts/providers/openai.service.d.ts.map +0 -1
- package/lib/services/tts/providers/openai.service.js +0 -73
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Onset detection — finds the actual transient peaks in a music track so the
|
|
3
|
-
* agent can snap scene cuts to where a kick / snare / vocal entry actually
|
|
4
|
-
* lands, not just where a uniform BPM grid says they should.
|
|
5
|
-
*
|
|
6
|
-
* Backend: essentia.js (RhythmExtractor2013) — the same engine that powers
|
|
7
|
-
* Spotify's tempo estimation research. Industrial-strength for audio
|
|
8
|
-
* analysis.
|
|
9
|
-
*
|
|
10
|
-
* ╔═══════════════════════════════════════════════════════════════════════╗
|
|
11
|
-
* ║ LICENSING NOTE — essentia.js is AGPL-3 upstream. ║
|
|
12
|
-
* ║ ║
|
|
13
|
-
* ║ Until the MTG-UPF commercial license is signed, this module is ║
|
|
14
|
-
* ║ STRICTLY BACKEND-ONLY: ║
|
|
15
|
-
* ║ - never bundle into the frontend ║
|
|
16
|
-
* ║ - never include in any client-distributed artifact (Electron, ║
|
|
17
|
-
* ║ desktop, mobile, downloadable build) ║
|
|
18
|
-
* ║ - never expose the .wasm via a public URL ║
|
|
19
|
-
* ║ - never reference essentia by name in customer-facing copy, ║
|
|
20
|
-
* ║ marketing, blog posts, talks, job listings, or social posts ║
|
|
21
|
-
* ║ ║
|
|
22
|
-
* ║ Theory of operation: the SaaS commercial license — once signed — ║
|
|
23
|
-
* ║ covers VidSpot's use as the operator. Until then, do not amplify ║
|
|
24
|
-
* ║ visibility. See backend/docs/licensing-essentia.md for the full ║
|
|
25
|
-
* ║ constraint and contact (mtg-info@upf.edu). ║
|
|
26
|
-
* ║ ║
|
|
27
|
-
* ║ Operator switch: ENABLE_ONSET_DETECTION=true in env. Flip to false ║
|
|
28
|
-
* ║ to disable the module across every environment in one change — snap ║
|
|
29
|
-
* ║ pass falls back to BPM math safely. ║
|
|
30
|
-
* ╚═══════════════════════════════════════════════════════════════════════╝
|
|
31
|
-
*
|
|
32
|
-
* Operationally:
|
|
33
|
-
* - Lazy-loads the WASM module on first call (~5MB; once per worker boot)
|
|
34
|
-
* - Downloads the audio file to memory, decodes via audio-decode (MIT)
|
|
35
|
-
* - Mixes to mono (essentia algorithms expect a single channel)
|
|
36
|
-
* - Runs RhythmExtractor2013 → returns { bpm, beats: number[] (seconds) }
|
|
37
|
-
* - 12s hard timeout — long enough for a 3-min track on a cold WASM load,
|
|
38
|
-
* short enough that the planner endpoint stays responsive on a miss
|
|
39
|
-
* - In-memory cache keyed by URL — same music re-snaps for free
|
|
40
|
-
*
|
|
41
|
-
* Failure mode: returns undefined. Caller (snapPlanToBeats) falls back to
|
|
42
|
-
* uniform BPM math. Onset detection is enhancement, never a blocker.
|
|
43
|
-
*/
|
|
44
|
-
export interface OnsetAnalysis {
|
|
45
|
-
bpm: number;
|
|
46
|
-
/** Beat / onset timestamps in seconds, sorted ascending. */
|
|
47
|
-
onsets: number[];
|
|
48
|
-
}
|
|
49
|
-
export declare function detectOnsets(audioUrl: string): Promise<OnsetAnalysis | undefined>;
|
|
50
|
-
//# sourceMappingURL=onsetDetection.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"onsetDetection.service.d.ts","sourceRoot":"","sources":["../../../src/services/audioAnalysis/onsetDetection.service.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,4DAA4D;IAC5D,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AA2FD,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAcvF"}
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.detectOnsets = detectOnsets;
|
|
40
|
-
const axios_1 = __importDefault(require("axios"));
|
|
41
|
-
const logger_1 = require("../../utils/logger");
|
|
42
|
-
let decodePromise;
|
|
43
|
-
async function loadDecode() {
|
|
44
|
-
if (!decodePromise) {
|
|
45
|
-
decodePromise = Promise.resolve().then(() => __importStar(require("audio-decode"))).then((m) => (m.default ?? m));
|
|
46
|
-
}
|
|
47
|
-
return decodePromise;
|
|
48
|
-
}
|
|
49
|
-
const TIMEOUT_MS = 12000;
|
|
50
|
-
const MAX_DOWNLOAD_BYTES = 30 * 1024 * 1024; // 30MB cap; longer tracks are rare and bloat memory.
|
|
51
|
-
const cache = new Map();
|
|
52
|
-
let essentiaPromise;
|
|
53
|
-
function isEnabled() {
|
|
54
|
-
return process.env.ENABLE_ONSET_DETECTION === "true";
|
|
55
|
-
}
|
|
56
|
-
async function loadEssentia() {
|
|
57
|
-
if (essentiaPromise)
|
|
58
|
-
return essentiaPromise;
|
|
59
|
-
essentiaPromise = (async () => {
|
|
60
|
-
// Dynamic require — keeps the WASM module out of the cold-start path
|
|
61
|
-
// for callers that never invoke onset detection (the default until
|
|
62
|
-
// the commercial license is in place).
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
64
|
-
const mod = require("essentia.js");
|
|
65
|
-
const wasm = mod.EssentiaWASM;
|
|
66
|
-
const inst = new mod.Essentia(wasm);
|
|
67
|
-
return inst;
|
|
68
|
-
})();
|
|
69
|
-
return essentiaPromise;
|
|
70
|
-
}
|
|
71
|
-
async function downloadAudio(url) {
|
|
72
|
-
const res = await axios_1.default.get(url, {
|
|
73
|
-
responseType: "arraybuffer",
|
|
74
|
-
timeout: 8000,
|
|
75
|
-
maxContentLength: MAX_DOWNLOAD_BYTES,
|
|
76
|
-
});
|
|
77
|
-
return Buffer.from(res.data);
|
|
78
|
-
}
|
|
79
|
-
function mixToMono(channels) {
|
|
80
|
-
if (channels.length === 1)
|
|
81
|
-
return channels[0];
|
|
82
|
-
const len = channels[0].length;
|
|
83
|
-
const out = new Float32Array(len);
|
|
84
|
-
for (let i = 0; i < len; i++) {
|
|
85
|
-
let sum = 0;
|
|
86
|
-
for (const ch of channels)
|
|
87
|
-
sum += ch[i];
|
|
88
|
-
out[i] = sum / channels.length;
|
|
89
|
-
}
|
|
90
|
-
return out;
|
|
91
|
-
}
|
|
92
|
-
async function runDetection(audioUrl) {
|
|
93
|
-
const buf = await downloadAudio(audioUrl);
|
|
94
|
-
const decode = await loadDecode();
|
|
95
|
-
const decoded = await decode(buf);
|
|
96
|
-
const mono = mixToMono(decoded.channelData);
|
|
97
|
-
const essentia = (await loadEssentia());
|
|
98
|
-
const signal = essentia.arrayToVector(mono);
|
|
99
|
-
const result = essentia.RhythmExtractor2013(signal);
|
|
100
|
-
const beats = [];
|
|
101
|
-
const beatVec = result.beats_position;
|
|
102
|
-
for (let i = 0; i < beatVec.size(); i++)
|
|
103
|
-
beats.push(beatVec.get(i));
|
|
104
|
-
if (!beats.length || !result.bpm)
|
|
105
|
-
return undefined;
|
|
106
|
-
return { bpm: Math.round(result.bpm), onsets: beats };
|
|
107
|
-
}
|
|
108
|
-
function withTimeout(p, ms) {
|
|
109
|
-
return new Promise((resolve) => {
|
|
110
|
-
const t = setTimeout(() => resolve(undefined), ms);
|
|
111
|
-
p.then((v) => {
|
|
112
|
-
clearTimeout(t);
|
|
113
|
-
resolve(v);
|
|
114
|
-
}, (err) => {
|
|
115
|
-
clearTimeout(t);
|
|
116
|
-
logger_1.logger.warn("onsetDetection: withTimeout rejected", {
|
|
117
|
-
err: err?.stack ?? err?.message ?? String(err),
|
|
118
|
-
});
|
|
119
|
-
resolve(undefined);
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
async function detectOnsets(audioUrl) {
|
|
124
|
-
if (!isEnabled())
|
|
125
|
-
return undefined;
|
|
126
|
-
const hit = cache.get(audioUrl);
|
|
127
|
-
if (hit)
|
|
128
|
-
return hit;
|
|
129
|
-
const analysis = await withTimeout(runDetection(audioUrl), TIMEOUT_MS);
|
|
130
|
-
if (analysis) {
|
|
131
|
-
cache.set(audioUrl, analysis);
|
|
132
|
-
if (cache.size > 100) {
|
|
133
|
-
// Drop oldest entry to bound memory; Map preserves insertion order.
|
|
134
|
-
const firstKey = cache.keys().next().value;
|
|
135
|
-
if (firstKey)
|
|
136
|
-
cache.delete(firstKey);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
return analysis;
|
|
140
|
-
}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Clip, Project } from "../../schemas/project.schema";
|
|
2
|
-
import { PlannedScene } from "../../schemas/videoPlan.schema";
|
|
3
|
-
/**
|
|
4
|
-
* Per-component pricing model for agent regen endpoints (Stage 6).
|
|
5
|
-
*
|
|
6
|
-
* Charging granularity matches generation granularity: regen the VO of a
|
|
7
|
-
* single clip → only VO cost is charged. Regen the visual → only visual.
|
|
8
|
-
* Music + overlays + captions have their own (mostly free) rates.
|
|
9
|
-
*
|
|
10
|
-
* Rates are conservative upper bounds used by the budget guard before a
|
|
11
|
-
* regen is dispatched. The *actual* spend is reconciled from provider
|
|
12
|
-
* receipts inside the executor and written back to `clip.provenance.creditsSpent`.
|
|
13
|
-
*/
|
|
14
|
-
export declare const CREDITS_PER_USD = 100;
|
|
15
|
-
export declare const BUDGET_GUARD_THRESHOLD_USD = 0.5;
|
|
16
|
-
export type RegenComponent = "visual" | "voiceover" | "music" | "overlays" | "captions";
|
|
17
|
-
export interface RegenCostEstimate {
|
|
18
|
-
component: RegenComponent;
|
|
19
|
-
amountUsd: number;
|
|
20
|
-
amountCredits: number;
|
|
21
|
-
breakdown: Record<string, number>;
|
|
22
|
-
exceedsBudgetGuard: boolean;
|
|
23
|
-
budgetGuardThresholdUsd: number;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Estimate the cost of regenerating one component of a clip / scene.
|
|
27
|
-
* Pass either a `clip` (existing Project clip) or a `scene` (PlannedScene)
|
|
28
|
-
* — both expose tier + duration, just from different sources.
|
|
29
|
-
*/
|
|
30
|
-
export declare function estimateRegenCost(args: {
|
|
31
|
-
component: RegenComponent;
|
|
32
|
-
clip?: Clip;
|
|
33
|
-
scene?: PlannedScene;
|
|
34
|
-
/** For voiceover regens: the new VO line text (used to count chars). */
|
|
35
|
-
voiceoverLine?: string;
|
|
36
|
-
/** When the VO line text changes, captions must also be re-cut. */
|
|
37
|
-
captionsAlsoChange?: boolean;
|
|
38
|
-
}): RegenCostEstimate;
|
|
39
|
-
/** History entry appended to `project.metadata.history[]` on each regen. */
|
|
40
|
-
export interface RegenHistoryEntry {
|
|
41
|
-
ts: string;
|
|
42
|
-
action: "regenerate";
|
|
43
|
-
component: RegenComponent;
|
|
44
|
-
clipId?: string;
|
|
45
|
-
sceneIndex?: number;
|
|
46
|
-
modelKey?: string;
|
|
47
|
-
estimatedCreditsSpent: number;
|
|
48
|
-
estimatedUsd: number;
|
|
49
|
-
actualCreditsSpent?: number;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Append a regen entry to `project.metadata.history[]`, returning the
|
|
53
|
-
* mutated project. Caller persists. Caps history at the most recent 200
|
|
54
|
-
* entries to keep the Firestore doc well under the 1 MiB limit (see
|
|
55
|
-
* Risk #2 in notes/AGENT_EDITOR_ROUND_TRIP.md).
|
|
56
|
-
*/
|
|
57
|
-
export declare function appendRegenHistory(project: Project, entry: RegenHistoryEntry): Project;
|
|
58
|
-
//# sourceMappingURL=pricing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pricing.d.ts","sourceRoot":"","sources":["../../../src/services/credits/pricing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAQ,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D;;;;;;;;;;GAUG;AAKH,eAAO,MAAM,eAAe,MAAM,CAAC;AAGnC,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,WAAW,GACX,OAAO,GACP,UAAU,GACV,UAAU,CAAC;AAqBf,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAmCD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,SAAS,EAAE,cAAc,CAAC;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,iBAAiB,CA6BpB;AAED,4EAA4E;AAC5E,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,cAAc,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAUT"}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BUDGET_GUARD_THRESHOLD_USD = exports.CREDITS_PER_USD = void 0;
|
|
4
|
-
exports.estimateRegenCost = estimateRegenCost;
|
|
5
|
-
exports.appendRegenHistory = appendRegenHistory;
|
|
6
|
-
/**
|
|
7
|
-
* Per-component pricing model for agent regen endpoints (Stage 6).
|
|
8
|
-
*
|
|
9
|
-
* Charging granularity matches generation granularity: regen the VO of a
|
|
10
|
-
* single clip → only VO cost is charged. Regen the visual → only visual.
|
|
11
|
-
* Music + overlays + captions have their own (mostly free) rates.
|
|
12
|
-
*
|
|
13
|
-
* Rates are conservative upper bounds used by the budget guard before a
|
|
14
|
-
* regen is dispatched. The *actual* spend is reconciled from provider
|
|
15
|
-
* receipts inside the executor and written back to `clip.provenance.creditsSpent`.
|
|
16
|
-
*/
|
|
17
|
-
// VidSpot convention: 1 credit ≈ $0.01 USD. The product surface (Stripe
|
|
18
|
-
// plans, dashboard chips) all speak credits; the budget guard speaks USD
|
|
19
|
-
// because the spec threshold ($0.50) is product-facing.
|
|
20
|
-
exports.CREDITS_PER_USD = 100;
|
|
21
|
-
// $0.50 user-confirmation threshold per Decision 4 (notes/AGENT_EDITOR_ROUND_TRIP.md §12).
|
|
22
|
-
exports.BUDGET_GUARD_THRESHOLD_USD = 0.5;
|
|
23
|
-
// Per-second visual cost by tier (USD). Coarse upper bounds — the executor
|
|
24
|
-
// reconciles to the provider's true charge after the fact.
|
|
25
|
-
const TIER_PER_SECOND_USD = {
|
|
26
|
-
T0: 0.005, // stock (per-call cost amortised over duration)
|
|
27
|
-
T1: 0.1, // image-to-video
|
|
28
|
-
T2: 0.03, // image-gen still
|
|
29
|
-
T3: 0.8, // premium text-to-video
|
|
30
|
-
};
|
|
31
|
-
// ElevenLabs creator-tier ballpark. Real rate varies by plan; conservative bound.
|
|
32
|
-
const ELEVENLABS_USD_PER_1K_CHARS = 0.18;
|
|
33
|
-
// Tiny GPT-4o-mini call to rewrite an overlay line.
|
|
34
|
-
const OVERLAY_LLM_USD_PER_CALL = 0.005;
|
|
35
|
-
// Local Whisper, Jamendo: free at the moment.
|
|
36
|
-
const CAPTION_USD_PER_MINUTE = 0;
|
|
37
|
-
const MUSIC_SEARCH_USD = 0;
|
|
38
|
-
const clipDurationMs = (c) => Math.max(0, c.display.to - c.display.from);
|
|
39
|
-
const sceneDurationMs = (s) => s.durationMs;
|
|
40
|
-
function visualUsd(args) {
|
|
41
|
-
if (!args.tier)
|
|
42
|
-
return 0;
|
|
43
|
-
return (args.durationMs / 1000) * TIER_PER_SECOND_USD[args.tier];
|
|
44
|
-
}
|
|
45
|
-
function voiceoverUsd(charCount) {
|
|
46
|
-
return (charCount / 1000) * ELEVENLABS_USD_PER_1K_CHARS;
|
|
47
|
-
}
|
|
48
|
-
function captionsUsd(durationMs) {
|
|
49
|
-
return (durationMs / 60000) * CAPTION_USD_PER_MINUTE;
|
|
50
|
-
}
|
|
51
|
-
function toEstimate(component, breakdown) {
|
|
52
|
-
const amountUsd = Object.values(breakdown).reduce((s, v) => s + v, 0);
|
|
53
|
-
return {
|
|
54
|
-
component,
|
|
55
|
-
amountUsd,
|
|
56
|
-
amountCredits: Math.ceil(amountUsd * exports.CREDITS_PER_USD),
|
|
57
|
-
breakdown,
|
|
58
|
-
exceedsBudgetGuard: amountUsd > exports.BUDGET_GUARD_THRESHOLD_USD,
|
|
59
|
-
budgetGuardThresholdUsd: exports.BUDGET_GUARD_THRESHOLD_USD,
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Estimate the cost of regenerating one component of a clip / scene.
|
|
64
|
-
* Pass either a `clip` (existing Project clip) or a `scene` (PlannedScene)
|
|
65
|
-
* — both expose tier + duration, just from different sources.
|
|
66
|
-
*/
|
|
67
|
-
function estimateRegenCost(args) {
|
|
68
|
-
const { component } = args;
|
|
69
|
-
const tier = args.clip?.provenance?.tier ?? args.scene?.tier;
|
|
70
|
-
const durationMs = (args.clip ? clipDurationMs(args.clip) : undefined) ??
|
|
71
|
-
(args.scene ? sceneDurationMs(args.scene) : 0);
|
|
72
|
-
switch (component) {
|
|
73
|
-
case "visual":
|
|
74
|
-
return toEstimate("visual", {
|
|
75
|
-
visual: visualUsd({ tier, durationMs }),
|
|
76
|
-
});
|
|
77
|
-
case "voiceover": {
|
|
78
|
-
const chars = args.voiceoverLine?.length ?? 0;
|
|
79
|
-
const breakdown = {
|
|
80
|
-
voiceover: voiceoverUsd(chars),
|
|
81
|
-
};
|
|
82
|
-
if (args.captionsAlsoChange) {
|
|
83
|
-
breakdown.captions = captionsUsd(durationMs);
|
|
84
|
-
}
|
|
85
|
-
return toEstimate("voiceover", breakdown);
|
|
86
|
-
}
|
|
87
|
-
case "music":
|
|
88
|
-
return toEstimate("music", { music: MUSIC_SEARCH_USD });
|
|
89
|
-
case "overlays":
|
|
90
|
-
return toEstimate("overlays", { overlays: OVERLAY_LLM_USD_PER_CALL });
|
|
91
|
-
case "captions":
|
|
92
|
-
return toEstimate("captions", { captions: captionsUsd(durationMs) });
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Append a regen entry to `project.metadata.history[]`, returning the
|
|
97
|
-
* mutated project. Caller persists. Caps history at the most recent 200
|
|
98
|
-
* entries to keep the Firestore doc well under the 1 MiB limit (see
|
|
99
|
-
* Risk #2 in notes/AGENT_EDITOR_ROUND_TRIP.md).
|
|
100
|
-
*/
|
|
101
|
-
function appendRegenHistory(project, entry) {
|
|
102
|
-
const meta = (project.metadata ?? {});
|
|
103
|
-
const existing = Array.isArray(meta.history)
|
|
104
|
-
? meta.history
|
|
105
|
-
: [];
|
|
106
|
-
const next = [...existing, entry].slice(-200);
|
|
107
|
-
return {
|
|
108
|
-
...project,
|
|
109
|
-
metadata: { ...meta, history: next },
|
|
110
|
-
};
|
|
111
|
-
}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import type { Project } from "../../schemas/project.schema";
|
|
2
|
-
/**
|
|
3
|
-
* Inverse of `projectToDesign`. Converts the editor's IDesign-shaped
|
|
4
|
-
* autosave blob into the canonical Project JSON the Remotion renderer
|
|
5
|
-
* consumes.
|
|
6
|
-
*
|
|
7
|
-
* The shared package can't import `@designcombo/types` (editor-only),
|
|
8
|
-
* so the input shape is declared inline as a permissive interface — we
|
|
9
|
-
* read what we need and ignore unknown fields. Producers (the editor's
|
|
10
|
-
* autosave hook) are not formally validated here; the resulting Project
|
|
11
|
-
* is validated by `ProjectSchema.parse()` downstream.
|
|
12
|
-
*
|
|
13
|
-
* Round-trip contract: designToProject(projectToDesign(p)) deeply
|
|
14
|
-
* equals p (covered by tests in this package). To preserve fields the
|
|
15
|
-
* editor's IDesign can't represent natively (provenance, locked, clip
|
|
16
|
-
* motion, ducking, caption words), the translator pair stashes them
|
|
17
|
-
* inside `metadata.*` on the design item; designToProject pulls them
|
|
18
|
-
* back here.
|
|
19
|
-
*/
|
|
20
|
-
interface DesignTrack {
|
|
21
|
-
id: string;
|
|
22
|
-
type: string;
|
|
23
|
-
items?: string[];
|
|
24
|
-
index?: number;
|
|
25
|
-
}
|
|
26
|
-
interface DesignItemBase {
|
|
27
|
-
id: string;
|
|
28
|
-
name?: string;
|
|
29
|
-
type: string;
|
|
30
|
-
display?: {
|
|
31
|
-
from?: number;
|
|
32
|
-
to?: number;
|
|
33
|
-
};
|
|
34
|
-
metadata?: Record<string, unknown>;
|
|
35
|
-
}
|
|
36
|
-
interface DesignItemDetails extends DesignItemBase {
|
|
37
|
-
details?: Record<string, unknown>;
|
|
38
|
-
}
|
|
39
|
-
interface DesignBackground {
|
|
40
|
-
type?: "color" | "image" | "transparent";
|
|
41
|
-
value?: string;
|
|
42
|
-
}
|
|
43
|
-
interface DesignTransition {
|
|
44
|
-
id?: string;
|
|
45
|
-
fromId?: string;
|
|
46
|
-
toId?: string;
|
|
47
|
-
kind?: string;
|
|
48
|
-
duration?: number;
|
|
49
|
-
}
|
|
50
|
-
export interface EditorDesignInput {
|
|
51
|
-
id?: string;
|
|
52
|
-
fps?: number;
|
|
53
|
-
size?: {
|
|
54
|
-
width?: number;
|
|
55
|
-
height?: number;
|
|
56
|
-
};
|
|
57
|
-
duration?: number;
|
|
58
|
-
background?: DesignBackground;
|
|
59
|
-
tracks?: DesignTrack[];
|
|
60
|
-
trackItemIds?: string[];
|
|
61
|
-
trackItemsMap?: Record<string, DesignItemBase>;
|
|
62
|
-
trackItemDetailsMap?: Record<string, DesignItemDetails>;
|
|
63
|
-
transitionIds?: string[];
|
|
64
|
-
transitionsMap?: Record<string, DesignTransition>;
|
|
65
|
-
/** Server-write-zone field: editor passes it back as-is on autosave. */
|
|
66
|
-
agentRunId?: string;
|
|
67
|
-
}
|
|
68
|
-
export declare function designToProject(design: unknown, meta: {
|
|
69
|
-
id: string;
|
|
70
|
-
name: string;
|
|
71
|
-
createdAt?: string;
|
|
72
|
-
updatedAt?: string;
|
|
73
|
-
}): Project;
|
|
74
|
-
export {};
|
|
75
|
-
//# sourceMappingURL=designToProject.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"designToProject.d.ts","sourceRoot":"","sources":["../../../src/services/editor/designToProject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,OAAO,EAIR,MAAM,8BAA8B,CAAC;AAGtC;;;;;;;;;;;;;;;;;GAiBG;AAEH,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,UAAU,iBAAkB,SAAQ,cAAc;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,UAAU,gBAAgB;IACxB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,aAAa,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,gBAAgB;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC/C,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACxD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAClD,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA+BD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,OAAO,EACf,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACzE,OAAO,CA4FT"}
|