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

What FFmpeg Is and Why Everyone Uses It

~10 min · intro, history, ecosystem

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

The Swiss Army knife of multimedia

FFmpeg is the open-source command-line toolkit that decodes, encodes, transcodes, muxes, demuxes, streams, filters, and plays almost any media format ever shipped. It's not flashy. It's a CLI you invoke with a long string of flags. But every piece of software that touches video on a serious level either uses FFmpeg directly or one of its libraries — libavcodec for codec work, libavformat for container parsing, libavfilter for the filtergraph engine.

YouTube's transcoding farm, VLC, OBS Studio, HandBrake, Plex, Kdenlive, the Chromium media stack, every major podcast app on phones — they all ride FFmpeg. When you type a single ffmpeg -i in.mp4 out.webm into your terminal, you're using the same engine that processes billions of videos a day.

Where it is right now

The current stable release is FFmpeg 8.1 "Hoare", shipped March 16, 2026. The 8.x line brought native xHE-AAC decoding, Vulkan-compute ProRes encode/decode, D3D12 H.264/AV1 encoding, and EXIF/LCEVC metadata parsing. Before that, 8.0 "Huffman" (August 2025) added native APV and ProRes RAW decoders, Vulkan AV1 encoding, and big VVC improvements. The release codenames march through computer-science luminaries — Hoare, Huffman, Dijkstra, Turing — which is your warning that this project takes itself seriously.

Why you'll use it

If your work touches video at all — a YouTube channel, a podcast pipeline, a Kaggle dataset of clips, a screen-recording archive, AI-generated video post-processing — FFmpeg replaces a stack of expensive GUIs with a single command line you can pipe, schedule, and script. Once the patterns click, you stop opening Premiere for one-shot conversions. You stop paying for Cloud Convert. You write a four-line bash function and call it mp4-to-h265.

Code

Sanity-check your install·bash
# Print the version + which encoders/decoders were compiled in
ffmpeg -version

# List every codec FFmpeg knows about (huge — pipe to less)
ffmpeg -codecs | less

# List every container format
ffmpeg -formats | less

# List every filter (filtergraph land — Track 5)
ffmpeg -filters | less
Confirm hardware acceleration on macOS·bash
# On Apple Silicon: VideoToolbox (hardware H.264/HEVC) should appear
ffmpeg -hide_banner -hwaccels

# Expect something like:
# Hardware acceleration methods:
# videotoolbox
#
# If the list is empty, your build is missing hardware support.

External links

Exercise

Run ffmpeg -version and ffmpeg -hwaccels on your machine. Note (1) the major version number, (2) whether VideoToolbox / NVENC / QuickSync / VAAPI appears in the hwaccels list, and (3) which video encoders end with 'videotoolbox' (run ffmpeg -encoders | grep videotoolbox on macOS, or nvenc on NVIDIA). Save the three answers — Track 8 will reference them.

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.