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
Tim-Philipp Müller [Tue, 13 Feb 2018 16:43:44 +0000 (16:43 +0000)]
docs: add audiomixer + audiointerleave to plugin docs
Tim-Philipp Müller [Tue, 13 Feb 2018 16:40:19 +0000 (16:40 +0000)]
docs: update plugin docs for recent changes
Tim-Philipp Müller [Tue, 13 Feb 2018 16:38:32 +0000 (16:38 +0000)]
audiomixer, audiointerleave: add to build
https://bugzilla.gnome.org/show_bug.cgi?id=791218
Tim-Philipp Müller [Tue, 13 Feb 2018 16:09:09 +0000 (16:09 +0000)]
GstAudioAggregator: hook up to build
https://bugzilla.gnome.org/show_bug.cgi?id=791218
Tim-Philipp Müller [Tue, 13 Feb 2018 15:56:49 +0000 (15:56 +0000)]
audioaggregator, audiomixer, audiointerleave: move from -bad to -base
https://bugzilla.gnome.org/show_bug.cgi?id=791218
Edward Hervey [Tue, 13 Feb 2018 07:36:30 +0000 (08:36 +0100)]
vorbisdec: Improve "new headers while initialized" handling
If new headers arrive after we are initialized, we need to make
sure that they are indeed valid.
A vorbis bitstream always begins with three header packets and must
be in order.
Also some streams have unframed (invalid?) headers that might
confuse and disrupt the decoding process.
Therefore if ever we see new headers, we accumulate them and once
we get a non-header packet we check them to make sure that:
* We have at least 3 headers
* They are the expected ones (identification, comments and setup)
* They are in order
* Any other "header" is ignored
If those conditions are met, we reset and reconfigure the decoder
https://bugzilla.gnome.org/show_bug.cgi?id=784530
Edward Hervey [Sat, 10 Feb 2018 14:41:10 +0000 (15:41 +0100)]
playbin3: Re-enable buffering message handling
Buffering messages are only sent for the active group (in case there
is more than one).
If the inactive group posts buffering messages we keep the last one
around and will post it once it becomes the playing one.
François Laignel [Fri, 19 Jan 2018 17:40:53 +0000 (18:40 +0100)]
decodebin3: high cpu usage after eos
After eos, decodebin3 enters a loop sending eos events which causes high cpu usage.
https://bugzilla.gnome.org/show_bug.cgi?id=792693
Edward Hervey [Fri, 8 Dec 2017 15:46:21 +0000 (16:46 +0100)]
decodebin3: Handle dual-output of STREAM_START/EOS
In order to flush out multiqueue, we send again a STREAM_START and
then a EOS event.
The problem was that was that we might end up pushing out on the
output of multiqueue (and therefore decodebin3) a series of:
* EOS / STREAM_START / EOS
Apart from the uglyness of such output, If decodebin3 is used with
elements such as concat on their output, they might potentially
block on that second STREAM_START.
In order to make sure we don't end up in that situation we send
a custom STREAM_START event when refreshing multiqueue (which we
drop on the output) and we don't special case EOS events on streams
on which we already got EOS.
At worst we now end up sending at most two EOS on the output of
multiqueue (and decodebin3).
Edward Hervey [Fri, 10 Nov 2017 13:32:13 +0000 (14:32 +0100)]
playbin3: Implement gapless playback
Similar in vein to the playbin2 architecture except that uridecodebin3
are prerolled much earlier and all streams of the same type are
fed through a 'concat' element.
This keeps the philosphy of having all elements connected as soon
as possible.
The 'about-to-finish' signal is emitted whenever one of the uridecodebin
is about to finish, allowing the users to set the next uri/suburi.
The notion of a group being active has changed. It now means that the
uridecodebin3 has been activated, but doesn't mean it is the one
currently being outputted by the sinks (i.e. curr_group and next_group).
This is done via detecting GST_MESSAGE_STREAM_START emission by playsink
and figuring out which group is really playing.
When the current group changes, a new thread is started to deactivate
the previous one and optionnaly fire 'about-to-finish'.
Edward Hervey [Thu, 9 Nov 2017 10:17:13 +0000 (11:17 +0100)]
playbin3: Use uridecodebin3 and link/reconfigure immediately
Apologies for the big commit, but it wasn't really possible to split it
in anything smaller.
* Switch to uridecodebin3 instead of managing urisourcebin and decodebin3
ourselves. No major architectural change with this.
* Reconfigure sinks/outputs when needed. This is possible thanks to the
various streams-related API. Instead of blocking new pads and waiting
for a (fake) no-more-pads to decide what to connect, we instead reconfigure
playsink and the combiners to whatever types are currently selected. All of
this is done in reconfigure_output().
New pads are immediately connected to (combiners and) sinks, allowing
immediate negotiation and usage.
* Since elements are always connected, the "cached-duration" feature is gone
and queries can reach the target elements.
* The auto-plugging related code is currently disabled entirely until
we get the new proper API.
* Store collections at the GstSourceGroup level and not globally
* And more comments a bit everywhere
NOTE: gapless is still not functional, but this opens the way to be able
to handle it in a streams-aware fashion (where several uridecodebin3 can
be active at the same time).
Edward Hervey [Thu, 9 Nov 2017 09:53:24 +0000 (10:53 +0100)]
urisourcebin: Add 'about-to-finish' signal
With push-based sources, urisourcebin will emit this signal when
the stream has been fully consumed.
This signal can be used to know when the source is done providing
data.
Edward Hervey [Thu, 9 Nov 2017 09:45:37 +0000 (10:45 +0100)]
playback: New uridecodebin3 element
In the same vein as old uridecodebin except that it also
accepts a suburi and uses urisourcebin and decodebin3 internally
Edward Hervey [Thu, 9 Nov 2017 10:16:20 +0000 (11:16 +0100)]
playbin3: Remove wrong 'notify'
Those properties doesn't exist on playbin3, don't emit a notify for that
Edward Hervey [Thu, 9 Nov 2017 10:14:29 +0000 (11:14 +0100)]
playbin3: Remove setting 'subtitle-encoding' on decodebin
That property doesn't exist
Edward Hervey [Thu, 9 Nov 2017 10:12:08 +0000 (11:12 +0100)]
playbin3: Clarify documentation of combiner properties
Edward Hervey [Thu, 9 Nov 2017 10:11:12 +0000 (11:11 +0100)]
playbin3: Remove unused define
Edward Hervey [Thu, 7 Dec 2017 14:23:17 +0000 (15:23 +0100)]
decodebin3: Use GST_GROUP_ID_INVALID
Edward Hervey [Fri, 10 Nov 2017 14:01:04 +0000 (15:01 +0100)]
decodebin3: Don't forward already-handling SELECT_STREAMS
Upstream might respond negatively to the event, whereas we actually
handled it.
Edward Hervey [Fri, 8 Dec 2017 16:01:05 +0000 (17:01 +0100)]
decodebin3: Add new about-to-finish signal
Edward Hervey [Thu, 9 Nov 2017 09:46:31 +0000 (10:46 +0100)]
decodebin3: Remove unused definition
Edward Hervey [Wed, 4 Oct 2017 15:42:45 +0000 (17:42 +0200)]
decodebin3: Don't take the lock when creating a new input
We only need to take the input lock when adding/removing
inputs from the list.
Edward Hervey [Mon, 25 Sep 2017 13:24:08 +0000 (15:24 +0200)]
playbin3: Remove unused variable
The lock is never used
Edward Hervey [Thu, 9 Nov 2017 09:52:38 +0000 (10:52 +0100)]
urisourcebin: Remove auto-plugging signals
They were never used and we need a better system
Edward Hervey [Thu, 9 Nov 2017 09:50:30 +0000 (10:50 +0100)]
urisourcebin: Remove ASYNC behaviour
It is not needed in the new streams-aware world
Edward Hervey [Fri, 22 Sep 2017 15:20:35 +0000 (17:20 +0200)]
urisourcebin: Remove 'unknown-type' signal
It was never used and makes no sense in the new streams-based world
Edward Hervey [Fri, 22 Sep 2017 15:13:14 +0000 (17:13 +0200)]
playbin3: Disable autoplug-related code
The signals were never emitted from decodebin3. This needs
switching to a new signalling system
Edward Hervey [Fri, 22 Sep 2017 15:09:43 +0000 (17:09 +0200)]
playbin3: fix "no-more-pads" handling
That signal is never emitted by decodebin3 and is handled differently
Edward Hervey [Fri, 22 Sep 2017 15:04:54 +0000 (17:04 +0200)]
playbin3: Remove duration caching
This is now handled directly via sinks and queries through pads
Edward Hervey [Wed, 4 Oct 2017 15:41:16 +0000 (17:41 +0200)]
parsebin: Remove async behaviour
There's no reason to do async changing
Jan Schmidt [Fri, 2 Feb 2018 02:02:14 +0000 (13:02 +1100)]
glimagesink: Always display with requested stereo display mode
Even if the input is monoscopic, the app might want to display
it in a different layout, to do side-by-side for VR for example,
so if the app changes the output-multiview-mode always use that.
Jan Schmidt [Fri, 26 Jan 2018 11:44:24 +0000 (22:44 +1100)]
tcp/multihandlesink: Handle the case of no caps
Pass data with no caps and no streamheaders without
throwing a bunch of criticals
Matthew Waters [Fri, 9 Feb 2018 06:15:30 +0000 (17:15 +1100)]
gl*bin: fix transfer semantics for the create-element signal
We can either receive an element that is floating or not and need to
accomodate that in the signal return values. Do so by removing the
floating flag.
https://bugzilla.gnome.org/show_bug.cgi?id=792597
Matthew Waters [Fri, 9 Feb 2018 01:32:52 +0000 (12:32 +1100)]
gldownload: remove texture-target field from dmabuf/sysmem caps
https://bugzilla.gnome.org/show_bug.cgi?id=792342
Tim-Philipp Müller [Thu, 8 Feb 2018 17:17:51 +0000 (17:17 +0000)]
meson: make version numbers ints and fix int/string comparison
WARNING: Trying to compare values of different types (str, int).
The result of this is undefined and will become a hard error
in a future Meson release.
Tim-Philipp Müller [Thu, 8 Feb 2018 16:57:53 +0000 (16:57 +0000)]
gl: g-i: expose platform-specific display API in bindings
https://bugzilla.gnome.org/show_bug.cgi?id=786391
Sebastian Cote [Fri, 2 Feb 2018 00:00:23 +0000 (00:00 +0000)]
rtspconnection: also add Content-Type to HTTP POST request when tunnelling
When the GstRTSPConnection class sends a RTSP over HTTP tunnelling
request, the HTTP Content-Type header is missing from the HTTP POST
request.
This isn't a problem with most servers, but there are servers that
rejects the request without there also being a Content-Type header.
RFC 1945:
Any HTTP/1.0 message containing an entity body should include a
Content-Type header field defining the media type of that body.
Apple Dispatch 28:
QuickTime Streaming uses the "application/x-rtsp-tunnelled" MIME
type in both the Content-Type and Accept headers. This reflects
the data type that is expected and delivered by the client and server.
https://bugzilla.gnome.org/show_bug.cgi?id=793110
Matthew Waters [Thu, 8 Feb 2018 10:14:56 +0000 (21:14 +1100)]
gl: remove more deprecated type aliases
Additions on top of
https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=
32a17f313494cbadaf8ec4e337d742e8d7e1b67b
https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=
c8b99139b1ef3f8891548b0f2607a135917c338e
Matthew Waters [Thu, 8 Feb 2018 05:13:23 +0000 (16:13 +1100)]
gl/display/egl: Fix precondition in display_egl_get_from_native
We don't really want type=NONE as input and it was already impossible
for that to occur with the other condtions.
CID #1427144
Nicolas Dufresne [Wed, 7 Feb 2018 19:48:00 +0000 (14:48 -0500)]
video: Fix GRAY10_LE32 depth information
Sebastian Dröge [Wed, 7 Feb 2018 16:40:49 +0000 (18:40 +0200)]
video: Change struct padding from void* to gpointer
gobject-introspection causes inconsistent type information for the
former and we use gpointer everywhere else.
Nicolas Dufresne [Tue, 6 Feb 2018 21:29:11 +0000 (16:29 -0500)]
meson: Enable libs_video unit test
It does not timeout anymore, even though it's a very slow test. For the
context, this test runs routines for a fixes amount of time and prints
the throughput. Which means the test takes more time everytime a pixel
format is added. If that becomes a problem again, we should disable the
benchmarks by default.
Nicolas Dufresne [Tue, 6 Feb 2018 21:16:15 +0000 (16:16 -0500)]
video-format: Fix 10LE32 formats packing function
The source offset (soff) was not incremented for each component and then
each group of 3 components were inverted. This was causing a staircase
effect combined with some noise.
https://bugzilla.gnome.org/show_bug.cgi?id=789876
Philippe Normand [Tue, 6 Feb 2018 16:13:07 +0000 (16:13 +0000)]
glcontext: remove deprecated type alias
Now for real without un-needed comments...
Philippe Normand [Tue, 6 Feb 2018 16:08:47 +0000 (16:08 +0000)]
glcontext: remove deprecated type alias
Tim-Philipp Müller [Sun, 4 Feb 2018 10:22:36 +0000 (11:22 +0100)]
autotools: use -fno-strict-aliasing where supported
https://bugzilla.gnome.org/show_bug.cgi?id=769183
Matthew Waters [Mon, 5 Feb 2018 03:58:06 +0000 (14:58 +1100)]
gl: some annotation fixes
Matthew Waters [Mon, 5 Feb 2018 03:56:07 +0000 (14:56 +1100)]
gl/build/meson: fix gl_api variable names
Tim-Philipp Müller [Wed, 22 Feb 2017 10:48:55 +0000 (10:48 +0000)]
tests: sdp: relicense code snippet from GPLv3 to LGPLv2.1+
Relicense with approval from Jose and Miguel. Code snippet
was supposed to be LGPL from the beginning.
https://bugzilla.gnome.org/show_bug.cgi?id=697808#c14
https://bugzilla.gnome.org/show_bug.cgi?id=697808#c15
Matthew Waters [Wed, 17 Jan 2018 04:24:20 +0000 (15:24 +1100)]
glmemory: fixup GL_RGB565 usage when performing texsubimage
An additional change for the texsubimage use case on top of
https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=
c2b2c68beaddbea0ec4fe7b099507cc492f6dd7c
https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=
ea6bed111bab9b394d787f7760c6a3b953630d3a
https://bugzilla.gnome.org/show_bug.cgi?id=783066
https://bugzilla.gnome.org/show_bug.cgi?id=792584
Tim-Philipp Müller [Thu, 1 Feb 2018 11:21:19 +0000 (11:21 +0000)]
pkgconfig: only install gstreamer-gl-1.0.pc if OpenGL support was built
https://bugzilla.gnome.org/show_bug.cgi?id=793039
Edward Hervey [Thu, 1 Feb 2018 09:40:28 +0000 (10:40 +0100)]
oggdemux: Handle invalid-sized packets
On invalid packets there is the possibility we might end up wanting
to trim/offset more than what is available.
oss-fuzz issue #5866
Tim-Philipp Müller [Tue, 30 Jan 2018 20:33:36 +0000 (20:33 +0000)]
meson: use -fno-strict-aliasing if supported
https://bugzilla.gnome.org/show_bug.cgi?id=769183
Tim-Philipp Müller [Tue, 30 Jan 2018 20:32:44 +0000 (20:32 +0000)]
meson: use built-in pic kwarg when building static helper libs
instead of passing -fPIC manually.
Nicolas Dufresne [Mon, 29 Jan 2018 12:57:56 +0000 (12:57 +0000)]
glimagesink: Allow resetting render rectangle
As documented, passing -1 to x and/or y should reset the render
rectangle to the window/display size.
https://bugzilla.gnome.org/show_bug.cgi?id=792798
Nicolas Dufresne [Mon, 29 Jan 2018 12:45:06 +0000 (12:45 +0000)]
glimagesink: Add render-rectangle property
This allow controlling the render rectangle from gst-launch-1.0.
https://bugzilla.gnome.org/show_bug.cgi?id=792798
Nicolas Dufresne [Tue, 23 Jan 2018 20:04:21 +0000 (15:04 -0500)]
xvimagesink: Allow changing render-rectangle through property
This also enables setting the render rectangle before the window
is provided or created.
https://bugzilla.gnome.org/show_bug.cgi?id=792798
Nicolas Dufresne [Mon, 22 Jan 2018 20:40:32 +0000 (15:40 -0500)]
video-overlay: Add helpers for render-rectangle property
This is a set of helper that makes it easy to enable the render
rectangle to be controllable through a property.
https://bugzilla.gnome.org/show_bug.cgi?id=792798
Nicolas Dufresne [Fri, 3 Nov 2017 16:18:27 +0000 (12:18 -0400)]
video: Add NV16_10LE32 support
This adds a 10 bit variant for NV16 packed into 32 bits little endian
words. The MSB 2 bits are padding. This format is used on Xilinx SoC and
identified with the FOURCC XV20.
https://bugzilla.gnome.org/show_bug.cgi?id=789876
Nicolas Dufresne [Fri, 3 Nov 2017 16:11:58 +0000 (12:11 -0400)]
video: Add GRAY10_LE32 support
This add a 10bit variant of gray scale packed into 32bits little endian
words. The MSB 2 bits are padding and should be ignored. This format is
used on Xilinx SoC and is identified with the FOURCC XV10.
https://bugzilla.gnome.org/show_bug.cgi?id=789876
Nicolas Dufresne [Wed, 1 Nov 2017 21:26:31 +0000 (17:26 -0400)]
video: Add NV12_10LE32 support
This adds a 10bit variant for NV12 which packs 3 10bit components
into little endian 32bit words. The MSB 2 bits are padding and should be
ignored. This format is used on Xilinx SoC and is identified with there
with the FOURCC XV15
https://bugzilla.gnome.org/show_bug.cgi?id=789876
Tim-Philipp Müller [Thu, 25 Jan 2018 18:39:11 +0000 (18:39 +0000)]
subparse: fix pushing out of last chunk if last line has no newline
With playbin the last subtitle chunk would not get displayed
if the last chunk was missing a newline at the end. This is
because streamsynchronizer will hold back the EOS event until
the audio and video streams are finished too, so subparse
would never forcefully push out the last chunk until the very
end when it is too late.
We get a STREAM_GROUP_DONE event from streamsynchronizer however,
so handle that like EOS and force out any remaining text then.
https://bugzilla.gnome.org/show_bug.cgi?id=771853