platform/upstream/gstreamer.git
6 years agomeosn: curl: also check for and use libssh2 if available
Tim-Philipp Müller [Mon, 22 Jan 2018 18:53:22 +0000 (18:53 +0000)]
meosn: curl: also check for and use libssh2 if available

6 years agodirectsoundsrc: Don't dynamically load one DirectSound symbol at runtime
Sebastian Dröge [Mon, 22 Jan 2018 11:44:29 +0000 (13:44 +0200)]
directsoundsrc: Don't dynamically load one DirectSound symbol at runtime

Just link statically to it, like for all other DirectSound symbols.

6 years agowasapi: Rewrite most of the code to make it work
Nirbheek Chauhan [Sun, 21 Jan 2018 03:32:30 +0000 (09:02 +0530)]
wasapi: Rewrite most of the code to make it work

Both the source and the sink elements were broken in a number of ways:

* prepare() was assuming that the format was always S16LE 2ch 44.1KHz.
  We now probe the preferred format with GetMixFormat().
* Device initialization was done with the wrong buffer size
  (buffer_time is in microseconds, not nanoseconds).
* sink_write() and src_read() were just plain wrong and would never
  write or read anything useful.
* Some functions in prepare() were always returning FALSE which meant
  trying to use the elements would *always* fail.
* get_caps() and delay() were not implemented at all.

TODO: support for >2 channels
TODO: pro-audio low-latency
TODO: SPDIF and other encoded passthroughs

Three new properties are now implemented: role, mute, and device.

* 'role' designates the stream role of the initialized device, see:
   https://msdn.microsoft.com/en-us/library/windows/desktop/dd370842(v=vs.85).aspx
* 'device' is a system-wide GUIDesque string for a specific device.
* 'mute' is a sink property and simply mutes it.

On my Windows 8.1 system, the lowest latency that works is:

  wasapisrc buffer-time=20000
  wasapisink buffer-time=10000

aka, 20ms and 10ms respectively. These values are close to the lowest
possible with the IAudioClient interface. Further improvements require
porting to IAudioClient2 or IAudioClient3.

https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/low-latency-audio

6 years agotests: camerabin: skip checks if we don't have encoders for the default format
Tim-Philipp Müller [Sat, 20 Jan 2018 15:49:35 +0000 (15:49 +0000)]
tests: camerabin: skip checks if we don't have encoders for the default format

https://bugzilla.gnome.org/show_bug.cgi?id=767863

6 years agotests: ipcpipeline: fix struct initialisation warnings with clang
Tim-Philipp Müller [Wed, 17 Jan 2018 12:06:28 +0000 (12:06 +0000)]
tests: ipcpipeline: fix struct initialisation warnings with clang

Use init macros to avoid gst-indent making a mess of it.

https://bugzilla.gnome.org/show_bug.cgi?id=787980

6 years agotests: remove test that's never been ported to 1.x
Tim-Philipp Müller [Tue, 16 Jan 2018 11:35:22 +0000 (11:35 +0000)]
tests: remove test that's never been ported to 1.x

6 years agohlsdemux: fix memory leak while updating master playlist
Jun Xie [Wed, 3 Jan 2018 02:26:49 +0000 (10:26 +0800)]
hlsdemux: fix memory leak while updating master playlist

new_master needs to be freed if current playlist is not a master playlist

https://bugzilla.gnome.org/show_bug.cgi?id=792146

6 years agolv2: fix inverted boolean properties
Tim-Philipp Müller [Mon, 15 Jan 2018 20:01:06 +0000 (20:01 +0000)]
lv2: fix inverted boolean properties

https://bugzilla.gnome.org/show_bug.cgi?id=791330

6 years agocheck: Update gitignore
Edward Hervey [Thu, 11 Jan 2018 10:49:06 +0000 (11:49 +0100)]
check: Update gitignore

6 years agomxfdemux: Remove useless check
Edward Hervey [Thu, 11 Jan 2018 10:41:33 +0000 (11:41 +0100)]
mxfdemux: Remove useless check

Any modification of ret in that "while (ret == GST_FLOW_OK)" loop will
break (and cause it to stop the iteration).

CID #1427095

6 years agokateenc: Refactoring for readability and leak fixing
Edward Hervey [Thu, 11 Jan 2018 10:33:22 +0000 (11:33 +0100)]
kateenc: Refactoring for readability and leak fixing

Instead of a massive if/else/if/else/if/else/...:
* Use a common cleanup path for allocated items just before leaving
  the function (which will be free-d only if we're not dealing with
  a delayed SPU).
* "goto" that cleanup path wherever needed

CID #1427096
CID #1427114

6 years agomsdk: change plugin's description
Víctor Manuel Jáquez Leal [Thu, 11 Jan 2018 10:29:38 +0000 (11:29 +0100)]
msdk: change plugin's description

There are not only encoders nowadays, there are decoders too and a
postprocessor in the future.

6 years agomsdk: init the debug category for mpeg2dec
Sreerenj Balachandran [Thu, 11 Jan 2018 03:24:07 +0000 (18:24 -0900)]
msdk: init the debug category for mpeg2dec

https://bugzilla.gnome.org/show_bug.cgi?id=792260

6 years agomsdk: Add mpeg2 decoder
Sreerenj Balachandran [Wed, 10 Jan 2018 19:40:24 +0000 (10:40 -0900)]
msdk: Add mpeg2 decoder

https://bugzilla.gnome.org/show_bug.cgi?id=792260

6 years agosrt: The pkgconfig is "srt", not "libsrt"
Olivier Crête [Tue, 9 Jan 2018 23:11:52 +0000 (18:11 -0500)]
srt: The pkgconfig is "srt", not "libsrt"

Also, always use the pkgconfig file instead of falling back

6 years agosrt: Include srt.h inside object header
Olivier Crête [Tue, 9 Jan 2018 23:10:04 +0000 (18:10 -0500)]
srt: Include srt.h inside object header

Otherwise, newer GCC complains about now having sockaddr defined in
the header.

6 years agoplayer: doc update for set_subtitle_uri()
Philippe Normand [Sun, 7 Jan 2018 14:45:37 +0000 (14:45 +0000)]
player: doc update for set_subtitle_uri()

A call to this function without enabling the subtitle track has no effect.

6 years agodecklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is...
Vivia Nikolaidou [Fri, 29 Dec 2017 13:14:54 +0000 (15:14 +0200)]
decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing

Sometimes we might get an audio packet without a corresponding video
frame. In these cases, the stream and hardware reference timestamps
would be missing, because they're called on the video frame. Instead of
potentially breaking stuff downstream that might depend on these, we now
extrapolate them.

https://bugzilla.gnome.org/show_bug.cgi?id=792042

6 years agodecklink: Detect gaps on incoming stream times, issue warnings
Vivia Nikolaidou [Wed, 26 Apr 2017 16:05:21 +0000 (19:05 +0300)]
decklink: Detect gaps on incoming stream times, issue warnings

When we receive a video or audio buffer, we calculate the next stream
time based on the current stream time + buffer duration. If the next
buffer's stream time is after that, we issue a warning.

This happens because the stream time incoming from Decklink should be
really constant and without gaps. If there is a gap, it means that
something went wrong, e.g. the internal buffer pool is empty (too many
buffers queued up downstream).

https://bugzilla.gnome.org/show_bug.cgi?id=781776

6 years agoRevert "WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue...
Vivia Nikolaidou [Thu, 4 Jan 2018 13:41:51 +0000 (15:41 +0200)]
Revert "WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings"""

This reverts commit 8dceeb5ccd6e46a61e3bbe79efa45275504fa500.

6 years agoRevert "WIP: Revert "Revert "debugutils: Added new jitterer element"""
Vivia Nikolaidou [Thu, 4 Jan 2018 13:41:50 +0000 (15:41 +0200)]
Revert "WIP: Revert "Revert "debugutils: Added new jitterer element"""

This reverts commit a401cb9a61f21c2fbc803eb3f098a9e2496edc06.

6 years agoRevert "WIP: Revert "Revert "timecodestamper: LTC from audio"""
Vivia Nikolaidou [Thu, 4 Jan 2018 13:41:49 +0000 (15:41 +0200)]
Revert "WIP: Revert "Revert "timecodestamper: LTC from audio"""

This reverts commit e0be05dc7059cc97dceb70a48ca9cad4ee2edce6.

6 years agoRevert "WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add"""
Vivia Nikolaidou [Thu, 4 Jan 2018 13:41:48 +0000 (15:41 +0200)]
Revert "WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add"""

This reverts commit 2f9da0ab59ef4231e9c850afb089d920e9d25609.

6 years agoRevert "decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame...
Vivia Nikolaidou [Thu, 4 Jan 2018 13:41:44 +0000 (15:41 +0200)]
Revert "decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing"

This reverts commit 6af863916a7bf3bfe31970fdc2dd2d42ea3f9690.

6 years agodecklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is...
Vivia Nikolaidou [Fri, 29 Dec 2017 13:14:54 +0000 (15:14 +0200)]
decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing

Sometimes we might get an audio packet without a corresponding video
frame. In these cases, the stream and hardware reference timestamps
would be missing, because they're called on the video frame. Instead of
potentially breaking stuff downstream that might depend on these, we now
extrapolate them.

https://bugzilla.gnome.org/show_bug.cgi?id=792042

6 years agoWIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add""
Vivia Nikolaidou [Tue, 7 Nov 2017 19:14:18 +0000 (21:14 +0200)]
WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add""

This reverts commit 05426d9298431c149807fb435cd1d632e9fd061f.

6 years agoWIP: Revert "Revert "timecodestamper: LTC from audio""
Vivia Nikolaidou [Tue, 7 Nov 2017 19:14:15 +0000 (21:14 +0200)]
WIP: Revert "Revert "timecodestamper: LTC from audio""

This reverts commit 1998ccf1fbd586ef1dc4b1e7256bad7af8136f13.

6 years agoWIP: Revert "Revert "debugutils: Added new jitterer element""
Vivia Nikolaidou [Tue, 7 Nov 2017 19:14:01 +0000 (21:14 +0200)]
WIP: Revert "Revert "debugutils: Added new jitterer element""

This reverts commit ccc1624d097cbfdaf9f99526c033c642c863400c.

6 years agoWIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings""
Vivia Nikolaidou [Tue, 7 Nov 2017 19:13:57 +0000 (21:13 +0200)]
WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings""

This reverts commit 07819afda461f5e4d77c9be9f484a7aae3c5ec8c.

6 years agoopenh264dec: Remove useless check
Edward Hervey [Wed, 3 Jan 2018 15:07:24 +0000 (16:07 +0100)]
openh264dec: Remove useless check

We are sure to have a frame at this point

CID #1427138

6 years agohlssink2: Remove useless if statement
Edward Hervey [Wed, 3 Jan 2018 14:15:25 +0000 (15:15 +0100)]
hlssink2: Remove useless if statement

message will always be present

CID #1409853

6 years agokateenc: Fix memory leak in error cases
Edward Hervey [Wed, 3 Jan 2018 11:15:01 +0000 (12:15 +0100)]
kateenc: Fix memory leak in error cases

CID #1427096
CID #1427114

6 years agosrt: Remove platform dependent socket headers
Justin Kim [Tue, 2 Jan 2018 11:51:25 +0000 (20:51 +0900)]
srt: Remove platform dependent socket headers

SRT modules entrust `gnetworking.h` with finding right headers
for the platforms.

https://bugzilla.gnome.org/show_bug.cgi?id=792123

6 years agonalutils: Fix Exponential-Golomb 'ue' parsing
Edward Hervey [Tue, 2 Jan 2018 14:23:00 +0000 (15:23 +0100)]
nalutils: Fix Exponential-Golomb 'ue' parsing

The algorithm we use only supports up to a maximum exponent of 31
(for a maximum resulting of 2**32 -1)

CID #1427097

6 years agoopencv: allow all future 3.4.x versions
Tim-Philipp Müller [Tue, 2 Jan 2018 11:43:39 +0000 (11:43 +0000)]
opencv: allow all future 3.4.x versions

Fix-up for previous patch which I modified incorrectly.

https://bugzilla.gnome.org/show_bug.cgi?id=792114

6 years agoopencv: allow compilation against 3.4.x
Nicola Murino [Tue, 2 Jan 2018 09:12:11 +0000 (10:12 +0100)]
opencv: allow compilation against 3.4.x

https://bugzilla.gnome.org/show_bug.cgi?id=792114

6 years agoplayer: transfer ownership of info properties
Philippe Normand [Wed, 27 Dec 2017 13:08:18 +0000 (13:08 +0000)]
player: transfer ownership of info properties

The previous code would emit GObject critical warnings when the info properties
are NULL.

https://bugzilla.gnome.org/show_bug.cgi?id=791982

6 years agosrtp: get ssrc for Application-Defined RTCP Packet
Justin Kim [Tue, 26 Dec 2017 00:54:18 +0000 (09:54 +0900)]
srtp: get ssrc for Application-Defined RTCP Packet

Application-defined RTCP(204) packets also have a ssrc in their header.
To find a valid stream from the packet, the ssrc should be used.

https://bugzilla.gnome.org/show_bug.cgi?id=791955

6 years agomeson: skip translations if gettext is not available
Tim-Philipp Müller [Tue, 26 Dec 2017 12:52:18 +0000 (13:52 +0100)]
meson: skip translations if gettext is not available

6 years agoFix typo in gstreamer-bad-audio-1.0.pc
Tim-Philipp Müller [Sun, 24 Dec 2017 10:36:01 +0000 (11:36 +0100)]
Fix typo in gstreamer-bad-audio-1.0.pc

https://bugzilla.gnome.org/show_bug.cgi?id=791910

6 years agogl: local libs should come first in Makefile.am
Tim-Philipp Müller [Sat, 23 Dec 2017 11:53:39 +0000 (12:53 +0100)]
gl: local libs should come first in Makefile.am

And keep consistent order in CFLAGS and LIBS.

6 years agogl: arrange for finding headers and libs that have moved to -base
Mark Nauwelaerts [Sat, 23 Dec 2017 11:29:03 +0000 (12:29 +0100)]
gl: arrange for finding headers and libs that have moved to -base

In file included from ../../../gst-plugins-bad/ext/gl/gstopengl.c:47:0:
../../../gst-plugins-bad/ext/gl/gstglmixerbin.h:25:29: fatal error: gst/video/video.h: No such file or directory

6 years agofestival: Don't forward all queries
Nicolas Dufresne [Wed, 20 Dec 2017 04:13:34 +0000 (23:13 -0500)]
festival: Don't forward all queries

This fixes issues where wavparse would query the file size upstream
and assert because the file size is way smaller then what the WAVE
header says. This patch disable or cane a handful of queries that
make no sense to forward.

https://bugzilla.gnome.org/show_bug.cgi?id=791811

6 years agoaudioaggregator: Don't leak pads
Edward Hervey [Wed, 20 Dec 2017 14:02:30 +0000 (15:02 +0100)]
audioaggregator: Don't leak pads

all audioaggregator subclasses were leaking the first sink pad :)

6 years agoadaptivedemux: fix pending_segment log
Jun Xie [Wed, 20 Dec 2017 07:01:16 +0000 (15:01 +0800)]
adaptivedemux: fix pending_segment log

pending_segment shall be logged as GST_PTR_FORMAT, it's an event

https://bugzilla.gnome.org/show_bug.cgi?id=791813

6 years agoshmsink: Block in preroll_wait on unlock
Olivier Crête [Tue, 19 Dec 2017 22:35:39 +0000 (17:35 -0500)]
shmsink: Block in preroll_wait on unlock

The correct behaviour of anything stuck in the ->render() function
between ->unlock() and ->unlock_stop() is to call
gst_base_sink_wait_preroll() and only return an error if this returns an
error, otherwise, it must continue where it left off!

https://bugzilla.gnome.org/show_bug.cgi?id=774950

6 years agoaudioaggregator: implement input conversion
Mathieu Duponchelle [Sat, 22 Jul 2017 18:32:20 +0000 (20:32 +0200)]
audioaggregator: implement input conversion

https://bugzilla.gnome.org/show_bug.cgi?id=786344

6 years agosmhsink: Check return values of functions working on memory
Marcin Lewandowski [Thu, 7 Jul 2016 18:40:22 +0000 (20:40 +0200)]
smhsink: Check return values of functions working on memory

https://bugzilla.gnome.org/show_bug.cgi?id=768530

6 years agoapplemedia: don't include private cocoa gl header
Tim-Philipp Müller [Tue, 19 Dec 2017 21:35:08 +0000 (21:35 +0000)]
applemedia: don't include private cocoa gl header

6 years agogtk example: Fix cflags in Makefile.am
Olivier Crête [Tue, 19 Dec 2017 21:22:52 +0000 (16:22 -0500)]
gtk example: Fix cflags in Makefile.am

6 years agogl: enable openglmixers plugin in autotools again too
Tim-Philipp Müller [Tue, 19 Dec 2017 19:23:43 +0000 (19:23 +0000)]
gl: enable openglmixers plugin in autotools again too

6 years agoapplemedia: fix build after gl move to -base
Tim-Philipp Müller [Tue, 19 Dec 2017 17:56:33 +0000 (17:56 +0000)]
applemedia: fix build after gl move to -base

6 years agomeson: gl: fix build of openglmixers plugin
Tim-Philipp Müller [Tue, 19 Dec 2017 17:34:50 +0000 (17:34 +0000)]
meson: gl: fix build of openglmixers plugin

6 years agomeson: fix dependency type name to check for
Tim-Philipp Müller [Tue, 19 Dec 2017 15:14:07 +0000 (15:14 +0000)]
meson: fix dependency type name to check for

6 years agomeson: fix build with GstGL from gst-plugins-base as subproject
Tim-Philipp Müller [Tue, 19 Dec 2017 15:06:22 +0000 (15:06 +0000)]
meson: fix build with GstGL from gst-plugins-base as subproject

- use right fallback variable
- get platform/winsys variables from subproject instead of pkg-config

With contributions from Thibault Saunier.

6 years agogtk: don't include uninstalled header
Tim-Philipp Müller [Tue, 19 Dec 2017 13:03:28 +0000 (13:03 +0000)]
gtk: don't include uninstalled header

6 years agoallocatorsbad: physmem moved to -base
Tim-Philipp Müller [Wed, 13 Dec 2017 01:05:32 +0000 (01:05 +0000)]
allocatorsbad: physmem moved to -base

6 years agogl: update plugins to use GstGL from -base
Tim-Philipp Müller [Sun, 17 Dec 2017 20:54:06 +0000 (20:54 +0000)]
gl: update plugins to use GstGL from -base

6 years agogl: most of opengl plugin has moved to -base, keep mixer bits in -bad for now
Tim-Philipp Müller [Mon, 11 Dec 2017 14:20:59 +0000 (14:20 +0000)]
gl: most of opengl plugin has moved to -base, keep mixer bits in -bad for now

Since they rely on GstVideoAggregator.

Fix detection of things again, and Meson

6 years agogl: remove GStreamer OpenGL integration library and move to -base
Tim-Philipp Müller [Mon, 11 Dec 2017 12:59:09 +0000 (12:59 +0000)]
gl: remove GStreamer OpenGL integration library and move to -base

https://bugzilla.gnome.org/show_bug.cgi?id=754094

6 years agoladspa: Add Windows/OSX path support
Nicolas Dufresne [Mon, 18 Dec 2017 21:54:15 +0000 (16:54 -0500)]
ladspa: Add Windows/OSX path support

This is to mimic LV2 and what is commonly documented over the
web. We also completely track these directories when updating
the cache now. Unlike LV2, the plugins are flat in the plugin
directories, so no need for the recursive lookup. This also fixes
support for Fedora and other architecture using lib64 as a libdir.

6 years agomeson: Enable ladspa plugins compilation
Nicolas Dufresne [Mon, 18 Dec 2017 21:09:53 +0000 (16:09 -0500)]
meson: Enable ladspa plugins compilation

6 years agolv2: Try and reflect better lilv default path
Nicolas Dufresne [Mon, 18 Dec 2017 19:42:21 +0000 (14:42 -0500)]
lv2: Try and reflect better lilv default path

While keeping it simple, this patch tries and mimic lilv default path.
It does not matter if some path are duplicated due to symlink because in
the end it's lilv that will walk these paths. The worst case is that we
update our cache more often then strictly needed.

https://bugzilla.gnome.org/show_bug.cgi?id=791717

6 years agolv2: Recursively monitor the lv2 plugin path
Nicolas Dufresne [Mon, 18 Dec 2017 17:11:21 +0000 (12:11 -0500)]
lv2: Recursively monitor the lv2 plugin path

Otherwise we might not update the cache when needed.

https://bugzilla.gnome.org/show_bug.cgi?id=791717

6 years agoRevert "New element 'proxy' to send data to in-process pipelines"
Nirbheek Chauhan [Mon, 18 Dec 2017 19:46:35 +0000 (01:16 +0530)]
Revert "New element 'proxy' to send data to in-process pipelines"

This reverts commit 8a056af05e23ad5b81cd1dc2699ae20abcf9b91a.

Accidentally pushed this element, oops! Progress on this element is
being tracked at: https://bugzilla.gnome.org/show_bug.cgi?id=788200

6 years agomeson: Use cdata.set_quoted and set LIBDIR correctly
Nirbheek Chauhan [Mon, 18 Dec 2017 19:44:03 +0000 (01:14 +0530)]
meson: Use cdata.set_quoted and set LIBDIR correctly

LIBDIR must include the prefix. Also use set_quoted instead of
manually quoting because it's clearer what the intention is.

https://bugzilla.gnome.org/show_bug.cgi?id=791751

6 years agoNew element 'proxy' to send data to in-process pipelines
Nirbheek Chauhan [Tue, 26 Sep 2017 14:42:24 +0000 (20:12 +0530)]
New element 'proxy' to send data to in-process pipelines

This plugin is useful when you want to pipe arbitrary data to
a different pipeline within the same process. Buffers, events, and caps
are transmitted as-is without copying or manipulation.

6 years agomeson: Enable building LV2
Nicolas Dufresne [Mon, 18 Dec 2017 16:34:13 +0000 (11:34 -0500)]
meson: Enable building LV2

Note that I only support lilv 0.22+ for now, because it's simple and old
enough. If anyone needs to use the 0.16 support it will need to be
added.

6 years agoadaptivedemux: fix log integer format
Jun Xie [Mon, 18 Dec 2017 12:39:07 +0000 (20:39 +0800)]
adaptivedemux: fix log integer format

range_start/range_end shall be logged as G_GINT64_FORMAT

https://bugzilla.gnome.org/show_bug.cgi?id=791735

6 years agodashdemux: parse xs:dateTime's timezone indicator
Jun Xie [Thu, 14 Dec 2017 07:18:38 +0000 (15:18 +0800)]
dashdemux: parse xs:dateTime's timezone indicator

The lexical form of xs:dateTime is YYYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]
timezone indicator (+|-)hh:mm] needs to be parsed.

https://bugzilla.gnome.org/show_bug.cgi?id=791602

6 years agoplayer: Fix-up set_seek_accurate() configuration to take a player config instead...
Sebastian Dröge [Sat, 16 Dec 2017 08:44:26 +0000 (10:44 +0200)]
player: Fix-up set_seek_accurate() configuration to take a player config instead of a player instance

6 years agoplayer: Consistently use GstVideoMultiviewFramePacking instead of Mode
Sebastian Dröge [Sat, 16 Dec 2017 08:22:44 +0000 (10:22 +0200)]
player: Consistently use GstVideoMultiviewFramePacking instead of Mode

The latter needs additional metadata, and the former was already used
everywhere except for the functions: in properties in playbin itself.

6 years agoav1enc: Add debugging of configuration settings
Edward Hervey [Fri, 15 Dec 2017 16:38:12 +0000 (17:38 +0100)]
av1enc: Add debugging of configuration settings

In preparation of making such properties configurable
via gobject properties.

6 years agoav1enc: Remove g_print for errors
Edward Hervey [Fri, 15 Dec 2017 16:37:08 +0000 (17:37 +0100)]
av1enc: Remove g_print for errors

And use standard debugging system for it

6 years agoAdd aom plugin with av1enc and av1dec element
Sean DuBois [Tue, 27 Jun 2017 22:50:41 +0000 (22:50 +0000)]
Add aom plugin with av1enc and av1dec element

https://bugzilla.gnome.org/show_bug.cgi?id=784160

6 years agoopencv: handdetect: fix typo in example launch line
Reynaldo H. Verdejo Pinochet [Thu, 14 Dec 2017 21:31:33 +0000 (13:31 -0800)]
opencv: handdetect: fix typo in example launch line

6 years agodecklinkaudiosink: Start audio pre-rolling if the output is not started yet in render()
Sebastian Dröge [Wed, 22 Nov 2017 12:29:51 +0000 (14:29 +0200)]
decklinkaudiosink: Start audio pre-rolling if the output is not started yet in render()

This seems to allow to schedule audio samples correctly at their right
times already.

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agodecklinkvideosink: Only start if both sinks are set to PLAYING already
Sebastian Dröge [Wed, 6 Dec 2017 18:36:37 +0000 (20:36 +0200)]
decklinkvideosink: Only start if both sinks are set to PLAYING already

Not only if the video sink is set to PLAYING so far. Also give more
useful debug output about why we don't start, and don't start if already
started.

Also refactor the function to early-return instead of having a huge
if-else block over the whole function.

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agodecklinkaudiosink: Include final flow return in debug output
Sebastian Dröge [Wed, 6 Dec 2017 17:42:42 +0000 (19:42 +0200)]
decklinkaudiosink: Include final flow return in debug output

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agodecklinkaudiosink: Check also against the clock if we run ahead of the clock too...
Sebastian Dröge [Mon, 27 Nov 2017 15:41:52 +0000 (17:41 +0200)]
decklinkaudiosink: Check also against the clock if we run ahead of the clock too much

The buffer level as reported by the Decklink driver is completely
unreliable, and we could otherwise easily run ahead >1s if we're
unlucky.

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agodecklinkaudiosink: Implement resampling/buffer reversing for trick-modes
Sebastian Dröge [Wed, 22 Nov 2017 14:37:12 +0000 (16:37 +0200)]
decklinkaudiosink: Implement resampling/buffer reversing for trick-modes

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agodecklinkaudiosink: Re-implement around GstBaseSink instead of GstAudioBaseSink
Sebastian Dröge [Wed, 8 Nov 2017 17:31:37 +0000 (19:31 +0200)]
decklinkaudiosink: Re-implement around GstBaseSink instead of GstAudioBaseSink

The Decklink and GstAudioBaseSink APIs don't fit very well together,
which causes various problems due to inaccuracies in the clock
calculations and the actual ringbuffer and GStreamer's copy getting of
sync.

Problems are audio drop-outs and A/V sync getting wrong after
pausing/seeking.

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agoAutomatic update of common submodule
Matthew Waters [Thu, 14 Dec 2017 03:49:10 +0000 (14:49 +1100)]
Automatic update of common submodule

From e8c7a71 to 3fa2c9e

6 years agovtenc: fix a warning when building in MacOS 10.12
Josep Torra [Tue, 12 Dec 2017 07:40:33 +0000 (08:40 +0100)]
vtenc: fix a warning when building in MacOS 10.12

vtenc.c:564:20: error: incompatible pointer types passing 'GstVTEnc *' (aka 'struct _GstVTEnc *')
to parameter of type 'GstVideoEncoder *' (aka 'struct _GstVideoEncoder *')

6 years agococoa: fix a warning when building in MacOS 10.12
Josep Torra [Tue, 12 Dec 2017 07:31:47 +0000 (08:31 +0100)]
cocoa: fix a warning when building in MacOS 10.12

gstglwindow_cocoa.m:186:60: error: incompatible pointer types sending 'GstGLContextCocoa *'
(aka 'struct _GstGLContextCocoa *') to parameter of type 'GstGLContext *' (aka 'struct _GstGLContext *')

6 years agogl: display: demote error level at display creation error
Víctor Manuel Jáquez Leal [Fri, 8 Dec 2017 13:46:35 +0000 (14:46 +0100)]
gl: display: demote error level at display creation error

https://bugzilla.gnome.org/show_bug.cgi?id=791391

6 years agoavwait: Added "avwait-status" element message
Vivia Nikolaidou [Fri, 10 Nov 2017 13:56:40 +0000 (15:56 +0200)]
avwait: Added "avwait-status" element message

"avwait-status" is posted when avwait starts or stops passing through
data (e.g. because target-timecode and end-timecode respectively have
been reached). The attached structure includes a "dropping" boolean (set
to TRUE if we are currently dropping data, FALSE otherwise), and a
"running-time" GST_CLOCK_TIME which contains the running time of the
change.

https://bugzilla.gnome.org/show_bug.cgi?id=790170

6 years agomeson test: Enable libs tests
Mathieu Duponchelle [Mon, 16 Oct 2017 17:51:36 +0000 (19:51 +0200)]
meson test: Enable libs tests

https://bugzilla.gnome.org/show_bug.cgi?id=789064

6 years agopkgconfig: Move fixes for move of aggregator to core
Edward Hervey [Fri, 8 Dec 2017 12:54:27 +0000 (13:54 +0100)]
pkgconfig: Move fixes for move of aggregator to core

6 years agoh264parse: make caps writable before modifying them
Tim-Philipp Müller [Thu, 7 Dec 2017 19:14:23 +0000 (19:14 +0000)]
h264parse: make caps writable before modifying them

https://bugzilla.gnome.org/show_bug.cgi?id=790628

6 years agosrt: Post error message for NULL host
Seungha Yang [Thu, 7 Dec 2017 02:02:02 +0000 (11:02 +0900)]
srt: Post error message for NULL host

... instead of crash without any information

https://bugzilla.gnome.org/show_bug.cgi?id=791329

6 years agowaylandsink: Fix memory leak of shm allocator
Nicolas Dufresne [Thu, 7 Dec 2017 01:50:31 +0000 (20:50 -0500)]
waylandsink: Fix memory leak of shm allocator

This fixes conflict resolution error introduced in commit:

  816d115317c522c87297109de781c63b16146493

http://bugzilla.gnome.org/show_bug.cgi?id=790042

6 years agowaylandsink: Fix memory leak of shm allocator.
Shinya Saito [Wed, 1 Nov 2017 09:05:26 +0000 (18:05 +0900)]
waylandsink: Fix memory leak of shm allocator.

gst_allocator_find() needs gst_object_unref() after usage.

https://bugzilla.gnome.org/show_bug.cgi?id=790042

6 years agodashdemux: fix coredump issue with external AdaptationSet
Jun Xie [Sat, 25 Nov 2017 07:35:05 +0000 (15:35 +0800)]
dashdemux: fix coredump issue with external AdaptationSet

fix wrong AdaptationSet list iterator

https://bugzilla.gnome.org/show_bug.cgi?id=790812

6 years agom3u8: Parse and use AVERAGE-BANDWIDTH attribute if available
Hosang Lee [Sat, 25 Nov 2017 13:24:39 +0000 (22:24 +0900)]
m3u8: Parse and use AVERAGE-BANDWIDTH attribute if available

The AVERAGE-BANDWIDTH attribute in the EXT-X-STREAM-INF tag represents
the average segment bit rate of the Variant Stream, while the BANDWIDTH
attribute represents the peak segment bit rate of the Variant Stream.
(https://tools.ietf.org/html/draft-pantos-http-live-streaming-23#section-4.3.4.2)
Using the average bit rate instead of the peak bit rate for variant switching
is more efficient and appropriate. Sometimes due to VBR encoding,
the BANDWIDTH may represent a value way above the average bit rate,
which could result to players not switching to that variant stream
 although network bandwidth is sufficiently available.

https://bugzilla.gnome.org/show_bug.cgi?id=790821

6 years agoexamples: audiomixmatrix: Remove unused part
Wonchul Lee [Sun, 26 Nov 2017 02:46:06 +0000 (11:46 +0900)]
examples: audiomixmatrix: Remove unused part

matrix-value-array property is removed since
18917de9562d0d33cf80ca68c071eee3572d4483 commit applied

https://bugzilla.gnome.org/show_bug.cgi?id=790836

6 years agokmssink: Fix CropMeta support
Nicolas Dufresne [Mon, 4 Dec 2017 16:52:16 +0000 (11:52 -0500)]
kmssink: Fix CropMeta support

We copy the meta's from the original buffer to the wrapper or copied
buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=790473

6 years agokmssink: Enforce pixel aspect ratio when we cannot scale
Nicolas Dufresne [Fri, 1 Dec 2017 21:53:34 +0000 (16:53 -0500)]
kmssink: Enforce pixel aspect ratio when we cannot scale

When we cannot scale, we need to enforce the pixel aspect ratio.
This was partly implemented in the previous patch. Doing this
simplify some of the code.

https://bugzilla.gnome.org/show_bug.cgi?id=784599

6 years agodecklinkvideosink: Wait until scheduled playback is actually stopped before continuing
Sebastian Dröge [Wed, 22 Nov 2017 08:42:37 +0000 (10:42 +0200)]
decklinkvideosink: Wait until scheduled playback is actually stopped before continuing

Otherwise we might "start" again, just to get finally stopped and then
getting errors all over the place.

https://bugzilla.gnome.org/show_bug.cgi?id=790114

6 years agosrt: Fix warning error
Seungha Yang [Wed, 6 Dec 2017 10:15:40 +0000 (19:15 +0900)]
srt: Fix warning error

gstsrt.c: In function ‘gst_srt_client_connect_full’:
gstsrt.c:151:6: error: ‘sock’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
   if (sock != SRT_INVALID_SOCK) {

https://bugzilla.gnome.org/show_bug.cgi?id=791302