# Install gstreamer with Homebrew, apk, chocolatey, pacman, winget, zypper

Development framework for multimedia applications. Version 1.28.4 via Homebrew; verified 2026-06-22.

## Install

```sh
sudo av install brew:gstreamer
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install gstreamer
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add gstreamer
```

  Evidence: Alpine Linux edge package indexes: gstreamer from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- pacman (92%):

```sh
sudo pacman -S gstreamer
```

  Evidence: Arch Linux sync databases: gstreamer from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install gstreamer
```

  Evidence: openSUSE Tumbleweed package metadata: gstreamer from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Chocolatey (92%):

```sh
choco install gstreamer
```

  Evidence: Chocolatey community package catalog: gstreamer from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','gpg4win-vanilla'

- winget (92%):

```sh
winget install --id gstreamerproject.gstreamer -e
```

  Evidence: Windows Package Manager source index: gstreamerproject.gstreamer from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:gstreamer
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/gstreamer>
- **Version:** 1.28.4
- **Source summary:** Development framework for multimedia applications
- **Homepage:** <https://gstreamer.freedesktop.org/>
- **Repository:** <https://gitlab.freedesktop.org/gstreamer/gstreamer>
- **Upstream docs:** <https://gstreamer.freedesktop.org/documentation>
- **License:** LGPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
- **Source archive:** <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/archive/1.28.4/gstreamer-1.28.4.tar.bz2>
- **Last updated:** 2026-06-22T14:03:40-07:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- ges-launch-1.0 (cli)
- gst-device-monitor-1.0 (cli)
- gst-discoverer-1.0 (cli)
- gst-dots-viewer (cli)
- gst-inspect-1.0 (cli)
- gst-launch-1.0 (cli)
- gst-play-1.0 (cli)
- gst-stats-1.0 (cli)
- gst-transcoder-1.0 (cli)
- gst-typefind-1.0 (cli)
- gst-validate-1.0 (cli)
- gst-validate-images-check-1.0 (cli)
- gst-validate-launcher (cli)
- gst-validate-media-check-1.0 (cli)
- gst-validate-rtsp-server-1.0 (cli)
- gst-validate-transcoding-1.0 (cli)
- gst-webrtc-signalling-server (cli)
- ges-launch-1.0 (alias)
- gst-device-monitor-1.0 (alias)
- gst-discoverer-1.0 (alias)
- gst-dots-viewer (alias)
- gst-inspect-1.0 (alias)
- gst-launch-1.0 (alias)
- gst-play-1.0 (alias)
- gst-stats-1.0 (alias)
- gst-transcoder-1.0 (alias)
- gst-typefind-1.0 (alias)
- gst-validate-1.0 (alias)
- gst-validate-images-check-1.0 (alias)
- gst-validate-launcher (alias)
- gst-validate-media-check-1.0 (alias)
- gst-validate-rtsp-server-1.0 (alias)
- gst-validate-transcoding-1.0 (alias)
- gst-webrtc-signalling-server (alias)

## Dependencies

- aom
- cairo
- dav1d
- faac
- faad2
- fdk-aac
- ffmpeg
- flac
- gdk-pixbuf
- gettext
- glib
- graphene
- gtk+3
- gtk4
- harfbuzz
- imath
- jpeg-turbo
- json-glib
- lame
- libass
- libnice
- libogg
- libpng
- librsvg
- libshout
- libsndfile
- libsodium
- libsoup
- libusrsctp
- libvmaf
- libvorbis
- libvpx
- libx11
- libxcb
- libxext
- libxfixes
- libxi
- libxtst
- little-cms2
- mpg123
- musepack
- nettle
- opencore-amr
- openexr
- openjpeg
- openssl@3
- opus
- orc
- pango
- pygobject3
- python@3.14
- rtmpdump
- speex
- srt
- srtp
- svt-av1
- taglib
- theora
- webp
- x264
- x265

## Build dependencies

- bison
- cargo-c
- cmake
- gettext
- gobject-introspection
- meson
- ninja
- pkgconf
- rust

## Uses from macOS

- bzip2
- curl
- libxml2

## Install behavior

- Post-install hook: not defined
- Caveats: All gst-* GStreamer plugins are now bundled in this formula. For GStreamer to find your own plugins, add their paths to `GST_PLUGIN_PATH`. For example, if you have plugins in `~/.local/lib/gstreamer-1.0`: export GST_PLUGIN_PATH="~/.local/lib/gstreamer-1.0" Do not install plugins into GStreamer's prefix. They will be deleted by `brew upgrade`.
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.28.4
- Package-manager updated: 2026-06-22
- Local data: ok
- Upstream repository: https://gstreamer.freedesktop.org/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

GStreamer is a modular multimedia framework for building audio, video, streaming, playback, editing, capture, and transcoding applications. In package-manager culture it is both a developer framework and a runtime substrate: installing it often means installing command-line inspection tools, shared libraries, and a graph of plugin modules that determine what media formats a machine can handle.

The Homebrew gstreamer package represents the core project and command-line tools around the 1.x GStreamer API family. Its importance is larger than one formula because many desktop, creative, browser-adjacent, embedded, and language-binding packages depend on the same plugin and registry model.

### Project history

The GStreamer project announced version 0.1.0 on 2001-01-10. Its own homepage describes the design as a library for constructing graphs of media-handling components, with applications ranging from simple Ogg/Vorbis playback through streaming to nonlinear editing and mixing.

A major packaging and API milestone came with GStreamer 0.10.0 on 2005-12-05, when the project announced a stable series split across core, base, good, ugly, bad, FFmpeg, and Python binding modules. That split made explicit the distribution distinction between core APIs, well-supported base plugins, good-quality plugins, plugins with legal or patent distribution concerns, and plugins needing more testing or documentation.

The 1.0 release on 2012-09-24 created a new API- and ABI-stable 1.x series. The announcement stated that 1.x was not API/ABI compatible with 0.10.x but could be installed in parallel, a detail that mattered heavily to distributions and package maintainers during the long transition.

### Adoption history

GStreamer adoption spread through both applications and platform stacks. The official applications page lists media players, transcoders, streaming servers, XMPP/VoIP clients, and GNOME/GTK applications using it, including examples such as Banshee, Clementine, Empathy, Flumotion, Gajim, PiTiVi, Rhythmbox, and Totem.

The 1.4.0 stable announcement in 2014 included binaries for Android, iOS, Mac OS X, and Windows alongside the source releases, reflecting GStreamer's role beyond Linux distributions. Its documentation also covers deployment, Windows installation, plugin writing, application development, and language bindings.

### How it is used

Developers use GStreamer by constructing pipelines of elements linked by pads and buffers. The command-line tools are central to everyday use: gst-launch-1.0 builds and runs simple pipelines, gst-inspect-1.0 lists plugins and element capabilities, and gst-discoverer-1.0 inspects media structure.

For package users, the installed behavior is determined by which plugin sets are present. Base plugins provide foundational elements; good plugins are broadly supported; ugly plugins may raise distribution issues; bad plugins are a staging area for code that needs more review, documentation, tests, maintainership, or usage. This is why package manifests and optional dependencies are unusually visible in GStreamer troubleshooting.

### Why package nerds care

GStreamer is a classic package-nerd dependency because it turns media capability into an install graph. A missing decoder may be solved by a plugin package rather than by changing the application, and distributions make policy choices about patent-encumbered or legally sensitive plugins.

The 0.10-to-1.x transition is also packaging history: parallel installability allowed applications to migrate without forcing every dependency to cross the API boundary at once. The 1.x command names with the -1.0 suffix preserve that packaging lesson in daily shell usage.

### Timeline

- 2001: GStreamer 0.1.0 was announced.
- 2005: GStreamer 0.10.0 stable series was announced with core, plugin, FFmpeg, and Python modules.
- 2012: GStreamer 1.0 introduced the API/ABI-stable 1.x series and allowed parallel installation with 0.10.x.
- 2014: GStreamer 1.4.0 announcement included Android, iOS, Mac OS X, and Windows binaries.
- 2014: The 1.2.0 announcement covered gst-python, GNonLin, and GStreamer Editing Services in the 1.x family.

### Related projects

- gst-plugins-base, gst-plugins-good, gst-plugins-ugly, gst-plugins-bad, gst-libav, gst-python, GNonLin, GStreamer Editing Services, and RTSP server modules are part of the ecosystem package managers expose around the core.
- GTK and GNOME applications are common downstream users, while language bindings such as Rust and Python bindings make the same multimedia framework available outside C.

### Sources

- <https://gstreamer.freedesktop.org/>
- <https://gstreamer.freedesktop.org/apps/>
- <https://gstreamer.freedesktop.org/documentation/>
- <https://gstreamer.freedesktop.org/documentation/tools/gst-inspect.html>
- <https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html>
- <https://gstreamer.freedesktop.org/documentation/tutorials/basic/gstreamer-tools.html>
- <https://gstreamer.freedesktop.org/modules/>
- <https://gstreamer.freedesktop.org/news/>


## Security Notes

No matching local secret-handling manifest was found for gstreamer. Nucleus package metadata is still published here so future coverage has a stable package URL.


## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** gstreamer
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- apk - gstreamer - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | GStreamer streaming media framework | https://gstreamer.freedesktop.org
- apk - gstreamer-bash-completion - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Bash completions for gstreamer | https://gstreamer.freedesktop.org
- apk - gstreamer-dbg - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | GStreamer streaming media framework (debug symbols) | https://gstreamer.freedesktop.org
- apk - gstreamer-dev - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | GStreamer streaming media framework (development files) | https://gstreamer.freedesktop.org
- apk - gstreamer-doc - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | GStreamer streaming media framework (documentation) | https://gstreamer.freedesktop.org
- apk - gstreamer-lang - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-lang from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Languages for package gstreamer | https://gstreamer.freedesktop.org
- apk - gstreamer-ptp-helper - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-ptp-helper from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | GStreamer streaming media framework (ptp helper) | https://gstreamer.freedesktop.org
- apk - gstreamer-tools - 1.28.3-r0: normalized package name match | Alpine Linux edge package indexes: gstreamer-tools from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Tools for GStreamer streaming media framework | https://gstreamer.freedesktop.org
- pacman - gstreamer - 1.28.3-1: normalized package name match | Arch Linux sync databases: gstreamer from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Multimedia graph framework - core | https://gstreamer.freedesktop.org/
- zypper - gstreamer - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: gstreamer from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Streaming-Media Framework Runtime | https://gstreamer.freedesktop.org
- zypper - gstreamer-32bit - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: gstreamer-32bit from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Streaming-Media Framework Runtime | https://gstreamer.freedesktop.org
- zypper - gstreamer-devel - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: gstreamer-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Include Files and Libraries mandatory for Development | https://gstreamer.freedesktop.org
- zypper - gstreamer-devel-32bit - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: gstreamer-devel-32bit from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Include Files and Libraries mandatory for Development | https://gstreamer.freedesktop.org
- zypper - gstreamer-lang - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: gstreamer-lang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Translations for package gstreamer | https://gstreamer.freedesktop.org
- zypper - gstreamer-utils - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: gstreamer-utils from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Streaming-Media Framework Runtime | https://gstreamer.freedesktop.org
- zypper - libgstreamer-1_0-0 - 1.28.3-1.1: normalized package name match | openSUSE Tumbleweed package metadata: libgstreamer-1_0-0 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Streaming-Media Framework Runtime | https://gstreamer.freedesktop.org


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Media and graphics packages](https://www.automicvault.com/pkg/media-graphics-tools/) - Matched media, image, audio, video, or graphics metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [aom](https://www.automicvault.com/pkg/brew/aom/) - Runtime dependency declared by Homebrew.
- [cairo](https://www.automicvault.com/pkg/brew/cairo/) - Runtime dependency declared by Homebrew.
- [dav1d](https://www.automicvault.com/pkg/brew/dav1d/) - Runtime dependency declared by Homebrew.
- [faac](https://www.automicvault.com/pkg/brew/faac/) - Runtime dependency declared by Homebrew.
- [faad2](https://www.automicvault.com/pkg/brew/faad2/) - Runtime dependency declared by Homebrew.
- [fdk-aac](https://www.automicvault.com/pkg/brew/fdk-aac/) - Runtime dependency declared by Homebrew.
- [ffmpeg](https://www.automicvault.com/pkg/brew/ffmpeg/) - Runtime dependency declared by Homebrew.
- [flac](https://www.automicvault.com/pkg/brew/flac/) - Runtime dependency declared by Homebrew.
- [bison](https://www.automicvault.com/pkg/brew/bison/) - Build dependency declared by Homebrew.
- [cargo-c](https://www.automicvault.com/pkg/brew/cargo-c/) - Build dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [gettext](https://www.automicvault.com/pkg/brew/gettext/) - Build dependency declared by Homebrew.
- [aravis](https://www.automicvault.com/pkg/brew/aravis/) - Popular package that depends on this formula.
- [efl](https://www.automicvault.com/pkg/brew/efl/) - Popular package that depends on this formula.
- [pdfpc](https://www.automicvault.com/pkg/brew/pdfpc/) - Popular package that depends on this formula.
- [pianod](https://www.automicvault.com/pkg/brew/pianod/) - Popular package that depends on this formula.
- [pipewire-gstreamer](https://www.automicvault.com/pkg/brew/pipewire-gstreamer/) - Popular package that depends on this formula.
- [pympress](https://www.automicvault.com/pkg/brew/pympress/) - Popular package that depends on this formula.
- [spice-gtk](https://www.automicvault.com/pkg/brew/spice-gtk/) - Popular package that depends on this formula.
- [pipewire](https://www.automicvault.com/pkg/brew/pipewire/) - Shares av.db curated category or tags: audio, cli, media, multimedia, multimedia-framework.
- [mlt](https://www.automicvault.com/pkg/brew/mlt/) - Shares av.db curated category or tags: audio, cli, framework, media, multimedia.
- [ffmpeg-full](https://www.automicvault.com/pkg/brew/ffmpeg-full/) - Shares av.db curated category or tags: audio, cli, media, streaming, video.
- [tinyice](https://www.automicvault.com/pkg/brew/tinyice/) - Shares av.db curated category or tags: audio, cli, media, streaming, video.

## Combined YAML source

View the package source record on GitHub. [combined/gstreamer.yml](https://github.com/automic-vault/db/blob/main/combined/gstreamer.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
