Aaron Boxer
September 28, 2020
Reading time:
Note: In September 2021, the GStreamer project merged all its git repositories into a single, unified repository, often called monorepo. The build system referred in this post as "gst-build" is now in the root of this combined/mono repository.
There are two ways of building GStreamer on Windows - using either cerbero or gst-build. As gst-build is a lot quicker, we will use this approach in this post.
GStreamer relies on various 2D font rendering and layout libraries such as Pango and Cairo to generate text for the Pango plugin, which contains elements such as textoverlay. However, building GStreamer on Windows using gst-build does not currently include support for Pango.
In this post, we will learn how to add the Pango plugin to a gst-build installation on Windows.
If you haven't already followed my previous guide on GStreamer and Windows, please follow the steps there to build GStreamer from source.
Now, we will need to clone a few more repositories into our source directory :
Next we open a Visual Studio x64 command prompt and execute the following:
> cd freetype2 && meson build --prefix=%GSTREAMER_1_0_ROOT_X86_64% --buildtype=release && ninja -C build install > cd ..\pixman && meson build --prefix=%GSTREAMER_1_0_ROOT_X86_64% --buildtype=release && ninja -C build install > cd ..\harfbuzz && meson build --prefix=%GSTREAMER_1_0_ROOT_X86_64% --buildtype=release && ninja -C build install > cd ..\cairo && meson build --prefix=%GSTREAMER_1_0_ROOT_X86_64% --buildtype=release && ninja -C build install > cd ..\pango && meson build -Dintrospection=false --prefix=%GSTREAMER_1_0_ROOT_X86_64% --buildtype=release && ninja -C build install > cd ..\gst-build-x64 && meson build --reconfigure --prefix=%GSTREAMER_1_0_ROOT_X86_64% --buildtype=release && ninja -C build install
At this stage, it is a good idea to delete our plugin cache:
> rmdir /Q /S c:\\Users\YOUR_USER_NAME\AppData\Local\Microsoft\Windows\INetCache\gstreamer-1.0
And finally:
> gst-inspect-1.0 textoverlay
should find the overlay plugin!
If you have any questions about GStreamer text rendering on Windows, or any other platform, please contact us.
27/10/2025
By resolving critical synchronization bugs in Zink’s Vulkan–OpenGL interop, Faith Ekstrand paved the way for Zink+NVK to become the default…
25/09/2025
Abandoned vendor-provided BSP roadblocks can be overcome when mainline Open Source projects like the Linux kernel are integrated directly.…
06/08/2025
This second post in the Tyr series dives deeper into GPU driver internals by using the Vulkan-based VkCube application to explain how User…
22/07/2025
Getting into kernel development can be daunting. There are layers upon layers of knowledge to master, but no clear roadmap, especially when…
15/07/2025
This past May, we met with the community at the GStreamer Spring Hackfest in Nice, France, and were able to make great strides, including…
03/07/2025
As part of the activities Embedded Recipes in Nice, France, Collabora hosted a PipeWire workshop/hackfest, an opportunity for attendees…
Comments (0)
Add a Comment