George Kiagiadakis [Mon, 27 Mar 2017 15:14:54 +0000 (18:14 +0300)]
webrtcechoprobe: return from _read() early if the probe is not configured yet
https://bugzilla.gnome.org/show_bug.cgi?id=780642
Luis de Bethencourt [Tue, 28 Mar 2017 15:04:15 +0000 (16:04 +0100)]
dashdemux: fix typo in implementation notes
s/enveloppe/envelope
Nicolas Dufresne [Tue, 28 Mar 2017 01:15:32 +0000 (21:15 -0400)]
webrtcdsp: Add support to build with meson
Mathieu Duponchelle [Thu, 23 Feb 2017 15:12:38 +0000 (16:12 +0100)]
webrtcdsp: expose voice activity detection.
The element now exposes properties to enable and configure
voice activity detection, and posts "voice-activity" messages
when the return value of stream_has_voice () changes.
https://bugzilla.gnome.org/show_bug.cgi?id=779138
Nicolas Dufresne [Mon, 27 Mar 2017 19:10:45 +0000 (15:10 -0400)]
audiomixmatrix: Don't crash if matrix is unset
Fix a crash ff one set in_channels/out_channels to non-zero, and then
get the matrix property.
Nicolas Dufresne [Mon, 27 Mar 2017 17:34:19 +0000 (13:34 -0400)]
audiomixmatrix: Remove property matrix-value-array
This duplicated property is no longer needed as there is now API to
allow bindings access GST_TYPE_ARRAY (see gst_util_get/set/object_array).
Additionnally, Python has proper overrides which will make this looks
like Python. A 2x2 matrix would be set this way:
element = matrix = Gst.ValueArray(Gst.ValueArray([1.0, -1.0]),
Gst.ValueArray([1.0, -1.0))
Notice that you need to "cast" each arrays to Gst.ValueArray, otherwise
there is an ambiguity between Gst.ValueArray and Gst.ValueList list type.
Fortunatly, Gst.ValueArray implements the Sequence interface, so it can
be indexed like normal python matrix.
Matthew Waters [Wed, 1 Mar 2017 09:51:43 +0000 (20:51 +1100)]
mssdemux: only add live fragments after manifest fragments
A live manifest may have a set (> LookAheadFragmentCount) of fragments
that have already been served and are stored on the server, maybe
indefinitely. Adding the parsed live fragments after the manifest
fragments breaks duration reporting and the seekable range.
Fix by only adding parsed fragments outside the list of fragments which
assumes that the fragment list in the manifest is accurate enough to not
stray too far off what's in the retrieved data.
https://bugzilla.gnome.org/show_bug.cgi?id=779447
Nicolas Dufresne [Fri, 24 Mar 2017 19:43:07 +0000 (15:43 -0400)]
Add missing include path for gst/glib-compat-prive.h
This fixes build failure in mplex and mpeg2enc plugins and most likely
in kate plugin (untested).
Sebastian Dröge [Fri, 24 Mar 2017 12:25:48 +0000 (14:25 +0200)]
decklink: Use GstQueueArray instead of GQueue
Let's save two allocations and frees per frame.
Nirbheek Chauhan [Wed, 22 Mar 2017 21:18:10 +0000 (02:48 +0530)]
meson: Build mpeg2enc and mplex when available
Sebastian Dröge [Wed, 22 Mar 2017 15:38:20 +0000 (17:38 +0200)]
kmssink: Fix compiler warning with gcc 7
gstkmssink.c: In function ‘gst_kms_sink_get_input_buffer’:
gstkmssink.c:1102:29: error: ‘mems[0]’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
kmsmem = (GstKMSMemory *) get_cached_kmsmem (mems[0]);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Jan Schmidt [Wed, 22 Mar 2017 13:49:43 +0000 (00:49 +1100)]
adaptivedemux: Don't send EOS on pads when there's a pending switch
When there are new pads pending for a bitrate switch, don't allow
EOS through from the old streams. It will be sent when the new pads are
ready, just before the old streams are removed.
This fixes racy bitrate switching with hlsdemux in urisourcebin
where old pads EOS before new pads appear and the entire pipeline can
EOS if those propagate fast enough
Seungha Yang [Wed, 22 Mar 2017 11:10:57 +0000 (20:10 +0900)]
player: Make use of GstStreams API with playbin3
Allow use of playbin3 and GstStreams API by setting
the environment variable "GST_PLAYER_USE_PLAYBIN3"
https://bugzilla.gnome.org/show_bug.cgi?id=775487
Georg Lippitsch [Tue, 21 Mar 2017 17:16:52 +0000 (18:16 +0100)]
decklinkvideosrc: Add read-only "signal" property
https://bugzilla.gnome.org/show_bug.cgi?id=780367
Sebastian Dröge [Wed, 22 Mar 2017 11:22:40 +0000 (13:22 +0200)]
audiobuffersplit: Install srcpad query function on the srcpad, not the sinkpad
Sebastian Dröge [Wed, 22 Mar 2017 10:04:35 +0000 (12:04 +0200)]
dashdemux: In reverse playback mode, if seeking to the beginning of a fragment, start with the previous one instead
There's no point to start downloading a fragment just to output 1ns.
Sebastian Dröge [Tue, 21 Mar 2017 18:37:17 +0000 (20:37 +0200)]
dashdemux: Implement SNAP_NEAREST seeks
Sebastian Dröge [Tue, 21 Mar 2017 18:36:02 +0000 (20:36 +0200)]
dashdemux: Don't use ABS() for calculating differences
We know which number is bigger.
Sebastian Dröge [Tue, 21 Mar 2017 18:27:10 +0000 (20:27 +0200)]
dashdemux: Only snap seeks forwards if the seek position does not happen to be the exact segment position
Sebastian Dröge [Tue, 21 Mar 2017 18:14:53 +0000 (20:14 +0200)]
dashdemux: Use gst_mpdparser_get_segment_end_time() directly instead of calculating it again
It does the exact same calculations.
Sebastian Dröge [Mon, 6 Mar 2017 17:44:02 +0000 (19:44 +0200)]
mpdparser: Refactor to get rid of one level of indentation in seeking code
Also go out of the segment searching loop once segment->start > ts.
We're not going to find any earlier segment anymore.
Sebastian Dröge [Tue, 21 Mar 2017 14:18:15 +0000 (16:18 +0200)]
dashdemux: Fix snap SIDX seeking and report if we're going outside the index
Instead of just going to the first or last fragment, report if we're
going outside the index. This should never happen unless there's a bug
or the stream is broken.
Allow some possibility for inaccuracies here though.
Reynaldo H. Verdejo Pinochet [Tue, 21 Mar 2017 17:20:49 +0000 (10:20 -0700)]
dvb: camutils: drop macro disabling glib deprecation warnings
No longer needed.
Scott D Phillips [Mon, 20 Mar 2017 22:19:08 +0000 (15:19 -0700)]
build: declare dependency from gl on allocators
libgstgl has a dependency on libgstallocators starting with:
ed1e4c1 glupload: Add support for Vivante DirectTexture uploads
The dependency wasn't stated in the Makefile, so the build could
occasionally fail if you got unlucky with the ordering of build
steps.
https://bugzilla.gnome.org/show_bug.cgi?id=780330
Tim-Philipp Müller [Mon, 20 Mar 2017 19:57:32 +0000 (19:57 +0000)]
dvb: fix distcheck
Apparently automake automatically dists README files,
but can't handle when they disappear.
Tim-Philipp Müller [Mon, 20 Mar 2017 17:15:54 +0000 (17:15 +0000)]
Update for 'mad' mp3 decoder removal
https://bugzilla.gnome.org/show_bug.cgi?id=776140
Seungha Yang [Fri, 17 Mar 2017 06:34:33 +0000 (15:34 +0900)]
m3u8: Fix parsing EXT-X-DISCONTINUITY
EXT-X-DISCONTINUITY tag should have no trailing ":" character
https://bugzilla.gnome.org/show_bug.cgi?id=780179
Seungha Yang [Fri, 17 Mar 2017 07:47:07 +0000 (16:47 +0900)]
m3u8: Release m3u8 lock if consistent checking failed
To fix deadlock during live m3u8 update
https://bugzilla.gnome.org/show_bug.cgi?id=780180
Sebastian Dröge [Thu, 16 Mar 2017 10:35:40 +0000 (12:35 +0200)]
dashdemux: Just reset SIDX parser if the index is invalid for the current segment
https://bugzilla.gnome.org/show_bug.cgi?id=780108
Chris Bass [Fri, 23 Dec 2016 11:07:00 +0000 (11:07 +0000)]
ttml: Replace assertions
Remove assertions and replace, where necessary, with code that handles
the error cases.
https://bugzilla.gnome.org/show_bug.cgi?id=776436
Sebastian Dröge [Wed, 15 Mar 2017 11:24:57 +0000 (13:24 +0200)]
dashdemux: If a SIDX seek failed although we're in the correct segment, disable the SIDX usage for this segment
The SIDX apparently does not contain information about the current
segment, so better stop using it instead of using incorrect values.
Sebastian Dröge [Wed, 15 Mar 2017 11:24:04 +0000 (13:24 +0200)]
dashdemux: Keep track of the PTS, not the SIDX index position between representations
There is no guarantee that the index positions are the same between
representations, and assuming this easily causes us to get into invalid
index positions.
Sebastian Dröge [Wed, 15 Mar 2017 11:21:38 +0000 (13:21 +0200)]
dashdemux: When clearing the sidx parser, reset all state
And especially don't keep entry count and index around, we have no
entries anymore after clearing.
Seungha Yang [Wed, 15 Mar 2017 01:17:59 +0000 (10:17 +0900)]
dashdemux: Drain buffer at the end of subfragment
Some of streams such as below have tailing boxes at the end of subfragment.
http://dash.akamaized.net/dash264/TestCases/1a/netflix/exMPD_BIP_TC1.mpd
https://bugzilla.gnome.org/show_bug.cgi?id=776200
Seungha Yang [Wed, 15 Mar 2017 00:24:39 +0000 (09:24 +0900)]
dashdemux: Do not advace subfragment after pending SIDX seek done
If a MPD is On-Demand profile and no index described, demux will terminate
download loop after parsing inband SIDX with flow return custom-success.
At this moment, SIDX index is excat target position, but finish_fragment()
might cause re-advancing subfragment depending on MPD structure.
https://bugzilla.gnome.org/show_bug.cgi?id=776200
Seungha Yang [Tue, 14 Mar 2017 10:47:17 +0000 (19:47 +0900)]
dashdemux: Reset SIDX related variables per fragment
SIDX's base offset (i.e., byte offset of SIDX + sidx.first_offset)
mostly vary as per fragment. Also, target SIDX index must be zero for the
new fragment.
https://bugzilla.gnome.org/show_bug.cgi?id=776200
Seungha Yang [Tue, 14 Mar 2017 11:15:31 +0000 (20:15 +0900)]
dashdemux: Two depth seeking for On-Demand profile
Try to find fragment using MPD first, then do refinement to find
target subframgnet using SIDX if possible. Note that, if target fragment
was moved from the previously activated one, we should assume that
the last SIDX is invalid for new fragment.
https://bugzilla.gnome.org/show_bug.cgi?id=776200
Seungha Yang [Tue, 14 Mar 2017 10:41:56 +0000 (19:41 +0900)]
dashdemux: Exception handle in _sidx_seek()
If target seek position is outside of the range of sidx entries,
binary search returns NULL pointer.
https://bugzilla.gnome.org/show_bug.cgi?id=776200
Sebastian Dröge [Tue, 14 Mar 2017 17:27:45 +0000 (19:27 +0200)]
dashdemux: Add assertion for preventing of access after the end of the sidx entries array
Better crash cleanly here than reading some random numbers from memory.
Scott D Phillips [Tue, 14 Mar 2017 21:18:17 +0000 (14:18 -0700)]
gl/format: correct return enums in gst_gl_format_from_video_info
In commit
> 956c4d0 gl/format: use our own GL format enum's instead of gstvideo's
the name and return type of gst_gl_format_from_video_info changed,
but some returns of the old type were missed. Here they are
updated to the correct type.
https://bugzilla.gnome.org/show_bug.cgi?id=780064
Olivier Crête [Tue, 14 Mar 2017 20:46:14 +0000 (16:46 -0400)]
srtp test: Remove deprecation disabling
No deprecated APIs are used.
Seungha Yang [Tue, 7 Mar 2017 12:56:03 +0000 (21:56 +0900)]
dashdemux: Advance subfragment only if any exist
SIDX based playback is not restricted to SegmentBase, but it possible
with SegmentList/SegmentTemplate. In the latter case, each fragment
has its own SIDX box and might be subdivided into subfragment.
So, demux should not assume that the end of subfragment is the end
of stream. Moreover, should try advance subfragment only if there
are remaining subfragments.
With additional fixes by Sebastian Dröge <sebastian@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=776200
George Kiagiadakis [Mon, 13 Mar 2017 14:06:53 +0000 (16:06 +0200)]
kmssink: adjust memory offset calculation for dmabuf buffers
The data in the dmabuf fd may not start from byte 0, therefore
we need to inform DRM about this additional offset.
https://bugzilla.gnome.org/show_bug.cgi?id=779790
George Kiagiadakis [Mon, 13 Mar 2017 13:48:33 +0000 (15:48 +0200)]
glupload: adjust memory offset calculation for dmabuf buffers
The data in the dmabuf fd may not start from byte 0, therefore
we need to inform EGL about this additional offset.
https://bugzilla.gnome.org/show_bug.cgi?id=779790
George Kiagiadakis [Mon, 13 Mar 2017 10:46:47 +0000 (12:46 +0200)]
waylandsink: fix memory offset calculation for dmabuf buffers
https://bugzilla.gnome.org/show_bug.cgi?id=779790
Matthew Waters [Tue, 14 Mar 2017 05:49:25 +0000 (16:49 +1100)]
Revert "adaptivedemux: answer duration queries for live streams"
Completely disabling duration reporting with live streams is not cool.
This reverts commit
e1b68d9a65ba512a52c3a2b298fa830a445eb451.
https://bugzilla.gnome.org/show_bug.cgi?id=753879
Matthew Waters [Tue, 14 Mar 2017 03:15:00 +0000 (14:15 +1100)]
gl: GL_ARRAY_BUFFER is not a part of VAO state
As a result we need to bind it on every draw in order to have the
correct state in the GL state machine.
Matthew Waters [Tue, 14 Mar 2017 00:39:23 +0000 (11:39 +1100)]
applemedia/iosurfacememory: Fix missing variable name change
956c4d0bde4d6707ccae2b4ae6dfba8500e55217 missed a variable name change.
Fix that.
Matthew Waters [Mon, 13 Mar 2017 03:28:47 +0000 (14:28 +1100)]
gl/format: use our own GL format enum's instead of gstvideo's
They can describe in more detail (such as component sizes) the requested format.
Vincent Penquerc'h [Fri, 10 Mar 2017 16:57:51 +0000 (16:57 +0000)]
glupload: fix GValue leak
https://bugzilla.gnome.org/show_bug.cgi?id=779869
Nicolas Dufresne [Sun, 12 Mar 2017 15:50:50 +0000 (11:50 -0400)]
Add old plugins names to cruft list
This helps fixing uninstalled setup. Also fixes some path in plugin xml
files.
https://bugzilla.gnome.org/show_bug.cgi?id=779344
Samuel Maroy [Wed, 23 Sep 2015 15:12:34 +0000 (17:12 +0200)]
shmsink: continue polling after EINTR
https://bugzilla.gnome.org/show_bug.cgi?id=779856
Haihua Hu [Thu, 2 Mar 2017 06:36:56 +0000 (14:36 +0800)]
player: Fix setting of external subtitle URI
gst_player_set_uri_internal shouldn't free suburi which maybe set
by user to load external subtitle before start play. It just need
reset playbin's subutri property to NULL no matter if there was a
previous one or not.
https://bugzilla.gnome.org/show_bug.cgi?id=779453
Sebastian Dröge [Thu, 9 Mar 2017 08:09:40 +0000 (10:09 +0200)]
avfvideosrc: Use AVCaptureDeviceTypeBuiltInDuoCamera instead of DualCamera for now
The former is deprecated in 10.2 but we don't require that SDK yet.
Nicolas Dufresne [Thu, 9 Mar 2017 03:28:15 +0000 (22:28 -0500)]
Fix doc generation
This regression was caused by the renaming of plugin-sdp into
plugin-sdpelem. The doc reference needed an update. Also, add the old
xml to the cruft file list.
https://bugzilla.gnome.org/show_bug.cgi?id=779344
Nicolas Dufresne [Sun, 5 Mar 2017 20:27:11 +0000 (15:27 -0500)]
dash/smoothstreaming: Use GST_PLUGIN_LIBTOOLFLAGS
Use the flags defined by configure script instead of always disabling
static plugins.
Nicolas Dufresne [Sat, 4 Mar 2017 16:03:53 +0000 (11:03 -0500)]
Rename plugin filesnames to match plugin names
- libgstgtksink.so -> libgstgtk.so
- libgstteletextdec.so -> libgstteletex.so
- libgstcamerabin2.so -> libgstcamerabin.so
- libgstonvif.so -> libgstrtponvif.so (meson only)
- sdp -> sdpelem (avoid clash with libgstsdp)
- gstsiren -> siren
- libgstkmssink.so -> libgstkms.so
https://bugzilla.gnome.org/show_bug.cgi?id=779344
Sebastian Dröge [Wed, 8 Mar 2017 13:52:43 +0000 (15:52 +0200)]
timecodestamper: Only unref daily jam if not NULL
Sebastian Dröge [Wed, 8 Mar 2017 13:48:19 +0000 (15:48 +0200)]
timecodestamper: Unref daily jam after usage
Nick Kallen [Wed, 8 Mar 2017 13:16:43 +0000 (14:16 +0100)]
applemedia/gl: Fix compile issues for OSX
https://bugzilla.gnome.org/show_bug.cgi?id=778333
Sebastian Dröge [Wed, 8 Mar 2017 13:13:45 +0000 (15:13 +0200)]
gl/eagl: It's -fobjc-arc not -fobj-arc
Sebastian Dröge [Wed, 8 Mar 2017 12:22:52 +0000 (14:22 +0200)]
h264parse: frame->buffer can't be NULL in pre_push_frame()
CID 1402118
Hyunjun Ko [Wed, 8 Mar 2017 08:11:17 +0000 (17:11 +0900)]
tests: h264parse: fix failures due to insertion of au delimiter
Since insertion of aud landed, we need to change some testcases
accroding to the change.
Note that counting frames are changed in parser.c,
due to generated frames, AUD.
https://bugzilla.gnome.org/show_bug.cgi?id=736213
Hyunjun Ko [Wed, 8 Mar 2017 08:09:28 +0000 (17:09 +0900)]
h264parse: fix some failures in testcases
Move logic of judgement whether or not to insert AU Delimiter before
draining.
Besides, aud_needed flag is reset to TRUE when skip.
https://bugzilla.gnome.org/show_bug.cgi?id=736213
Nick Kallen [Wed, 8 Feb 2017 11:23:09 +0000 (12:23 +0100)]
applemedia: avfvideosrc supports position, device-type, and orientation
Avfvideosrc represents an iphone camera or, on mac, a screencapture session.
The old API allowed you to select an input device by device index only. The new
API adds the ability to select the position (front or back facing) and
device-type (wide angle, telephoto, etc.). Furthermore, you can now specify
the orientation (portrait, landscape, etc.) of the videostream.
https://bugzilla.gnome.org/show_bug.cgi?id=778333
Nick Kallen [Fri, 3 Feb 2017 13:46:39 +0000 (14:46 +0100)]
applemedia/gl: Update code to use ARC
All code interacting with Objective-C objects should now use Automated
Reference Counting rather than manual memory management or Garbage
Collection. Because ARC prohibits C-structs from containing
references to Objective-C objects, all such fields are now typed
'gpointer'. Setting and gettings Objective-C fields on such a
struct now uses explicit __bridge_* calls to tell ARC about
object lifetimes.
https://bugzilla.gnome.org/show_bug.cgi?id=777847
Hyunjun Ko [Tue, 7 Mar 2017 09:33:12 +0000 (18:33 +0900)]
h264parse: insert AU delimiter only in case of byte-stream
Inserts AU delimeter by default if missing au delimeter from upstream.
This should be done only in case of byte-stream format.
Note that:
We have to compensate for the new bytes added for the AU, otherwise
insertion of PPS/SPS will use wrong offsets and overwrite wrong data.
Also mark the AU delimiter blob const, and use frame->out_buffer for
storing the output to keep baseparse assumptions valid.
Original-Patch-By: Michal Lazo <michal.lazo@mdragon.org>
Helped by Sebastian Dröge <sebastian@centricular.com>
https://bugzilla.gnome.org/show_bug.cgi?id=736213
George Kiagiadakis [Fri, 3 Mar 2017 14:20:15 +0000 (16:20 +0200)]
videoaggregator: redo src caps negotiation if a sink pad's caps have changed in the meantime
https://bugzilla.gnome.org/show_bug.cgi?id=755782
Arun Raghavan [Mon, 6 Mar 2017 12:21:32 +0000 (17:51 +0530)]
gl: Missed one backwards compat define in GST_GL_TYPE_CONTEXT
Continued from
296b4251e3042fe95a9cce1ad7674b708ba92599
Seungha Yang [Tue, 21 Feb 2017 11:08:21 +0000 (20:08 +0900)]
hlsdemux: Try to find type at the end of a fragment
hlsdemux tries to find type if given buffer size is large enought to
find type (currently the threshold is 2KB), or EOS in some cases.
However, since there can be small byte fragments such as WebVTT,
demux should try to find type at the end of a fragment
https://bugzilla.gnome.org/show_bug.cgi?id=779011
Tim-Philipp Müller [Mon, 6 Mar 2017 00:30:41 +0000 (00:30 +0000)]
voaacenc: limit bitrate property to 320 kbps
This appears to be the internal limit of voaacenc, higher
bitrates will be ignored and 128 kbps output will be produced
instead. Therefore, we might just as well limit the allowed
property values, so that people who try to set higher bitrates
get a big fat warning instead of silently a much lower bitrate.
Nick Kallen [Sat, 4 Mar 2017 11:12:52 +0000 (12:12 +0100)]
applemedia: Fix video texture cache build issue on MacOS
https://bugzilla.gnome.org/show_bug.cgi?id=779247
Nick Kallen [Sun, 26 Feb 2017 09:24:46 +0000 (10:24 +0100)]
applemedia: ensure all textures are released before texturecache is released
It was previously possible for videotexturecache to be finalized before all of
its textures. Finalizing outstanding textures in this circumstance leads
to a crash. This patch ensure resources are freed in the proper order.
https://bugzilla.gnome.org/show_bug.cgi?id=779247
Sebastian Dröge [Sat, 4 Mar 2017 09:47:04 +0000 (11:47 +0200)]
gl: Fixup for last commit
Sebastian Dröge [Sat, 4 Mar 2017 09:15:58 +0000 (11:15 +0200)]
gl: Fix backwards compat GST_GL_TYPE_* functions/macros
These have to be macros instead of inline function as they must behave
more or less like an integer literal, i.e. include the function call.
Sebastian Dröge [Sat, 4 Mar 2017 09:09:39 +0000 (11:09 +0200)]
gl/viv-fb: Don't use deprecated symbols and make macros more consistent
https://bugzilla.gnome.org/show_bug.cgi?id=778825
Sebastian Dröge [Fri, 3 Mar 2017 13:17:15 +0000 (15:17 +0200)]
audiomixmatrix: Fix negotiation in first-channels mode if downstream does not allow the same number of channels
Dongil Park [Thu, 16 Feb 2017 01:51:44 +0000 (10:51 +0900)]
hlsdemux: Fix checking adaptation_field_control field to parse pcr
The PCR_flag and PCR value is in adaptation_field, not in payload.
The MSB of adaptation_field_control is used as whether adaptation_
field is exist or not.
For the case(PCR in only adaptation_field without payload), we modify
checking condition about adaptation_field_control field.
https://bugzilla.gnome.org/show_bug.cgi?id=778731
Seungha Yang [Thu, 2 Feb 2017 12:06:20 +0000 (21:06 +0900)]
hls: Fix various leak on hlsdemux and m3u8
* default_variant should be freed, it holds ref.
* GstHLSMedia holds GstM3U8 ref.
* gst_m3u8_get_next_fragment() increases ref count.
https://bugzilla.gnome.org/show_bug.cgi?id=778073
Seungha Yang [Thu, 2 Feb 2017 12:04:36 +0000 (21:04 +0900)]
tests: hls: Fix leak on test code
https://bugzilla.gnome.org/show_bug.cgi?id=778073
Wojciech Przybyl [Fri, 1 Apr 2016 16:42:32 +0000 (17:42 +0100)]
dashdemux: fix default suggestedPresentationDelay
When MPD@suggestedPresentationDelay is not present in the MPD,
dashdemux can provide default suggestedPresentationDelay. However
when applying default value of suggestedPresentationDelay, the value
should be subtracted from current time, not added to it. When streams
setup is performed and live point is calculated, we have to go to the
wall clock (current time) minus suggestedPresentationDelay, if we tried
to start with current time plus suggestedPresentationDelay, we would
be asking for future stream, which has not yet been recorded. Also
the value needs to be converted from ms to us.
https://bugzilla.gnome.org/show_bug.cgi?id=764726
Alex Ashley [Fri, 5 Feb 2016 12:44:23 +0000 (12:44 +0000)]
adaptivedemux: answer duration queries for live streams
For duration queries on live streams, adaptivedemux ignores the query.
The problem then is that the query is answered by the downstream
qtdemux element, with the duration of the currently passing fragment.
This commit changes the behaviour of adaptivedemux to answer the duration
queries for live streams, returning GST_CLOCK_TIME_NONE.
https://bugzilla.gnome.org/show_bug.cgi?id=753879
Seungha Yang [Wed, 1 Feb 2017 10:55:22 +0000 (19:55 +0900)]
hlsdemux: Implement adaptivedemux's _stream_seek()
_stream_seek() can be called by adaptivedemux when "restart download" condition.
It's mostly caused by track switching.
https://bugzilla.gnome.org/show_bug.cgi?id=776997
Seungha Yang [Wed, 1 Feb 2017 10:15:31 +0000 (19:15 +0900)]
hlsdemux: Simplify seeking code by using macro
Import an adaptivedemux's macro to minimize code.
Also, this patch considers KEY_UNIT and TRICKMODE_KEY_UNITS
as snap seek.
https://bugzilla.gnome.org/show_bug.cgi?id=776997
Seungha Yang [Wed, 1 Feb 2017 08:44:25 +0000 (17:44 +0900)]
hlsdemux: Early terminate seeking if we don't need to do
Some codes are imported from dashdemux
https://bugzilla.gnome.org/show_bug.cgi?id=776997
Thomas Bluemel [Mon, 10 Oct 2016 22:41:15 +0000 (16:41 -0600)]
hlsdemux: Add support for EXT-X-DISCONTINUITY-SEQUENCE
https://bugzilla.gnome.org/show_bug.cgi?id=772811
Thomas Bluemel [Mon, 27 Feb 2017 21:54:43 +0000 (14:54 -0700)]
adaptivemutex: Fix double mutex unlock
https://bugzilla.gnome.org/show_bug.cgi?id=779480
Sebastian Dröge [Wed, 1 Mar 2017 13:29:42 +0000 (15:29 +0200)]
openexrdec: Also catch other exceptions by reference instead of by value
It would have to be copied otherwise, and is quite big.
CID 1373419
Sebastian Dröge [Wed, 1 Mar 2017 10:08:58 +0000 (12:08 +0200)]
decklinkvideosink: Don't error out if displaying the preroll frame fails
This seems to happen sometimes on some hardware, and is not really
critical as long as the scheduling of the normal frames works fine.
Only post a warning message for this case.
Sebastian Dröge [Tue, 28 Feb 2017 13:56:02 +0000 (15:56 +0200)]
openexrdec: Catch exception by reference instead of by value
It would have to be copied otherwise, and is quite big.
CID 1373419
Sebastian Dröge [Tue, 28 Feb 2017 13:53:10 +0000 (15:53 +0200)]
dashdemux: Fix potential NULL pointer dereference
CID 1399700
Sebastian Dröge [Tue, 28 Feb 2017 13:31:53 +0000 (15:31 +0200)]
hlsdemux: Compare media type of the correct variable that is actually set
CID 1364752
Sebastian Dröge [Tue, 28 Feb 2017 13:22:43 +0000 (15:22 +0200)]
gltestsrc: Fix potential NULL pointer dereference if we fail without GError
Which can happen here if we just propagate an error that happened
elsewhere, e.g. FBO failed.
CID 1364604
Sebastian Dröge [Tue, 28 Feb 2017 11:06:41 +0000 (13:06 +0200)]
glvideomixer/compositor: Correctly error out if calculating DAR fails
CID 1320700
Sebastian Dröge [Tue, 28 Feb 2017 10:53:11 +0000 (12:53 +0200)]
motioncells: Initialize m_changed_datafile class field
CID 1197704
Sebastian Dröge [Tue, 28 Feb 2017 10:46:42 +0000 (12:46 +0200)]
gme: Remove useless comparison of unsigned integer with < 0
CID 206187
Sebastian Dröge [Tue, 28 Feb 2017 10:34:30 +0000 (12:34 +0200)]
glcolorconvert: Check return value of gst_gl_context_check_framebuffer_status()
CID 1401588
Sebastian Dröge [Tue, 28 Feb 2017 10:31:54 +0000 (12:31 +0200)]
gl: Add viv-fb to DIST_SUBDIRS to fix "make distcheck"
Sebastian Dröge [Tue, 28 Feb 2017 08:53:04 +0000 (10:53 +0200)]
gl: Rename gst_gl_get_affine_transformation_meta_as_ndc_ext() to prevent symbol conflict
The same symbol also exists in libgstgl, although marked as private and
internal. This has no effect when doing static linking and there's a
symbol conflict.
Sebastian Dröge [Tue, 28 Feb 2017 08:50:23 +0000 (10:50 +0200)]
glutils: Mark private functions as G_GNUC_INTERNAL