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.
Luis de Bethencourt [Wed, 19 Aug 2015 11:37:40 +0000 (12:37 +0100)]
configure: check for Qt version
Usage of QSGSimpleTextureNode::setOwnsTexture() was added in commit
6b8cf8419d8ea80081de8150a6b1c3cf763c4d69, this function was added in
Qt 5.4.0. Check for this version or later.
https://bugzilla.gnome.org/show_bug.cgi?id=753812
Arnaud Vrac [Thu, 16 Jul 2015 20:57:36 +0000 (22:57 +0200)]
hlsdemux: abort playlist update when cancelled
Otherwise the download thread will get stuck, since the downloader is
disabled.
Sebastian Dröge [Wed, 19 Aug 2015 10:52:21 +0000 (13:52 +0300)]
gtk/gl: Use our GL function table instead of directly calling GL functions
Otherwise we would have to link the plugin to the GL libraries directly.
Sebastian Dröge [Wed, 19 Aug 2015 10:46:53 +0000 (13:46 +0300)]
Release 1.5.90
Sebastian Dröge [Wed, 19 Aug 2015 09:52:18 +0000 (12:52 +0300)]
Update .po files
Sebastian Dröge [Wed, 19 Aug 2015 08:36:13 +0000 (11:36 +0300)]
po: Update translations
Guillaume Marquebielle [Tue, 18 Aug 2015 11:56:59 +0000 (13:56 +0200)]
liveadder: fix assertion when copying buffer region
In gst_live_adder_chain() function, calls to gst_buffer_copy_region() can lead
to assertion as 'offset + size <= bufsize' is not respected.
Indeed 'offset' and 'size' parameters are calculated through calling gst_live_adder_length_from_duration(),
and thus gst_util_uint64_scale_int_round().
Depending on the nearest integers, rounded values 'offset' and 'size' can then trigger the assertion.
This case mainly occurs when 'skip' value is > 0 in chain function process.
https://bugzilla.gnome.org/show_bug.cgi?id=753759
Vanessa Chipirrás Navalón [Mon, 17 Aug 2015 16:06:30 +0000 (18:06 +0200)]
handdetect: 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=752528
Vanessa Chipirrás Navalón [Mon, 17 Aug 2015 16:02:28 +0000 (18:02 +0200)]
handdetect: check CvHaarClassifierCascade is release before being modified.
Make sure a previous cascade, if it exists, is released before loading a
new XML file onto it.
https://bugzilla.gnome.org/show_bug.cgi?id=752528
Vanessa Chipirrás Navalón [Mon, 17 Aug 2015 15:47:42 +0000 (17:47 +0200)]
handdetect: code refactoring of gst_handdetect_load_profile.
Change gst_handdetect_load_profile() so it can be used generically.
https://bugzilla.gnome.org/show_bug.cgi?id=752528
Sebastian Dröge [Tue, 18 Aug 2015 08:54:33 +0000 (11:54 +0300)]
daalaenc: Fix build
And also only generate the supported caps once, not on every CAPS/ACCEPT_CAPS
query. It's not that cheap.
Luis de Bethencourt [Mon, 17 Aug 2015 22:44:42 +0000 (23:44 +0100)]
examples: facedetect: add silent option
By default the example floods the screen with the detected face values.
Add an option to avoid this for frail terminals.
Thiago Santos [Mon, 17 Aug 2015 17:38:52 +0000 (14:38 -0300)]
x265enc: add accept-caps handling
Ovewrite default handling to avoid doing a caps query. Check
the received caps against the possible formats supported by
the x265 library.
Thiago Santos [Mon, 17 Aug 2015 17:32:56 +0000 (14:32 -0300)]
daalaenc: add accept-caps handling
Ovewrite default handling to avoid doing a caps query. Check
the received caps against the possible formats supported by
the daala library.
Thiago Santos [Sun, 16 Aug 2015 10:06:44 +0000 (07:06 -0300)]
videoencoders: use template subset check for accept-caps
It is faster than doing a query that propagates downstream and
should be enough
Elements: openjpegenc, schroenc, webpenc, pnmenc
Luis de Bethencourt [Mon, 17 Aug 2015 16:38:15 +0000 (17:38 +0100)]
opencv: support alternative path convention
Some distributions store OpenCV files in /usr/share/opencv and some others
(and default when building from source) install them in
/usr/share/OpenCV. Support both to find cascade files.
https://bugzilla.gnome.org/show_bug.cgi?id=753651
Rico Tzschichholz [Sun, 16 Aug 2015 19:18:50 +0000 (21:18 +0200)]
dashdemux: link against gio for g_resolver and g_inet_address_from_string
Add missing gio-2.0 CFLAGS/LIBS to fix linker failure
Thiago Santos [Sun, 16 Aug 2015 10:18:34 +0000 (07:18 -0300)]
audioencoders: use template subset check for accept-caps
It is faster than doing a query that propagates downstream and
should be enough
Elements: faac, gsmenc, opusenc, sbcenc, voamrwbenc, adpcmenc, sirenenc
Thiago Santos [Mon, 17 Aug 2015 10:55:03 +0000 (07:55 -0300)]
voaacenc: Remove custom getcaps and just use the template
We know from the beginning the caps that are acceptable, no need
for custom getcaps or manually generating caps.
Thiago Santos [Mon, 17 Aug 2015 10:54:36 +0000 (07:54 -0300)]
voaacenc: add version to gst-launch string on documentation
gst-launch will call the 0.10 version, we want 1.0
Thiago Santos [Mon, 17 Aug 2015 10:15:00 +0000 (07:15 -0300)]
faac: make template pad caps more accurate and remove custom getcaps
Allows reusing baseclass caps query handling and simplifying negotiation
code.
Tim-Philipp Müller [Mon, 17 Aug 2015 10:50:28 +0000 (11:50 +0100)]
mpg123: still reset pending audio info on hard flush
Follow-up to previous commit.
https://bugzilla.gnome.org/show_bug.cgi?id=752431
Jason Litzinger [Wed, 15 Jul 2015 16:44:02 +0000 (10:44 -0600)]
mpg123: fix handling of sample rate change during playback
If the sample rate of the media changes, the resulting flush will
clear the has_next_audioinfo flag, and the caps won't be sent
downstream.
https://bugzilla.gnome.org/show_bug.cgi?id=752431
Olivier Crête [Tue, 17 Mar 2015 21:55:26 +0000 (17:55 -0400)]
videoparsers: Use gst_base_parse_merge_tags()
Instead of squashing all upstream tags
https://bugzilla.gnome.org/show_bug.cgi?id=679768
Nicolas Dufresne [Sun, 16 Aug 2015 16:13:12 +0000 (18:13 +0200)]
glupload: Recalculate offset and size in raw upload
As we only expose the mapped portion of the frame into the GL
memory object (and not the original padding) we need to
re-calculate the size and offset.
Thiago Santos [Sun, 16 Aug 2015 11:49:35 +0000 (08:49 -0300)]
dashdemux: fix off by one seeking issue
When seeking to the last second of a mpd it would reject the seek
because the comparison was < instead of <=
This fails the important use case of seeking to the end of a file
to play it back in reverse from the end
Edward Hervey [Sun, 16 Aug 2015 10:55:57 +0000 (12:55 +0200)]
mpegtsdemux: Fix illogical comparision
A variable can't be two values at once. We want to stop if it's not the
actual ts *AND* not the other ts
CID #1316475
Sebastian Dröge [Sun, 16 Aug 2015 10:52:09 +0000 (12:52 +0200)]
mpdparser: Free UTCTiming struct if there are no values associated with it
CID 1316479
Edward Hervey [Sat, 15 Aug 2015 21:36:01 +0000 (23:36 +0200)]
check: Link against GModule for tests using g_module_*
Edward Hervey [Sat, 15 Aug 2015 17:04:27 +0000 (19:04 +0200)]
adaptivedemux: Demote debugging level
Edward Hervey [Sat, 15 Aug 2015 17:01:00 +0000 (19:01 +0200)]
adaptivedemux: Actually wait for playlist update when requested
There are several cases where a HLS server could temporarily have wrong
fragments, or reconfigure the playlist. In those cases, when we get
fragment download failures, we *really* want to wait a bit (for the next
playlist update) before retrying to get fragments.
Previously this method was first checking to see if there was next fragments
(according to the previous manifest update) before waiting for the next update.
The problem was that if that if there is a temporary failure on the server,
that's uncorrelated to whether the manifest contains next fragments or not.
Edward Hervey [Fri, 14 Aug 2015 10:25:19 +0000 (12:25 +0200)]
checks: Ensure thread-safe libX11/GL when running tests
Thiago Santos [Sat, 15 Aug 2015 15:58:40 +0000 (12:58 -0300)]
audiodecoders: use default pad accept-caps handling
Avoids useless check of downstream caps when handling an
accept-caps query
Elements: dtsdec, faad, gsmdec, mpg123audiodec, opusdec,
sbcdec, adpcmdec, sirendec
Thiago Santos [Sat, 15 Aug 2015 15:55:49 +0000 (12:55 -0300)]
videodecoders: use default pad accept-caps handling
Avoids useless check of downstream caps when handling an
accept-caps query
Elements: daaladec, libde265dec, openjpegdec, rsvgdec, schrodec,
webpdec, pnmdec, vmncdec, openexrdec
Luis de Bethencourt [Sat, 15 Aug 2015 15:22:20 +0000 (16:22 +0100)]
rtph265depay: make sure we call handle_nal for each NAL
Call handle_nal for each NAL in the STAP-A RTP packet. This makes sure
we correctly extract the SPS and PPS.
https://bugzilla.gnome.org/show_bug.cgi?id=730999
Nicolas Dufresne [Sat, 15 Aug 2015 13:02:33 +0000 (15:02 +0200)]
gloverlaycompositor: Also disable the blend when done
Nicolas Dufresne [Sat, 15 Aug 2015 12:31:15 +0000 (14:31 +0200)]
glsink: Enable sync meta on pools we offer
As the upload is asynchronous, we need to enable the sync meta to
gain correct rendering. The buffer pool receiver don't know about
that.
Nicolas Dufresne [Sat, 15 Aug 2015 13:12:27 +0000 (15:12 +0200)]
gtkglsink: Add overlay composition support
Rendering composition overlay in GL with additional high resolution
overlay being added.
Nicolas Dufresne [Sat, 15 Aug 2015 13:08:11 +0000 (15:08 +0200)]
gtkglsink: Fix unsafe handling of buffer life time
We need to keep the active buffer (the one we have retreive a
texture id from) otherwise it's racy and upstream may upload
new content before we have rendered or during later redisplay.
Nicolas Dufresne [Fri, 14 Aug 2015 16:07:15 +0000 (18:07 +0200)]
gtkglsink: Remove reset path
The reset path is bogus and there is no reason to get rid of these
things during resize.
Nicolas Dufresne [Fri, 14 Aug 2015 15:36:48 +0000 (17:36 +0200)]
glimagesink: Move overlay rendering after video rendering
This is mostly cosmetic, but heoretically it reduces the amount of
required object in the context at one point. It also avoids potential
conflicts.
Luis de Bethencourt [Sat, 15 Aug 2015 13:45:34 +0000 (14:45 +0100)]
rtph265pay: Copy metadata in the payloader, but only the relevant ones
The payloader didn't copy anything so far, the depayloader copied every
possible meta. Let's make it consistent and just copy all metas without
tags or with only the video tag.
https://bugzilla.gnome.org/show_bug.cgi?id=751774
Luis de Bethencourt [Sat, 15 Aug 2015 10:41:40 +0000 (11:41 +0100)]
rtph265pay: Use GST_WARNING_OBJECT() instead of GST_WARNING()
https://bugzilla.gnome.org/show_bug.cgi?id=753228
Luis de Bethencourt [Sat, 15 Aug 2015 10:30:36 +0000 (11:30 +0100)]
rtph265pay: fix potential crash when shutting down
A race condition in the state change function may cause buffers to be
unreffed while they are still used by the streaming thread in
gst_rtp_h265_pay_send_vps_sps_pps() resulting in a crash. Chain up to the
parent class first in the state change function to make sure streaming
has stopped and only then free those buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=741381
Sebastian Dröge [Sat, 15 Aug 2015 08:03:07 +0000 (10:03 +0200)]
opengl: Change GLclampd to double
GLclampd does not exist on GLES, only desktop GL.
Martin Kelly [Fri, 14 Aug 2015 17:32:14 +0000 (10:32 -0700)]
opengl: add missing ClearDepth prototype
The ClearDepth call is missing.
https://bugzilla.gnome.org/show_bug.cgi?id=753639
Jan Schmidt [Thu, 6 Aug 2015 04:33:54 +0000 (14:33 +1000)]
h264parse: Clear SPS info after processing.
The SPS struct might be filled out by a call to
gst_h264_parser_parse_subset_sps, which fills out
dynamically allocated data and requires a call
to gst_h264_sps_clear() to free it. Also make sure
to clear out any allocated SPS data when returning
an error.
https://bugzilla.gnome.org/show_bug.cgi?id=753306
Vanessa Chipirrás Navalón [Tue, 11 Aug 2015 22:20:26 +0000 (00:20 +0200)]
facedetect: Refactor the code
Some lines of code are repeated several times, therefore
this lines are simplified with a inline function, that this is
proper style of C++.
Thiago Santos [Fri, 14 Aug 2015 14:43:57 +0000 (11:43 -0300)]
pngparse: enable accept-intersect and accept-template flags on sinkpad
Do a quick check with the pad template caps as it is enough. Users
should have figured the appropriate full caps on a previous caps query
https://bugzilla.gnome.org/show_bug.cgi?id=753623
Thiago Santos [Fri, 14 Aug 2015 14:43:18 +0000 (11:43 -0300)]
videoparsers: enable accept-template flag
Do a quick check with the pad template caps as it is enough. Users
should have figured the appropriate full caps on a previous caps query
https://bugzilla.gnome.org/show_bug.cgi?id=753623
Luis de Bethencourt [Fri, 14 Aug 2015 14:08:08 +0000 (15:08 +0100)]
rtph265pay: fix buffer leak when using SPS/PPS
Fixes a buffer leak that would occur if the pipeline was shutdown while a
SPS/PPS header was being created.
https://bugzilla.gnome.org/show_bug.cgi?id=741271
Luis de Bethencourt [Fri, 14 Aug 2015 10:49:51 +0000 (11:49 +0100)]
rtph265depay: copy metadata in the depayloader, but only the relevant ones
The payloader didn't copy anything so far, the depayloader copied every
possible meta. Let's make it consistent and just copy all metas without
tags or with only the video tag.
https://bugzilla.gnome.org/show_bug.cgi?id=751774
Alex Ashley [Fri, 14 Aug 2015 08:44:24 +0000 (09:44 +0100)]
dashdemux: add support for HTTP HEAD method of time sync
The urn:mpeg:dash:utc:http-head:2014 method of time synchronisation
uses an HTTP HEAD request to a specified URL and then parses the
Date: HTTP response header.
This commit adds support to dashdemux for this method of time
synchronisation by making a HEAD request and then parsing the Date:
response.
This commit adds support to gstfragment to return the HTTP headers
and to uridownloader to support HEAD requests. To avoid creating a
new API, the RANGE get function is re-used (abused?) with start=-1
and end=-1 to indicate a HEAD request.
https://bugzilla.gnome.org/show_bug.cgi?id=752413
Alex Ashley [Thu, 13 Aug 2015 17:21:29 +0000 (18:21 +0100)]
dashdemux: post-review fixup of UTCTiming element
This commit addresses the following items from the code review:
use a portable way to define NTP_TO_UNIX_EPOCH,
fix memory leak on error, and
add documentation to UTCTiming parse functions
Using LL is not portable, so the G_GUINT64_CONSTANT needs to be instead.
If an error occurs during DNS resolution, the GError was not being
released, causing a memory leak.
https://bugzilla.gnome.org/show_bug.cgi?id=752413
Alex Ashley [Wed, 15 Jul 2015 10:56:13 +0000 (11:56 +0100)]
dashdemux: add support for UTCTiming elements for clock drift compensation
Unless the DASH client can compensate for the difference between its
clock and the clock used by the server, the client might request
fragments that either not yet on the server or fragments that have
already been expired from the server. This is an issue because these
requests can propagate all the way back to the origin
ISO/IEC 23009-1:2014/Amd 1 [PDAM1] defines a new UTCTiming element to allow
a DASH client to track the clock used by the server generating the
DASH stream. Multiple UTCTiming elements might be present, to indicate
support for multiple methods of UTC time gathering. Each element can
contain a white space separated list of URLs that can be contacted
to discover the UTC time from the server's perspective.
This commit provides parsing of UTCTiming elements, unit tests of this
parsing and a function to poll a time server. This function
supports the following methods:
urn:mpeg:dash:utc:ntp:2014
urn:mpeg:dash:utc:http-xsdate:2014
urn:mpeg:dash:utc:http-iso:2014
urn:mpeg:dash:utc:http-ntp:2014
The manifest update task is used to poll the clock time server,
to save having to create a new thread.
When choosing the starting fragment number and when waiting for a
fragment to become available, the difference between the server's idea
of UTC and the client's idea of UTC is taken into account. For example,
if the server's time is behind the client's idea of UTC, we wait for
longer before requesting a fragment
[PDAM1]: http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=66068
dashdemux: support NTP time servers in UTCTiming elements
Use the gst_ntp_clock to support the use of an NTP server.
https://bugzilla.gnome.org/show_bug.cgi?id=752413
Edward Hervey [Fri, 14 Aug 2015 09:13:51 +0000 (11:13 +0200)]
check: Rename states unit test
Makes it easier to differentiate from other modules states unit test
Vineeth TM [Thu, 13 Aug 2015 01:31:20 +0000 (10:31 +0900)]
spu-pgs: fix buffer and event leak
When playing mts files with embedded subtitles, the buffer is mapped,
but not unmapped at the end resulting in a memory leak.
Also unref event in handle_dvd_event as it takes ownership of the event.
https://bugzilla.gnome.org/show_bug.cgi?id=753539
Vineeth TM [Thu, 13 Aug 2015 01:25:52 +0000 (10:25 +0900)]
dvdspu: Fix event leaks
When playing mts files with embedded subtitles, there are few event leaks.
Events are supposed to be transfer full. So if not forwarding the event,
they need to be freed.
https://bugzilla.gnome.org/show_bug.cgi?id=753539