@gentbajko/slopify 3.25.9 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/account-limits.js +30 -0
- package/dist/adapters/alignment/audio.js +1 -1
- package/dist/adapters/alignment/cache.js +4 -6
- package/dist/adapters/alignment/ctc.js +1 -2
- package/dist/adapters/alignment/lock.js +4 -3
- package/dist/adapters/alignment/multilingual.js +2 -4
- package/dist/adapters/alignment/prefetch.js +2 -1
- package/dist/adapters/alignment/runner.js +1 -1
- package/dist/adapters/alignment/worker.js +3 -2
- package/dist/adapters/explain.js +10 -12
- package/dist/adapters/ffmpeg.js +19 -1
- package/dist/adapters/host-cli/index.js +21 -4
- package/dist/adapters/host-cli/transport.js +2 -1
- package/dist/adapters/http-failure.js +53 -0
- package/dist/adapters/image/bytes.js +2 -1
- package/dist/adapters/image/codex.js +42 -9
- package/dist/adapters/image/fal.js +21 -53
- package/dist/adapters/image/google.js +33 -56
- package/dist/adapters/image/models.js +2 -2
- package/dist/adapters/image/openai.js +22 -48
- package/dist/adapters/image/reference.js +36 -0
- package/dist/adapters/image/replicate.js +21 -49
- package/dist/adapters/image/video.js +2 -1
- package/dist/adapters/interest/search-interest.js +113 -0
- package/dist/adapters/key-probes.js +54 -3
- package/dist/adapters/llm/antigravity-models.js +1 -1
- package/dist/adapters/llm/antigravity.js +11 -6
- package/dist/adapters/llm/assistant-cli.js +388 -0
- package/dist/adapters/llm/child-session.js +83 -0
- package/dist/adapters/llm/claude-code-models.js +52 -99
- package/dist/adapters/llm/claude-code.js +16 -4
- package/dist/adapters/llm/codex-limits.js +27 -68
- package/dist/adapters/llm/codex-models.js +1 -1
- package/dist/adapters/llm/codex-server-models.js +61 -109
- package/dist/adapters/llm/codex.js +12 -1
- package/dist/adapters/llm/document-workspace.js +3 -2
- package/dist/adapters/llm/image-workspace.js +3 -2
- package/dist/adapters/llm/openrouter.js +12 -48
- package/dist/adapters/llm/run-cli.js +9 -24
- package/dist/adapters/llm/sse-lines.js +5 -1
- package/dist/adapters/model-access.js +37 -0
- package/dist/adapters/tts/cartesia.js +15 -46
- package/dist/adapters/tts/elevenlabs.js +20 -52
- package/dist/adapters/tts/gemini.js +21 -41
- package/dist/adapters/tts/inworld-async.js +6 -2
- package/dist/adapters/tts/inworld.js +6 -2
- package/dist/adapters/tts/openai.js +20 -50
- package/dist/adapters/tts/system.js +2 -1
- package/dist/assets/models-lifecycle.yaml +6 -0
- package/dist/assistant-wiring.js +60 -0
- package/dist/autopilot-timers.js +59 -0
- package/dist/catalog/lifecycle.js +52 -0
- package/dist/catalog/propose.js +204 -0
- package/dist/catalog/registry.js +23 -14
- package/dist/catalog/schema.js +4 -1
- package/dist/catalog/store.js +39 -0
- package/dist/catalog/validate.js +5 -2
- package/dist/edge/autostart/native.js +3 -5
- package/dist/edge/autostart/prompt.js +2 -1
- package/dist/edge/autostart/service.js +3 -4
- package/dist/edge/cli-args.js +3 -4
- package/dist/edge/cli.js +2 -1
- package/dist/edge/docker-install/apply.js +11 -11
- package/dist/edge/docker-install/run.js +2 -1
- package/dist/edge/docker-install/state.js +4 -3
- package/dist/edge/docker-install/tree.js +2 -4
- package/dist/edge/docker-install/volume.js +3 -2
- package/dist/edge/docker.js +5 -4
- package/dist/edge/events/hub.js +5 -5
- package/dist/edge/http/actions.js +11 -32
- package/dist/edge/http/actor.js +5 -3
- package/dist/edge/http/app.js +86 -11
- package/dist/edge/http/assistant.js +129 -0
- package/dist/edge/http/audio-preview.js +4 -11
- package/dist/edge/http/auditions.js +1 -1
- package/dist/edge/http/autostart.js +5 -5
- package/dist/edge/http/backups.js +2 -4
- package/dist/edge/http/channel-memory.js +9 -22
- package/dist/edge/http/channels.js +14 -27
- package/dist/edge/http/checkpoints.js +39 -21
- package/dist/edge/http/design-templates.js +167 -0
- package/dist/edge/http/designs.js +178 -0
- package/dist/edge/http/diagnostics.js +5 -1
- package/dist/edge/http/document-themes.js +5 -14
- package/dist/edge/http/draft-files.js +1 -3
- package/dist/edge/http/draft-problem.js +5 -10
- package/dist/edge/http/drafts.js +3 -3
- package/dist/edge/http/entries.js +6 -9
- package/dist/edge/http/extension-auth.js +27 -0
- package/dist/edge/http/external-reviews.js +12 -11
- package/dist/edge/http/files.js +5 -11
- package/dist/edge/http/folder-location.js +1 -4
- package/dist/edge/http/fonts.js +0 -7
- package/dist/edge/http/home.js +47 -14
- package/dist/edge/http/host-cli.js +18 -8
- package/dist/edge/http/ids.js +8 -0
- package/dist/edge/http/keywords.js +35 -0
- package/dist/edge/http/model-checks.js +132 -0
- package/dist/edge/http/narration-peaks.js +5 -13
- package/dist/edge/http/onboarding.js +30 -26
- package/dist/edge/http/open-folder.js +5 -10
- package/dist/edge/http/outputs.js +7 -14
- package/dist/edge/http/patch-notes.js +6 -12
- package/dist/edge/http/planning.js +3 -7
- package/dist/edge/http/problem.js +2 -4
- package/dist/edge/http/project-create.js +2 -1
- package/dist/edge/http/project-templates.js +31 -19
- package/dist/edge/http/projects.js +24 -16
- package/dist/edge/http/prompts.js +9 -16
- package/dist/edge/http/pronunciations.js +1 -2
- package/dist/edge/http/providers.js +48 -34
- package/dist/edge/http/refusal.js +29 -0
- package/dist/edge/http/remote-access.js +40 -0
- package/dist/edge/http/remote-guard.js +71 -0
- package/dist/edge/http/request-guard.js +91 -0
- package/dist/edge/http/reviews.js +12 -25
- package/dist/edge/http/revision-files.js +6 -11
- package/dist/edge/http/revisions.js +14 -19
- package/dist/edge/http/run-cost.js +1 -2
- package/dist/edge/http/same-page.js +80 -0
- package/dist/edge/http/schedules.js +69 -40
- package/dist/edge/http/settings.js +27 -14
- package/dist/edge/http/social.js +283 -0
- package/dist/edge/http/staging.js +3 -5
- package/dist/edge/http/storage-files.js +5 -7
- package/dist/edge/http/storage.js +33 -25
- package/dist/edge/http/studio.js +94 -69
- package/dist/edge/http/style-preview.js +3 -6
- package/dist/edge/http/subtitles.js +3 -17
- package/dist/edge/http/template-studio.js +436 -0
- package/dist/edge/http/trash.js +11 -12
- package/dist/edge/http/tutorial.js +1 -2
- package/dist/edge/http/tutorials.js +5 -11
- package/dist/edge/http/update.js +7 -13
- package/dist/edge/http/waveform.js +3 -6
- package/dist/edge/http/youtube-edits.js +3 -4
- package/dist/edge/mcp/assistant.js +279 -0
- package/dist/edge/mcp/attribution.js +8 -2
- package/dist/edge/mcp/call-route.js +11 -2
- package/dist/edge/mcp/excluded-routes.js +29 -3
- package/dist/edge/mcp/http.js +11 -2
- package/dist/edge/mcp/instructions.js +6 -4
- package/dist/edge/mcp/library-tools.js +9 -5
- package/dist/edge/mcp/remake-tools.js +7 -4
- package/dist/edge/mcp/route-tool.js +35 -15
- package/dist/edge/mcp/server.js +13 -8
- package/dist/edge/mcp/tools-channels.js +11 -9
- package/dist/edge/mcp/tools-designs.js +165 -0
- package/dist/edge/mcp/tools-library.js +19 -7
- package/dist/edge/mcp/tools-planning.js +40 -21
- package/dist/edge/mcp/tools-projects.js +38 -11
- package/dist/edge/mcp/tools-publishing.js +9 -9
- package/dist/edge/mcp/tools-runs.js +23 -10
- package/dist/edge/mcp/tools-schedules.js +32 -8
- package/dist/edge/mcp/tools-setup.js +75 -11
- package/dist/edge/mcp/tools-social.js +47 -0
- package/dist/edge/mcp/tools-storage.js +11 -3
- package/dist/edge/mcp/tools-template-studio.js +166 -0
- package/dist/edge/mcp/tools.js +6 -0
- package/dist/edge/remote-access/cli.js +71 -0
- package/dist/edge/remote-access/model.js +32 -0
- package/dist/edge/remote-access/rules.js +207 -0
- package/dist/edge/remote-access/service.js +203 -0
- package/dist/edge/remote-access/store.js +44 -0
- package/dist/edge/remote-access/views.js +43 -0
- package/dist/extension/slopify-studio-chrome.zip +0 -0
- package/dist/extension/slopify-studio-firefox.zip +0 -0
- package/dist/host-cli/install.js +2 -2
- package/dist/host-cli/open-folder.js +2 -2
- package/dist/host-cli/paths.js +2 -4
- package/dist/host-cli/server.js +4 -4
- package/dist/host-cli/service.js +3 -3
- package/dist/host-cli/status.js +7 -7
- package/dist/kernel/db/migrations/0063-model-checks.sql +20 -0
- package/dist/kernel/db/migrations/0064-template-studio.sql +46 -0
- package/dist/kernel/db/migrations/0065-promise-and-assistant-reviews.sql +58 -0
- package/dist/kernel/db/migrations/0066-assistant.sql +44 -0
- package/dist/kernel/db/migrations/0067-autopilot.sql +6 -0
- package/dist/kernel/db/migrations/0068-topic-scores.sql +17 -0
- package/dist/kernel/db/migrations/0070-designs.sql +53 -0
- package/dist/kernel/db/migrations/0071-design-usage.sql +33 -0
- package/dist/kernel/db/migrations/0072-design-templates.sql +33 -0
- package/dist/kernel/db/migrations/0073-schedule-design-kind.sql +5 -0
- package/dist/kernel/db/migrations/0074-template-bakeoffs.sql +44 -0
- package/dist/kernel/db/migrations/0075-social-posts.sql +25 -0
- package/dist/kernel/db/migrations/0076-channel-social.sql +5 -0
- package/dist/kernel/db/migrations/0077-post-prompts.sql +17 -0
- package/dist/kernel/db/migrations/0078-uploaded-from-links.sql +7 -0
- package/dist/kernel/db/tx.js +2 -4
- package/dist/kernel/errors.js +27 -1
- package/dist/kernel/json-answer.js +15 -0
- package/dist/kernel/lock.js +4 -9
- package/dist/kernel/paths.js +8 -0
- package/dist/kernel/pipeline.js +12 -0
- package/dist/kernel/ports/assistant-cli.js +4 -0
- package/dist/kernel/ports/host-cli.js +3 -0
- package/dist/kernel/ports/interest.js +4 -0
- package/dist/kernel/ports/languages.js +0 -3
- package/dist/kernel/ports/model.js +2 -0
- package/dist/kernel/ports/settings-places.js +31 -0
- package/dist/kernel/ports/system-speech.js +31 -3
- package/dist/kernel/runner/attempt.js +14 -4
- package/dist/kernel/runner/audition.js +3 -1
- package/dist/kernel/runner/checkpoint-authority.js +2 -1
- package/dist/kernel/runner/index.js +8 -10
- package/dist/kernel/runner/model-access.js +40 -0
- package/dist/kernel/runner/model-check.js +153 -0
- package/dist/kernel/runner/providers.js +18 -12
- package/dist/kernel/runner/standalone.js +11 -7
- package/dist/main.js +338 -21
- package/dist/model-catalog.js +20 -0
- package/dist/model-checks.js +166 -0
- package/dist/patch-notes/4.0.0.md +51 -0
- package/dist/patch-notes/4.1.0.md +42 -0
- package/dist/patch-notes/index.json +12 -0
- package/dist/slices/admission/heads.js +2 -1
- package/dist/slices/admission/listing-facts.js +95 -0
- package/dist/slices/admission/repo.js +11 -7
- package/dist/slices/admission/rules.js +50 -15
- package/dist/slices/admission/schema.js +8 -0
- package/dist/slices/admission/stage-writes.js +0 -3
- package/dist/slices/admission/start.js +48 -31
- package/dist/slices/admission/state-words.js +34 -5
- package/dist/slices/admission/substitute.js +7 -4
- package/dist/slices/agents/attention-posts.js +31 -0
- package/dist/slices/agents/attention-templates.js +33 -0
- package/dist/slices/agents/attention.js +10 -1
- package/dist/slices/agents/connection.js +2 -6
- package/dist/slices/agents/model.js +6 -3
- package/dist/slices/agents/repo.js +15 -7
- package/dist/slices/article/continuation.js +0 -63
- package/dist/slices/article/plain.js +3 -2
- package/dist/slices/article/segments.js +2 -62
- package/dist/slices/assistant/access.js +1 -0
- package/dist/slices/assistant/asks.js +80 -0
- package/dist/slices/assistant/cost.js +54 -0
- package/dist/slices/assistant/gate.js +222 -0
- package/dist/slices/assistant/model.js +86 -0
- package/dist/slices/assistant/names.js +23 -0
- package/dist/slices/assistant/prompt.js +74 -0
- package/dist/slices/assistant/repo.js +74 -0
- package/dist/slices/assistant/tokens.js +18 -0
- package/dist/slices/assistant/turn.js +344 -0
- package/dist/slices/autopilot/buffer.js +76 -0
- package/dist/slices/autopilot/model.js +14 -0
- package/dist/slices/autopilot/notify.js +27 -0
- package/dist/slices/autopilot/repo.js +34 -0
- package/dist/slices/autopilot/signals.js +194 -0
- package/dist/slices/autopilot/warnings.js +85 -0
- package/dist/slices/autopilot/weekly.js +100 -0
- package/dist/slices/backups/files.js +2 -6
- package/dist/slices/backups/repo.js +3 -15
- package/dist/slices/backups/service.js +8 -7
- package/dist/slices/channels/cast-images.js +3 -2
- package/dist/slices/channels/model.js +0 -1
- package/dist/slices/channels/rebrand.js +0 -3
- package/dist/slices/channels/repo.js +4 -0
- package/dist/slices/channels/schema.js +7 -1
- package/dist/slices/channels/service.js +10 -0
- package/dist/slices/channels/videos.js +3 -15
- package/dist/slices/checkpoints/index.js +0 -1
- package/dist/slices/control/providers.js +2 -28
- package/dist/slices/designs/artwork.js +66 -0
- package/dist/slices/designs/budget.js +23 -0
- package/dist/slices/designs/calls.js +124 -0
- package/dist/slices/designs/check-context.js +38 -0
- package/dist/slices/designs/check-text.js +43 -0
- package/dist/slices/designs/fields.js +88 -0
- package/dist/slices/designs/frames.js +34 -0
- package/dist/slices/designs/gate.js +130 -0
- package/dist/slices/designs/layout.js +293 -0
- package/dist/slices/designs/model.js +35 -0
- package/dist/slices/designs/pdf-job.js +23 -0
- package/dist/slices/designs/pdf-pages.js +30 -0
- package/dist/slices/designs/pdf-runner.js +68 -0
- package/dist/slices/designs/pdf-worker.js +24 -0
- package/dist/slices/designs/picture-size.js +79 -0
- package/dist/slices/designs/pictures.js +55 -0
- package/dist/slices/designs/quote.js +24 -0
- package/dist/slices/designs/render-args.js +36 -0
- package/dist/slices/designs/render-input.js +59 -0
- package/dist/slices/designs/render.js +215 -0
- package/dist/slices/designs/repo.js +101 -0
- package/dist/slices/designs/requests.js +80 -0
- package/dist/slices/designs/runner.js +239 -0
- package/dist/slices/designs/sample-repo.js +91 -0
- package/dist/slices/designs/sample.js +223 -0
- package/dist/slices/designs/schema.js +87 -0
- package/dist/slices/designs/sections.js +44 -0
- package/dist/slices/designs/service.js +233 -0
- package/dist/slices/designs/steps-repo.js +102 -0
- package/dist/slices/designs/studio-kind.js +39 -0
- package/dist/slices/designs/template-checks.js +44 -0
- package/dist/slices/designs/template-make.js +118 -0
- package/dist/slices/designs/templates.js +218 -0
- package/dist/slices/document/fonts.js +2 -1
- package/dist/slices/document/model.js +7 -4
- package/dist/slices/document/render.js +2 -1
- package/dist/slices/document/theme-schema.js +1 -1
- package/dist/slices/document/theme.js +49 -3
- package/dist/slices/episodes/summarize.js +6 -2
- package/dist/slices/estimate/index.js +72 -28
- package/dist/slices/estimate/requests.js +4 -4
- package/dist/slices/fixes/rules.js +3 -1
- package/dist/slices/fonts/catalog.js +5 -3
- package/dist/slices/fonts/coverage.js +2 -1
- package/dist/slices/fonts/discovery.js +3 -2
- package/dist/slices/fonts/files.js +2 -6
- package/dist/slices/fonts/index.js +0 -1
- package/dist/slices/fonts/sfnt.js +45 -10
- package/dist/slices/images/appearance.js +8 -16
- package/dist/slices/images/scenes.js +102 -28
- package/dist/slices/keywords/digest.js +85 -0
- package/dist/slices/keywords/facts.js +92 -0
- package/dist/slices/keywords/fill.js +80 -0
- package/dist/slices/keywords/model.js +75 -0
- package/dist/slices/keywords/rules.js +187 -0
- package/dist/slices/keywords/schema.js +28 -0
- package/dist/slices/keywords/specs.js +260 -0
- package/dist/slices/keywords/values.js +74 -0
- package/dist/slices/library/lint.js +29 -12
- package/dist/slices/library/model.js +2 -0
- package/dist/slices/library/photorealistic.js +4 -12
- package/dist/slices/library/rename.js +9 -7
- package/dist/slices/library/save.js +14 -10
- package/dist/slices/library/slots.js +37 -11
- package/dist/slices/library/transfer.js +5 -4
- package/dist/slices/library/used-by.js +25 -10
- package/dist/slices/loudness/loudnorm.js +53 -12
- package/dist/slices/loudness/model.js +3 -2
- package/dist/slices/loudness/sentence-level.js +2 -1
- package/dist/slices/model-checks/cost.js +61 -0
- package/dist/slices/model-checks/listing.js +124 -0
- package/dist/slices/model-checks/model.js +20 -0
- package/dist/slices/model-checks/record.js +32 -0
- package/dist/slices/model-checks/repo.js +120 -0
- package/dist/slices/model-checks/rules.js +125 -0
- package/dist/slices/model-checks/run.js +143 -0
- package/dist/slices/model-checks/service.js +198 -0
- package/dist/slices/model-upkeep/model.js +1 -1
- package/dist/slices/model-upkeep/switch.js +72 -27
- package/dist/slices/model-upkeep/usage.js +39 -13
- package/dist/slices/narration/breaths.js +3 -1
- package/dist/slices/narration/clean-pieces.js +3 -1
- package/dist/slices/narration/concat.js +2 -1
- package/dist/slices/narration/pauses-model.js +3 -2
- package/dist/slices/narration/peaks.js +3 -4
- package/dist/slices/narration/pronunciation-chunks.js +4 -3
- package/dist/slices/narration/pronunciation.js +6 -4
- package/dist/slices/narration/steering.js +4 -3
- package/dist/slices/notifications/notifier.js +4 -3
- package/dist/slices/notifications/rules.js +5 -2
- package/dist/slices/notifications/settings.js +4 -12
- package/dist/slices/notifications/subject.js +4 -3
- package/dist/slices/onboarding/copy.js +21 -3
- package/dist/slices/onboarding/first-run.js +16 -40
- package/dist/slices/onboarding/full-video.js +3 -2
- package/dist/slices/onboarding/install.js +6 -4
- package/dist/slices/onboarding/model.js +26 -37
- package/dist/slices/onboarding/packs.js +22 -22
- package/dist/slices/onboarding/preferred-model.js +14 -0
- package/dist/slices/onboarding/quick-short.js +105 -65
- package/dist/slices/onboarding/sample.js +4 -2
- package/dist/slices/onboarding/state.js +9 -11
- package/dist/slices/onboarding/template.js +8 -6
- package/dist/slices/outputs/add.js +3 -2
- package/dist/slices/outputs/service.js +2 -2
- package/dist/slices/patch-notes/library.js +4 -3
- package/dist/slices/play-drafts/convert.js +4 -0
- package/dist/slices/play-drafts/readiness.js +3 -3
- package/dist/slices/play-drafts/review-inputs.js +9 -3
- package/dist/slices/play-drafts/review.js +5 -4
- package/dist/slices/play-drafts/schema.js +4 -0
- package/dist/slices/play-drafts/service.js +17 -7
- package/dist/slices/project-templates/from-project.js +9 -2
- package/dist/slices/project-templates/next-chapter.js +2 -1
- package/dist/slices/project-templates/provider-defaults.js +22 -0
- package/dist/slices/project-templates/repo.js +6 -1
- package/dist/slices/project-templates/setup-sections.js +26 -0
- package/dist/slices/project-templates/setup.js +14 -1
- package/dist/slices/project-templates/stand-ins.js +22 -0
- package/dist/slices/rebuild/activity.js +2 -0
- package/dist/slices/rebuild/admission-repo.js +3 -2
- package/dist/slices/rebuild/narration-history.js +4 -5
- package/dist/slices/rebuild/narration-retry.js +2 -1
- package/dist/slices/rebuild/preview-details.js +32 -14
- package/dist/slices/rebuild/preview-plan.js +3 -8
- package/dist/slices/rebuild/recipe-build.js +8 -3
- package/dist/slices/rebuild/recipe-describe.js +3 -3
- package/dist/slices/rebuild/recipe-digest.js +58 -0
- package/dist/slices/rebuild/recipe-input-schema.js +10 -0
- package/dist/slices/rebuild/recipe-keywords.js +71 -0
- package/dist/slices/rebuild/recipe-legacy.js +5 -1
- package/dist/slices/rebuild/recipe-model.js +4 -0
- package/dist/slices/rebuild/recipe-narration-text.js +2 -1
- package/dist/slices/rebuild/recipe-preparation.js +4 -4
- package/dist/slices/rebuild/recipe-reference.js +8 -4
- package/dist/slices/rebuild/recipe-reviews.js +27 -7
- package/dist/slices/rebuild/recipe-save.js +8 -5
- package/dist/slices/rebuild/recipe-scenes.js +40 -11
- package/dist/slices/rebuild/recipe-shorts.js +8 -8
- package/dist/slices/rebuild/recipe-social.js +46 -0
- package/dist/slices/rebuild/recipe-text.js +64 -20
- package/dist/slices/rebuild/recipe-validation.js +102 -31
- package/dist/slices/rebuild/recipe-visual.js +55 -16
- package/dist/slices/rebuild/recipe-voices.js +3 -2
- package/dist/slices/rebuild/recipe-work.js +19 -7
- package/dist/slices/rebuild/recipe-youtube.js +4 -3
- package/dist/slices/rebuild/recovery-selection.js +3 -1
- package/dist/slices/rebuild/recovery.js +9 -8
- package/dist/slices/rebuild/remake-outdated.js +5 -5
- package/dist/slices/rebuild/repo.js +4 -3
- package/dist/slices/rebuild/review-promise.js +25 -0
- package/dist/slices/rebuild/review-redo.js +3 -2
- package/dist/slices/rebuild/runtime-admission.js +4 -3
- package/dist/slices/rebuild/runtime-agent-review.js +11 -5
- package/dist/slices/rebuild/runtime-animate.js +10 -9
- package/dist/slices/rebuild/runtime-article.js +7 -5
- package/dist/slices/rebuild/runtime-checkpoints.js +5 -4
- package/dist/slices/rebuild/runtime-document.js +11 -13
- package/dist/slices/rebuild/runtime-export-bed.js +8 -12
- package/dist/slices/rebuild/runtime-export-edit.js +8 -16
- package/dist/slices/rebuild/runtime-export-inputs.js +12 -11
- package/dist/slices/rebuild/runtime-export-short.js +9 -5
- package/dist/slices/rebuild/runtime-export.js +38 -15
- package/dist/slices/rebuild/runtime-figure-card.js +2 -1
- package/dist/slices/rebuild/runtime-image.js +8 -12
- package/dist/slices/rebuild/runtime-instructions.js +2 -0
- package/dist/slices/rebuild/runtime-keywords.js +59 -0
- package/dist/slices/rebuild/runtime-lines.js +2 -11
- package/dist/slices/rebuild/runtime-local.js +17 -22
- package/dist/slices/rebuild/runtime-narration-publication.js +2 -5
- package/dist/slices/rebuild/runtime-narration-reuse.js +9 -13
- package/dist/slices/rebuild/runtime-narration-text.js +13 -17
- package/dist/slices/rebuild/runtime-pictures.js +2 -4
- package/dist/slices/rebuild/runtime-piece-label.js +10 -6
- package/dist/slices/rebuild/runtime-plan.js +31 -5
- package/dist/slices/rebuild/runtime-provider.js +67 -25
- package/dist/slices/rebuild/runtime-publication.js +10 -9
- package/dist/slices/rebuild/runtime-review.js +39 -33
- package/dist/slices/rebuild/runtime-run.js +4 -1
- package/dist/slices/rebuild/runtime-shorts.js +31 -50
- package/dist/slices/rebuild/runtime-store.js +20 -10
- package/dist/slices/rebuild/runtime-subtitles.js +28 -25
- package/dist/slices/rebuild/runtime-voices.js +10 -16
- package/dist/slices/rebuild/runtime-youtube.js +14 -31
- package/dist/slices/rebuild/service-readiness.js +11 -3
- package/dist/slices/rebuild/transition-repo.js +6 -5
- package/dist/slices/rebuild/work-records.js +6 -0
- package/dist/slices/reruns/cascade.js +1 -2
- package/dist/slices/reruns/index.js +6 -9
- package/dist/slices/research/synthesis.js +3 -2
- package/dist/slices/reviews/external-model.js +4 -1
- package/dist/slices/reviews/external-repo.js +2 -1
- package/dist/slices/reviews/external-rows.js +2 -3
- package/dist/slices/reviews/holds.js +5 -4
- package/dist/slices/reviews/model.js +32 -11
- package/dist/slices/reviews/repo.js +2 -1
- package/dist/slices/reviews/rules.js +4 -3
- package/dist/slices/reviews/verdict.js +2 -1
- package/dist/slices/reviews/view.js +5 -2
- package/dist/slices/revisions/downloads.js +4 -5
- package/dist/slices/revisions/image-plan.js +1 -1
- package/dist/slices/revisions/mutation-assets.js +9 -5
- package/dist/slices/revisions/mutation-cues.js +2 -5
- package/dist/slices/revisions/mutations.js +3 -3
- package/dist/slices/revisions/repo.js +3 -1
- package/dist/slices/revisions/schema.js +1 -0
- package/dist/slices/revisions/view.js +20 -0
- package/dist/slices/run-cost/limits.js +5 -2
- package/dist/slices/run-cost/meter.js +12 -5
- package/dist/slices/run-cost/panel.js +8 -74
- package/dist/slices/run-cost/plan-readings.js +127 -0
- package/dist/slices/run-cost/plan-use.js +169 -0
- package/dist/slices/run-cost/pricing.js +3 -3
- package/dist/slices/run-cost/week.js +32 -4
- package/dist/slices/schedules/agenda.js +18 -7
- package/dist/slices/schedules/by-date.js +42 -0
- package/dist/slices/schedules/calendar.js +5 -0
- package/dist/slices/schedules/design-agenda.js +36 -0
- package/dist/slices/schedules/design-check.js +41 -0
- package/dist/slices/schedules/design-run.js +126 -0
- package/dist/slices/schedules/next-run.js +62 -0
- package/dist/slices/schedules/prepare.js +18 -2
- package/dist/slices/schedules/repo.js +30 -21
- package/dist/slices/schedules/rescore.js +35 -0
- package/dist/slices/schedules/scheduler.js +13 -3
- package/dist/slices/schedules/schema.js +57 -3
- package/dist/slices/schedules/score.js +107 -0
- package/dist/slices/schedules/service.js +57 -24
- package/dist/slices/schedules/topic-list.js +15 -0
- package/dist/slices/schedules/topic-scores.js +104 -0
- package/dist/slices/schedules/topics.js +53 -41
- package/dist/slices/settings/cli-paths.js +4 -6
- package/dist/slices/settings/first-run.js +8 -43
- package/dist/slices/settings/health.js +30 -15
- package/dist/slices/settings/key-test.js +1 -1
- package/dist/slices/settings/model-reach.js +3 -17
- package/dist/slices/settings/model.js +14 -2
- package/dist/slices/settings/playback.js +34 -23
- package/dist/slices/settings/probe-read.js +16 -0
- package/dist/slices/settings/repo.js +33 -0
- package/dist/slices/settings/tutorial.js +2 -2
- package/dist/slices/settings/voices.js +4 -12
- package/dist/slices/shorts/keep.js +2 -1
- package/dist/slices/shorts/pick.js +6 -18
- package/dist/slices/shorts/prompts.js +4 -14
- package/dist/slices/shorts/render.js +6 -2
- package/dist/slices/social/channel.js +44 -0
- package/dist/slices/social/defaults.js +17 -0
- package/dist/slices/social/due.js +36 -0
- package/dist/slices/social/extension.js +18 -0
- package/dist/slices/social/fit.js +115 -0
- package/dist/slices/social/limits.js +186 -0
- package/dist/slices/social/links.js +21 -0
- package/dist/slices/social/media.js +132 -0
- package/dist/slices/social/model.js +75 -0
- package/dist/slices/social/notice.js +19 -0
- package/dist/slices/social/pack.js +176 -0
- package/dist/slices/social/post-prompt.js +56 -0
- package/dist/slices/social/queue.js +31 -0
- package/dist/slices/social/repo.js +133 -0
- package/dist/slices/social/reshape.js +97 -0
- package/dist/slices/social/rules.js +5 -0
- package/dist/slices/social/schema.js +70 -0
- package/dist/slices/social/serve.js +51 -0
- package/dist/slices/social/service.js +129 -0
- package/dist/slices/social/settings.js +21 -0
- package/dist/slices/social/sources.js +114 -0
- package/dist/slices/social/state.js +110 -0
- package/dist/slices/social/text.js +149 -0
- package/dist/slices/storage/arrange.js +3 -1
- package/dist/slices/storage/assets.js +8 -10
- package/dist/slices/storage/backup-designs.js +74 -0
- package/dist/slices/storage/backup-export.js +8 -3
- package/dist/slices/storage/backup-format.js +10 -0
- package/dist/slices/storage/backup-import.js +22 -4
- package/dist/slices/storage/delete-project.js +6 -5
- package/dist/slices/storage/files-location.js +6 -8
- package/dist/slices/storage/layout.js +13 -2
- package/dist/slices/storage/model.js +3 -0
- package/dist/slices/storage/portable.js +17 -12
- package/dist/slices/storage/schema.js +2 -0
- package/dist/slices/storage/staging-refs.js +2 -1
- package/dist/slices/storage/staging.js +6 -9
- package/dist/slices/storage/trim.js +26 -9
- package/dist/slices/studio/calendar.js +7 -2
- package/dist/slices/studio/disclosure.js +4 -4
- package/dist/slices/studio/model.js +1 -1
- package/dist/slices/studio/pack.js +9 -8
- package/dist/slices/studio/pick.js +2 -11
- package/dist/slices/studio/plan.js +7 -16
- package/dist/slices/studio/queue.js +3 -14
- package/dist/slices/studio/releases.js +26 -0
- package/dist/slices/studio/settings.js +20 -57
- package/dist/slices/studio/videos.js +35 -4
- package/dist/slices/style-preview/render.js +37 -16
- package/dist/slices/style-preview/schema.js +14 -1
- package/dist/slices/style-preview/service.js +2 -1
- package/dist/slices/style-preview/settings.js +33 -5
- package/dist/slices/subtitles/captions.js +1 -1
- package/dist/slices/telemetry/collector-client.js +2 -4
- package/dist/slices/telemetry/flush.js +2 -4
- package/dist/slices/telemetry/model.js +0 -7
- package/dist/slices/telemetry/record.js +10 -3
- package/dist/slices/template-studio/anatomy-view.js +161 -0
- package/dist/slices/template-studio/anatomy.js +73 -0
- package/dist/slices/template-studio/bakeoff-make.js +225 -0
- package/dist/slices/template-studio/bakeoff-repo.js +83 -0
- package/dist/slices/template-studio/bakeoff.js +333 -0
- package/dist/slices/template-studio/budget.js +106 -0
- package/dist/slices/template-studio/cards.js +78 -0
- package/dist/slices/template-studio/checks.js +322 -0
- package/dist/slices/template-studio/document-sample.js +56 -0
- package/dist/slices/template-studio/edit.js +15 -0
- package/dist/slices/template-studio/for-all.js +161 -0
- package/dist/slices/template-studio/free-video.js +31 -0
- package/dist/slices/template-studio/free.js +176 -0
- package/dist/slices/template-studio/gate.js +40 -0
- package/dist/slices/template-studio/hidden.js +20 -0
- package/dist/slices/template-studio/jobs.js +79 -0
- package/dist/slices/template-studio/loudness.js +111 -0
- package/dist/slices/template-studio/make.js +40 -0
- package/dist/slices/template-studio/model.js +58 -0
- package/dist/slices/template-studio/pack-import.js +253 -0
- package/dist/slices/template-studio/pack-samples.js +60 -0
- package/dist/slices/template-studio/pack.js +207 -0
- package/dist/slices/template-studio/paid-view.js +66 -0
- package/dist/slices/template-studio/paid.js +355 -0
- package/dist/slices/template-studio/quote.js +155 -0
- package/dist/slices/template-studio/ready.js +104 -0
- package/dist/slices/template-studio/repo.js +134 -0
- package/dist/slices/template-studio/reviews-path.js +58 -0
- package/dist/slices/template-studio/runner.js +84 -0
- package/dist/slices/template-studio/save.js +236 -0
- package/dist/slices/template-studio/say-it-as.js +248 -0
- package/dist/slices/template-studio/schedule-gate.js +34 -0
- package/dist/slices/template-studio/schedule-price.js +32 -0
- package/dist/slices/template-studio/schedule-sample.js +91 -0
- package/dist/slices/template-studio/schema.js +243 -0
- package/dist/slices/template-studio/scope.js +124 -0
- package/dist/slices/template-studio/sections.js +176 -0
- package/dist/slices/template-studio/service.js +175 -0
- package/dist/slices/template-studio/status.js +191 -0
- package/dist/slices/template-studio/topic.js +223 -0
- package/dist/slices/thumbnail/by-llm.js +1 -1
- package/dist/slices/trash/designs.js +76 -0
- package/dist/slices/trash/model.js +13 -4
- package/dist/slices/trash/service.js +52 -2
- package/dist/slices/tutorials/library.js +3 -2
- package/dist/slices/uploads/repo.js +37 -1
- package/dist/slices/uploads/rules.js +3 -2
- package/dist/slices/video/ass-text.js +17 -0
- package/dist/slices/video/audio-export.js +2 -64
- package/dist/slices/video/edit-list.js +2 -2
- package/dist/slices/video/edit-settings.js +1 -1
- package/dist/slices/video/encoding.js +169 -0
- package/dist/slices/video/ffmpeg.js +23 -21
- package/dist/slices/video/figure-card.js +1 -15
- package/dist/slices/video/plan.js +2 -1
- package/dist/slices/video/slideshow.js +43 -18
- package/dist/slices/voices/attribution.js +3 -2
- package/dist/slices/voices/model.js +9 -8
- package/dist/slices/voices/palette.js +0 -3
- package/dist/slices/voices/script.js +2 -1
- package/dist/slices/youtube/answer.js +4 -16
- package/dist/slices/youtube/edits-repo.js +3 -12
- package/dist/tutorials/AI-CLIs.md +25 -25
- package/dist/tutorials/Agents-MCP.md +34 -33
- package/dist/tutorials/Assistant.md +42 -0
- package/dist/tutorials/Backups.md +7 -7
- package/dist/tutorials/Calendar.md +17 -25
- package/dist/tutorials/Cast-Library.md +19 -19
- package/dist/tutorials/Channels.md +42 -35
- package/dist/tutorials/Costs-and-Run-Cost.md +38 -40
- package/dist/tutorials/Create-Article.md +114 -0
- package/dist/tutorials/Create-Extras.md +112 -0
- package/dist/tutorials/Create-Images.md +165 -0
- package/dist/tutorials/Create-Narration.md +178 -0
- package/dist/tutorials/Create-Overview.md +244 -0
- package/dist/tutorials/Create-Video-and-Style.md +144 -0
- package/dist/tutorials/Docker.md +3 -3
- package/dist/tutorials/Document-Themes.md +32 -32
- package/dist/tutorials/Editing-a-Project.md +94 -94
- package/dist/tutorials/FAQ.md +18 -18
- package/dist/tutorials/First-Launch-and-Welcome.md +50 -64
- package/dist/tutorials/Home-and-Projects.md +115 -71
- package/dist/tutorials/Home.md +33 -33
- package/dist/tutorials/Install.md +14 -13
- package/dist/tutorials/Intros-and-Outros.md +33 -34
- package/dist/tutorials/Keyboard-Shortcuts-and-Command-Palette.md +62 -58
- package/dist/tutorials/Keywords-Slopify-Fills.md +87 -0
- package/dist/tutorials/Models.md +53 -21
- package/dist/tutorials/Multiple-Voices.md +41 -40
- package/dist/tutorials/Narration-Aliases-and-Glossary.md +14 -14
- package/dist/tutorials/Notifications.md +27 -17
- package/dist/tutorials/Other-Languages.md +15 -15
- package/dist/tutorials/PDF-Documents.md +38 -29
- package/dist/tutorials/Posting-to-Social-Sites.md +121 -0
- package/dist/tutorials/Project-Page.md +118 -120
- package/dist/tutorials/Prompts-and-Templates.md +84 -0
- package/dist/tutorials/Prompts.md +48 -44
- package/dist/tutorials/Providers-and-Keys.md +105 -98
- package/dist/tutorials/Publishing-to-YouTube.md +31 -31
- package/dist/tutorials/Recovery-and-Retries.md +31 -31
- package/dist/tutorials/Remote-Access.md +63 -0
- package/dist/tutorials/Reviews-and-Checkpoints.md +98 -90
- package/dist/tutorials/Schedules.md +46 -27
- package/dist/tutorials/Settings-Reference.md +194 -174
- package/dist/tutorials/Shorts.md +34 -33
- package/dist/tutorials/Start-at-Login.md +3 -3
- package/dist/tutorials/Studio-Extension.md +22 -24
- package/dist/tutorials/Template-Studio.md +128 -0
- package/dist/tutorials/Templates.md +51 -77
- package/dist/tutorials/Trash.md +4 -4
- package/dist/tutorials/Troubleshooting.md +44 -44
- package/dist/tutorials/Uninstalling-and-Moving.md +5 -5
- package/dist/tutorials/Updating-and-Patch-Notes.md +18 -18
- package/dist/tutorials/Video-Editing.md +34 -34
- package/dist/tutorials/Where-Your-Files-Live.md +10 -10
- package/dist/tutorials/YouTube-Description.md +26 -26
- package/dist/tutorials/Your-First-Short.md +35 -35
- package/dist/tutorials/_Sidebar.md +19 -14
- package/dist/updater/work-in-progress.js +42 -12
- package/dist/web/assets/index-BNftKQrA.css +1 -0
- package/dist/web/assets/index-Cpa58woP.js +459 -0
- package/dist/web/assets/pdf-BKh8f7R6.js +56 -0
- package/dist/web/assets/pdf.worker.min-BmVo14Nb.mjs +28 -0
- package/dist/web/assets/pdf.worker.min-D7i8o3wR.js +1 -0
- package/dist/web/index.html +2 -2
- package/package.json +6 -2
- package/dist/slices/article/provided-entries.js +0 -66
- package/dist/slices/article/run.js +0 -145
- package/dist/slices/images/run.js +0 -234
- package/dist/slices/narration/legacy-plan.js +0 -58
- package/dist/slices/narration/run.js +0 -270
- package/dist/slices/rebuild/runtime-actions.js +0 -90
- package/dist/slices/research/run.js +0 -224
- package/dist/slices/subtitles/prepare.js +0 -194
- package/dist/slices/subtitles/transcript.js +0 -34
- package/dist/slices/thumbnail/run.js +0 -219
- package/dist/slices/video/audio-inputs.js +0 -33
- package/dist/slices/video/reuse-audio.js +0 -62
- package/dist/slices/video/run.js +0 -78
- package/dist/slices/video/write-export.js +0 -158
- package/dist/slices/video/write-subtitles.js +0 -59
- package/dist/tutorials/Library-Overview.md +0 -76
- package/dist/tutorials/Play-Images.md +0 -161
- package/dist/tutorials/Play-Narration.md +0 -167
- package/dist/tutorials/Play-Outputs.md +0 -109
- package/dist/tutorials/Play-Overview.md +0 -227
- package/dist/tutorials/Play-Title-and-Article.md +0 -136
- package/dist/tutorials/Play-Video-and-Style.md +0 -143
- package/dist/web/assets/index-BadsoORk.css +0 -1
- package/dist/web/assets/index-D8LqNsCl.js +0 -326
- package/dist/web/assets/pdf-T7MCwjIv.js +0 -54
- package/dist/web/assets/pdf.worker.min-Dswkl-cV.mjs +0 -29
- package/dist/web/assets/pdf.worker.min-zC6nfbxG.js +0 -1
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
# Create: Extras
|
|
2
|
+
|
|
3
|
+
Besides the video, a run can make a thumbnail (or three), a YouTube description with chapters, a set of vertical shorts, posts for other sites and a PDF of the article. Sound-only runs give you a WAV, and runs with several speakers can add an MP3 and an M4B audiobook. This page lists every extra, what it costs and where to set it. The ones with more to them have their own pages.
|
|
4
|
+
|
|
5
|
+
**Where to find it:** Create → **Extras** row → **Change**. The row's line lists what the run will also make, for example `Also makes a thumbnail, 2 shorts and a YouTube description.`, or `The video only: no thumbnail, description, shorts or PDF.` Each extra is one tick whose settings appear once it is ticked.
|
|
6
|
+
|
|
7
|
+
For an article, audiobook, podcast or set of images, the thumbnail, YouTube description, shorts and posts fold away under **Publishing extras**, open when one of them is already on.
|
|
8
|
+
|
|
9
|
+
## Every extra at a glance
|
|
10
|
+
|
|
11
|
+
| Extra | Where to set it | Default | Cost |
|
|
12
|
+
| --- | --- | --- | --- |
|
|
13
|
+
| Video (MP4) | **Video and style** → **Video** → **Make the video** | On | None, put together on this computer |
|
|
14
|
+
| Thumbnail | **Extras** → **Thumbnail** | Off | One image call per thumbnail (plus one AI call with **Let the AI write the prompt**) |
|
|
15
|
+
| YouTube description | **Extras** → **YouTube description** | Off | One AI call |
|
|
16
|
+
| Shorts | **Extras** → **Shorts** | Off | One AI call to pick them, plus new images for each |
|
|
17
|
+
| Posts to other sites | **Extras** → **Post to other sites** | Off | One AI call per post written from a post prompt; none otherwise |
|
|
18
|
+
| PDF | **Extras** → **PDF of the article** | Off | None, laid out on this computer |
|
|
19
|
+
| Tables and figures on screen | **Narration** → **More narration settings** → **Also show them on screen** | On (when described) | None |
|
|
20
|
+
| Caption files (.srt, .vtt) | **Video and style** → **Captions** | Off | None |
|
|
21
|
+
| Narration WAV | **Video and style** → **Video** → **Off (sound only)**, with narration on | | None |
|
|
22
|
+
| MP3 and M4B audiobook | **Narration** → **Speakers** | Off | None |
|
|
23
|
+
|
|
24
|
+
## Thumbnail
|
|
25
|
+
|
|
26
|
+
**Thumbnail** is the picture people see before they press play. Tick it, then pick how it is made:
|
|
27
|
+
|
|
28
|
+
| Choice | What happens | Cost |
|
|
29
|
+
| --- | --- | --- |
|
|
30
|
+
| **From my thumbnail prompt** | Draws the thumbnail straight from the thumbnail prompt. | One image call |
|
|
31
|
+
| **Let the AI write the prompt** | The AI writer first writes the image prompt from yours, the title and the article, then the image model draws it. | One AI call, then one image call |
|
|
32
|
+
| **Upload mine** | Uses your own PNG, JPEG or WebP (**Thumbnail image**). | None |
|
|
33
|
+
|
|
34
|
+
| Option | What it does | Default |
|
|
35
|
+
| --- | --- | --- |
|
|
36
|
+
| **Thumbnail prompt** | The thumbnail prompt, keywords filled in. **From my thumbnail prompt** sends it to the image model as it is; **Let the AI write the prompt** gives it to the AI writer with the title and article to write the image prompt. | None |
|
|
37
|
+
| **How many thumbnails** (**1** or **3**) | **3** makes two more thumbnails from the same prompt with different compositions, for YouTube's Test & compare. Each costs one more image, so 3 thumbnails are 3 image calls. With a thumbnail prompt that has `{{Scene}}` and Images → **Scenes from the article** on, each also shows a different moment of the article (see [Images](Create-Images#scenes-from-the-article)). | 1 |
|
|
38
|
+
|
|
39
|
+
### Make three thumbnails for Test & compare
|
|
40
|
+
|
|
41
|
+
1. Tick **Thumbnail** and pick **From my thumbnail prompt** or **Let the AI write the prompt**.
|
|
42
|
+
2. Pick a **Thumbnail prompt**. Write one on [Prompts](Prompts) if you have none.
|
|
43
|
+
3. Set **How many thumbnails** to **3**.
|
|
44
|
+
|
|
45
|
+
You can make each thumbnail again on its own on the project page. The thumbnail uses the Images row's service and model; if the video's images are not made by AI, the thumbnail shows its own **Drawn by** service and model. With an establishing image and **Use it as a reference for the thumbnail too** ticked, the thumbnail is drawn with it as a reference, and it also takes cast members the title mentions. See [Images](Create-Images#establishing-image).
|
|
46
|
+
|
|
47
|
+
## YouTube description
|
|
48
|
+
|
|
49
|
+
After the captions are timed, the AI writer writes a description with chapters at the narration's real times, hashtags at the end, and a separate list of tags, ready to copy. It runs beside the video. It needs narration; without it the line under the tick says "Needs narration."
|
|
50
|
+
|
|
51
|
+
| Option | What it does | Default |
|
|
52
|
+
| --- | --- | --- |
|
|
53
|
+
| **YouTube description** | Turns it on. One AI call. | Off |
|
|
54
|
+
| **Description prompt** | The prompt the description is written from. **Built-in** asks for a short summary, 5 to 12 chapters, 3 to 5 hashtags and 15 to 25 tags. Write your own description prompt on Prompts to change the tone or add links. | Built-in |
|
|
55
|
+
|
|
56
|
+
See [YouTube Description](YouTube-Description) for the result and the copy buttons.
|
|
57
|
+
|
|
58
|
+
## Shorts
|
|
59
|
+
|
|
60
|
+
After the captions are timed, the AI writer picks the best self-contained moments of the narration. Each becomes a vertical 1080×1920 clip with new images, big word-by-word captions and its own title, description and hashtags. It runs beside the video, and its images are charged like any other. It needs narration.
|
|
61
|
+
|
|
62
|
+
| Option | What it does | Default / range |
|
|
63
|
+
| --- | --- | --- |
|
|
64
|
+
| **Shorts** | Turns shorts on. | Off |
|
|
65
|
+
| **Shorts per video** | How many shorts to cut from this video. Each needs its own new images. | 3; 1 to 10 |
|
|
66
|
+
| **Length** | The shortest and longest a short may run, in seconds. | 60 to 120; 15 to 180 |
|
|
67
|
+
| **Shorts prompt** | The prompt the AI writer follows to pick the moments and write each short's title, description and hashtags. | Built-in |
|
|
68
|
+
| **Image prompt** | The image prompt the shorts' new vertical images are drawn from. | Built-in |
|
|
69
|
+
| **Title on screen** (under **More shorts options**) | Keeps the short's title at the top for the whole clip, large and bold in the caption font. | On |
|
|
70
|
+
| **Speed** | Plays each short faster than the narration, with the pitch kept. | 1.00×; 1.00× to 1.25× in steps of 0.05 |
|
|
71
|
+
| **Music volume** | How loud the background music plays under every short; it dips while the narrator speaks. Only used with a music file. | 15; 0 to 100% |
|
|
72
|
+
| **Full video link** | Each short's description ends with a line pointing to the full video. Without a link, the line says `[PASTE THE FULL VIDEO LINK HERE]`. | Empty |
|
|
73
|
+
| **Background music (optional)** | An audio file, looped if shorter than a short. | None |
|
|
74
|
+
|
|
75
|
+
**Shorts preview** puts a few seconds of the sample together as a short with your settings, free on this computer; **Make the preview again** after a change. See [Shorts](Shorts) for how moments are picked and how to make a short again.
|
|
76
|
+
|
|
77
|
+
## Post to other sites
|
|
78
|
+
|
|
79
|
+
Drafts only: Slopify fills each post and you press Post. It needs the Slopify Studio extension; until it is set up, the line under the tick says so with **Set it up ↗**. See [Posting to Social Sites](Posting-to-Social-Sites).
|
|
80
|
+
|
|
81
|
+
## PDF of the article
|
|
82
|
+
|
|
83
|
+
**PDF of the article** lays out a PDF of the article and title on this computer, in the look you pick. It needs no service and costs nothing. It is not offered while the article is **No text**.
|
|
84
|
+
|
|
85
|
+
| Option | What it does | Default |
|
|
86
|
+
| --- | --- | --- |
|
|
87
|
+
| **PDF of the article** | Turns it on. | Off |
|
|
88
|
+
| **PDF look** | How the PDF looks: one of the three ready looks (**Plain**, **Book** or **Modern**), or one of your own PDF looks. A look of yours is copied into the project, so editing it later leaves this project alone until you pick it again. **Edit PDF looks ↗** opens the PDF looks. | Plain, or the channel's PDF look |
|
|
89
|
+
|
|
90
|
+
See [PDF Documents](PDF-Documents) and [PDF looks](Document-Themes).
|
|
91
|
+
|
|
92
|
+
## Audio files
|
|
93
|
+
|
|
94
|
+
- **Narration WAV.** Set **Video** to **Off (sound only)** in **Video and style** while narration is on. The line under the switch reads "Sound only: the narration as one audio file." The WAV is set to the **Audio files volume** when **Level the volume** is on.
|
|
95
|
+
- **MP3 and M4B.** With several speakers, tick **Also make MP3 and M4B files with chapter markers** under **Narration** → **Speakers**. The M4B is an audiobook file with a chapter marker at each chapter. Both are made on this computer at no service cost. See [Multiple Voices](Multiple-Voices).
|
|
96
|
+
|
|
97
|
+
## Tips
|
|
98
|
+
|
|
99
|
+
- The YouTube description and shorts need the captions' timing but not captions in the video; you can leave **Captions** off.
|
|
100
|
+
- AI checks can look at the thumbnail at phone size and each short's images. See [Pauses and Checks](Reviews-and-Checkpoints).
|
|
101
|
+
- A PDF is free, so switch it on whenever the article is worth reading on its own.
|
|
102
|
+
|
|
103
|
+
## Related pages
|
|
104
|
+
|
|
105
|
+
- [Create Overview](Create-Overview)
|
|
106
|
+
- [Shorts](Shorts)
|
|
107
|
+
- [YouTube Description](YouTube-Description)
|
|
108
|
+
- [PDF Documents](PDF-Documents)
|
|
109
|
+
- [PDF looks](Document-Themes)
|
|
110
|
+
- [Multiple Voices](Multiple-Voices)
|
|
111
|
+
- [Posting to Social Sites](Posting-to-Social-Sites)
|
|
112
|
+
- [Publishing to YouTube](Publishing-to-YouTube)
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
# Create: Images
|
|
2
|
+
|
|
3
|
+
The images are the pictures your video shows while the narration plays. On Create you pick who draws them, which image prompts (styles) they come from and how many each makes, and optionally an establishing image that keeps characters and style the same. You get a set of images, drawn in the video's frame shape, played in order.
|
|
4
|
+
|
|
5
|
+
**Where to find it:** Create → **Images** row → **Change**.
|
|
6
|
+
|
|
7
|
+
## Choose where the images come from
|
|
8
|
+
|
|
9
|
+
The row starts with an **Images** switch:
|
|
10
|
+
|
|
11
|
+
| Choice | What happens | Cost |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| **Made by AI (paid)** (default) | Draws images from the ticked image prompts, one image call each. | Per image, by the service |
|
|
14
|
+
| **My own images** | Uses your own PNG, JPEG or WebP files (**Your images, in the order they play**). | None |
|
|
15
|
+
| **None** | No images. This turns the video off too. | None |
|
|
16
|
+
|
|
17
|
+
### Use your own images
|
|
18
|
+
|
|
19
|
+
1. Set **Images** to **My own images**.
|
|
20
|
+
2. Pick the files under **Your images, in the order they play**. Each is numbered in the order it plays.
|
|
21
|
+
3. Remove a file with its remove button, or attach one again whose upload was lost.
|
|
22
|
+
|
|
23
|
+
A video can have at most 60 of your images, and the same file cannot be picked twice. Wait for every upload to finish before pressing Make the video.
|
|
24
|
+
|
|
25
|
+
## Pick the image service and model
|
|
26
|
+
|
|
27
|
+
| Option | What it does | Default |
|
|
28
|
+
| --- | --- | --- |
|
|
29
|
+
| **Service** (under **Images by**) | Who draws the images, the thumbnail and the shorts' pictures: a keyed service billed per image (fal.ai, Replicate, OpenAI, Google), or a tool you are signed in to (Codex CLI). Each service in the list says when it has **No key** or is **Not found**. When none has a key, the line under it offers **Add an image key ↗**, or **Set Images to None**. | Your template's, or a service with a saved key |
|
|
30
|
+
| **Model** | The service's image model. Models differ in quality, speed and price per image; the estimate in the rail shows what this run costs. **Type a model ID…** at the end of the list lets you type one. | The service's default |
|
|
31
|
+
| **Effort** | How long an image agent, such as the Codex CLI, reasons before it draws. Higher effort can follow the prompt more closely but takes longer and uses more tokens. Shown only for models that offer levels. | **Model default** |
|
|
32
|
+
|
|
33
|
+
Changing the service clears the model.
|
|
34
|
+
|
|
35
|
+
### Drawing with the Codex CLI
|
|
36
|
+
|
|
37
|
+
With **Codex CLI** as the image service, the **Model** list holds **Codex default** and the Codex CLI's own models. **Codex default** leaves the model and effort to the CLI's own defaults. Any other model runs with the **Effort** you pick. An image agent that reviews and redraws its picture can work for several minutes at a high effort. Images drawn this way cost nothing extra on your plan; the estimate shows the approximate API price beside **$0 on your plan**. See [AI CLIs](AI-CLIs).
|
|
38
|
+
|
|
39
|
+
## Pick the image styles
|
|
40
|
+
|
|
41
|
+
1. Under **Image prompts**, tick the image prompts that should draw the video's images. Each one shows the first sentence of its text, so you can see what it draws.
|
|
42
|
+
2. Type in each ticked prompt's box how many images it makes, 1 to 20.
|
|
43
|
+
3. Check the total under the list, for example **16 of at most 60 images · each is one paid image call.**
|
|
44
|
+
|
|
45
|
+
| Rule | Value |
|
|
46
|
+
| --- | --- |
|
|
47
|
+
| Images per prompt | 1 to 20 (a freshly ticked prompt starts on 16 for a video) |
|
|
48
|
+
| Images per run, typed | at most 60 |
|
|
49
|
+
| Images per run, with **More images for long videos** | at most 240 |
|
|
50
|
+
| Order | The images play in the order you ticked the prompts |
|
|
51
|
+
|
|
52
|
+
Each image is one image call. A prompt that has been deleted since this draft picked it shows **No longer in Prompts · untick to remove**. With no image prompts at all, the row says to write one on Prompts. See [Prompts](Prompts).
|
|
53
|
+
|
|
54
|
+
### Photorealistic prompts
|
|
55
|
+
|
|
56
|
+
An image prompt has a **Draws photorealistic pictures** tick in its editor. Turn it on when the prompt's style looks like real photos or film. Copy for YouTube Studio then answers Yes to YouTube's question about altered or synthetic content for videos and shorts drawn with it. Leave it off for painterly or illustrated styles. It is set on the prompt, not on Create: open **Prompts** → **Image** → the prompt. See [Prompts](Prompts) and [Publishing to YouTube](Publishing-to-YouTube).
|
|
57
|
+
|
|
58
|
+
## Establishing image
|
|
59
|
+
|
|
60
|
+
The establishing image is made first and never shown in the video. Every other image, the shorts' images and (if ticked) the thumbnail are drawn with it as a reference, so characters, style and palette stay the same across the video.
|
|
61
|
+
|
|
62
|
+
| Option | What it does | Default |
|
|
63
|
+
| --- | --- | --- |
|
|
64
|
+
| **Establishing image** (keeps characters and style the same) | **Off** (each image is drawn on its own), **Drawn from an image prompt** (one more image call) or **Upload mine** (your own PNG or JPEG, **Establishing image file**). | Off |
|
|
65
|
+
| **Establishing prompt** | The image prompt that draws it, keywords filled like the others. Describe the characters, setting and style every other image should share. | None |
|
|
66
|
+
| **Use it as a reference for the thumbnail too** | Draws the thumbnail with the establishing image as a reference too, so it matches the video. Untick it for a thumbnail drawn on its own. Shown while a thumbnail is on (in the Extras row). | On |
|
|
67
|
+
|
|
68
|
+
Changing the establishing image later marks the images drawn from it as outdated. When you upload the establishing image, the style preview is drawn on it, so you judge the Look and captions on your own picture.
|
|
69
|
+
|
|
70
|
+
### Set up an establishing image
|
|
71
|
+
|
|
72
|
+
1. Under **Establishing image**, pick **Drawn from an image prompt** or **Upload mine**.
|
|
73
|
+
2. For a drawn one, pick the **Establishing prompt**. For **Upload mine**, pick the file.
|
|
74
|
+
3. Leave **Use it as a reference for the thumbnail too** ticked if the thumbnail should match.
|
|
75
|
+
|
|
76
|
+
## The channel's cast
|
|
77
|
+
|
|
78
|
+
The video's channel brings its cast: characters, creatures, places and objects, each with reference pictures. When an image's brief mentions a cast member by name or alias (as a whole word, ignoring case), that image is drawn with the member's pictures as references, after the establishing image when it is on. The establishing image and the thumbnail also take the members the title mentions. At most four members go with one image.
|
|
79
|
+
|
|
80
|
+
Models that take several input pictures (Codex, OpenAI, Google, and fal.ai's FLUX.2 and Nano Banana 2 edit models) use the pictures directly. A model that takes none gets the members described in words instead. The cast is used even when **Use the channel's brand kit** is off. See [Cast](Cast-Library) and [Channels](Channels).
|
|
81
|
+
|
|
82
|
+
## More images for long videos
|
|
83
|
+
|
|
84
|
+
A long video with a fixed handful of images repeats them for an hour. **More images for long videos** adds images as the narration gets longer.
|
|
85
|
+
|
|
86
|
+
| Option | What it does | Default / range |
|
|
87
|
+
| --- | --- | --- |
|
|
88
|
+
| **More images for long videos** | Adds images, planned from the expected length when the run starts. The extra images are shared among the ticked prompts in order, up to 240 in all. Each is one more image call. | Off |
|
|
89
|
+
| **How the rate is given** | **Every N minutes**: one image every N minutes of narration (0.25 to 60). **N per hour**: N images per hour (1 to 240). Switching keeps the same rate. | One image every 2 minutes |
|
|
90
|
+
|
|
91
|
+
### Turn it on
|
|
92
|
+
|
|
93
|
+
1. Tick at least one image prompt.
|
|
94
|
+
2. Switch on **More images for long videos**.
|
|
95
|
+
3. Pick **Every N minutes** or **N per hour** and type the rate.
|
|
96
|
+
4. Read the line under it, for example: "For about 60 minutes (9,000 words expected): 30 images, 26 more than the prompts' 4."
|
|
97
|
+
|
|
98
|
+
How the count is worked out:
|
|
99
|
+
|
|
100
|
+
- The length is your own article's word count, or else the **Expected length** in the rail, at 150 spoken words a minute.
|
|
101
|
+
- Each ticked prompt keeps its own number as a minimum. The extra images are handed to the ticked prompts one at a time, in the order they were ticked.
|
|
102
|
+
- When the prompts' own numbers already cover the length, nothing is added.
|
|
103
|
+
- The count stops at 240. After that the slideshow repeats its images, as it does whenever the narration outlasts them.
|
|
104
|
+
- The count is planned once, when the run starts. A narration that turns out longer is still covered by the slideshow cycling its images.
|
|
105
|
+
|
|
106
|
+
Turning it on also switches **Motion** (in **Video and style** → **Images and cuts**) from **Zoom in and out** to **Mix of both**, so a long video pans and zooms by turns. A **Pan across** or **Still** you picked stays, and you can pick Zoom again.
|
|
107
|
+
|
|
108
|
+
## Scenes from the article
|
|
109
|
+
|
|
110
|
+
Without it, every image of a prompt is drawn from the same text, so three images of one prompt tend to show the same picture three times. **Scenes from the article** gives every image its own moment.
|
|
111
|
+
|
|
112
|
+
| Option | What it does | Default |
|
|
113
|
+
| --- | --- | --- |
|
|
114
|
+
| **Scenes from the article** | Before the images are drawn, the AI writer reads the article once and writes a short scene for each image. Scene 1 comes from the article's opening and the last from its ending, in the order the images are shown. Each image is drawn from its prompt with its scene added. One more AI call per run. | Off |
|
|
115
|
+
|
|
116
|
+
Where the scene goes:
|
|
117
|
+
|
|
118
|
+
- A prompt with `{{Scene}}` gets the scene there, for example a line `Scene: {{Scene}}` under the prompt's first sentence. `{{Scene}}` is never a keyword to fill in: Slopify writes it.
|
|
119
|
+
- A prompt without it gets the scene as a line of its own after its first paragraph, so any prompt works unchanged.
|
|
120
|
+
- With the switch off, a line holding `{{Scene}}` is left out and the prompt is drawn as it always was.
|
|
121
|
+
- A **thumbnail** prompt with `{{Scene}}` gets a scene from a call of its own (one more AI call, in the Thumbnail step, so changing the thumbnail never makes the images again): the article's most striking moment, the one that would make someone click, taken from anywhere in the article. With **How many thumbnails** set to 3, each thumbnail gets a different moment, so the A/B test compares ideas as well as compositions. A thumbnail prompt without `{{Scene}}` is drawn as it always was.
|
|
122
|
+
|
|
123
|
+
A prompt using `{{Slopify_Scene}}`, `{{Slopify_Setting}}` or `{{Slopify_Mood}}` gets its scene even with the switch off, and the switch shows it as on for that prompt. `{{Slopify_Setting}}` adds the era and place of each moment, so the picture stays true to its period, and `{{Slopify_Mood}}` its feeling, for light and color; both are written by the same call. See [Keywords Slopify fills](Keywords-Slopify-Fills#per-picture).
|
|
124
|
+
|
|
125
|
+
The style, composition and everything else in the prompt stay as written; only the scene changes from image to image. The scenes are written once the article exists, and each image waits for them. Switching it on or off in a project's **Edit settings** makes the images again.
|
|
126
|
+
|
|
127
|
+
## Looks looked up: {{Appearance}}
|
|
128
|
+
|
|
129
|
+
An image model draws a named figure from whatever it half remembers, so the same character can look different in every image. Put `{{Appearance}}` in an image, thumbnail, establishing or shorts image prompt, for example a line `Looks: {{Appearance}}`, and Slopify looks the looks up instead.
|
|
130
|
+
|
|
131
|
+
- Once the article exists, one call to the AI writer **searches the web** for how the video's subject and every named character in the article look: build, face, clothing, colors and the marks that make them recognizable. Where depictions disagree, it describes the most iconic one.
|
|
132
|
+
- With **Scenes from the article** on, each picture gets the looks of the figures its scene names (up to three besides the subject), so a scene of a place or of someone else isn't redrawn with the subject in it; a scene that names no one leaves the looks line out. A thumbnail always gets the subject's look. Without scenes, every picture gets the subject's look.
|
|
133
|
+
- There is no switch: a prompt with `{{Appearance}}` turns it on, and prompts without it are drawn as they always were. `{{Appearance}}` is never a keyword to fill in.
|
|
134
|
+
- It costs one more AI call per run, with web search. The pictures that use it wait for it.
|
|
135
|
+
- `{{Slopify_Appearance}}` is the new name of `{{Appearance}}` and means exactly the same.
|
|
136
|
+
|
|
137
|
+
## How long each image stays on screen
|
|
138
|
+
|
|
139
|
+
**Seconds per image** (1 to 600, default 15) is in **Video and style** → **Images and cuts**, beside **Zoom**, **Motion** and **Cuts**. When cuts follow the narration, it is the target length and a cut waits for a sentence end. When images run out, they start again. See [Video and style](Create-Video-and-Style#images-and-cuts).
|
|
140
|
+
|
|
141
|
+
## The thumbnail and the shorts
|
|
142
|
+
|
|
143
|
+
The thumbnail and the shorts' images use the same image service and model. If the video's images are not made by AI but the thumbnail is, the thumbnail gets its own **Drawn by** service and model in the **Extras** row. See [Extras](Create-Extras) and [Shorts](Shorts).
|
|
144
|
+
|
|
145
|
+
## What the row says
|
|
146
|
+
|
|
147
|
+
Folded, the Images row says what will be drawn, for example `16 images from “Sleep lore · Scene”, made by fal.ai (FLUX.2), all in the look of one establishing image.` With your own images it says how many there are.
|
|
148
|
+
|
|
149
|
+
## Tips
|
|
150
|
+
|
|
151
|
+
- Keep one style across the video with an establishing image, instead of repeating the style in every image prompt.
|
|
152
|
+
- Picture checks can look at each image for malformed hands, stray text and a match with its brief. They need Claude Code or Codex as the checker. See [Pauses and Checks](Reviews-and-Checkpoints).
|
|
153
|
+
- After the run, you can add, remove or make single images again on the project page. See [Editing a Project](Editing-a-Project).
|
|
154
|
+
|
|
155
|
+
## Related pages
|
|
156
|
+
|
|
157
|
+
- [Create Overview](Create-Overview)
|
|
158
|
+
- [Prompts](Prompts)
|
|
159
|
+
- [Keywords Slopify fills](Keywords-Slopify-Fills)
|
|
160
|
+
- [Cast](Cast-Library)
|
|
161
|
+
- [Channels](Channels)
|
|
162
|
+
- [Models](Models)
|
|
163
|
+
- [Costs and Run Cost](Costs-and-Run-Cost)
|
|
164
|
+
- [Video and style](Create-Video-and-Style)
|
|
165
|
+
- [Extras](Create-Extras)
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# Create: Narration
|
|
2
|
+
|
|
3
|
+
The narration is the article read aloud by an AI voice. On Create you pick the voice service, its model and the voice, and fine-tune how the text is split, prepared and pronounced. You get a narration track that the captions, cuts, chapters and shorts are all timed from.
|
|
4
|
+
|
|
5
|
+
**Where to find it:** Create → **Narration** row → **Change**. The pauses, the volume levelling and the silences sit in Create → **Video and style** → **Sound polish**; they are described here because they shape the narration.
|
|
6
|
+
|
|
7
|
+
## Choose where the narration comes from
|
|
8
|
+
|
|
9
|
+
The row starts with a **Narration** switch:
|
|
10
|
+
|
|
11
|
+
| Choice | What happens | Cost |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| **AI voice (paid per character)** (default) | A voice service reads the article aloud. | Charged by the service per character |
|
|
14
|
+
| **My own audio file** | Uses an audio file you upload (**Narration file**), as it is. | None |
|
|
15
|
+
| **Off** | Makes a silent video with no captions, YouTube description or shorts. The row reads "None: a silent video." | None |
|
|
16
|
+
|
|
17
|
+
With **My own audio file**, the file is used as it is; include any intro and outro in it. It is never levelled piece by piece; only the final master reaches it when **Level the volume** is on.
|
|
18
|
+
|
|
19
|
+
## Pick a voice
|
|
20
|
+
|
|
21
|
+
1. Open the **Narration** row and leave it on **AI voice (paid per character)**.
|
|
22
|
+
2. Under **Read by**, pick the **Service**. Each service in the list says when it has **No key** or is **Not found**.
|
|
23
|
+
3. Pick the **Model**.
|
|
24
|
+
4. Pick a **Voice**. When none of the listed services has a key, the line under it offers **Add a voice key ↗**, or **Set Narration to Off**.
|
|
25
|
+
|
|
26
|
+
| Option | What it does | Default |
|
|
27
|
+
| --- | --- | --- |
|
|
28
|
+
| **Service** | The voice service, charged per character of text: ElevenLabs, OpenAI, Cartesia, Inworld, Google Gemini, or **System voice**, your computer's own speech, which is free (it says **Not found** when no speech program is installed; see [the system voice](Providers-and-Keys#the-system-voice)). Changing it clears the model and voice. | The voice service your template or Settings picks |
|
|
29
|
+
| **Model** | The service's voice model. Models differ in quality, languages, speed and price per character. Narration preparation needs Inworld TTS-2. The line under it says whether the model was checked, with **Manage models ↗**. | The service's default |
|
|
30
|
+
| **Voice** | Who reads the narration: the voices you added under Settings → Voices for this service, for the project's language. With several speakers, this voice reads only the intro and outro. | None |
|
|
31
|
+
| **Show all voices** | Shown when some voices are hidden because they are listed for other languages. Tick it to pick one anyway, for example a multilingual voice whose languages are listed wrong. A voice with unknown languages is always shown. | Off |
|
|
32
|
+
|
|
33
|
+
### Hear a sample
|
|
34
|
+
|
|
35
|
+
**Sample of your text in this voice** folds out a **Passage** box and **Hear the sample**. It reads one passage of up to 300 characters in the picked voice, at the service's price for those characters (free with the system voice). The article's pronunciation glossary and narration preparation are not applied, and the sample is not reused in the run. Until a voice is picked and a passage typed, the line beside **Hear the sample** says which is missing.
|
|
36
|
+
|
|
37
|
+
### Speakers
|
|
38
|
+
|
|
39
|
+
Under the voice is the **Speakers** fold. It reads **One voice** by default. Open it to pick a **Format**: **Narration (one voice)**, **Audiobook**, **Podcast**, **Radio drama** or **Interview**, with several speakers, each with their own voice. Picking **Audiobook** or **Podcast** at the top of Create sets this for you. See [Multiple Voices](Multiple-Voices) for every speaker setting, and [Other Languages](Other-Languages) for narrating in another language.
|
|
40
|
+
|
|
41
|
+
## More narration settings
|
|
42
|
+
|
|
43
|
+
**More narration settings** is a fold under the voice. Its line says what is set, for example **Read as one piece, tables and figures described**.
|
|
44
|
+
|
|
45
|
+
### Split the narration
|
|
46
|
+
|
|
47
|
+
How the narration is split into voice requests. Split it when a service refuses long text. It changes the number of requests, not the characters charged.
|
|
48
|
+
|
|
49
|
+
| Option | What it does | Default |
|
|
50
|
+
| --- | --- | --- |
|
|
51
|
+
| **Split the narration by** | **Nothing (one piece)** sends the narration in one request. **Paragraph** sends one per paragraph. **Every 500 words** or **Every 3000 characters** ends each request at a sentence end. | **Nothing (one piece)** |
|
|
52
|
+
| **Words** / **Characters** | How long each request may be. Each request ends at the last whole sentence that fits, so a single longer sentence stays whole. Characters count spaces. | 500 words, or 3000 characters |
|
|
53
|
+
|
|
54
|
+
Up to 10,000 words or 1,000,000 characters per request.
|
|
55
|
+
|
|
56
|
+
### Intro and outro
|
|
57
|
+
|
|
58
|
+
An intro is read before the article and an outro after it. Both are saved under **Prompts** → **Intros** and **Outros**.
|
|
59
|
+
|
|
60
|
+
| Option | What it does | Default |
|
|
61
|
+
| --- | --- | --- |
|
|
62
|
+
| **Intro** | Read before the article. One saved as **Say these exact words** is read as written; one saved as **Let the AI write it from these instructions** is written for each video, one extra AI call. | Off |
|
|
63
|
+
| **Outro** | Read after the article, such as a sign-off. Exact words or AI-written, as above. | Off |
|
|
64
|
+
|
|
65
|
+
1. Open the **Narration** row and press **Change**.
|
|
66
|
+
2. Open **More narration settings**.
|
|
67
|
+
3. Pick an **Intro** and an **Outro**, or leave them **Off**.
|
|
68
|
+
4. Optional: set **Silence between segments** in **Video and style** → **Sound polish** to change the quiet between the intro, the article and the outro (Settings has the default, 3 seconds).
|
|
69
|
+
|
|
70
|
+
The channel's brand kit can fill the intro and outro when you leave them at their default. With several speakers, the voice under **Read by** reads the intro and outro. Your own audio file must already include any intro and outro. See [Intros and Outros](Intros-and-Outros).
|
|
71
|
+
|
|
72
|
+
### Narration preparation
|
|
73
|
+
|
|
74
|
+
Has the AI writer add delivery directions and sounds, such as a sigh or a laugh, before the voice reads, following the narration prompt you pick. The words stay the same.
|
|
75
|
+
|
|
76
|
+
| Option | What it does | Default |
|
|
77
|
+
| --- | --- | --- |
|
|
78
|
+
| **Narration preparation** | Pick a narration prompt, or **Off**. One AI call per narration piece and per intro or outro. **New narration prompt** writes one in a drawer beside Create and picks it. | Off |
|
|
79
|
+
|
|
80
|
+
It needs the Inworld TTS-2 model. With several speakers it works per speaker: each turn of a speaker on Inworld TTS-2 is prepared on its own, with the speaker's name and role, so every voice gets its own cues. At least one speaker must use TTS-2; turns of speakers on other voices are spoken as written. See [Multiple Voices](Multiple-Voices). When nothing earlier needs a writer (your own text, say), **Written by** appears in this row.
|
|
81
|
+
|
|
82
|
+
### Pronunciation Glossary
|
|
83
|
+
|
|
84
|
+
| Option | What it does | Default |
|
|
85
|
+
| --- | --- | --- |
|
|
86
|
+
| **Use the article's pronunciation glossary** | Shown only for voices that read it. Reads names with the IPA in the article's Pronunciation Glossary, such as `Arda: /ˈɑɹdə/`, with no extra AI call. Works with Inworld TTS-2 and TTS-2 Flash. The written text stays unchanged. | On |
|
|
87
|
+
| **Also use pronunciations from my other projects** | Adds every term from your other projects' glossaries, copied when this project starts. This project's own glossary wins where they differ. Turn it off to use only this article's glossary. | On |
|
|
88
|
+
|
|
89
|
+
With another service or model the tick is not shown; your choice is kept for when you pick an Inworld TTS-2 voice.
|
|
90
|
+
|
|
91
|
+
To get a glossary, ask for one in your article prompt: a section in slash-delimited standard-English IPA, one `Term: /IPA/` per line, with an English approximation for foreign names. A line with sounds English lacks is read as plain text. The glossary is never narrated itself. See [Narration Aliases and Glossary](Narration-Aliases-and-Glossary).
|
|
92
|
+
|
|
93
|
+
### Narration aliases
|
|
94
|
+
|
|
95
|
+
| Option | What it does | Default |
|
|
96
|
+
| --- | --- | --- |
|
|
97
|
+
| **Use your pronunciation list** | Says the words listed under Settings → Voices → **Pronunciation** the way they are written there, such as `Dr.` as `Doctor`, with any AI voice. They are copied when the project starts. The article and captions keep the written words. | On |
|
|
98
|
+
|
|
99
|
+
Manage the list in [Narration Aliases and Glossary](Narration-Aliases-and-Glossary).
|
|
100
|
+
|
|
101
|
+
### Tables, figures and code
|
|
102
|
+
|
|
103
|
+
An article written to be read can contain tables, pictures, equations and code. Read aloud cell by cell or symbol by symbol, they are noise.
|
|
104
|
+
|
|
105
|
+
| Option | What it does | Default |
|
|
106
|
+
| --- | --- | --- |
|
|
107
|
+
| **Describe tables and figures in the narration** | The AI writer writes a short spoken passage for each table, picture, equation and code block (a table's pattern, what a figure or equation means, what code does), and the narration says it in its place. One extra AI call per block, in the estimate and kept for reuse. The article and PDF keep the real table; captions show what is said. | On |
|
|
108
|
+
| **Leave code out** | Shown under the switch above. Drops code blocks from the narration instead of summing each up in a sentence or two. Tables, figures and equations are still described. | Off |
|
|
109
|
+
| **Also show them on screen** | Shown under the switch above. Each block the narration describes is also shown in the video while it is described: the article's own picture for a figure, a card drawn in your brand kit's title font and color for the rest. The images take turns around them, and shorts that include one show it upright. Drawn on this computer at no cost. | On |
|
|
110
|
+
|
|
111
|
+
Even with the switch off, some things are handled for you: links are read without their address, and footnote markers, the Sources Consulted section and the Pronunciation Glossary are never narrated.
|
|
112
|
+
|
|
113
|
+
## Pauses between sentences and paragraphs
|
|
114
|
+
|
|
115
|
+
Some voices run one sentence into the next with barely a breath. These settings add quiet where the voice's own pause is shorter. They never shorten a pause or cut a word, and the captions follow. They are in **Video and style** → **Sound polish**, and only show while the narration is an AI voice.
|
|
116
|
+
|
|
117
|
+
| Option | What it does | Default / range |
|
|
118
|
+
| --- | --- | --- |
|
|
119
|
+
| **Pause between sentences (seconds)** | The least quiet after each sentence. About 0.25 s is brisk, 0.35 to 0.45 natural or documentary, 0.5 to 0.8 an audiobook's relaxed pace, 0.8 and up sleep content. 0 leaves the voice's own. | 0.4; 0 to 2 in steps of 0.05 |
|
|
120
|
+
| **Pause between paragraphs (seconds)** | The least quiet at the end of a paragraph, when you want more than between sentences. Try 0.8 to 1.2 for a slower read. 0 keeps the sentence pause. | 0; 0 to 2 in steps of 0.05 |
|
|
121
|
+
|
|
122
|
+
The pauses are added on this computer before the word timing, so the captions, cuts, shorts and YouTube chapters stay in step. With several speakers, the gap between turns is **Gap between turns** under Speakers instead.
|
|
123
|
+
|
|
124
|
+
**Soften breaths**, **Soften S sounds** and **Level each sentence** in the same fold polish the voice itself; see [Video and style](Create-Video-and-Style#sound-polish).
|
|
125
|
+
|
|
126
|
+
## Level the volume
|
|
127
|
+
|
|
128
|
+
AI voices come back at a different loudness for every voice and even every request, so a joined narration can jump between quiet and loud. **Level the volume** brings every narration piece (each request, each intro and outro, each speaker's turn) to one loudness before they are joined, then sets the finished video, shorts and audio files to a target loudness. It runs on this computer with no service calls. It is in **Video and style** → **Sound polish** and shows whenever there is narration.
|
|
129
|
+
|
|
130
|
+
| Option | What it does | Default / range |
|
|
131
|
+
| --- | --- | --- |
|
|
132
|
+
| **Level the volume** | Turns levelling on or off for this run. A draft that never changed it follows Settings → Production defaults. | On |
|
|
133
|
+
| **Video volume** | How loud the finished video and shorts are. 0 dB is −14 LUFS, what YouTube and Spotify play everything at. Peaks always stay under −1.5 dBTP. | 0 dB; −10 to +4 dB in steps of 0.5 |
|
|
134
|
+
| **Audio files volume** | How loud the sound-only WAV and an audiobook's MP3 and M4B are. 0 dB is −18 LUFS, the level audiobook shops ask for. Peaks always stay under −3 dBTP. | 0 dB; −10 to +4 dB in steps of 0.5 |
|
|
135
|
+
|
|
136
|
+
Type each volume in **dB** or as a **%** of the recommended level; the other box follows. −6 dB is about 50% and +4 dB about 158%. The line under each field says what 0 dB is matched to. LUFS is how loud a file sounds on average, measured the way ears hear it.
|
|
137
|
+
|
|
138
|
+
## Silence at the edges and between segments
|
|
139
|
+
|
|
140
|
+
Both are in **Video and style** → **Sound polish** and only show while there is narration.
|
|
141
|
+
|
|
142
|
+
| Option | What it does | Default / range |
|
|
143
|
+
| --- | --- | --- |
|
|
144
|
+
| **Silence at start and end (seconds)** | Quiet time before the narration starts and after it ends. | 2; 0 to 30 |
|
|
145
|
+
| **Silence between segments (seconds)** | Quiet between the intro and the narration, and between the narration and the outro. Only matters when an intro or outro is set. Leave it empty to use the gap set in Settings. | Settings value (3 unless changed); 0 to 30 |
|
|
146
|
+
|
|
147
|
+
## Add a voice under Settings → Voices
|
|
148
|
+
|
|
149
|
+
The **Voice** list on Create only offers voices you have added.
|
|
150
|
+
|
|
151
|
+
1. Open Settings → **Voices**.
|
|
152
|
+
2. Under **Add a voice**, pick the **Voice service**.
|
|
153
|
+
3. Pick a **Voice** from the service's list, or **A voice of my own (paste its ID)** and paste the ID from the service's voice library.
|
|
154
|
+
4. Type a **Name** (how you pick it on Create) and, optionally, **Languages it speaks**.
|
|
155
|
+
5. Press **Add voice**. The voice joins the table above the form.
|
|
156
|
+
|
|
157
|
+
On the voice's row in the table, turn on **Sounds like a real person** if it was cloned from, or made to sound like, someone real: Copy for YouTube Studio then answers Yes to YouTube's question about altered or synthetic content for videos it narrates. See [Settings Reference](Settings-Reference#voices) and [Publishing to YouTube](Publishing-to-YouTube).
|
|
158
|
+
|
|
159
|
+
## What the row says
|
|
160
|
+
|
|
161
|
+
Folded, the Narration row says who reads it, for example `Read by Ada, an Inworld voice, with the “Welcome” intro.`, or the speakers' format and count. With your own file it names the file.
|
|
162
|
+
|
|
163
|
+
## Tips
|
|
164
|
+
|
|
165
|
+
- If a service refuses long requests, set **Split the narration by** to **Paragraph** or **Every 500 words**. The characters charged stay the same.
|
|
166
|
+
- Listen to the narration on the project page before publishing. Fix a single piece there instead of making everything again. See [Editing a Project](Editing-a-Project).
|
|
167
|
+
- An AI check can listen for missing or garbled passages. See [Pauses and Checks](Reviews-and-Checkpoints).
|
|
168
|
+
|
|
169
|
+
## Related pages
|
|
170
|
+
|
|
171
|
+
- [Create Overview](Create-Overview)
|
|
172
|
+
- [Multiple Voices](Multiple-Voices)
|
|
173
|
+
- [Other Languages](Other-Languages)
|
|
174
|
+
- [Narration Aliases and Glossary](Narration-Aliases-and-Glossary)
|
|
175
|
+
- [Intros and Outros](Intros-and-Outros)
|
|
176
|
+
- [Prompts](Prompts)
|
|
177
|
+
- [Keys and Services](Providers-and-Keys)
|
|
178
|
+
- [Video and style](Create-Video-and-Style)
|