C.W.K.
Stream
Lesson 03 of 10 · published

Installing FFmpeg the Sane Way

~8 min · install, homebrew, macos, linux

Level 0Viewer
0 XP0/73 lessons0/15 achievements
0/100 XP to next level100 XP to go0% complete

One package manager, one command

For 99% of you, installing FFmpeg is a one-liner through your OS's package manager. The only people who need to compile from source are those chasing a specific patent-encumbered codec, an unreleased filter from git master, or an enterprise-locked CI image. We'll cover the sane path first.

macOS — Homebrew

On Apple Silicon and Intel Macs, Homebrew's ffmpeg formula bundles the most useful libraries (libx264, libx265, libsvtav1, libvpx, libdav1d, libvmaf, opus, lame, openssl, sdl2) and enables VideoToolbox/AudioToolbox for hardware encode/decode. That's what you want.

Linux — distro package, then upgrade if needed

Ubuntu/Debian: sudo apt install ffmpeg. Arch/Manjaro: sudo pacman -S ffmpeg. Fedora: sudo dnf install ffmpeg-free (or the RPM Fusion ffmpeg for full codecs). The downside: distro packages are often a major version behind. If you need 8.x today on a Ubuntu 24.04 box, use the official static builds from johnvansickle.com or the jellyfin-ffmpeg packages.

Windows

Use winget install Gyan.FFmpeg or grab a static build from gyan.dev. Avoid hand-installing into C:\\ and editing PATH unless you enjoy that.

Code

macOS install + verify·bash
# Install
brew install ffmpeg

# Verify the version and the configuration line — confirms which
# libraries got compiled in
ffmpeg -version | head -3

# Hardware acceleration list — should include videotoolbox
ffmpeg -hide_banner -hwaccels
Upgrade later·bash
# Update Homebrew + upgrade the formula
brew update && brew upgrade ffmpeg

# Pin a known-good version if a release breaks something for you
brew pin ffmpeg

# Unpin when ready to upgrade again
brew unpin ffmpeg

External links

Exercise

Install (or update) FFmpeg via your platform's package manager. Run ffmpeg -version | head -3 and confirm you're on 8.x. If you're on macOS, run ffmpeg -encoders | grep videotoolbox and verify both h264_videotoolbox and hevc_videotoolbox appear.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.