How to Install FFmpeg on Windows 10 & 11 (Step-by-Step, 2026)

Image of a windows key

FFmpeg has no official Windows installer — no .msi, no “Download for Windows” button that drops an .exe into your Start menu. Instead you download a pre-built ZIP from a trusted third-party builder, extract it, and tell Windows where to find it by adding one folder to your PATH. That last step is where most people get stuck: the download works, but typing ffmpeg in a new terminal returns “‘ffmpeg’ is not recognized as an internal or external command.” This guide walks through the whole process on Windows 10 and 11 — the right build to download, exactly which folder goes on PATH, how to verify it, the errors that trip people up, and a few commands to try once it works.

Quick answer: FFmpeg has no Windows installer. (1) Download a build — easiest is winget install -e --id Gyan.FFmpeg, or grab a ZIP from gyan.dev (release-full) or BtbN (ffmpeg-master-latest-win64-gpl.zip). (2) Extract it, e.g. to C:\ffmpeg. (3) Add the inner bin folder (the one holding ffmpeg.exe) to your PATH environment variable. (4) Open a new terminal and run ffmpeg -version. The current stable release is the 8.1 series (“Hoare”); always check the build page for the exact latest number.

Jump to a section

Which FFmpeg build should I download?

The official project at ffmpeg.org/download.html does not host Windows binaries itself. Under Windows EXE Files it points to two trusted community builders, and both are good choices:

SourceWhat you getFormatBest for
gyan.devrelease-essentials, release-full, release-full-shared, git-full.7z and .zipMost users — pick release-full
BtbNffmpeg-master-latest-win64-gpl.zip (static) plus gpl-shared.zipDaily/bleeding-edge master builds

A few terms worth knowing before you click:

  • essentials vs. full (gyan.dev): essentials covers everyday encoding (H.264, H.265, AAC, MP3, etc.); full adds extra libraries you may never use but won’t hurt to have. The full build is the safe default.
  • static vs. shared: a static build is self-contained — ffmpeg.exe works on its own. A shared build splits code into separate .dll files in the same folder, so you must keep them together. For a command-line install, prefer a static build (gyan’s regular release builds and BtbN’s plain ...win64-gpl.zip are static).
  • release vs. git/master: release builds track a stable, versioned FFmpeg; git/master (BtbN’s master-latest) rebuilds daily from the development branch. Unless you need a brand-new feature, use a release build.

The current stable line is the FFmpeg 8.1 series (codename “Hoare”), cut from master on 2026-03-08. As of mid-June 2026 the source release is 8.1.2 and the gyan.dev pre-built was at 8.1.1 — pre-built binaries lag the source release by a few days, which is normal. FFmpeg version numbers move fast, so treat the exact number as “whatever the build page currently shows” rather than memorizing one.

Option A: install with winget (fastest)

If you’re on Windows 10 (version 1809 or newer) or Windows 11, the Windows Package Manager (winget, built into modern Windows) handles the download and most of the setup in one command. Open PowerShell or Command Prompt and run:

This pulls the gyan.dev full build. The -e flag forces an exact ID match so you get the right package.

Two caveats:

  1. After install, close and reopen your terminal so it picks up the new PATH. If ffmpeg still isn’t recognized, sign out and back in (or reboot).
  2. The winget package has historically had occasional PATH-setup hiccups (tracked in the winget-pkgs issue tracker). If ffmpeg -version doesn’t work after reopening the terminal, fall back to the manual method below and set PATH yourself — it’s the more reliable path.

To remove it later: winget uninstall Gyan.FFmpeg.

Option B: manual ZIP install, step by step

This is the universal method — it works on any Windows version and gives you full control over where FFmpeg lives.

Step 1 — Download a build. Go to gyan.dev/ffmpeg/builds and download ffmpeg-release-full.7z (or the .zip if you don’t have a 7-Zip-capable extractor). The .7z is much smaller; the .zip is larger but opens with Windows’ built-in extractor.

Step 2 — Extract it. If you downloaded a .7z, install 7-Zip first, then right-click the file and choose 7-Zip → Extract to "ffmpeg-…". For a .zip, right-click and choose Extract All. You’ll get a folder named something like ffmpeg-8.1.1-full_build.

Step 3 — Move it somewhere permanent. Move the extracted folder to a stable location and ideally rename it for simplicity, for example C:\ffmpeg. Don’t leave it in Downloads — if you ever clean that folder out, your PATH entry breaks. Inside you’ll find a bin subfolder containing the three executables:

The folder you need to remember is the one holding ffmpeg.exe — in this example, C:\ffmpeg\bin.

Adding FFmpeg to your PATH (the step everyone misses)

PATH is the list of folders Windows searches when you type a command. Adding C:\ffmpeg\bin to it lets you run ffmpeg from any folder, in any terminal.

  1. Press Win + S, type environment, and open Edit the system environment variables. (Equivalent route: Win + X → System → Advanced system settings.)
  2. In the System Properties window, click Environment Variables… near the bottom.
  3. Under System variables (for all users) or User variables (just you — no admin rights needed), select Path and click Edit….
  4. Click New, paste the full path to the bin folder — C:\ffmpeg\bin — and click OK on every window to save.

A couple of things that catch people:

  • Add the bin folder, not the parent folder. Pointing PATH at C:\ffmpeg (without \bin) is the single most common mistake — the .exe files live one level down.
  • Open a new terminal afterward. Already-open windows keep their old PATH. Changes only apply to terminals opened after you save. If it still doesn’t work, sign out and back in, or reboot.

System vs. User variables: a User PATH entry only needs your own account and no admin rights; a System entry applies to every user but requires administrator privileges. Either works for one person on one PC.

Verify the installation

Open a new Command Prompt or PowerShell and run:

A correct install prints something like ffmpeg version 8.1.1 ... built with gcc ... followed by a list of compiled-in libraries. You can also confirm the companion tools:

If you see version banners, FFmpeg is installed and on your PATH. You’re done.

Common errors and fixes

SymptomCauseFix
'ffmpeg' is not recognized as an internal or external commandbin folder isn’t on PATH, or the terminal predates your PATH changeRe-check that the exact ...\bin path is in PATH; open a brand-new terminal; sign out/in if needed
Worked yesterday, broken todayYou moved or deleted the FFmpeg folder it points toMove it back, or update the PATH entry to the new location
PATH points at C:\ffmpeg and still failsYou added the parent folder, not binEdit the entry to end in \bin
Some DLL is missing / app won’t startYou downloaded a shared build and separated the .dll filesKeep all files together, or re-download a static build
Older Windows: api-ms-win-crt-* or UCRT errorBtbN builds need the Universal C RuntimeInstall the latest Microsoft Visual C++ runtime / UCRT update, or use a gyan.dev build
winget installed it but ffmpeg isn’t foundTerminal hasn’t reloaded PATH, or the winget PATH hiccupReopen the terminal / reboot; if it persists, do the manual install

A few commands to try first

Once ffmpeg -version works, here are practical one-liners. Run them from the folder that holds your input file, or use full paths.

Convert a video to MP4 (H.264 + AAC):

Compress a video by lowering quality (CRF — higher number = smaller file):

CRF 18–28 is the useful range for H.264; 23 is the default, and ~28 noticeably shrinks the file with modest quality loss.

Extract audio from a video to MP3:

Convert any audio file to MP3:

Trim a clip (start at 30s, take 10s) without re-encoding:

Inspect a file’s streams, codecs, and duration:

Prefer not to install anything?

FFmpeg is the right tool when you need scripting, batch jobs, or precise control. But if you only want to do the two most common things people install FFmpeg for — shrink a video or compress some audio — you can skip the install entirely. xconvert runs the conversion server-side (the heavy lifting happens on our servers, not on your machine), so there’s nothing to download or configure:

Uploaded files are processed and then automatically removed after a few hours. It’s the no-setup option for one-off jobs; for repeatable pipelines, FFmpeg on PATH is still the way to go.

FAQ

Does FFmpeg have an official Windows installer?

No. The FFmpeg project doesn’t ship a Windows .msi or .exe installer. You either use winget (which downloads a community build for you) or manually download and extract a ZIP from gyan.dev or BtbN, then add it to PATH. Both builders are the ones linked from the official ffmpeg.org download page.

Why does Windows say “‘ffmpeg’ is not recognized”?

Almost always one of two things: the bin folder isn’t on your PATH, or you’re using a terminal that was open before you edited PATH. Confirm the exact ...\bin folder (the one containing ffmpeg.exe) is in your PATH, then open a brand-new Command Prompt or PowerShell window. If it still fails, sign out and back in, or reboot.

Should I download the “essentials” or “full” build from gyan.dev?

For most people, full is the safe default — it includes every common library plus extras. Essentials is a smaller download that still covers everyday H.264/H.265/AAC/MP3 work. Either is fine; you won’t notice the difference unless you need an unusual codec.

What’s the difference between gyan.dev and BtbN builds?

Both are reputable and linked from ffmpeg.org. gyan.dev offers clearly versioned release builds plus a git build, in .7z and .zip. BtbN auto-builds from master daily and is handy if you need the very latest development code; its plain ffmpeg-master-latest-win64-gpl.zip is a static build, and it targets Windows 7+ provided the UCRT is installed. For stability, prefer a gyan.dev release build.

What’s the latest FFmpeg version?

The current stable line is the 8.1 series (“Hoare”), cut from master on 2026-03-08; as of mid-June 2026 the source release is 8.1.2. Pre-built Windows binaries trail the source release by a few days. Because the number changes often, check the gyan.dev build page or ffmpeg.org for the exact current version rather than relying on a number in any guide.

Do I have to put FFmpeg in C:\ffmpeg?

No — that’s just a tidy, easy-to-type example. FFmpeg can live anywhere, as long as you (a) keep it in a permanent location (not Downloads) and (b) add the inner bin folder to PATH. If you ever move it, update the PATH entry to match.

Can I run FFmpeg without admin rights?

Yes. Extract it to a folder your account can write to (e.g. inside your user profile) and add the bin folder to your User PATH variable instead of the System one. User variables don’t require administrator privileges.

Sources

Last verified 2026-06-17.

By admin