agentsclimarketplace

Audio mix maker

Skill Mikefluff/skills/skills/audio-mix-maker

Mix music/audio onto an existing video via ffmpeg. Modes: replace, overlay, duck (sidechain compressor lowers music under speech). Volume + fade controls. Pure ffmpeg, no API. Use when: 'mix this music onto the video', 'add background music to video', 'duck the music under voiceover', 'смешай музыку с видео', 'фоновая музыка для видео'.From its SKILL.md

Install
npx -y skills add Mikefluff/skills --skill audio-mix-maker

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 17 stars17 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.0 KB, as published. Nobody here has run it

<objective> Mix a music / audio track onto an existing video with ffmpeg-driven post-processing. Returns a new MP4 with the music mixed according to the chosen mode.

Distinct from reel-builder:

  • reel-builder ORCHESTRATES generation + stitching from scratch (script → shots → music → stitch). This skill is JUST the final-mix step on assets you already have.
  • No script / no video / music generation — bring your own.

Distinct from subtitle-burner:

  • subtitle-burner adds CAPTIONS. This skill adds AUDIO MIX.
  • Both are pure-ffmpeg utilities — they share the lightweight wrapper pattern.

Distinct from voiceover-maker:

  • voiceover-maker GENERATES TTS. This skill MIXES audio onto video.

This skill does NOT:

  • Generate music (use music-prompt --execute first)
  • Generate voiceover (use voiceover-maker --execute first)
  • Stitch multiple video clips (use reel-builder for that, or raw ffmpeg concat)
  • Cut / trim video segments (use ffmpeg / DaVinci Resolve / Premiere)
  • Sync audio to specific moments (use a NLE — Final Cut / Premiere / DaVinci) </objective>

ROLE

Read video + music + mode + volume/fade controls → run ffmpeg with the right filter chain → save mixed MP4.

PIPELINE

  1. Resolve inputs:

    • --video <path> — source MP4 / MOV / WebM (required)
    • --audio <path> — music / SFX / voiceover (required)
  2. Pick mode:

    • --mode replace (default) — drop the video's original audio, use music as sole track
    • --mode overlay — mix music ON TOP of original audio (both audible at constant volume)
    • --mode duck — overlay with sidechain compression (music auto-lowers when speech detected)
  3. Volume + fade controls:

    • --volume <multiplier> — 0.0-2.0 music volume (default 0.8)
    • --fade-in <seconds> — fade in duration (default 0)
    • --fade-out <seconds> — fade out duration (default 0.5)
    • --duck-amount <0-1> — duck mode only: how much music attenuates (default 0.6)
  4. Detect ffmpeg — print install instructions if missing.

  5. Run ffmpeg — encoded as one of three filter chains depending on mode.

  6. Save:

    • Default: <video-stem>-mixed<ext> next to source
    • Custom: --output <path>

MODES

Required

  • audio-mix-maker --video <path> --audio <path>

Mix mode

  • --mode replace|overlay|duck (default replace)

Volume

  • --volume <0.0-2.0> (default 0.8)
  • --fade-in <seconds> (default 0)
  • --fade-out <seconds> (default 0.5)
  • --duck-amount <0.0-1.0> (default 0.6, duck mode only)

Output

  • --output <path> (default: <video-stem>-mixed<ext>)

REFERENCES (load on demand)

FileWhen to load
references/modes.mdStep 2 — when to pick replace vs overlay vs duck, and how each affects the listener
references/troubleshoot.mdWhen ffmpeg fails, audio is clipped, ducking too aggressive / too subtle

EXAMPLES

See examples/before-after.md — 3 calibration runs: silent screen recording + background music (replace), voiceover-driven explainer + background music (duck), b-roll with original audio + music bed (overlay).

CONSTRAINTS

  • ffmpeg required. Install: brew install ffmpeg (Mac) / apt-get install -y ffmpeg (Debian). install.sh offers auto-install.

  • Video codec preserved. This skill uses -c:v copy — no re-encode of video frames. Output video quality identical to source.

  • Audio re-encoded. Output audio is AAC 192kbps (industry standard for video).

  • Music length usually exceeds video. Skill uses -shortest flag — output truncates at the shorter of (video duration, music duration). Music is faded out at the cut point if --fade-out > 0.

  • Duck mode requires speech in the video. If there's no speech / dialogue, duck mode behaves like overlay. For pure music-on-music: use overlay.

  • Volume max is ~2.0. Past 2× the source volume, distortion appears. For louder music: re-master the input audio file first.

  • Fade timing is from the video start. Fade-in starts at t=0; fade-out completes at the end of the shorter track. Custom mid-clip fades require DaVinci / Premiere / manual ffmpeg.

  • Output is MP4 by default. If source is MOV / WebM, output preserves the container.

  • Cost = $0. No API calls — local ffmpeg only.

  • No multitrack mixing. v1 mixes ONE music track onto video. For multi-track (music + SFX + voiceover): chain calls or use a DAW.

  • Sample rate / channel layout handled implicitly. ffmpeg resamples as needed. For exact control: use raw ffmpeg.

INVOCATION HINTS

When the user says any of:

  • "mix this music onto the video", "add background music"
  • "duck the music under the voiceover", "lower music when speech"
  • "replace audio with music"
  • "смешай музыку с видео", "фоновая музыка для видео"
  • "подложи трек под видосик"

If the user describes a podcast / explainer / interview workflow with voiceover, suggest --mode duck. If pure music video / silent footage, suggest --mode replace.

Defaults: --mode replace --volume 0.8 --fade-out 0.5. No --execute flag — the skill always executes (it's a local-only utility, no cost).

This skill is distinct from:

  • reel-builder — generates + stitches; this is final-mix only
  • subtitle-burner — captions, not audio
  • voiceover-maker — generates TTS; this mixes
  • music-prompt — generates music; this consumes the output of music-prompt
  • gif-maker — produces GIF, no audio

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.