Using GStreamer for a game emulation pipeline (and many other questions)

Tim Müller tim at centricular.com
Sun Sep 4 19:53:58 UTC 2016


On Sat, 2016-09-03 at 17:23 -0400, athairus wrote:

Hi,

Cool stuff!

> I've noticed that there's a project called gstreamer-qt that's no
> longer maintained. What are my options for getting video output into
> the QML scene?

There's a qmlglsink video sink in gst-plugins-bad that is based on the
GStreamer OpenGL library (libgstlgl).

Example how to use it here:
https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/tests/examp
les/qt/qmlsink


> My project uses CMake and GStreamer uses automake. Is there any work
> being done on compiling GStreamer with CMake? Official
> FindGStreamer.cmake modules?

Nope. There's work being done on compiling GStreamer with Meson (mesonb
uild.com), but not CMake. We provide pkg-config files.


> Lastly, I have the issue of input. I'm going to use SDL2 to manage
> connected controllers. I need to get controller input polled each
> frame before the Libretro element can emulate a frame. What
> approaches do I have? Another element before the Libretro element? I
> was told a while ago on IRC that I could maybe use something meant
> for DVD menu navigation? What is that?

There's something called the GstNavigation interface in gst-plugins-
base as part of the video library. It allows applications (or video
sinks) to make elements in the pipeline aware of things such as mouse
pointer movements, clicks or key presses, but it's pretty much limited
to that. That way an element such as dvdnavsrc and friends can be
notified of these things and can select the right DVD menu items to
highlight/select and such. If that's suitable for your use case, I
don't know.

Minimal example:  gst-launch-1.0 videotestsrc ! navigationtest !
videoconvert ! ximagesink

Cheers
 -Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com

Join us at the GStreamer Conference: 10-11 October 2016 in Berlin,
Germany


More information about the gstreamer-devel mailing list