From remotion-superpowers
Generate background music and add it to your Remotion project. Describe the mood/genre you want, and this will generate a track via Suno and wire it into your composition with proper fade in/out.
npx claudepluginhub dojocodinglabs/remotion-superpowers --plugin remotion-superpowers# Add Music — Generate & Integrate Background Music You are helping the user add background music to their Remotion project. **Load the `remotion-production` skill** for the `music-scoring` and `audio-integration` rules. ## Workflow ### 1. Understand the Mood If not already described, ask the user: - **Genre** — Electronic, jazz, classical, lo-fi, ambient, rock, orchestral, pop? - **Mood** — Upbeat, calm, dramatic, inspiring, playful, cinematic? - **Tempo** — Fast, medium, slow? - **Vocals** — Instrumental only (recommended for background), or with vocals? ### 2. Generate Music Craft...
/gen-audioGenerates AI audio briefs for voiceover (ElevenLabs/Murf) or music (Suno), with tool selection, templates, video timing cues, and compliance notes.
/video-makerCreates, edits, and renders programming videos using React-based Remotion framework. Supports project setup, component generation, and MP4 output.
/animateCreate motion graphics videos using Open Animate toolkit from a user brief. Generates AI images/videos/audio assets, previews in Remotion Studio, and renders output.
Share bugs, ideas, or general feedback.
You are helping the user add background music to their Remotion project.
Load the remotion-production skill for the music-scoring and audio-integration rules.
If not already described, ask the user:
Craft a descriptive prompt and generate:
Use remotion-media generate_music:
- prompt: "[genre] background music, [mood], [tempo], no vocals, [additional descriptors]"
- project_path: [project root path]
Good prompt examples:
Add with fade in/out:
import { Audio, interpolate, staticFile, useCurrentFrame, useVideoConfig } from "remotion";
const frame = useCurrentFrame();
const { durationInFrames, fps } = useVideoConfig();
const musicVolume = interpolate(
frame,
[0, fps, durationInFrames - 2 * fps, durationInFrames],
[0, 0.25, 0.25, 0],
{ extrapolateLeft: "clamp", extrapolateRight: "clamp" }
);
<Audio src={staticFile("[returned-file-path]")} volume={musicVolume} />
If the project has a voiceover, implement volume ducking — lower music to 0.1 during narration, 0.3 during silent parts. See audio-integration rule for the pattern.
Tell the user to check the audio in the Remotion preview (npm run dev).
Offer adjustments:
<Loop> to repeat it.