Building on Windows with a focus on generating PDB files

Nirbheek Chauhan nirbheek.chauhan at gmail.com
Tue Sep 10 06:35:22 UTC 2019


Hello Ben,

On Fri, Sep 6, 2019 at 12:25 AM Ben Rush <ben at ben-rush.net> wrote:
>
> I have a desire to build Gstreamer on Windows, more specifically a debug build so that I can track down some crashes that are occurring. Unfortunately, it seems as though this isn't a thing that's well-traveled, or I'm at least getting conflicting information on forums and blog posts about the process. I thought I'd ask on here about the latest state of things since blog posts/forum posts can be depreciated quickly with updates. I'm cool with RTFM, but some sources I'm reading say the manual itself is out of date.
>
> For example, a couple of blog posts (such as this one:  https://cardinalpeak.com/blog/build-gstreamer-on-windows-an-advanced-tutorial/) that don't appear too old,

That blog post is 3+ years old, which is ancient history at this
point. The official GStreamer 1.16 binaries are available in MinGW and
MSVC flavours: https://gstreamer.freedesktop.org/download/#windows

As David has pointed out in the thread already, these are built on
Windows and some of the plugin dependencies are still built with MinGW
since they do not use the Meson build system. You may be seeing access
violations when using one of those plugins due to MSVC-MinGW interop
issues, such as
https://gitlab.freedesktop.org/gstreamer/cerbero/issues/164. The ones
we know of will be fixed in the 1.16.1 release. All MinGW-MSVC interop
issues have been completely eliminated in git master, and will be
available in the 1.18 stable release (the 1.17.1 development release
will also likely be available sometime in October/November, and will
be accompanied with official binaries).

GStreamer is used on Windows quite extensively, especially since we
ported everything to MSVC since it provides a useful debugging and
profiling experience thanks to PDBs.

However, the majority of GStreamer developers use Linux, so issues
sometimes take time to be noticed. Building GStreamer on Windows with
Cerbero is faster than it used to be, but it's still slow. We have
plans to improve that. In the meantime, for many development
environments, gst-build is lightning-fast and has many of the
commonly-used plugins (openh264, libav/ffmpeg, x264):
https://gitlab.freedesktop.org/gstreamer/gst-build/

Cheers,
Nirbheek


More information about the gstreamer-devel mailing list