diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 3034 |
1 files changed, 3032 insertions, 2 deletions
@@ -1,9 +1,3039 @@ +=== release 1.5.90 === + +2015-08-19 Sebastian Dröge <slomo@coaxion.net> + + * configure.ac: + releasing 1.5.90 + +2015-08-19 11:36:13 +0300 Sebastian Dröge <sebastian@centricular.com> + + * po/ky.po: + * po/nb.po: + * po/sv.po: + po: Update translations + +2015-08-18 13:56:59 +0200 Guillaume Marquebielle <guillaume.marquebielle@parrot.com> + + * gst/liveadder/liveadder.c: + 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 + +2015-08-17 18:06:30 +0200 Vanessa Chipirrás Navalón <vchipirras6@gmail.com> + + * ext/opencv/gsthanddetect.c: + * ext/opencv/gsthanddetect.h: + 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 + +2015-08-17 18:02:28 +0200 Vanessa Chipirrás Navalón <vchipirras6@gmail.com> + + * ext/opencv/gsthanddetect.c: + 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 + +2015-08-17 17:47:42 +0200 Vanessa Chipirrás Navalón <vchipirras6@gmail.com> + + * ext/opencv/gsthanddetect.c: + 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 + +2015-08-18 11:54:33 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/daala/gstdaalaenc.c: + daalaenc: Fix build + And also only generate the supported caps once, not on every CAPS/ACCEPT_CAPS + query. It's not that cheap. + +2015-08-17 23:44:42 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * tests/examples/opencv/gstfacedetect_test.c: + 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. + +2015-08-17 14:38:52 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/x265/gstx265enc.c: + 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. + +2015-08-17 14:32:56 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/daala/gstdaalaenc.c: + 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. + +2015-08-16 07:06:44 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/openjpeg/gstopenjpegenc.c: + * ext/schroedinger/gstschroenc.c: + * ext/webp/gstwebpenc.c: + * gst/pnm/gstpnmenc.c: + 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 + +2015-08-17 17:38:15 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * configure.ac: + * ext/opencv/gstfaceblur.c: + * ext/opencv/gstfacedetect.cpp: + 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 + +2015-08-16 21:18:50 +0200 Rico Tzschichholz <ricotz@ubuntu.com> + + * ext/dash/Makefile.am: + dashdemux: link against gio for g_resolver and g_inet_address_from_string + Add missing gio-2.0 CFLAGS/LIBS to fix linker failure + +2015-08-16 07:18:34 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/faac/gstfaac.c: + * ext/gsm/gstgsmenc.c: + * ext/opus/gstopusenc.c: + * ext/sbc/gstsbcenc.c: + * ext/voaacenc/gstvoaacenc.c: + * ext/voamrwbenc/gstvoamrwbenc.c: + * gst/adpcmenc/adpcmenc.c: + * gst/siren/gstsirenenc.c: + 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 + +2015-08-17 07:55:03 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/voaacenc/gstvoaacenc.c: + 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. + +2015-08-17 07:54:36 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/voaacenc/gstvoaacenc.c: + voaacenc: add version to gst-launch string on documentation + gst-launch will call the 0.10 version, we want 1.0 + +2015-08-17 07:15:00 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/faac/gstfaac.c: + faac: make template pad caps more accurate and remove custom getcaps + Allows reusing baseclass caps query handling and simplifying negotiation + code. + +2015-08-17 11:50:28 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/mpg123/gstmpg123audiodec.c: + mpg123: still reset pending audio info on hard flush + Follow-up to previous commit. + https://bugzilla.gnome.org/show_bug.cgi?id=752431 + +2015-07-15 10:44:02 -0600 Jason Litzinger <jlitzinger@control4.com> + + * ext/mpg123/gstmpg123audiodec.c: + 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 + +2015-03-17 17:55:26 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst/videoparsers/gstdiracparse.c: + * gst/videoparsers/gsth263parse.c: + * gst/videoparsers/gsth264parse.c: + * gst/videoparsers/gsth265parse.c: + * gst/videoparsers/gstmpeg4videoparse.c: + * gst/videoparsers/gstmpegvideoparse.c: + * gst/videoparsers/gstpngparse.c: + * gst/videoparsers/gstvc1parse.c: + videoparsers: Use gst_base_parse_merge_tags() + Instead of squashing all upstream tags + https://bugzilla.gnome.org/show_bug.cgi?id=679768 + +2015-08-16 18:13:12 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + 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. + +2015-08-16 08:49:35 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/dash/gstdashdemux.c: + 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 + +2015-08-16 12:55:57 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/mpegtsdemux/mpegtsbase.c: + 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 + +2015-08-16 12:52:09 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + mpdparser: Free UTCTiming struct if there are no values associated with it + CID 1316479 + +2015-08-15 23:36:01 +0200 Edward Hervey <bilboed@bilboed.com> + + * tests/check/Makefile.am: + check: Link against GModule for tests using g_module_* + +2015-08-15 19:04:27 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + adaptivedemux: Demote debugging level + +2015-08-15 19:01:00 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + 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. + +2015-08-14 12:25:19 +0200 Edward Hervey <bilboed@bilboed.com> + + * tests/check/elements/glimagesink.c: + * tests/check/generic/states.c: + checks: Ensure thread-safe libX11/GL when running tests + +2015-08-15 12:58:40 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/dts/gstdtsdec.c: + * ext/faad/gstfaad.c: + * ext/gsm/gstgsmdec.c: + * ext/mpg123/gstmpg123audiodec.c: + * ext/opus/gstopusdec.c: + * ext/sbc/gstsbcdec.c: + * gst/adpcmdec/adpcmdec.c: + * gst/siren/gstsirendec.c: + 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 + +2015-08-15 12:55:49 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/daala/gstdaaladec.c: + * ext/libde265/libde265-dec.c: + * ext/openexr/gstopenexrdec.cpp: + * ext/openjpeg/gstopenjpegdec.c: + * ext/rsvg/gstrsvgdec.c: + * ext/schroedinger/gstschrodec.c: + * ext/webp/gstwebpdec.c: + * gst/pnm/gstpnmdec.c: + * gst/vmnc/vmncdec.c: + 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 + +2015-08-15 16:22:20 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + 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 + +2015-08-15 15:02:33 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gloverlaycompositor: Also disable the blend when done + +2015-08-15 14:31:15 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglimagesink.c: + * ext/gtk/gstgtkglsink.c: + * gst-libs/gst/gl/gstglupload.c: + 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. + +2015-08-15 15:12:27 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkglsink.c: + * ext/gtk/gstgtkglsink.h: + * ext/gtk/gtkgstglwidget.c: + gtkglsink: Add overlay composition support + Rendering composition overlay in GL with additional high resolution + overlay being added. + +2015-08-15 15:08:11 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstbasewidget.c: + * ext/gtk/gtkgstbasewidget.h: + * ext/gtk/gtkgstglwidget.c: + * ext/gtk/gtkgstwidget.c: + 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. + +2015-08-14 18:07:15 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstbasewidget.c: + * ext/gtk/gtkgstbasewidget.h: + * ext/gtk/gtkgstglwidget.c: + gtkglsink: Remove reset path + The reset path is bogus and there is no reason to get rid of these + things during resize. + +2015-08-14 17:36:48 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglimagesink.c: + 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. + +2015-08-15 14:45:34 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265pay.c: + 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 + +2015-08-15 11:41:40 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265pay.c: + rtph265pay: Use GST_WARNING_OBJECT() instead of GST_WARNING() + https://bugzilla.gnome.org/show_bug.cgi?id=753228 + +2015-08-15 11:30:36 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265pay.c: + 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 + +2015-08-15 10:03:07 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/glprototypes/opengl.h: + opengl: Change GLclampd to double + GLclampd does not exist on GLES, only desktop GL. + +2015-08-14 10:32:14 -0700 Martin Kelly <martin@surround.io> + + * gst-libs/gst/gl/glprototypes/opengl.h: + opengl: add missing ClearDepth prototype + The ClearDepth call is missing. + https://bugzilla.gnome.org/show_bug.cgi?id=753639 + +2015-08-06 14:33:54 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/codecparsers/gsth264parser.c: + * gst/videoparsers/gsth264parse.c: + 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 + +2015-08-12 00:20:26 +0200 Vanessa Chipirrás Navalón <vchipirras6@gmail.com> + + * ext/opencv/gstfacedetect.cpp: + 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++. + +2015-08-14 11:43:57 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst/videoparsers/gstpngparse.c: + 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 + +2015-08-14 11:43:18 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst/videoparsers/gstdiracparse.c: + * gst/videoparsers/gsth263parse.c: + * gst/videoparsers/gsth264parse.c: + * gst/videoparsers/gsth265parse.c: + * gst/videoparsers/gstmpeg4videoparse.c: + * gst/videoparsers/gstmpegvideoparse.c: + * gst/videoparsers/gstvc1parse.c: + 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 + +2015-08-14 15:08:08 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265pay.c: + 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 + +2015-08-14 11:49:51 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + * gst/rtp/gstrtph265depay.h: + 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 + +2015-08-14 09:44:24 +0100 Alex Ashley <bugzilla@ashley-family.net> + + * ext/dash/gstdashdemux.c: + * gst-libs/gst/uridownloader/gstfragment.c: + * gst-libs/gst/uridownloader/gstfragment.h: + * gst-libs/gst/uridownloader/gsturidownloader.c: + 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 + +2015-08-13 18:21:29 +0100 Alex Ashley <bugzilla@ashley-family.net> + + * ext/dash/gstdashdemux.c: + 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 + +2015-07-15 11:56:13 +0100 Alex Ashley <bugzilla@ashley-family.net> + + * ext/dash/Makefile.am: + * ext/dash/gstdashdemux.c: + * ext/dash/gstdashdemux.h: + * ext/dash/gstmpdparser.c: + * ext/dash/gstmpdparser.h: + * tests/check/elements/dash_mpd.c: + 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 + +2015-08-14 11:13:51 +0200 Edward Hervey <bilboed@bilboed.com> + + * tests/check/generic/states.c: + check: Rename states unit test + Makes it easier to differentiate from other modules states unit test + +2015-08-13 10:31:20 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * gst/dvdspu/gstspu-pgs.c: + 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 + +2015-08-13 10:25:52 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * gst/dvdspu/gstdvdspu.c: + 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 + +2015-08-13 12:38:41 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/srtp/gstsrtpdec.c: + Revert "srtpdec: Add support for buffer list" + This reverts commit ff11a1a8a0c685d2edd0e06c0071cbb94f2cb663. + It can't be assumed that all buffers in a buffer list have the same SSRC or + are RTP or RTCP only. It has to be checked for every single buffer, and one + basically has to do the processing that is done by the default chain_list + implementation. + +2015-08-12 17:54:52 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: checking if depay has sps/pps nals before insertion + Related to: https://bugzilla.gnome.org/show_bug.cgi?id=753430 + https://bugzilla.gnome.org/show_bug.cgi?id=753228 + +2015-08-12 17:22:42 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: only update the srcpad caps if something else than the codec_data changed + h264parse and gstrtph264depay do the same, let's keep the behaviour + consistent. As we now include the codec_data inside the stream, this causes + less caps renegotiation. + https://bugzilla.gnome.org/show_bug.cgi?id=753228 + +2015-08-12 16:43:48 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: PPS replaces old PPS if it has the same id + https://bugzilla.gnome.org/show_bug.cgi?id=753228 + +2015-08-12 16:11:00 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: Insert SPS/PPS NALs into the stream + rtph264depay does the same and this fixes decoding of some streams with 32 + SPS (or 256 PPS). It is allowed to have SPS ID 0 to 31 (or PPS ID 0 to 255), + but the field in the codec_data for the number of SPS or PPS is only 5 + (or 8) bit. As such, 32 SPS (or 256 PPS) are interpreted as 0 everywhere. + This looks like a mistake in the part of the spect about the codec_data. + +2015-08-12 15:49:50 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: implement process_rtp_packet() vfunc + For more optimised RTP packet handling: means we don't need to map the + input buffer again but can just re-use the mapping the base class has + already done. + Based on: https://bugzilla.gnome.org/show_bug.cgi?id=750235 + https://bugzilla.gnome.org/show_bug.cgi?id=753228 + +2015-08-12 15:14:50 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: Use GST_BUFFER_PTS() instead of GST_BUFFER_TIMESTAMP() + Switching to GST_BUFFER_TIMESTAMP() to be consistent with other rtp code. + +2015-08-12 14:59:53 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265depay.c: + rtph265depay: prevent trying to get 0 bytes from adapter + This causes an assertion and would lead to getting a NULL instead + of a buffer. Without proper checking this would easily lead to a + segfault. + Related to rpth264depay: https://bugzilla.gnome.org/show_bug.cgi?id=737199 + +2015-08-12 07:58:09 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> + + * gst-libs/gst/codecparsers/gsth265parser.c: + codecparsers: h265: Fix the range of delta_chroma_log2_weight_denom + ChromaLog2WeightDenom = luma_log2_weight_denom + delta_chroma_log2_weight_denom + The value of ChromaLog2WeightDenom should be in the range of 0 to 7 and + the value luma_log2_weight_denom should be also in the range of 0 to 7. + Which means , delta_chroma_log2_weight_denom can have values in the range + between -7 and 7. + https://bugzilla.gnome.org/show_bug.cgi?id=753552 + +2015-08-12 05:11:27 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> + + * gst-libs/gst/codecparsers/gsth265parser.c: + codecparsers: h265: Fix the parsing of ref_pic_lists_modification + https://bugzilla.gnome.org/show_bug.cgi?id=753552 + +2015-08-12 00:20:10 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglimagesink.c: + glimagesink: take into account non 1/1 par for navigation + The current code was ignoring the par/dar aspect when transforming + from window coordinates to stream coordinates resulting in incorrect + coordinates being sent upstream in the navigation events. + +2015-08-12 00:18:20 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gtk/gtkgstbasewidget.c: + gtk: fix motion event name + s/motion/mouse/ + Fixes hover interaction with DVD menus + +2015-08-12 00:14:14 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gtk/gtkgstbasewidget.c: + gtk: correct navigation events for window scaling + i.e. take into account the possiblity of scaling in the sink + or through GDK_SCALE. + Fixes DVD Menus with a scaled gtkwidget + +2015-08-11 15:02:25 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/frei0r/gstfrei0r.c: + frei0r: Fix setting string parameters + String parameters are expected to be passed as (f0r_param_string *), + which actually map to char**. In the filters this is evaluated as + (*(char**)param) which currently lead to crash when passing char*. + Remove the special case for string, all types, including char* as + passed as a reference. + https://phabricator.freedesktop.org/T83 + +2015-08-11 13:34:59 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gtk/gstgtkbasesink.c: + * ext/gtk/gtkgstbasewidget.c: + * ext/gtk/gtkgstbasewidget.h: + gtk: implement GstNavigation interface + Now we can push key/mouse input into the pipeline for DVD use cases. + +2015-06-30 13:51:33 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/opus/gstrtpopusdepay.c: + * ext/opus/gstrtpopuspay.c: + opus: Copy metadata in the (de)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 audio tag. + https://bugzilla.gnome.org/show_bug.cgi?id=751774 + +2015-08-11 04:14:19 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> + + * gst/videoparsers/gsth265parse.c: + videoparsers: h265: Fix the frame start detection code + Check slice headers in between GST_H265_NAL_SLICE_TRAIL_N + and GST_H265_NAL_SLICE_RASL_R for frame start detection. + https://bugzilla.gnome.org/show_bug.cgi?id=753497 + +2015-08-11 03:47:42 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> + + * gst/videoparsers/gsth265parse.c: + videoparsers: h265: Avoid skipping of EOS and EOB nals + EndOfSequence and EndOfBitstream nal units have size of 2 bytes. + Don't consider them as broken nals. + https://bugzilla.gnome.org/show_bug.cgi?id=753497 + +2015-08-10 23:02:12 +0200 Vanessa Chipi <vchipirras6@gmail.com> + + * ext/opencv/gstfacedetect.cpp: + facedetect: wrong form to write the delete operator + The delete operator is written this way: delete (cascade). This way is + misspelled, it is an operator, not a function. Delete the parentheses. + +2015-08-10 19:13:11 +0200 vanechipi <vchipirras6@gmail.com> + + * ext/opencv/gstfacedetect.cpp: + facedetect: simplify repeated code. + Store the value of r.height / 2 instead of repeating the operation line + three times. + +2015-08-10 19:02:10 +0200 vanechipi <vchipirras6@gmail.com> + + * ext/opencv/gstfacedetect.cpp: + facedetect: Redundancy exists in code. + Checking the vector is not empty and checking the vector size is greater + than zero are the same thing, this is a redundancy in the code. Only + checking the vector is not empty is sufficient, therefore removing the + other check. + +2015-08-10 14:48:58 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/Makefile.am: + gl: Add opengl_version.h to the list of sources + Adding this private header to the list of sources. We don't want to make + this header public, but we need it in the list of sources otherwise it + won't be included in the tarball. This fixes make distcheck. + This regression was introduced by commit 1a6fe3db + +2015-08-10 19:06:16 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * tests/examples/opencv/gstfacedetect_test.c: + examples: facedetect: only create variables when needed + The variables to store face values are only needed if they will be used to + control the volume. Which isn't the default to avoid potentially being very + loud accidentally. Only create variables when needed. + +2015-08-10 16:51:17 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * tests/examples/opencv/gstfacedetect_test.c: + examples: facedetect: make volume control optional + +2015-08-10 16:38:32 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gl/effects/gstgleffectblur.c: + * ext/gl/effects/gstgleffectbulge.c: + * ext/gl/effects/gstgleffectfisheye.c: + * ext/gl/effects/gstgleffectglow.c: + * ext/gl/effects/gstgleffectidentity.c: + * ext/gl/effects/gstgleffectlaplacian.c: + * ext/gl/effects/gstgleffectlumatocurve.c: + * ext/gl/effects/gstgleffectmirror.c: + * ext/gl/effects/gstgleffectrgbtocurve.c: + * ext/gl/effects/gstgleffectsin.c: + * ext/gl/effects/gstgleffectsobel.c: + * ext/gl/effects/gstgleffectsquare.c: + * ext/gl/effects/gstgleffectsqueeze.c: + * ext/gl/effects/gstgleffectssources.c: + * ext/gl/effects/gstgleffectssources.h: + * ext/gl/effects/gstgleffectstretch.c: + * ext/gl/effects/gstgleffecttunnel.c: + * ext/gl/effects/gstgleffecttwirl.c: + * ext/gl/effects/gstgleffectxray.c: + * ext/gl/gstgldifferencematte.c: + * ext/gl/gstgleffects.c: + * ext/gl/gstgleffects.h: + * gst-libs/gst/gl/gstglfilter.c: + gl: use gles2 shaders everywhere + This effectively limits a glfilter subclass to be > GL(ES) 2.0. + rather than a possible GL 1.4. + +2015-08-10 15:44:54 +0200 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/utils/opengl_versions.h: + * gst-libs/gst/gl/win32/gstglcontext_wgl.c: + * gst-libs/gst/gl/win32/gstglcontext_wgl.h: + * gst-libs/gst/gl/x11/gstglcontext_glx.c: + glcontext/wgl: implement gl3 core profile context selection + +2015-02-28 01:07:44 +0100 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * ext/gl/gstgltransformation.c: + * ext/gl/gstgltransformation.h: + gltransformation: implement pivot point for rotation and scale + https://bugzilla.gnome.org/show_bug.cgi?id=744763 + Add a pivot vector for setting the origin of rotations and scales. + With the pivot point the rotation and scale operations can have + different origins. This adds the ability to rotate around different points. + Currently the default (0, 0) pivot point is possible, + a rotation around the center, and zooming into and out of the center. + With an pivot point this is optional. + I defined the following image coordinates for the pivot point: + (-1,1) ------------------------- (1,1) + | | + | | + | | + | (0,0) | + | | + | | + | | + (-1,-1) ------------------------- (1,-1) + Example: + Rotate the video at the bottom left corner + gst-launch-1.0 videotestsrc \ + ! gltransformation \ + scale-x=0.5 \ + scale-y=0.5 \ + rotation-z=25.0 \ + pivot-x=-1.0 \ + pivot-y=-1.0 \ + ! glimagesink + The pivot-z option defines the pivot point in 3D space. + This only affects rotation, since we have no Z data to scale. + With this option a video can be rotated around a point in 3D space. + Example: + Rotate around point behind the video: + gst-launch-1.0 videotestsrc \ + ! gltransformation \ + rotation-x=10.0 \ + pivot-z=-4.0 \ + ! glimagesink + +2015-08-08 14:45:42 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gloverlaycompositor: Add shader to convert BGRA/ARGB -> RGBA + Depending on the bytes order we will get BGRA (little) and ARGB (big) + from the composition overlay buffer while our GL code expects RGBA. Add + a fragment shader that do this conversion. + https://bugzilla.gnome.org/show_bug.cgi?id=752842 + +2015-08-08 17:28:03 +0200 Matthew Waters <matthew@centricular.com> + + * ext/qt/gstqsgtexture.cc: + * ext/qt/gstqsgtexture.h: + * ext/qt/qtitem.cc: + qml: implement the required multiple GL context synchonisation + From GStreamer's GL context into the QML context + +2015-08-08 17:22:05 +0200 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglsyncmeta.c: + gl/syncmeta: implement synchronisation without glFenceSync + Uses glFinish as that's the best we have for lesser OpenGL versions. + +2015-08-08 15:45:59 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/asfmux/gstasfmux.c: + asfmux: output TIME segment if we output a stream and won't seek back later + Check if downstream is seekable via a SEEKING query and output a + BYTE segment if we want to seek back to fix up the headers later, + but if we're streaming send a TIME segment instead (which goes + down better with e.g. asfmux ! rtpasfpay). + https://bugzilla.gnome.org/show_bug.cgi?id=719553 + +2015-08-08 15:30:43 +0200 Matthew Waters <matthew@centricular.com> + + * tests/check/libs/gstglcontext.c: + tests/glcontext: fix INVALID_ENUM GL error in test + +2015-08-08 15:21:03 +0200 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/x11/gstglcontext_glx.c: + context/glx: only use glXCreateContextAttribs for OpenGL 3 contexts + mesa for example when creating a GL 3.1 compatibility context + overrides our context profile selection to create a core context. + +2015-08-08 13:19:41 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * tests/examples/opencv/gstfacedetect_test.c: + examples: facedetect: only set to playing when it's not already + +2015-08-08 12:52:36 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * tests/examples/opencv/gstfacedetect_test.c: + * tests/examples/opencv/gsthanddetect_test.c: + examples: opencv: remove unnecessary setting of a property + "/dev/video0" is the default device of v4l2src, setting it to this is + redundant. + +2015-08-07 15:43:53 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/opencv/gstfacedetect.cpp: + facedetect: fix profile loading check + Since the profile gchar depends on DEFAULT_FACE_PROFILE, it should never be + NULL. Furthermore CascadeClassifier accepts any input, even + an empty one, but if the profile fails to load it returns an empty cascade. + Check for this instead, and inform the user if there was an Error. + +2015-08-06 11:30:04 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/hls/m3u8.c: + hlsdemux: don't warn about duration if it is not known + And also print the values in case of warning + +2015-08-07 13:16:56 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * .gitignore: + gitignore: add new example file + Commit 02b9daafdf64ab205ed725f5496dfa5ce860eacc added a new example file + tests/examples/opencv/gstfacedetect_test, adding it to .gitignore + +2015-08-07 13:08:17 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * configure.ac: + * ext/opencv/gstfaceblur.c: + * ext/opencv/gstfaceblur.h: + * ext/opencv/gstfacedetect.cpp: + * ext/opencv/gstfacedetect.h: + * ext/opencv/gsthanddetect.c: + * ext/opencv/gsthanddetect.h: + configure: update OpenCV requirements to 2.3.0 + With facedetect ported to C++ the minimum version of OpenCV + supported is 2.3.0 + https://bugzilla.gnome.org/show_bug.cgi?id=748377 + +2015-08-07 05:58:22 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> + + * gst/videoparsers/gsth265parse.c: + h265parse: expose compatible profiles to downstream + Some video bitstreams report a too restrictive set of profiles. If a video + decoder was to strictly follow the indicated profile, it wouldn't support that + stream, whereas it could in theory and in practice. So we should relax the + profile restriction for allowing the decoder to get connected with parser. + https://bugzilla.gnome.org/show_bug.cgi?id=747613 + +2015-08-06 18:12:07 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/bayer/gstrgb2bayer.c: + rgb2bayer: Use mapped frame stride + +2015-08-06 18:11:53 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/bayer/gstrgb2bayer.c: + rgb2bayer: Protect against failing map + +2015-08-06 18:04:58 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/bayer/gstbayer2rgb.c: + bayer2rgb: Read stride from the video info + +2015-08-06 18:04:41 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/bayer/gstbayer2rgb.c: + bayer2rgb: Protect against failing map + +2015-08-06 19:23:49 +0300 Ilya Averyanov <i.averyanov@geoscan.aero> + + * tools/element-templates/videoencoder: + element-template: Fix wrong pad in videoencoder + https://bugzilla.gnome.org/show_bug.cgi?id=753326 + +2015-08-03 16:57:31 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstdashdemux.c: + dashdemux: Fix leak in gst_dash_demux_stream_update_fragment_info() + The gst_dash_demux_stream_update_fragment_info function could call + gst_dash_demux_stream_update_headers_info function twice. The + gst_dash_demux_stream_update_headers_info function will set header_uri and + index_uri to some newly allocated strings. The values set by the first call of + gst_dash_demux_stream_update_headers_info will leak when the function is + called for a second time. + The solution is to call gst_adaptive_demux_stream_fragment_clear before the + second call of gst_dash_demux_stream_update_headers_info + https://bugzilla.gnome.org/show_bug.cgi?id=753188 + +2015-08-05 14:52:12 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/pcapparse/gstpcapparse.c: + pcapparse: Segment should start at base ts + Instead we would use cur_ts which matches the last TS store + in the buffer list. + https://bugzilla.gnome.org/show_bug.cgi?id=753037 + +2015-08-05 12:56:57 +0200 Anders Jonsson <anders.jonsson@norsjovallen.se> + + * gst/camerabin2/gstwrappercamerabinsrc.c: + camerabin2: Fix string typo + https://bugzilla.gnome.org/show_bug.cgi?id=753241 + +2015-08-05 11:56:32 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/opencv/gstfacedetect.cpp: + opencv: facedetect: free IplImage with cvReleaseImage + Using delete() with IplImage will fail to free some of the structure's + contents. cvReleaseImage() is the proper way of freeing the memory. + +2015-08-05 11:39:01 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/opencv/gstfacedetect.cpp: + opencv: facedetect: check pointer before using it + Check if profile is NULL before dereferencing it with new. Also, new will + never return NULL; if allocation fails, a std::bad_alloc exception will be + thrown instead. Remove check for a NULL return. + CID #1315258 + +2015-08-05 11:14:49 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/x265/gstx265enc.c: + x265enc: remove dead code + level_ok is only used in a check that will never be true, removing it. + CID #1315255 + +2015-08-05 11:11:11 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/x265/gstx265enc.c: + x265enc: fix memory leak + Free vps_nal before returning. + CID #1315257 + +2015-08-04 23:15:36 +0200 Carlos Garnacho <carlosg@gnome.org> + + * ext/rsvg/gstrsvgdec.c: + rsvg: Don't leak a GstVideoCodecState + There's already the output_state variable with it, no need to + call gst_video_decoder_get_output_state() and get a new ref. + https://bugzilla.gnome.org/show_bug.cgi?id=753262 + +2015-08-04 21:32:53 +0900 Jimmy Ohn <yongjin.ohn@lge.com> + + * gst/rawparse/gstrawparse.c: + rawparse: fix duplicated format in handle_seek_pull + GstFormat variable are duplicated in handle_seek_pull function. + So we need to move this variable in condition statement. + https://bugzilla.gnome.org/show_bug.cgi?id=753243 + +2015-08-04 14:30:17 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/opencv/gstfacedetect.cpp: + opencv: facedetect: fix crashes in finalize + Fixes gst-inspect-1.0 -a crashing. + +2015-08-03 19:42:56 +0300 Sebastian Dröge <sebastian@centricular.com> + + * sys/winscreencap/gstdx9screencapsrc.c: + * sys/winscreencap/gstdx9screencapsrc.h: + * sys/winscreencap/gstgdiscreencapsrc.c: + * sys/winscreencap/gstgdiscreencapsrc.h: + winscreencap: Properly timestamp buffers with the current clock running time instead of doing magic + Also implement framerate handling correctly by borrowing the code from + ximagesrc. GstBaseSrc::get_times() can't be used for that, we have to + implement proper waiting ourselves. + +2015-08-04 00:20:27 +1000 Jan Schmidt <thaytan@noraisin.net> + + * ext/opencv/gstfacedetect.cpp: + opencv: Fix 32-bit build / format strings. + Use G_GSIZE_FORMAT for format strings where relevant + +2015-08-03 19:48:16 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: swap control binding proxy + The ref_object and object parameters were the wrong way around. + For the typical use case where an application is setting a + GstControlBinding on the returned ghost pad: + 1. our control binding would be removed when the new one was set + 2. sync_values calls were not being forwarded from the internal + pad to the ghost pad. + If an application attempts to perform other control binding + operations (get_* family of functions) on the internal pad, they + will also be forwarded to the ghost pad where a possible + GstControlBinding will provide the necessary values. + +2015-08-01 15:52:28 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/dash/gstmpdparser.c: + dash: mpdparser: plug leak in segmenttemplate parsing + Only copy the values from the parent if the current node doesn't + have that value, they were being copied from the parent and + then overwriten by the child node, leaking the parent's copy + +2015-08-01 15:51:50 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * tests/check/elements/dash_mpd.c: + tests: dash_mpd: add check for segmenttemplate inheritance + Checks if the values are properly inherited and overwriten + +2015-08-01 15:09:19 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * tests/check/elements/dash_mpd.c: + tests: dash_mpd: add one more baseURL test + This other type of baseURL test was replaced by a more complex one, + better have both to keep both options working + Also adds another 2 variations of how baseURL can be generated + https://bugzilla.gnome.org/show_bug.cgi?id=752776 + +2015-07-23 10:54:36 +0100 Florin Apostol <florin.apostol@oregan.net> + + * tests/check/elements/dash_mpd.c: + dashdemux: tests: added duration format test + https://bugzilla.gnome.org/show_bug.cgi?id=752776 + +2015-07-22 11:42:23 +0100 Florin Apostol <florin.apostol@oregan.net> + + * tests/check/elements/dash_mpd.c: + dashdemux: tests: update unit test for baseURL + Update the unit test for baseURL to test that it is properly + resolved taking into account parent baseURL elements. + https://bugzilla.gnome.org/show_bug.cgi?id=752776 + +2015-08-01 11:51:22 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/opencv/gsttemplatematch.c: + templatematch: revert rename of property + The property doesn't need to have its name changed because of C++, + just the instance variables. + +2015-07-31 17:31:15 +0100 Vanessa Chipirrás <vchipirras6@gmail.com> + + * tests/examples/opencv/Makefile.am: + * tests/examples/opencv/gstfacedetect_test.c: + facedetect: Add unit test + I created four utilities of the detected features: + 1- If you hide your mouth, the volume of video is low. + 2- If you hide the nose, the volume of the video is up. + 3- If you hide the full face, the video stops. + You can see proof of this here: + https://www.youtube.com/watch?v=pxzejNKV_WQ + https://bugzilla.gnome.org/show_bug.cgi?id=748377 + +2015-07-31 16:40:07 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/opencv/gsttemplatematch.c: + * ext/opencv/gsttemplatematch.h: + templatematch: rename conflicting variable + With the switch of gstopencv.c to C++, all OpenCV elements are built with + g++. The template variable clashes with C++'s feature of the same name. + Rename template to templ to avoid any clash. + +2015-07-31 13:45:43 +0100 Vanessa Chipirrás <vchipirras6@gmail.com> + + * ext/opencv/Makefile.am: + * ext/opencv/gstfacedetect.c: + * ext/opencv/gstfacedetect.cpp: + * ext/opencv/gstfacedetect.h: + * ext/opencv/gstopencv.c: + * ext/opencv/gstopencv.cpp: + facedetect: need to migrate to C++ + The cascade classifier changes its structure on new version of OpenCV. + The need to migrate to C++ to utilize the new load method of OpenCV which + allows to load the new classifiers. + https://bugzilla.gnome.org/show_bug.cgi?id=748377 + +2015-07-31 10:47:27 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * ext/dts/gstdtsdec.c: + dtsdec: fix taglist leak + taglist merge doesnt take ownership. So should free the tags after use + https://bugzilla.gnome.org/show_bug.cgi?id=753086 + +2015-07-30 23:31:21 +0200 Heinrich Fink <hfink@toolsonair.com> + + * sys/applemedia/avsamplevideosink.m: + applemedia/avsample: Fix racy cleanup of CA layer + The block that is dispatched async to the main thread assumed the + wrapping GstAvSampleVideoSink to be alive. However, at the time of + the block execution the GstObject instance that is deferenced to access + the CA layer might already be freed, which caused occasional crashes. + Instead, we now only pass the CoreAnimation layer that needs to be + released to the block. We use __block to make sure the block is not + increasing the refcount of the CA layer again on its own. + https://bugzilla.gnome.org/show_bug.cgi?id=753081 + +2015-07-02 19:34:43 -0400 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/libs/aggregator.c: + tests: Add test for seeking live pipelines + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-07-02 19:19:33 -0400 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/libs/aggregator.c: + tests: Make source live to re-enable aggregator timeout tests + The live mode is only enabled if one of the sources if live. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-07-02 18:37:28 -0400 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/elements/audiointerleave.c: + tests: Add audiointerleave test to show that queuing works + This tests fails without the queuing patch because incoming buffers are + not delivered before they are needed. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-07-02 18:33:43 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst/audiomixer/gstaudiointerleave.c: + audiointerleave: Avoid caps processing if not yet negotiated + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-03-16 17:06:46 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst/audiomixer/gstaudioaggregator.c: + audioaggregator: On timeout, resync pads with not enough data + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-03-06 19:50:08 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/base/gstaggregator.c: + * gst-libs/gst/base/gstaggregator.h: + * gst/audiomixer/gstaudioaggregator.c: + aggregator: Queue "latency" buffers at each sink pad. + In the case where you have a source giving the GstAggregator smaller + buffers than it uses, when it reaches a timeout, it will consume the + first buffer, then try to read another buffer for the pad. If the + previous element is not fast enough, it may get the next buffer even + though it may be queued just before. To prevent that race, the easiest + solution is to move the queue inside the GstAggregatorPad itself. It + also means that there is no need for strange code cause by increasing + the min latency without increasing the max latency proportionally. + This also means queuing the synchronized events and possibly acting + on them on the src task. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-03-06 21:32:04 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Remove broken _clip vfunc + It never does anything. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-07-30 08:58:48 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * gst/videoparsers/gsth265parse.c: + h265parse: Avoid checking for Non Mandatory VPS NAL + VPS is not mandatory, and need not check for its presence before setting + the caps. Because of the check, in streams which don't have VPS, + sticky event mishandling happens. + https://bugzilla.gnome.org/show_bug.cgi?id=752807 + +2015-07-30 15:33:46 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * gst/sdp/gstsdpdemux.c: + sdpdemux: assertion error due to wrong condition check + In media to caps function, reserved_keys array is being used for variable i, + leading to GLib-CRITICAL **: g_ascii_strcasecmp: assertion 's1 != NULL' failed + changed it to variable j + https://bugzilla.gnome.org/show_bug.cgi?id=753009 + +2015-07-30 11:12:21 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/gl/gstglfilterbin.c: + gstglfilterbin: remove unused variable + res is set multiple times but never used or returned. Removing it. + +2015-07-29 20:07:09 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/base/gstaggregator.c: + aggregator: Default to "zero" start time selection mode as documented + +2015-07-29 20:06:11 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/base/gstaggregator.c: + aggregator: Ignore the "first" mode if the segment not a time segment + +2015-07-29 19:10:57 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Remove debug output from gst_gl_upload_transform_caps() + We can't know if the GstGLUpload type is initialized at this point already, + and thus our debug category might not be initialized yet... and cause an + assertion here. + As we don't print debug output for any of the other transform functions, let's + defer this problem for now. + +2015-07-29 17:48:58 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/gl/gstglstereomix.c: + glstereomix: remove redundant initialization + v is initialized in the for loop init, no need to do it twice. Removing + first initialization. + +2015-07-29 17:29:28 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/rtp/gstrtph265pay.c: + rtp: remove dead assignment + Value set to ret will be overwritten at least once at the end of the while + loop, removing assignment. + +2015-07-29 17:29:29 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/mpegtsmux/mpegtsmux.c: + * gst/mpegtsmux/mpegtsmux.h: + mpegtsmux: use GQueue instead of GList prepend/reverse + +2015-07-29 17:17:16 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/sdp/gstsdpdemux.c: + sdpdemux: remove redundant assignment + Value of p is already set below just before being used. Removing this + first assignment that will be ignored. + +2015-07-29 16:51:48 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/mpegtsdemux/mpegtsbase.c: + mpegtsbase: remove redundant check + No need to check if done is True since break will already terminate the for + loop. + +2015-07-29 13:09:05 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/sdp/gstsdpdemux.c: + sdpdemux: Don't assert in GstAdapter if no data was received before EOS + +2015-07-28 22:30:09 +0300 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/compositor.c: + compositor: Add unit tests for the new aggregator start-time-selection property + https://bugzilla.gnome.org/show_bug.cgi?id=749966 + +2015-06-15 18:30:20 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/base/gstaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: Add property to select how to decide on a start time + Before aggregator based elements always started at running time 0, + now it's possible to select the first input buffer running time or + explicitly set a start-time value. + https://bugzilla.gnome.org/show_bug.cgi?id=749966 + +2015-07-29 11:25:24 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/sdp/gstsdpdemux.c: + sdpdemux: Strip keys from the fmtp that we use internally in our caps + Skip keys from the fmtp, which we already use ourselves for the + caps. Some software is adding random things like clock-rate into + the fmtp, and we would otherwise here set a string-typed clock-rate + in the caps... and thus fail to create valid RTP caps + https://bugzilla.gnome.org/show_bug.cgi?id=753009 + +2015-07-29 22:59:56 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/codecparsers/gsth264parser.h: + * gst/videoparsers/gsth264parse.c: + h264parse: Add more NAL types for debugging output. + Register more NAL unit types so that they are dumped + by name in the debug output instead of being labelled + 'Invalid' + +2015-07-29 22:57:44 +1000 Jan Schmidt <jan@centricular.com> + + * gst/mpegtsmux/mpegtsmux.c: + mpegtsmux: Don't clear the PID on reset. + The PID on a pad shouldn't change on a state change, only + if the pad is freed and a new one created. Clearing the PID + prevented mpegtsmux from being reused, because all packets + would end up muxed in PID 0 + https://bugzilla.gnome.org/show_bug.cgi?id=752999 + +2015-07-29 22:56:28 +1000 Jan Schmidt <jan@centricular.com> + + * gst/mpegtsmux/mpegtsmux.c: + mpegtsmux: Accumulate streamheaders in reverse + Accumulate streamheader packets in reverse into the + GList for efficiency, and reverse the list once when + processing. + Improves muxing speed when there are a lot of + streamheaders. + +2015-07-29 10:12:43 +0100 Sebastian Dröge <sebastian@centricular.com> + + * sys/androidmedia/gstamcvideoenc.c: + amcvideoenc: Always set i-frame-interval setting + Most encoders fail to initialize if we don't set it at all. + +2015-07-29 12:56:54 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * gst/videoparsers/gsth263parse.c: + h263parse: fix caps memory leak + https://bugzilla.gnome.org/show_bug.cgi?id=752991 + +2015-07-28 21:15:43 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/base/gstaggregator.c: + aggregator: Query the peer latency again on the next opportunity after a pad was added or removed + Adding a pad will add a new upstream that might have a bigger minimum latency, + so we might have to wait longer. Or it might be the first live upstream, in + which case we will have to start deadline based aggregation. + Removing a pad will remove a new upstream that might have had the biggest + latency, so we can now stop waiting a bit earlier. Or it might be the last + live upstream, in which case we can stop deadline based aggregation. + +2015-07-28 11:20:40 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * tests/check/libs/gstglcolorconvert.c: + glcolorconvert-test: Test notify function for setup_wrapped + gst_gl_memory_setup_wrapped() now takes a destroy notify function. This + destroy notify is called to track the memory life time, hence will + notify each time a memory get destroyed. This test check that the + callback count is correct. + +2015-07-28 11:06:43 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * tests/check/libs/gstglcolorconvert.c: + glcolorconvert-test: Fix build + +2015-07-28 08:59:24 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Add fixme about using bufferpool for raw + http://bugzilla.gnome.org/show_bug.cgi?id=752937 + +2015-07-27 16:58:22 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglmemory.c: + * gst-libs/gst/gl/gstglmemory.h: + * gst-libs/gst/gl/gstglupload.c: + glupload: Keep input frame mapped as long as needed + When performing a raw upload, we need to keep the raw data mapped as + long as needed. + https://bugzilla.gnome.org/show_bug.cgi?id=752937 + +2015-07-27 15:58:10 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + Revert "glupload: memcpy on raw data upload" + This reverts commit 82c0189b2842e8729e82a4e73491dffc977bc7c2. + https://bugzilla.gnome.org/show_bug.cgi?id=752937 + +2015-07-15 16:21:00 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: gst_mpdparser_get_xml_prop_duration sets default value in case of parsing errors + The gst_mpdparser_get_xml_prop_duration function will set the + property_value to the default_value in case the parsing fails. + https://bugzilla.gnome.org/show_bug.cgi?id=752426 + +2015-07-27 18:39:13 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * ext/opus/gstopuscommon.c: + opuscommon: Use GString instead of snprintf for concating + Safer, easier to understand, and more portable. Also, skip + all this if the log level is too low. + +2015-07-27 21:54:27 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/win32/gstglcontext_wgl.c: + * gst-libs/gst/gl/win32/gstglcontext_wgl.h: + glcontext/wgl: fix defenition of gst_gl_context_wgl_new + gstglcontext_wgl.c: In function 'gst_gl_context_wgl_new': + gstglcontext_wgl.c:83:40: error: 'display' undeclared (first use in this function) + +2015-07-27 20:03:05 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: + gl/cocoa: fix definition of gst_gl_context_new + gstglcontext_cocoa.m:75:1: error: conflicting types for 'gst_gl_context_cocoa_new' + +2015-07-27 20:00:47 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/win32/gstglwindow_win32.c: + gl/win32: fix definition of gst_gl_window_win32_new + +2015-07-27 18:21:19 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: + wayland: fail window open if the display is the correct type + Errors out cleanly if a wayland compositor is not running + +2015-07-24 17:00:27 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/android/gstglwindow_android_egl.c: + * gst-libs/gst/gl/android/gstglwindow_android_egl.h: + * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: + * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: + * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: + * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: + * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: + * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: + * gst-libs/gst/gl/gstglwindow.c: + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: + * gst-libs/gst/gl/win32/gstglwindow_win32.c: + * gst-libs/gst/gl/win32/gstglwindow_win32.h: + * gst-libs/gst/gl/x11/gstglwindow_x11.c: + glwindow: pass display to implementation's _new() + So they have to opportunity to fail if they cannot handle the + display connection. + https://bugzilla.gnome.org/show_bug.cgi?id=752743 + +2015-07-24 16:11:38 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: + * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: + * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + * gst-libs/gst/gl/egl/gstglcontext_egl.h: + * gst-libs/gst/gl/gstglcontext.c: + * gst-libs/gst/gl/win32/gstglcontext_wgl.c: + * gst-libs/gst/gl/x11/gstglcontext_glx.c: + * gst-libs/gst/gl/x11/gstglcontext_glx.h: + glcontext: pass display to implentation's _new() + This allows the context to fail creation based on incompatible + display type's. e.g. glx context with an wayland display handle. + https://bugzilla.gnome.org/show_bug.cgi?id=752743 + +2015-07-06 00:52:06 +0100 Julien Isorce <julien.isorce@gmail.com> + + * configure.ac: + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + * gst-libs/gst/gl/gstglapi.h: + gl: support cgl, egl and glx within a same build + On osx, with the same build, + gst-launch-1.0 videotestsrc ! glimagesink works with: + GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=gles2 + GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=opengl + GST_GL_PLATFORM=glx GST_GL_WINDOW=x11 GST_GL_API=opengl + GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl + GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl3 + https://bugzilla.gnome.org/show_bug.cgi?id=752743 + +2015-07-27 16:36:40 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Check that caps contain desired caps features + Use 'contains' checks instead of equality checks on caps features + to allow for uploading when caps also contain GstVideoOverlayComposition + meta. + https://bugzilla.gnome.org/show_bug.cgi?id=752912 + +2015-07-25 09:03:27 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * sys/bluez/Makefile.am: + bluez: Add built sources to CLEANFILES + +2015-07-20 10:50:44 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dahdemux: avoid overflows in computation of segment start time and duration + Used gst_util_uint64_scale to avoid overflows when segment start time + or duration is computed. + https://bugzilla.gnome.org/show_bug.cgi?id=752620 + +2015-07-13 15:37:26 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/hls/m3u8.c: + hlsdemux: demote error to warning + It is not fatal and can be quite normal when the network is + too slow + +2015-07-24 09:42:53 +0200 Miguel París Díaz <mparisdiaz@gmail.com> + + * ext/srtp/gstsrtpenc.c: + srtpenc: do not check input buffers + With this we avoid an unnecessary and considerable overhead. + https://bugzilla.gnome.org/show_bug.cgi?id=752774 + +2015-07-06 00:45:45 +0100 Julien Isorce <julien.isorce@gmail.com> + + * gst-libs/gst/gl/gstglcontext.c: + gl: move GL_NUM_EXTENSIONS definition after gl.h + https://bugzilla.gnome.org/show_bug.cgi?id=752743 + +2015-07-23 23:59:22 +0100 Julien Isorce <julien.isorce@gmail.com> + + * ext/gl/caopengllayersink.m: + caopengllayersink: remove unused label context_creation_error + Build error introduced by commit + 5457e55f255518d679b59a170951e299ecd8c5f6 + https://bugzilla.gnome.org/show_bug.cgi?id=750310 + +2015-07-24 02:46:21 +1000 Jan Schmidt <jan@centricular.com> + + * gst/videoparsers/gsth264parse.c: + h264parse: Don't discard first AU delimiter + Don't throw away AU delimiter(s) that precede the SPS/PPS. Should + fix MPEG-TS playback on iOS/Quicktime when muxing streams that + already have AU delimiters. + See https://bugzilla.gnome.org/show_bug.cgi?id=736213 for getting + h264parse to insert AU delimiters when they don't already + exist. + +2015-07-23 11:18:47 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglimagesink.c: + glimagesink: fix allocation meta structure leak + gst_query_add_allocation_meta() does not take ownership + of the structure, for some reason. + CID 1312135 + +2015-07-23 10:57:26 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: fix memory leak + GstCapsFeatures need to be freed with gst_caps_features_free() after use. + CID #1312136, CID #1312136 + +2015-07-02 20:10:50 -0400 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Add GstControlBinding proxy + This is used to proxy GstControlBinding to the pad on the + parent object. This avoid having to sync the values in the proxy pad, + this is too early if you have a queue between the pad and the actual + aggregation operation. + https://bugzilla.gnome.org/show_bug.cgi?id=734060 + +2015-07-22 19:27:19 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst/audiomixer/gstaudioaggregator.c: + audioaggregator: Register function name + Otherwise, it sometimes segfaults with debugging enabled + +2015-07-22 19:26:42 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst/audiomixer/gstaudioaggregator.c: + audioaggregator: Use 1.0 style buffer allocation + +2015-07-22 16:58:12 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstgluploadelement.c: + glupload: Forward composition meta even without params + When the sink does not know the window size (e.g not created yet) + it will not add any param to the the composition meta. This is no + reason not to forward this meta API. Fixes issue where it could not + attach until we resize the window. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-22 15:56:34 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gloverlaycompositor: Keep memory pointer alive + Keep the composition memory pointer alive while it's being + wrapped inside a GstGLMemory object. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-22 14:17:42 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gloverlaycompositor: Pass buffer stride + The overlay pixel buffer stride was not given back + to the GL image. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-05-19 16:08:08 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/audiomixer/gstaudioaggregator.c: + * tests/check/Makefile.am: + * tests/check/elements/audiomixer.c: + audioaggregator: Sync pad values before aggregating + We need to sync the pad values before taking the aggregator and pad locks + otherwise the element will just deadlock if there's any property changes + scheduled using GstController since that involves taking the aggregator and pad + locks. + Also add a test for this. + https://bugzilla.gnome.org/show_bug.cgi?id=749574 + +2015-07-22 14:05:34 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/Makefile.am: + * gst-libs/gst/gl/gstgl_fwd.h: + * gst-libs/gst/gl/gstglcompositionoverlay.c: + * gst-libs/gst/gl/gstglcompositionoverlay.h: + * gst-libs/gst/gl/gstgloverlaycompositor.c: + * gst-libs/gst/gl/gstgloverlaycompositor.h: + gloverlaycompositor: Hide GstCompsitionOverlay object + This object is only used inside the compositor and does not + need to be expose in libgstgl API. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-22 13:33:12 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/Makefile.am: + libgstgl: Makefile style fix + +2015-07-21 23:48:25 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * ext/gl/gstglimagesink.c: + * gst-libs/gst/gl/gstglcompositionoverlay.c: + * gst-libs/gst/gl/gstglcompositionoverlay.h: + * gst-libs/gst/gl/gstgloverlaycompositor.c: + * gst-libs/gst/gl/gstgloverlaycompositor.h: + composition-overlay: Positions are relative to texture + The coordinate are relative to the texture dimension and not + the window dimension now. There is no need to pass the window + dimension or to update the overlay if the dimension changes. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-21 21:27:45 -0400 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * ext/gl/gstglimagesink.c: + * gst-libs/gst/gl/gstgloverlaycompositor.c: + * gst-libs/gst/gl/gstgloverlaycompositor.h: + gloverlaycompositor: Create own shader object + Make gloverlaycompositor independent of the shader used in the sink. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-21 18:47:56 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglimagesink.c: + glimagesink: Properly handle compsositor life time + Should be created in READY_TO_PAUSED, not PAUSED_TO_PLAYING. + Should be cleared in PAUSED_TO_READY. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-22 16:10:35 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/liveadder/liveadder.c: + liveadder: remove unneeded variable + ret is declared just to initialize to TRUE and overwrite with the value of + vret. We can return the value of vret directly. vret is TRUE unless the + forward_event_func sets it to FALSE. + +2015-07-22 15:13:48 +0200 Edward Hervey <edward@centricular.com> + + * ext/qt/Makefile.am: + qt: Don't dist files that might not exist + We only require moc building at build time. + +2015-07-22 15:50:26 +0900 Young Han Lee <y.lee@lge.com> + + * configure.ac: + configure: require libxml2 >= 2.8 for DASH plugin + The DASH plugin uses xmlBufferDetach now in the code + that handles ContentProtection elements. + https://bugzilla.gnome.org/show_bug.cgi?id=752703 + +2015-07-22 08:05:04 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/qt/Makefile.am: + qt: Tidy up makefile a bit more + Separate generated files, from disted files + +2015-07-21 20:52:23 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst/audiomixer/gstaudioaggregator.c: + audioaggregator: Read output buffer duration with lock held + +2015-07-21 11:23:21 +0100 Julien Isorce <j.isorce@samsung.com> + + * ext/gtk/gtkgstglwidget.c: + gstglwidget: use gst_gl_display_create_context + Also handle the failure case. + https://bugzilla.gnome.org/show_bug.cgi?id=750310 + +2015-07-21 11:28:08 +0100 Julien Isorce <j.isorce@samsung.com> + + * ext/gl/caopengllayersink.m: + caopengllayersink: use gst_gl_display_create_context + https://bugzilla.gnome.org/show_bug.cgi?id=750310 + +2015-07-21 11:21:27 +0100 Julien Isorce <j.isorce@samsung.com> + + * ext/gl/gstglstereosplit.c: + glstereosplit: use gst_gl_display_create_context + Also unlock the lock on error. + https://bugzilla.gnome.org/show_bug.cgi?id=750310 + +2015-07-21 14:10:57 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/liveadder/liveadder.c: + liveadder: return false if event couldn't be pushed + Make the gst pad's event function return false if the event couldn't be + pushed to the pad. + +2015-07-21 13:11:17 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gloverlaycompositor: for loop initial declarations are only allowed in C99 mode + Fixes compiler warnings + +2015-06-19 11:57:06 +0100 Julien Isorce <j.isorce@samsung.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstgltestsrc.c: + * gst-libs/gst/gl/gstglbasefilter.c: + gl: use gst_gl_display_create_context in more elements. + glbasefilter, glbasemixer and gltestsrc. + https://bugzilla.gnome.org/show_bug.cgi?id=750310 + +2015-07-21 17:34:27 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/Makefile.am: + gl/build: fix typo in _HEADERS resulting in installing the wrong file + /usr/include/gstreamer-1.0/gst/gl/gl.h:51:43: fatal error: + gst/gl/gstgloverlaycompositor.h: No such file or directory + +2015-07-21 15:39:35 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglcolorconvert.c: + glcolorconvert: add RGB to NV12/NV21 conversion + +2015-07-01 14:01:45 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * ext/gl/gstglimagesink.c: + glimagesink: Send reconfigure event when window size changes + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-07-20 14:24:22 -0400 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * ext/gl/gstglimagesink.c: + * ext/gl/gstgluploadelement.c: + glimagesinkbin: Add allocation query for GstVideoOverlayComposition + Adds an GST_VIDEO_OVERLAY_COMPOSITION_META_API_TYPE query to glupload + and glimagesink. Detects the query from the downstream elements, so + it is executed only when downstream supports the overlay API. + This makes pipelines with textoverlay ! glupload ! gldownload ! xvimagesink possible. + Uses allocation meta struct for passing the window size upstream. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-04-20 13:17:09 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * gst-libs/gst/gl/gstglcolorconvert.c: + glcolorconvert: Apply GstVideoOverlayCompositionMeta buffer to converted buffer + Since glcolorconvert creates a new GstBuffer, + without the GstVideoOverlayCompositionMeta data, + it needs to be copied to not be dropped. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-18 13:34:58 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Detect overlay meta buffers correctly + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-18 05:43:50 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * ext/gl/gstglcolorconvertelement.c: + * ext/gl/gstglimagesink.c: + * gst-libs/gst/gl/gstglcolorconvert.c: + * gst-libs/gst/gl/gstglcolorconvert.h: + * gst-libs/gst/gl/gstglupload.c: + glimagesinkbin: Add GstVideoOverlayCompositionMeta caps features + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-18 06:04:37 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * ext/gl/gstglimagesink.c: + * ext/gl/gstglimagesink.h: + glimagesink: Upload and draw overlays with GstGLOverlayCompositor + Receives the GstOverlayComposition buffer in the glimagesink and draws them. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-30 17:59:12 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * gst-libs/gst/gl/Makefile.am: + * gst-libs/gst/gl/gl.h: + * gst-libs/gst/gl/gstgl_fwd.h: + * gst-libs/gst/gl/gstgloverlaycompositor.c: + * gst-libs/gst/gl/gstgloverlaycompositor.h: + gloverlaycompositor: Add GstGLOverlayCompositor class + Manages the GstGLCompositionOverlay objects, + caches already uploaded overlays and draws them. + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-18 14:15:01 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * gst-libs/gst/gl/gstglcompositionoverlay.c: + glcompositionoverlay: Add compatibility for GL contexts without glGenVertexArrays + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-13 15:35:47 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * gst-libs/gst/gl/Makefile.am: + * gst-libs/gst/gl/gstgl_fwd.h: + * gst-libs/gst/gl/gstglcompositionoverlay.c: + * gst-libs/gst/gl/gstglcompositionoverlay.h: + glcompositionoverlay: Add class for managing GstVideoOverlayCompositionOverlay buffers + Add a class to store and manage the OpenGL texture, + vertex buffer and GstVideoOverlayRectangle. + Transforms overlay coordinate space to vertex buffer space with aspect ratios in mind. + = Example Pipelines = + Simple pipeline + gst-launch-1.0 videotestsrc ! \ + textoverlay text="Hello World" font-desc="sans bold 30" ! \ + glimagesink + Display 3 static overlays at different positions + gst-launch-1.0 videotestsrc ! \ + textoverlay text="text1" valignment="top" font-desc="sans bold 30" ! \ + textoverlay text="text2" halignment="right" font-desc="sans bold 30" ! \ + textoverlay text="text3" halignment="left" font-desc="sans bold 30" ! \ + glimagesink + Display subtitle file over testsrc + gst-launch-1.0 videotestsrc ! \ + textoverlay name=foo filesrc location=foo.srt ! subparse ! queue ! foo. foo. ! \ + glimagesink + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-06-18 11:33:29 +0200 Lubosz Sarnecki <lubosz.sarnecki@collabora.co.uk> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Move debug init to top of the file + https://bugzilla.gnome.org/show_bug.cgi?id=745107 + +2015-04-20 15:04:56 +0200 Carlos Rafael Giani <dv@pseudoterminal.org> + + * ext/opus/gstopusdec.c: + * ext/opus/gstopusdec.h: + opusdec: Fix PLC frame size calculations + Previously, PLC frames always had a length of 120ms, which caused audio + quality degradation and synchronization errors. Fix this by calculating an + appropriate length for the PLC frame. + The length must be a multiple of 2.5ms. Calculate a multiple of 2.5ms that + is nearest to the current PLC length. Any leftover PLC length that didn't + make it into this frame is accumulated for the next PLC frame. + https://bugzilla.gnome.org/show_bug.cgi?id=725167 + +2015-07-18 21:18:23 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + adaptivedemux: minor clean-up + No need for a foreach callback function that's just a few + lines of code and is only used once, just do the event + pushing inline. + https://bugzilla.gnome.org/show_bug.cgi?id=705991 + +2015-02-06 13:22:14 +0000 Alex Ashley <bugzilla@ashley-family.net> + + * ext/dash/gstdashdemux.c: + * ext/dash/gstmpdparser.c: + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: + dashdemux: add support for generating Protection events from ContentProtection elements + If a ContentProtection element is present in an AdaptationSet element, + send Protection events on the source pad, so that qtdemux can use this + information to correctly generate its source caps for DASH CENC + encrypted streams. + This allows qtdemux to support CENC encrypted DASH streams where the + content protection specific information is carried in the MPD file + rather than in pssh boxes in the initialisation segments. + This commit adds a new function to the adaptivedemux base class to allow + a GstEvent to be queued for a stream. The queue of events are sent the + next time a buffer is pushed for that stream. + https://bugzilla.gnome.org/show_bug.cgi?id=705991 + +2015-07-20 12:40:28 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/voaacenc/gstvoaacenc.c: + voaacenc: fix output caps for stream-format=ADTS + Should have framed=true in caps. Fixes voaacenc ! mpegtsmux. + +2015-07-20 12:38:28 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/mpegtsmux/mpegtsmux.c: + mpegtsmux: fix aac caps in pad template for raw aac + Raw aac doesn't need framed=true. + Fixes not-negotiated error with voaacenc ! mpegtsmux. + +2015-07-20 11:09:20 +0200 Thibault Saunier <tsaunier@gnome.org> + + * ext/gtk/gtkgstglwidget.c: + gtk: Log GDK GL error when failling creating GdkGLContext + +2015-07-20 18:19:02 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglmemory.c: + glmemory: check for pbo availability before attempting pbo download + https://bugzilla.gnome.org/show_bug.cgi?id=751165 + +2015-07-18 17:19:18 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gtk/gtkgstglwidget.c: + * ext/qt/qtitem.cc: + * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: + * gst-libs/gst/gl/gstglcontext.c: + * gst-libs/gst/gl/gstglcontext.h: + * tests/check/libs/gstglcontext.c: + glcontext: fix get_current_gl_api on x11/nvidia drivers + They require to get_proc_address some functions through the + platform specific {glX,egl}GetProcAddress rather than the default + GL library symbol lookup. + +2015-07-18 17:08:36 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + * gst-libs/gst/gl/egl/gstglcontext_egl.h: + * gst-libs/gst/gl/gstglcontext.c: + * gst-libs/gst/gl/gstglcontext.h: + * gst-libs/gst/gl/win32/gstglcontext_wgl.c: + * gst-libs/gst/gl/win32/gstglcontext_wgl.h: + * gst-libs/gst/gl/x11/gstglcontext_glx.c: + * gst-libs/gst/gl/x11/gstglcontext_glx.h: + glcontext: consolidate get_proc_address function definition + Pass the GstGLAPI directly. + +2015-07-17 17:47:37 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglcolorconvertelement.c: + glcolorconvertelement: propagate failure to convert buffer upstream + Rather than just silently continuing + +2015-07-17 13:48:00 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/x11/gstglcontext_glx.c: + glcontext/glx: try creating a context with the highest version + nvidia drivers return the exact version in glGstString (GL_VERSION) + we request on creation so start with the highest known version and + work our way down. + +2015-07-16 00:37:58 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglcontext.c: + * tests/check/libs/gstglcontext.c: + glcontext: track sharedness with a cookie + The previous approach of traversing the other_context weak ref tree was + 1. Less performant + 2. Incorrect for context destruction removing a link in the tree + Example of 2: + c1 = context_create (NULL) + c2 = context_create (c1) + c3 = context_create (c2) + context_can_share (c1, c3) == TRUE + context_destroy (c2) + unref (c2) + context_can_share (c1, c3) returns FALSE when it should be TRUE! + This does not remove the restriction that context sharedness can only + be tracked between GstGLContext's. + +2015-07-16 00:33:17 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglcontext.c: + glcontext: use the debug object variant for completeness + +2015-07-17 16:00:01 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstglwidget.c: + gtkgstglwidget: Cleanup unused private member + new_buffer has been moved to base class. Also cleanup + the properties comment, which are also all moved into + the base class. + +2015-07-17 15:57:37 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkbasesink.c: + gtksink: "widget" must be access from main thread + Document that "widget" property must be accessed from the + main thread (where GTK is running). This is the same for + state transition on these elements. It is very natural to + do so un GTK applications. + +2015-07-17 15:08:53 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstglwidget.c: + gtkglsink: Don't leak vertex array and buffers + This is now possible since reset is always called from the + main thread. + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-17 14:36:56 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstbasewidget.c: + * ext/gtk/gtkgstbasewidget.h: + gtkgstbasewidget: Fix black frame on resize + This is solved by only applying the new format when the next + buffer is to be rendered and on the GTK thread. + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-17 13:05:05 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkbasesink.c: + * ext/gtk/gtkgstbasewidget.c: + * ext/gtk/gtkgstbasewidget.h: + gtkgstbasewidget: Pass already parsed VideoInfo + As the base sink already parse the caps into VideoInfo it + makes sense to pass in VideoInfo to the widget instead. + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 16:49:32 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkglsink.c: + * ext/gtk/gstgtkglsink.h: + gtkglsink: Port to GstGtkBaseSink base class + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 16:00:37 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtksink.c: + * ext/gtk/gstgtksink.h: + gtksink: Port to GstGtkBaseSink + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 15:59:59 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/Makefile.am: + * ext/gtk/gstgtkbasesink.c: + * ext/gtk/gstgtkbasesink.h: + gtkbasesink: Create a base class + This contains all the common code between the gtkglsink and + gtksink. + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 14:30:42 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkglsink.c: + * ext/gtk/gstgtkglsink.h: + * ext/gtk/gtkgstglwidget.c: + * ext/gtk/gtkgstglwidget.h: + gtkglsink: Port to GtkGstBaseWidget + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 12:55:11 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtksink.c: + * ext/gtk/gstgtksink.h: + * ext/gtk/gtkgstwidget.c: + * ext/gtk/gtkgstwidget.h: + gtksink: Port to GtkGstBaseWidget + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 12:51:34 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/Makefile.am: + * ext/gtk/gtkgstbasewidget.c: + * ext/gtk/gtkgstbasewidget.h: + gtk: Add GtkGstBaseWidget + This is a "pseudo" base class. Basically it's a shared instance + and class structure and a shared set of function between the + two widget. It cannot have it's own type like normal base class + since the one instance will implement GtkGLArea while the other + implements GtkDrawingAreay. To workaround this, the parent instance + and class is a union of both. + https://bugzilla.gnome.org/show_bug.cgi?id=752441 + +2015-07-16 16:47:05 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstgluploadelement.c: + uploadelement: Protect against NULL pointer + I notice that if you stop the pipeline during a renegotiation + the upload may be NULL while an allocation query is being run. + In that scenario, returning FALSE to the allocation query is the + best thing. + +2015-07-15 17:35:22 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstglwidget.c: + gtkgstglwidget: Remove unused gl_caps + +2015-07-15 16:56:33 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtksink.c: + gtksink: Create a window if the widget is unparented + The same way as it's now done with the gtkglsink, create a top + level window if the widget is not parented. + https://bugzilla.gnome.org/show_bug.cgi?id=751104 + +2015-07-15 14:35:02 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtksink.c: + gtksink: Ensure the copy pasted code remains the same + Move back the default property at the same place they are in the + other sink. This helps when using a diff viewer to synchronized + this unfortunate copy paste. + https://bugzilla.gnome.org/show_bug.cgi?id=751104 + +2015-07-15 14:32:42 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkglsink.c: + * ext/gtk/gstgtkglsink.h: + * ext/gtk/gstgtksink.c: + * ext/gtk/gtkgstglwidget.c: + * ext/gtk/gtkgstwidget.c: + gtk: Fix race between queue_draw and destroy + In GTK dispose can be called before the last ref is reached. This + happens when you close the container window. The dispose will be + explicitly called, and destroyed notify will be fired. This patch + fixes this race by properly tracking the widget state. + In the sink, we now set the widget pointer to NULL, so the widget + will properly get created again if you set your pipeline to NULL + state after the widget was destroy, and set it back to PLAYING. + https://bugzilla.gnome.org/show_bug.cgi?id=751104 + +2015-07-16 21:28:28 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/dash/gstplugin.c: + dashdemux: remove typefinder, move it to typefindfunctions in -base + Otherwise this plugin will be loaded pretty much whenever + there's anything to typefind. And the code was pretty much + copy'n'paste from -base anyway. + +2015-07-15 13:02:54 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: default timescale is 1 + default timescale value should be 1, not 0. + https://bugzilla.gnome.org/show_bug.cgi?id=752414 + +2015-07-15 13:41:37 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: free prop_string only after it's no longer needed + https://bugzilla.gnome.org/show_bug.cgi?id=752419 + +2015-07-16 17:21:51 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-plugins-bad.doap: + Update mailing list address from sourceforge to freedesktop + +2015-07-15 11:47:51 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gtkgstwidget.c: + gtkgstwidget: Add missing break in get_property + +2015-07-15 11:44:30 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gtk/gstgtkglsink.h: + * ext/gtk/gstgtksink.h: + gtksinks: Remove undefined private structure + The classes contains a private structure which are not defined, + hence unused. + +2015-07-14 17:40:32 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: memcpy on raw data upload + Anything else requires keeping track of the GstVideoFrame mapping + across possible multiple buffers to ensure correct data pointer + usage. + +2015-07-14 17:39:59 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglbasebuffer.c: + glbasebuffer: add some debug and zero the data pointers on init + +2015-07-10 01:00:15 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/mpegtsmux/mpegtsmux.c: + mpegtsmux: don't wait for data on sparse inputs like metadata or subtitle streams + +2014-11-09 19:16:29 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/mpegtsmux/mpegtsmux.c: + * gst/mpegtsmux/tsmux/tsmuxstream.c: + * gst/mpegtsmux/tsmux/tsmuxstream.h: + mpegtsmux: add basic support for asynchronous KLV metadata streams + This is defined in SMPTE Rp 217. In this case the + metadata PES packets carry no timestamps of their + own and no Metadata Access Unit Wrappers are used. + +2015-06-29 02:42:06 +0300 Ilya Konstantinov <ilya.konstantinov@gmail.com> + + * sys/applemedia/vtdec.c: + vtdec: handle non-consecutive GstBuffer input without copying + CMBlockBuffer offers a model similar to GstBuffer, as it can + consist of multiple non-consecutive memory blocks. + Prior to this change, what we were doing was: + 1) Incorrect: + CMBlockBufferCreateWithMemoryBlock does not copy the data, + but we gst_buffer_unmap'd right away. + 2) Inefficient: + If the GstBuffer consisted of non-contiguous memory blocks, + gst_buffer_map resulted in malloc / memcpy. + With this change, we construct a CMBlockBuffer out of individual mapped + GstMemory objects. CMBlockBuffer is made to retain the GstMemory + objects (through the use of CMBlockBufferCustomBlockSource), so the + original GstBuffer can be unref'd. + https://bugzilla.gnome.org/show_bug.cgi?id=751241 + +2015-07-13 23:22:00 +1000 Matthew Waters <matthew@centricular.com> + + * sys/applemedia/avsamplevideosink.m: + applemedia/avsample: fix unconditional use of OSX 10.10 API + We can just not use the error/status properties + https://bugzilla.gnome.org/show_bug.cgi?id=746631 + +2015-07-10 19:05:41 +0100 Tim-Philipp Müller <tim@centricular.com> + + * configure.ac: + configure: try harder to find the right Qt5 build tools + First check for Qt build tools in the host_bins directory + from the Qt5Core pkg-config file. This fixes the situation + where both Qt4 and Qt5 are installed but the global moc/uic/etc. + are the Qt4 version, which would result in build failures. + +2015-07-10 14:01:43 +0200 Edward Hervey <edward@centricular.com> + + * configure.ac: + * ext/qt/qtitem.cc: + configure/qt: Fix build without Qt5X11Extras + +2015-07-10 13:26:51 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + mpdparse: g_slice_new() can't return NULL + It will abort() if allocation fails. + +2015-07-10 13:19:40 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + mpdparser: Don't allow network access when reading the XML data + +2015-07-10 19:22:08 +1000 Matthew Waters <matthew@centricular.com> + + * configure.ac: + qt: don't error out if Qt X11 could not be found + PCK_CHECK_MODULES default error-if-not-found implementation errors + so override it with a simple notice that we couldn't find the library. + +2015-07-06 23:10:51 +1000 Matthew Waters <matthew@centricular.com> + + * configure.ac: + * ext/Makefile.am: + * ext/qt/.gitignore: + * ext/qt/Makefile.am: + * ext/qt/gstplugin.cc: + * ext/qt/gstqsgtexture.cc: + * ext/qt/gstqsgtexture.h: + * ext/qt/gstqtsink.cc: + * ext/qt/gstqtsink.h: + * ext/qt/qtitem.cc: + * ext/qt/qtitem.h: + * tests/examples/qt/qml/.gitignore: + * tests/examples/qt/qml/main.cpp: + * tests/examples/qt/qml/main.qml: + * tests/examples/qt/qml/play.pro: + * tests/examples/qt/qml/qml.qrc: + new qt5 qml GL video sink + Very much in the same spirit as the Gtk GL sink + Two things are provided + 1. A QQuickItem subclass that renders out RGBA filled GstGLMemory + buffers that is instantiated from qml. + 2. A sink element that will push buffers into (1) + To use + 1. Declare the GstGLVideoItem in qml with an appropriate + objectName property set. + 2. Get the aforementioned GstGLVideoItem from qml using something like + QQmlApplicationEngine engine; + engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); + QObject *rootObject = engine.rootObjects().first(); + QQuickItem *videoItem = rootObject->findChild<QQuickItem *> ("videoItem"); + 3. Set the videoItem on the sink + https://bugzilla.gnome.org/show_bug.cgi?id=752185 + +2015-07-08 17:17:18 +0200 Rico Tzschichholz <ricotz@ubuntu.com> + + * sys/bluez/Makefile.am: + bluez: Fix make dist while bluez >= 5 is not available + +2015-07-09 18:31:34 +0200 Edward Hervey <edward@centricular.com> + + * gst/mpegtsdemux/mpegtsbase.c: + mpegtsbase: Fix previous commit + We only want to do a hard reset of the observations if we're working + with TIME segments in push mode. For BYTE segment we want to keep + the observations (in order to do seeks in push-mode). + +2015-07-09 16:59:16 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/mpegtsdemux/mpegtsbase.c: + mpegtsbase: Flush more on DISCONT buffers in push mode + When in push mode, we want to discard all previous observations from the + mpegtspacketizer when we get a DISCONT buffer. + This avoids trying to calculate bogus timestamps (estimating them using old + PCR observations). + We only do a hard reset in push-mode. In pull-mode we still need the observations + (in order to seek properly) + +2015-07-09 11:07:29 +0200 Edward Hervey <bilboed@bilboed.com> + + * .gitignore: + gitignore: Add new generated files + +2015-07-09 11:05:10 +0200 Edward Hervey <bilboed@bilboed.com> + + * sys/bluez/Makefile.am: + bluez: Include new file in dist'ed files + Fixes make distcheck and tarball generation + +2015-07-09 13:03:23 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gtk/gtkgstglwidget.c: + * ext/gtk/gtkgstwidget.c: + * tests/check/Makefile.am: + gtk: add to the generic/states test + +2015-06-17 09:36:57 -0400 Xavier Claessens <xavier.claessens@collabora.com> + + * ext/gtk/gstgtkglsink.c: + GstGtkGLSink: Ensure widget has a toplevel parent + Checking for a parent is not enough, it must have a toplevel one. + If widget has no toplevel parent then add it in a GtkWindow, that + make it usable from gst-launch-1.0. + https://bugzilla.gnome.org/show_bug.cgi?id=751104 + +2015-06-17 09:36:40 -0400 Xavier Claessens <xavier.claessens@collabora.com> + + * ext/gtk/gstgtkglsink.c: + * ext/gtk/gstgtkglsink.h: + GstGtkGLSink: Post error if widget gets destroyed + https://bugzilla.gnome.org/show_bug.cgi?id=751104 + +2015-06-16 16:21:26 -0400 Xavier Claessens <xavier.claessens@collabora.com> + + * ext/gtk/gstgtkglsink.c: + GstGtkGLSink: fix possible warning in finalize + If the element is finalized before going in READY state + the widget could still be NULL. + https://bugzilla.gnome.org/show_bug.cgi?id=751104 + +2015-07-08 23:14:13 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + * tests/check/elements/dash_mpd.c: + mpdparser: Fix some memory leaks in the MPD parser and unit test + +2015-07-07 16:59:52 +0100 Florin Apostol <florin.apostol@oregan.net> + + * tests/check/elements/dash_mpd.c: + dashdemux: tests: added unit tests to test all functions + Added unit tests for all functions. Code coverage: + Overall coverage rate: + lines......: 83.8% (1941 of 2316 lines) + functions..: 100.0% (141 of 141 functions) + +2015-07-08 17:08:56 +0300 Roman Donchenko <roman.donchenko@itseez.com> + + * gst/videoparsers/gstpngparse.c: + pngparse: fix a GstCaps object leak + https://bugzilla.gnome.org//show_bug.cgi?id=752127 + +2015-03-26 11:34:10 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/mpegtsdemux/pesparse.c: + tsdemux: remove unnecessary check + This is not public API, use g_assert() instead of + g_return_if_fail(), so that it's compiled out in + releases. It's only called from our code, with &foo. + +2014-06-30 13:20:12 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/mpegtsdemux/gstmpegdesc.h: + * gst/mpegtsdemux/tsdemux.c: + tsdemux: add support for KLV metadata streams + There's no timestamps for these streams though, we + might want to make some up based on the last/next + video PTS or so. + +2015-07-08 16:31:48 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + Revert "Revert "dashdemux: fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS"" + This reverts commit 4875ddf5855a26f349df7b385b68eb692e314bfa. + This was based on a misunderstanding of the code. + https://bugzilla.gnome.org/show_bug.cgi?id=752085 + +2015-07-06 13:28:05 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: + gl/eagl: Don't call anything synchronously from the main thread + This will deadlock if the main thread is the one who creates the GstGLContext. + All things we call from the main thread should be possible from any thread. + https://bugzilla.gnome.org/show_bug.cgi?id=751101 + +2015-07-08 12:16:35 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * sys/bluez/gstavdtpsrc.c: + bluez: remove unnecessary goto + All goto fail happen before ret is set. ret must be NULL, and the only + thing the fail statement block does is return NULL. Replacing the jumps to + do this return directly. + CID #1311329 + +2015-07-08 11:32:58 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/dash/gstdashdemux.c: + dashdemux: remove redundant else statement + Else statement is redundant when the if block finishes with an return. + +2015-07-08 11:42:48 +0300 Sebastian Dröge <sebastian@centricular.com> + + * sys/androidmedia/gstamc-constants.h: + * sys/androidmedia/gstamc.c: + * sys/androidmedia/gstamc.h: + * sys/androidmedia/gstamcvideodec.c: + * sys/androidmedia/gstamcvideoenc.c: + androidmedia: Add support for H265/HEVC + +2015-06-29 12:40:55 +0300 Ilya Konstantinov <ilya.konstantinov@gmail.com> + + * sys/applemedia/vtdec.c: + vtdec: fix refcount error in error handling + https://bugzilla.gnome.org/show_bug.cgi?id=751641 + +2015-07-07 19:48:23 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + adaptivedemux: Explicitly check for CUSTOM_ERROR when converting errors to EOS + We use things like CUSTOM_SUCCESS* in other places, and those are not errors + but should just be handled like OK. + +2015-07-07 19:26:00 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + Revert "dashdemux: fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS" + This reverts commit dfe37ffc59fdf5f4075696976d98ec8d6db73138. + https://bugzilla.gnome.org/show_bug.cgi?id=752085 + +2015-07-07 19:25:28 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + mpdparser: Fix off-by-one in has-next-segment calculation + +2015-07-07 18:37:24 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + adaptivedemux: If downloading the last fragment fails, consider this as EOS and not ERROR + Sometimes the last fragment does not exist because of rounding errors with the + durations. Just finish the stream gracefully instead of erroring out instead. + +2015-07-07 22:35:47 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstgldownloadelement.c: + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + download: only start a download transfer for sysmem caps features + +2015-07-06 12:08:52 +0100 Florin Apostol <florin.apostol@oregan.net> + + * tests/check/elements/dash_mpd.c: + dashdemux: tests: added indentation in xml strings to improve readability + https://bugzilla.gnome.org/show_bug.cgi?id=752027 + +2015-07-03 16:17:58 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: added parsing of bitstreamSwitching@AdaptationSet + https://bugzilla.gnome.org/show_bug.cgi?id=751170 + +2015-07-03 15:31:35 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.h: + dashdemux: regrouped functions in gstmpdparser.h file + Moved gst_mpd_client_get_next_segment_availability_end_time and + gst_mpd_client_add_time_difference functions to be grouped with + functions from the same category. + https://bugzilla.gnome.org/show_bug.cgi?id=752027 + +2015-07-06 14:21:17 +0100 Florin Apostol <florin.apostol@oregan.net> + + * tests/check/elements/dash_mpd.c: + dashdemux: tests: corrected code layout + deleted the empty line between gst_mpd_parse call and its check so that + the assert is next to the function it is testing + https://bugzilla.gnome.org/show_bug.cgi?id=752027 + +2015-07-07 10:56:47 +0900 Hyunjun Ko <zzoon.ko@samsung.com> + + * gst-libs/gst/codecparsers/gstmpegvideometa.c: + mpegvideometa: add meta transform function + https://bugzilla.gnome.org/show_bug.cgi?id=751778 + +2015-07-07 10:57:26 +0900 Hyunjun Ko <zzoon.ko@samsung.com> + + * gst-libs/gst/gl/gstglsyncmeta.c: + glsyncmeta: transform func: return FALSE if not supported or failed + https://bugzilla.gnome.org/show_bug.cgi?id=751778 + +2015-07-06 14:14:12 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS + Fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS if the + new index is out of range. + https://bugzilla.gnome.org/show_bug.cgi?id=751850 + +2015-07-07 16:39:09 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/android/gstglwindow_android_egl.h: + android: add missing egl.h include + +2015-07-07 15:30:17 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstgltransformation.c: + gltransformation: correct vao usage + keep the vao bound after uploading the new vertex data + fixes a mesa GL error "no vertex array object bound" on caps changes + +2015-06-16 07:49:34 +0000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstopengl.c: + * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: + * gst-libs/gst/gl/egl/Makefile.am: + * gst-libs/gst/gl/egl/gstegl.h: + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + * gst-libs/gst/gl/egl/gstglcontext_egl.h: + * gst-libs/gst/gl/egl/gstgldisplay_egl.h: + * gst-libs/gst/gl/gstglapi.h: + gl: consolidate egl header includes to egl-only headers + They may conflict with other headers. + +2015-07-06 19:33:35 +0200 Thibault Saunier <tsaunier@gnome.org> + + * ext/gtk/gtkgstglwidget.c: + gtkglsink: Release the widget lock when trying to get the GL context + Otherwise we might be waiting for the lock on the main loop (for + example in the ->render vmethod) and thus we will deadlock. + +2015-07-06 18:51:07 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Remove pixel-aspect-ratio field from the caps returned by getcaps + Avoiding not negotiated error while negotiating as we anyway force 1/1 + as output + +2015-07-06 15:24:06 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/curl/gstcurlsshsink.c: + curlsshsink: remove redundant else statement + Else statement is redundant when the if block finishes with an return. + +2015-07-02 15:17:51 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: fixed segment start when specified by SegmentTimeline + @t attribute in segment Timeline is relative to the period start. + Corrected the code to take this into account when computing segment + timestamp. + https://bugzilla.gnome.org/show_bug.cgi?id=751841 + +2015-07-03 17:00:31 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: wrong segment duration computed by gst_mpd_client_setup_representation + Corrected computation of segment start and duration. + https://bugzilla.gnome.org/show_bug.cgi?id=751914 + +2015-07-03 16:10:20 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: corrected search for audio languages + Corrected the initialisation of mimeType in + gst_mpdparser_get_list_and_nb_of_audio_language: the variable is used + in a loop, so it must be set to NULL at the beginning of each iteration. + https://bugzilla.gnome.org/show_bug.cgi?id=751911 + +2015-07-03 21:58:26 +0200 Stefan Sauer <ensonic@users.sf.net> + + * common: + Automatic update of common submodule + From f74b2df to 9aed1d7 + +2015-07-03 12:17:42 -0400 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglmixerbin.c: + * ext/gl/gstglvideomixer.c: + glvideomixer, glmixer: Add description and klass + +2015-07-03 19:24:58 +0530 Arun Raghavan <git@arunraghavan.net> + + * configure.ac: + build: Fix broken BlueZ configure check + The previous commit left an extra set of brackets, and missed removing + the explicit dbus check (which is no longer needed since we're using + gdbus). + +2015-01-13 10:31:41 -0800 Nick Stoughton <nstoughton@aether.com> + + * configure.ac: + build: remove support for bluez4 + +2014-12-30 07:21:44 -0800 Nick Stoughton <nstoughton@aether.com> + + * configure.ac: + * sys/bluez/Makefile.am: + * sys/bluez/gstavdtpsink.c: + * sys/bluez/gstavdtpsrc.c: + * sys/bluez/gstavdtputil.c: + * sys/bluez/gstavdtputil.h: + * sys/bluez/org.bluez.xml: + bluez: refactor to use glib and add connection state tracking + +2015-06-15 23:40:44 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/pcapparse/gstpcapparse.c: + pcapparse: fix another regression + Introduced by c4c9fe60b pcapparse: Take buffer directly from the adapter + Using gst_adapter_take_buffer_fast() can lead to buffers that are + made up of multiple memories with the first memory smaller than the + RTP header size, which violates assumptions GstRtpBaseDepayloader + makes, namely that the complete RTP header will be in the first + memory. This leads to such packets being dropped when feeding + them from pcapparse to RTP depayloaders. Use take_buffer() so + we get buffers with a single memory. + +2015-07-02 13:45:04 +0200 Stian Selnes <stian@pexip.com> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/pcapparse.c: + tests: pcapparse: add unit test for frames with eth padding + https://bugzilla.gnome.org/show_bug.cgi?id=751879 + +2015-06-15 12:55:39 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/pcapparse/gstpcapparse.c: + pcapparse: fix regression when handling packets with eth padding + Introduced by c4c9fe60b pcapparse: Take buffer directly from the adapter + Flush any trailing bytes after the payload from the adapter as well, + otherwise we'll read a bogus packet size from the adapter next and + then everything goes downhill from there. + https://bugzilla.gnome.org/show_bug.cgi?id=751879 + +2015-07-02 18:51:09 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/openh264/gstopenh264dec.cpp: + openh264dec: Unref video frames and codec state in all cases + +2015-07-02 10:26:18 +0100 Julien Isorce <j.isorce@samsung.com> + + * gst-libs/gst/gl/gstglcolorconvert.c: + * gst-libs/gst/gl/gstglcontext.c: + * gst-libs/gst/gl/gstglframebuffer.c: + * gst-libs/gst/gl/gstglshader.c: + * gst-libs/gst/gl/gstglviewconvert.c: + gl: initialize output params to 0 before calling gl functions + The client side API of the Chromium's GPU Process has asserts + in debug mode that check that output params are initialized to 0. + +2015-06-26 15:34:35 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglmixer.c: + * gst-libs/gst/gl/gstglupload.c: + gl: Don't leak pool if set_config failed + +2015-06-26 15:33:33 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglfilter.c: + * gst-libs/gst/gl/gstglfilter.h: + glfilter: Don't cache buffer pool + Caching and sharing to multiple element the same pool prevents + renegotiation from passthrough to not passthrough. + +2015-07-02 14:15:05 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/openh264/gstopenh264dec.cpp: + openh264dec: Uninitializing the decoder can't fail and will always return 0 == cmResultSuccess + ... but when we cast cmResultSuccess to a gboolean it will be FALSE, and make + GstVideoDecoder::stop() fail for no reason. + +2015-07-02 17:08:26 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * ext/gl/gstglimagesink.c: + glimagesink: use g_clear_error instead of g_error_free + replace g_error_free with g_clear_error, as it internally + checks if error variable is valid or not. + https://bugzilla.gnome.org/show_bug.cgi?id=751823 + +2015-07-02 16:27:06 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * sys/androidmedia/gstamc.c: + amc: fix check whether we managed to acquire a buffer + https://bugzilla.gnome.org/show_bug.cgi?id=751821 + +2015-06-30 15:52:18 +0200 Miguel París Díaz <mparisdiaz@gmail.com> + + * ext/srtp/gstsrtpdec.c: + * ext/srtp/gstsrtpdec.h: + srtpdec: Add config for the replay window size + https://bugzilla.gnome.org/show_bug.cgi?id=751729 + +2015-06-30 13:20:43 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: corrected parsing of %u in segment templates + https://bugzilla.gnome.org/show_bug.cgi?id=751716 + +2015-06-29 22:18:38 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + * tests/check/elements/dash_mpd.c: + dashdemux: corrected recognition of $$$ in segment templates + fixed recognition of $$ after a $ that ends an identifier, eg $Time$$$ + https://bugzilla.gnome.org/show_bug.cgi?id=751682 + +2015-06-29 18:50:09 +0200 Sebastian Dröge <sebastian@centricular.com> + + * sys/androidmedia/gstjniutils.c: + androidmedia: Call initialize_classes() also when we got the Java VM from the app + https://bugzilla.gnome.org/show_bug.cgi?id=751664 + +2015-06-29 16:10:39 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * ext/gl/gstglviewconvert.c: + gl: add missing break + gst_gl_view_convert_element_set_property() is missing a break at the end + of the PROP_OUTPUT_DOWNMIX_MODE case. Adding it. + CID #1308949 + +2015-06-26 14:12:22 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglimagesink.c: + glimagesink: Don't leak pool + gst_query_add_allocation_pool is transfer none. Also unref + if there was a configuration error. + +2015-06-26 15:58:25 +0900 Sangkyu Park <sk1122.park@samsung.com> + + * gst/mpegdemux/gstmpegdemux.c: + mpegdemux: check pointer before dereferencing + gst_ps_demux_get_stream() could return NULL when it is unknown stream, + check this hasn't happened before dereferencing the returned pointer. + https://bugzilla.gnome.org/show_bug.cgi?id=751528 + +2015-06-26 13:09:54 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: corrected next fragment duration validation + Before returning the next fragment duration value, the + gst_mpd_client_get_next_fragment_duration function tries to validate it. + But the condition was incorrect. + https://bugzilla.gnome.org/show_bug.cgi?id=751539 + +2015-06-25 23:49:10 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + adaptivedemux: Move unref() into the right scope + +2015-06-25 23:32:10 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: + adaptivedemux: Properly handle presentationTimeOffset for seeking and multi-period streams + Segment start/time/position/base should only be modified if this is the first + time we send a segment, otherwise we will override values from the seek + segment if new streams have to be exposed as part of the seek. + Segment base should be calculated from the segment start based on the stream's + own segment, not the demuxer's segment. Both might differ slightly because of + the presentationTimeOffset. + Always add the presentationTimeOffset (relative to the period start, not + timestamp 0) to the segment start after resetting the stream's segment based + on the demuxer's segment (i.e. after seeks or stream restart). Also make sure + to keep the stream's segment up to date and not just send a new segment event + without storing the segment in the stream. + https://bugzilla.gnome.org/show_bug.cgi?id=745455 + +2015-06-25 23:24:50 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + dashdemux: Subtract the period start time from the presentation offset + We're interested in the offset between the period start timestamp and the + actual media timestamp so that we can properly correct for it. The absolute + presentation offset to timestamp 0 is useless as the only thing we really + care about is the offset between the current fragment timestamp and the + media timestamp. + +2015-06-25 20:19:34 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + dashdemux: Subtract the period start when seeking based on a template + Otherwise we will look for segments after the period usually. The seek + timestamp is relative to the start of the first period and we have to + select a segment relative to the current period's start. + +2015-06-25 20:09:14 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstmpdparser.c: + dashdemux: Include the period start in the fragment timestamps in all cases + We didn't do this for fragments that are generated on demand from a template, + only for the other cases when they were all generated upfront. This caused + fragment timestamps to start from 0 again for each new period. + +2015-06-25 23:23:58 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/dash/gstdashdemux.c: + dashdemux: Seek on the new streams if the seek caused a period switch + Seeking on the old streams is pointless, they are going to be freed on the + next opportunity. + +2015-06-25 15:05:20 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dash: Correct check for valid timeShiftBufferDepth + If not set, the timeShiftBufferDepth has a default value of -1. + The standard says that this should be interpreted as infinite. + The gst_mpd_client_check_time_position function incorrectly compares + timeShiftBufferDepth with 0 instead of -1 to determine if it was set. + https://bugzilla.gnome.org/show_bug.cgi?id=751500 + +2015-06-25 11:02:41 +0100 Luis de Bethencourt <luisbg@osg.samsung.com> + + * ext/opencv/gstfacedetect.c: + * sys/applemedia/iosassetsrc.m: + docs: decodebin2 -> decodebin + +2015-04-27 15:09:18 +0300 Ilya Konstantinov <ilya.konstantinov@gmail.com> + + * sys/applemedia/coremediabuffer.c: + applemedia: enable sharing of CMBlockBuffer data + Instead of wrapping with GST_MEMORY_FLAG_NO_SHARE, we make the GstMemory + object retain the underlying CMBlockBuffer. + https://bugzilla.gnome.org/show_bug.cgi?id=751072 + +2015-04-27 15:02:59 +0300 Ilya Konstantinov <ilya.konstantinov@gmail.com> + + * sys/applemedia/coremediabuffer.c: + applemedia: CMBlockBuffer can be non-contiguous + CMBlockBufferGetDataLength would return the entire data length, while + size of individual blocks can be smaller. Iterate over the block buffer + and add the individual (possibly non-contiguous) memory blocks. + https://bugzilla.gnome.org/show_bug.cgi?id=751071 + +2015-06-24 17:16:46 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: Corrected duration argument for gst_mpd_client_add_media_segment call + The last parameter of gst_mpd_client_add_media_segment function is a + duration. But when called from gst_mpd_client_setup_representation, the + last argument was wrongly set to PeriodEnd + https://bugzilla.gnome.org/show_bug.cgi?id=751449 + +2015-06-24 21:42:32 +0100 Florin Apostol <florin.apostol@oregan.net> + + * ext/dash/gstmpdparser.c: + dashdemux: incorrect use of period start + The period start information, calculated in gst_mpd_client_setup_media_presentation + function is stored in stream_period->start. The information read from + xml file and stored in stream_period->period->start is not changed. + If the xml file does not contain the period start information, + stream_period->period->start will be -1. + The function gst_mpd_client_get_next_segment_availability_end_time wants to + use period start time, but incorrectly uses stream_period->period->start + (value from xml file, which could be -1) instead of stream_period->start + (computed value) + https://bugzilla.gnome.org/show_bug.cgi?id=751465 + +2015-06-15 17:18:41 +0100 Florin Apostol <florin.apostol@oregan.net> + + * tests/check/elements/dash_mpd.c: + tests: dashdemux: renamed functions + Renamed 2 testcase functions: + - dash_mpdparser_program_information + - dash_mpdparser_base_URL + +2015-06-25 00:04:32 +0200 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + Back to development + === release 1.5.2 === -2015-06-24 Sebastian Dröge <slomo@coaxion.net> +2015-06-24 23:37:26 +0200 Sebastian Dröge <sebastian@centricular.com> + * ChangeLog: + * NEWS: + * RELEASE: * configure.ac: - releasing 1.5.2 + * docs/plugins/gst-plugins-bad-plugins.args: + * docs/plugins/gst-plugins-bad-plugins.hierarchy: + * docs/plugins/gst-plugins-bad-plugins.interfaces: + * docs/plugins/gst-plugins-bad-plugins.prerequisites: + * docs/plugins/gst-plugins-bad-plugins.signals: + * docs/plugins/inspect/plugin-accurip.xml: + * docs/plugins/inspect/plugin-adpcmdec.xml: + * docs/plugins/inspect/plugin-adpcmenc.xml: + * docs/plugins/inspect/plugin-aiff.xml: + * docs/plugins/inspect/plugin-asfmux.xml: + * docs/plugins/inspect/plugin-assrender.xml: + * docs/plugins/inspect/plugin-audiomixer.xml: + * docs/plugins/inspect/plugin-audiovisualizers.xml: + * docs/plugins/inspect/plugin-autoconvert.xml: + * docs/plugins/inspect/plugin-bayer.xml: + * docs/plugins/inspect/plugin-bz2.xml: + * docs/plugins/inspect/plugin-camerabin.xml: + * docs/plugins/inspect/plugin-chromaprint.xml: + * docs/plugins/inspect/plugin-coloreffects.xml: + * docs/plugins/inspect/plugin-curl.xml: + * docs/plugins/inspect/plugin-dataurisrc.xml: + * docs/plugins/inspect/plugin-debugutilsbad.xml: + * docs/plugins/inspect/plugin-dtsdec.xml: + * docs/plugins/inspect/plugin-dvb.xml: + * docs/plugins/inspect/plugin-dvbsuboverlay.xml: + * docs/plugins/inspect/plugin-dvdspu.xml: + * docs/plugins/inspect/plugin-faad.xml: + * docs/plugins/inspect/plugin-festival.xml: + * docs/plugins/inspect/plugin-fieldanalysis.xml: + * docs/plugins/inspect/plugin-flite.xml: + * docs/plugins/inspect/plugin-fragmented.xml: + * docs/plugins/inspect/plugin-frei0r.xml: + * docs/plugins/inspect/plugin-gaudieffects.xml: + * docs/plugins/inspect/plugin-gdp.xml: + * docs/plugins/inspect/plugin-geometrictransform.xml: + * docs/plugins/inspect/plugin-gmedec.xml: + * docs/plugins/inspect/plugin-gsm.xml: + * docs/plugins/inspect/plugin-gstsiren.xml: + * docs/plugins/inspect/plugin-id3tag.xml: + * docs/plugins/inspect/plugin-inter.xml: + * docs/plugins/inspect/plugin-interlace.xml: + * docs/plugins/inspect/plugin-jpegformat.xml: + * docs/plugins/inspect/plugin-liveadder.xml: + * docs/plugins/inspect/plugin-mimic.xml: + * docs/plugins/inspect/plugin-mms.xml: + * docs/plugins/inspect/plugin-modplug.xml: + * docs/plugins/inspect/plugin-mpeg2enc.xml: + * docs/plugins/inspect/plugin-mpegpsdemux.xml: + * docs/plugins/inspect/plugin-mpegpsmux.xml: + * docs/plugins/inspect/plugin-mpegtsdemux.xml: + * docs/plugins/inspect/plugin-mpegtsmux.xml: + * docs/plugins/inspect/plugin-mpg123.xml: + * docs/plugins/inspect/plugin-mplex.xml: + * docs/plugins/inspect/plugin-ofa.xml: + * docs/plugins/inspect/plugin-openal.xml: + * docs/plugins/inspect/plugin-opencv.xml: + * docs/plugins/inspect/plugin-opus.xml: + * docs/plugins/inspect/plugin-pcapparse.xml: + * docs/plugins/inspect/plugin-pnm.xml: + * docs/plugins/inspect/plugin-rawparse.xml: + * docs/plugins/inspect/plugin-removesilence.xml: + * docs/plugins/inspect/plugin-resindvd.xml: + * docs/plugins/inspect/plugin-rfbsrc.xml: + * docs/plugins/inspect/plugin-rtmp.xml: + * docs/plugins/inspect/plugin-schro.xml: + * docs/plugins/inspect/plugin-sdp.xml: + * docs/plugins/inspect/plugin-segmentclip.xml: + * docs/plugins/inspect/plugin-shm.xml: + * docs/plugins/inspect/plugin-smooth.xml: + * docs/plugins/inspect/plugin-soundtouch.xml: + * docs/plugins/inspect/plugin-spandsp.xml: + * docs/plugins/inspect/plugin-speed.xml: + * docs/plugins/inspect/plugin-subenc.xml: + * docs/plugins/inspect/plugin-videoparsersbad.xml: + * docs/plugins/inspect/plugin-voaacenc.xml: + * docs/plugins/inspect/plugin-voamrwbenc.xml: + * docs/plugins/inspect/plugin-waylandsink.xml: + * docs/plugins/inspect/plugin-y4mdec.xml: + * docs/plugins/inspect/plugin-zbar.xml: + * gst-plugins-bad.doap: + * win32/common/config.h: + Release 1.5.2 + +2015-06-24 23:01:24 +0200 Sebastian Dröge <sebastian@centricular.com> + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/ky.po: + * po/lt.po: + * po/lv.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + Update .po files 2015-06-15 17:30:26 +0100 Florin Apostol <florin.apostol@oregan.net> |