Stefan Sauer [Fri, 14 Jul 2017 06:09:25 +0000 (08:09 +0200)]
audiomixer: add a helper for buffer creation
This makes the test setup easier to read.
Stefan Sauer [Thu, 13 Jul 2017 20:00:58 +0000 (22:00 +0200)]
aggregator: remove duplicated code fragment
This code already runs above when (event || query).
Stefan Sauer [Thu, 13 Jul 2017 19:55:55 +0000 (21:55 +0200)]
aggregator: code cleanups
Fix comment typos, some copy'n'paste in logging. Add more doc comments.
Stefan Sauer [Thu, 13 Jul 2017 19:54:55 +0000 (21:54 +0200)]
audiomixer: use test helper once more
Edward Hervey [Thu, 13 Jul 2017 10:57:12 +0000 (12:57 +0200)]
adaptivedemux: Workaround for live seek ranges when advancing
This is a workaround for a regression introduced by
f4190a49c04f1d5d174cebba0bc9a03a7ec721c2
( adaptivedemux: Check live seeking range more often )
The goal of the previous commit was to be able to cope with non-1.0
rates on live streams which have a "seeking window" (i.e. the server
keeps around quite a bit of the live stream so you can seek back into
it).
Without that commit, two different kind of issues would happen:
* When doing reverse playback, you would never check whether you
are outside of the seekable region. And would then continuously
try to download fragments that are no longer present.
* When doing fast forward, you would end up requesting fragments
which are not present yet.
In order to determine whether one was *really* outside of the seekable
window, we check whether the current stream position is still
within the seekable region.
The *problem* though with that commit is that it assumes that subclasses
will return continuously updated seeking ranges (i.e. dependent on the
current time), which is *NOT* the case.
For example:
* dashdemux does use the current UTC to determine the seekable region
* hlsdemux uses the values from the last updated manifest
Therefore if one downloads fragments faster than realtime, for HLS
we would end up at the end of the last manifest seekable range, and
the previous commit would consider the stream as being ended... which
is not the case.
In the long run, we need to figure out a way to cope with non-1.0
rates on live streams for all types of stream (including HLS).
https://bugzilla.gnome.org/show_bug.cgi?id=783075
Thiago Santos [Tue, 30 May 2017 05:47:10 +0000 (22:47 -0700)]
dashdemux: update manifest streams correctly if pads aren't exposed
In some cases, it is possible that we need to update the manifest before
pads have been exposed at all. If there are no current pads, just expose
the next prepared streams. This doesn't handle the case where a manifest
update would happen while a live streams is changing periods, which is a
type of use case that we're unaware of real usages yet.
https://bugzilla.gnome.org/show_bug.cgi?id=783028
Thiago Santos [Sat, 13 May 2017 22:17:57 +0000 (15:17 -0700)]
adaptivedemux: small refactor to avoid repeated code
Move segment event update to a function
https://bugzilla.gnome.org/show_bug.cgi?id=773159
Edward Hervey [Tue, 9 May 2017 09:41:49 +0000 (11:41 +0200)]
adaptivedemux: Handle prepared streams on seeks
This is a race that was exposed by the {hls|dash}.scrub_forward_seeking
validate test.
The "race" is that a subclass might want to change format, causing
a new stream to be created (but not exposed/switched yet) and put on the
prepared_streams list. That stream will have values (including pending
segment) from the pre-seek state.
Before the stream is exposed/switched, a new seek comes in and the stream
values get updated ... but the ones that will be changed don't get updated
causing them to push out wrong segments once they are exposed.
https://bugzilla.gnome.org/show_bug.cgi?id=773159
Jan Schmidt [Wed, 12 Jul 2017 05:29:32 +0000 (15:29 +1000)]
qt: Use a proxy object for access to the QML widget
QML can destroy the video widget at any time, leaving
us with a dangling pointer. Use a lock and a proxy
object to cope with that, and block in the widget
destructor if there are ongoing calls into the widget.
Jan Schmidt [Thu, 6 Jul 2017 11:09:50 +0000 (21:09 +1000)]
glfilter: Remove hard-coded pad templates
Add a function to install the default RGBA pad templates,
but don't make them required so that there can be
GstGLFilter sub-classes with different input/output
caps if they want. Remove the hard-coded RGBA restriction in
the set_caps_features call, as it will be taken care
of by intersecting with the pad templates.
Update all the sub-classes to match
Jan Schmidt [Fri, 7 Jul 2017 04:41:17 +0000 (14:41 +1000)]
glupload: Don't throw assertions on invalid allocation query
basesrc can send an allocation query with no caps, in which
case we should just fail it without throwing assertions.
Sebastian Dröge [Tue, 11 Jul 2017 17:54:25 +0000 (20:54 +0300)]
mxfdemux: Create index table arrays with a big enough size
Sebastian Dröge [Tue, 11 Jul 2017 17:53:22 +0000 (20:53 +0300)]
mxfdemux: Initialize index table entries completely in all cases
When seeking backwards into a previously unseen location, we wouldn't
fully initialize them and playback would fail later.
Olivier Crête [Tue, 11 Jul 2017 16:43:46 +0000 (12:43 -0400)]
openexr: Header are not C++11, force C++98
Georg Lippitsch [Fri, 12 May 2017 12:39:54 +0000 (14:39 +0200)]
decklinkvideosrc: Add custom memory allocator
The default memory allocator of the decklink library allocates
a fixed pool of buffers, and the number of buffers is unknown.
This makes it impossible do useful queuing downstream. The new
memory allocator can create an unlimited number of buffers,
giving all queuing features one would expect from a live source.
https://bugzilla.gnome.org/show_bug.cgi?id=782556
Philippe Renon [Mon, 10 Jul 2017 15:35:32 +0000 (17:35 +0200)]
directsoundsrc: Properly pass pLockedBuffer by reference when calling IDirectSoundCaptureBuffer_Lock
https://bugzilla.gnome.org/show_bug.cgi?id=784755
Stefan Sauer [Mon, 10 Jul 2017 19:08:09 +0000 (21:08 +0200)]
audiomixer: more test cleanups
Port over the test helpers from the adder tests.
Stefan Sauer [Mon, 10 Jul 2017 18:16:10 +0000 (20:16 +0200)]
audiomixer: refactor test
Apply cleanups from the adder tests. Use a fixture for common code.
Jussi Kukkonen [Wed, 5 Jul 2017 08:07:05 +0000 (11:07 +0300)]
vulkan: Use the generated version of vkconfig.h
Build fails in ext/vulkan/xcb and ext/vulkan/wayland when:
* building from tarball
* building out-of-tree
* Only one WSI integration (xcb or wayland) is enabled by configure.ac
This is because vkconfig.h from source directory gets used instead
of the generated one.
Add the correct build directory to "-I". Use angle bracket
include in vkapi.h so that it actually looks in the include search
path instead of defaulting to the same (source tree) directory.
https://bugzilla.gnome.org/show_bug.cgi?id=784539
Jussi Kukkonen [Wed, 5 Jul 2017 08:00:42 +0000 (11:00 +0300)]
vkdisplay: Use ifdef for platform specific defines
VK_KHR_*_SURFACE_EXTENSION_NAME are only available when corresponding
WSI is enabled.
https://bugzilla.gnome.org/show_bug.cgi?id=784539
Víctor Manuel Jáquez Leal [Mon, 10 Jul 2017 11:27:40 +0000 (13:27 +0200)]
kmssink: initialize variable
Otherwise clang complains:
gstkmssink.c:1192:7: warning: variable 'buf' is used uninitialized
whenever 'if' condition is true [-Wsometimes-uninitialized]
Aaron Boxer [Tue, 13 Jun 2017 03:36:05 +0000 (23:36 -0400)]
openjpegdec: support grayscale with alpha channel
https://bugzilla.gnome.org/show_bug.cgi?id=783591
Aaron Boxer [Mon, 12 Jun 2017 13:47:49 +0000 (09:47 -0400)]
jpeg2000parse: allow parsing when current caps are null
In this case, we assume that the format is jpc, and we infer the color
space from the number of components. This allows the parser to process a
jpc disk file coming from a filesrc element.
https://bugzilla.gnome.org/show_bug.cgi?id=783291
Mark Nauwelaerts [Sun, 2 Jul 2017 09:55:13 +0000 (11:55 +0200)]
mpegdemux: segment seek flag is not relevant when checking for EOS
It is only relevant in deciding whether or not send SEGMENT_DONE.
In this case, not detecting EOS leads to a busy loop when encountering
the originally recorded end-of-file of a file that is still growing.
Nicolas Dufresne [Fri, 7 Jul 2017 21:20:38 +0000 (17:20 -0400)]
Revert "adaptivedemux: Allow application to force EOS"
This reverts commit
8a070cf9aff8a122b1a52597441bab61c0476ef9.
Nicolas Dufresne [Fri, 7 Jul 2017 16:13:27 +0000 (12:13 -0400)]
kmssink: Track cached kmsmem and clear them on drain
In this patch we keep track of the cached kmsmem in a way
that we can clear the cache during the drain process. This
release the framebuffer before waiting for the next vblank,
hence add support for DRM driver (like Intel one) that release
the associated DMABuf reference asynchronously.
https://bugzilla.gnome.org/show_bug.cgi?id=782774
Nicolas Dufresne [Fri, 7 Jul 2017 16:12:38 +0000 (12:12 -0400)]
kmssink: Move kmsmem cache code higher
This will be needed as this API will be used elsewhere to clear
the cache.
https://bugzilla.gnome.org/show_bug.cgi?id=782774
Nicolas Dufresne [Thu, 18 May 2017 09:54:31 +0000 (11:54 +0200)]
kmssink: drop last rendered buffer on ALLOCATION and DRAIN queries
kmssink keeps a reference on the last rendered buffer. If this buffer
refers to an upstream buffer, it should be should be released on DRAIN
and ALLOCATION queries so all upstream buffers can be returned to the
pool if needed. As the buffer may be used for scanout, we copy this
buffer into a dumb buffer prior to let it go.
Based on patch from Guillaume Desmottes <guillaume.desmottes@collabora.com>
https://bugzilla.gnome.org/show_bug.cgi?id=782774
Nicolas Dufresne [Thu, 6 Jul 2017 21:20:56 +0000 (17:20 -0400)]
kmssink: Don't leak GEM primed from DMABuf
This otherwise breaks DMABuf reclaiming. This is not visible from
userspace, but inside the kernel, the DRM driver will hold a ref to the
DMABuf object. With a V4L2 driver allocating those DMABuf, it then
prevent changing the resolution and re-allocation new buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=782774
Nicolas Dufresne [Wed, 5 Jul 2017 20:51:12 +0000 (16:51 -0400)]
kmssink: Factor out copying to dump buffer
This will be used to copy any upstream memory in order to return it on
resolution change, allocation query or drain query.
https://bugzilla.gnome.org/show_bug.cgi?id=782774
Nicolas Dufresne [Mon, 3 Jul 2017 19:28:25 +0000 (15:28 -0400)]
adaptivedemux: Allow application to force EOS
Adaptive demuxers are special demuxers that runs their own sources
internally. In this patch we flag the demuxer as being a source in order
to receive the downstream events. We then handle the EOS event by
resetting the internal state and pushing EOS on all pads. This handling
is done asynchronously to avoid blocking user thread.
https://bugzilla.gnome.org/show_bug.cgi?id=723868
Nirbheek Chauhan [Fri, 7 Jul 2017 11:37:31 +0000 (17:07 +0530)]
meson: Set python3 before plugin subdir()s
It's used by the msdk plugin
Yasushi SHOJI [Fri, 7 Jul 2017 11:20:35 +0000 (20:20 +0900)]
meson: Added meson.build for gsm
https://bugzilla.gnome.org/show_bug.cgi?id=784646
Tim-Philipp Müller [Fri, 7 Jul 2017 11:28:14 +0000 (12:28 +0100)]
meson: msdk: use python3 from python3 module
Tim-Philipp Müller [Fri, 7 Jul 2017 10:59:03 +0000 (11:59 +0100)]
meson: find python3 via python3 module
https://bugzilla.gnome.org/show_bug.cgi?id=783198
Mathieu Duponchelle [Thu, 13 Apr 2017 20:11:55 +0000 (22:11 +0200)]
aggregator: Invalidate pad's tail position ...
when dequeuing a segment event.
https://bugzilla.gnome.org/show_bug.cgi?id=784593
Tim-Philipp Müller [Thu, 6 Jul 2017 08:37:28 +0000 (09:37 +0100)]
Revert "openjpegdec: support grayscale with alpha channel"
This reverts commit
1883ac26b7d02724c11d4f4bad8698c4873b443d.
This breaks the build on older versions of openjpeg:
gstopenjpegdec.c:752:30: error: ‘opj_image_comp_t {aka struct opj_image_comp}’ has no member named ‘alpha’
https://bugzilla.gnome.org/show_bug.cgi?id=783591
Aaron Boxer [Tue, 13 Jun 2017 03:36:05 +0000 (23:36 -0400)]
openjpegdec: support grayscale with alpha channel
https://bugzilla.gnome.org/show_bug.cgi?id=783591
Mathieu Duponchelle [Mon, 10 Apr 2017 23:18:51 +0000 (01:18 +0200)]
videoaggregator: fix gaps at end of streams.
When the pad has received EOS, its buffer may still be mixed
any number of times, when the pad's framerate is inferior
to the output framerate.
This was introduced by my patch in
https://bugzilla.gnome.org/show_bug.cgi?id=782962, this patch
also correctly addresses the initial issue.
Sebastian Dröge [Wed, 5 Jul 2017 14:04:46 +0000 (17:04 +0300)]
mxfdemux: For intra-only streams, always output DTS=PTS
Sebastian Dröge [Wed, 5 Jul 2017 12:48:57 +0000 (15:48 +0300)]
mxfdemux: Fix integer overflow in partition position comparison function
Sebastian Dröge [Wed, 5 Jul 2017 12:11:22 +0000 (15:11 +0300)]
mxfdemux: Print PTS and DTS in debug output when pushing buffers
Sebastian Dröge [Wed, 5 Jul 2017 10:59:12 +0000 (13:59 +0300)]
mxfmetadata: Set field-order correctly for interlaced video
Sebastian Dröge [Wed, 5 Jul 2017 10:52:25 +0000 (13:52 +0300)]
mxfmetadata: Use display width/height instead of stored width/height
Stored values contain padding and alignment, and should only be used as
fallback if neither display values nor sampled values exist.
Sebastian Dröge [Tue, 4 Jul 2017 21:48:36 +0000 (00:48 +0300)]
mxfdemux: Don't include any KLV packets between header metadata and index table segments in calculations
Minor fixup of last commit.
Sebastian Dröge [Tue, 4 Jul 2017 17:01:37 +0000 (20:01 +0300)]
mxfdemux: Allow filler and other KLV packets between index table segments
While only filler packets should be allowed, for good measure also skip
any other KLV packets in the range where there could be index table
segments.
This fixes parsing of partitions with multiple index table segments,
which are separated by a filler packet, or other packets.
Tim-Philipp Müller [Tue, 4 Jul 2017 14:28:36 +0000 (15:28 +0100)]
codecparsers: h264: flesh out documentation for GST_H264_PARSER_NO_NAL_END
Tim-Philipp Müller [Mon, 3 Jul 2017 09:11:42 +0000 (10:11 +0100)]
ttml: fix linking to libgstvideo
https://bugzilla.gnome.org/show_bug.cgi?id=784439
Stefan Sauer [Sat, 1 Jul 2017 18:23:25 +0000 (20:23 +0200)]
aggregator: fix "'aggclass' may be used uninitialized in this function"
Julien Isorce [Wed, 9 Mar 2016 22:01:12 +0000 (22:01 +0000)]
glupload: add GST_CAPS_FEATURE_MEMORY_DMABUF
Insert before SystemMemory to advice upstream elements that it is
preferable for them to push dmabuf with the caps feature.
Examples:
/* Discard memory:DMABuf caps feature */
GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \
filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \
capsfilter caps="video/x-raw(memory:SystemMemory)" ! glimagesink
/* Force memory:DMABuf caps feature. */
GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \
filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \
capsfilter caps="video/x-raw(memory:DMABuf)" ! glimagesink
/* Auto select memory:DMABuf caps feature. */
GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \
filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \
glimagesink
https://bugzilla.gnome.org/show_bug.cgi?id=774649
Matthew Waters [Wed, 28 Jun 2017 04:45:18 +0000 (14:45 +1000)]
gl: reset gl->DrawBuffer to the necessary values
GL_COLOR_ATTACHMENT0 when a framebuffer is bound
GL_BACK if no framebuffer is bound
https://bugzilla.gnome.org/show_bug.cgi?id=784210
Hyunjun Ko [Wed, 28 Jun 2017 03:17:37 +0000 (12:17 +0900)]
glmemory: reset the draw buffer to GL_BACK
The draw buffer should be reset to GL_BACK since the framebuffer is already
unbound.
https://bugzilla.gnome.org/show_bug.cgi?id=784210
Reynaldo H. Verdejo Pinochet [Wed, 28 Jun 2017 23:17:41 +0000 (16:17 -0700)]
dvb: src: use correct unit in tuning-timeout prop description
Milliseconds was wrong and made use of this timeout quite
confusing. The code uses the value as microsenconds so
any meaningful number was off by orders of magnitude.
Thibault Saunier [Fri, 23 Jun 2017 20:18:49 +0000 (16:18 -0400)]
meson: Allow using glib as a subproject
Thibault Saunier [Tue, 20 Jun 2017 17:44:47 +0000 (13:44 -0400)]
meson: Do not use path separator in test names
Avoiding warnings like:
WARNING: Target "elements/audioamplify" has a path separator in its name.
Per-Erik Brodin [Wed, 28 Jun 2017 01:47:37 +0000 (18:47 -0700)]
nvdec: Use qdata on memory instead of buffer meta
Using a meta can be problematic since the memory contained in the buffer
can be transferred to a new buffer in which case the meta would be lost.
https://bugzilla.gnome.org/show_bug.cgi?id=784235
Sebastian Dröge [Tue, 27 Jun 2017 12:41:48 +0000 (15:41 +0300)]
mxfdemux: Include duration in response to SEEKING query
Sebastian Dröge [Tue, 27 Jun 2017 12:01:22 +0000 (15:01 +0300)]
mxfmux: Write temporal offset and correct keyframe offset into index table
https://bugzilla.gnome.org/show_bug.cgi?id=784027
Sebastian Dröge [Tue, 27 Jun 2017 07:47:44 +0000 (10:47 +0300)]
mxfdemux: Take temporal reordering from the index table into account
This is needed to know the PTS, without that we only know the DTS and
using that also for the PTS is wrong unless we have an intra-only codec.
If we can't get the temporal reordering from the index table, don't set
any PTS for non-intra-only codecs and let decoders figure out something.
https://bugzilla.gnome.org/show_bug.cgi?id=784027
Per-Erik Brodin [Wed, 3 May 2017 00:21:43 +0000 (17:21 -0700)]
nvdec: New plugin for NVIDIA hardware video decode
https://bugzilla.gnome.org/show_bug.cgi?id=781537
Eunhae Choi [Mon, 19 Jun 2017 11:35:30 +0000 (20:35 +0900)]
mpegpsmux: remove unnecessary g_return_if_fail()
This should never happen, and should be a g_assert()
if it's a worry. Fixes warnings from source code
checkers about possible caps leaks here.
https://bugzilla.gnome.org/show_bug.cgi?id=783955
Tim-Philipp Müller [Mon, 26 Jun 2017 08:52:24 +0000 (09:52 +0100)]
meson: fix with-package-name option
https://bugzilla.gnome.org/show_bug.cgi?id=784082
Nicolas Dufresne [Thu, 22 Jun 2017 20:40:07 +0000 (16:40 -0400)]
meson: Enable netsim unit test
Nicolas Dufresne [Thu, 22 Jun 2017 18:21:34 +0000 (14:21 -0400)]
meson: Add netsim plugin
Nicolas Dufresne [Thu, 22 Jun 2017 14:34:04 +0000 (10:34 -0400)]
meson: Re-add pkg-config support for bcm_host
Now we just fallback to find_library for Rasbian jessy and older.
https://bugzilla.gnome.org/show_bug.cgi?id=784026
Nicolas Dufresne [Wed, 21 Jun 2017 19:15:37 +0000 (15:15 -0400)]
meson: Enable shm unit test
Nicolas Dufresne [Wed, 21 Jun 2017 17:45:04 +0000 (13:45 -0400)]
meson: Enable building shm plugin
Nicolas Dufresne [Wed, 21 Jun 2017 17:42:31 +0000 (13:42 -0400)]
shmpipe: Should not use glib type without ifdef
The shmpipe should build without GLIB.
Guillaume Desmottes [Wed, 21 Jun 2017 09:18:43 +0000 (11:18 +0200)]
gl: meson: use cc.find_library() to detect 'bcm_host'
On the raspberry pi no pkg-config file is provided for the bcm_host
library. We are using AC_CHECK_LIB to detect this lib with autotools,
cc.find_library() library is a closer meson equivalent.
https://bugzilla.gnome.org/show_bug.cgi?id=784026
Jan Schmidt [Wed, 21 Jun 2017 15:01:40 +0000 (01:01 +1000)]
configure: Add --with-moc/uic/rcc options
For cross-compiling, it's easier to be able to specify the
actual paths to the tools
Jan Schmidt [Wed, 21 Jun 2017 15:01:40 +0000 (01:01 +1000)]
qmlsink example: Add CMakeLists.txt
Make it possible to build using cmake instead of qmake
Jan Schmidt [Wed, 21 Jun 2017 15:01:40 +0000 (01:01 +1000)]
qt: Remove misleading reference to GTK in qtitem.cc
Sebastian Dröge [Tue, 20 Jun 2017 16:19:51 +0000 (19:19 +0300)]
gl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again
And remove gstgldisplay_cocoa.h instead, which got moved to the
installed headers earlier.
Eunhae Choi [Mon, 19 Jun 2017 12:59:29 +0000 (21:59 +0900)]
directfb: fix caps leak
add unref in case of error
https://bugzilla.gnome.org/show_bug.cgi?id=783961
Scott D Phillips [Sat, 17 Jun 2017 01:08:39 +0000 (18:08 -0700)]
tests: dash & adaptivedemux: move iterator variable declaration out of `for`
This is a c99-ism that gcc 4.8.5 errors on unless -std=c99 is
specified.
https://bugzilla.gnome.org/show_bug.cgi?id=783868
Reynaldo H. Verdejo Pinochet [Fri, 16 Jun 2017 16:43:35 +0000 (09:43 -0700)]
dvb: src: fix use of wrong array index for tune signal
Erroneous value made "TUNE" overwrite "TUNNING_FAIL" ....
Reynaldo H. Verdejo Pinochet [Fri, 16 Jun 2017 00:08:19 +0000 (17:08 -0700)]
dvb: src: issue warning on failed delsys-vs-parameter issues
Aids in understanding misses with the delsys auto-detection logic
Thibault Saunier [Thu, 15 Jun 2017 18:13:14 +0000 (14:13 -0400)]
mxfdemux: Do not try to serialize unresolved metadatas
When retrieving the `mxfdemux.structure` property, it leads to an
assertion as metadatas need to be resolved for the call to
mxf_metadata_base_to_structure to be valid.
Sebastian Dröge [Mon, 12 Jun 2017 19:29:01 +0000 (22:29 +0300)]
glupload: Fix DirectVIV uploader for formats with a single plane
We have to pass the "height" as height = vmeta->offset[1] / width to the
API, which of course does not work well for formats with only a single
plane. Use the whole memory size instead of the offset in that case.
Aaron Boxer [Sat, 10 Jun 2017 11:56:48 +0000 (07:56 -0400)]
openjpegdec: fix display artifacts for RGB 8-bit
https://bugzilla.gnome.org/show_bug.cgi?id=783626
Vincent Penquerc'h [Wed, 7 Jun 2017 15:17:50 +0000 (16:17 +0100)]
openjpeg: guard against invalid memory access on crafted files
Vincent Penquerc'h [Mon, 5 Jun 2017 14:31:52 +0000 (15:31 +0100)]
jpeg2000sampling: fix critical when sampling is missing from caps
This can happen with real files
Thibault Saunier [Wed, 7 Jun 2017 20:58:23 +0000 (16:58 -0400)]
meson: Fix building/running tests outside gst-build
Mathieu Duponchelle [Thu, 18 May 2017 20:02:38 +0000 (22:02 +0200)]
tests: start porting to meson
Incomplete port, to get the ball rolling
https://bugzilla.gnome.org/show_bug.cgi?id=782962
Scott D Phillips [Thu, 18 May 2017 17:36:50 +0000 (10:36 -0700)]
msdk: enc: set pts and dts, fix inverted sync_point flag
Set the pts and dts on the frame that we receive from the msdk.
Also fix the inverted logic in setting sync points, previously we
were marking all frames as sync points except IDRs.
https://bugzilla.gnome.org/show_bug.cgi?id=782801
Nicolas Dufresne [Mon, 29 May 2017 16:22:17 +0000 (12:22 -0400)]
gl: Add dependency to gstallocators
Sebastian Dröge [Wed, 7 Jun 2017 14:50:09 +0000 (17:50 +0300)]
decklink: Make timestamp reference specifier driver specific
Aaron Boxer [Fri, 12 May 2017 19:28:46 +0000 (15:28 -0400)]
jpeg2000parse: parse RSIZ capabilities and put profile/level into the caps
The RSIZ capabilities tag stores the JPEG 2000 profile. In the case of
broadcast profiles, it also stores the broadcast main level, which
specifies the bit rate.
https://bugzilla.gnome.org/show_bug.cgi?id=782337
Seungha Yang [Sun, 4 Jun 2017 11:23:36 +0000 (20:23 +0900)]
adaptivedemux: Clear "cancelled" on uridownloader before processing manifest
Previous commit let demux call gst_uri_downloader_cancel() on _demux_reset().
Note that, _demux_reset() called during PAUSED_TO_READY and READY_TO_PAUSED.
And, it will set "cancelled" on uridownloader which blocks the use of
uridownloader. The issue is that, subclass can use the uridownloader not only
live streaming for manifest update, but also for fetching another manifests
such as variant and rendition m3u8 of hls streaming. So to unblock it,
demux should clear "cancelled" before processing initial manifest.
https://bugzilla.gnome.org/show_bug.cgi?id=783401
Thibault Saunier [Tue, 6 Jun 2017 18:58:55 +0000 (14:58 -0400)]
videoparse: Fix property handling
Usage of GstValueArray was wrong and frame-stride does not exist in
rawvideoparse
Guillaume Desmottes [Thu, 25 May 2017 13:10:32 +0000 (15:10 +0200)]
kmssink: Add xilinx_drm to the list of drivers
This prevent having to set the driver-name explicitly when running on
Zynq UltraScale+ boards.
https://bugzilla.gnome.org/show_bug.cgi?id=783188
Wim Taymans [Thu, 1 Jun 2017 14:00:50 +0000 (16:00 +0200)]
pcapparse: endianness fix
Also swap the linktype after we detected that we need to do
byteswapping. Fixes a problem with reading pcap files generated
on a machine with different endianness.
Mathieu Duponchelle [Wed, 31 May 2017 00:46:01 +0000 (02:46 +0200)]
adaptivedemux: release the manifest lock ...
before broadcasting preroll.
The deadlock was as follows:
-> The subclass pushes a buffer on a newly-created stream in T1
-> We take the preroll lock in T1, to handle_preroll
-> The demuxer is stopped in T2, we take the MANIFEST_LOCK
-> T1 starts blocking because it received a reconfigure event
and needs to take the MANIFEST_LOCK
-> T2 deadlocks because it now wants the preroll_lock.
https://bugzilla.gnome.org/show_bug.cgi?id=783255
Edward Hervey [Tue, 30 May 2017 13:27:37 +0000 (15:27 +0200)]
dashdemux: Implement a default presentation delay
Have a fallback presentation delay is great (if not present in the
manifest), having an actual default value is better.
https://bugzilla.gnome.org/show_bug.cgi?id=783244
Thiago Santos [Tue, 30 May 2017 05:28:21 +0000 (22:28 -0700)]
adaptivedemux: do not erase data while updates-loop is running
Make sure the manifest update loop is stopped before proceeding with the
resetting of the manifest data. Otherwise, the updates loop will try to
use it and it leads to a segfault
https://bugzilla.gnome.org/show_bug.cgi?id=783028
Thiago Santos [Tue, 30 May 2017 05:26:09 +0000 (22:26 -0700)]
mpdparser: remove duplicate free of client data
https://bugzilla.gnome.org/show_bug.cgi?id=783028
Jeremy Hiatt [Thu, 1 Jun 2017 01:15:05 +0000 (01:15 +0000)]
glutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask()
Mathieu Duponchelle [Wed, 31 May 2017 01:14:04 +0000 (03:14 +0200)]
adaptivedemux: make sure to free all "old streams"
As we release the MANIFEST_LOCK in stop_tasks,
demux->priv->old_streams can be set, we need to free these
otherwise we may end up trying to dispose elements in the
READY state.
https://bugzilla.gnome.org/show_bug.cgi?id=783256
Edward Hervey [Tue, 16 May 2017 15:29:35 +0000 (17:29 +0200)]
adaptivedemux: Don't be too aggressive with seek ranges
When an accurate seek is requested on a live stream, only requests the
exact value for the "starting position" (i.e. start in forward playback
and stop in reverse playback).
https://bugzilla.gnome.org/show_bug.cgi?id=782698
Edward Hervey [Wed, 31 May 2017 08:58:39 +0000 (10:58 +0200)]
dashdemux: Remove wrong assertion
This is wrong because:
* If the rate is negative we should check for the *previous* period
* adaptivedemux already does the proper checks before calling this
method