
FFmpeg 9.1: what to re-test before you upgrade
FFmpeg 9.1 ships the rewritten AAC encoder deferred from 9.0, so `-c:a aac` output changes silently. What to re-measure, how to pin, why it's no security fix.
21 articles about audio.

FFmpeg 9.1 ships the rewritten AAC encoder deferred from 9.0, so `-c:a aac` output changes silently. What to re-measure, how to pin, why it's no security fix.

The silence between joined clips is an FFmpeg concat audio gap caused by AAC priming samples, not your cut point. How to prove it and the fixes that work.

Replace audio in video API or FFmpeg CLI: measure drift with ffprobe, pad or trim instead of atempo, and re-burn captions against the new TTS timings.

The FFmpeg 16kHz mono WAV command Whisper needs, plus the pipeline half: pulling audio from an MP4, size math, channel picks, and no local binary to install.

How to remove background noise from video with FFmpeg: afftdn tuning, anlmdn, and the arnndn .rnnn model file that breaks in Docker, plus filter order.

The Whisper 25MB limit is a byte cap, not a time cap. Re-encode first, split only when you must, and re-offset every timestamp so your SRT still lines up.

An AI dubbing workflow returns a translated track longer than the video. Measure both with ffprobe, fix the drift with atempo or apad, then re-mux cleanly.

FFmpeg audio ducking with sidechaincompress: the working filtergraph, the input order and format rules that break it, and the same mix as one API call.

Add background music to video with FFmpeg: amix levels, sidechaincompress ducking under a voiceover, looping, fades, and the same mix as one API call.

Normalize audio loudness across a video library with FFmpeg loudnorm two-pass, EBU R128 targets, and one API call. Real commands, LUFS targets, and pitfalls.