Installation for Macintosh users
Please note that we discourage the use of macOS for professional purposes.
First install the FFmpeg package using either Homebrew or a binary release build. Then test that the software is working properly. (The compilation from the source code is out of the scope of this tutorial.)
The Terminal is usually found in the /Applications/Utilities folder.
Table of Contents
Installing the software with Homebrew
- Installing Homebrew
-
Install Homebrew, a package manger for macOS and Linux on both AArch64 (ARM64) and x86_64. You may think of it as an “app store” for open-source software. It works fine on macOS 14 and later versions; from macOS 10.15 to 13 it is unsupported, but may work; on macOS 10.14 and previous versions Homebrew will not run at all.
You can install Homebrew by pasting the following command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
When it completes, follow the “Next steps:” instructions, which on AArch64 (ARM) should be:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> $HOME/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
After successful installation you may restart the Terminal and execute:
brew doctor
Detailed instructions for Homebrew are posted at:
https://docs.brew.sh/
- Installing FFmpeg
Once Homebrew is installed, for our purpose, we recommend to install the most recent stable FFmpeg release with the following command, which works on both modern x86-64 (AMD64) and AArch64 (ARM64) architectures:1
brew install --with-openjpeg --with-rubberband --with-tesseract avpres/formulae/ffmpeg
As, sadly, the “America alone” ideology becomes predominant in the open-source community as well, if you need the support of more languages than just US English, then you have to run an additional command:
brew install tesseract-lang
- Upgrading FFmpeg with Homebrew
-
To update Homebrew and upgrade FFmpeg to the most recent stable release, use the following two commands:
brew update
brew upgrade avpres/formulae/ffmpeg
Installing the software from a release build
The following binaries are provided by Martin Riedl.
- For Apple Silicon or AArch64 (ARM64) architectures
-
- For Intel or x86-64 (AMD64) architectures 2
If not done automatically, unzip the three downloaded archives (usually they will be in the Downloads folder).
To install the software to the correct place, paste the following command at a Terminal prompt:3
sudo mv -iv ~/Downloads/ff{mpeg,probe,play} /usr/local/bin
Testing your installation
Once you followed the installation above, you should have the commands ffmpeg, ffplay and ffprobe installed.
-
Test ffmpeg by pasting into the Terminal the line:
ffmpeg -f lavfi -i mandelbrot -f lavfi -i "sine=frequency=1000" -t 5 mandelbrot.mkv
This should produce on your working directory a file of the Mandelbrot pattern and a 1 kHz sound.4
-
Test ffplay by pasting into the Terminal the line:
ffplay mandelbrot.mkv
This should play the Mandelbrot file.
-
Test ffprobe by pasting into the Terminal the line:
ffprobe -show_format -show_streams -print_format json mandelbrot.mkv
This should display the Mandelbrot file’s technical metadata.
Notes
- 1
-
The recommended parameters are:
- --with-openjpeg
- Enables JPEG 2000 encoding and decoding with the OpenJPEG library.
- --with-rubberband
- Enables the Rubberband audio filter, which allows time-stretching and pitch-shifting.
- --with-tesseract
- Enables the Tesseract video filter for optical character recognition, e.g. for extracting intertitles or subtitles from a digitised print.
To see the available options paste into the Terminal the line:
brew options avpres/formulae/ffmpeg
- 2
- The following binaries for old and recent Intel architectures are provided by Helmut K. C. Tessarek:
- 3
-
It may be necessary to run the following three commands instead:
sudo mkdir -p /usr/local/bin
sudo mv -iv ~/Downloads/ff{mpeg,probe,play} /usr/local/bin
sudo chmod +x /usr/local/bin/ff{mpeg,probe,play}
- 4
-
To show the current working directory, paste the following command at a Terminal prompt:
pwd
2026-06-06
|