Polochon_street [Fri, 2 Oct 2015 15:05:11 +0000 (17:05 +0200)]
dtls: fix printf format on win32
Aleix Conchillo Flaqué [Wed, 30 Sep 2015 17:27:06 +0000 (10:27 -0700)]
dtls: require openssl >= 1.0.1
https://bugzilla.gnome.org/show_bug.cgi?id=755892
Paul Arzelier [Fri, 2 Oct 2015 12:46:59 +0000 (14:46 +0200)]
dtls: fix printf format on win32
https://bugzilla.gnome.org/show_bug.cgi?id=755981
John Chang [Wed, 30 Sep 2015 03:00:39 +0000 (11:00 +0800)]
dashdemux: Correctly assign earliest pts instead of overriding it with first offset
https://bugzilla.gnome.org/show_bug.cgi?id=755824
Sebastian Dröge [Wed, 30 Sep 2015 17:01:21 +0000 (19:01 +0200)]
audioaggregator: Select the initial offset based on the start segment position
instead of always using 0. Otherwise we might output a lot of silence in the
beginning instead of outputting from the relevant position.
https://bugzilla.gnome.org/show_bug.cgi?id=755623
Sebastian Dröge [Wed, 30 Sep 2015 17:05:35 +0000 (19:05 +0200)]
aggregator: Convert GST_ERROR_OBJECT() for seek events to GST_DEBUG_OBJECT()
Sebastian Dröge [Wed, 30 Sep 2015 17:03:05 +0000 (19:03 +0200)]
aggregator: For the start time selection, only set the segment position
segment.time and segment.start can stay the same, and were always the same
before anyway because of a mistake.
https://bugzilla.gnome.org/show_bug.cgi?id=755623
Sebastian Dröge [Tue, 22 Sep 2015 14:17:38 +0000 (16:17 +0200)]
dashdemux: Implement lazy-loading of external periods
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Mon, 21 Sep 2015 19:05:03 +0000 (21:05 +0200)]
mpdparser: Load OnLoad external resources immediately instead of on demand
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Tue, 8 Sep 2015 10:36:23 +0000 (13:36 +0300)]
mpdparser: Add support for loading external SegmentLists
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Tue, 8 Sep 2015 10:04:11 +0000 (13:04 +0300)]
mpdparser: Add support for loading external AdaptationSets
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Fri, 21 Aug 2015 13:40:10 +0000 (16:40 +0300)]
mpdparser: Implement loading of external Period nodes
The same has to be done for AdaptationSet and SegmentList nodes still.
Also this does not correctly implement the semantics: by default Period (and
other nodes) should only be loaded when needed, not in the very beginning. We
need to implement lazy loading for them, which means adjusting
gst_mpd_client_setup_media_presentation().
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Fri, 21 Aug 2015 09:06:07 +0000 (12:06 +0300)]
mpdparser: Store an URI downloader in the parser for downloading additional MPD resources if needed
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Fri, 10 Jul 2015 15:56:29 +0000 (18:56 +0300)]
mpdparser: Parse xlink attributes from Period, AdaptationSet and SegmentList
We still have to do something useful with them, like actually loading the
content behind the URL.
https://bugzilla.gnome.org/show_bug.cgi?id=752230
Sebastian Dröge [Wed, 16 Sep 2015 21:38:24 +0000 (23:38 +0200)]
dashdemux: Properly handle relative and non-HTTP URIs for the headers/indices
gst_uri_join_strings() will return the second parameter if it is an absolute
URI. No need to do a (wrong) check if the URI is absolute or not beforehand.
https://bugzilla.gnome.org/show_bug.cgi?id=755134
Sebastian Dröge [Wed, 16 Sep 2015 21:12:54 +0000 (23:12 +0200)]
mpdparser: If no Initialization is present in the SegmentBase, assume it is before the indexRange
https://bugzilla.gnome.org/show_bug.cgi?id=755132
Philippe Normand [Wed, 16 Sep 2015 10:50:46 +0000 (12:50 +0200)]
mssdemux: activate streams before configuring bitrate
Doing the contrary has no effect and the consequence is that playback
will start with the lowest bitrate even if we can already handle
higher bitrate.
https://bugzilla.gnome.org/show_bug.cgi?id=755108
Philippe Normand [Thu, 3 Sep 2015 13:11:00 +0000 (15:11 +0200)]
mssdemux: always use timescale for gst timestamp calculation
Not doing this can lead the demuxer to attempt downloading fragments
for an invalid start time. The server would then send a HTTP
Precondition failed error, the demuxer would try some more times to
download the invalid fragment and eventually error out.
https://bugzilla.gnome.org/show_bug.cgi?id=754523
Antoine Jacoutot [Wed, 30 Sep 2015 06:36:15 +0000 (08:36 +0200)]
gl: Pass GL_CFLAGS to g-ir-scanner
This unbreaks building when some headers are under a non-standard path.
e.g. /usr/X11R6/include as on OpenBSD.
https://bugzilla.gnome.org/show_bug.cgi?id=755850
Aleix Conchillo Flaqué [Wed, 30 Sep 2015 07:44:16 +0000 (00:44 -0700)]
applemedia: dist missing header files
https://bugzilla.gnome.org/show_bug.cgi?id=755852
Vineeth TM [Wed, 30 Sep 2015 04:13:19 +0000 (13:13 +0900)]
audiointerleave: typecast bit-mask to guint64 to fix segmentation fault
While creating caps in audiointerleave tests, bitmask is being set as 0x9
This is resulting in segmentation fault. Fix the same by typecasting to guint64
https://bugzilla.gnome.org/show_bug.cgi?id=755840
Tim-Philipp Müller [Tue, 29 Sep 2015 23:36:14 +0000 (00:36 +0100)]
mpegtsmux: fix downstream key unit events handling with hlssink
The buffer timestamps in the collect function will already be
running time, don't try to convert them again to running time,
this would yield CLOCK_TIME_NONE now that the segment is shifted
to account for negative dts.
This fixes x264enc ! mpegtsmux ! hlssink, which was broken
because mpegtsmux would send a downstream key unit event with
running time NONE and then hlssink would immediately send
another one upstream and it would just be a flood of force
keyframe events in both directions after the first one. This
would then break hlssink because it uses multifilesink in
next-file=key-unit-event mode, and starting a new file after
every few kB does not work well for HLS.
Tim-Philipp Müller [Tue, 29 Sep 2015 12:31:18 +0000 (13:31 +0100)]
videoaggregator: fix compilation with older glib version
Remove weird use of private gtype defines and fix compilation
with older glib versions such as 2.36.
https://bugzilla.gnome.org/show_bug.cgi?id=755754
Arnaud Vrac [Mon, 28 Sep 2015 18:56:56 +0000 (20:56 +0200)]
assrender: fix leak of tag samples in the tag list
Move handling of a GstSample in a separate function, and unref the
sample after calling it. libass copies the font data so we don't need to
keep it around.
https://bugzilla.gnome.org/show_bug.cgi?id=755759
Arnaud Vrac [Mon, 28 Sep 2015 18:30:17 +0000 (20:30 +0200)]
assrender: fix gap event leak and invalid return value
We don't want the gap event to be forwarded
https://bugzilla.gnome.org/show_bug.cgi?id=755759
Matthew Waters [Thu, 17 Sep 2015 06:59:16 +0000 (16:59 +1000)]
gl/eagl: use the default GL context debug category
Matthew Waters [Mon, 28 Sep 2015 14:25:00 +0000 (00:25 +1000)]
gtk: fix assertion when the element has no peer
When proxying keyboard/navigation/mouse events, only unref a successfully
retreived peer pad.
https://bugzilla.gnome.org/show_bug.cgi?id=755738
Jan Schmidt [Sun, 27 Sep 2015 03:07:19 +0000 (13:07 +1000)]
resindvd: Send gap updates to the segment stop during stills
Ignore the normal gap threshold for laggy streams and
immediately catch all streams up to the end of the segment
when processing gap updates for a segment during a
still frame sequence.
https://bugzilla.gnome.org/show_bug.cgi?id=755680
Arnaud Vrac [Fri, 18 Sep 2015 17:07:47 +0000 (19:07 +0200)]
dvdspu: fix pgs palette colors
U and V were inverted
https://bugzilla.gnome.org/show_bug.cgi?id=755239
Tim-Philipp Müller [Sat, 26 Sep 2015 09:21:41 +0000 (10:21 +0100)]
audiomixer: fix deadlock when G_DISABLE_ASSERT is not defined
This makes the audiomixer unit test time out in master.
Broke with 587e7c4
Sebastian Dröge [Fri, 25 Sep 2015 21:33:37 +0000 (23:33 +0200)]
Release 1.6.0
Sebastian Dröge [Fri, 25 Sep 2015 21:01:35 +0000 (23:01 +0200)]
Update .po files
Julien Isorce [Fri, 25 Sep 2015 09:32:00 +0000 (10:32 +0100)]
glfilter: use GL_ELEMENT_ARRAY_BUFFER for vbo indices
Fixes this error with chromium gpu process:
GL_INVALID_OPERATION, glBindBuffer: buffer bound to more than 1 target
https://bugzilla.gnome.org/show_bug.cgi?id=755618
Julien Isorce [Thu, 17 Sep 2015 13:17:09 +0000 (14:17 +0100)]
glmemory: fix texture leak in _gl_mem_copy
https://bugzilla.gnome.org/show_bug.cgi?id=755456
Sebastian Dröge [Thu, 24 Sep 2015 16:51:39 +0000 (18:51 +0200)]
gtk: Only run from the main thread in stop() if we created the window
We're not doing anything at all from the main thread in other cases.
Thibault Saunier [Thu, 24 Sep 2015 13:52:40 +0000 (15:52 +0200)]
gtk: When setting format check if pending format changed
In case the format changed fast and the pending format is different
than the currently set but the currently set is equal to the pending
one we could end up having mismatch between the finally set format
and the data stream format.
https://bugzilla.gnome.org/show_bug.cgi?id=755542
Thibault Saunier [Thu, 24 Sep 2015 13:51:28 +0000 (15:51 +0200)]
gtk: Do not forget to release OBJECT_LOCK on error path
https://bugzilla.gnome.org/show_bug.cgi?id=755542
Thibault Saunier [Thu, 24 Sep 2015 09:37:04 +0000 (11:37 +0200)]
gtk: Factor out a function to run a function on main thread
https://bugzilla.gnome.org/show_bug.cgi?id=755251
Thibault Saunier [Thu, 24 Sep 2015 08:51:31 +0000 (10:51 +0200)]
gtk: Marshall state changes in the main thread
Gtk is not MT safe thus we need to make sure that everything is done
in the main thread when working with it.
https://bugzilla.gnome.org/show_bug.cgi?id=755251
Sebastian Dröge [Wed, 23 Sep 2015 13:56:26 +0000 (15:56 +0200)]
decklink: Add a clock epoch that is used as offset whenever restarting the clock
Otherwise we're going to return times starting at 0 again after shutting down
an element for a specific input/output and then using it again later.
https://bugzilla.gnome.org/show_bug.cgi?id=755426
Sebastian Dröge [Tue, 22 Sep 2015 17:35:00 +0000 (19:35 +0200)]
decklink: Disable inputs/outputs in PAUSED->READY to allow going to PAUSED again from there
https://bugzilla.gnome.org/show_bug.cgi?id=755426
Thibault Saunier [Wed, 23 Sep 2015 09:42:51 +0000 (11:42 +0200)]
gtksink: Do not show window until we reach the PAUSED state
https://bugzilla.gnome.org/show_bug.cgi?id=755459
Sebastian Dröge [Tue, 22 Sep 2015 12:43:44 +0000 (14:43 +0200)]
mpdparser: Only check stream->segments for a repeated last segment if we have a static list of segments
Otherwise we'll crash, trying to derefence NULL. And if we have no static list
of segments, we can't have repeated segments anyway.
Regression introduced by
cfe2871a5e3c5b1db20470927642b776e055a87a
https://bugzilla.gnome.org/show_bug.cgi?id=755411
Arun Raghavan [Mon, 21 Sep 2015 13:32:08 +0000 (19:02 +0530)]
x265enc: Drop incorrect stream-format="avc" in template caps
Thibault Saunier [Mon, 21 Sep 2015 08:47:15 +0000 (10:47 +0200)]
gtksink: Do not re destroy the GtkWindow if destroyed by the user
Otherwise we will get an ASSERT.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755249
Matthew Waters [Mon, 21 Sep 2015 08:04:40 +0000 (08:04 +0000)]
gl/dispmanx: fix rendering with recent resize state tracking
557ca6fda5f831be4aba5819bf7b30b296e575cd didn't change to the
necessary gst_gl_window_resize() call for the dispmanx backend.
Thibault Saunier [Sat, 19 Sep 2015 09:46:37 +0000 (11:46 +0200)]
gtkglsink: Hide and clean the GtkWindow we might create
When stopping the sink we should always hide the window.
https://bugzilla.gnome.org/show_bug.cgi?id=755249
Sebastian Dröge [Fri, 18 Sep 2015 17:51:49 +0000 (19:51 +0200)]
Release 1.5.91
Sebastian Dröge [Fri, 18 Sep 2015 17:31:06 +0000 (19:31 +0200)]
Update .po files
Sebastian Dröge [Fri, 18 Sep 2015 16:00:05 +0000 (18:00 +0200)]
audioaggregator: Only skip the remaining part of a GAP buffer
We might've queued up a GAP buffer that is only partially inside the current
output buffer (i.e. we received it too late!). In that case we should only
skip the part of the GAP buffer that is inside the current output buffer, not
also the remaining part. Otherwise we forward this pad too far into the future
and break synchronization.
Matthew Waters [Fri, 18 Sep 2015 11:14:46 +0000 (21:14 +1000)]
vtdec: disable the texture cache on OSX
This a workaround until the incompatibility with CVOpenGLTextureCache
and opengl3 contexts is fixed.
https://bugzilla.gnome.org/show_bug.cgi?id=754786
Olivier Crête [Thu, 17 Sep 2015 23:42:34 +0000 (19:42 -0400)]
aggregator: Keep at least two buffers in the queue in live mode
When in live mode, the queue needs to hold the currently processed
buffer and one more at least.
https://bugzilla.gnome.org/show_bug.cgi?id=754851
Sebastian Dröge [Fri, 18 Sep 2015 09:55:37 +0000 (11:55 +0200)]
po: Update translations
Matthew Waters [Fri, 18 Sep 2015 05:28:27 +0000 (15:28 +1000)]
vtdec: gst-indent file
Tim-Philipp Müller [Thu, 17 Sep 2015 18:56:47 +0000 (19:56 +0100)]
dvdspu: pgs: fix printf format/argument mismatch in debug statements
Fixes compiler warnings when extra debugging is enabled at compile time.
Tim-Philipp Müller [Thu, 17 Sep 2015 16:54:36 +0000 (17:54 +0100)]
adaptivedemux: remove unprefix STATISTICS_MESSAGE_NAME after all
It was only added during 1.5.x so we might just as well remove it
immediately.
https://bugzilla.gnome.org/show_bug.cgi?id=754686
Philippe Normand [Mon, 7 Sep 2015 14:57:05 +0000 (16:57 +0200)]
adaptivedemux: prefix the statistics message name macro
Keep old define around for now.
https://bugzilla.gnome.org/show_bug.cgi?id=754686
Jan Schmidt [Thu, 17 Sep 2015 14:10:10 +0000 (00:10 +1000)]
pcapparse: Hook up the recently added change_state vfunc.
The state change function was implemented, but not installed,
making the compiler complain about the unused function.
Jan Schmidt [Thu, 17 Sep 2015 14:20:13 +0000 (00:20 +1000)]
Don't throw compiler warnings with G_DISABLE_ASSERT
Disable code that warns about unused variables when G_DISABLE_ASSERT
is defined, as it is in tarballs and pre-releases.
Matthew Waters [Thu, 17 Sep 2015 12:17:24 +0000 (22:17 +1000)]
gl/caopengllayer: fix non-existent selector warning
557ca6fda5f831be4aba5819bf7b30b296e575cd introduced the queueResize
call without implementing the selector
Jan Schmidt [Thu, 17 Sep 2015 11:31:39 +0000 (21:31 +1000)]
glwindow: Fix g_return_val_if_fail in a void function
Matthew Waters [Thu, 17 Sep 2015 05:06:31 +0000 (15:06 +1000)]
applemedia/vtdec: fix negotiation errors when resizing glimagesink
GstVideoDecoder has its own logic for detecting when to reconfigure
which ultimately calls decide_allocation and results in a new
texture cache that has not been configured from our reconfigure check.
https://bugzilla.gnome.org/show_bug.cgi?id=755156
Matthew Waters [Thu, 17 Sep 2015 07:22:47 +0000 (17:22 +1000)]
glimagesink: request a resize on caps/3d mode changes
Fixes incorrect aspect ratio on OSX when changing caps or the 3d
output mode.
https://bugzilla.gnome.org/show_bug.cgi?id=755111
Matthew Waters [Thu, 17 Sep 2015 07:06:37 +0000 (17:06 +1000)]
glwindow: add API to request a resize event on the next draw
- glimagesink needs to be able to resize the viewport on aspect ratio
changes resulting from either caps changes or 3d output mode changes.
- Performing a glViewport outside the GstGLWindow::resize callback
will not have the winsys' stack of viewports required to correctly
place the output frame.
Provide a function to request a resize on the next draw event from the
winsys.
Also track size changes inside the base GstGLWindow class rather
than in each subclass.
https://bugzilla.gnome.org/show_bug.cgi?id=755111
Matthew Waters [Thu, 17 Sep 2015 06:55:11 +0000 (16:55 +1000)]
gl/uploadelement: fail earlier if we could not upload the buffer
Matthew Waters [Thu, 17 Sep 2015 06:05:21 +0000 (16:05 +1000)]
gl/x11: store the correct dimension from the resize events
small typo s/width/height/
Vineeth T M [Thu, 17 Sep 2015 04:47:23 +0000 (13:47 +0900)]
avdtputil: fix GError memory leak during failures
https://bugzilla.gnome.org/show_bug.cgi?id=755142
Vineeth T M [Thu, 17 Sep 2015 04:35:02 +0000 (13:35 +0900)]
gl: Fix GError leaks during failures
https://bugzilla.gnome.org/show_bug.cgi?id=755140
Tim-Philipp Müller [Tue, 15 Sep 2015 23:19:35 +0000 (00:19 +0100)]
intervideosink: render preroll frames as well
Derive from GstVideoSink so that preroll frames will automatically
get rendered too, unless the show-preroll-frame property is set to
FALSE. Fixes intervideosrc only picking up frames if intervideosink
is in PLAYING state.
https://bugzilla.gnome.org/show_bug.cgi?id=755049
Jan Schmidt [Wed, 16 Sep 2015 14:01:58 +0000 (00:01 +1000)]
dvbsuboverlay: Check if downstream supports GstVideoOverlayComposition.
Fix the negotiation of GstVideoOverlayComposition by checking
intersection with the peer caps, rather than just accept-caps,
which might only check the pad template.
https://bugzilla.gnome.org/show_bug.cgi?id=755113
Vincent Penquerc'h [Wed, 9 Sep 2015 13:49:17 +0000 (14:49 +0100)]
mpdparser: support for negative repeat count in segments
Implements negative repeat segment fields, defined in 5.3.9.6.1.
Vincent Penquerc'h [Tue, 8 Sep 2015 14:14:13 +0000 (15:14 +0100)]
mpdparser: properly read signed r values for S elements
The spec defines these as signed in 5.3.9.6.1.
Since we don't support this behavior, warn and default to 0
(non repeating), which is the spec's default when the value
is not present.
https://bugzilla.gnome.org/show_bug.cgi?id=752480
Vincent Penquerc'h [Wed, 9 Sep 2015 10:05:35 +0000 (11:05 +0100)]
mdpparser: catch failures to parse
https://bugzilla.gnome.org/show_bug.cgi?id=752480
Matthew Waters [Wed, 16 Sep 2015 07:28:05 +0000 (17:28 +1000)]
glimagesink: avoid updating the viewport in the draw loop
Fixes flashes/incorrect aspect ratio when resizing glimagesink on OSX.
Sebastian Dröge [Tue, 15 Sep 2015 19:50:19 +0000 (21:50 +0200)]
adaptivedemux: Fix playback of live streams
dashdemux seeks each live stream to its current fragment in the beginning, but
the base class does not know about this. Update the demuxer segment with this
seek so we generate the correct SEGMENT event and can actually play the
stream.
This needs some refactoring at some point.
https://bugzilla.gnome.org/show_bug.cgi?id=755047
Thiago Santos [Tue, 15 Sep 2015 18:39:11 +0000 (15:39 -0300)]
opusdec: remove check for number of channels
opus decoder can convert from different number of channels, no
need to check, just let it negotiate and create a new decoder if
needed.
https://bugzilla.gnome.org/show_bug.cgi?id=755059
Thiago Santos [Tue, 15 Sep 2015 13:00:43 +0000 (10:00 -0300)]
adaptivedemux: Only overwrite last return if it was OK
Prevents overwriting other conditions that would be more important,
such as EOS.
https://bugzilla.gnome.org/show_bug.cgi?id=755042
Thiago Santos [Tue, 15 Sep 2015 12:58:20 +0000 (09:58 -0300)]
dashdemux: fix return when trying to advance in subfragmented stream
Even if it doesn't actually advance the subfragment in the default way
for streams that have subfragments, it can help the base class to return
EOS when there is no more fragments instead of signaling it that it should
continue downloading.
https://bugzilla.gnome.org/show_bug.cgi?id=755042
Tim-Philipp Müller [Tue, 15 Sep 2015 10:34:12 +0000 (11:34 +0100)]
gl: bufferpool take into account video stride alignment requirements
when allocating memory. Fixes crashes with avdec_h265 in the AVX2
code path which requires 32-byte stride alignment, but the
GstAllocationParams only specified a 16-byte alignment.
https://bugzilla.gnome.org/show_bug.cgi?id=754120
Thibault Saunier [Tue, 15 Sep 2015 11:40:58 +0000 (13:40 +0200)]
pitch: Set seqnum on newly created segment event
https://bugzilla.gnome.org/show_bug.cgi?id=755012
Sebastian Dröge [Fri, 11 Sep 2015 19:37:08 +0000 (21:37 +0200)]
audioaggregator: Fix mixup of running times and segment positions
We have to queue buffers based on their running time, not based on
the segment position.
Also return running time from GstAggregator::get_next_time() instead of
a segment position, as required by the API.
Also only update the segment position after we pushed a buffer, otherwise
we're going to push down a segment event with the next position already.
https://bugzilla.gnome.org/show_bug.cgi?id=753196
Sebastian Dröge [Fri, 11 Sep 2015 14:56:40 +0000 (16:56 +0200)]
audioaggregator: Use stream time in the position query instead of segment position
https://bugzilla.gnome.org/show_bug.cgi?id=753196
Sebastian Dröge [Fri, 11 Sep 2015 10:22:51 +0000 (12:22 +0200)]
videoaggregator: Fix mixup of running times and segment positions
We have to queue buffers based on their running time, not based on
the segment position.
Also return running time from GstAggregator::get_next_time() instead of
a segment position, as required by the API.
Also only update the segment position after we pushed a buffer, otherwise
we're going to push down a segment event with the next position already.
https://bugzilla.gnome.org/show_bug.cgi?id=753196
Sebastian Dröge [Fri, 11 Sep 2015 10:21:50 +0000 (12:21 +0200)]
aggregator: Document that get_next_time() should return running time
https://bugzilla.gnome.org/show_bug.cgi?id=753196
Sebastian Dröge [Thu, 3 Sep 2015 11:20:00 +0000 (14:20 +0300)]
mpdparser: Don't consider period start times in periods with segment lists either
https://bugzilla.gnome.org/show_bug.cgi?id=754222
Sebastian Dröge [Thu, 3 Sep 2015 07:26:03 +0000 (10:26 +0300)]
mpdparser: Fix unit test that assumed that fragment timestamps should include the period start timestamp
https://bugzilla.gnome.org/show_bug.cgi?id=754222
Sebastian Dröge [Wed, 2 Sep 2015 15:33:51 +0000 (18:33 +0300)]
dashdemux: Export the period start time to the base class
https://bugzilla.gnome.org/show_bug.cgi?id=754222
Sebastian Dröge [Wed, 2 Sep 2015 15:29:43 +0000 (18:29 +0300)]
adaptivedemux: Properly implement timestamping of multi-period streams
Each period will start again with pts 0 + period presentation offset, which is
also going to be the presentation time inside the container stream if any.
However all periods together should form a continuous timeline, with regard to
stream time and running time.
For making this possible we keep track of the "user requested segment", i.e.
the seek events, inside the demuxer without adjusting anything and taking this
demuxer segment only as orientation for modified segments per stream.
This per stream segments will have their segment.start at pts that would be
produced for this stream in this period, and the segment.base/time adjusted so
that this pts maps to the running and stream time this period should have in
the context of all other periods.
https://bugzilla.gnome.org/show_bug.cgi?id=754222
Sebastian Dröge [Tue, 1 Sep 2015 10:13:58 +0000 (13:13 +0300)]
Revert "dashdemux: Subtract the period start time from the presentation offset"
This reverts commit
626a8f0a74f8ea748b811b74ba9e7ae2baea2cca.
This allows us to get the plain presentation offset and the period start time
separately. We have to adjust the timestamp by the presentation offset, but
the period start time should only adjust the stream time and running time.
https://bugzilla.gnome.org/show_bug.cgi?id=752409
Sebastian Dröge [Tue, 1 Sep 2015 10:12:45 +0000 (13:12 +0300)]
Revert "dashdemux: Include the period start in the fragment timestamps in all cases"
This reverts commit
e671ad25a989cb21c62c7a5867c2090890ce49ba.
The timestamps should restart at 0 again for each period, but we have to
adjust the segment to map those timestamps to the actual stream time and
running time of that period.
Otherwise we would have timestamps that conflict with the ones from the tfdt
inside the MP4 container, which are restarting at 0 for each period.
https://bugzilla.gnome.org/show_bug.cgi?id=752409
Sebastian Dröge [Mon, 14 Sep 2015 17:03:10 +0000 (19:03 +0200)]
mpdparser: Consider the repeat count when checking if a segment is the last one
Otherwise we play only the first repetition of the last segment and then EOS.
https://bugzilla.gnome.org/show_bug.cgi?id=752480
Thiago Santos [Mon, 14 Sep 2015 16:56:10 +0000 (13:56 -0300)]
dashdemux: also check for subfragments on has_next_fragment
In dash isombff profile the fragment is split into subframents where
bitrate switching is possible. Also take that into consideration
when checking if a stream has next fragments.
Miguel París Díaz [Fri, 11 Sep 2015 09:22:35 +0000 (11:22 +0200)]
opusenc: improve deprecated properties docs
https://bugzilla.gnome.org/show_bug.cgi?id=754819
Miguel París Díaz [Fri, 11 Sep 2015 09:11:09 +0000 (11:11 +0200)]
opusenc: do not throw g_warning when getting deprecated properties
https://bugzilla.gnome.org/show_bug.cgi?id=754819
Thiago Santos [Wed, 9 Sep 2015 22:51:18 +0000 (19:51 -0300)]
videoaggregator: fix caps query to properly handle alpha formats
Only accept alpha if downstream has alpha as well. It could
theoretically accept alpha unconditionally if blending is
properly implemented for handle it but at the moment this
is a missing feature.
Improves the caps query by also comparing with the template
caps to filter by what the subclass supports.
https://bugzilla.gnome.org/show_bug.cgi?id=754465
Jan Schmidt [Fri, 11 Sep 2015 14:51:52 +0000 (00:51 +1000)]
vtdec: Use R/RG textures for NV12 when the context provides them
Fixes playback to GL memory on iOS, where the colours are messed
up by passing Luminance/LuminanceAlpha textures where
color convert expects R/RG textures.
https://bugzilla.gnome.org/show_bug.cgi?id=754504
Jan Schmidt [Tue, 8 Sep 2015 07:17:36 +0000 (17:17 +1000)]
vtdec: Prefer GL output caps.
Prefer GL caps by putting them first in the pad template and
intersecting using GST_CAPS_INTERSECT_FIRST.
Sreerenj Balachandran [Thu, 10 Sep 2015 16:02:12 +0000 (19:02 +0300)]
codecparsers: h265: Fix the selection of Active Ref Pic Set
If short_term_ref_pic_set_sps_flag is FALSE, the ShortTermRefPicSet
structure is supposed to derive from slice header. Which means,
CurrRpsIdx is equal to num_short_term_ref_pic_sets. But the number
of refpicsets communicated via sps header is only num_short_term_ref_pic_sets - 1.
And we are using slice_header structure to reference the last entry, which is
ShortTermRefPicSet[num_short_term_ref_pic_sets].
https://bugzilla.gnome.org/show_bug.cgi?id=754834
Sreerenj Balachandran [Thu, 10 Sep 2015 13:28:31 +0000 (16:28 +0300)]
codecparsers: h265 : Fix default scaling list values
Fix the default_scaling_list values based on Table 7-6
https://bugzilla.gnome.org/show_bug.cgi?id=754834
Sebastian Dröge [Thu, 10 Sep 2015 11:11:58 +0000 (14:11 +0300)]
decklinkvideosink: less-than-zero comparison of an unsigned value is never true
Use the correct type, GstClockTimeDiff, instead.
CID 1323742