mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-26 02:00:33 +00:00
05bfd277a8
- fix all the compiler errors - give them their own gl directory
29 lines
1.2 KiB
Text
29 lines
1.2 KiB
Text
This example illustrates how to integrate Gstreamer GL plugin with
|
|
Qt. In particular it uses glupload with fakesink elements to create
|
|
texture with decoded video frame. This texture is shared with
|
|
QGLWidget derived class, which paints a cube with video texture on
|
|
each face.
|
|
|
|
To compile the example, include and library paths might be adjusted in
|
|
.pro file according to your installation of the gstreamer and
|
|
corresponding development files. Most probably, the adjustments will
|
|
be necessary on Windows.
|
|
|
|
To run the example simply start executable file after compilation. If
|
|
there is no command line arguments provided, then videotestsrc element
|
|
will be used to generate video. The following pipeline will be created
|
|
in this case:
|
|
|
|
videotestsrc ! video/x-raw, width=640, height=480, framerate=(fraction)30/1 ! glupload ! fakesink sync=1
|
|
|
|
It is also possible to provide the video file name as a first command
|
|
line parameter, i.e. ./qglwtextureshare myvideo.ogv . In this case,
|
|
the following pipeline will be executed:
|
|
|
|
filesrc location=myvideo.ogv ! decodebin2 ! glupload ! fakesink sync=1
|
|
|
|
I would appreciate any feedback and improvement suggestions for this
|
|
example.
|
|
|
|
Have fun :-)
|
|
Andrey Nechypurenko (andreynech@gmail.com)
|