platform/upstream/gstreamer.git
7 years agomeson: Set python3 before plugin subdir()s
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

7 years agomeson: Added meson.build for gsm
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

7 years agomeson: msdk: use python3 from python3 module
Tim-Philipp Müller [Fri, 7 Jul 2017 11:28:14 +0000 (12:28 +0100)]
meson: msdk: use python3 from python3 module

7 years agomeson: find python3 via 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

7 years agoaggregator: Invalidate pad's tail position ...
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

7 years agoRevert "openjpegdec: support grayscale with alpha channel"
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

7 years agoopenjpegdec: support grayscale with alpha channel
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

7 years agovideoaggregator: fix gaps at end of streams.
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.

7 years agomxfdemux: For intra-only streams, always output DTS=PTS
Sebastian Dröge [Wed, 5 Jul 2017 14:04:46 +0000 (17:04 +0300)]
mxfdemux: For intra-only streams, always output DTS=PTS

7 years agomxfdemux: Fix integer overflow in partition position comparison function
Sebastian Dröge [Wed, 5 Jul 2017 12:48:57 +0000 (15:48 +0300)]
mxfdemux: Fix integer overflow in partition position comparison function

7 years agomxfdemux: Print PTS and DTS in debug output when pushing buffers
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

7 years agomxfmetadata: Set field-order correctly for interlaced video
Sebastian Dröge [Wed, 5 Jul 2017 10:59:12 +0000 (13:59 +0300)]
mxfmetadata: Set field-order correctly for interlaced video

7 years agomxfmetadata: Use display width/height instead of stored width/height
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.

7 years agomxfdemux: Don't include any KLV packets between header metadata and index table segme...
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.

7 years agomxfdemux: Allow filler and other KLV packets between index table segments
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.

7 years agocodecparsers: h264: flesh out documentation for GST_H264_PARSER_NO_NAL_END
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

7 years agottml: fix linking to libgstvideo
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

7 years agoaggregator: fix "'aggclass' may be used uninitialized in this function"
Stefan Sauer [Sat, 1 Jul 2017 18:23:25 +0000 (20:23 +0200)]
aggregator: fix "'aggclass' may be used uninitialized in this function"

7 years agoglupload: add GST_CAPS_FEATURE_MEMORY_DMABUF
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

7 years agogl: reset gl->DrawBuffer to the necessary values
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

7 years agoglmemory: reset the draw buffer to GL_BACK
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

7 years agodvb: src: use correct unit in tuning-timeout prop description
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.

7 years agomeson: Allow using glib as a subproject
Thibault Saunier [Fri, 23 Jun 2017 20:18:49 +0000 (16:18 -0400)]
meson: Allow using glib as a subproject

7 years agomeson: Do not use path separator in test names
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.

7 years agonvdec: Use qdata on memory instead of buffer meta
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

7 years agomxfdemux: Include duration in response to SEEKING query
Sebastian Dröge [Tue, 27 Jun 2017 12:41:48 +0000 (15:41 +0300)]
mxfdemux: Include duration in response to SEEKING query

7 years agomxfmux: Write temporal offset and correct keyframe offset into index table
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

7 years agomxfdemux: Take temporal reordering from the index table into account
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

7 years agonvdec: New plugin for NVIDIA hardware video decode
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

7 years agompegpsmux: remove unnecessary g_return_if_fail()
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

7 years agomeson: fix with-package-name option
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

7 years agomeson: Enable netsim unit test
Nicolas Dufresne [Thu, 22 Jun 2017 20:40:07 +0000 (16:40 -0400)]
meson: Enable netsim unit test

7 years agomeson: Add netsim plugin
Nicolas Dufresne [Thu, 22 Jun 2017 18:21:34 +0000 (14:21 -0400)]
meson: Add netsim plugin

7 years agomeson: Re-add pkg-config support for bcm_host
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

7 years agomeson: Enable shm unit test
Nicolas Dufresne [Wed, 21 Jun 2017 19:15:37 +0000 (15:15 -0400)]
meson: Enable shm unit test

7 years agomeson: Enable building shm plugin
Nicolas Dufresne [Wed, 21 Jun 2017 17:45:04 +0000 (13:45 -0400)]
meson: Enable building shm plugin

7 years agoshmpipe: Should not use glib type without ifdef
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.

7 years agogl: meson: use cc.find_library() to detect 'bcm_host'
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

7 years agoconfigure: Add --with-moc/uic/rcc options
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

7 years agoqmlsink example: Add CMakeLists.txt
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

7 years agoqt: Remove misleading reference to GTK in qtitem.cc
Jan Schmidt [Wed, 21 Jun 2017 15:01:40 +0000 (01:01 +1000)]
qt: Remove misleading reference to GTK in qtitem.cc

7 years agogl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again
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.

7 years agodirectfb: fix caps leak
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

7 years agotests: dash & adaptivedemux: move iterator variable declaration out of `for`
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

7 years agodvb: src: fix use of wrong array index for tune signal
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" ....

7 years agodvb: src: issue warning on failed delsys-vs-parameter issues
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

7 years agomxfdemux: Do not try to serialize unresolved metadatas
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.

7 years agoglupload: Fix DirectVIV uploader for formats with a single plane
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.

7 years agoopenjpegdec: fix display artifacts for RGB 8-bit
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

7 years agoopenjpeg: guard against invalid memory access on crafted files
Vincent Penquerc'h [Wed, 7 Jun 2017 15:17:50 +0000 (16:17 +0100)]
openjpeg: guard against invalid memory access on crafted files

7 years agojpeg2000sampling: fix critical when sampling is missing from caps
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

7 years agomeson: Fix building/running tests outside gst-build
Thibault Saunier [Wed, 7 Jun 2017 20:58:23 +0000 (16:58 -0400)]
meson: Fix building/running tests outside gst-build

7 years agotests: start porting to meson
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

7 years agomsdk: enc: set pts and dts, fix inverted sync_point flag
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

7 years agogl: Add dependency to gstallocators
Nicolas Dufresne [Mon, 29 May 2017 16:22:17 +0000 (12:22 -0400)]
gl: Add dependency to gstallocators

7 years agodecklink: Make timestamp reference specifier driver specific
Sebastian Dröge [Wed, 7 Jun 2017 14:50:09 +0000 (17:50 +0300)]
decklink: Make timestamp reference specifier driver specific

7 years agojpeg2000parse: parse RSIZ capabilities and put profile/level into the caps
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

7 years agoadaptivedemux: Clear "cancelled" on uridownloader before processing manifest
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

7 years agovideoparse: Fix property handling
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

7 years agokmssink: Add xilinx_drm to the list of drivers
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

7 years agopcapparse: endianness fix
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.

7 years agoadaptivedemux: release the manifest lock ...
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

7 years agodashdemux: Implement a default presentation delay
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

7 years agoadaptivedemux: do not erase data while updates-loop is running
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

7 years agompdparser: remove duplicate free of client data
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

7 years agoglutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask()
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()

7 years agoadaptivedemux: make sure to free all "old streams"
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

7 years agoadaptivedemux: Don't be too aggressive with seek ranges
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

7 years agodashdemux: Remove wrong assertion
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

7 years agottml: Simplify code
Edward Hervey [Fri, 26 May 2017 15:55:44 +0000 (17:55 +0200)]
ttml: Simplify code

n2 can never be NULL since:
* it's in a "while (n1 && n2)" block
* and it's not modified before

CID #1405868

7 years agononstreamaudio: Avoid using wrong variable
Edward Hervey [Fri, 26 May 2017 15:44:40 +0000 (17:44 +0200)]
nonstreamaudio: Avoid using wrong variable

And to make that 100% obvious, only use variables declared within the
switch cases instead of function-wide ones.

Also remove useless one-time-use-only variable.

CID #1409857

7 years agononstreamaudio: Avoid using un-initialized value
Edward Hervey [Fri, 26 May 2017 15:41:39 +0000 (17:41 +0200)]
nonstreamaudio: Avoid using un-initialized value

We would end up with cur_position not set but proceed being at its
default value of TRUE. Instead, properly set proceed to FALSE

CID #1409855

7 years agoadaptivedemux: Fix debugging message
Edward Hervey [Fri, 26 May 2017 15:30:10 +0000 (17:30 +0200)]
adaptivedemux: Fix debugging message

GstSegment position is a guint64 and not a gint64

CID #1409910

7 years agoadaptivedemux: Check live seeking range more often
Edward Hervey [Thu, 25 May 2017 07:48:53 +0000 (09:48 +0200)]
adaptivedemux: Check live seeking range more often

The live seeking range was only checked when doing actual seeks. This was
assuming that the rate would always be 1.0 (i.e. the playback would
advance in realtime, and therefore fragments would always be available
since the seeking window moves at the same rate).

With non-1.0 rates, this no longer becomes valid, and therefore we need
to check whether we are still within the live seeking range when advancing.

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

7 years agoadaptivedemux: Don't create invalid event
Edward Hervey [Thu, 25 May 2017 14:42:03 +0000 (16:42 +0200)]
adaptivedemux: Don't create invalid event

tags could potentially be NULL

7 years agoadaptivedemux: retry download MAX_DOWNLOAD_RETRY_COUNT times before erroring
Matthew Waters [Fri, 2 Dec 2016 06:51:57 +0000 (17:51 +1100)]
adaptivedemux: retry download MAX_DOWNLOAD_RETRY_COUNT times before erroring

What we want is to retry downloading the fragment on 4xx/5xx errors
however returning EOS will cause waiting for a manifest update for live
(which may be a really long time) or stop everything for non-live.

Change that to only return EOS/ERROR once we've reached the error limit.

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

7 years agogl: Fix indentation
Sebastian Dröge [Thu, 25 May 2017 10:06:03 +0000 (13:06 +0300)]
gl: Fix indentation

7 years agoglframebuffer: #define GL_READ_FRAMEBUFFER / GL_DRAW_FRAMEBUFFER if not defined yet
Sebastian Dröge [Thu, 25 May 2017 10:05:23 +0000 (13:05 +0300)]
glframebuffer: #define GL_READ_FRAMEBUFFER / GL_DRAW_FRAMEBUFFER if not defined yet

Just like we do elsewhere already.

7 years agoglformat: fix the usage of GST_GL_RGB565
Haihua Hu [Thu, 25 May 2017 03:05:47 +0000 (11:05 +0800)]
glformat: fix the usage of GST_GL_RGB565

GL_RGB565 is sized internal glformat, the corresponding glformat
should be GL_RGB and type is GL_UNSIGNED_SHORT_565. Otherwise will
return GL_INVALID_ENUM when creating texture.

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

7 years agoglframebuffer: check frame buffer status need use specific fbo target
Haihua Hu [Thu, 25 May 2017 02:09:04 +0000 (10:09 +0800)]
glframebuffer: check frame buffer status need use specific fbo target

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

7 years agoopenmpt: Fix compilation with 0.2.7386 as in Debian
Sebastian Dröge [Wed, 24 May 2017 08:47:47 +0000 (11:47 +0300)]
openmpt: Fix compilation with 0.2.7386 as in Debian

The OPENMPT_API_VERSION_AT_LEAST macro does not exist.

7 years agotests: Make audiomixer test_clip verify the resulting timestamps too
Olivier Crête [Mon, 22 May 2017 21:06:01 +0000 (23:06 +0200)]
tests: Make audiomixer test_clip verify the resulting timestamps too

7 years agoaggregator: Process serialized queries through the queue
Olivier Crête [Mon, 22 May 2017 22:53:57 +0000 (00:53 +0200)]
aggregator: Process serialized queries through the queue

This ensures that they really get processed in order with
buffers. Just waiting for the queue to be empty is sometimes not
enough as the buffers are dropped from the pad before the result is
pushed to the next element, sometimes resulting in surprising
re-ordering.

7 years agoaggregator: Set flow to FLUSHING on pad stop
Olivier Crête [Mon, 22 May 2017 22:53:23 +0000 (00:53 +0200)]
aggregator: Set flow to FLUSHING on pad stop

Fixes a rare race where the pad is being stopped while doing a query.

7 years agotests: audiointerleave: Remove drain with manual clock
Olivier Crête [Mon, 22 May 2017 22:52:27 +0000 (00:52 +0200)]
tests: audiointerleave: Remove drain with manual clock

Now that the queries go onto the queue, you may need to pull the crank
in order for them to be processed, making this test difficult.

7 years agoRequire wildmidi >= 0.4
Tim-Philipp Müller [Tue, 23 May 2017 08:57:28 +0000 (09:57 +0100)]
Require wildmidi >= 0.4

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

7 years agowildmidi: include stdint.h for int8_t
Tim-Philipp Müller [Tue, 23 May 2017 08:17:08 +0000 (09:17 +0100)]
wildmidi: include stdint.h for int8_t

7 years agowin32: update .def file for new base class
Tim-Philipp Müller [Tue, 23 May 2017 07:42:46 +0000 (08:42 +0100)]
win32: update .def file for new base class

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

7 years agowildmididec: explicitly cast buffer data to int8 in _decode()
Reynaldo H. Verdejo Pinochet [Mon, 22 May 2017 22:52:33 +0000 (15:52 -0700)]
wildmididec: explicitly cast buffer data to int8 in _decode()

Fixes compiler warning introduced in commit ff32a4297:

gstwildmididec.c:637:47: error: pointer targets in passing argument 2 of ‘WildMidi_GetOutput’ differ in signedness
       WildMidi_GetOutput (wildmidi_dec->song, (char *) (info.data), info.size);
                                               ^
wildmidi_lib.h:106:15: note: expected ‘int8_t * {aka signed char *}’ but argument is of type ‘char *’
 WM_SYMBOL int WildMidi_GetOutput (midi *handle, int8_t *buffer, uint32_t size);

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

7 years agoopenmpt: Add openmptdec element
Carlos Rafael Giani [Wed, 27 Jul 2016 00:22:26 +0000 (02:22 +0200)]
openmpt: Add openmptdec element

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

7 years agowildmidi: Port to 1.0 on top of the nonstreamaudiodecoder base class
Carlos Rafael Giani [Wed, 8 Mar 2017 21:17:41 +0000 (22:17 +0100)]
wildmidi: Port to 1.0 on top of the nonstreamaudiodecoder base class

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

7 years agoaudio: Add nonstreamaudiodecoder base class
Carlos Rafael Giani [Tue, 26 Jul 2016 23:41:20 +0000 (01:41 +0200)]
audio: Add nonstreamaudiodecoder base class

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

7 years agogltestsrc: Fix typo (occured->occurred)
Anders Jonsson [Mon, 22 May 2017 11:46:36 +0000 (13:46 +0200)]
gltestsrc: Fix typo (occured->occurred)

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

7 years agomeson: don't need config.h.meson any longer
Tim-Philipp Müller [Sun, 21 May 2017 17:03:02 +0000 (18:03 +0100)]
meson: don't need config.h.meson any longer

7 years agoaudioaggregate: Don't hold object locks across calls to aggregate_one
Olivier Crête [Sat, 20 May 2017 17:00:23 +0000 (19:00 +0200)]
audioaggregate: Don't hold object locks across calls to aggregate_one

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

7 years agoaggregator: Request pad templates which are not request pad
Olivier Crête [Fri, 18 Nov 2016 19:44:16 +0000 (14:44 -0500)]
aggregator: Request pad templates which are not request pad

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

7 years agoaggregator: Don't restrict sink pad names
Olivier Crête [Fri, 18 Nov 2016 19:41:54 +0000 (14:41 -0500)]
aggregator: Don't restrict sink pad names

Sink pads could have other names than sink_%u

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

7 years agoglbasemixer: Remove unused negotiated member
Olivier Crête [Sun, 21 May 2017 16:31:59 +0000 (18:31 +0200)]
glbasemixer: Remove unused negotiated member

This is now all handled in GstAggregator, so this code is not
called anymore.

7 years agovideoaggregator: Declare that it supports the video meta on input
Olivier Crête [Sun, 21 May 2017 13:44:02 +0000 (15:44 +0200)]
videoaggregator: Declare that it supports the video meta on input

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

7 years agogl*mixer: Use propose_allocation from the GstAggregator base class
Olivier Crête [Sun, 21 May 2017 13:30:10 +0000 (15:30 +0200)]
gl*mixer: Use propose_allocation from the GstAggregator base class

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