pkg.sopackage field notes

brew / approval gates / rank 18

Install ffmpeg with Homebrew

Play, record, convert, and stream select audio and video codecs. Version 8.1.2 via Homebrew; verified 2026-07-05.

agent safety

Agent safety answer

ffmpeg processes media files and can read or overwrite local artifacts.

Credential access

Can read input files, network URLs, and metadata that may be sensitive.

Remote mutation

Usually local, but supports network inputs and outputs.

Publish/artifact risk

Can create, overwrite, or stream media artifacts.

Recommended control

Gate network outputs, overwrites, and reads from sensitive paths.

Agent-use guidance

Allow local transforms in safe directories; require approval for overwrites, uploads, and sensitive inputs.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install ffmpeg

provider-native install command

overview

Package summary

Play, record, convert, and stream select audio and video codecs

Commands and aliases

  • aviocat
  • bisect-create
  • check_arm_indent.sh
  • clean-diff
  • compare-cvelists.sh
  • crypto_bench
  • cws2fws
  • dvd2concat
  • enc_recon_frame_test
  • enum_options
  • ffescape
  • ffeval
  • ffhash
  • ffmpeg
  • ffplay
  • ffprobe
  • fourcc2pixfmt
  • gen-rc
  • general_assembly.pl
  • graph2dot
  • indent_arm_assembly.pl
  • ismindex
  • loudnorm.rb
  • make_chlayout_test
  • merge-all-source-plugins
  • missing_codec_desc
  • murge
  • normalize.py
  • patcheck
  • pktdumper
  • plotframes
  • probetest

history

Project history and usage

FFmpeg is one of the canonical command-line multimedia packages: a source-first upstream project, a set of reusable codec/container/filter libraries, and the `ffmpeg`, `ffplay`, and `ffprobe` tools used everywhere from one-line conversions to production media pipelines.

Project history

The official project describes FFmpeg as a multimedia framework that can decode, encode, transcode, mux, demux, stream, filter, and play media across formats from old obscure inputs to cutting-edge codecs. Its architecture combines user-facing tools with libraries such as libavcodec, libavformat, libavfilter, libavdevice, libswscale, and libswresample.

FFmpeg's upstream culture is explicitly developer-driven and source-first. The download page says FFmpeg provides source code and points users to distributions and build providers for compiled packages. It also notes that development branch snapshots are often used because the project changes constantly and release branches cherry-pick selected fixes.

Adoption history

FFmpeg's adoption is visible in its official packaging guidance: the project links to Debian, Ubuntu, Fedora/RHEL, Windows, and macOS build sources rather than shipping one blessed binary for every platform. That mirrors how FFmpeg became a package-manager staple rather than only an application downloaded from upstream.

The release process is oriented toward distributors and system integrators. Upstream documents roughly six-month major releases with point releases for important fixes, release signatures, git tags, and branch-specific release notes.

How it is used

The core command-line pattern is `ffmpeg -i input output`: read one or more inputs, select streams, optionally filter or transcode them, and write one or more outputs. `ffprobe` is used to inspect streams and metadata, while `ffplay` provides a simple player based on FFmpeg libraries.

Package users care about the exact build because enabled libraries determine available encoders, decoders, filters, devices, and protocols. A stock distro build, Homebrew build, static Windows build, and custom source build can all behave differently while sharing the same upstream name.

Why package nerds care

FFmpeg is a package-manager stress test: it touches codec licensing, optional dependencies, hardware acceleration, network protocols, security updates for untrusted media parsing, and ABI-sensitive libraries consumed by other applications.

Its combination of command-line tools and shared libraries means it is both an end-user utility and infrastructure for other media software. That dual identity is why package maintainers track branch support, dependency choices, and security backports closely.

Timeline

  • 2011: FFmpeg release signing key date documented by upstream release verification instructions.
  • 2015: FFmpeg 2.8 branch cut from master on 2015-09-05, later maintained through 2.8.22.
  • 2024-2026: Upstream release pages show active major/minor release branches and point releases for distributors and integrators.
  • 2026: FFmpeg 8.1.2 listed as a stable source release on the official download page.

Related projects

  • ffmpeg-full is a Homebrew formula variant with a broader optional dependency set.
  • ffmpeg2theora is an older converter that used FFmpeg decoding to produce Ogg Theora/Vorbis outputs.
  • FFmate is a newer automation layer that runs FFmpeg behind a server/API workflow.

approval gates

Human review metadata for risky commands

The local approval-gate seed includes 4 rules for ffmpeg. Covered entrypoints: ffmpeg, ffplay, ffprobe. Severity labels: high, medium. Coverage: partial, reviewed 2026-05-21.

Example gated actions

  • Overwrite output files without an interactive prompt.
  • Send generated media to a network endpoint.
  • Capture from local audio, video, screen, or device inputs.
  • Expand allowed protocols for nested media inputs.

executables

Installed executables

CommandKindExposureNote
aviocatexecutableindexed executableDiscovered from the local executable index.
bisect-createexecutableindexed executableDiscovered from the local executable index.
check_arm_indent.shexecutableindexed executableDiscovered from the local executable index.
clean-diffexecutableindexed executableDiscovered from the local executable index.
compare-cvelists.shexecutableindexed executableDiscovered from the local executable index.
crypto_benchexecutableindexed executableDiscovered from the local executable index.
cws2fwsexecutableindexed executableDiscovered from the local executable index.
dvd2concatexecutableindexed executableDiscovered from the local executable index.
enc_recon_frame_testexecutableindexed executableDiscovered from the local executable index.
enum_optionsexecutableindexed executableDiscovered from the local executable index.
ffescapeexecutableindexed executableDiscovered from the local executable index.
ffevalexecutableindexed executableDiscovered from the local executable index.
ffhashexecutableindexed executableDiscovered from the local executable index.
ffmpegexecutableindexed executableDiscovered from the local executable index.
ffplayexecutableindexed executableDiscovered from the local executable index.
ffprobeexecutableindexed executableDiscovered from the local executable index.
fourcc2pixfmtexecutableindexed executableDiscovered from the local executable index.
gen-rcexecutableindexed executableDiscovered from the local executable index.
general_assembly.plexecutableindexed executableDiscovered from the local executable index.
graph2dotexecutableindexed executableDiscovered from the local executable index.
indent_arm_assembly.plexecutableindexed executableDiscovered from the local executable index.
ismindexexecutableindexed executableDiscovered from the local executable index.
loudnorm.rbexecutableindexed executableDiscovered from the local executable index.
make_chlayout_testexecutableindexed executableDiscovered from the local executable index.
merge-all-source-pluginsexecutableindexed executableDiscovered from the local executable index.
missing_codec_descexecutableindexed executableDiscovered from the local executable index.
murgeexecutableindexed executableDiscovered from the local executable index.
normalize.pyexecutableindexed executableDiscovered from the local executable index.
patcheckexecutableindexed executableDiscovered from the local executable index.
pktdumperexecutableindexed executableDiscovered from the local executable index.
plotframesexecutableindexed executableDiscovered from the local executable index.
probetestexecutableindexed executableDiscovered from the local executable index.
qt-faststartexecutableindexed executableDiscovered from the local executable index.
scale_slice_testexecutableindexed executableDiscovered from the local executable index.
seek_printexecutableindexed executableDiscovered from the local executable index.
sidxindexexecutableindexed executableDiscovered from the local executable index.
source2cexecutableindexed executableDiscovered from the local executable index.
target_dec_fate.shexecutableindexed executableDiscovered from the local executable index.
trasherexecutableindexed executableDiscovered from the local executable index.
uncoded_frameexecutableindexed executableDiscovered from the local executable index.
unwrap-diffexecutableindexed executableDiscovered from the local executable index.
venc_data_dumpexecutableindexed executableDiscovered from the local executable index.
zmqshell.pyexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version8.1.2
manager updated2026-07-05
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:ffmpeg
Version8.1.2
Package managerHomebrew
Homepagehttps://ffmpeg.org/
Repositoryhttps://github.com/FFmpeg/FFmpeg
Last updated2026-07-05T23:07:18Z
Pulseupdated
Bottlenot recorded
Servicenone declared

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • approval-gate seed metadata
  • curated agent safety answer
  • curated package history
  • pkgdb category and tag curation