Commit graph

22767 commits

Author SHA1 Message Date
Stefan Sauer
820cf44f7d tests: simplify audiomixer test
Use _link_many() and reuse a helper to reduce the test code.
2017-09-17 10:20:09 -07:00
Tim-Philipp Müller
6eff4f8d81 mssdemux: fix caps leak in error code path
https://bugzilla.gnome.org/show_bug.cgi?id=787736
2017-09-15 20:34:28 +01:00
Philippe Renon
085f875a24 player: introduce helper method to remove seek source
this incidentally fixes a missing g_source_destroy() call in _main()

https://bugzilla.gnome.org/show_bug.cgi?id=787727
2017-09-15 17:28:12 +03:00
Philippe Renon
9fce29497d player: remove duplicate state_ret check in play internal
https://bugzilla.gnome.org/show_bug.cgi?id=787727
2017-09-15 17:28:12 +03:00
Jochen Henneberg
1874d01eda qmlglsink: Expose itemInitialized as property
Instead of just signalling when ready exposing the state
as a property allows us to bind at any time if player is
loaded async.
2017-09-14 15:12:12 +10:00
Nicolas Dufresne
ee021c0418 kmssink: Don't leak the dumb buffer on drain 2017-09-08 10:16:12 -04:00
Nicolas Dufresne
22ce257f1c kmssink: Don't assume buffer pool won't touch buf pointer
Just for extra safety, let's not assume that gst_buffer_pool_acquire()
won't ever touch the buf pointer.
2017-09-08 09:28:19 -04:00
Guillaume Desmottes
7e38fb5422 kms: fix crash if bo allocation failed when copying to dumb buffer
If bo allocation failed we destroy the buffer and return GST_FLOW_ERROR,
but the @buffer pointer was still pointing to the address of the
destroyed buffer. gst_kms_sink_copy_to_dumb_buffer() was then trying to
unref it when bailing out causing a crash.

Leave @buffer untouched if allocation failed to fix the crash.
Also remove the check on *buffer being not NULL as gst_buffer_new()
will abort if it failed.

https://bugzilla.gnome.org/show_bug.cgi?id=787442
2017-09-08 09:26:21 -04:00
Tim-Philipp Müller
fcf8b6bb90 qt: fix build with qmake
Move the package defines for GST_PLUGIN_DEFINE from the
command line into the source file to avoid quoting issues
(-DPACKAGE_NAME="foo" means the quotes won't actually make
it to the compiler and then it no longer gets a string constant).
2017-09-07 09:39:13 +01:00
Thibault Saunier
039fc65468 dfbvideosink: Pass the VideoInfo to gst_video_info_from_caps
Fixing the build
2017-09-06 16:04:49 -03:00
Nicolas Dufresne
9b2e28d91d Request minimum buffer even if need_pool is FALSE
When tee is used, it will not request a pool, but still it wants to
know how many buffers are required.

https://bugzilla.gnome.org/show_bug.cgi?id=730758
2017-09-06 14:19:37 -04:00
George Kiagiadakis
e796a7cb97 hlsdemux: fix compilation with OpenSSL 1.1.0
OpenSSL 1.1.0 no longer allows stack-allocated structures;
it hides the implementation behind typedefs

https://bugzilla.gnome.org/show_bug.cgi?id=787309
2017-09-05 15:54:48 +03:00
Edward Hervey
58a2df001c check: Fix usage of dual probes
Using two (or more) probes on the same pad where one of the probe
returns HANDLED or DROP is tricky since the other probes might
not be called.

Instead use regular probes and a proper pad (the sinkpad already existed,
it only required to be activated and have a dummy chain function for
the events/buffers to be received/handled properly)
2017-09-05 14:28:54 +02:00
Matthew Waters
4d2382fb27 amc: actually use the provided application class loader
For the camera and sensor

Fixes a couple of ClassNotFound java exceptions when initializing GStreamer
off the main thread.
2017-09-05 21:16:33 +10:00
Matthew Waters
3f2a3d0db9 gl/wayland: call eglTerminate() before wl_display_disconnect()
Calling these two functions in the wrong order will result in
use-after-free inside wayland.

https://bugzilla.gnome.org/show_bug.cgi?id=787293
2017-09-05 21:16:33 +10:00
Matthew Waters
03e96f3ceb gtkglsink: expose the created display and context correctly
1. Propagate the GstGLDisplay we create
2. Add the created GstGLContext to the propagated GstGLDisplay

Otherwise with multi-branch GL pipelines involving gtkglsink, things
will fall apart and errors will be genarated somewhere.
2017-09-05 21:16:33 +10:00
Sebastian Dröge
b41dd59061 sbcenc: Fix typo in docs 2017-09-05 10:56:24 +03:00
Edward Hervey
8ef273dc29 plugin: Rename libde265 to de265 for consistency
And avoids it being blacklisted
2017-09-05 09:51:41 +02:00
George Kiagiadakis
e450bba609 examples: Makefile.am: add ipcpipeline in SUBDIRS if enabled 2017-09-04 16:13:41 +03:00
George Kiagiadakis
83883a5c18 ipcpipeline: cleanup header includes
We are only using read(), write(), memcpy(), strlen() and errno
in ipcpipelinecomm.c. Everything else is glib/gstreamer.
2017-09-04 16:03:17 +03:00
George Kiagiadakis
15927b6511 ipcpipeline: use GstPoll instead of select() to watch for socket activity
... and make that code more readable in the process

https://bugzilla.gnome.org/show_bug.cgi?id=787208
2017-09-04 15:52:03 +03:00
George Kiagiadakis
91edec25dd examples: ipcpipeline: get rid of yet another use of SOCK_NONBLOCK
https://bugzilla.gnome.org/show_bug.cgi?id=786763
2017-09-04 10:40:40 +03:00
Nicola Murino
6ef65f550b opencv: allow compilation against 3.3.0
https://bugzilla.gnome.org/show_bug.cgi?id=787234
2017-09-04 10:10:48 +03:00
Edward Hervey
7c8a469f9a qt: Only include qtgui-config.h on qt >= 5.9.0
The file does not exist in previous versions
2017-09-01 15:57:25 +02:00
Edward Hervey
52d0ef2665 tsdemux: Make jp2k handling more robust and efficient
* Avoid copying the pending data and instead create a buffer directly from
  that data with the appropriate offset.
* Locate the jp2k magic to determine the exact location of the (first) frame
  data instead of assuming that the header is of an expected size

https://bugzilla.gnome.org/show_bug.cgi?id=786111
2017-09-01 10:49:36 +02:00
Edward Hervey
c393f0d768 tsdemux: Handle quirk in jp2k es header handling
The jp2k specification (ITU-T T.800) specifies that the 'brat' box
has two fields and the second one (AUF2) can be set to 0 for progressive
streams.

The problem is that the mpeg-ts specification (ITU-T H.222.0 06/2012)
says that the AUF2 field is only present if the stream is interlaced

In order to cope with both situation, accept those next 32bit if the
stream is marked as progressive and those bits contain 0

https://bugzilla.gnome.org/show_bug.cgi?id=786111
2017-09-01 10:49:36 +02:00
George Kiagiadakis
4e239a6632 examples: ipcpipeline: do not use the linux-specific SOCK_NONBLOCK flag
Use fcntl() instead to set O_NONBLOCK, which is portable.

https://bugzilla.gnome.org/show_bug.cgi?id=786763
2017-08-31 15:09:24 +03:00
George Kiagiadakis
282b682cab tests: ipcpipeline: provide pipe2() on systems that don't have it
https://bugzilla.gnome.org/show_bug.cgi?id=786763
2017-08-31 15:09:24 +03:00
Matthew Waters
14087c6c8d qt: the defines for QT_OPENGL_ES_2 have moved
Update the includes to account for that
2017-08-31 14:40:44 +10:00
Jochen Henneberg
d9b55f6575 qt: ensure GL_DRAW_FRAMEBUFFER 2017-08-31 12:41:52 +10:00
George Kiagiadakis
cf1bb83d8d tests: ipcpipeline: make the state_changes test more deterministic
Watching the STATE_CHANGED messages is way more deterministic than
polling the state.

https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-30 18:55:32 +03:00
George Kiagiadakis
acc2719720 tests: ipcpipeline: fix broken exclusivity checks
In most cases we want to stop the pipeline just once, but we have
to do this from code that runs in the streaming threads and in case
we have multiple streams, we need to make sure that we do this only
once. The previous checks were broken, this should fix it.

https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-30 18:55:32 +03:00
George Kiagiadakis
f6cc14c85a tests: ipcpipeline: attempt to make tags test more deterministic
Instead of using a timeout and pushing the tags from an outside
thread, use a pad probe and push them from the streaming thread.

https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-30 18:55:32 +03:00
Philippe Normand
26760588e8 examples/gl/gtk: build fix for the 3dvideo example on macOS 2017-08-30 15:18:58 +01:00
Philippe Normand
bdcac6f435 examples/gl/gtk: fix overlay handling for macOS
The GTK+ window requires a NSView sub-view, not an NSWindow.
2017-08-30 15:16:39 +01:00
Per-Erik Brodin
f267451751 nvdec: fix build after GL/gl.h no longer included
GL headers are no longer included in public gstgl headers, except for
gstglfuncs.h so make sure to include that one.

https://bugzilla.gnome.org/show_bug.cgi?id=786993
2017-08-30 09:37:14 +03:00
Edward Hervey
62d6f5c78a tsdemux: Properly error out on jp2k parsing errors
Avoids crashes later on where we assume buffer exists
2017-08-29 10:37:11 +02:00
Matthew Waters
63c582d685 gl: fix build for ios/win32/android after 2fd84a6c
Some missing GL includes.
2017-08-28 12:57:47 +10:00
Tim-Philipp Müller
3c4dd9a7e5 isoff: make debug category private
Otherwise it shows up in .def file in autotools build.
2017-08-26 13:08:27 +01:00
Tim-Philipp Müller
54d7e2811f meson: fix build for isoff lib addition 2017-08-26 12:03:06 +01:00
Tim-Philipp Müller
0829891c2c isoff: export symbols 2017-08-26 12:02:51 +01:00
Seungha Yang
0f1de50222 smoothstreaming: Use isoff to parse tfxd/tfrf
https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:41 -07:00
Seungha Yang
98576325e3 isoff: Add parsing mss specific tfrf and tfxd boxes
This code is imported from mssdemux's tfxd/tfrf parsing function

https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:32 -07:00
Seungha Yang
3db9152ec6 isoff: Add parsing moov and tfdt
To extract isobmff level timestamp, moov and tfdt parsing is required.

https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:11 -07:00
Seungha Yang
7d06ecb3a4 isoff: Move isoff to gst-libs
Also rename unit test dash_isoff to isoff

https://bugzilla.gnome.org/show_bug.cgi?id=777825
2017-08-25 17:21:04 -07:00
Tim-Philipp Müller
4686dc47e4 gl: install new glfuncs.h header 2017-08-25 20:38:08 +01:00
Tim-Philipp Müller
9da2de1968 tests: ipcpipeline: skip broken tests
These fail on the build bots. Blacklist until someone
investigates.

https://bugzilla.gnome.org/show_bug.cgi?id=786006
2017-08-25 19:33:41 +01:00
Philippe Normand
8b7aa50bc9 tests/player: check for media-info-updated before duration-changed
The media-info-updated signal is now emitted before duration-changed since
commit 8a29da8023.

https://bugzilla.gnome.org/show_bug.cgi?id=786201
2017-08-25 19:09:00 +01:00
Matthew Waters
029e01743f srtp: zero out session member on dealloc
Fixes a user-after-free retrieving stats from _get_property()
2017-08-24 18:02:01 +10:00
Matthew Waters
63dd27a785 gl/checks: fix build 2017-08-24 01:18:40 +10:00