@gentbajko/slopify 3.0.0 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -4
- package/dist/adapter-registry.js +28 -0
- package/dist/adapters/alignment/text.js +3 -1
- package/dist/adapters/key-probes.js +57 -8
- package/dist/adapters/tts/gemini.js +206 -0
- package/dist/adapters/tts/pcm-mp3.js +62 -0
- package/dist/adapters/tts/system.js +147 -0
- package/dist/assets/models.yaml +38 -0
- package/dist/assets/style-preview/narration.mp3 +0 -0
- package/dist/assets/style-preview/tall-1.jpg +0 -0
- package/dist/assets/style-preview/tall-2.jpg +0 -0
- package/dist/assets/style-preview/tall-3.jpg +0 -0
- package/dist/assets/style-preview/wide-1.jpg +0 -0
- package/dist/assets/style-preview/wide-2.jpg +0 -0
- package/dist/assets/style-preview/wide-3.jpg +0 -0
- package/dist/catalog/registry.js +4 -1
- package/dist/catalog/validate.js +2 -2
- package/dist/edge/autostart/docker-record.js +2 -2
- package/dist/edge/autostart/docker.js +68 -0
- package/dist/edge/autostart/prompt.js +7 -1
- package/dist/edge/autostart/service.js +18 -9
- package/dist/edge/cli-args.js +71 -0
- package/dist/edge/cli.js +11 -16
- package/dist/edge/docker-install/run.js +7 -1
- package/dist/edge/events/hub.js +3 -1
- package/dist/edge/http/actions.js +6 -1
- package/dist/edge/http/app.js +2 -0
- package/dist/edge/http/byte-range.js +42 -0
- package/dist/edge/http/diagnostics.js +1 -0
- package/dist/edge/http/draft-files.js +2 -4
- package/dist/edge/http/files.js +10 -6
- package/dist/edge/http/onboarding.js +64 -4
- package/dist/edge/http/project-templates.js +19 -2
- package/dist/edge/http/projects.js +6 -1
- package/dist/edge/http/providers.js +39 -9
- package/dist/edge/http/reviews.js +18 -8
- package/dist/edge/http/revision-files.js +2 -4
- package/dist/edge/http/schedules.js +9 -5
- package/dist/edge/http/storage.js +16 -2
- package/dist/edge/http/studio.js +111 -31
- package/dist/edge/http/style-preview.js +3 -42
- package/dist/edge/http/tutorials.js +59 -0
- package/dist/edge/http/youtube-edits.js +11 -2
- package/dist/extension/slopify-studio-chrome.zip +0 -0
- package/dist/extension/slopify-studio-firefox.zip +0 -0
- package/dist/host-cli/gemini-login.js +83 -0
- package/dist/host-cli/status.js +4 -2
- package/dist/kernel/db/migrations/0041-cast-hosts.sql +3 -0
- package/dist/kernel/ports/model.js +5 -3
- package/dist/kernel/ports/system-speech.js +203 -0
- package/dist/kernel/runner/graph.js +17 -1
- package/dist/kernel/runner/index.js +4 -4
- package/dist/kernel/runner/providers.js +1 -1
- package/dist/main.js +5 -0
- package/dist/model-catalog.js +2 -0
- package/dist/patch-notes/3.0.1.md +105 -0
- package/dist/patch-notes/3.0.2.md +20 -0
- package/dist/patch-notes/index.json +12 -0
- package/dist/slices/admission/rules.js +3 -3
- package/dist/slices/admission/start.js +1 -1
- package/dist/slices/channels/cast-match.js +1 -1
- package/dist/slices/channels/repo.js +3 -0
- package/dist/slices/channels/schema.js +23 -0
- package/dist/slices/channels/service.js +6 -6
- package/dist/slices/control/index.js +3 -1
- package/dist/slices/control/providers.js +4 -1
- package/dist/slices/episodes/related.js +2 -2
- package/dist/slices/estimate/requests.js +9 -1
- package/dist/slices/eta/history.js +56 -0
- package/dist/slices/eta/model.js +63 -0
- package/dist/slices/eta/view.js +25 -0
- package/dist/slices/fixes/rules.js +1 -1
- package/dist/slices/fonts/coverage.js +1 -1
- package/dist/slices/loudness/model.js +1 -1
- package/dist/slices/model-upkeep/usage.js +4 -2
- package/dist/slices/narration/pauses-model.js +1 -1
- package/dist/slices/narration/pronunciation.js +2 -2
- package/dist/slices/notifications/notifier.js +28 -2
- package/dist/slices/notifications/rules.js +26 -2
- package/dist/slices/onboarding/first-run.js +40 -14
- package/dist/slices/onboarding/full-video.js +81 -0
- package/dist/slices/onboarding/model.js +21 -0
- package/dist/slices/onboarding/quick-short.js +25 -10
- package/dist/slices/play-drafts/convert.js +3 -3
- package/dist/slices/play-drafts/readiness.js +1 -1
- package/dist/slices/project-templates/from-project.js +10 -3
- package/dist/slices/project-templates/next-chapter.js +94 -0
- package/dist/slices/project-templates/one-off.js +1 -1
- package/dist/slices/project-templates/schema.js +7 -1
- package/dist/slices/rebuild/recipe-exports.js +5 -0
- package/dist/slices/rebuild/recipe-save.js +1 -1
- package/dist/slices/rebuild/recipe-voices.js +1 -1
- package/dist/slices/rebuild/review-redo.js +15 -0
- package/dist/slices/rebuild/runtime-export-bed.js +1 -1
- package/dist/slices/rebuild/runtime-review.js +35 -5
- package/dist/slices/rebuild/runtime-store.js +23 -1
- package/dist/slices/rebuild/runtime-voices.js +2 -2
- package/dist/slices/rebuild/service-readiness.js +3 -3
- package/dist/slices/reviews/repo.js +16 -4
- package/dist/slices/run-cost/panel.js +30 -8
- package/dist/slices/run-cost/pricing.js +4 -1
- package/dist/slices/schedules/agenda.js +66 -2
- package/dist/slices/schedules/repo.js +1 -1
- package/dist/slices/schedules/scheduler.js +1 -1
- package/dist/slices/schedules/schema.js +43 -2
- package/dist/slices/schedules/similar.js +41 -3
- package/dist/slices/schedules/topic-list.js +2 -2
- package/dist/slices/schedules/topics.js +118 -17
- package/dist/slices/settings/first-run.js +5 -1
- package/dist/slices/settings/health.js +64 -7
- package/dist/slices/settings/key-guides.js +17 -7
- package/dist/slices/settings/key-test.js +12 -4
- package/dist/slices/settings/keys.js +10 -5
- package/dist/slices/settings/model-reach.js +52 -0
- package/dist/slices/settings/model.js +49 -0
- package/dist/slices/settings/models.js +5 -1
- package/dist/slices/settings/readiness.js +14 -2
- package/dist/slices/settings/tutorial-schema.js +5 -0
- package/dist/slices/shorts/render.js +18 -17
- package/dist/slices/storage/documents.js +11 -3
- package/dist/slices/storage/downloads.js +33 -1
- package/dist/slices/storage/portable.js +4 -2
- package/dist/slices/studio/model.js +2 -0
- package/dist/slices/studio/pack.js +6 -4
- package/dist/slices/studio/queue.js +69 -0
- package/dist/slices/studio/settings.js +42 -5
- package/dist/slices/style-preview/narration.js +33 -0
- package/dist/slices/style-preview/render.js +43 -56
- package/dist/slices/style-preview/schema.js +17 -3
- package/dist/slices/style-preview/service.js +3 -4
- package/dist/slices/style-preview/settings.js +75 -25
- package/dist/slices/tutorials/anchors.js +57 -0
- package/dist/slices/tutorials/library.js +185 -0
- package/dist/slices/voices/audio-files.js +7 -2
- package/dist/slices/voices/cast.js +26 -8
- package/dist/slices/voices/grouping.js +10 -0
- package/dist/slices/voices/model.js +49 -10
- package/dist/slices/voices/script.js +1 -1
- package/dist/slices/youtube/edits-repo.js +19 -4
- package/dist/slices/youtube/placeholders.js +2 -2
- package/dist/tutorials/AI-CLIs.md +146 -0
- package/dist/tutorials/Backups.md +121 -0
- package/dist/tutorials/Calendar.md +103 -0
- package/dist/tutorials/Cast-Library.md +112 -0
- package/dist/tutorials/Channels.md +148 -0
- package/dist/tutorials/Costs-and-Run-Cost.md +136 -0
- package/dist/tutorials/Docker.md +171 -0
- package/dist/tutorials/Document-Themes.md +207 -0
- package/dist/tutorials/Editing-a-Project.md +204 -0
- package/dist/tutorials/FAQ.md +134 -0
- package/dist/tutorials/First-Launch-and-Welcome.md +153 -0
- package/dist/tutorials/Home-and-Projects.md +174 -0
- package/dist/tutorials/Home.md +119 -0
- package/dist/tutorials/Install.md +154 -0
- package/dist/tutorials/Intros-and-Outros.md +86 -0
- package/dist/tutorials/Keyboard-Shortcuts-and-Command-Palette.md +215 -0
- package/dist/tutorials/Library-Overview.md +75 -0
- package/dist/tutorials/Models.md +133 -0
- package/dist/tutorials/Multiple-Voices.md +161 -0
- package/dist/tutorials/Narration-Aliases-and-Glossary.md +129 -0
- package/dist/tutorials/Notifications.md +86 -0
- package/dist/tutorials/Other-Languages.md +110 -0
- package/dist/tutorials/PDF-Documents.md +100 -0
- package/dist/tutorials/Play-Images.md +135 -0
- package/dist/tutorials/Play-Narration.md +167 -0
- package/dist/tutorials/Play-Outputs.md +109 -0
- package/dist/tutorials/Play-Overview.md +216 -0
- package/dist/tutorials/Play-Title-and-Article.md +135 -0
- package/dist/tutorials/Play-Video-and-Style.md +143 -0
- package/dist/tutorials/Project-Page.md +228 -0
- package/dist/tutorials/Prompts.md +136 -0
- package/dist/tutorials/Providers-and-Keys.md +290 -0
- package/dist/tutorials/Publishing-to-YouTube.md +135 -0
- package/dist/tutorials/Recovery-and-Retries.md +141 -0
- package/dist/tutorials/Reviews-and-Checkpoints.md +143 -0
- package/dist/tutorials/Schedules.md +154 -0
- package/dist/tutorials/Settings-Reference.md +258 -0
- package/dist/tutorials/Shorts.md +116 -0
- package/dist/tutorials/Start-at-Login.md +126 -0
- package/dist/tutorials/Studio-Extension.md +146 -0
- package/dist/tutorials/Templates.md +146 -0
- package/dist/tutorials/Trash.md +87 -0
- package/dist/tutorials/Troubleshooting.md +149 -0
- package/dist/tutorials/Uninstalling-and-Moving.md +113 -0
- package/dist/tutorials/Updating-and-Patch-Notes.md +120 -0
- package/dist/tutorials/Video-Editing.md +135 -0
- package/dist/tutorials/Where-Your-Files-Live.md +149 -0
- package/dist/tutorials/YouTube-Description.md +132 -0
- package/dist/tutorials/Your-First-Short.md +125 -0
- package/dist/tutorials/_Footer.md +1 -0
- package/dist/tutorials/_Sidebar.md +69 -0
- package/dist/web/assets/index-C4McGNke.js +307 -0
- package/dist/web/assets/index-DBLSfqA-.css +1 -0
- package/dist/web/assets/{pdf-BG8n_uc5.js → pdf-COowcLcz.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +2 -2
- package/dist/web/assets/index-CUA2sUxU.css +0 -1
- package/dist/web/assets/index-CX590kE-.js +0 -303
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# Play Video and Style
|
|
2
|
+
|
|
3
|
+
The **Video and style** row decides how your images become a video: how long each stays on screen, how they move and cut, the Look over the picture, an optional ambient sound bed, the frame shape and the captions. The video is rendered on this computer, so none of this costs provider money except **Animate images**. A six-second style preview in the right rail shows and plays your choices as you make them.
|
|
4
|
+
|
|
5
|
+
**Where to find it:** Play → **Video and style** row → **Change**. After the run, the same controls are in the project's **Edit project**; see [Video Editing](Video-Editing).
|
|
6
|
+
|
|
7
|
+
## Choose whether to render a video
|
|
8
|
+
|
|
9
|
+
The row starts with a **Source** switch:
|
|
10
|
+
|
|
11
|
+
| Source | What happens | Cost |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| **Generate** (default) | Renders the slideshow video on this computer from the images and narration. | No provider money, only time |
|
|
14
|
+
| **Off** | No video. Each finished stage is left to download on its own. With narration on, you get a combined WAV of the narration with its segment gaps instead. | None |
|
|
15
|
+
|
|
16
|
+
**Generate** needs images, so the video is Off while Images is Off. The line beside the switch says what you will get:
|
|
17
|
+
|
|
18
|
+
| Line | When |
|
|
19
|
+
| --- | --- |
|
|
20
|
+
| "Images and narration · 3 s segment gaps" | Video on, narration on (the gap is your silence between segments) |
|
|
21
|
+
| "Silent video · each image shown once" | Video on, narration Off |
|
|
22
|
+
| "Combined WAV export with narration and segment gaps" | Video Off, narration on |
|
|
23
|
+
| "Download each enabled stage separately" | Video Off, narration Off |
|
|
24
|
+
|
|
25
|
+
## Timing and motion
|
|
26
|
+
|
|
27
|
+
| Option | What it does | Default / range |
|
|
28
|
+
| --- | --- | --- |
|
|
29
|
+
| **Seconds per image** | How long each image stays on screen. When cuts follow the narration, it is the target and a cut waits for a sentence end. When images run out they start again. | 15; 1 to 600 |
|
|
30
|
+
| **Zoom (%)** | How far each image zooms in or out over its time on screen. 0 keeps images still. | 22.5; 0 to 50 |
|
|
31
|
+
| **Motion** | How each image moves: **Zoom in and out**, **Pan across**, **Mix of both** (by turns) or **Still**. A mix keeps a long video watchable. | Zoom in and out |
|
|
32
|
+
| **Cuts** | **Every N seconds** holds each image for Seconds per image. **Follow the narration** cuts in the pause after a sentence, as close to that length as the sentences allow (never under 40% of it), and starts a new image at every chapter. | Follow the narration for new projects |
|
|
33
|
+
| **Silence at start and end (seconds)** | Quiet time before the narration starts and after it ends. Shown while there is narration. | 2; 0 to 30 |
|
|
34
|
+
| **Silence between segments (seconds)** | Quiet between the intro and the narration, and between the narration and the outro. Only matters with an intro or outro. Empty uses the Settings gap. | Settings value (3 unless changed); 0 to 30 |
|
|
35
|
+
|
|
36
|
+
**Follow the narration** needs word timing, so it works in English and the languages that have it. For a language without word timing, **Cuts** is locked to **Every N seconds** and a note under it says why. See [Other Languages](Other-Languages).
|
|
37
|
+
|
|
38
|
+
Turning on **More images for long videos** in the Images row switches **Motion** from Zoom to **Mix of both**. See [Play Images](Play-Images#more-images-for-long-videos).
|
|
39
|
+
|
|
40
|
+
## The Look
|
|
41
|
+
|
|
42
|
+
**Look** is a disclosure under the timing controls. Closed, its line lists what is on, or "Plain cuts, no effects". Everything in it is applied while the video renders.
|
|
43
|
+
|
|
44
|
+
| Option | What it does | Default / range |
|
|
45
|
+
| --- | --- | --- |
|
|
46
|
+
| **Transition** | How one image hands over to the next: **Cut**, **Crossfade**, **Fade through black**, **Slide** or **Wipe**. The change is centred on the cut and takes the length you pick, so the video stays exactly as long as its narration. | Cut; length 0.6 s (0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.5 or 2 s) |
|
|
47
|
+
| **Colour grade** | A colour treatment over the whole video: **Warm fantasy**, **Cold**, **Desaturated** or **Sepia**. Only render time. | None |
|
|
48
|
+
| **Vignette** | Darkens the corners to draw the eye to the middle: **Subtle** or **Strong**. | Off |
|
|
49
|
+
| **Film grain** | Moving film grain over the whole picture for an older, filmic feel: **Subtle** or **Strong**. | Off |
|
|
50
|
+
| **Atmosphere** | An overlay Slopify draws itself: rising **Embers**, drifting **Dust**, or low **Fog** along the bottom of the frame. No footage is downloaded and no API is called. | None |
|
|
51
|
+
| **Chapter cards** | Shows each chapter's title in the middle of the picture for 2.5 seconds as the chapter starts, in the caption font. Chapters come from the YouTube description when that step runs, otherwise from the article's headings. Needs narration. | Off |
|
|
52
|
+
| **Animate images** | Turns some images into 5-second moving clips with an image-to-video model on your image provider (fal.ai or Replicate). **Chapter openers** animates the first image of each chapter (needs narration); **Every Nth image** animates every 2nd to 10th. Pick the image-to-video model in the third box. Each clip is one paid call, shown in the estimate. An image that cannot be animated stays still. | Off |
|
|
53
|
+
|
|
54
|
+
### Animate some images
|
|
55
|
+
|
|
56
|
+
1. Make sure the Images row uses fal.ai or Replicate. Other providers have no image-to-video models, and the Look says so.
|
|
57
|
+
2. Open **Look** and set **Animate images** to **Chapter openers** or **Every Nth image**.
|
|
58
|
+
3. For **Every Nth image**, pick how often (every 2 to every 10).
|
|
59
|
+
4. Pick the model in the model box ("Choose a model"). The run cannot start until one is picked.
|
|
60
|
+
5. Check the added cost in the estimate.
|
|
61
|
+
|
|
62
|
+
## Ambient sound
|
|
63
|
+
|
|
64
|
+
An optional bed of rain, a fireplace, wind or your own audio file, played quietly under the whole narration of the long video. It dips while the narrator speaks, including under the intro and outro. It is shown while both the video and the narration are on.
|
|
65
|
+
|
|
66
|
+
| Option | What it does | Default / range |
|
|
67
|
+
| --- | --- | --- |
|
|
68
|
+
| **Ambient sound** | **The channel's (brand kit)** uses whatever the channel's kit says, which may be nothing. **None** plays no bed, whatever the channel has. **Rain**, **Fireplace** and **Wind** are made on this computer, so nothing is downloaded and the same settings always sound the same. **My own file** uploads an audio file, looped if shorter than the video. | The channel's (brand kit) |
|
|
69
|
+
| **Level (dB)** | How loud the bed plays under the voice, from −40 (barely there) to −6 (close to the voice). Whole numbers only. | −18 |
|
|
70
|
+
| **Fade in (seconds)** | How long the bed takes to rise from silence at the start. | 3; 0 to 30 in steps of 0.5 |
|
|
71
|
+
| **Tail after the narration (seconds)** | How long the bed keeps playing, fading out, after the narration ends. It plays over the silence already at the end; a tail longer than **Silence at start and end** makes the video that much longer. | 6; 0 to 30 in steps of 0.5 |
|
|
72
|
+
|
|
73
|
+
Only the long video gets the bed: shorts keep their own background music, and the audio-only WAV stays the narration alone. It costs no API calls. A template with **My own file** cannot run on a schedule, because the file has to be attached again on Play; pick a built-in bed for scheduled runs. A channel's brand kit can only hold the three built-in beds.
|
|
74
|
+
|
|
75
|
+
## Pauses and Level the volume
|
|
76
|
+
|
|
77
|
+
Below the ambient sound are **Pause between sentences**, **Pause between paragraphs** and **Level the volume** with its **Video volume** and **Audio files volume**. They shape the narration, so they are described on [Play Narration](Play-Narration#pauses-between-sentences-and-paragraphs).
|
|
78
|
+
|
|
79
|
+
## Frame format
|
|
80
|
+
|
|
81
|
+
| Option | What it does | Default |
|
|
82
|
+
| --- | --- | --- |
|
|
83
|
+
| **Frame format** | **16:9** is a landscape video for YouTube and screens. **9:16** is a portrait video for phones. Images are drawn in this shape and captions are placed for it. | 16:9 |
|
|
84
|
+
|
|
85
|
+
## Captions
|
|
86
|
+
|
|
87
|
+
Captions are timed from your narration on this computer, with no paid API. The first use downloads a speech model of about 95 MB. They need narration: with narration Off, the section says "Turn Audio on to add subtitles."
|
|
88
|
+
|
|
89
|
+
| Option | What it does | Default / range |
|
|
90
|
+
| --- | --- | --- |
|
|
91
|
+
| **Subtitles** | **Off** makes none. **Subtitle files (.srt + .vtt)** gives you files to upload beside the video. **Burn into video + files** draws the captions into the picture and also makes the files; it needs the video on. | Off |
|
|
92
|
+
| **Subtitle font** | The typeface of burned-in captions and chapter cards. Pick **Default font · bundled** or a font you uploaded. | Default font |
|
|
93
|
+
| **Upload font (.ttf or .otf)** | Adds your own font, right here in the caption font picker (there is no separate font screen in Settings). Uploaded fonts stay available to every project and to a channel's brand kit. | |
|
|
94
|
+
| **Subtitle font size** | How big burned-in captions are. Larger is easier to read on phones but covers more of the picture. Type it or use the slider. | 48; 16 to 120, whole numbers |
|
|
95
|
+
| **Subtitle position** | Where burned-in captions sit: **Top**, **Upper-middle**, **Center**, **Lower-middle** or **Bottom**. Move them up when the pictures have important detail near the bottom. | Bottom |
|
|
96
|
+
|
|
97
|
+
Font, size and position apply to burned-in captions only. Players style `.srt` and `.vtt` files themselves. The channel's brand kit can fill the caption font when you leave it at the default.
|
|
98
|
+
|
|
99
|
+
### Burn captions into the video
|
|
100
|
+
|
|
101
|
+
1. Make sure the Narration row is not Off and the video Source is **Generate**.
|
|
102
|
+
2. Set **Subtitles** to **Burn into video + files**.
|
|
103
|
+
3. Pick a **Subtitle font**, or press **Upload font (.ttf or .otf)** and pick a file. Wait for "Uploading font…" to finish; the run cannot start during the upload.
|
|
104
|
+
4. Set **Subtitle font size** and **Subtitle position**.
|
|
105
|
+
5. Watch the style preview in the right rail.
|
|
106
|
+
|
|
107
|
+
If a saved font is missing (for example after a reinstall), the picker says "Saved font is unavailable. Choose another font or upload it again."
|
|
108
|
+
|
|
109
|
+
After the run, you can fix a misheard word or nudge a caption's timing on the project page. See [Video Editing](Video-Editing).
|
|
110
|
+
|
|
111
|
+
## Style preview
|
|
112
|
+
|
|
113
|
+
The **Style preview** at the top of the right rail ("6 seconds of the sample, rendered with your settings") is rendered on this computer by the real video renderer, with your captions, Look and motion. It plays six seconds of the bundled sample project's real narration over three of its pictures, two seconds each, so a transition and a chapter card both show, and the captions are timed to the narration's words, as in a real video. It plays in Slopify's own player, with sound.
|
|
114
|
+
|
|
115
|
+
The pictures are the sample's (landscape or portrait, following **Frame format**), unless there is something closer to your video: your uploaded establishing image, or else a picture of the cast member the title names (or the first cast member with a picture). The line under it names the caption settings, and "Drawn on …" when it uses one of your pictures. It renders again by itself a moment after you change a setting, costs no API calls, and **Render again** forces a fresh one.
|
|
116
|
+
|
|
117
|
+
It shows while the video is generated from images. If the caption settings are invalid, it says "Fix the caption settings to render the preview."
|
|
118
|
+
|
|
119
|
+
| Option | What it does | Default |
|
|
120
|
+
| --- | --- | --- |
|
|
121
|
+
| **Preview text** | The words the preview's captions show, in your caption font, size and position. Left at the sample sentence (or empty), the captions are the sample narration's own words; any other text is spread over the stretches where the narration speaks. It is only for the preview and never reaches the video; real captions come from your narration. | "Every story begins with a word." |
|
|
122
|
+
|
|
123
|
+
The same preview is in Edit project while its **Subtitles** section is open. Shorts have their own [Shorts preview](Shorts#shorts-preview).
|
|
124
|
+
|
|
125
|
+
## What the row summary says
|
|
126
|
+
|
|
127
|
+
Folded, the row reads like `16:9 · follow the narration · Warm fantasy · captions Default font 48 bottom`: the frame, the cuts, the Look, and the caption font, size and position, or "no video" and "no captions".
|
|
128
|
+
|
|
129
|
+
## Tips
|
|
130
|
+
|
|
131
|
+
- Keep **Seconds per image** near the length of a few sentences (10 to 20 s) when cuts follow the narration.
|
|
132
|
+
- Try one Look setting at a time and watch the preview; they stack.
|
|
133
|
+
- Everything except **Animate images** only costs render time, so you can change the Look later in Edit project without paying a provider again.
|
|
134
|
+
|
|
135
|
+
## Related pages
|
|
136
|
+
|
|
137
|
+
- [Play Overview](Play-Overview)
|
|
138
|
+
- [Play Images](Play-Images)
|
|
139
|
+
- [Play Narration](Play-Narration)
|
|
140
|
+
- [Video Editing](Video-Editing)
|
|
141
|
+
- [Channels](Channels)
|
|
142
|
+
- [Other Languages](Other-Languages)
|
|
143
|
+
- [Schedules](Schedules)
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
# Project Page
|
|
2
|
+
|
|
3
|
+
Every run you start gets a project page. It shows each stage as it is made, tells you the one thing the project needs next, and holds the finished files, the settings, the history and the cost.
|
|
4
|
+
|
|
5
|
+
**Where to find it:** Home or Projects → click a project. Pressing **Start run** on Play also opens it.
|
|
6
|
+
|
|
7
|
+
## How the page is laid out
|
|
8
|
+
|
|
9
|
+
The page has four parts:
|
|
10
|
+
|
|
11
|
+
| Part | What it holds |
|
|
12
|
+
| --- | --- |
|
|
13
|
+
| Title row | **Projects** (the way back), the project title, one line with the article prompt's name, the format and when it started, the status, **Make the next chapter** on a finished audiobook that is a chapter of a book, **Edit settings** and the **More project actions** menu (the three dots). |
|
|
14
|
+
| Run cost line | Once the run has ended, one line under the title sums it up (see [The run cost line](#the-run-cost-line)). |
|
|
15
|
+
| Section rail (left) | One entry per part of the project, with a coloured lamp for its state. Below a line: **Settings**, **Checkpoints** and **History**. On a phone the rail becomes a row of tabs. |
|
|
16
|
+
| Main column | The section you picked. |
|
|
17
|
+
| Right rail | The next action panel, **Free space** on a finished project (see [Free space](#free-space)), then **Run steps** with each step's time and time left, the cost so far and the batch queue count (**Queue · N**). On narrow windows (under about 1180 px wide) only the next action panel and Free space are shown. |
|
|
18
|
+
|
|
19
|
+
The page opens where the next action points: the failed step, the held review or the outdated images. When nothing needs you, it opens on the stage the run is at. A finished video whose YouTube description is written opens on the **YouTube** section, so **Copy** (the description) is one press away.
|
|
20
|
+
|
|
21
|
+
### The run cost line
|
|
22
|
+
|
|
23
|
+
When a run has ended (done, done with problems, failed or cancelled), a line under the title sums it up, for example `This run cost $0.42 · ~$3.10 via API · 12 min end to end`. A run that ended early says **Spent so far** instead, and calls without a known price add "plus unpriced calls". **See cost by stage** opens the **Cost** section. The line is hidden while the run is going and when it spent nothing. See [Costs and Run Cost](Costs-and-Run-Cost).
|
|
24
|
+
|
|
25
|
+
### Time left
|
|
26
|
+
|
|
27
|
+
While a step runs, its line in **Run steps** (and on Home's Running now) ends with its time left, for example `12 of 40 chunks · about 4 min left`. Slopify works it out from the step's own pace once it has counted something, otherwise from how long the same kind of step took in your finished runs (on the same provider and model when there are enough of those). Past that time it says **taking longer than usual**; with nothing to go by, **time left unknown**. Near the end it reads **finishing up** or **under a minute left**.
|
|
28
|
+
|
|
29
|
+
### Project status
|
|
30
|
+
|
|
31
|
+
The status beside the title reads one of:
|
|
32
|
+
|
|
33
|
+
| Status | Meaning |
|
|
34
|
+
| --- | --- |
|
|
35
|
+
| **Queued** | Waiting for its turn behind other videos in the batch queue. |
|
|
36
|
+
| **Running** | A stage is being made. |
|
|
37
|
+
| **Paused** | You paused it. Everything made so far is kept. |
|
|
38
|
+
| **Done** | Every stage finished. |
|
|
39
|
+
| **Done with problems** | The main output was made (the video, or the narration when there is no video, or the article when there is neither), but another step failed. Each failed step shows its error and its fix. |
|
|
40
|
+
| **Failed** | A step failed and the main output was not made. |
|
|
41
|
+
| **Canceled** | You cancelled the run. Finished outputs are kept. |
|
|
42
|
+
|
|
43
|
+
## The next action button
|
|
44
|
+
|
|
45
|
+
The right rail always shows at most one button, named for what it will do. It is the same action the command palette (`Ctrl+K`) offers as the first entry under **This project**, and it is repeated inside the section it concerns.
|
|
46
|
+
|
|
47
|
+
| Situation | Status line | Button |
|
|
48
|
+
| --- | --- | --- |
|
|
49
|
+
| The bundled sample project | Sample project | **Make my own copy** (the sample is read-only; your copy can be edited and made again) |
|
|
50
|
+
| Paused | Paused | **Continue the run** |
|
|
51
|
+
| A step failed and will not retry by itself | Failed | The step's fix-it button (for example **Copy sign-in command** with **Check again**, **Soften and retry**, **Edit the prompt**, **Switch model**), or **Try the article again**, **Try images again** and so on. See [Recovery and Retries](Recovery-and-Retries#fix-it-buttons). |
|
|
52
|
+
| A checkpoint is holding the run | Waiting for you | **Approve and record the narration**, **Approve and make the images**, **Approve and render the video**, or **Approve the ...** when nothing waits on it |
|
|
53
|
+
| A CLI plan limit is used up | Waiting for limits | No button. The line says, for example, "Waiting for Codex limits (resets at 14:00)." and that the run carries on by itself. |
|
|
54
|
+
| A step is waiting to retry | Waiting to try again | No button. The line says the time it tries again. |
|
|
55
|
+
| Running | Running | **Pause** |
|
|
56
|
+
| Stopped before it finished (for example after a restart) or cancelled | Stopped / Canceled | **Continue the run** (makes only what is missing) |
|
|
57
|
+
| Queued | Queued | No button. It starts when the videos ahead of it are done. |
|
|
58
|
+
| An edit made outputs outdated | Outdated | **Remake the outdated narration**, **Remake 4 outdated images** and so on |
|
|
59
|
+
| A 60-second short is finished | Done | **Make the full video on this topic** (opens Play set up for a long video on the same topic; see [Your First Short](Your-First-Short#make-the-full-video-next)) |
|
|
60
|
+
| The video is finished | Done | **Prepare upload** |
|
|
61
|
+
|
|
62
|
+
`Shift+N` runs the next action from anywhere on the page.
|
|
63
|
+
|
|
64
|
+
When a step fails, **Error details** under the message shows the step's own words.
|
|
65
|
+
|
|
66
|
+
## Pause, continue and cancel a run
|
|
67
|
+
|
|
68
|
+
### Pause a run
|
|
69
|
+
|
|
70
|
+
1. Open the project while it is running.
|
|
71
|
+
2. Press **Pause** in the right rail (or pick **Pause the run** in the command palette).
|
|
72
|
+
3. The call in progress finishes, then nothing new starts. Everything made so far is kept.
|
|
73
|
+
|
|
74
|
+
A step that is waiting to retry or waiting for a CLI limit also stays held while the project is paused.
|
|
75
|
+
|
|
76
|
+
### Continue a paused or stopped run
|
|
77
|
+
|
|
78
|
+
1. Press **Continue the run** in the right rail (or **Continue the run** in the command palette).
|
|
79
|
+
2. Slopify makes only what is missing; finished work is reused.
|
|
80
|
+
|
|
81
|
+
### Cancel a run
|
|
82
|
+
|
|
83
|
+
1. Open **More project actions** (the three dots beside the title).
|
|
84
|
+
2. Choose **Cancel the run…**.
|
|
85
|
+
3. Confirm with **Cancel run**, or press **Keep running** to leave it alone.
|
|
86
|
+
|
|
87
|
+
Cancelling stops every running stage; finished outputs are kept. You can continue a cancelled run later with **Continue the run**. A project has to be cancelled (not running) before you can delete it from Projects.
|
|
88
|
+
|
|
89
|
+
## The sections
|
|
90
|
+
|
|
91
|
+
Sections appear only when the run uses them. A section with outdated outputs shows how many beside its name, for example "3 outdated".
|
|
92
|
+
|
|
93
|
+
| Section | What it shows |
|
|
94
|
+
| --- | --- |
|
|
95
|
+
| **Article** | The article in a reading view, with tabs for **Research** notes, **Sources**, **Speakers** (multi-voice scripts) and **Pronunciation** when those exist. **Copy** copies the open tab as Markdown. |
|
|
96
|
+
| **Narration** | A player for the intro, body and outro, the downloads, and the voice and chunking used. |
|
|
97
|
+
| **Images** | The establishing image (a reference that is not in the video), every slideshow image in order, on-screen cards for tables and figures, and the thumbnails. Press an image to see it full size (see [Images at full size](#images-at-full-size)). |
|
|
98
|
+
| **Video** (or **Audio export** when Video is off) | The player, downloads, the file length and format, and what the loudness master measured. |
|
|
99
|
+
| **Shorts** | The vertical clips picked from the video, each with its title and hashtags. See [Shorts](Shorts). |
|
|
100
|
+
| **YouTube** | The description, chapters, hashtags and tags as they go into YouTube Studio, **Copy** (the description, `Shift+D`), **Copy tags** and **Prepare upload**. See [YouTube Description](YouTube-Description) and [Publishing to YouTube](Publishing-to-YouTube). |
|
|
101
|
+
| **PDF** | The rendered document and **Download PDF**. See [PDF Documents](PDF-Documents). |
|
|
102
|
+
| **Cost** | The run cost by stage and by model. See [Costs and Run Cost](Costs-and-Run-Cost). |
|
|
103
|
+
| **Live** | The run as it is made. See below. |
|
|
104
|
+
| **Settings** | The project's settings, opened straight into the **Edit project** form. See [Editing a Project](Editing-a-Project). |
|
|
105
|
+
| **Checkpoints** | The review checkpoints for this revision. See below. |
|
|
106
|
+
| **History** | Every saved revision and its files. See [Editing a Project](Editing-a-Project#history-and-saved-revisions). |
|
|
107
|
+
|
|
108
|
+
A section for a stage that is switched off says "*Article* is off for this run." A section still waiting says it starts when the steps before it are done.
|
|
109
|
+
|
|
110
|
+
### Re-run a whole stage
|
|
111
|
+
|
|
112
|
+
Each stage section has its own **More actions for ...** menu (the three dots in the section head) with the rare, whole-stage actions:
|
|
113
|
+
|
|
114
|
+
| Menu item | What it does |
|
|
115
|
+
| --- | --- |
|
|
116
|
+
| **Research again** | Fresh research, then the affected article, narration, thumbnail and exports. |
|
|
117
|
+
| **Write the article again** | A fresh article, then the affected narration, thumbnail and exports. |
|
|
118
|
+
| **Record the narration again** | New narration and the affected exports. |
|
|
119
|
+
| **Make all images again** | New generated images and the affected video; supplied images and narration are kept. |
|
|
120
|
+
| **Make the thumbnails again** | New thumbnails; the video is not changed. |
|
|
121
|
+
| **Render the video again** / **Export the audio again** | Rebuilds the exports from saved media, with no new narration or images. |
|
|
122
|
+
| **Render the PDF again** | Renders the PDF from the saved article and title. |
|
|
123
|
+
|
|
124
|
+
Each asks first; confirm with the same label or press **Keep what is there**. Previous outputs stay in History. These actions are off while the project is running.
|
|
125
|
+
|
|
126
|
+
### The reading view
|
|
127
|
+
|
|
128
|
+
The article, research notes and narration script are shown in a reading view:
|
|
129
|
+
|
|
130
|
+
- **Contents**: a list of the headings; click one to jump to it.
|
|
131
|
+
- **Search the article** (or research, or narration script): every match is marked. Press `Enter` for the next match, `Shift+Enter` for the previous, or use the **Previous match** and **Next match** arrows.
|
|
132
|
+
- **Copy section** beside each heading copies that section as Markdown.
|
|
133
|
+
- **Copy all** copies the whole text as Markdown.
|
|
134
|
+
|
|
135
|
+
If the browser blocks clipboard access, select the text and press `Ctrl+C`.
|
|
136
|
+
|
|
137
|
+
### Downloads
|
|
138
|
+
|
|
139
|
+
Every stage puts its files the same way, in one row of buttons apart from its text: one lime **Download** (a menu when the stage has several files, a plain button when it has one), the stage's one **Open folder**, then anything else the stage does (such as **Copy**). Lengths, formats and what a file measured sit on their own line under the buttons.
|
|
140
|
+
|
|
141
|
+
| Where | What the Download holds |
|
|
142
|
+
| --- | --- |
|
|
143
|
+
| Article | **Article (.md)**, **Sources**, **Pronunciation glossary** and **Research notes**, as far as the run made them. Beside it: **Copy** for the open tab and **Show instructions**. |
|
|
144
|
+
| Narration | For intro, body and outro: the recording (**Body narration**), the **clean narration** (the spoken text used for captions) and the **TTS script** (with delivery cues; blank lines separate requests). Uploaded audio has no TTS script. |
|
|
145
|
+
| Images | **Download all** (a zip of the images). Each image and thumbnail also has its own Download at full size. |
|
|
146
|
+
| Video | **Video (.mp4)** or **Audio (.wav)**, **Subtitles (.srt)**, **Subtitles (.vtt)**, **YouTube description (.txt)**, **YouTube tags (.txt)**, **Audio with chapters (.mp3)**, **Audiobook with chapters (.m4b)** and each **Short N (.mp4)**, as far as the run made them. |
|
|
147
|
+
| Shorts | Every short's MP4 (**Download the short** when there is one). See [Shorts](Shorts#see-copy-and-download-your-shorts). |
|
|
148
|
+
| PDF | **Download PDF**. |
|
|
149
|
+
| History | Any saved revision's files, one **Open folder** per version, and **Download all images** for that revision. |
|
|
150
|
+
|
|
151
|
+
The YouTube description and tags downloads are the text exactly as the page shows it: your hand edits, the fitted chapters and the filled channel links.
|
|
152
|
+
|
|
153
|
+
**Open folder** opens the stage's folder on the computer running Slopify. In Docker without the host helper, it shows the path to copy into your file manager instead. See [Where Your Files Live](Where-Your-Files-Live).
|
|
154
|
+
|
|
155
|
+
### The players
|
|
156
|
+
|
|
157
|
+
Videos and audio play in Slopify's own player, not the browser's.
|
|
158
|
+
|
|
159
|
+
- **Video:** the poster (the first thumbnail for the finished video, the first still for a short) with a big play key, then a bar with play, the time, a lime track you can click or drag (it shows what has loaded, a time tip and the YouTube chapter marks), volume, speed from 0.75× to 2×, captions, picture in picture and full screen. The bar hides while the video plays. In a narrow space it drops picture in picture, then volume, speed and the total time, keeping play, seek, captions and full screen on one row.
|
|
160
|
+
- **Audio** (narration, intros and outros, the audio export, podcasts and audiobooks, live previews, parts in History): the same bar on its own, with the chapter or segment marks on the track.
|
|
161
|
+
|
|
162
|
+
Click the player first, then use YouTube's keys: `Space` or `K` plays and pauses, `J` and `L` jump 10 seconds back or forward, `Left` and `Right` 5 seconds, `M` mutes, `F` goes full screen and `C` turns captions on or off (video only), and `0` to `9` jump to that tenth of the way through.
|
|
163
|
+
|
|
164
|
+
### Images at full size
|
|
165
|
+
|
|
166
|
+
Press any image, thumbnail or cast picture to open it full size. `Left` and `Right` (or **Previous** and **Next**) move between them; `Esc` or **Close** closes it. At full size, images and thumbnails keep **Regenerate** (it asks first: **Regenerate it** or **Keep it**) and **Download**.
|
|
167
|
+
|
|
168
|
+
### Live
|
|
169
|
+
|
|
170
|
+
**Live** shows the run while it is made:
|
|
171
|
+
|
|
172
|
+
- **Steps**: each stage and its state.
|
|
173
|
+
- **Article**: the text as the model writes it.
|
|
174
|
+
- **Narration**: a waveform that grows as each part is spoken, with "Narration so far: N seconds". A live player, **Listen while it generates**, plays the audio as it arrives.
|
|
175
|
+
- **Images so far**: each image as it is drawn.
|
|
176
|
+
|
|
177
|
+
**Live writing** also appears in a running stage's own section. When a stage makes several calls, a list picks which one to watch. **Follow output** keeps the newest text in view; untick it to read back. Watching costs nothing extra, and the full text is saved when the stage finishes.
|
|
178
|
+
|
|
179
|
+
### Checkpoints
|
|
180
|
+
|
|
181
|
+
**Checkpoints** lists the review checkpoints of the current revision and what depends on each. When one is holding the run, approve it here or with the next action button (**Approve ... checkpoint**).
|
|
182
|
+
|
|
183
|
+
**Checkpoint choices** lets you change which steps hold:
|
|
184
|
+
|
|
185
|
+
1. Open **Checkpoints** in the section rail.
|
|
186
|
+
2. Under **Checkpoint choices**, tick a step that has not started to add a checkpoint before it, or untick one to remove it. Work already admitted for an unticked step carries on when ready.
|
|
187
|
+
3. Press **Save checkpoints**.
|
|
188
|
+
|
|
189
|
+
Only generated steps can have a checkpoint. Pausing the project still applies on top. If the project was edited elsewhere, press **Reload checkpoint choices** and make your change again. More in [Reviews and Checkpoints](Reviews-and-Checkpoints).
|
|
190
|
+
|
|
191
|
+
## Free space
|
|
192
|
+
|
|
193
|
+
A finished project can drop the working files it was made from (images, narration parts, subtitle timing, render settings) and keep what gets published: the video, shorts, thumbnail, article, description, document and anything you uploaded. In the right rail, **Free space** shows the size of both, for example "Outputs 1.4 GB · working files 1.2 GB", with the button **Free 1.2 GB: keep the outputs, drop the working files**.
|
|
194
|
+
|
|
195
|
+
1. Press the button.
|
|
196
|
+
2. Read what goes, then confirm with **Free 1.2 GB**, or press **Keep the working files**.
|
|
197
|
+
|
|
198
|
+
Changing the project later makes those files again first, which takes time and provider credits. The offer is hidden on the bundled samples, while the project runs or waits, and when nothing is left to drop. Settings → **Backup & storage** offers the same for every project (**Keep outputs only**). See [Where Your Files Live](Where-Your-Files-Live).
|
|
199
|
+
|
|
200
|
+
## More project actions
|
|
201
|
+
|
|
202
|
+
The three dots beside the title hold:
|
|
203
|
+
|
|
204
|
+
| Action | What it does |
|
|
205
|
+
| --- | --- |
|
|
206
|
+
| **Choose what to remake…** | Opens the rebuild review for every outdated or failed output. See [Editing a Project](Editing-a-Project#choose-what-to-remake). |
|
|
207
|
+
| **Save as template…** | Saves this project's settings as a template (not for the sample). See [Templates](Templates). |
|
|
208
|
+
| **Cancel the run…** | Stops the run (only while it is running). |
|
|
209
|
+
|
|
210
|
+
## Command palette
|
|
211
|
+
|
|
212
|
+
Press `Ctrl+K` on a project page. Under **This project** you get: the next action (`Shift+N`), **Pause the run** or **Continue the run**, **Prepare upload**, **Edit project settings**, **Choose what to remake**, **Save as template**, **Cancel the run**, the first outdated group (for example **Remake 4 outdated images**), **Remake everything outdated**, **Make my own copy** (sample only), **Copy description** (`Shift+D`) and **Regenerate image N** for every image, including the ones behind **Show all**. Type the number with it, for example `regenerate image 12`; it asks first, as the Regenerate button does. See [Keyboard Shortcuts and Command Palette](Keyboard-Shortcuts-and-Command-Palette).
|
|
213
|
+
|
|
214
|
+
## Tips
|
|
215
|
+
|
|
216
|
+
- The sample projects are read-only. Press **Make my own copy** to change one.
|
|
217
|
+
- A failed thumbnail does not stop the video or the PDF: a failed step only stops the steps that need its output. The PDF is then laid out without a cover; make the thumbnail again later and the PDF is marked outdated, ready to remake with it.
|
|
218
|
+
- You can close the browser tab while a run is going. The run continues on the computer running Slopify.
|
|
219
|
+
|
|
220
|
+
## Related pages
|
|
221
|
+
|
|
222
|
+
- [Editing a Project](Editing-a-Project)
|
|
223
|
+
- [Video Editing](Video-Editing)
|
|
224
|
+
- [Recovery and Retries](Recovery-and-Retries)
|
|
225
|
+
- [Reviews and Checkpoints](Reviews-and-Checkpoints)
|
|
226
|
+
- [Costs and Run Cost](Costs-and-Run-Cost)
|
|
227
|
+
- [Publishing to YouTube](Publishing-to-YouTube)
|
|
228
|
+
- [Home and Projects](Home-and-Projects)
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# Prompts
|
|
2
|
+
|
|
3
|
+
Prompts are the instructions Slopify gives your models: how to write the article, what each picture shows, what the thumbnail looks like, how to write the YouTube description, which moments become shorts, and more. You write a prompt once, with `{{keywords}}` where the subject goes, and Play turns each keyword into a field you fill in per video.
|
|
4
|
+
|
|
5
|
+
**Where to find it:** **Library → Prompts**. Pick the kind with **Prompt kind** at the top.
|
|
6
|
+
|
|
7
|
+
## Prompt kinds
|
|
8
|
+
|
|
9
|
+
The kind decides where Play offers the prompt.
|
|
10
|
+
|
|
11
|
+
| Kind | What it does | What it costs |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| **Article** | The instruction the text model gets to write the video's article, which becomes the narration. Research notes go first when research ran. The answer's sources and pronunciation sections are never narrated. | One call on the project's LLM, plus up to 3 more when the answer runs out of room |
|
|
14
|
+
| **Image** | Sent as written to the image model, with the keywords filled in. No text model rewrites it. Play sets how many pictures each prompt makes (1 to 20, at most 60 a run). Pictures show for 15 s each by default and repeat until the video ends. | One image call per picture |
|
|
15
|
+
| **Thumbnail** | Describes the thumbnail. With Thumbnail set to **Prompt by LLM**, the text model first turns it into a picture prompt using the title and article. 1 thumbnail by default, or 3: the second a close-up, the third a wider shot. | One image call per thumbnail, plus one text call with Prompt by LLM |
|
|
16
|
+
| **Narration Preparation** | Tells the text model how the narration should be delivered. It only adds cues, such as a short speaking direction or a laugh or sigh, and never rewrites the words. Works with the Inworld TTS-2 voice model. | One call each for the body, the intro and the outro |
|
|
17
|
+
| **YouTube Description** | Tells the text model how to write the description, chapters, hashtags and tags from the timestamped transcript. A project that picks none uses the built-in wording. | One call per video |
|
|
18
|
+
| **Shorts** | Tells the text model which moments to cut into vertical shorts (3 of 60 to 120 s by default). A project that picks none uses the built-in wording. | One call to pick them, one per short for its picture prompts, one image call per picture |
|
|
19
|
+
| **Review** | Tells the reviewer what to check in a finished article, set of images, narration, thumbnail or shorts, and when to flag or redo it. Pictures can only be judged by the Claude Code and Codex reviewers. A stage with none picked uses its own built-in wording. | One reviewer call per item checked |
|
|
20
|
+
| **Script (speakers)** | Used instead of an Article prompt when a run has several voices. The text model answers with `#` section headings and `Name: words` turns, one speaker per paragraph. Text in `[square brackets]` is not spoken. | One call on the project's LLM |
|
|
21
|
+
|
|
22
|
+
See [Title and article](Play-Title-and-Article), [Images](Play-Images), [Narration](Play-Narration), [YouTube description](YouTube-Description), [Shorts](Shorts), [Reviews and checkpoints](Reviews-and-Checkpoints) and [Multiple voices](Multiple-Voices) for how each is used.
|
|
23
|
+
|
|
24
|
+
## Write a new prompt
|
|
25
|
+
|
|
26
|
+
1. Open **Library → Prompts** and pick the **Prompt kind**.
|
|
27
|
+
2. Press **New prompt**.
|
|
28
|
+
3. Type a **Name**: up to 200 characters, unique within its kind. Play and Edit project list the prompt by this name.
|
|
29
|
+
4. Write the **Body**, up to 100,000 characters. Put a keyword in double braces wherever the subject goes, for example:
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
Write a 1,500-word documentary narration about {{Topic}} for a general audience.
|
|
33
|
+
Open with a question. End with one surprising fact.
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
5. Watch **Detected slots** (the keyword list) fill in as you type.
|
|
37
|
+
6. For an Image prompt that draws photo-like pictures, see [Mark an image prompt as photorealistic](#mark-an-image-prompt-as-photorealistic).
|
|
38
|
+
7. Press **Save** (or `Ctrl+S`). A tick shows when it is saved.
|
|
39
|
+
|
|
40
|
+
If **Save** won't go, the sentence beside it names the first problem, such as "Enter a name." or a keyword that is never closed.
|
|
41
|
+
|
|
42
|
+
### Start from ready-made text
|
|
43
|
+
|
|
44
|
+
Some kinds have a starter button above the body:
|
|
45
|
+
|
|
46
|
+
- **Narration Preparation:** **Use Documentary Starter** fills in documentary delivery cues.
|
|
47
|
+
- **YouTube Description** and **Shorts:** **Use Built-in Starter** fills in the wording Slopify uses when no prompt is picked.
|
|
48
|
+
|
|
49
|
+
When the body already has text, Slopify asks "Replace this prompt body?" first. Nothing is saved until you press **Save**.
|
|
50
|
+
|
|
51
|
+
## Keywords (slots)
|
|
52
|
+
|
|
53
|
+
Every `{{keyword}}` in the body becomes one field on Play.
|
|
54
|
+
|
|
55
|
+
- You type a keyword's value once per video, and it is filled into every prompt, intro and outro that names it.
|
|
56
|
+
- Names are case-sensitive: `{{Topic}}` and `{{topic}}` are two fields.
|
|
57
|
+
- A keyword the project title also names (for example a title of `History: {{Topic}}`) is typed per video, and templates save it empty.
|
|
58
|
+
- A prompt with no keywords runs as written.
|
|
59
|
+
|
|
60
|
+
Mistakes the editor refuses, with the line and column:
|
|
61
|
+
|
|
62
|
+
- a `{{` that is never closed ("Add `}}` after the keyword name"),
|
|
63
|
+
- a keyword with no name,
|
|
64
|
+
- a keyword placed inside another keyword.
|
|
65
|
+
|
|
66
|
+
## Mark an image prompt as photorealistic
|
|
67
|
+
|
|
68
|
+
YouTube asks whether a video contains realistic-looking AI scenes. Slopify answers for you from your marks.
|
|
69
|
+
|
|
70
|
+
1. Save the Image prompt first. (Before it is saved, the editor says "Save this Image prompt first, then choose whether it draws photorealistic pictures.")
|
|
71
|
+
2. Turn on **Draws photorealistic pictures** when the prompt's style looks like real photos or film. Leave it off for painterly or illustrated styles.
|
|
72
|
+
|
|
73
|
+
It applies at once, without pressing Save. Prepare upload then answers Yes to YouTube's AI use question for videos and shorts drawn with this prompt. A channel set to **Always Yes** or **Always No** wins. Default: off. See [Publishing to YouTube](Publishing-to-YouTube).
|
|
74
|
+
|
|
75
|
+
## Edit, duplicate, use and delete
|
|
76
|
+
|
|
77
|
+
Each prompt's row has, in order:
|
|
78
|
+
|
|
79
|
+
| Action | What it does |
|
|
80
|
+
|---|---|
|
|
81
|
+
| **Edit** | Opens the editor. Change the text and press **Save**. |
|
|
82
|
+
| **Duplicate** | Opens the editor with a copy. Give it a new name and save. |
|
|
83
|
+
| **Use in Play** | Picks the prompt in your open Play draft and opens Play on its field. An article prompt switches the article to Generate, an image prompt is ticked with one image, a thumbnail prompt switches the thumbnail to From prompt, and a Description or Shorts prompt turns that step on. |
|
|
84
|
+
| **History** | Opens the prompt's history (below). |
|
|
85
|
+
| **Delete** | Asks first, then moves the prompt to **Settings → Trash** for 30 days, where **Restore** brings it back. |
|
|
86
|
+
|
|
87
|
+
Use **Search prompts** (`/`) to find one by name. A press anywhere on a row picks it.
|
|
88
|
+
|
|
89
|
+
### Rename a prompt
|
|
90
|
+
|
|
91
|
+
Press the pencil (**Rename <name>**) beside the name, type the new name and press **Save name** or Enter. `Esc` or **Cancel** keeps the old one. The text stays as it is, the rename is one version in **History**, and the notice ("Renamed “A” to “B”.") has **Undo**.
|
|
92
|
+
|
|
93
|
+
## What happens when you edit a prompt
|
|
94
|
+
|
|
95
|
+
Projects keep their own copy of every prompt they used. Editing a prompt here changes only runs started later. Templates keep their own copy too, and remember a prompt by name: after a rename they use the copy saved with them until you pick the prompt again.
|
|
96
|
+
|
|
97
|
+
To bring a new prompt version into an existing project, open the project's **Edit project**, and on the prompt press **Use the Library version** (or pick it again). What was made from the old wording turns outdated, and nothing is remade until you choose. See [Editing a project](Editing-a-Project).
|
|
98
|
+
|
|
99
|
+
## Used by
|
|
100
|
+
|
|
101
|
+
The panel beside the list shows what uses the selected prompt:
|
|
102
|
+
|
|
103
|
+
- **Templates** that name it,
|
|
104
|
+
- **Schedules** (active or paused) by the template version they run,
|
|
105
|
+
- **Projects**, with how many of their revisions used it and whether the current one does.
|
|
106
|
+
|
|
107
|
+
It matches by name within the kind. If nothing uses it, it says "Nothing uses it yet."
|
|
108
|
+
|
|
109
|
+
## History and versions
|
|
110
|
+
|
|
111
|
+
Every save that changes the name or text adds a version, and every version is kept. A save that changed nothing adds none.
|
|
112
|
+
|
|
113
|
+
1. Press **History** on the prompt's row (the clock icon).
|
|
114
|
+
2. The drawer shows the latest change with the changed words marked.
|
|
115
|
+
|
|
116
|
+
**Compare:** pick any two versions under **Older** and **Newer**. They are shown side by side, with removed words marked on the left and added words on the right. A rename between them is said above the text.
|
|
117
|
+
|
|
118
|
+
**Versions:** every saved version, newest first. **Restore** saves an older version again as a new version ("restored from version 2"), so nothing after it is lost. If another prompt has taken its name since, rename that one first. Projects already made keep their text.
|
|
119
|
+
|
|
120
|
+
Prompts saved before history existed start with their current text as version 1. A prompt imported from a backup starts its history from its imported text, unless the backup carried its history.
|
|
121
|
+
|
|
122
|
+
## Tips
|
|
123
|
+
|
|
124
|
+
- Keep one keyword for the subject (`{{Topic}}`) and put it in the video title too. Then templates and schedules work without extra setup.
|
|
125
|
+
- Ask the article prompt for a Pronunciation Glossary of names in IPA if you use Inworld voices. See [Aliases and glossary](Narration-Aliases-and-Glossary).
|
|
126
|
+
- Write image prompts as the picture itself ("A candle-lit scriptorium, oil painting, warm light"), not as an instruction to a person. No text model rewrites them.
|
|
127
|
+
- Use **Duplicate** before a big change, or rely on **History** and **Restore**.
|
|
128
|
+
|
|
129
|
+
## Related pages
|
|
130
|
+
|
|
131
|
+
- [Library overview](Library-Overview)
|
|
132
|
+
- [Title and article](Play-Title-and-Article)
|
|
133
|
+
- [Images](Play-Images)
|
|
134
|
+
- [Templates](Templates)
|
|
135
|
+
- [Editing a project](Editing-a-Project)
|
|
136
|
+
- [Trash](Trash)
|