Skip to main content

Add music, sound effects and a colour grade

This page covers three finishing touches for an edited video, each with its own template, and how to combine them in one workflow:

  • Background music — one music track under the whole edit, quieter while people speak.
  • Sound effects — short sounds (whooshes, clicks, stingers) at chosen moments.
  • Colour grade — one overall look (warm, cool, filmic, ...) applied to the whole video.

In all three, an AI chooses with words and ids only (which track, "Balanced", "Warm", ...), and ReelBolt turns those choices into exact volume levels, timings and colour settings. All three need the VideoCompile step's "mode": "Reencode" (the default).

Prerequisites for music and sound effects​

  • The video uploaded to the project.
  • Audio files uploaded to the project (for example MP3 or WAV). There is no built-in music or sound-effects library yet, so upload your tracks and effects first. Every audio file in the project is offered both as a possible music track and as a possible sound effect. With none uploaded, the music and sound-effects steps choose nothing and their reason says so in plain words ("No music: this project has no audio files to choose from…").
  • Give files clear names (calm-piano-bed.mp3, whoosh-short.wav): the AI chooses by file name.
  • Make sure you have the rights to use the music and sounds.

Background music recipe​

Add the Footage edit with background music template (video-derush-edit-music) and select your video in step 1.

#LabelStep typeAgent
1Analyze source videoVideoAnalyzeVideoTransform (not an AI)
2Decide which spans to keepAgentVideoStoryEditor
3Pick background musicAgent (context FullWorkflow)MusicSupervisor
4Compile edited video with musicVideoCompileVideoTransform (not an AI)
5Review edit qualityReviewLoopVideoReviewAgent

Step 1 adds "offerMusicTracks": true, which offers each audio file as m0, m1, ... (up to maxMusicTracks, 20). Step 4:

{"version": 1, "decision": {"from": "Step", "stepOrder": 2}, "analysisStepOrder": 1,
"enableMusic": true, "musicPlan": {"from": "Step", "stepOrder": 3},
"transitionPolicy": "Auto", "programFadeInMs": 500, "programFadeOutMs": 800,
"programAudioFadeInMs": 300, "programAudioFadeOutMs": 900, "minSegmentMs": 800}

The MusicSupervisor picks at most one track, how present it is (Quiet, Balanced, Feature), how much it dips while someone speaks (Off, Light, Normal, Heavy), and whether it repeats to fill the edit (LoopToFit) or plays once (PlayOnce). Picking no track is allowed. The music rises a little in longer pauses and fades in (1.5 s) and out (2.5 s).

Without the AI: skip step 3 and name the track yourself with "musicTrackProjectFileId": "ID-OF-THE-AUDIO-FILE" on step 4 (keep "enableMusic": true, remove musicPlan). This file is also used as a backup when the AI's choice cannot be used.

Useful step 4 settings: musicDucking ("SpeechEnvelope" default, or "Off" for a constant quieter bed), musicFitPolicy ("LoopToFit" default or "PlayOnce"), musicFadeInMs (1500), musicFadeOutMs (2500).

A reel cut to music, with no sound from the clips: set "muteSourceAudio": true on step 4 (the Mute the clips' own sound switch in the editor). Generated clips often come with their own audio, which would otherwise play under the track. When nobody speaks and there is no narration, the music is the whole soundtrack and plays at its own full level, not at the quieter level it uses under speech. With narration but no sound from the clips, the music plays fuller between the narration lines and dips under each one, by the ducking amount the music step chose.

Check: step 4's result has a music section saying whether music was applied and why not if not. The review step also checks that speech stays clearly above the music.

Cutting to the beat of the music​

For a reel cut to music, ReelBolt can measure the music and make the cuts land on its beat:

  1. In step 1, switch on Measure the music's beat ("analyzeMusicBeats": true) and pick the track under Music the video is cut to ("musicBeatTrackProjectFileId"). The editor is then told the music's tempo (for example "fast, 135 beats per minute"), how long a beat and a bar last, where the drop is (the moment the music hits hardest, for example "bar 8, at 13.9 s") and where it winds down. Offered music tracks are measured too.
  2. In the brief, ask for it: "cut to the beat, put the big product reveal on the drop".
  3. In step 4, set Cut to the beat to On every beat or On every bar ("beatSync": "Beat" or "Bar"). Every cut then moves onto the nearest beat or bar by shortening the end of a shot a little, never by stretching it, and the cut closest to the drop lands exactly on it when the intro is long enough. A shot too short to keep a whole beat stays as it is, and a shot is never shortened so much that the narration spoken over it gets cut off.

This needs background music on in step 4 (a fixed track or the music step's choice). Step 4's result has a beatSync section listing every cut: where it was, where it moved to, and whether it landed on a bar, a beat or the drop. Measuring a track takes a few seconds per track.

Sound effects recipe​

Add the Footage edit with sound effects template (video-derush-edit-sfx) and select your video in step 1.

#LabelStep typeAgent
1Analyze source videoVideoAnalyzeVideoTransform (not an AI)
2Decide which spans to keepAgentVideoStoryEditor
3Plan sound-effect cuesAgent (context FullWorkflow)SoundDesigner
4Compile edited video with sound effectsVideoCompileVideoTransform (not an AI)
5Review edit qualityReviewLoopVideoReviewAgent

Step 1 adds "offerSfxClips": true, which offers each audio file as x0, x1, ... (up to maxSfxClips, 40). Step 4:

{"version": 1, "decision": {"from": "Step", "stepOrder": 2}, "analysisStepOrder": 1,
"enableSfx": true, "sfxPlan": {"from": "Step", "stepOrder": 3},
"transitionPolicy": "Auto", "programFadeInMs": 500, "programFadeOutMs": 800,
"programAudioFadeInMs": 300, "programAudioFadeOutMs": 900, "minSegmentMs": 800}

The SoundDesigner plans zero or more cues. Each cue is an offered sound (x id) that plays when an offered shot, pause or phrase begins in the edit, with a timing word (OnCut, or Lead / Lag, 150 ms before or after) and a volume word (Subtle, Normal, Strong). No effects at all is a valid result.

Limits on step 4: maxSfxCues (8) and maxSfxCueSeconds (4 seconds, longer files are trimmed). There is no "same sound at every cut" setting; placement is always chosen by the AI.

Check: step 4's result lists applied cues and any dropped ones with a reason (for example a cue whose moment was cut out of the edit). Effects need some audio to mix into: a video with no sound and no music gets no effects.

Colour grade recipe​

Add the Footage edit with a colour grade template (video-derush-edit-grade-room) and select your video in step 1.

#LabelStep typeAgent
1Analyze source videoVideoAnalyzeVideoTransform (not an AI)
2Decide which spans to keepAgentVideoStoryEditor
3Color grade room deliberationColorGradeRoompanel plus ColorGradeDirector
4Compile edited video with gradeVideoCompileVideoTransform (not an AI)
5Review edit qualityReviewLoopVideoReviewAgent

Step 1 needs no extra setting: it measures each shot's colour by default. Step 3's view points at step 1: {"version": 1, "view": {"from": "Step", "stepOrder": 1}}. Step 4:

{"version": 1, "decision": {"from": "Step", "stepOrder": 2}, "analysisStepOrder": 1,
"enableColorGrade": true, "colorGradePlan": {"from": "Step", "stepOrder": 3},
"transitionPolicy": "Auto", "programFadeInMs": 500, "programFadeOutMs": 800,
"programAudioFadeInMs": 300, "programAudioFadeOutMs": 900, "minSegmentMs": 800}

The panel (a tone artist, a palette artist and a continuity artist) discusses the footage, and the director chooses one look for the whole video:

  • look: None, Warm, Cool, Filmic, Vibrant, Muted, Mono
  • strength: Subtle, Normal, Strong
  • shadowTone: Neutral, Lifted, Deepened
  • highlightTone: Neutral, Softened, Brightened

None (no grade) is a perfectly valid result for footage that already looks right.

Cheaper alternative: replace step 3 with a single Agent step running Colorist (context FullWorkflow); it gives the same kind of answer, and step 4 stays the same.

Check: step 4's result has a colour grade section saying which look was applied, or why none was.

Combining music, effects and grade in one workflow​

You can use all three in one workflow. Put the AI steps between the editor and the compile step, and point the compile step at each by number:

#Step typeAgent
1VideoAnalyze with "offerMusicTracks": true and "offerSfxClips": trueVideoTransform
2AgentVideoStoryEditor
3Agent (FullWorkflow)MusicSupervisor
4Agent (FullWorkflow)SoundDesigner
5Agent (FullWorkflow)Colorist
6VideoCompileVideoTransform
7ReviewLoop back to step 2VideoReviewAgent

Step 6:

{"version": 1, "decision": {"from": "Step", "stepOrder": 2}, "analysisStepOrder": 1,
"enableMusic": true, "musicPlan": {"from": "Step", "stepOrder": 3},
"enableSfx": true, "sfxPlan": {"from": "Step", "stepOrder": 4},
"enableColorGrade": true, "colorGradePlan": {"from": "Step", "stepOrder": 5}}

Set the AI steps' cacheMode to "Never" so each run gets fresh choices.

Pitfalls with music, effects and grade​

  • "Previous" points at the wrong step. In these workflows the step just before the compile step is the music, effects or grade step, not the editor. Always use {"from": "Step", "stepOrder": N}.
  • Nothing offered. Music and effects need offerMusicTracks / offerSfxClips on step 1 and at least one audio file in the project.
  • The same file used as music and as an effect. Both lists contain every audio file; clear file names help the AIs tell beds from short effects.
  • MUSIC_REQUIRES_REENCODE, SFX_REQUIRES_REENCODE, COLOR_GRADE_REQUIRES_REENCODE: these extras need "mode": "Reencode". Music and effects also fail with MUSIC_REQUIRES_AUDIO_REENCODE / SFX_REQUIRES_AUDIO_REENCODE when audioCodec is "copy".
  • Colour grade with a green-screen insert. A strong grade can make the exact screen cut-out less precise; see the tracked screen insert recipe.