Carlos Rafael Giani [Sun, 4 Mar 2018 15:41:14 +0000 (16:41 +0100)]
gl/gbm: Initialize window handle (= gbm surface) like other window systems
https://bugzilla.gnome.org/show_bug.cgi?id=793997
Carlos Rafael Giani [Thu, 22 Mar 2018 06:56:28 +0000 (07:56 +0100)]
viv-fb: Include gstglfuncs.h to fix cross compilation errors
https://bugzilla.gnome.org/show_bug.cgi?id=794589
Nicolas Dufresne [Wed, 21 Mar 2018 22:15:49 +0000 (18:15 -0400)]
dmabufallocator: Fix build if LINUX_DMA_BUF_H is missing
Nicolas Dufresne [Sat, 10 Mar 2018 02:24:52 +0000 (21:24 -0500)]
allocators: Add DMABuf synchronization
When doing CPU Access, some architecture may require caches to be
synchronize before use. Otherwise, some visual artifact may be
visible, as the CPU modification may still resides in cache.
https://bugzilla.gnome.org/show_bug.cgi?id=794216
Sebastian Dröge [Wed, 21 Mar 2018 08:27:04 +0000 (10:27 +0200)]
video: Set correct value in g-i annotations for tile related mask constants
Sebastian Dröge [Wed, 21 Mar 2018 08:25:43 +0000 (10:25 +0200)]
video: Include gstvideoaffinetransformationmeta.h in video.h
Sebastian Dröge [Wed, 21 Mar 2018 08:21:41 +0000 (10:21 +0200)]
pbutils: Include gstaudiovisualizer.h in pbutils.h
Tim-Philipp Müller [Tue, 20 Mar 2018 09:15:37 +0000 (09:15 +0000)]
Back to development
Tim-Philipp Müller [Mon, 19 Mar 2018 20:15:02 +0000 (20:15 +0000)]
Release 1.14.0
Tim-Philipp Müller [Mon, 19 Mar 2018 20:15:02 +0000 (20:15 +0000)]
Update docs
Edward Hervey [Sat, 17 Mar 2018 05:33:38 +0000 (06:33 +0100)]
oggstream: protect against out-of-bounds read
We need at least 17 bytes of data for a valid flac header
oss-fuzz #6974
Tim-Philipp Müller [Fri, 16 Mar 2018 09:28:44 +0000 (09:28 +0000)]
tests: audiomixer: remove unistd.h include
Not needed and breaks the build with MVSC.
Sebastian Dröge [Thu, 15 Mar 2018 07:58:11 +0000 (09:58 +0200)]
audiostreamalign: Mark the whole type as new in 1.14
Sebastian Dröge [Tue, 13 Mar 2018 21:09:58 +0000 (23:09 +0200)]
pkg-config: Add orc-0.4 to Requires.private of gstreamer-audio and gstreamer-video
https://bugzilla.gnome.org/show_bug.cgi?id=794307
Tim-Philipp Müller [Tue, 13 Mar 2018 19:13:18 +0000 (19:13 +0000)]
Release 1.13.91
Tim-Philipp Müller [Tue, 13 Mar 2018 19:13:18 +0000 (19:13 +0000)]
Update docs
Tim-Philipp Müller [Tue, 13 Mar 2018 13:49:42 +0000 (13:49 +0000)]
meson: install new audio-prelude.h
Tim-Philipp Müller [Tue, 13 Mar 2018 11:56:59 +0000 (11:56 +0000)]
docs: update api decorators to ignore
Tim-Philipp Müller [Tue, 13 Mar 2018 11:48:31 +0000 (11:48 +0000)]
video: GST_EXPORT -> GST_VIDEO_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 11:32:02 +0000 (11:32 +0000)]
tag: GST_EXPORT -> GST_TAG_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 11:27:11 +0000 (11:27 +0000)]
sdp: GST_EXPORT -> GST_SDP_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 11:23:21 +0000 (11:23 +0000)]
rtsp: GST_EXPORT -> GST_RTSP_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 11:17:58 +0000 (11:17 +0000)]
rtp: GST_EXPORT -> GST_RTP_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 11:13:08 +0000 (11:13 +0000)]
riff: GST_EXPORT -> GST_RIFF_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 11:08:34 +0000 (11:08 +0000)]
pbutils: GST_EXPORT -> GST_PBUTILS_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 10:57:15 +0000 (10:57 +0000)]
gl: GST_EXPORT -> GST_GL_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 10:43:20 +0000 (10:43 +0000)]
fft: GST_EXPORT -> GST_FFT_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 10:36:56 +0000 (10:36 +0000)]
audio: GST_EXPORT -> GST_AUDIO_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 10:28:21 +0000 (10:28 +0000)]
app: GST_EXPORT -> GST_APP_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Tim-Philipp Müller [Tue, 13 Mar 2018 10:19:16 +0000 (10:19 +0000)]
allocators: GST_EXPORT -> GST_ALLOCATORS_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
Mathieu Duponchelle [Mon, 12 Mar 2018 15:23:02 +0000 (16:23 +0100)]
audioaggregator: fix channel-mask negotiation
When outputting more than two channels, a channel-mask has to be
specified in the output caps.
We follow the same heuristic as other cases, when downstream
does not specify a channel-mask, we use that of the first
configured pad, and if there was none we generate a fallback
mask.
https://bugzilla.gnome.org/show_bug.cgi?id=794257
Edward Hervey [Mon, 12 Mar 2018 12:38:07 +0000 (13:38 +0100)]
playback: Remove subtitle-encoding property on uridecodebin3
For now, until we found a more future-proof solution
Tim-Philipp Müller [Sun, 11 Mar 2018 22:57:02 +0000 (22:57 +0000)]
docs: video: fix typo and add since marker
Tim-Philipp Müller [Sun, 11 Mar 2018 22:45:32 +0000 (22:45 +0000)]
docs: libs: add another missing symbol
Tim-Philipp Müller [Sun, 11 Mar 2018 19:06:45 +0000 (19:06 +0000)]
docs: add video region of interest add/get parameter api to docs
Thibault Saunier [Sun, 11 Mar 2018 15:13:32 +0000 (12:13 -0300)]
audio: Add audioaggregator.h in audio.h
Tim-Philipp Müller [Thu, 8 Mar 2018 01:01:53 +0000 (01:01 +0000)]
docs: add GstPhysMemoryAllocator to docs
Tim-Philipp Müller [Wed, 7 Mar 2018 18:50:05 +0000 (18:50 +0000)]
Revert "alsasrc: lock calls to snd_pcm_delay() with mutex as in alsasink"
This reverts commit
4f88125b3ddc15367d528e850cc27739f5bb27fa.
This seems to have undesirable side-effects and needs more
investigation first.
https://bugzilla.gnome.org/show_bug.cgi?id=746015
Tim-Philipp Müller [Mon, 5 Mar 2018 19:57:55 +0000 (19:57 +0000)]
gl: only enable gbm backend if gudev is available
gudev/gudev.h is included unconditionally, so only enable
the gbm backend if gudev was actually found. This also
matches the meson build behaviour.
Should fix build on GNOME SDK builder.
Tim-Philipp Müller [Sat, 3 Mar 2018 22:07:15 +0000 (22:07 +0000)]
Release 1.13.90
Tim-Philipp Müller [Sat, 3 Mar 2018 22:07:15 +0000 (22:07 +0000)]
Update docs
Edward Hervey [Fri, 2 Mar 2018 14:21:25 +0000 (15:21 +0100)]
pkgconfig: Add private zlib dependency for libgsttag
Fixes issues with static application builds (which might not know
they need to link with zlib when using a libgsttag that was compiled
with it).
https://bugzilla.gnome.org/show_bug.cgi?id=793989
Mathieu Duponchelle [Thu, 1 Mar 2018 17:07:37 +0000 (18:07 +0100)]
meson: enable more warnings
https://bugzilla.gnome.org/show_bug.cgi?id=793960
Nicolas Dufresne [Thu, 1 Mar 2018 04:12:39 +0000 (23:12 -0500)]
videodecoder: Reset QoS time after pushing segment
This fixes playbin gapless playback. An ancient QoS time was used and
would lead to all frames being dropped.
https://bugzilla.gnome.org/show_bug.cgi?id=668995
Mathieu Duponchelle [Wed, 28 Feb 2018 23:34:06 +0000 (00:34 +0100)]
Port to latest GstAggregator segment API
The aggregator segment is now exposed on the src pad
https://bugzilla.gnome.org/show_bug.cgi?id=793944
Mathieu Duponchelle [Wed, 28 Feb 2018 21:12:57 +0000 (22:12 +0100)]
audioaggregator: remove GstAudioAggregator->info
As we now require subclasses to use a subclass of
GstAudioAggregatorPad, we can reuse its info field
https://bugzilla.gnome.org/show_bug.cgi?id=793943
Tim-Philipp Müller [Thu, 1 Mar 2018 12:43:25 +0000 (12:43 +0000)]
tests: tags: add unit test for ID3 v2.4 extended headers
https://bugzilla.gnome.org/show_bug.cgi?id=792983
Edward Hervey [Mon, 12 Feb 2018 15:26:01 +0000 (16:26 +0100)]
id3v2: re-fix handling of v2.4 extended headers
The various id3v2 specs handle the extended header sizes differently
(because hey, it wouldn't be fun otherwise).
http://id3.org/id3v2.3.0 states:
"Where the 'Extended header size', currently 6 or 10 bytes, excludes
itself."
http://id3.org/id3v2.4.0-structure states:
Extended header size 4 * %0xxxxxxx
Number of flag bytes $01
Extended Flags $xx
Where the 'Extended header size' is the size of the whole extended
header, stored as a 32 bit synchsafe integer. An extended header can
thus never have a size of fewer than six bytes.
So in id3v2.4.0 it's the *whole* extended header size (a-la ISOBMFF
atom), whereas in id3v2.3.0 it's the extended header size *excluding*
those 4 initial bytes.
And for other versions, god knows..
Fixes regression introduced in commit
da607005.
https://bugzilla.gnome.org/show_bug.cgi?id=792983
Mathieu Duponchelle [Wed, 28 Feb 2018 17:13:10 +0000 (18:13 +0100)]
audioaggregator: refactor conversion API
For the rationale, see:
https://bugzilla.gnome.org/show_bug.cgi?id=793917
Also test audiomixer conversion of current output buffer
Jan Schmidt [Tue, 27 Feb 2018 12:34:03 +0000 (23:34 +1100)]
glcolorconvert: Fix a typo in a debug message
Jan Schmidt [Tue, 27 Feb 2018 07:28:16 +0000 (18:28 +1100)]
glfilter: Support non-2D texture targets
Allow for sub-classes to change pad templates to
support other texture targets, and bind input textures
accordingly.
When setting the caps, also store the texture target.
By default, glfilter only reports 2D texture targets
in the default caps, but sub-classes can change that
and it would be nice if they could easily find out
which texture targets were negotiated.
This adds 2 fields to the public struct, but since
it's unreleased -base API, it's not an ABI break.
Sebastian Dröge [Wed, 28 Feb 2018 13:22:38 +0000 (15:22 +0200)]
audioaggregator: Document that the pad's audio info is read-only and needs the object lock
Also fix indentation in the header a bit.
Víctor Manuel Jáquez Leal [Tue, 27 Feb 2018 20:07:33 +0000 (14:07 -0600)]
m4: fix variable value access
Víctor Manuel Jáquez Leal [Tue, 27 Feb 2018 15:48:23 +0000 (09:48 -0600)]
roi-meta: duplicate params when copying meta
When copying the meta the params list should be copy too into the
new meta.
https://bugzilla.gnome.org/show_bug.cgi?id=793883
Nicolas Dufresne [Tue, 27 Feb 2018 18:14:26 +0000 (13:14 -0500)]
meson: Don't install GL GBM headers
Nicolas Dufresne [Tue, 27 Feb 2018 18:12:59 +0000 (13:12 -0500)]
gl: Move DRM_CFLAGS into gst-gl.m4
Nicolas Dufresne [Mon, 26 Feb 2018 12:46:26 +0000 (07:46 -0500)]
gl: Add missing gbm directory to dist dir
This fixes make distcheck
Carlos Rafael Giani [Sun, 25 Feb 2018 13:16:44 +0000 (14:16 +0100)]
gl: Add DRM cflags
This prevents cross compilation errors like:
usr/include/xf86drm.h:40:10: fatal error: drm.h: No such file or directory
These are caused because gstgldisplay_gbm.h includes xf86drm.h .
https://bugzilla.gnome.org/show_bug.cgi?id=793837
Sebastian Dröge [Mon, 26 Feb 2018 09:55:46 +0000 (11:55 +0200)]
pbutils: Fix compilation of last commit
Thiago Santos [Sun, 25 Feb 2018 18:52:46 +0000 (10:52 -0800)]
pbutils: Move locale dir initialization to a separate function and do lazy initialization
It is the only thing gst_pb_utils_init() does and it could be
automatically called from the places in pbutils it is needed.
After 1.14 we should deprecate gst_pb_utils_init().
https://bugzilla.gnome.org/show_bug.cgi?id=793611
Nicolas Dufresne [Fri, 23 Feb 2018 21:39:32 +0000 (16:39 -0500)]
gl: Add meson support for GBM backend
https://bugzilla.gnome.org/show_bug.cgi?id=782923
Carlos Rafael Giani [Fri, 23 Feb 2018 18:59:45 +0000 (19:59 +0100)]
gl: Add Mesa3D GBM backend
This makes it possible to use the GStreamer OpenGL elements without a
windowing system if a libdrm- and Mesa3D-supported GPU is present
https://bugzilla.gnome.org/show_bug.cgi?id=782923
Carlos Rafael Giani [Fri, 23 Feb 2018 16:09:49 +0000 (17:09 +0100)]
configure: Add configure checks for libdrm and gudev
https://bugzilla.gnome.org/show_bug.cgi?id=782923
Jan Schmidt [Fri, 23 Feb 2018 08:36:42 +0000 (19:36 +1100)]
glimagesink: Correct PAR in output caps when transforming
When doing a 3D/multiview transformation and rescaling to
match the output window size, the resulting PAR may
not match the input any more and needs recalculating,
or else the GstSample reported to client-draw has the
wrong PAR.
Nicolas Dufresne [Thu, 22 Feb 2018 21:11:20 +0000 (16:11 -0500)]
roi-meta: Fix bad doc comment syntax
Guillaume Desmottes [Fri, 9 Feb 2018 13:45:08 +0000 (14:45 +0100)]
videometa: add support for downstream parameters to ROI meta
The current GstVideoRegionOfInterestMeta API allows elements to detect
and name ROI but doesn't tell anything about how this information is
meant to be consumed by downstream elements.
Typically, encoders may want to tweak their encoding settings for a
given ROI to increase or decrease their quality.
Each encoder has its own set of settings so that's not something that
can be standardized.
This patch adds encoder-specific parameters to the meta which can be
used to configure the encoding of a specific ROI.
A typical use case would be: source ! roi-detector ! encoder
with a buffer probe on the encoder sink pad set by the application.
Thanks to the probe the application will be able to tell to the encoder
how this specific region should be encoded.
Users could also develop their specific roi detectors meant to be used with a
specific encoder and directly putting the encoder parameters when
detecting the ROI.
https://bugzilla.gnome.org/show_bug.cgi?id=793338
Mikhail Fludkov [Fri, 17 Nov 2017 01:05:33 +0000 (02:05 +0100)]
rtpbuffer.h: Add new RTPBuffer flags
These flags will be used for Forward Error Correction purposes
https://bugzilla.gnome.org/show_bug.cgi?id=792695
Tim-Philipp Müller [Tue, 20 Feb 2018 11:52:43 +0000 (11:52 +0000)]
meson: fix multi-line string
https://bugzilla.gnome.org/show_bug.cgi?id=793629
Thiago Santos [Mon, 19 Feb 2018 17:57:48 +0000 (09:57 -0800)]
pbutils: add some missing gi annotations
For allow-none parameters
Tim-Philipp Müller [Mon, 19 Feb 2018 17:50:51 +0000 (17:50 +0000)]
tests: videoscale: simplify test and make it more robust
test_negotiation would occasionally time out, for unknown reasons.
Simplify the test setup and get rid of the main loop, busses, and
notify signals. With this I can no longer easily reproduce the
timeout. Fingers crossed.
Tim-Philipp Müller [Thu, 1 Feb 2018 19:25:49 +0000 (19:25 +0000)]
appsrc: don't signal the GCond if no one is waiting on it
Performance optimisation: Keep track whenever the streaming
thread or the application thread are waiting on the GCond for
more space or new data, and only signal on the GCond if someone
is actually waiting. Avoids unnecessary syscalls and thus
context switches.
Tim-Philipp Müller [Thu, 1 Feb 2018 01:22:21 +0000 (01:22 +0000)]
appsrc: use GstQueueArray instead of GQueue for internal item queue
Performance optimisation.
Avoids alloc/free churn for the queue's list nodes.
Depends on new API in GstQueueArray in core.
Tim-Philipp Müller [Wed, 31 Jan 2018 20:19:47 +0000 (20:19 +0000)]
appsink: don't signal the GCond if no one is waiting on it
Performance optimisation: Keep track whenever the streaming
thread or the application thread are waiting on the GCond
for more space or new data, and only signal on the GCond if
someone is actually waiting. Avoids unnecessary syscalls and
thus context switches.
Tim-Philipp Müller [Wed, 31 Jan 2018 20:11:41 +0000 (20:11 +0000)]
appsink: use GstQueueArray instead of GQueue for internal item queue
Performance optimisation.
Avoids alloc/free churn for the queue's list nodes.
Tim-Philipp Müller [Wed, 31 Jan 2018 20:07:06 +0000 (20:07 +0000)]
icles: add appsink and appsrc benchmarks
These are very much artificial of course, but got to
measure something. appsink one contains lots of buffer
creation/free overhead, while appsrc one does not.
Sebastian Dröge [Sun, 18 Feb 2018 09:38:25 +0000 (11:38 +0200)]
m4: gmodule-no-export-2.0 is needed for everything using the g_module_*() API
While it is pulled in via the GLib check, GLIB_LIBS is not pulled into
any of the places using the API.
Sebastian Dröge [Sat, 17 Feb 2018 16:34:58 +0000 (18:34 +0200)]
gl: Link to libgstallocators for the dmabuf allocator
Víctor Manuel Jáquez Leal [Thu, 15 Feb 2018 10:21:34 +0000 (11:21 +0100)]
gl/wayland: Memory leak when display couldn't connect
When trying to create a wayland display, it may fail because there
is not actually display to connect. It this case NULL is returned
but the created instance is not freed.
This patch unrefs the failed display.
https://bugzilla.gnome.org/show_bug.cgi?id=793483
Mathieu Duponchelle [Thu, 15 Feb 2018 20:08:08 +0000 (21:08 +0100)]
audio-converter: fix declaration-after-statement
Mathieu Duponchelle [Thu, 15 Feb 2018 19:00:42 +0000 (20:00 +0100)]
audio-converter: add a convenience conversion method
This is useful from python bindings
https://bugzilla.gnome.org/show_bug.cgi?id=793492
Mathieu Duponchelle [Thu, 15 Feb 2018 18:57:44 +0000 (19:57 +0100)]
gst_audio_converter_new: update annotations
https://bugzilla.gnome.org/show_bug.cgi?id=793492
Mathieu Duponchelle [Thu, 15 Feb 2018 18:56:46 +0000 (19:56 +0100)]
AudioConverter: register as boxed type
https://bugzilla.gnome.org/show_bug.cgi?id=793492
Mathieu Duponchelle [Thu, 15 Feb 2018 18:54:34 +0000 (19:54 +0100)]
audio-info: annotate gst_audio_info_set_format
https://bugzilla.gnome.org/show_bug.cgi?id=793492
Tim-Philipp Müller [Thu, 15 Feb 2018 19:44:17 +0000 (19:44 +0000)]
Back to development
Tim-Philipp Müller [Thu, 15 Feb 2018 17:01:15 +0000 (17:01 +0000)]
Release 1.13.1
Tim-Philipp Müller [Thu, 15 Feb 2018 16:58:17 +0000 (16:58 +0000)]
docs: update plugin docs
Tim-Philipp Müller [Thu, 15 Feb 2018 12:51:10 +0000 (12:51 +0000)]
configure: fix build with --disable-external
Tim-Philipp Müller [Thu, 15 Feb 2018 11:37:46 +0000 (11:37 +0000)]
po: update translations
Edward Hervey [Thu, 15 Feb 2018 06:14:20 +0000 (07:14 +0100)]
Update disted backup ORC files
Mathieu Duponchelle [Thu, 15 Feb 2018 00:14:52 +0000 (01:14 +0100)]
gstaudiopack.orc: pack_u32be_swap: actually swap
Fixes:
gst-launch-1.0 audiotestsrc ! audio/x-raw, format=U32BE ! \
audioconvert ! autoaudiosink
Nicolas Dufresne [Wed, 14 Feb 2018 19:39:32 +0000 (14:39 -0500)]
doc: Remove obsolete Since 0.10.X marks
Nicolas Dufresne [Wed, 14 Feb 2018 19:37:52 +0000 (14:37 -0500)]
doc: Add per version newly added API indexes
Nicolas Dufresne [Wed, 14 Feb 2018 19:16:14 +0000 (14:16 -0500)]
doc: Fix since marker in dmabuf to match a stable release
Nicolas Dufresne [Wed, 14 Feb 2018 19:11:47 +0000 (14:11 -0500)]
doc: Remove extra . after Since marker
Nicolas Dufresne [Wed, 14 Feb 2018 19:10:22 +0000 (14:10 -0500)]
doc: Fix Since 1.X marker on new video formats
Nicolas Dufresne [Wed, 14 Feb 2018 19:07:54 +0000 (14:07 -0500)]
doc: Include new GstVideoOverlay API
Philippe Normand [Wed, 14 Feb 2018 10:21:49 +0000 (10:21 +0000)]
playbin3: fix source-setup signal emission
Previous code would pass 0 as source element.
Tim-Philipp Müller [Wed, 14 Feb 2018 00:22:38 +0000 (00:22 +0000)]
vorbisparse: error out when headers are missing
https://bugzilla.gnome.org/show_bug.cgi?id=791606
Tim-Philipp Müller [Tue, 13 Feb 2018 17:16:53 +0000 (17:16 +0000)]
audioaggregator: remove declaration for function that doesn't exist
Tim-Philipp Müller [Tue, 13 Feb 2018 17:10:22 +0000 (17:10 +0000)]
docs: add GstAudioAggregator to docs