Clarify H3 long videos guide behavior
This commit is contained in:
@@ -150,6 +150,17 @@ This controls how the prompt box is split into beats.
|
|||||||
- `auto`: blank lines first, then multi-line paragraphs can still split line by line
|
- `auto`: blank lines first, then multi-line paragraphs can still split line by line
|
||||||
- `each line`: every content line becomes a beat
|
- `each line`: every content line becomes a beat
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- A beat is one shot.
|
||||||
|
- If the node accidentally reads two actions as one beat, it tries to do both in one shot.
|
||||||
|
- If it accidentally reads one action as two beats, it creates an extra cut.
|
||||||
|
|
||||||
|
So this setting is really about:
|
||||||
|
|
||||||
|
- how many shots the node will make
|
||||||
|
- where the cuts happen
|
||||||
|
|
||||||
### `character_memory`
|
### `character_memory`
|
||||||
|
|
||||||
Persistent wardrobe and style memory for tracked characters.
|
Persistent wardrobe and style memory for tracked characters.
|
||||||
@@ -159,6 +170,13 @@ Good for:
|
|||||||
- clothing that should stay stable
|
- clothing that should stay stable
|
||||||
- clothing changes you want to control clearly
|
- clothing changes you want to control clearly
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- The anchor is the permanent identity and scene language.
|
||||||
|
- `character_memory` is the persistent clothing and worn-item memory.
|
||||||
|
- If you put clothing in the anchor prose, the node keeps restating it forever.
|
||||||
|
- If you put clothing in `character_memory`, the node can change or remove it later.
|
||||||
|
|
||||||
### `auto_wardrobe`
|
### `auto_wardrobe`
|
||||||
|
|
||||||
Lets the node detect clothing removals directly from beat prose.
|
Lets the node detect clothing removals directly from beat prose.
|
||||||
@@ -325,18 +343,44 @@ If you need around 20 seconds of action, you usually need:
|
|||||||
|
|
||||||
These settings control how one beat connects to the next.
|
These settings control how one beat connects to the next.
|
||||||
|
|
||||||
|
What continuity means here:
|
||||||
|
|
||||||
|
- Beat 1 renders a shot.
|
||||||
|
- The node can take the end of that shot and feed it into beat 2 in different ways.
|
||||||
|
- That carry-over is what makes a chain feel like one continuous take instead of a series of disconnected clips.
|
||||||
|
|
||||||
|
There are two main kinds of carry-over:
|
||||||
|
|
||||||
|
- a real keyframe anchor
|
||||||
|
- a softer "use this as a reference image too" carry
|
||||||
|
|
||||||
|
The real keyframe is stronger for continuity.
|
||||||
|
The reference-image carry is weaker, but can coexist more safely with some ref setups.
|
||||||
|
|
||||||
### `first_frame`
|
### `first_frame`
|
||||||
|
|
||||||
Optional opening keyframe for shot 1.
|
Optional opening keyframe for shot 1.
|
||||||
|
|
||||||
If empty, the first shot begins from text/reference conditioning alone.
|
If empty, the first shot begins from text/reference conditioning alone.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- This is only for the start of the chain.
|
||||||
|
- It does not control later shot transitions unless beat 1 hands its final frame forward.
|
||||||
|
- If you want the opening shot to start from a specific composition or pose, use this.
|
||||||
|
|
||||||
### `trim_seam`
|
### `trim_seam`
|
||||||
|
|
||||||
Drops the first frame of each later shot.
|
Drops the first frame of each later shot.
|
||||||
|
|
||||||
Use this to avoid showing the same handoff moment twice.
|
Use this to avoid showing the same handoff moment twice.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- The next shot often begins by reproducing the frame it was handed.
|
||||||
|
- If you keep that frame, you see the same instant twice.
|
||||||
|
- Trimming the seam hides that duplicate frame and makes motion feel smoother.
|
||||||
|
|
||||||
### `handoff_offset`
|
### `handoff_offset`
|
||||||
|
|
||||||
Hands an earlier frame to the next shot instead of the literal last frame.
|
Hands an earlier frame to the next shot instead of the literal last frame.
|
||||||
@@ -346,6 +390,13 @@ Useful when:
|
|||||||
- a shot ends with an open mouth
|
- a shot ends with an open mouth
|
||||||
- the next shot starts with awkward lip motion
|
- the next shot starts with awkward lip motion
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- The literal final frame of a shot can be a bad frame to continue from.
|
||||||
|
- Example: a character is mid-word, mouth wide open.
|
||||||
|
- If the next shot starts from that exact frame, the new shot can begin with ugly mouth motion.
|
||||||
|
- Offsetting by a few frames lets the node hand forward a cleaner pose.
|
||||||
|
|
||||||
### `vary_seed_per_shot`
|
### `vary_seed_per_shot`
|
||||||
|
|
||||||
Changes the seed between beats.
|
Changes the seed between beats.
|
||||||
@@ -354,6 +405,15 @@ Usually leave this off for a continuous take.
|
|||||||
|
|
||||||
Turning it on makes cuts feel more separate because micro-detail resets between beats.
|
Turning it on makes cuts feel more separate because micro-detail resets between beats.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- The overall person and scene can still be "the same" in a broad sense.
|
||||||
|
- But tiny details like skin texture, cloth texture, grain, and little surface quirks will refresh at each beat.
|
||||||
|
- So this is often the difference between:
|
||||||
|
a true continuous-feeling chain
|
||||||
|
and
|
||||||
|
a sequence of visually related separate shots
|
||||||
|
|
||||||
### Beat-Level `continuity:`
|
### Beat-Level `continuity:`
|
||||||
|
|
||||||
You can override continuity for one beat inside the beat text.
|
You can override continuity for one beat inside the beat text.
|
||||||
@@ -367,6 +427,103 @@ continuity: handoff ref
|
|||||||
continuity: soft carry
|
continuity: soft carry
|
||||||
```
|
```
|
||||||
|
|
||||||
|
What each option really does:
|
||||||
|
|
||||||
|
### `continuity: hard cut`
|
||||||
|
|
||||||
|
The next beat starts fresh.
|
||||||
|
|
||||||
|
In practice:
|
||||||
|
|
||||||
|
- do not carry the previous shot forward as a keyframe
|
||||||
|
- do not treat the previous shot as a continuation anchor
|
||||||
|
- let the new beat begin like a new setup
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you want a deliberate cut
|
||||||
|
- the previous shot ended in a bad transition state
|
||||||
|
- wardrobe/state changed and you do not want the old frame dragging that state into the next shot
|
||||||
|
|
||||||
|
### `continuity: keyframe carry`
|
||||||
|
|
||||||
|
The next beat starts from the previous frame as a real anchor.
|
||||||
|
|
||||||
|
In practice:
|
||||||
|
|
||||||
|
- the node tells the new shot to start from that exact handed-forward frame
|
||||||
|
- this is the strongest continuity mode
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you want the new beat to feel like the same take continued
|
||||||
|
- you care more about continuity than about allowing the new beat to re-compose itself freely
|
||||||
|
|
||||||
|
Risk:
|
||||||
|
|
||||||
|
- if the carried frame is bad, awkward, or mid-transition, the next shot inherits that problem
|
||||||
|
|
||||||
|
### `continuity: handoff ref`
|
||||||
|
|
||||||
|
The previous frame is carried as an extra reference image instead of as the strict starting keyframe.
|
||||||
|
|
||||||
|
In practice:
|
||||||
|
|
||||||
|
- the new shot is shown the previous frame as guidance
|
||||||
|
- but it is not forced to literally begin from it
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you still want some continuity
|
||||||
|
- but a real keyframe carry is too rigid
|
||||||
|
- or the shot is already heavily reference-conditioned and you want a softer transition
|
||||||
|
|
||||||
|
Trade-off:
|
||||||
|
|
||||||
|
- smoother than a hard cut
|
||||||
|
- weaker than a true keyframe carry
|
||||||
|
|
||||||
|
### `continuity: soft carry`
|
||||||
|
|
||||||
|
Carry the previous shot only if the new shot is not already using references.
|
||||||
|
|
||||||
|
In practice:
|
||||||
|
|
||||||
|
- if the beat has no ref images, the handoff can carry forward
|
||||||
|
- if the beat is already ref-conditioned, the shot is allowed to begin more independently
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you want a sensible default
|
||||||
|
- you want continuity where it fits
|
||||||
|
- but you do not want every ref-conditioned beat forced too hard to the last frame
|
||||||
|
|
||||||
|
### When To Use Which One
|
||||||
|
|
||||||
|
Use this mental model:
|
||||||
|
|
||||||
|
- `hard cut` = new shot, start fresh
|
||||||
|
- `keyframe carry` = continue the same take
|
||||||
|
- `handoff ref` = remind the new shot where it came from
|
||||||
|
- `soft carry` = continue when convenient, back off when refs already dominate
|
||||||
|
|
||||||
|
### How continuity settings work together
|
||||||
|
|
||||||
|
The final transition is shaped by all of these together:
|
||||||
|
|
||||||
|
- `first_frame`
|
||||||
|
- `trim_seam`
|
||||||
|
- `handoff_offset`
|
||||||
|
- `vary_seed_per_shot`
|
||||||
|
- beat-level `continuity:`
|
||||||
|
- whether the shot is also carrying character/location refs
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
- `keyframe carry` plus `trim_seam` plus stable seed usually gives the smoothest chain
|
||||||
|
- `hard cut` plus different seed gives the most separate-looking next shot
|
||||||
|
- `handoff ref` is the in-between option
|
||||||
|
|
||||||
## Group 5: References And Identity
|
## Group 5: References And Identity
|
||||||
|
|
||||||
These settings decide how reference images are used.
|
These settings decide how reference images are used.
|
||||||
@@ -404,6 +561,88 @@ Modes:
|
|||||||
- `every shot`: references on every shot
|
- `every shot`: references on every shot
|
||||||
- `every shot + handoff ref`: references on every shot plus previous frame as an extra soft ref
|
- `every shot + handoff ref`: references on every shot plus previous frame as an extra soft ref
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- `ref_mode` decides when H3 actually sees the reference images.
|
||||||
|
- This is not just about prompt words. It controls whether the images themselves are part of the conditioning for that beat.
|
||||||
|
|
||||||
|
### `auto ref2v`
|
||||||
|
|
||||||
|
Best general default.
|
||||||
|
|
||||||
|
What it does:
|
||||||
|
|
||||||
|
- if the prompt uses `<Picture N>` tags, those tags control placement
|
||||||
|
- if there are no tags anywhere, all connected refs are used on every shot
|
||||||
|
|
||||||
|
Why this exists:
|
||||||
|
|
||||||
|
- single-character chains often want identity support on every beat
|
||||||
|
- forcing tags for every shot would be annoying
|
||||||
|
|
||||||
|
### `where tagged`
|
||||||
|
|
||||||
|
Strict explicit routing.
|
||||||
|
|
||||||
|
What it does:
|
||||||
|
|
||||||
|
- if tags exist, only the tagged shots get those refs
|
||||||
|
- if there are no tags at all, it falls back to first-shot behavior
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you want exact manual control
|
||||||
|
- you do not want every beat pulling every ref
|
||||||
|
|
||||||
|
### `first shot`
|
||||||
|
|
||||||
|
Use refs only to establish the look at the start.
|
||||||
|
|
||||||
|
What it does:
|
||||||
|
|
||||||
|
- beat 1 gets the refs
|
||||||
|
- later beats rely on continuity from the chain itself
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you want the look established once
|
||||||
|
- then want later shots to flow from the chain rather than keep reasserting the refs
|
||||||
|
|
||||||
|
Risk:
|
||||||
|
|
||||||
|
- identity can drift later if continuity alone is not strong enough
|
||||||
|
|
||||||
|
### `every shot`
|
||||||
|
|
||||||
|
Use refs every time.
|
||||||
|
|
||||||
|
What it does:
|
||||||
|
|
||||||
|
- every beat gets the refs again
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- identity drift is the main problem
|
||||||
|
- you would rather keep the face stable even if the chain feels more cut-based
|
||||||
|
|
||||||
|
Risk:
|
||||||
|
|
||||||
|
- transitions can feel less like one continuous take
|
||||||
|
|
||||||
|
### `every shot + handoff ref`
|
||||||
|
|
||||||
|
Use the references every time and also carry the previous shot as another soft reference.
|
||||||
|
|
||||||
|
What it does:
|
||||||
|
|
||||||
|
- keep identity pressure high
|
||||||
|
- still remind the next beat what the previous shot looked like
|
||||||
|
|
||||||
|
Use it when:
|
||||||
|
|
||||||
|
- you want both identity support and some transition support
|
||||||
|
- but you do not want a hard keyframe carry
|
||||||
|
|
||||||
### `ref_image_size`
|
### `ref_image_size`
|
||||||
|
|
||||||
Controls how large the reference is encoded.
|
Controls how large the reference is encoded.
|
||||||
@@ -411,6 +650,13 @@ Controls how large the reference is encoded.
|
|||||||
- `match`: cheaper, usually enough
|
- `match`: cheaper, usually enough
|
||||||
- `max`: stronger identity/location fidelity, slower and heavier
|
- `max`: stronger identity/location fidelity, slower and heavier
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- `match` keeps the ref conditioning lighter and cheaper
|
||||||
|
- `max` gives the model a larger, richer reference encoding
|
||||||
|
|
||||||
|
If faces are drifting and the card can handle it, `max` is one of the first things to try.
|
||||||
|
|
||||||
### `ref_noise_aug`
|
### `ref_noise_aug`
|
||||||
|
|
||||||
Controls how literally the model follows the reference image.
|
Controls how literally the model follows the reference image.
|
||||||
@@ -427,6 +673,13 @@ Lower:
|
|||||||
- more approximate
|
- more approximate
|
||||||
- more likely to drift
|
- more likely to drift
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- high values say "follow this reference closely"
|
||||||
|
- lower values say "take this more as guidance"
|
||||||
|
|
||||||
|
So this is one of the main identity-strength knobs.
|
||||||
|
|
||||||
### Beat-Level `ref_mode:` And `ref_noise_aug:`
|
### Beat-Level `ref_mode:` And `ref_noise_aug:`
|
||||||
|
|
||||||
You can override these inside a beat.
|
You can override these inside a beat.
|
||||||
@@ -453,6 +706,13 @@ Simple usage patterns:
|
|||||||
- one location plus named characters: use character names in the beat and tag the location when needed
|
- one location plus named characters: use character names in the beat and tag the location when needed
|
||||||
- exact slot control: use explicit `<Picture N>` tags
|
- exact slot control: use explicit `<Picture N>` tags
|
||||||
|
|
||||||
|
What to remember:
|
||||||
|
|
||||||
|
- tags control explicit slot placement
|
||||||
|
- names can pull matching character refs into the real image-conditioning list
|
||||||
|
- location refs are often tagged because they are about where the shot happens
|
||||||
|
- character refs are often named because they are about who is in the shot
|
||||||
|
|
||||||
## Group 6: Audio And Sound
|
## Group 6: Audio And Sound
|
||||||
|
|
||||||
These settings shape the soundtrack behavior.
|
These settings shape the soundtrack behavior.
|
||||||
@@ -486,10 +746,22 @@ Modes:
|
|||||||
|
|
||||||
Adds prompt-side silence control to beats with no quoted dialogue.
|
Adds prompt-side silence control to beats with no quoted dialogue.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- the node tells H3 "nobody is speaking here"
|
||||||
|
- this helps stop random mouth motion and random voice babble
|
||||||
|
- but it is still only prompt guidance, not a hard guarantee
|
||||||
|
|
||||||
### `allow_nonspeech_vocals`
|
### `allow_nonspeech_vocals`
|
||||||
|
|
||||||
Allows screams, gasps, sobs, and similar non-dialogue sounds in otherwise non-speaking beats.
|
Allows screams, gasps, sobs, and similar non-dialogue sounds in otherwise non-speaking beats.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- you still do not want speech
|
||||||
|
- but you do want human vocal sounds
|
||||||
|
- this is the "let them cry, gasp, scream, groan" option
|
||||||
|
|
||||||
### `mute_nonspeech_audio`
|
### `mute_nonspeech_audio`
|
||||||
|
|
||||||
Hard mutes the audio for non-dialogue beats.
|
Hard mutes the audio for non-dialogue beats.
|
||||||
@@ -500,6 +772,12 @@ Trade-off:
|
|||||||
|
|
||||||
- you also lose the generated ambience for those beats
|
- you also lose the generated ambience for those beats
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- if the beat has no dialogue, the node can zero that beat's audio
|
||||||
|
- this is the most reliable way to stop H3 inventing speech
|
||||||
|
- but it also deletes any nice incidental ambience H3 might have generated for that beat
|
||||||
|
|
||||||
### `mute_fade_ms`
|
### `mute_fade_ms`
|
||||||
|
|
||||||
Smooths the edges of audible shots next to muted ones.
|
Smooths the edges of audible shots next to muted ones.
|
||||||
@@ -511,6 +789,11 @@ There are two layers:
|
|||||||
- prompt-level guidance
|
- prompt-level guidance
|
||||||
- hard muting
|
- hard muting
|
||||||
|
|
||||||
|
That means:
|
||||||
|
|
||||||
|
- `auto_silence_nonspeech` is the polite request
|
||||||
|
- `mute_nonspeech_audio` is the hard enforcement
|
||||||
|
|
||||||
If you want the safest anti-babble setup:
|
If you want the safest anti-babble setup:
|
||||||
|
|
||||||
- leave `auto_silence_nonspeech` on
|
- leave `auto_silence_nonspeech` on
|
||||||
@@ -552,6 +835,12 @@ This is the optional second pass.
|
|||||||
|
|
||||||
Enables the refinement pass.
|
Enables the refinement pass.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- the node renders the beat once
|
||||||
|
- then runs a second sampler pass over that result
|
||||||
|
- the goal is to polish, not to invent a whole different shot
|
||||||
|
|
||||||
### `detail_sampler_name`
|
### `detail_sampler_name`
|
||||||
|
|
||||||
Sampler for the refinement pass.
|
Sampler for the refinement pass.
|
||||||
@@ -564,10 +853,21 @@ Scheduler for the refinement pass.
|
|||||||
|
|
||||||
Extra steps for the refinement pass.
|
Extra steps for the refinement pass.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- more steps gives the second pass more opportunity to change the image
|
||||||
|
- that can help detail
|
||||||
|
- but after a point it stops being "cleanup" and starts becoming "rewrite"
|
||||||
|
|
||||||
### `detail_denoise`
|
### `detail_denoise`
|
||||||
|
|
||||||
How strongly the refinement pass is allowed to rewrite the beat.
|
How strongly the refinement pass is allowed to rewrite the beat.
|
||||||
|
|
||||||
|
What this really means:
|
||||||
|
|
||||||
|
- low denoise = polish what is already there
|
||||||
|
- high denoise = let the second pass substantially alter what is already there
|
||||||
|
|
||||||
### How The Detail-Pass Settings Work Together
|
### How The Detail-Pass Settings Work Together
|
||||||
|
|
||||||
The detail pass starts from the first-pass result and tries to polish it.
|
The detail pass starts from the first-pass result and tries to polish it.
|
||||||
@@ -588,6 +888,13 @@ Aggressive settings can improve texture, but they can also:
|
|||||||
- pull away from references
|
- pull away from references
|
||||||
- break continuity
|
- break continuity
|
||||||
|
|
||||||
|
That is why this group should be read as one combined strength control:
|
||||||
|
|
||||||
|
- `detail_pass` decides whether the second pass exists
|
||||||
|
- `detail_steps` decides how long it keeps working
|
||||||
|
- `detail_denoise` decides how free it is to change things
|
||||||
|
- `detail_sampler_name` and `detail_scheduler` shape how that rewrite behaves
|
||||||
|
|
||||||
Good starting point:
|
Good starting point:
|
||||||
|
|
||||||
- `detail_pass = on`
|
- `detail_pass = on`
|
||||||
|
|||||||
Reference in New Issue
Block a user