From 7721030c15c9692bae262e2d5a4e696a743ec96e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Fri, 14 Oct 2022 14:07:42 +0300 Subject: [PATCH] Add some more information about setup on Windows/macOS to the README.md --- README.md | 73 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 781db2db5..e59c719b4 100644 --- a/README.md +++ b/README.md @@ -66,6 +66,26 @@ You can install GStreamer and the plugins via [Homebrew](https://brew.sh/) or by installing the [binaries](https://gstreamer.freedesktop.org/data/pkg/osx/) provided by the GStreamer project. +We recommend using the official GStreamer binaries over Homebrew, especially +as GStreamer in Homebrew is [currently broken](https://github.com/orgs/Homebrew/discussions/3740#discussioncomment-3804964). + +#### GStreamer Binaries + +You need to download the *two* `.pkg` files from the GStreamer website and +install them, e.g. `gstreamer-1.0-1.20.4-universal.pkg` and +`gstreamer-1.0-devel-1.20.4-universal.pkg`. + +After installation, you also need to set the `PATH` environment variable as +follows + +```console +$ export PATH="/Library/Frameworks/GStreamer.framework/Versions/1.0/bin${PATH:+:$PATH}" +``` + +Also note that the `pkg-config` from GStreamer should be the first one in +the `PATH` as other versions have all kinds of quirks that will cause +problems. + #### Homebrew Homebrew only installs various plugins if explicitly enabled, so some extra @@ -81,19 +101,6 @@ $ brew install gstreamer gst-plugins-base gst-plugins-good \ Make sure the version of these libraries is >= 1.14. -#### GStreamer Binaries - -You need to download the *two* `.pkg` files from the GStreamer website and -install them, e.g. `gstreamer-1.0-1.14.0-x86_64.pkg` and -`gstreamer-1.0-devel-1.14.0-x86_64.pkg`. - -After installation, you also need to install `pkg-config` (e.g. via Homebrew) -and set the `PKG_CONFIG_PATH` environment variable - -```console -$ export PKG_CONFIG_PATH="/Library/Frameworks/GStreamer.framework/Versions/1.0/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}" -``` - ### Windows @@ -103,6 +110,32 @@ with `pacman` or by installing the [binaries](https://gstreamer.freedesktop.org/data/pkg/windows/) provided by the GStreamer project. +We recommend using the official GStreamer binaries over MSYS2. + +#### GStreamer Binaries + +You need to download the *two* `.msi` files for your platform from the +GStreamer website and install them, e.g. `gstreamer-1.0-x86_64-1.20.4.msi` and +`gstreamer-1.0-devel-x86_64-1.20.4.msi`. Make sure to select the version that +matches your Rust toolchain, i.e. MinGW or MSVC. + +After installation set the ``PATH` environment variable as follows: + +```console +# For a UNIX-style shell: +$ export PATH="c:/gstreamer/1.0/msvc_x86_64/bin${PATH:+:$PATH}" + +# For cmd.exe: +$ set PATH=C:\gstreamer\1.0\msvc_x86_64\bin;%PATH% +``` + +Make sure to update the path to where you have actually installed GStreamer +and for the corresponding toolchain. + +Also note that the `pkg-config.exe` from GStreamer should be the first one in +the `PATH` as other versions have all kinds of quirks that will cause +problems. + #### MSYS2 / pacman ```console @@ -120,20 +153,6 @@ Note that the version of `pkg-config` included in `MSYS2` is compiling GStreamer, so you may need to install another version. One option would be [`pkg-config-lite`](https://sourceforge.net/projects/pkgconfiglite/). -#### GStreamer Binaries - -You need to download the *two* `.msi` files for your platform from the -GStreamer website and install them, e.g. `gstreamer-1.0-x86_64-1.14.0.msi` and -`gstreamer-1.0-devel-x86_64-1.14.0.msi`. - -After installation, you also need to install `pkg-config` (e.g. via MSYS2 or -from [here](https://sourceforge.net/projects/pkgconfiglite/)) -and set the `PKG_CONFIG_PATH` environment variable - -```console -$ export PKG_CONFIG_PATH="c:\\gstreamer\\1.0\\x86_64\\lib\\pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}" -``` - ## Getting Started