platform/upstream/gstreamer.git
8 years agompegtsdemux: only wait for PCR when PCR pid is set
Arnaud Vrac [Sat, 9 May 2015 13:52:22 +0000 (15:52 +0200)]
mpegtsdemux: only wait for PCR when PCR pid is set

Streams without PCR make senses in HLS, where the playlist timestamps
can be used to seek or calculate the duration.

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

8 years agohls: Fix compiler warning for possibly uninit variable
Jan Schmidt [Tue, 2 Aug 2016 18:18:18 +0000 (04:18 +1000)]
hls: Fix compiler warning for possibly uninit variable

8 years agohlsdemux: seek all streams
Michael Olbrich [Thu, 28 Jul 2016 12:22:02 +0000 (14:22 +0200)]
hlsdemux: seek all streams

8 years agohlsdemux: simplify gst_hls_demux_seek()
Michael Olbrich [Wed, 25 May 2016 09:23:59 +0000 (11:23 +0200)]
hlsdemux: simplify gst_hls_demux_seek()

Don't initialize current_sequence. It is always overwritten in the walk
loop.

8 years agohlsdemux: don't download the last fragment when seeking beyond the end of the track
Michael Olbrich [Tue, 24 May 2016 13:23:12 +0000 (15:23 +0200)]
hlsdemux: don't download the last fragment when seeking beyond the end of the track

It's not used anyways.

8 years agohlsdemux: Add support for ID3 tag parsing
Jan Schmidt [Tue, 12 Jul 2016 13:05:55 +0000 (23:05 +1000)]
hlsdemux: Add support for ID3 tag parsing

Parse start PTS out of the ID3 tags in
audio fragments. Informational only for now.

8 years agohlsdemux: Do some reading and dumping of PCRs
Jan Schmidt [Wed, 24 Feb 2016 05:57:16 +0000 (16:57 +1100)]
hlsdemux: Do some reading and dumping of PCRs

Read PCRs out of the MPEG-TS stream in a basic way
and (for now) just log them

8 years agohlsdemux: Only use the primary stream for bitrate selection.
Jan Schmidt [Fri, 4 Mar 2016 16:08:55 +0000 (03:08 +1100)]
hlsdemux: Only use the primary stream for bitrate selection.

When playing alternate rendition auxilliary streams, ignore
them in bitrate measurement (for now).

8 years agohlsdemux: Only select video and audio streams by default
Jan Schmidt [Fri, 15 Jul 2016 06:24:17 +0000 (16:24 +1000)]
hlsdemux: Only select video and audio streams by default

Ignore subtitle streams for now, because the
different fragment duration causes problems
switching bitrates w/ decodebin2 group draining.

8 years agohlsdemux: Publish all media for alternate renditions.
Jan Schmidt [Wed, 24 Feb 2016 14:58:25 +0000 (01:58 +1100)]
hlsdemux: Publish all media for alternate renditions.

Create an output stream for each media when alternate renditions
are present. Update the manifests for all those streams, and
make sure that typefinding is still done for files smaller than 2KB
such as small WebVTT files.

8 years agohlsdemux: Adjust downstream buffer offsets
Jan Schmidt [Mon, 7 Mar 2016 14:24:20 +0000 (01:24 +1100)]
hlsdemux: Adjust downstream buffer offsets

When fetching a byte-region from a server resource,
adjust the downstream buffer offsets so that downstream
doesn't know. This is because id3demux insists on the
first offset being 0. Later we might strip ID3 headers
entirely and this will be unneeded.

8 years agohlsdemux: Choose the default variant and track it when updating
Jan Schmidt [Tue, 8 Mar 2016 16:07:22 +0000 (03:07 +1100)]
hlsdemux: Choose the default variant and track it when updating

Modify playlist updating to track information across updates
better, although still hackish.

When connection_speed == 0, choose the default variant
not the first one in the (now sorted) variant list, as that
will have the lowest bitrate.

8 years agohlsdemux: move variant list handling over to new master playlist code
Tim-Philipp Müller [Sat, 5 Dec 2015 11:12:33 +0000 (11:12 +0000)]
hlsdemux: move variant list handling over to new master playlist code

Adapt hlsdemux for the m3u8 playlist changes.

8 years agohls: m3u8: Rework m3u8 parsing and storage.
Tim-Philipp Müller [Fri, 27 Nov 2015 19:26:02 +0000 (19:26 +0000)]
hls: m3u8: Rework m3u8 parsing and storage.

Make M3U8 and GstM3U8MediaFile refcounted. The contents
of it and GstM3U8MediaFile are pretty much immutable
already, but if we make it refcounted we can just
return a ref to the media file from _get_next_fragment()
instead of copying over all fields one-by-one, and then
copying them all into the adaptive stream structure fields again.

Move state from client into m3u8 structure.  This will
be useful later when we'll have multiple media playlists
being streamed at the same time, as will be the case with
alternative renditions.

This has the downside that we need to copy over some
state when we switch between variant streams.

The GstM3U8Client structure is gone, and main/current
lists are not directly in hlsdemux. hlsdemux had as
many CLIENT_LOCK/UNLOCK as the m3u8 code anyway...

8 years agoqmlglsrc: Add qmlglsrc unit test example
Haihua Hu [Wed, 27 Jul 2016 01:28:23 +0000 (09:28 +0800)]
qmlglsrc: Add qmlglsrc unit test example

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

8 years agoqt: implement qmlglsrc for qml view grab
Haihua Hu [Wed, 27 Jul 2016 00:16:47 +0000 (08:16 +0800)]
qt: implement qmlglsrc for qml view grab

[Matthew Waters]: gst-indent sources

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

8 years agoglwindow: Fix glimagesink cannot show frame when connect to qmlglsrc
Haihua Hu [Wed, 27 Jul 2016 02:55:01 +0000 (10:55 +0800)]
glwindow: Fix glimagesink cannot show frame when connect to qmlglsrc

When connect to qmlglsrc, x11 event loop will be replace by qt event loop
which will cause the window cannot receive event from xserver, such as resize

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

8 years agoglupload: Use bufferpool to allocate new buffer in GLTextureUploadMeta
Hyunjun Ko [Tue, 2 Aug 2016 08:21:20 +0000 (17:21 +0900)]
glupload: Use bufferpool to allocate new buffer in GLTextureUploadMeta

To improve performace of upload with GLTextureUploadMeta,
use bufferpool instead of allocating new buffer every time.

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

8 years agoglwindow: move unsetting queue_resize to _resize() instead of _draw()
Matthew Waters [Wed, 27 Jul 2016 04:48:50 +0000 (14:48 +1000)]
glwindow: move unsetting queue_resize to _resize() instead of _draw()

Makes infinitely more sense and implementation were expecting that behaviour
anyway and would enter a resize, draw, resize, draw, ... cycle instead of only
resizing once.

8 years agoadaptivedemux: Never ever hold the manifest lock while changing the source element...
Sebastian Dröge [Wed, 3 Aug 2016 06:14:07 +0000 (09:14 +0300)]
adaptivedemux: Never ever hold the manifest lock while changing the source element state

Otherwise we will deadlock in various situations that take the manifest lock
from the streaming thread or when shutting down or ...

8 years agoaiffparse: In PUSH mode we will never get the ID3 tags as they are at the end of...
Sebastian Dröge [Tue, 2 Aug 2016 14:07:37 +0000 (17:07 +0300)]
aiffparse: In PUSH mode we will never get the ID3 tags as they are at the end of the file

This previously did not fail as before we didn't get any tags at all in PUSH
mode, now we get the bitrates.

8 years agoaiffparse: Add tags for container format and bitrate
Carlos Rafael Giani [Tue, 2 Aug 2016 11:48:43 +0000 (13:48 +0200)]
aiffparse: Add tags for container format and bitrate

The bitrate is added to help downstream elements (like uridecodebin)
figure out a proper network buffer size

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

8 years agotests: dashdemux: add test for gst_mpd_client_get_maximum_segment_duration
Alex Ashley [Wed, 20 Jan 2016 16:42:24 +0000 (16:42 +0000)]
tests: dashdemux: add test for gst_mpd_client_get_maximum_segment_duration

Add a test of the gst_mpd_client_get_maximum_segment_duration() function
to check that it first checks the MPD@maxSegmentDuration and then falls
back to checking all of the segment durations.

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

8 years agodashdemux: include segment duration when calculating seek range
Alex Ashley [Wed, 24 Feb 2016 15:54:54 +0000 (15:54 +0000)]
dashdemux: include segment duration when calculating seek range

The gst_dash_demux_get_live_seek_range () function returns a stop value
that is beyond the available range. The functions
gst_mpd_client_check_time_position() and
gst_mpd_client_get_next_segment_availability_end_time() in
gstmpdparser.c include the segment duration when checking if a segment
is available. The gst_dash_demux_get_live_seek_range() function
in gstdashdemux.c ignores the segment duration.

According to the DASH specification, if maxSegmentDuration is not present,
then the maximum Segment duration is the maximum duration of any Segment
documented in the MPD.

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

8 years agoadaptivedemux: retry once on 4xx/5xx in certain conditions
Vincent Penquerc'h [Wed, 24 Feb 2016 15:52:41 +0000 (15:52 +0000)]
adaptivedemux: retry once on 4xx/5xx in certain conditions

This helps catch those 404 server errors in live streams when
seeking to the very beginning, as the server will handle a
request with some delay, which can cause it to drop the fragment
before sending it.

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

8 years agoadaptivedemux: expose HTTP status
Alex Ashley [Wed, 24 Feb 2016 15:47:09 +0000 (15:47 +0000)]
adaptivedemux: expose HTTP status

To allow adaptivedemux to make retry decisions, it needs to know what
sort of HTTP error has occurred. For example, the retry logic for a
410 error is different from a 504 error.

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

8 years agoadaptivedemux: allow seeking before start in live streams
Vincent Penquerc'h [Mon, 7 Mar 2016 17:04:33 +0000 (17:04 +0000)]
adaptivedemux: allow seeking before start in live streams

Some derived classes (at least dashdemux) expose a seeking range
based on wall clock. This means that a subsequent seek to the start
of this range will be before the allowed range.

To solve this, seeks without the ACCURATE flag are allowed to seek
before the start for live streams, in which case the segment is
shifted to start at the start of the new seek range. If there is
an end position, is is shifted too, to keep the duration constant.

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

8 years agoglimagesink: Fix horizontal/vertical flip matrizes
Haihua Hu [Mon, 1 Aug 2016 06:12:35 +0000 (14:12 +0800)]
glimagesink: Fix horizontal/vertical flip matrizes

They were swapped.

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

8 years agovideoparsers: h264: Add more scalable profiles to the profile list
Sreerenj Balachandran [Fri, 29 Jul 2016 13:32:22 +0000 (16:32 +0300)]
videoparsers: h264: Add more scalable profiles to the profile list

Adding Scalable Constrained High (G.10.1.2.1) and
Scalable High Intra(G.10.1.3) profiles to the profile list

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

8 years agoandroidmedia: Run gst-indent over everything once again
Sebastian Dröge [Mon, 1 Aug 2016 07:30:29 +0000 (10:30 +0300)]
androidmedia: Run gst-indent over everything once again

8 years agoamc: If we find multiple codecs with the same name, just merge them
Sebastian Dröge [Mon, 1 Aug 2016 07:28:26 +0000 (10:28 +0300)]
amc: If we find multiple codecs with the same name, just merge them

On the ODroid C1+ the H265 and H264 have the same name but are listed as two
different codecs. We have to handle them as the same one that supports both,
as otherwise we will register the same GType name twice which fails and we
then only have H265 support and not H264 support.

8 years agoamc: Use a GQueue for O(1) append instead of a GList
Sebastian Dröge [Mon, 1 Aug 2016 07:15:04 +0000 (10:15 +0300)]
amc: Use a GQueue for O(1) append instead of a GList

8 years agoadaptivedemux: Also call reset() in READY->PAUSED
Sebastian Dröge [Fri, 29 Jul 2016 09:31:38 +0000 (12:31 +0300)]
adaptivedemux: Also call reset() in READY->PAUSED

This allows subclasses to have initialization code in a single place.

8 years agorawaudioparse: Use G_GINT64_MODIFIER for portability
Sebastian Dröge [Fri, 29 Jul 2016 07:49:26 +0000 (10:49 +0300)]
rawaudioparse: Use G_GINT64_MODIFIER for portability

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

8 years agounalignedaudioparse: Fix element factory name of inner parser
Sebastian Dröge [Fri, 29 Jul 2016 07:07:23 +0000 (10:07 +0300)]
unalignedaudioparse: Fix element factory name of inner parser

8 years agoamc: Print generated raw/encoded caps in debug logs
Sebastian Dröge [Fri, 29 Jul 2016 05:54:00 +0000 (08:54 +0300)]
amc: Print generated raw/encoded caps in debug logs

8 years agodashdemux: Skip audio streams if TRICKMODE_NO_AUDIO is given in the seek event
Sebastian Dröge [Thu, 28 Jul 2016 08:27:29 +0000 (11:27 +0300)]
dashdemux: Skip audio streams if TRICKMODE_NO_AUDIO is given in the seek event

We just don't expose pads for audio streams, or even download them.

8 years agodashdemux: Reset number of subtitle streams counter on reset() too
Sebastian Dröge [Thu, 28 Jul 2016 08:16:24 +0000 (11:16 +0300)]
dashdemux: Reset number of subtitle streams counter on reset() too

Otherwise we will continue increasing forever the number of subtitle streams
when reusing the element for another DASH manifest.

8 years agotests: fix simple-launch-lines when jpeg lib isn't present
Vincent Penquerc'h [Tue, 26 Jul 2016 16:01:55 +0000 (17:01 +0100)]
tests: fix simple-launch-lines when jpeg lib isn't present

JPEG detection in configure.ac defines HAVE_JPEG to 0 if the
jpeg lib isn't found, rather then not defining it.

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

8 years agodocs: Update rawparser documentation
Carlos Rafael Giani [Mon, 25 Jul 2016 15:55:24 +0000 (17:55 +0200)]
docs: Update rawparser documentation

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
https://bugzilla.gnome.org/show_bug.cgi?id=767011

8 years agorawparse: Remove old parser code and wrap new parsers in old elements
Carlos Rafael Giani [Mon, 25 Jul 2016 15:54:09 +0000 (17:54 +0200)]
rawparse: Remove old parser code and wrap new parsers in old elements

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

8 years agorawparse: Add new raw audio and video parser elements
Carlos Rafael Giani [Mon, 25 Jul 2016 11:45:40 +0000 (13:45 +0200)]
rawparse: Add new raw audio and video parser elements

The new rawaudioparse and rawvideoparse elements are based on GstBaseParse
and completely replace audioparse and videoparse

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

8 years agocaopengllayersink: remove unused to_quit variable
Matthew Waters [Tue, 26 Jul 2016 06:01:19 +0000 (16:01 +1000)]
caopengllayersink: remove unused to_quit variable

It was always 0 and never set to anything meaningful.

8 years agoglframebuffer: add compatibility definition for GL_DEPTH_STENCIL_ATTACHMENT
Matthew Waters [Tue, 26 Jul 2016 05:57:54 +0000 (15:57 +1000)]
glframebuffer: add compatibility definition for GL_DEPTH_STENCIL_ATTACHMENT

GLES2 doesn't have it defined...

8 years agoglfilter: rewrite subclasses for filter_texture() occuring on GL thread
Matthew Waters [Fri, 15 Jul 2016 03:39:54 +0000 (13:39 +1000)]
glfilter: rewrite subclasses for filter_texture() occuring on GL thread

There's no need for the jump to an extra thread in most cases, especially
when relying solely on a shader to render.  We can use the provided
render_to_target() functions to simplify filter writing.

8 years agoglutils: remove unused GstGLDisplayProjection
Matthew Waters [Tue, 12 Jul 2016 05:34:24 +0000 (15:34 +1000)]
glutils: remove unused GstGLDisplayProjection

8 years agoglcontext: remove not thread-safe get/set_error()
Matthew Waters [Tue, 12 Jul 2016 05:29:29 +0000 (15:29 +1000)]
glcontext: remove not thread-safe get/set_error()

Use GError's instead if necessary.

8 years agoglframebuffer: rewrite for a more consistent API
Matthew Waters [Tue, 12 Jul 2016 02:59:57 +0000 (12:59 +1000)]
glframebuffer: rewrite for a more consistent API

Facilities are given to create fbo's and attach GL memory (renderbuffers
or textures).  It also keeps track of the renderable size for use with
effective use with glViewport().

8 years agogl: use GLMemory for accessing textures everywhere
Matthew Waters [Mon, 11 Jul 2016 14:30:22 +0000 (00:30 +1000)]
gl: use GLMemory for accessing textures everywhere

This simplifies and consolidates a lot of duplicated code creating
and modifying textures.

8 years agoglfilter: rename draw_texture to draw_fullscreen_quad
Matthew Waters [Mon, 11 Jul 2016 12:44:16 +0000 (22:44 +1000)]
glfilter: rename draw_texture to draw_fullscreen_quad

And remove unused arguments.

8 years agogl: add memory type for renderbuffer's
Matthew Waters [Mon, 11 Jul 2016 12:31:04 +0000 (22:31 +1000)]
gl: add memory type for renderbuffer's

Soon to be used for framebuffers for e.g. depth buffers or throwaway color
buffers.

8 years agoglformat: define our own set of formats from the GL defines
Matthew Waters [Mon, 11 Jul 2016 12:28:42 +0000 (22:28 +1000)]
glformat: define our own set of formats from the GL defines

also add some depth/stencil formats

8 years agogleffects: fix xray to use the correct function
Matthew Waters [Mon, 11 Jul 2016 12:24:43 +0000 (22:24 +1000)]
gleffects: fix xray to use the correct function

Instead of duplicating the sin effect

8 years agoglbasememory: assert for a valid allocator instead of segfaulting
Matthew Waters [Mon, 11 Jul 2016 11:29:10 +0000 (21:29 +1000)]
glbasememory: assert for a valid allocator instead of segfaulting

8 years agotsdemux: add support for LPCM with stream_type = 0x83
Michael Olbrich [Fri, 29 Apr 2016 12:42:34 +0000 (14:42 +0200)]
tsdemux: add support for LPCM with stream_type = 0x83

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

8 years agoplayer: Add some 'const' to config getters
Sebastian Dröge [Mon, 25 Jul 2016 10:06:46 +0000 (13:06 +0300)]
player: Add some 'const' to config getters

8 years agoplayer: G-I annotation fixes
Sebastian Dröge [Mon, 25 Jul 2016 10:06:36 +0000 (13:06 +0300)]
player: G-I annotation fixes

8 years agoplayer: move 'position-update-interval' setting to the config struct
Guillaume Desmottes [Mon, 25 Jul 2016 08:30:26 +0000 (10:30 +0200)]
player: move 'position-update-interval' setting to the config struct

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

8 years agoplayer: add API to change http user agent
Guillaume Desmottes [Tue, 19 Jul 2016 12:36:25 +0000 (14:36 +0200)]
player: add API to change http user agent

Introducing a new 'config' API similar to GstBufferPoolConfig.

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

8 years agoUpdate common submodule
Tim-Philipp Müller [Mon, 25 Jul 2016 09:54:32 +0000 (10:54 +0100)]
Update common submodule

For 'make update-exports' changes

8 years agoqml: Don't forget to unref the actual sink element after setting it on glsinkbin
Sebastian Dröge [Fri, 22 Jul 2016 14:00:14 +0000 (17:00 +0300)]
qml: Don't forget to unref the actual sink element after setting it on glsinkbin

8 years agoqml: Use glsinkbin instead of glupload directly
Sebastian Dröge [Fri, 22 Jul 2016 13:57:45 +0000 (16:57 +0300)]
qml: Use glsinkbin instead of glupload directly

8 years agoopenh264: fix up for API changes in v1.6.0
Tim-Philipp Müller [Mon, 18 Jul 2016 17:36:42 +0000 (18:36 +0100)]
openh264: fix up for API changes in v1.6.0

Update for API changes in v1.6.0.

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

8 years agogl: wayland: improve debug message when connecting to display
Tim-Philipp Müller [Mon, 18 Jul 2016 16:43:23 +0000 (17:43 +0100)]
gl: wayland: improve debug message when connecting to display

And another copy'n'paste-o.

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

8 years agohlsdemux: Fix clearing of decryption state
Jan Schmidt [Mon, 18 Jul 2016 16:11:54 +0000 (02:11 +1000)]
hlsdemux: Fix clearing of decryption state

Don't clear decryption state immediately after
initialising it in the start_fragment. Don't clear
the state of all streams when we want to only clear
the current stream.

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

8 years agotests: fix bus leak
Guillaume Desmottes [Fri, 15 Jul 2016 08:31:35 +0000 (10:31 +0200)]
tests: fix bus leak

gst_bus_remove_signal_watch() has to be called to release the ref
taken by gst_bus_add_signal_watch().

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

8 years agocamerabinpreview: fix bus leak
Guillaume Desmottes [Fri, 15 Jul 2016 09:48:25 +0000 (11:48 +0200)]
camerabinpreview: fix bus leak

We were never removing the watch introduced in
gst_camerabin_create_preview_pipeline() so its extra ref on the bus was
never released.

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

8 years agohlsdemux: make decryption key handling per-stream
Tim-Philipp Müller [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
hlsdemux: make decryption key handling per-stream

Add demuxer instance-wide decryption key cache. The current and
last key url are per-stream, so make a shared cache. Move the
decryption handling into the stream object, and use the shared
cache for the keys.

8 years agohlsdemux: add hlsdemux-specific AdaptiveDemuxStream subclass
Jan Schmidt [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
hlsdemux: add hlsdemux-specific AdaptiveDemuxStream subclass

Prepare hlsdemux for more than one single stream. Currently hlsdemux
assumes there'll only ever be one stream and most of the stream-specific
state is actually in the hlsdemux structure. Add a stream subclass
instead and move some stream-specific members there instead.

8 years agoadaptivedemux: Add more safeguards around state changes.
Jan Schmidt [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
adaptivedemux: Add more safeguards around state changes.

Make state changes of internal elements more reliable by locking
their state, and ensuring that they aren't blocked pushing data
downstream before trying to set their state.

Add a boolean to avoid starting tasks when the main
thread is busy trying to shut the element down.

8 years agoadaptivedemux: Add debug code to change bitrate.
Jan Schmidt [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
adaptivedemux: Add debug code to change bitrate.

Add some disabled-by-default debugging code that forces
bitrate changes by modulating the measured bitrate every
few fragments

8 years agoadaptivedemux: More locking/switching fixes
Jan Schmidt [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
adaptivedemux: More locking/switching fixes

Try harder to make switching pads work better by
making sure concurrent downloads are finished before exposing
a new set of pads.

Release the manifest lock when signalling no-more-pads, as
that can call back into adaptivedemux again

8 years agoadaptivedemux: Don't switch streams and expose pads while downloading.
Jan Schmidt [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
adaptivedemux: Don't switch streams and expose pads while downloading.

If other stream fragments are still downloading but new streams
have been scheduled, don't expose them yet - wait until the last
one finishes. Otherwise, we can cancel a partially downloaded
auxilliary stream and cause a gap.

8 years agoadaptivedemux: Drop the manifest lock during outbound actions
Jan Schmidt [Wed, 13 Jul 2016 13:02:10 +0000 (23:02 +1000)]
adaptivedemux: Drop the manifest lock during outbound actions

Drop the manifest lock when performing actions that might
call back into adaptivedemux and trigger deadlocks, such
as adding/removing pads or sending in-band events (EOS).

Unlock the manifest lock when changing the child bin state to
NULL, as it might call back to acquire the manifest lock when
shutting down pads.

Drop the manifest lock while pushing events.

8 years agonew plugin: Android hardware sensor source
Martin Kelly [Tue, 12 Jul 2016 21:51:47 +0000 (14:51 -0700)]
new plugin: Android hardware sensor source

ahssrc is a new plugin that enables Gstreamer to read from the
android.hardware.Sensor Android sensors. These sensors are treated as
buffers and can be passed through and manipulated by the pipeline.

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

8 years agolv2: make it build with older lilv
Stefan Sauer [Thu, 14 Jul 2016 17:38:26 +0000 (19:38 +0200)]
lv2: make it build with older lilv

Implementing the removal of presets is unfortunately not feasibla with
versions < 0.22.
Fixes #768595

8 years agowebrtcdsp: Add delay-agnostic property
Nicolas Dufresne [Thu, 14 Jul 2016 03:00:51 +0000 (23:00 -0400)]
webrtcdsp: Add delay-agnostic property

In this mode, we let WebRTC Audio Processing figure-out the delay. This
is useful when the latency reported by the stack cannot be trusted. Note
that in this mode, the leaking of echo during packet lost is much worst.
It is recommanded to use PLC (e.g. spanplc, or opus built-in plc).

In this mode, we don't do any synchronization. Instead, we simply process all
the available reverse stream data as it comes.

8 years agojpeg2000parse: Use correct enum type
Sebastian Dröge [Mon, 11 Jul 2016 21:02:53 +0000 (00:02 +0300)]
jpeg2000parse: Use correct enum type

GST_JPEG2000_SAMPLING_RGB instead of GST_JPEG2000_COLORSPACE_RGB

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

8 years agoAutomatic update of common submodule
Stefan Sauer [Mon, 11 Jul 2016 19:13:58 +0000 (21:13 +0200)]
Automatic update of common submodule

From f363b32 to f49c55e

8 years agokmssink: Fix offsets handling
Nicolas Dufresne [Mon, 11 Jul 2016 15:58:12 +0000 (11:58 -0400)]
kmssink: Fix offsets handling

The calculation of the offset table was done base on a plane size
estimation. This does not always work. Instead, use memory offset the
same we as it's implement in GstVideoMeta map functions.

8 years agoFix various gboolean vs GstFlowReturn problems
Nirbheek Chauhan [Mon, 11 Jul 2016 13:51:11 +0000 (19:21 +0530)]
Fix various gboolean vs GstFlowReturn problems

Caught by building with MSVC which gave warnings for these

8 years agogl/build: fix configure when --enable-cocoa is passed on OS X
Matthew Waters [Fri, 8 Jul 2016 09:03:06 +0000 (19:03 +1000)]
gl/build: fix configure when --enable-cocoa is passed on OS X

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

8 years agolv2: planning update
Stefan Sauer [Sun, 10 Jul 2016 18:43:17 +0000 (20:43 +0200)]
lv2: planning update

8 years agolv2: keep working with older versions
Stefan Sauer [Sun, 10 Jul 2016 18:42:42 +0000 (20:42 +0200)]
lv2: keep working with older versions

Provide a fallback impl. for the only new function we were using from 0.22.
Fixes #768595

8 years agocamerabin: update docs section
Tim-Philipp Müller [Fri, 8 Jul 2016 13:42:18 +0000 (14:42 +0100)]
camerabin: update docs section

8 years agoconfigure.ac: Cleanup unused variable
Nicolas Dufresne [Thu, 7 Jul 2016 17:22:02 +0000 (13:22 -0400)]
configure.ac: Cleanup unused variable

We only check for a header, no need for overriding LDFLAGS.

8 years agogaudi: fix documentation warning in GstGaussianBlur
Luis de Bethencourt [Thu, 7 Jul 2016 16:24:32 +0000 (17:24 +0100)]
gaudi: fix documentation warning in GstGaussianBlur

Fixing the following warning when generating documentation:
xml/element-gaussianblur.xml:72: element refsect2: validity error :
    ID GstGaussianBlur already defined
<refsect2 id="GstGaussianBlur" role="typedef">
                                             ^
Warning: multiple "IDs" for constraint linkend: GstGaussianBlur.
  DOC   Fixing cross-references

8 years agogaudi: fix documentation warning in GstChromium
Luis de Bethencourt [Thu, 7 Jul 2016 16:16:47 +0000 (17:16 +0100)]
gaudi: fix documentation warning in GstChromium

Fixing the following warning when generating documentation:
xml/element-chromium.xml:74: element refsect2: validity error :
    ID GstChromium already defined
<refsect2 id="GstChromium" role="typedef">
                                         ^
Warning: multiple "IDs" for constraint linkend: GstChromium.
  DOC   Fixing cross-references

8 years agowebrtcdsp: Relax C++11 check
Nicolas Dufresne [Thu, 7 Jul 2016 16:31:20 +0000 (12:31 -0400)]
webrtcdsp: Relax C++11 check

The library does not require any STL C++11 specific headers.
This fixes our OSX build as we target a SDK version that does not
support C++11 STL.

8 years agowebrtcdsp: Add Android GNUSTL support
Nicolas Dufresne [Thu, 7 Jul 2016 16:31:03 +0000 (12:31 -0400)]
webrtcdsp: Add Android GNUSTL support

8 years agowebrtcdsp: Set USE_WEBRTCDSP when disabled
Nicolas Dufresne [Thu, 7 Jul 2016 16:20:45 +0000 (12:20 -0400)]
webrtcdsp: Set USE_WEBRTCDSP when disabled

8 years agoadaptivedemux: Also consider more seek flags as "snap" seeks
Edward Hervey [Thu, 7 Jul 2016 15:20:58 +0000 (17:20 +0200)]
adaptivedemux: Also consider more seek flags as "snap" seeks

In the case of KEY_UNIT and TRICKMODE_KEY_UNITS seeks, we want to
"snap" to the closest fragment.

Without this, we end up pushing out a segment which does not match
the first fragment timestamp being pushed out, resulting in one or
more buffers being eventually dropped because they are out of segment.

8 years agowebrtcdsp: Also allow webrtc-audio-processing 0.3
Sebastian Dröge [Wed, 6 Jul 2016 11:29:04 +0000 (14:29 +0300)]
webrtcdsp: Also allow webrtc-audio-processing 0.3

It seems to work and is the version available in Debian.

8 years agomusepackdeck: unsigned can't be less than zero
Luis de Bethencourt [Wed, 6 Jul 2016 11:12:41 +0000 (12:12 +0100)]
musepackdeck: unsigned can't be less than zero

Less-than-zero comparison of an unsigned value, guint64, is never true

CID 1363334

8 years agoBack to development
Sebastian Dröge [Wed, 6 Jul 2016 10:51:06 +0000 (13:51 +0300)]
Back to development

8 years agoRelease 1.9.1
Sebastian Dröge [Wed, 6 Jul 2016 10:07:21 +0000 (13:07 +0300)]
Release 1.9.1

8 years agoUpdate .po files
Sebastian Dröge [Wed, 6 Jul 2016 08:52:11 +0000 (11:52 +0300)]
Update .po files

8 years agopo: Update translations
Sebastian Dröge [Wed, 6 Jul 2016 07:19:24 +0000 (10:19 +0300)]
po: Update translations

8 years agowebrtcdsp: Workaround GCC/MingW 4.7 limitations
Nicolas Dufresne [Tue, 5 Jul 2016 13:21:58 +0000 (09:21 -0400)]
webrtcdsp: Workaround GCC/MingW 4.7 limitations

It refuses to initialize a classes using brackets notation. This is
to allow building using our mingw version.

8 years agoconfigure.ac: Add missing double quotes
Nicolas Dufresne [Mon, 4 Jul 2016 18:57:11 +0000 (14:57 -0400)]
configure.ac: Add missing double quotes

That affectation was ignored. This worked on recent GCC as C++11 is
enabled by default now.