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
Matthew Waters [Wed, 9 Sep 2015 14:07:18 +0000 (00:07 +1000)]
gtk, qt: more specifically define the compile time requirements
Otherwise we could include headers/configurations that will
never been installed.
https://bugzilla.gnome.org/show_bug.cgi?id=754732
Matthew Waters [Wed, 2 Sep 2015 13:42:34 +0000 (23:42 +1000)]
build/qt: indent configure file
don't mix tabs and spaces
https://bugzilla.gnome.org/show_bug.cgi?id=754466
Matthew Waters [Wed, 9 Sep 2015 14:00:11 +0000 (00:00 +1000)]
qt: use our function table instead of directly calling gl functions
Otherwise when building with --as-needed we would need to link to
a GL or GLES library.
https://bugzilla.gnome.org/show_bug.cgi?id=754732
Matthew Waters [Wed, 9 Sep 2015 13:53:57 +0000 (23:53 +1000)]
gl/api: use public rather than private define
HAVE_IOS is only defined for the build of this module so
attempting to use gstgl in iOS would result in incorrect GL
includes.
Use GST_GL_HAVE_PLATFORM_EAGL instead for choosing the iOS GL
header.
Sebastian Dröge [Thu, 3 Sep 2015 13:36:57 +0000 (16:36 +0300)]
decklinkvideosink: Handle pipelines where the running time does not start around 0 properly
We were converting all times to our internal running times, that is the time
the sink itself spent in PLAYING already. But forgot to do that for the
running time calculated from the buffer timestamps. As such, all buffers were
scheduled much later if the pipeline's running time did not start at 0.
This happens for example if a base time is explicitly set on the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=754528
Sebastian Dröge [Mon, 7 Sep 2015 10:36:19 +0000 (13:36 +0300)]
decklinkvideosink: Consider pipeline latency, render delay and ts offset when scheduling frames
Without this, we will schedule all frames too late in live pipelines.
https://bugzilla.gnome.org/show_bug.cgi?id=754666
Kouhei Sutou [Wed, 9 Sep 2015 04:58:05 +0000 (13:58 +0900)]
directsoundsrc: fix build error for 64bit Windows build by MinGW
Casting to UINT from HMIXER generates the following warning with
64bit Windows target MinGW:
gstdirectsoundsrc.c: In function 'gst_directsound_src_mixer_find':
gstdirectsoundsrc.c:733:30: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]
mmres = mixerGetDevCaps ((UINT) dsoundsrc->mixer,
^
cc1: all warnings being treated as errors
We can use portable GPOINTER_TO_UINT() macro for this propose.
https://bugzilla.gnome.org/show_bug.cgi?id=754756
Sebastian Dröge [Wed, 9 Sep 2015 06:33:01 +0000 (09:33 +0300)]
gl/eagl: Also unbind renderbuffer after setting up framebuffer
https://bugzilla.gnome.org/show_bug.cgi?id=754757
Sebastian Dröge [Wed, 9 Sep 2015 06:27:17 +0000 (09:27 +0300)]
gl/eagl: Don't make context uncurrent just to make it current again in the next line
Also binding the framebuffer again is unnecessary then as it was just bound a
few lines before while the context was current.
https://bugzilla.gnome.org/show_bug.cgi?id=754757
Vincent Penquerc'h [Mon, 7 Sep 2015 11:09:41 +0000 (12:09 +0100)]
mpdparser: fix period start time scaling
This GstStreamPeriod start value is expressed in nanoseconds,
and the glib time addition function expects microseconds.
There seems to have been a confusion with GstPeriodNode's start
field, which is expressed in milliseconds.
Additionally, add a warning if the timestamp modification did
not succeed, and NULL was returned.
Jan Schmidt [Sat, 5 Sep 2015 13:38:44 +0000 (23:38 +1000)]
faac: Add bitrate info to the tags output.
Makes it possible for muxers to know the target bitrate as soon
as encoding starts, which flvmux now uses.
Nirbheek Chauhan [Fri, 4 Sep 2015 20:20:41 +0000 (01:50 +0530)]
compositor: Ensure all arguments to CLAMP are signed int
If any of the arguments to CLAMP are unsigned integers, the comparison causes
an automatic conversion of the signed int to unsigned, which causes -1 to become
UINT_MAX and get clamped to the high value of the CLAMP instead of 0.
See 716 at http://c0x.coding-guidelines.com/6.3.1.8.html
Also add a test for this.
https://bugzilla.gnome.org/show_bug.cgi?id=754576
Thibault Saunier [Fri, 4 Sep 2015 13:43:40 +0000 (15:43 +0200)]
gtk: Do not consider GtkEvents as handled
Applications might still want to use them
after the sink transformed them into
GstNavigation events
Thiago Santos [Wed, 2 Sep 2015 22:16:56 +0000 (19:16 -0300)]
videoaggregator: lift restriction of changing pixel-aspect-ratio
The videoaggregator can convert PAR, there is no reason for
restricting it.
https://bugzilla.gnome.org/show_bug.cgi?id=754291
Nirbheek Chauhan [Fri, 7 Aug 2015 11:57:48 +0000 (17:27 +0530)]
qmlsink: Ensure that at least one windowing system is available
Otherwise, we'll just crash at runtime because the gl context is NULL
https://bugzilla.gnome.org/show_bug.cgi?id=754108
Olivier Crête [Sat, 29 Aug 2015 00:33:40 +0000 (20:33 -0400)]
pcapparse: Reset state on flush and state changes
https://bugzilla.gnome.org/show_bug.cgi?id=753152
Tim-Philipp Müller [Mon, 31 Aug 2015 17:06:31 +0000 (18:06 +0100)]
gtk, qt, gl: fix typo in debug and error messages
Olivier Crête [Sat, 29 Aug 2015 03:05:20 +0000 (23:05 -0400)]
aggregator: Also ignore start-time on seek from gst_element_send_event()
https://bugzilla.gnome.org/show_bug.cgi?id=753806
Nirbheek Chauhan [Sat, 29 Aug 2015 11:21:08 +0000 (16:51 +0530)]
compositor: variables in clamp_rectangle() should be signed
x/y/w/h are signed integers. As can be seen in GstCompositorPad.
The prototype for clamp_rectangle was wrong. This commit reverts the change
and fixes the prototype.
This reverts commit
bca444ea4a84c39e9989681f892f6e4cb2033cf9.
Tim-Philipp Müller [Fri, 28 Aug 2015 18:55:59 +0000 (19:55 +0100)]
Fix file permissions of some files
Luis de Bethencourt [Fri, 28 Aug 2015 14:21:11 +0000 (15:21 +0100)]
compositor: remove check for below zero for unsigned value
CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative
number since it is an unsigned integer. Removing that check and only checking if
it is bigger than max by using MIN().
CID 1320707
Vanessa Chipirrás Navalón [Fri, 28 Aug 2015 11:42:29 +0000 (13:42 +0200)]
edgedetect: Rename gstedgedetect.c to gstedgedetect.cpp for consistency.
Change the file extension to cpp and add it into Makefile for consistency
with other elements of opencv.
https://bugzilla.gnome.org/show_bug.cgi?id=754148
Vanessa Chipirrás Navalón [Thu, 27 Aug 2015 19:51:52 +0000 (21:51 +0200)]
edgedetect: remove unused and useless functions.
The cvSmooth cvNot functions and do not have the correct input parameters.
Furthermore, cvSmooth function is not necessary for edge detection,
because the Canny function makes the step of smoothing the image.
And cvNot function is useless because there aren't changes if this
function is eliminated.
https://bugzilla.gnome.org/show_bug.cgi?id=754148
Luis de Bethencourt [Wed, 26 Aug 2015 17:40:35 +0000 (18:40 +0100)]
textoverlay: remove unused variable
Memory is reserved for this variable but never used. Removing it.
Vanessa Chipirrás Navalón [Wed, 26 Aug 2015 16:21:15 +0000 (18:21 +0200)]
faceblur: remove unused variable.
Memory is reserved for this variable and then released without making any
use of it.
https://bugzilla.gnome.org/show_bug.cgi?id=753994
Vanessa Chipirrás Navalón [Wed, 26 Aug 2015 15:56:50 +0000 (17:56 +0200)]
faceblur: need to migrate to C++.
The cascade classifier changes its structure on new version of OpenCV 2.4.11.
It is need to migrate to C++ to utilize the new load method of OpenCV which
allows to load the old and new classifiers.
https://bugzilla.gnome.org/show_bug.cgi?id=753994
Vanessa Chipirrás Navalón [Wed, 26 Aug 2015 10:47:58 +0000 (12:47 +0200)]
faceblur: Check CvHaarClassifierCascade is release before being modified.
For PROP_PROFILE case that exist inside gst_face_blur_set_property
function loads the new XML file in the CvHaarClassifierCascade property
without first checking that it is released because maybe there is an XML
file previously loaded.
https://bugzilla.gnome.org/show_bug.cgi?id=753994
Vanessa Chipirrás Navalón [Wed, 26 Aug 2015 10:27:15 +0000 (12:27 +0200)]
faceblur: Code refactoring of gst_face_blur_load_profile.
Changes inside the gst_face_blur_load_profile function, the number of
input parameters and in lines where it is used due to it cannot be used
generically.
https://bugzilla.gnome.org/show_bug.cgi?id=753994
Vanessa Chipirrás Navalón [Wed, 26 Aug 2015 09:57:24 +0000 (11:57 +0200)]
faceblur: Change gstfaceblur to C++.
Change the gstfaceblur.c file to cpp and add it into Makefile.
It is necessary to migrate the faceblur plugin to C++,
in order to load new and old classifiers, to make faceblur work
with newer versions of Opencv.
https://bugzilla.gnome.org/show_bug.cgi?id=753994
Sebastian Dröge [Thu, 27 Aug 2015 08:10:05 +0000 (11:10 +0300)]
dvbsuboverlay: Fix caps memory leak by making static caps actually static
See https://bugzilla.gnome.org/show_bug.cgi?id=754157
Tim-Philipp Müller [Fri, 21 Aug 2015 15:13:43 +0000 (16:13 +0100)]
dashdemux: don't meddle with the class struct from an instance
Fix some very dubious code. The class methods should always
be set, and the instance-specific check should then be done
inside the method. For data_received that's there already, for
finish_fragment we need to add it.
https://bugzilla.gnome.org/show_bug.cgi?id=753937
Nicolas Dufresne [Wed, 26 Aug 2015 14:52:46 +0000 (10:52 -0400)]
h264parse/h265parse: Fix negotiation crash
As it's recursive, gst_pad_get_allowed_caps() may also return
empty for anything incompatible downstream. EMPTY is not valid caps
value for gst_caps_fixate(). This lead to assertion and then crash.
Ideally, the negotiate function should be re-factored to have a return
value, and we could make the negotiation fails earlier.
https://bugzilla.gnome.org/show_bug.cgi?id=754122
Nirbheek Chauhan [Wed, 26 Aug 2015 10:10:16 +0000 (15:40 +0530)]
compositor: Actually use the output resolution for clamping
The obscured check in compositor was using the dimensions of the pad to clamp
the h/w of the pad instead of the output resolution, and was doing an incorrect
calculation to do so. Fix that by simplifying the whole calculation by using
corner coordinates. Also add a test for this bug which fell through the cracks,
and just skip all the obscured tests if the pad's alpha is 0.0.
https://bugzilla.gnome.org/show_bug.cgi?id=754107
XuGuangxin [Mon, 24 Aug 2015 04:46:27 +0000 (07:46 +0300)]
codecparsers: h265: Fix tile row and column parsing
Section 6.5.1: Coding tree block raster and tile scanning conversion process
Follow the equations 6-3 and 6-4
This will provide correct offset_max in slice_header for parsing
num_entry_point_offsets.
https://bugzilla.gnome.org/show_bug.cgi?id=754024
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Athanasios Oikonomou [Fri, 7 Aug 2015 09:53:23 +0000 (12:53 +0300)]
hlsdemux: select correct position for live streams that don't remove fragments
Some live streams (eg youtube) don't remove fragments in order to allow
seeking back in time (live + vod).
When gst_m3u8_client_has_next_fragment is called, we are getting wrong fragment
because current_file points in first file of the fragments list resulting in
watching the stream from the beginning again.
This patch sets current_file to nth fragment for live streams, then on
gst_m3u8_client_has_next_fragment will keep up with the live stream.
https://bugzilla.gnome.org/show_bug.cgi?id=753344
Nicolas Dufresne [Mon, 24 Aug 2015 23:47:01 +0000 (19:47 -0400)]
glupload: Use base class metadata copy function
This allow properly copying selected meta, like the composition
overlay. Note that output buffer need to be readable, but GlUpload
keeps a ref. For now, simply drop GlUpload ref after perform,
leaving that ref has no purpose. The method shall be removed
in the future.
https://bugzilla.gnome.org/show_bug.cgi?id=754047
Nicolas Dufresne [Mon, 24 Aug 2015 23:28:10 +0000 (19:28 -0400)]
glcolorconvert: Use base transform metadata copy
Use base class default method instead of only copying flags and
timestamp. This way, selected meta's like compostion overlay will
be passed downstream as expected.
https://bugzilla.gnome.org/show_bug.cgi?id=754047
Sebastian Dröge [Tue, 25 Aug 2015 07:09:14 +0000 (10:09 +0300)]
gl/eagl: Unref context after setting a window handle
gst_gl_window_get_context() returns a new reference.
Hopefully fixes https://bugzilla.gnome.org/show_bug.cgi?id=753758
Sebastian Dröge [Mon, 24 Aug 2015 18:28:46 +0000 (21:28 +0300)]
win32: Add new h265 parser symbols
lyb [Mon, 24 Aug 2015 05:06:15 +0000 (08:06 +0300)]
codecparsers: h265: Add APIs for up-right-diagonal/raster scan conversion
As per 7-42 and 7-43 the ScalingFactor's scanIdx is 0,
which is "up-right-diagonal" scan. Add APIs for converting
up-right-diagonal to raster and vise versa.
https://bugzilla.gnome.org/show_bug.cgi?id=754024
XuGuangxin [Mon, 24 Aug 2015 01:18:52 +0000 (04:18 +0300)]
codecparsers: h265: Fix the range of delta_chroma_log2_weight_denom
Being more strict on specification, According to 7.4.7.3,
delta_chroma_log2_weight_denom should be in the range of
[(0 - luma_log2_weight_denom), (7 - luma_log2_weight_denom)]
https://bugzilla.gnome.org/show_bug.cgi?id=754024
Tim-Philipp Müller [Sun, 23 Aug 2015 22:38:21 +0000 (23:38 +0100)]
tsdemux: fix latency handling again
The tsdemux latency should always be added to the minimum
latency (which is always a valid clock time value). The
"cleanup" in commit
a1f709c2 made it so that it would not
be added if upstream reported 0 as minimum latency (as
e.g. udpsrc would). This broke playback of live mpeg-ts
streaming in some cases, leading to playback stutter due
to a too-small configured latency for the pipeline.
https://bugzilla.gnome.org/show_bug.cgi?id=751508
Nicolas Dufresne [Fri, 21 Aug 2015 20:42:18 +0000 (13:42 -0700)]
glimagesink: update display size before sending event
This is minor issue, as the reconfigure event is asynchronous.
Basically, update width/height before sending the event.
Nicolas Dufresne [Fri, 21 Aug 2015 00:27:34 +0000 (17:27 -0700)]
gl: Let base transform relay the meta api for us
During allocation query, when this element is not passthrough, it must
relay the overlay compostion meta and it's parameters. Fortunatly, base
transform can do this for us.
https://bugzilla.gnome.org/show_bug.cgi?id=753850
Koop Mast [Fri, 21 Aug 2015 18:29:24 +0000 (20:29 +0200)]
curl: Give netinet/ip.h it own configure check
On FreeBSD netinet/ip.h needs the sys/types.h and netinet/in.h header
before it can be tested.
https://bugzilla.gnome.org/show_bug.cgi?id=753944
Luis de Bethencourt [Wed, 19 Aug 2015 16:42:49 +0000 (17:42 +0100)]
dtsdec: remove unused value
length is set to a different value before being read. Remove initial value.
Silences compiler warning.
Vanessa Chipirrás Navalón [Fri, 21 Aug 2015 03:26:25 +0000 (05:26 +0200)]
facedetect: remove unnecessary variable.
Memory is reserved for this variable and then released without making any
use of it.
https://bugzilla.gnome.org/show_bug.cgi?id=748377
Justin Kim [Fri, 21 Aug 2015 05:07:32 +0000 (14:07 +0900)]
glcontext: add specific error message when missing GL_SHADING_LANGUAGE_VERSION
GL_SHADING_LANGUAGE_VERSION was introduced since ES 2.0, but in some
android emulator doesn't support this feature. To prevent confusion for
developer, the error message need to be more clear.
https://bugzilla.gnome.org/show_bug.cgi?id=753905
hoonhee.lee [Fri, 21 Aug 2015 07:44:43 +0000 (16:44 +0900)]
tests: audiomixer: remove duplicated word in comment
https://bugzilla.gnome.org/show_bug.cgi?id=753915
hoonhee.lee [Fri, 21 Aug 2015 07:31:41 +0000 (16:31 +0900)]
caopengllayersink: Don't chain up to parent's query handling twice for DRAIN query
https://bugzilla.gnome.org/show_bug.cgi?id=753913
Alex Ashley [Thu, 20 Aug 2015 14:00:02 +0000 (15:00 +0100)]
check: hlsdemux: make duration unit test robust to floating point rounding
The test_playlist_with_doubles_duration() test fails on some platforms
due to rounding errors that occur when m3u8.c converts from the floating
point value in the HLS manifest to a GstClockTime.
Using assert_equals_float() fixes this because this function handles
the rounding error issues by accepting almost equal.
https://bugzilla.gnome.org/show_bug.cgi?id=753881
Matthew Waters [Mon, 17 Aug 2015 16:35:58 +0000 (18:35 +0200)]
glbasefilter: only call gl_{stop,start} if the context changed
Removes the redundant GL object creation/deletion on every
decide_allocation call which is being called for every caps change.
Thus reduces the required GL state changes on reconfigure events
which are being sent by glimagesink/xvimagesink
Carlos Rafael Giani [Thu, 20 Aug 2015 12:09:37 +0000 (14:09 +0200)]
opencv: Fix OpenCV data path check to work with cross compilation
https://bugzilla.gnome.org/show_bug.cgi?id=753651
Ben Browitt [Thu, 20 Aug 2015 11:11:56 +0000 (14:11 +0300)]
videoaggregator: Always set the pad's buffer_vinfo when storing a buffer
Otherwise it might be unset, and then the buffer is used and
gst_video_frame_map() will crash because of invalid video-info.
https://bugzilla.gnome.org/show_bug.cgi?id=753805
Sebastian Dröge [Wed, 19 Aug 2015 18:33:09 +0000 (21:33 +0300)]
dashdemux: Handle encoding specified in the <xml> element when dumping nodes
Previous patch did not handle the case where an encoding (e.g. UTF-8) is
specified in the <xml ?> element. Added an extra test for with and without
encoding.
https://bugzilla.gnome.org/show_bug.cgi?id=753813
Arnaud Vrac [Thu, 31 Jan 2013 13:03:40 +0000 (14:03 +0100)]
assrender: check video frame mapping succeeded before blending
If the mapping fails just skip overlay rendering and push the video
frame downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=753822
Arnaud Vrac [Wed, 19 Aug 2015 13:31:16 +0000 (15:31 +0200)]
configure.ac: fix build when the uvch264 plugin is not selected
Instead of checking for the gstreamer-video-1.0 package is installed,
just assume it is since we already check for the -base dependency.
With this replace the GST_VIDEO_* variables in makefiles and directly
link with libgstvideo.
https://bugzilla.gnome.org/show_bug.cgi?id=753820
Alex Ashley [Wed, 19 Aug 2015 10:29:43 +0000 (11:29 +0100)]
dashdemux: replace xmlNodeDump with xmlNodeDumpOutput
When running on an STB, the function
gst_mpdparser_get_xml_node_as_string causes a segmentation fault. This
code works correctly on a Linux desktop.
Looking at the libxml documentation, the xmlNodeDump is deprecated.
Replacing the use of xmlNodeDump with xmlNodeDumpOutput fixes the
segfault on the STB and removes the use of the deprecated function.