• Home
Name Date Size #Lines LOC

..--

AsyncQueue.hD12-May-20242 KiB7843

READMED12-May-20241.3 KiB3324

cocoa_utils.mmD12-May-20241.1 KiB3128

gstthread.cppD12-May-20242 KiB6732

gstthread.hD12-May-20241.4 KiB5925

main.cppD12-May-20241.3 KiB4215

meson.buildD12-May-2024794 3026

pipeline.cppD12-May-20246.5 KiB232179

pipeline.hD12-May-20242 KiB7238

qglrenderer.cppD12-May-20247.6 KiB286207

qglrenderer.hD12-May-20241.5 KiB6127

qglwtextureshare.proD12-May-20241.7 KiB8175

README

1Requires: >= Qt 5.1 for the x11extras module (or else you need to
2get x11extras from gitorious yourself)
3
4This example illustrates how to integrate Gstreamer GL plugin with
5Qt. In particular it uses glupload with fakesink elements to create
6texture with decoded video frame. This texture is shared with
7QGLWidget derived class, which paints a cube with video texture on
8each face.
9
10To compile the example, include and library paths might be adjusted in
11.pro file according to your installation of the gstreamer and
12corresponding development files. Most probably, the adjustments will
13be necessary on Windows.
14
15To run the example simply start executable file after compilation. If
16there is no command line arguments provided, then videotestsrc element
17will be used to generate video. The following pipeline will be created
18in this case:
19
20videotestsrc ! video/x-raw, width=640, height=480, framerate=(fraction)30/1 ! glupload ! fakesink sync=1
21
22It is also possible to provide the video file name as a first command
23line parameter, i.e. ./qglwtextureshare myvideo.ogv . In this case,
24the following pipeline will be executed:
25
26filesrc location=myvideo.ogv ! decodebin2 ! glupload ! fakesink sync=1
27
28I would appreciate any feedback and improvement suggestions for this
29example.
30
31Have fun :-)
32Andrey Nechypurenko (andreynech@gmail.com)
33