Commit graph

344 commits

Author SHA1 Message Date
Matthew Waters
769fffa3d9 new qt5 qml GL video sink
Very much in the same spirit as the Gtk GL sink

Two things are provided
1. A QQuickItem subclass that renders out RGBA filled GstGLMemory
   buffers that is instantiated from qml.
2. A sink element that will push buffers into (1)

To use
1. Declare the GstGLVideoItem in qml with an appropriate
   objectName property set.
2. Get the aforementioned GstGLVideoItem from qml using something like

QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));

QObject *rootObject = engine.rootObjects().first();
QQuickItem *videoItem = rootObject->findChild<QQuickItem *> ("videoItem");

3. Set the videoItem on the sink

https://bugzilla.gnome.org/show_bug.cgi?id=752185
2015-07-10 15:25:26 +10:00
Tim-Philipp Müller
e7512329ca examples: move vp8 parser test to codecparser example directory 2015-06-21 11:51:38 +01:00
Tim-Philipp Müller
82be4ad395 examples: add small jpeg codecparser test
https://bugzilla.gnome.org/show_bug.cgi?id=673925
2015-06-21 11:34:39 +01:00
Jan Schmidt
3ea9f51dd7 3dvideo: Add simple gtk example stereoscopic video player
https://bugzilla.gnome.org/show_bug.cgi?id=611157
2015-06-19 01:49:33 +10:00
Matthew Waters
f600a8ac9a gl/examples: update qt examples for api changes 2015-06-15 16:47:15 +10:00
Nirbheek Chauhan
f8137dd8a6 examples: playout: Add better help text
This should help people figure out how to use the example a bit better
2015-06-12 21:15:03 +01:00
Nirbheek Chauhan
4d42704312 examples: playout: Decrement the currently-playing counter correctly
Only do that when we're removing an item that was playing, otherwise we'll mess
things up while trying to edit the play queue (playlist).
2015-06-12 21:14:57 +01:00
Nirbheek Chauhan
5da10b4f57 playout: New example for seamless audio/video playback
An example app that takes video URIs as command line arguments and switches
between them seamlessly one after the other using compositor and audiomixer.
Both audio-video and video-only media files are valid inputs, but mixing files
of both types in a single invocation is cumbersome to support, and hence does
not work. The example attempts to keep the audio stream moving along perfectly,
and duplicates video frames where necessary to cover gaps in the video
timestamps using the 'ignore-eos' videoaggregator pad property.

Ensuring seamless (and mostly-glitch-free) switching is harder than it sounds,
and hence the example contains plenty of pad probes and running time
calculations to make things work.

The GPtrArray play_queue contains items that are being played back, have been
prepared for playback, and will be played back in the future. The queue itself
is mutable besides the first two items (playing and prepared). The item that has
been prepared should not be edited or removed since it has been prepared in
advance to be activated immediately on the current item's EOS.

The example also has support for switching to the next item in the queue
prematurely; see the --switch-after/-s flag to the application.

Note: the output video is hard-coded at 1280x720, and input video is scaled as
needed to fit this size. Set OUTPUT_VIDEO_WIDTH/HEIGHT to change this.

https://bugzilla.gnome.org/show_bug.cgi?id=748947
2015-06-12 20:32:25 +01:00
Nicolas Dufresne
0c647ec8a7 gstgtk: No need to realize the widget
The widget already does that.
2015-06-11 12:41:49 -04:00
Nicolas Dufresne
1f9bdcad87 gstgtk: Don't leak the widget
g_object_get() returns a ref, gtk_container_add() only ref_sink().
That mean we still need to unref afterward. This leak was hiding
a reference bug previously present.
2015-06-11 12:41:49 -04:00
Sebastian Dröge
b9d8d83ca4 gtk: Add missing CFLAGS to example 2015-06-11 14:58:27 +02:00
Matthew Waters
23fb666dd7 Implement gtk sinks
two sinks are provided.  gtksink which is a cairo/software based renderer
and gtkglsink which utilises the GL support in gtk and gstreamer.
2015-06-11 22:01:03 +10:00
Julien Isorce
6d04b62e85 gl/example: fix build error when compiling cocoa-videooverlay
libtool: error: ignoring unknown tag OBJC
and
clang: error: argument unused during compilation: '-pthread'
2015-06-04 08:04:13 +01:00
Luis de Bethencourt
16f61e7b2d examples: gst-camerabin2-test: protect from division by zero
Highly unlikely to have 0 captures, but protect from crashes in the future by
doing none of the math if there is no data.
2015-06-03 14:58:13 +01:00
Edward Hervey
5fe88f7ed7 examples: Fix gl usage without wayland support
Not all platforms have wayland support. Handle that gracefully at
compile time
2015-06-01 14:05:06 +02:00
Matthew Waters
5f0c006a82 gl/examples: update gtk examples for glupload 2015-05-31 16:09:34 +10:00
Matthew Waters
21cbf763b0 gl/examples: update gtk examples for wayland 2015-05-31 16:09:34 +10:00
Matthew Waters
349685ad27 tests/gl/gtk: implement setting a wayland display/surface 2015-05-31 16:04:13 +10:00
Jan Schmidt
cdff13e07b Fix flags order in GL examples for uninstalled build 2015-05-21 13:42:35 +10:00
Thiago Santos
cb56a6b32b examples: gst-camera: add zoom property to UI
Add a slider to modify the zoom in camerabin
2015-04-27 21:14:09 -03:00
Thiago Santos
31b1348559 examples: gst-camera: remove widgets deprecated in GTK3.0
VBox and HBox are now simply Box
2015-04-27 21:14:09 -03:00
Thiago Santos
a1a58d438f examples: gst-camera: update to GTK3
When opening the .ui file it complains about being for GTK 2 and
automatically updates it to GTK3. Commit this version and update
the makefile
2015-04-27 21:14:09 -03:00
Tim-Philipp Müller
0ff70da6bc examples: motioncells: remove GPL3 code we don't need
If 95% of the code of an example app consists of GObject
code, maybe that's defeating the point a little. So just
remove a lot of that and trim down the example to the
absolute minimum. Also removes the last remaining GPL3
licensed code in -bad.
2015-04-25 13:44:01 +01:00
Tim-Philipp Müller
b800bba76a examples: motioncells: simplify property setting 2015-04-25 13:44:01 +01:00
Tim-Philipp Müller
d531f908e5 examples: motioncells: port to 1.x 2015-04-25 13:44:01 +01:00
Robert Jobbagy
0f4ecf52ad examples: motioncells: relicense opencv example to LGPLv2 2015-04-25 13:43:54 +01:00
Matthew Waters
199f9bd194 gl/examples: fixup generic cube example for NDC
translating outside the clip region doesn't work
2015-03-14 18:12:38 +00:00
Julien Isorce
7dd3a2ec9e gl/examples: add sdlshare2 that uses glimagesink to output textures
https://bugzilla.gnome.org/show_bug.cgi?id=739681
2015-03-14 17:56:39 +00:00
Julien Isorce
0150255a46 glimagesink: provide GstSample in client-draw signal
Instead of prividing texture and size directly.
And apply changes to examples.

https://bugzilla.gnome.org/show_bug.cgi?id=739681
2015-03-14 17:56:21 +00:00
Julien Isorce
94d4ae1840 sdlshare: use glupload and unmap frame 2015-03-14 17:42:40 +00:00
Julien Isorce
5667d34182 examples: initialize NSApp at the beginning 2015-03-14 08:37:52 +00:00
Matthew Waters
e505f6257c applemedia: new AVSampleBufferLayerSink
Renders buffers using the CALayer subclass AVSampleBufferDisplayLayer
which can be placed inside a Core Animation render tree.
2015-02-24 19:12:10 +11:00
Luis de Bethencourt
59db1789cf mxf-example: don't quit on Warning
Don't quit on Warning.
Print out a message when there is an Error or Warning.
2015-02-21 18:56:23 +00:00
Luis de Bethencourt
40b5f02dc6 mxf-example: always show gtk window
Show gtk window even when there are no tags, to always have visual feedback
about the pipeline running.
2015-02-21 18:56:23 +00:00
Luis de Bethencourt
d240c98225 mxf-example: merge returns in g_value_to_string() 2015-02-21 18:56:23 +00:00
Luis de Bethencourt
7d058c8523 mxf-example: make bus_callback consistent
Simplify the bus_callback to make it consisten with other examples.
2015-02-21 18:56:04 +00:00
Luis de Bethencourt
4e45b86ed8 mxf-example: fix usage of argc and argv 2015-02-21 17:18:02 +00:00
Luis de Bethencourt
9454e42db0 camerabin examples: remove unneeded variable
ret is only used once, we don't need to store it in a variable for that.
2015-02-21 17:02:18 +00:00
Song Bing
629b350806 camerabin examples: memory leak in camerabin examples code
should unref caps after set to profile. profile will ref it.

https://bugzilla.gnome.org/show_bug.cgi?id=744219
2015-02-10 15:48:26 -03:00
Song Bing
2d0e6d96c6 camerabin examples: memory leak in camerabin examples code
should unref after set object. The object will be refed when set
property.

https://bugzilla.gnome.org/show_bug.cgi?id=744219
2015-02-10 15:48:26 -03:00
Matthew Waters
bf87ac8cbe gl/qt/examples: update for NSOpenGL -> CGL change 2015-01-23 16:12:24 +11:00
Matthew Waters
996f193547 gl/examples: fixup sdl example for gluPerspective removal 2014-12-11 19:41:23 +11:00
Thijs Vermeir
6215b5dd14 gl/cocoa: Fix example on Mac OS X 10.10
Using NSApp directly seems to confuse something, as the compiler
was expecting an id<NSFileManagerDelegate>. Switched to using
[NSApplication sharedApplication], and specified the delegate
protocol on the window class as well.

Similar to https://bugzilla.gnome.org/show_bug.cgi?id=738740
2014-12-01 10:59:32 +01:00
Matthew Waters
6bd1150ca8 gl: remove the use of glu 2014-11-28 09:14:26 +11:00
Sreerenj Balachandran
b8a2f46a88 examples: relicense opencv gsthanddetect_test to LGPLv2+
The GPL3 license header was copy'n'pasted from a
neighbouring source file by mistake, the original
code was not GPL3 licensed, but fell under the
default GStreamer license, which is LGPLv2+.

https://bugzilla.gnome.org/show_bug.cgi?id=685655
2014-11-17 09:20:19 +00:00
Hyunjun Ko
fec8d4e7b2 opencv-example: Use g_snprintf instead of sprintf
https://bugzilla.gnome.org/show_bug.cgi?id=739846
2014-11-17 00:47:28 +00:00
Sebastian Dröge
13c8517570 gl/cocoa: Remove GNUStep support
Until gcc and GNUStep properly support Objective-C blocks and other
"new" features of Objective-C we can't properly support them without
making the code much more ugly.

https://bugzilla.gnome.org/show_bug.cgi?id=739152
2014-11-13 12:01:19 +01:00
Tim-Philipp Müller
f07de37ad1 examples: remove pointless mpegtsmux example
Serves no purpose, is not even hooked up to the
build system, has hard coded file names and paths,
and can easily be replaced with a gst-launch line.

https://bugzilla.gnome.org/show_bug.cgi?id=739844
2014-11-09 19:25:39 +00:00
Matthew Waters
c1f3cc9f1c gl/examples: update for other-context property removal 2014-10-30 18:58:50 +11:00
Jan Schmidt
37c70c8efa examples: Fix Qt/GL qglwtextureshare example for X11
We need to pass the X11 display to GstGL or else it will
use its own X11 Display pointer, and the GL Context won't get shared
correctly on newer X servers
2014-09-29 00:39:07 +10:00