diff options
author | Tim-Philipp Müller <tim@centricular.com> | 2019-01-17 01:50:25 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2019-01-17 01:50:30 +0000 |
commit | f65a05b27f9b2d9258a1f51e5b54f3b1902f061f (patch) | |
tree | 2103c1c5215132dce055ca3c13d543276ce73fe9 /ChangeLog | |
parent | 6fea5810927624ef70351950b279a691242856cd (diff) |
Release 1.15.1gst-plugins-base-1.15.1
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 7585 |
1 files changed, 7585 insertions, 0 deletions
@@ -1,3 +1,5005 @@ +=== release 1.15.1 === + +2019-01-17 01:50:25 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-plugins-base.doap: + * meson.build: + Release 1.15.1 + +2019-01-17 01:50:25 +0000 Tim-Philipp Müller <tim@centricular.com> + + * docs/plugins/gst-plugins-base-plugins.args: + * docs/plugins/gst-plugins-base-plugins.hierarchy: + * docs/plugins/gst-plugins-base-plugins.interfaces: + * docs/plugins/gst-plugins-base-plugins.signals: + * docs/plugins/inspect/plugin-adder.xml: + * docs/plugins/inspect/plugin-alsa.xml: + * docs/plugins/inspect/plugin-app.xml: + * docs/plugins/inspect/plugin-audioconvert.xml: + * docs/plugins/inspect/plugin-audiomixer.xml: + * docs/plugins/inspect/plugin-audiorate.xml: + * docs/plugins/inspect/plugin-audioresample.xml: + * docs/plugins/inspect/plugin-audiotestsrc.xml: + * docs/plugins/inspect/plugin-cdparanoia.xml: + * docs/plugins/inspect/plugin-compositor.xml: + * docs/plugins/inspect/plugin-encoding.xml: + * docs/plugins/inspect/plugin-gio.xml: + * docs/plugins/inspect/plugin-libvisual.xml: + * docs/plugins/inspect/plugin-ogg.xml: + * docs/plugins/inspect/plugin-opengl.xml: + * docs/plugins/inspect/plugin-opus.xml: + * docs/plugins/inspect/plugin-overlaycomposition.xml: + * docs/plugins/inspect/plugin-pango.xml: + * docs/plugins/inspect/plugin-pbtypes.xml: + * docs/plugins/inspect/plugin-playback.xml: + * docs/plugins/inspect/plugin-rawparse.xml: + * docs/plugins/inspect/plugin-subparse.xml: + * docs/plugins/inspect/plugin-tcp.xml: + * docs/plugins/inspect/plugin-theora.xml: + * docs/plugins/inspect/plugin-typefindfunctions.xml: + * docs/plugins/inspect/plugin-videoconvert.xml: + * docs/plugins/inspect/plugin-videorate.xml: + * docs/plugins/inspect/plugin-videoscale.xml: + * docs/plugins/inspect/plugin-videotestsrc.xml: + * docs/plugins/inspect/plugin-volume.xml: + * docs/plugins/inspect/plugin-vorbis.xml: + * docs/plugins/inspect/plugin-ximagesink.xml: + * docs/plugins/inspect/plugin-xvimagesink.xml: + Update docs + +2019-01-17 01:50:16 +0000 Tim-Philipp Müller <tim@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/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/lv.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 translations + +2019-01-16 14:09:18 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/caopengllayersink.m: + * ext/gl/gltestsrc.c: + * ext/gl/gstglfiltercube.c: + * ext/gl/gstglimagesink.c: + * ext/gl/gstgloverlay.c: + * ext/gl/gstgltransformation.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/gl/gstglcolorconvert.c: + * gst-libs/gst/gl/gstglfilter.c: + * gst-libs/gst/gl/gstglviewconvert.c: + * tests/check/libs/gstglcontext.c: + * tests/check/libs/gstglupload.c: + gl: Only unbind buffers/vertex attrib arrays if we can't directly bind the vertex array to 0 + Binding the vertex array to 0 will unbind everything else already. + In the previous order older versions of the Intel GL driver caused + errors to be printed for every single call when disabling the vertex + attrib arrays after binding the vertex array to 0. + +2019-01-16 00:37:48 +0000 Tim-Philipp Müller <tim@centricular.com> + + * tests/check/meson.build: + meson: enable tests for orc code + +2019-01-16 00:28:16 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/video-format.h: + video-format: minor docs improvement + +2019-01-11 17:43:03 +0200 Jordan Petridis <jordan@centricular.com> + + * gst/subparse/gstsubparse.c: + * tests/check/elements/subparse.c: + subparse: do not assert when failing to parse subrip timestamp + If a badly formatted was passed into `parse_subrip_time` it would + assert instead of exiting gracefully. This is problematic since + the input is provided by the user, and will trigger a crash. + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/532 + +2019-01-09 14:39:11 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv> + + * tests/check/elements/videoscale.c: + videoscale: Add a test to verify stepped dimensions work + +2019-01-09 14:42:31 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv> + + * gst/videoscale/gstvideoscale.c: + videoscale: Round when fixating to nearest ints to reduce error + +2019-01-09 14:24:35 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv> + + * gst/videoscale/gstvideoscale.c: + videoscale: Choose the best dimensions for fixed PAR + We might not get an exact match for width or height if stepped ranges + are involved. + +2019-01-14 10:29:54 +0200 Sebastian Dröge <sebastian@centricular.com> + + * pkgconfig/gstreamer-pbutils-uninstalled.pc.in: + * pkgconfig/gstreamer-pbutils.pc.in: + pbutils: Add audio, base and video library to Requires line in the pkg-config file + We use all those libraries internally and include headers from them in + the public headers. + And add the tag library to Requires.private as we use it internally and + it would be needed when doing static linking. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/537 + +2018-12-30 18:01:30 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst-libs/gst/gl/gstglmemory.c: + * gst-libs/gst/gl/gstglmemorypbo.c: + gl: Fix some type conversion warnings with MSVC + MSVC complained about implicit conversion between GstGLFormat* and guint* + +2019-01-12 12:27:27 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * ext/gl/gstglsinkbin.c: + glsinkbin: validate property in internal sink + It might be the case that glgsinkbin would try to set a property to + its internal sink which doesn't exist in it, leading to a glib's + warning. For example, when playsink sets 'force-aspect-ratio' property + and glsinkbin has, as internal sink, appsink, which doesn't handle + that property. + The patch validates the incoming property to forward to internal sink + if it exists in the internal sink and both properties has the same + type. + +2019-01-11 16:37:40 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst-libs/gst/video/video-converter.c: + video-converter: fix number of allocated lines + We make an allocator for temporary lines and then use this for all + the steps in the conversion that can do in-place processing. + Keep track of the number of lines each step needs and use this to + allocate the right number of lines. + Previously we would not always allocate enough lines and we would + end up with conversion errors as lines would be reused prematurely. + Fixes #350 + +2018-07-05 13:45:14 +0100 Alex Ashley <alex.ashley@youview.com> + + * gst-libs/gst/pbutils/codec-utils.c: + * tests/check/libs/pbutils.c: + codec-utils: support extension audio object type and sample rate + ISO 14496-3 defines that audioObjectType 5 is a special case that + indicates SBR is present and that an additional field has to be + parsed to find the true audioObjectType. + There are two ways of signaling SBR within an AAC stream - implicit + and explicit (see [1] section 4.2). When explicit signaling is used, + the presence of SBR data is signaled by means of the SBR + audioObjectType in the AudioSpecificConfig data. + Normally the sample rate is specified by an index into a + table of common sample rates. However index 0x0f is a special case + that indicates that the next 24 bits contain the real sample rate. + [1] https://www.telosalliance.com/support/A-closer-look-into-MPEG-4-High-Efficiency-AAC + Fixes #39 + +2019-01-11 11:26:26 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/pango/gstbasetextoverlay.c: + * gst/overlaycomposition/gstoverlaycomposition.c: + Fix some typos in code comments + And don't use gtk-doc chunk markers for internal functions. + +2019-01-11 11:24:50 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/video-format.h: + video: link to design docs in GstVideoFormat docs + Which is where the memory layout of the various pixel formats + is explained in detail. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/538 + +2018-12-29 11:28:10 +0200 Carlos Rafael Giani <dv@pseudoterminal.org> + + * gst/audiotestsrc/gstaudiotestsrc.c: + * gst/audiotestsrc/gstaudiotestsrc.h: + audiotestsrc: Improvements to the "ticks" wave + (Initially discussed in + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/305) + The ticks waveform can be useful for audio synchronization diagnostics + and other cases where the time offset between waveforms is important. + However, in its current form, it is too limited, and has problems with + discontinuities, which result in severe artifacts when this waveform + is output by a DAC. + This patch fixes some discontinuities and considerably expand the ticks + waveform's flexibility. They also introduce the notion of a "marker tick"; + every Nth tick can have a different amplitude (usually one that is larger + than the others). This is useful for combining frequent oscilloscope + triggering with large time offset detection. For example, without marker + ticks, the tick intervals must not be too small, otherwise the maximum time + offset that can be unambiguously detected is quite small (for example, if + the interval is 50ms, then no time offset larger than 25ms can be + unambiguously recognized). If the tick intervals are too far apart, then + no sudden changes can be clearly observed, since the oscilloscope is not + updated quickly enough. But with marker ticks, this is not an issue: If + there's for example a tick every 100 ms, then the oscilloscope can be + triggered every 100 ms. And, if every 20th tick is a marker tick, then + time offsets of up to 1 second can be discovered, even though the time + between ticks is 100 ms. + The patch also applies some minor cleanup to the audiotestsrc documentation. + +2019-01-05 00:16:36 +0100 Andoni Morales Alastruey <ylatuya@gmail.com> + + * ext/gl/gstgloverlay.c: + gl: fix build with more recent versions of MinGW + +2019-01-06 16:32:34 +0000 Tim-Philipp Müller <tim@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + docs: add new interlaced video API to docs + +2019-01-06 00:48:56 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/audio/gstaudiometa.h: + audiometa: fix docs typo + +2018-12-30 18:49:52 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * tests/check/meson.build: + tests: Enable more tests on Windows + Enable libs_rtp, libs_video and elements_compositor + +2018-12-30 20:10:58 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * tests/check/elements/compositor.c: + tests: compositor: Drop needless unistd.h + +2018-12-30 19:49:56 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst-libs/gst/rtp/gstrtcpbuffer.c: + rtcpbuffer: Remove invalid sanity check + Checking the address distance between given begin/end sequence + doesn't make sense. They are output params. + This is to fix weird failure of libs_rtp on Windows + +2018-12-30 18:05:18 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/rtp/gstrtcpbuffer.c: + * gst-libs/gst/rtp/gstrtcpbuffer.h: + rtcpbuffer: fix typo + +2018-12-30 17:26:04 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/rtp/gstrtcpbuffer.c: + rtcpbuffer: fix function guards with side effects + Code in g_return_*() must not have side effects, as it + might be compiled out if -DG_DISABLE_CHECKS is used, in + which case we would read garbage off the stack. + +2018-12-27 17:35:00 +0100 Tim-Philipp Müller <tim@centricular.com> + + * docs/plugins/gst-plugins-base-plugins-docs.sgml: + * docs/plugins/gst-plugins-base-plugins-sections.txt: + * ext/gl/Makefile.am: + * ext/gl/gstopengl.c: + * ext/gl/meson.build: + gl: build gl mixer elements, moved from -base + +2018-12-27 13:34:29 +0100 Tim-Philipp Müller <tim@centricular.com> + + * .gitignore: + * configure.ac: + * docs/plugins/gst-plugins-base-plugins-docs.sgml: + * docs/plugins/gst-plugins-base-plugins-sections.txt: + * docs/plugins/gst-plugins-base-plugins.hierarchy: + * docs/plugins/gst-plugins-base-plugins.interfaces: + * docs/plugins/inspect/plugin-compositor.xml: + * gst/compositor/Makefile.am: + * gst/compositor/meson.build: + * gst/meson.build: + * meson_options.txt: + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/meson.build: + * tests/examples/Makefile.am: + * tests/examples/compositor/Makefile.am: + * tests/examples/compositor/meson.build: + * tests/examples/meson.build: + compositor: add to build after move from -bad + This replaces videomixer. + Fixes #138 + +2018-12-26 18:02:42 +0100 Tim-Philipp Müller <tim@centricular.com> + + * docs/libs/gst-plugins-base-libs-docs.sgml: + * docs/libs/gst-plugins-base-libs-sections.txt: + * docs/libs/gst-plugins-base-libs.types: + * gst-libs/gst/video/Makefile.am: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst-libs/gst/video/meson.build: + * gst-libs/gst/video/video.h: + video: build GstVideoAggregator which was moved from -bad + +2018-12-28 12:15:39 +0100 Tim-Philipp Müller <tim@centricular.com> + + Move GstVideoAggregator, compositor and OpenGL mixers from -bad + Merge branch 'videoaggregator-compositor-glmixers-move' + Fixes #137 and #138. + +2018-12-27 11:41:54 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Extend MCC typefinder to also cover version 2.0 + Both versions are basically the same, but version 2.0 also allows + 60000/1001 as framerate and allows to specify the field and line number + for each payload. + Put the major version into the caps so that elements can limit via caps + negotiation which versions they can support. + +2018-12-27 14:55:28 +0100 Philippe Normand <philn@igalia.com> + + * tests/examples/gl/gtk/meson.build: + * tests/examples/gl/meson.build: + examples/gl/gtk: Fix build on macOS + The gdkquartz.h include pulls into Apple Obj-C frameworks so the compiler needs + to handle the gstgtkhelper library as such. + Fixes #518 + +2018-12-23 20:27:27 +0100 Philippe Normand <philn@igalia.com> + + * tests/examples/gl/cocoa/meson.build: + * tests/examples/gl/meson.build: + examples/gl: Cocoa example Meson build definitions + +2018-12-19 15:18:41 +0200 Jordan Petridis <jordan@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefind: Add SCC and MCC files support + +2018-12-17 19:41:26 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + * tests/check/libs/videotimecode.c: + videotimecode: Set the DROP_FRAME flag when parsing timecodes with a ,/; from a string + And also add a test for parsing a few valid and invalid timecodes + +2018-12-14 21:24:27 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Allow serializing invalid timecodes + +2018-12-14 21:18:34 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Allow deserializing invalid timecodes + Timecode strings don't contain a framerate and that has to be provided + first separately before it can be converted into a valid timecode. + +2018-12-14 21:04:36 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Don't consider 0/1 a valid framerate for timecodes + It breaks all the calculations. While it can make sense during + initialization, there's very little API that can be called with such + timecodes without ending up with wrong results. + +2018-12-14 21:00:03 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Remove various unneeded checks + +2018-12-14 20:59:11 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Fix handling of timecodes without daily jam in gst_video_time_code_to_date_time() + So that it behaves according to documentation. + +2018-12-14 20:58:40 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Various documentation and annotation fixes + +2018-12-14 18:10:23 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Add some more guards for function parameters + +2018-12-14 17:56:45 +0200 Sebastian Dröge <sebastian@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/video/gstvideotimecode.c: + * gst-libs/gst/video/gstvideotimecode.h: + * tests/check/libs/videotimecode.c: + videotimecode: Add API for initializing from a GDateTime with validation + The old API would only assert or return an invalid timecode, the new API + returns a boolean or NULL. We can't change the existing API + unfortunately but can at least deprecate it. + +2018-12-14 14:13:18 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: We only support 30000/1001 and 60000/1001 as drop-frame framerates + 24000/1001 is *not* a drop-frame framerate. + +2018-12-14 13:56:28 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Fix division by zero in timecode validation function + And add some comments about what exactly we're testing in the + non-trivial cases. + +2018-12-14 13:43:22 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-prelude.h: + video: Add deprecation macros + +2018-12-07 21:02:45 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * tests/check/meson.build: + tests: Disable some tests for Windows + Disable some tests which are unstable on windows or need fix + +2018-12-07 20:35:37 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * tests/check/meson.build: + tests: Use OS-specific seperator for whitelist + ... instead of hardcoded ':', since G_SEARCHPATH_SEPARATOR_S + varies depending on OS (e.g., ':' for *nix and ';' for Windows). + Note that, when the seperator is not specified explicitly, Meson + will use ';' for Windows and ':' for *nix respectively. + +2018-12-07 20:30:23 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * meson.build: + * tests/check/meson.build: + meson: Use join_paths() instead of '/' + Let Meson decide correct seperator such as '\' for Windows and + '/' for others + +2018-12-07 20:10:10 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * meson.build: + * tests/meson.build: + tests: Enable testing on Windows + +2018-12-17 13:33:56 +0100 Mathieu Duponchelle <mathieu@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/audio/audio-converter.c: + * gst-libs/gst/audio/audio-converter.h: + * gst/audioconvert/gstaudioconvert.c: + audio-converter: add API to determine passthrough mode + audioconvert's passthrough status can no longer be determined + strictly from input / output caps equality, as a mix-matrix can + now be specified. + We now call gst_base_transform_set_passthrough dynamically, based + on the return from the new gst_audio_converter_is_passthrough() + API, which takes the mix matrix into account. + +2018-12-16 21:19:18 +0100 Mathieu Duponchelle <mathieu@centricular.com> + + * gst/audioconvert/gstaudioconvert.c: + audioconvert: disable passthrough_on_same_caps + Now that audioconvert exposes a mix-matrix property, input and + output caps may be equal, but the mix-matrix still needs to be + applied. + Fixes #521 + +2018-12-17 09:21:57 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/video-converter.c: + video-converter: Remove unused variable/calculation + Since the refactoring in cdd86d025a7c2e1c00e7a86731168793e6104276 + calculating the stride was no longer needed in setup_scale. + +2018-12-17 09:10:36 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: Remove dead assignment + structure is never used afterwards + +2018-12-17 09:07:26 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/sdp/gstsdpmessage.c: + sdpmessage: Remove dead assignment + p is overridden before being used (as the for() loop iterator) + +2018-12-17 09:03:36 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/sdp/gstsdpmessage.c: + sdpmessage: Remove dead assignment + The presence of `key-mgmt` attribute will set the mikey appropriately. + We therefore don't need to check the return value (which will + be overwritten afterwards). + +2018-12-17 08:58:21 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/rtsp/gstrtspconnection.c: + rtspconnection: Properly exit infinite loop + In the unlikeliness the builder state is invalid, exit the + top-level while(TRUE) loop. + +2018-12-17 08:50:44 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/audio/gstaudiobasesink.c: + audiobasesink: Remove dead assignment + out_samples is set and used in the 'no_align' block. + Dead assignment since 3e312e6e162638d8e07f0edb3859980dabb089da + +2018-12-16 11:14:47 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/pbutils/codec-utils.c: + codec-utils: Don't leak bytewriter data + In error cases, don't forget to reset it. + +2018-12-16 23:15:57 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/rtp/gstrtpmeta.h: + rtp: fix g-i warnings + Use same variable name in function declaration as in function + definition and gtk-doc/g-i blurb. + +2018-12-11 14:10:36 +0200 Sebastian Dröge <sebastian@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/video/video-anc.c: + * gst-libs/gst/video/video-anc.h: + video-anc: Add API for converting GstVideoCaptionType from/to GstCaps + +2018-12-10 15:55:49 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.c: + * gst-libs/gst/video/video-anc.h: + video-anc: Replace GST_VIDEO_CAPTION_TYPE_CEA608_IN_CEA708_RAW with CEA608_S334_1A + CEA608_IN_CEA708_RAW is the same format as CEA708_RAW. It's only + difference is that it must contain only CEA608 and a format like this + does not exist in practice. In practice every element that handles raw + cc_data triplets must check each triplet for their actual content and + handle them accordingly. + For CC-only streams a parser could signal the existence of CEA608 and/or + CEA708 inside the caps but for metas this can only potentially be + signalled via the ALLOCATION query for negotiation purposes. + A separate format for this is not very useful and instead it should be a + format qualifier. + CEA608_S334_1A is the format defined by SMPTE S334-1 Annex A and which + is used for transferring CEA608 over SDI instead of CEA708 CDP packets. + +2018-12-14 14:07:47 +0100 Niels De Graef <nielsdegraef@gmail.com> + + * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: + gl/wayland: destroy wl_shell instance at finalize + +2018-12-14 12:04:43 +0900 Justin Kim <jeongseok.kim@sk.com> + + * tests/examples/gl/meson.build: + tests: examples: gl: gtk: Disabled on MacOS X + It fails to build on MacOS X. This example should be disabled + until fixed. + Issue: #518 + +2018-12-14 12:03:07 +0900 Justin Kim <jeongseok.kim@sk.com> + + * tests/examples/gl/generic/recordgraphic/main.cpp: + examples: gl: generic: recordgraphic: Use gst/gl/gstglfuncs.h + https://gitlab.freedesktop.org/gstreamer/gst-build/issues/11 + +2018-12-14 12:02:36 +0900 Justin Kim <jeongseok.kim@sk.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: Add OpenGL dependency by OSX way + Otherwise, it fails to link with the message below: + ``` + ld: can't map file, errno=22 file '...' + ``` + https://gitlab.freedesktop.org/gstreamer/gst-build/issues/13 + +2018-12-13 11:20:03 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/rtp/gstrtcpbuffer.c: + rtcpbuffer: Validate the length of RTCP packets + +2017-11-01 10:54:06 +0900 Justin Kim <justin.kim@collabora.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/rtp/gstrtcpbuffer.c: + * gst-libs/gst/rtp/gstrtcpbuffer.h: + * tests/check/libs/rtp.c: + rtcpbuffer: add support XR packet parsing + According to RFC3611, the extended report blocks in XR packet can + have variable length. To visit each block, the iterator should look + into block header. Once XR type is extracted, users can parse the + detailed information by given functions. + Loss/Duplicate RLE + The Loss RLE and the Duplicate RLE have same format so + they can share parsers. For unit test, randomly generated + pseudo packet is used. + Packet Receipt Times + The packet receipt times report block has a list of receipt + times which are in [begin_seq, end_seq). + Receiver Reference Time paser for XR packet + The receiver reference time has ntptime which is 64 bit type. + DLRR + The DLRR report block consists of sub-blocks which has ssrc, last RR, + and delay since last RR. The number of sub-blocks should be calculated + from block length. + Statistics Summary + The Statistics Summary report block provides fixed length + information. + VoIP Metrics + VoIP Metrics consists of several metrics even though they are in + a report block. Data retrieving functions are added per metrics. + https://bugzilla.gnome.org/show_bug.cgi?id=789822 + +2018-12-12 15:48:09 +0100 Philipp Zabel <p.zabel@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: dmabuf: use out_info to create allocation params for non-direct dmabuf uploads as well + Non-direct dmabuf uploads, just as direct dmabuf uploads, create EGL + images and thus GL textures of the same width as the imported image. + The input dmabuf line stride is not relevant to the resulting texture + in both cases. + This fixes the case where non-direct uploads of input dmabufs with line + stride larger than the width will for example cause glcolorconvert to + sample only the left part (width * bytes per pixel / stride) of the + image, causing a horizontally stretched and cropped output image. + +2018-12-12 23:25:58 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglmemory.c: + glmemory: normalize the internal format we pass into glTex* functions + Passing unsized formats sometimes breaks on embedded platforms + Take 2 at 694e30f858ebddae8c39cf934ff1b21ba7aa08e7, + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/49 + +2018-12-12 23:14:56 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglformat.c: + Revert "glformat: return sized formats in from_video_info" + This broke videotestsrc ! video/x-raw,format=NV12 ! glimagesink on + the desktop + Reverts: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/49 + This reverts commit 694e30f858ebddae8c39cf934ff1b21ba7aa08e7. + +2018-12-07 19:13:59 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-overlay-composition.c: + video-overlay-composition: Optimize premultiplication/unpremultiplication loops + Pull in video frame fields into local variables. Without this the + compiler must assume that they could've changed on every use and read + them from memory again. + This reduces the inner loop from 6 memory reads per pixels to 4, and the + number of writes stays at 3. + +2018-11-30 13:37:26 +0100 Per Forlin <per.forlin@axis.com> + + * gst-libs/gst/rtsp/gstrtspconnection.c: + rtspconnection: Replace Auth header instead of append + gst_rtsp_connection_send() adds the Authorization header to the request. + If this function is being called multiple times with the same request + it will add one more Authorization header every time. + To fix to this issue do not append a new Authorization header on + top of an existing ones. Remove any existing Authorization headers first + and then add the new one. + Fixes gst-plugins-good#425 + +2018-12-05 10:35:33 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> + + * ext/ogg/gstoggmux.c: + oggmux: Fix a maybe-uninitialized warning + Arch Linux, GCC 8.2.1+20181127, CFLAGS='-Og -g3' + +2018-12-05 10:35:33 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> + + * gst/typefind/gsttypefindfunctions.c: + typefind: Fix a maybe-uninitialized warning + Arch Linux, GCC 8.2.1+20181127, CFLAGS='-Og -g3' + +2018-12-05 17:24:06 -0300 Thibault Saunier <tsaunier@igalia.com> + + * common: + Automatic update of common submodule + From cd1dee0 to 59cb678 + +2018-12-05 12:11:25 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstgldeinterlace.c: + gldeinterlace: Indentation fix + +2018-12-01 20:45:31 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: + gl: window-gbm: Restore CRTC on close + This simply try and restore the state of the CRTC when the window + is closed. This is a bit cosmetic, but it allow resuming fbcon + when we exit. + +2018-12-01 20:41:10 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: + gl: window-gbm: Remove unused private class member + The display class member is not used, not set and rather + confusing. + +2018-12-01 20:30:16 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: + gl: window-gbm: Remove unneeded extra function + The cleanup function was only called in _close() which was only + calling that function. This indirection didn't make much sense. + +2018-11-23 14:40:27 +0800 Wangfei <fei.w.wang@intel.com> + + * gst-libs/gst/video/video-converter.c: + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + * gst-libs/gst/video/video-info.c: + video: add Y410 pixel format. + This pixel format is packed format with 4:4:4 sample. And 10 + available bits of Y/U/V and 2 available bits of alpha stored + in 4 Bytes. + Format defined in: + https://docs.microsoft.com/en-us/windows/desktop/medfound/10-bit-and-16-bit-yuv-video-formats + +2018-10-04 00:27:42 +0200 Carlos Rafael Giani <dv@pseudoterminal.org> + + * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: + gl/gbm: Add GST_GL_GBM_DRM_CONNECTOR environment variable + If multiple DRM connectors are connected, currently the first one is + picked. Improve this by adding an environment variable that allows for + choosing a connector by name. The connector name has been made so they + are compatible with modetest/modeprint DRM utilities. + Related to #490 + +2018-10-04 00:22:02 +0200 Carlos Rafael Giani <dv@pseudoterminal.org> + + * gst-libs/gst/gl/gbm/gstgl_gbm_utils.c: + * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: + gl/gbm: Improve logging output + * List all connectors, modes, and encoders, even after picking one + * Add missing DRM_MODE_CONNECTOR_DPI string for logging and improve + existing strings + * Make sure the names matches modetest/modeprint from DRM utilities + Related to #490 + +2018-11-30 12:40:19 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/convertframe.c: + video: convertframe: Shut down pipeline asynchronously via the thread pool + If we use the main loop it might happen that the caller (e.g. our unit + test) already shut down the loop once the result was received and in + that case the pipeline would never ever be shut down (and our unit test + would hang). + +2018-11-30 12:39:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/libs/video.c: + video: Split the success and error convert_frame_async() test into two tests + To make it more obvious which of the two is actually failing. + +2018-11-29 12:55:28 +0100 Marouen Ghodhbane <marouen.ghodhbane@nxp.com> + + * gst-libs/gst/audio/audio-converter.c: + audio-convert: Fix endianness conversion function init + Endianness conversion should be based on the sample width instead of the + sample depth. + Fixes #510 + +2018-11-30 17:50:14 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglformat.c: + glformat: return sized formats in from_video_info + Fixes green output on e.g. Android when converting between YUV->RGBA + +2018-11-23 16:41:38 +0300 Freyr666 <sky_rider_93@mail.ru> + + * ext/gl/gstgldeinterlace.c: + opengl: gldeinterlace: remove interlace-mode from srcpad's caps + This fixes output caps format, so the output frames are not interlaced anymore + +2018-11-28 11:13:39 +0000 Philippe Normand <philn@igalia.com> + + * ext/gl/gstgltestsrc.c: + gltestsrc: Run context query only during decide_allocation + Running the context query in _start and during the NULL->READY state transition + can fail because downstream elements might not be able to answer and thus the + source element would not be able to reuse downstream GLContext and GLDisplay. + This issue happened specifically when trying to use gltestsrc in playbin. + +2018-11-29 20:51:18 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/video-anc.h: + video: fix typo in GstVideoCaptionType docs + +2018-11-28 20:46:05 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: Allow for the use of libGL as well as OpenGL + OpenGL.framework and libGL are two different providers of a GL + implementation that can be linked into an application together. + +2018-11-26 11:29:41 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.c: + video-anc: G_GNUC_CHECK_VERSION was added in GLib 2.42 + Define our own version if compiling with older versions. We currently + only require GLib 2.40. + +2018-11-19 15:09:25 +0000 Maciej Wolny <maciej.wolny@codethink.co.uk> + + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: + * gst-libs/gst/gl/gstgldebug.h: + * gst-libs/gst/gl/gstglfuncs.h: + gst-gl: Remove duplicate declarations + This causes 'redefinition of typedef ...' errors on GCC 4.5.3 + +2018-11-28 05:51:53 +0200 Jordan Petridis <jordan@centricular.com> + + * ext/gl/gstgldownloadelement.c: + * ext/opus/gstopusenc.c: + * gst-libs/gst/audio/gstaudiodecoder.c: + * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: + * tests/check/elements/audioconvert.c: + * tests/check/pipelines/simple-launch-lines.c: + Run gst-indent through the files + This is required before we enabled an indent test in the CI. + https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33 + +2018-11-23 16:30:30 +0300 Freyr666 <sky_rider_93@mail.ru> + + * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: + opengl: gbm: Adds missing unrefs for gl context and drm node release in finalizer + This adds a few missing gst_object_unref calls for the opengl context in + gstglwindow_gbm_egl.c, as well as the missing close call for the + drm node fd in gst_gl_display_gbm_finalize. + +2018-11-23 13:25:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/convertframe.c: + convertframe: Error out directly in the sync variant if the state change to PAUSED failed + +2018-11-23 13:22:44 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/convertframe.c: + convertframe: Only go to PAUSED state for the async variant + We only care for the pre-roll sample. + +2018-11-23 13:21:23 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/convertframe.c: + convertframe: Error out directly if changing the pipeline state to PLAYING failed + +2018-11-23 13:16:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/convertframe.c: + convertframe: Use refcounting for the context + While this creates a circular reference between the pipeline and the + context, this ensures that the context stays alive for as long as any + callbacks could be called on it. The circular reference is broken once + the conversion is finished (or error, or timeout), which will then cause + everything to be freed. + Previously it was possible that a callback could be called on the + context right after it was freed already. + Also use only a single context structure, the second structure does not + simplify anything and duplicates storage. + +2018-11-22 11:10:53 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/gl/gstgldebug.h: + * gst-libs/gst/gl/gstglquery.h: + * gst-libs/gst/gl/gstglshader.c: + gl: libs: glib might not define G_HAVE_ISO_VARARGS + This will fix the compiler warning + "G_HAVE_ISO_VARARGS" is not defined, evaluates to 0 [-Wundef] + +2018-11-21 15:08:42 -0500 Xavier Claessens <xavier.claessens@collabora.com> + + * gst-libs/gst/tag/meson.build: + Check for zlib header + +2018-11-21 16:12:20 -0500 Xavier Claessens <xavier.claessens@collabora.com> + + * tests/examples/gl/generic/meson.build: + Disable gl examples when we don't have OpenGL + +2018-11-19 16:31:20 -0500 Xavier Claessens <xavier.claessens@collabora.com> + + * gst-libs/gst/tag/meson.build: + Fix zlib detection when there is no pkg-config file + +2018-11-13 17:40:23 +0100 Tomasz Andrzejak <andreiltd@gmail.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/audio/gstaudiodecoder.c: + * gst-libs/gst/audio/gstaudiodecoder.h: + audiodecoder: add API for setting caps on the source pad + This patch adds API in the audio decoder base class for setting the arbitrary + caps on the source pad. Previously only caps converted from audio info were + possible. This is particularly useful when subclass wants to set caps features + for audio decoder producing metadata. + +2018-10-17 15:58:40 -0400 Xavier Claessens <xavier.claessens@collabora.com> + + * gst-libs/gst/gl/egl/gstglcontext_egl.h: + gl: Fix subclassing of GstGLContextEGL + +2018-11-15 11:28:11 +0200 Philippe Normand <philn@igalia.com> + + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + video-format: Move Y210 format declaration to avoid ABI break + The Y210 format was added in the middle of the formats enum and list, + introducing an ABI break. + This issue was detected thanks to the gstreamer-rs test harness. + +2018-10-16 12:31:57 +0200 Linus Svensson <linussn@axis.com> + + * gst-libs/gst/rtp/gstrtpbasepayload.c: + rtpbasepayload: Update current seqnum for buffer lists + The current sequence number will be the one from the first RTP buffer + when a buffer list is pushed, but should be the last one. + Fixes #495 + +2018-10-28 13:47:04 +0000 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/gl/meson.build: + meson: Cleanup old FIXMEs that relied on meson bugfixes + +2018-11-07 16:45:21 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/libs/videoanc.c: + video-anc: Add test for VBI encoder + +2018-11-07 15:12:13 +0200 Sebastian Dröge <sebastian@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/video/video-anc.c: + * gst-libs/gst/video/video-anc.h: + video-anc: Implement a VBI encoder + This allows writing out data from caption meta and similar to VBI + +2018-11-09 10:54:57 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.c: + video-anc: Add comment about our assumption of the ADF user data format + We assume here the same data format for the user data as for the + DID/SDID: 10 bits with parity in the upper 2 bits. In theory some + standards could define this differently and even have full 10 bits of + user data but there does not seem to be a single such standard after + all these years. + +2018-11-08 18:15:58 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.c: + * tests/check/libs/videoanc.c: + video-anc: Add support for parsing composite ADF and check the packets' checksum + And add the checksum to the data we test in the unit test. + +2018-11-07 14:20:19 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.h: + video-anc: Fix documentation about SDID_block_number field + It was giving type 2 for both variants. + +2018-11-07 13:58:17 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.c: + video-anc: Add invalid-argument guards to public GstVideoVBIParser API + +2018-11-12 13:55:24 +0200 Jordan Petridis <jordan@centricular.com> + + * .gitlab-ci.yml: + Add Gitlab CI configuration + This commit adds a .gitlab-ci.yml file, which uses a feature + to fetch the config from a centralized repository. The intent is + to have all the gstreamer modules use the same configuration. + The configuration is currently hosted at the gst-ci repository + under the gitlab/ci_template.yml path. + Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 + +2018-11-11 08:52:27 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglsl.h: + gl: Make sure that GST_GLSL_PROFILE_ANY gets the correct value in introspection + Currently in Python it would become a signed 64 bit value but should + actually be an unsigned 32 bit value with all bits set. + This is the same problem as with GST_MESSAGE_TYPE_ANY. + See https://bugzilla.gnome.org/show_bug.cgi?id=732633 + +2018-11-09 09:32:49 +0100 Sjoerd Simons <sjoerd.simons@collabora.co.uk> + + * gst-libs/gst/gl/gstglupload.c: + glupload: dmabuf: be explicit about gl formats used + Rather then letting gst_gl_memory_setup_buffer guess the GL format used + for an eglimage after importing a dmabuf be explicit about it. This + fixes issues where dmabuf import may have used another format then + gst_gl_format_from_video_info would guess on the basis of the available + GL extensions. + In particular on etnaviv the gst_gl_format_from_video_info would + assuming a luminance + alpha GL format is used for YUY2, but the dmabuf + import will always use RG88. Which causes images to end up somewhat pink when + displayed on the screen. + +2018-11-09 10:30:06 +0100 Sjoerd Simons <sjoerd.simons@collabora.co.uk> + + * gst-libs/gst/gl/egl/gsteglimage.c: + gl/egl: Determine correct format on dmabuf import + When importing an egl image from dmabuf gst_gl_format_from_video_info + was used to work what the result GL format will be. Unfortunately that + will only work if the conventional format and the choosen DRM fourcc for + the format match up. + On etnaviv platforms there is no support for GL_EXT_texture_rg, so the + GL format chosen for YUY2 ends up being GST_GL_LUMINANCE_ALPHA. However + DRM does not do luminance + alpha as it's a legacy GL thing, so the + dmabuf import ends up using DRM_FORMAT_GR88. + To fix this, tie the DRM_FORMAT and the GL format together so they + always match up. + +2018-11-09 12:22:31 +0100 Edward Hervey <edward@centricular.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: Avoid potential unitialized/wrong bitrate value + Only calculate and set the bitrate if all conditions are met. + +2018-11-07 16:28:28 +0100 Edward Hervey <edward@centricular.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: Fix previous commit + rebase wasn't correct :) + +2018-07-30 17:56:18 +1000 Matthew Waters <matthew@centricular.com> + + * tests/check/elements/urisourcebin.c: + tests/urisourcebin: add get/set watermark test + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-07-30 14:57:23 +1000 Matthew Waters <matthew@centricular.com> + + * gst/playback/gsturisourcebin.c: + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/urisourcebin.c: + * tests/check/meson.build: + urisourcebin: add a statistics property for queueing + It contains the minimum/maximum/average byte and time levels of the + queues inside this urisourcebin + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-07-30 14:56:40 +1000 Matthew Waters <matthew@centricular.com> + + * gst/playback/gsturisourcebin.c: + uisourcebin: update forwarded properties on change + Allows changing queueing properties at runtime + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-07-30 14:48:35 +1000 Matthew Waters <matthew@centricular.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: add low/high-watermark properties + These are forwarded to the contained queues. + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-07-23 14:14:32 +1000 Matthew Waters <matthew@centricular.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: limit the byte size of the queue based on the buffer-size + Use the bitrate advertised by queue2 to determine the limits to + set across possibly multiple queue2/downloadbuffer elements. e.g. + with two queue2's and a max-bytes based on the ratio of the + bitrate/cumulative_bitrate multiplied by the buffer_size set on urisourcebin. + This allows finer grained control over the buffer used by all the queue + elements inside urisourcebin. Instead of a maximum of + n_streams*buffer_size being used, only buffer_size will be used however + we will fallback to n_streams*buffer_size if one of the queue2's does + not have bitrate information. + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-06-27 20:17:08 +1000 Matthew Waters <matthew@centricular.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: remove unused instance variable streams + +2018-11-05 12:00:55 +0100 Edward Hervey <edward@centricular.com> + + * tests/examples/overlaycomposition/Makefile.am: + examples: Fix libgstvideo linking + Use the local libgstvideo (and not the system wide one) + +2018-11-04 21:17:28 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/audio-format.c: + * gst-libs/gst/audio/audio-format.h: + audio: const gpointer is not the same as gconstpointer/const void * + See https://bugzilla.gnome.org/show_bug.cgi?id=664491 + +2018-11-05 05:35:12 +0000 Matthew Waters <matthew@centricular.com> + + * .gitmodules: + Update common submodule location without /git/ directory + +2018-11-05 12:06:15 +0800 Haihao Xiang <haihao.xiang@intel.com> + + * .gitmodules: + * gst-plugins-base.doap: + Clone the code from gitlab + This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/503 + +2018-11-02 20:31:54 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/compositor/compositororc-dist.c: + * gst/compositor/compositororc-dist.h: + compositor: update disted orc backup files + +2018-11-01 19:19:51 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/videoanc.c: + * tests/check/meson.build: + video-anc: Add unit tests for VBI parsing + https://bugzilla.gnome.org/show_bug.cgi?id=797363 + +2018-11-01 19:19:03 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-anc.c: + video-anc: Fix bounds checks when parsing VBI data + We were reading more bytes than we allocated. + https://bugzilla.gnome.org/show_bug.cgi?id=797363 + +2018-10-31 18:30:14 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Only renegotiate if the caps are incompatible + There is new code that ensures that we renegotiate after an + uploader transition if the negotiated caps have changed. + The problem is that the raw uploader will not really try and + fixate the input caps, but instead of return a subset with the + only the supported target texture. + This had two effect, raw uploads was always done renegotiated + once and the raw upload unit test was now failing as it didn't + expect a renegotiation. + As it's a valid check, simply relax the gst_caps_is_equal() check + and use a gst_caps_is_subset() instead. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-31 18:26:42 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Do prepend the preferred caps + The direct dmabuf upload does color conversion, so when it transforms + the caps, it replaces the format with all formats found through the + format query. When this uploader can't be used, it makes the upstream + source pick a unsupported format. + To fix this, we only append the caps with a list of format. So the + source will only pick one of these formats if the downstream preferred + format is not supported. A negotiation failure after this would be + normal. + This fixes pipelines without a glcolorconvert element. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-31 18:24:33 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * tests/check/libs/gstglupload.c: + glupload-test: Don't use gboolean to store enums + The unit test makes mixed usage of ret value. Sometimes its does + stores an enum and at other moment a boolean. Also fix test + using boolean instead of the correct enum value. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-28 14:46:15 +0000 Philippe Normand <philn@igalia.com> + + * tests/examples/playback/playback-test.c: + examples/playback-test: New entry for text-offset updates + https://bugzilla.gnome.org/show_bug.cgi?id=797134 + +2018-10-28 14:45:26 +0000 Philippe Normand <philn@igalia.com> + + * gst/playback/gstplaybin3.c: + playbin3: New text-offset property + This new property controls the synchronisation offset between the text and video + streams. Positive values make the text ahead of the video and negative values + make the text go behind the video. + https://bugzilla.gnome.org/show_bug.cgi?id=797134 + +2018-10-28 14:43:01 +0000 Philippe Normand <philn@igalia.com> + + * gst/playback/gstplaybin2.c: + playbin: New text-offset property + This new property controls the synchronisation offset between the text and video + streams. Positive values make the text ahead of the video and negative values + make the text go behind the video. + https://bugzilla.gnome.org/show_bug.cgi?id=797134 + +2018-10-28 14:42:31 +0000 Philippe Normand <philn@igalia.com> + + * gst/playback/gstplaysink.c: + * gst/playback/gstplaysink.h: + playsink: Add text-offset property + When the playsink contains a text chain this property controls the + synchronisation of the subtitles and video by controlling the underlying + subtitleoverlay::subtitle-ts-offset property. + https://bugzilla.gnome.org/show_bug.cgi?id=797134 + +2018-10-28 14:35:17 +0000 Philippe Normand <philn@igalia.com> + + * gst/playback/gstsubtitleoverlay.c: + * gst/playback/gstsubtitleoverlay.h: + subtitleoverlay: Add a subtitle-ts-offset property + This property controls the synchronisation offset between text and video in + nanoseconds, by updating the parser src pad offset. + https://bugzilla.gnome.org/show_bug.cgi?id=797134 + +2018-10-31 19:20:20 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst/compositor/compositor.c: + compositor: Fix enum type mismatch + The variable blend_mode is GstCompositorBlendMode but it is + assigned to a GstCompositorOperator enum value. + +2018-10-09 15:25:37 +0800 Wangfei <fei.w.wang@intel.com> + + * gst-libs/gst/video/video-converter.c: + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + * gst-libs/gst/video/video-info.c: + video: add Y210 pixel format. + This pixel format is packed format with 4:2:2 sample and 10 + available bits of each channel. + https://bugzilla.gnome.org/show_bug.cgi?id=797267 + +2018-10-30 10:05:03 +0100 Johan Bjäreholt <johanbj@axis.com> + + * gst/compositor/compositororc-dist.h: + compositor: fix undeclared functions + +2018-10-17 17:22:10 +0200 Philipp Zabel <p.zabel@pengutronix.de> + + * gst-libs/gst/gl/egl/gsteglimage.c: + glupload: dmabuf-direct: report driver limitations to debug log + Report in the DEBUG log if the driver does not support importing a given + format with linear modifiers non-externally. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-17 17:11:20 +0200 Philipp Zabel <p.zabel@pengutronix.de> + + * gst-libs/gst/gl/egl/gsteglimage.c: + glupload: dmabuf-direct: query formats before modifiers + The EXT_image_dma_buf_import_modifiers extension [1] states regarding + eglQueryDmaBufModifiersEXT: + The format must be one of those returned by the + eglQueryDmaBufFormatsEXT command. + To comply with this requirement eglQueryDmaBufFormatsEXT must be called + before eglQueryDmaBufModifiersEXT. + [1] https://www.khronos.org/registry/EGL/extensions/EXT/EGL_EXT_image_dma_buf_import_modifiers.txt + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-17 17:09:26 +0200 Philipp Zabel <p.zabel@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: debug output from dmabuf and dmabuf_direct upload transform_caps + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-17 15:47:07 +0200 Philipp Zabel <p.zabel@pengutronix.de> + + * gst-libs/gst/gl/egl/gsteglimage.c: + glupload: calculate DRM fourcc once for direct dmabuf upload + Calculate DRM fourcc and report to the DEBUG log about it only once + instead of three times in gst_egl_image_from_dmabuf_direct(). + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-05 10:17:27 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Implement direct dmabuf uploader + The idea is that some GPUs (like the Vivante series) can actually + perform the YUV->RGB conversion internally, so no custom conversion + shaders are needed. To make use of this feature, we need an additional + uploader that can import DMABUF FDs and also directly pass the pixel + format, relying on the GPU to do the conversion. + Based on patches from Nicolas Dufresne <nicolas.dufresne@collabora.com> and + Carlos Rafael Giani <dv@pseudoterminal.org>. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-04 09:29:57 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * ext/gl/gstgluploadelement.c: + gluploadelement: try to avoid dropping buffers + Without this, a buffer is dropped if glupload indicates that it is + necessary to reconfigure. + Avoid this by explicitly reconfiguring immediately and uploading the buffer + again. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-04 09:21:00 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: handle upload methods with different caps + If a upload method is selected then use it exclusively in transform_caps(). + Also, reconfigure if the current caps don't match the current upload + method. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-05 15:17:30 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: allow system memory for dmabuf in transform_caps + This should not be necessary, but currently not all plugins that provide + dmabuf memory announce this with caps features, e.g. v4l2. + The static caps already contain the system memory. It didn't break before + because other upload methods provide the necessary transformation. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-04 09:17:11 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: try to use the last method after reconfigure + Reconfigure will trigger a set_caps which clears the upload method. + Remember the method in this case and start with it. + Wrap around once to try all methods if necessary. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-30 12:25:02 +0100 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/egl/gstegl.h: + * gst-libs/gst/gl/egl/gsteglimage.c: + * gst-libs/gst/gl/egl/gsteglimage.h: + gl/egl: Add gst_egl_image_from_dmabuf_direct() function + The colorspace conversion happens during the upload so the necessary hints + must be provided to ensure that the conversion works correctly. + At least the Mesa Intel driver will create a texture without error but + produces an incorrect result. Use eglQueryDmaBufModifiersEXT() to check if + non-external upload is supported for the given format. + Based on a patch from Carlos Rafael Giani <dv@pseudoterminal.org>. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2017-06-07 18:00:08 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglmemory.c: + glmemory: Fix n_wrapped_pointers usage + gst_gl_memory_setup_buffer() was not properly using the number + of pointers to wrapped. This also fixes the validation, as we + only support 1 wrapper per view, or num_planes * views wrapper. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-10-29 09:18:35 +0100 Johan Bjäreholt <johanbj@axis.com> + + * gst/overlaycomposition/gstoverlaycomposition.c: + overlaycomposition: Fix implicit use of memset + https://bugzilla.gnome.org/show_bug.cgi?id=797353 + +2018-10-28 17:41:38 +0000 Sebastian Dröge <sebastian@centricular.com> + + * docs/plugins/inspect/plugin-overlaycomposition.xml: + overlaycomposition: Add plugin inspect file + +2018-10-28 17:21:08 +0000 Philippe Normand <philn@igalia.com> + + * tests/examples/overlaycomposition/meson.build: + examples: overlaycomposition: Fix Meson build + +2018-10-27 16:44:27 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/blend.c: + * gst/compositor/blend.h: + * gst/compositor/compositor.c: + * gst/compositor/compositor.h: + * gst/compositor/compositororc.orc: + * tests/examples/compositor/crossfade.c: + compositor: Implement different operators via per-pad property + This removes the crossfade-ratio property and replaces it with an + operator property. Currently this implements the following operators: + - SOURCE: Copy over the source and don't look at the destination + - OVER: Default blending of the source over the destination + - ADD: Like OVER but simply adding the alpha instead + See the example for how to implement crossfading with this. + https://bugzilla.gnome.org/show_bug.cgi?id=797169 + +2018-10-01 18:10:34 +0300 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + * docs/plugins/Makefile.am: + * docs/plugins/gst-plugins-base-plugins-docs.sgml: + * docs/plugins/gst-plugins-base-plugins-sections.txt: + * gst/meson.build: + * gst/overlaycomposition/Makefile.am: + * gst/overlaycomposition/gstoverlaycomposition.c: + * gst/overlaycomposition/gstoverlaycomposition.h: + * gst/overlaycomposition/meson.build: + * meson_options.txt: + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/overlaycomposition.c: + * tests/check/meson.build: + * tests/examples/Makefile.am: + * tests/examples/meson.build: + * tests/examples/overlaycomposition/.gitignore: + * tests/examples/overlaycomposition/Makefile.am: + * tests/examples/overlaycomposition/meson.build: + * tests/examples/overlaycomposition/overlaycomposition.c: + overlaycomposition: New element that allows applications to draw GstVideoOverlayComposition on a stream + https://bugzilla.gnome.org/show_bug.cgi?id=797234 + +2018-08-08 17:35:08 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/playback/gstparsebin.c: + parsebin: Add missing locks/unlocks of the chain mutex + Before freeing pending pads it is required to hold the mutex, that's + what is protecting the list of pending pads in other places. + https://bugzilla.gnome.org/show_bug.cgi?id=796935 + +2018-10-27 15:48:13 +0200 Edward Hervey <edward@centricular.com> + + * tests/check/pipelines/tcp.c: + tests: Solidify tcp connection check + The previous failure was a timeout which was due to the sending pipeline + pushing test buffer *before* the remote client was accepted. We would + therefore never get the buffer on the other side. + While the client socket would indeed appear as "connected", this doesn't + mean that the remote server side did "accept" it (which is where we then + add it to the list of remote parties to which data will be sent). + The problem isn't with the element implementation, but to the nature of + TCP 3-way handshake. + In order to make the test reliable, wait for the sink to have accepted + the remote client (by checking the number of handles) before sending out + test buffers. + +2018-10-27 12:37:07 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/Makefile.am: + * gst/compositor/compositor.c: + * gst/compositor/compositor.h: + * gst/compositor/compositorpad.h: + compositor: Remove extra header for the pad declaration + There's no reason for having this separate apart from making things less + discoverable. + +2018-07-24 18:40:36 +0800 Roland Jon <rlandjon@gmail.com> + + * gst/playback/gstdecodebin3.c: + decodebin3: fix eos event leak + https://bugzilla.gnome.org/show_bug.cgi?id=796860 + +2018-10-17 19:43:51 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/ogg/gstoggdemux.c: + oggdemux: Answer POSITION query + +2018-10-17 21:09:22 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/compositor/meson.build: + meson: Replace empty configuration_data() with copy keyword + Use 'copy' keyword to avoid meson warning message. + Note that 'copy' keyword in configure_file() is available + since meson 0.47.0 + https://bugzilla.gnome.org/show_bug.cgi?id=797298 + +2018-09-27 21:21:14 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/video/meson.build: + * gst/adder/meson.build: + * gst/audiomixer/meson.build: + * gst/videotestsrc/meson.build: + * gst/volume/meson.build: + meson: Replace empty configuration_data() with copy keyword + Use 'copy' keyword to avoid meson warning message. + Note that 'copy' keyword in configure_file() is available + since meson 0.47.0 + https://bugzilla.gnome.org/show_bug.cgi?id=797298 + +2018-10-15 19:45:46 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/video/gstvideometa.c: + videometa: Log map errors with GST_ERROR, not DEBUG + Otherwise it's very easy to miss them when gst_video_frame_map() fails + +2018-10-10 23:15:49 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/rtsp/gstrtspconnection.c: + rtspconnection: do not duplicate authentication headers + rtsp_connection_send takes care of adding those already, + and some reverse proxies such as nginx will reject the request + altogether if the Authorization header is present twice, + even with the same value. + https://bugzilla.gnome.org/show_bug.cgi?id=797272 + +2018-10-10 14:16:12 -0400 Stian Selnes <stian@pexip.com> + + * docs/libs/gst-plugins-base-libs-docs.sgml: + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/rtp/Makefile.am: + * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: + * gst-libs/gst/rtp/gstrtpbasedepayload.c: + * gst-libs/gst/rtp/gstrtpbasedepayload.h: + * gst-libs/gst/rtp/gstrtpbasepayload.c: + * gst-libs/gst/rtp/gstrtpbasepayload.h: + * gst-libs/gst/rtp/gstrtpmeta.c: + * gst-libs/gst/rtp/gstrtpmeta.h: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtp/rtp.h: + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/rtpbasedepayload.c: + * tests/check/libs/rtpbasepayload.c: + * tests/check/libs/rtpmeta.c: + rtpbasepayload: rtpbasedepayload: Add source-info property + Add a source-info property that will read/write meta to the buffers + about RTP source information. The GstRTPSourceMeta can be used to + transport information about the origin of a buffer, e.g. the sources + that is included in a mixed audio buffer. + A new function gst_rtp_base_payload_allocate_output_buffer() is added + for payloaders to use to allocate the output RTP buffer with the correct + number of CSRCs according to the meta and fill it. + RTPSourceMeta does not make sense on RTP buffers since the information + is in the RTP header. So the payloader will strip the meta from the + output buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=761947 + +2018-10-08 01:07:45 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + meson: use new 'python' module instead of deprecated + https://github.com/mesonbuild/meson/pull/4169 + +2018-10-07 19:09:24 +0100 Tim-Philipp Müller <tim@centricular.com> + + * configure.ac: + * m4/gst-gl.m4: + * tests/examples/gl/Makefile.am: + * tests/examples/gl/clutter/.gitignore: + * tests/examples/gl/clutter/Makefile.am: + * tests/examples/gl/clutter/clutteractor.c: + * tests/examples/gl/clutter/clutteractortee.c: + * tests/examples/gl/clutter/cluttershare.c: + * tests/examples/gl/clutter/cluttershare.cbp: + * tests/examples/gl/clutter/meson.build: + * tests/examples/gl/meson.build: + examples: gl: remove bitrotten clutter examples + https://bugzilla.gnome.org/show_bug.cgi?id=797173 + +2018-10-05 15:37:45 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/audioconvert.c: + tests: audioconvert: test caps fixate with layout conversion + https://bugzilla.gnome.org/show_bug.cgi?id=797225 + +2018-09-29 10:39:46 +0200 Matej Knopp <matej.knopp@gmail.com> + + * gst/audioconvert/gstaudioconvert.c: + audioconvert: remove layout from structure when fixating caps + otherwise caps intersection always fails when converting non-interleaved to interleaved audio + https://bugzilla.gnome.org/show_bug.cgi?id=797225 + +2018-10-05 01:19:29 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglimagesink.c: + * ext/gl/gstgloverlay.c: + Revert "Revert "gl: use correct blend functions for unpremultiplied alpha"" + This reverts commit 452d90a88c6e68a3daa38e02213782836788236a. + This was actually correct. sorry for the noise! + +2018-10-04 23:45:49 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix the default blend modes for unpremultipled alpha + Alpha in GStreamer is unpremultiplied + +2018-10-05 00:48:58 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglimagesink.c: + glimagesink: make multiview none equivalent to mono + Fixes the internal viewconvert to not scale buffers for output with the + following pipeline: + gltestsrc ! glimagesink + It also fixes overlay composition with a resized output with an OpenGL + upstream: + gltestsrc ! timeoverlay ! glimagesink + +2018-10-05 00:03:09 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglimagesink.c: + * ext/gl/gstgloverlay.c: + Revert "gl: use correct blend functions for unpremultiplied alpha" + This reverts commit 779d028f27b7bc6eb7abe841fe2cda97de3be983. + +2018-10-04 23:43:19 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglimagesink.c: + * ext/gl/gstgloverlay.c: + gl: use correct blend functions for unpremultiplied alpha + Fallback to the closest but incorrect values we had before if we can't + do this correctly. + +2018-10-04 23:23:03 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gl/overlaycompositor: don't force unpremultiplied alpha + Remove testing code from 23159365618409011745b554b4ad371700961121 + +2018-10-04 23:02:05 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gl/overlaycompositor: support both (un)premultiplied alpha + Using the correct blend modes for each case or converting to + premultipled in the very unlikely case that separate blend modes are + unavailable on ancient opengl hardware. + +2018-10-04 14:50:43 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglapi.h: + gl: GstGLAPI should be gst_gl_api_ in lower-case + +2018-10-04 13:38:59 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + * gst-libs/gst/gl/gstglviewconvert.h: + glviewconvert: Add backwards compatibility gst_gl_stereo_downmix_mode_get_type() + It's proper new name is gst_gl_stereo_downmix_get_type(). + +2018-10-04 13:33:30 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/Makefile.am: + gl: Add gl-enumtypes.[ch] to CLEANFILES + +2018-10-04 11:36:09 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/Makefile.am: + * gst-libs/gst/video/meson.build: + * gst-libs/gst/video/video-overlay-composition.h: + video-overlay-composition: Correctly mark GstVideoOverlayFormatFlags as flags + And register a GType for it. + +2018-10-04 16:45:34 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/meson.build: + gl/meson: fix wrong overlay filename + +2018-09-27 16:37:28 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixerbin.c: + glmixerbin: add gloverlaycompositor to each input stream + Flattens the overlay compositions into the stream before the mixer will + mix them. + https://bugzilla.gnome.org/show_bug.cgi?id=759867 + +2018-09-28 12:09:16 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglimagesink.c: + glimagesink: only update the output info iff there's a valid display_rect + Attempting to use the MAX(1, display_rect) would result in the overlay + composition attempting to draw into 1x1 buffer and calculate some + grossly incorrect sizes. + previously failing case: + gltestsrc ! textoverlay text=GStreamer ! glimagesinkelement + +2018-09-27 13:35:15 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/Makefile.am: + * ext/gl/gstgloverlaycompositorelement.c: + * ext/gl/gstgloverlaycompositorelement.h: + * ext/gl/gstopengl.c: + * ext/gl/meson.build: + gl: add a new overlay compositor element + Flattens all the overlays from the GstVideoOverlayCompositionMeta into + the video stream. + https://bugzilla.gnome.org/show_bug.cgi?id=759867 + +2018-09-27 13:31:09 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gl/overlaycompositor: add support for flipping the output + This is required to use gloverlaycompositor outside of glimagesink where + the output is not automatically flipped + +2018-09-27 13:30:35 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstgloverlaycompositor.c: + gl/overlaycompositor: handle ANY caps features gracefully + +2018-09-27 13:29:03 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglfilter.c: + glfilter: don't complete overwrite caps features from the subclass + We can get away with ensuring that the memory:GLMemory caps feature is + present in the output caps + +2018-10-03 23:27:32 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/Makefile.am: + gl: Add gl-enumtypes.h to nodist_HEADERS + +2018-10-03 23:17:56 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.h: + glviewconvert: Create an anonymous enum for GstGLStereoDownmix + Older glib-mkenums completely fails to parse it otherwise. + +2018-10-03 16:00:23 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglstereomix.c: + glstereomix: Fix build after deprecating misnamed GST_TYPE_GL_STEREO_DOWNMIX_MODE_TYPE + +2018-10-03 14:49:32 +0300 Sebastian Dröge <sebastian@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * ext/gl/gstglimagesink.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglviewconvert.c: + * tests/examples/gl/gtk/3dvideo/mviewwidget.c: + gl: Rename GST_TYPE_GL_STEREO_DOWNMIX GType macro everywhere + The old one still exists but behind GST_DISABLE_DEPRECATED + +2018-10-03 13:06:42 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/Makefile.am: + * gst-libs/gst/gl/gl.h: + * gst-libs/gst/gl/gstglviewconvert.c: + * gst-libs/gst/gl/gstglviewconvert.h: + * gst-libs/gst/gl/meson.build: + * tests/examples/gl/gtk/3dvideo/mviewwidget.h: + gl: Generate enum GTypes via glib-mkenums + https://bugzilla.gnome.org/show_bug.cgi?id=797240 + https://bugzilla.gnome.org/show_bug.cgi?id=797144 + +2018-10-02 21:01:31 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglsl.c: + glsl: Fix error quark string to be more consistent + +2018-10-02 20:59:01 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglbasememory.c: + * gst-libs/gst/gl/gstglbasememory.h: + glbasememory: Fix error quark string and move documentation to the right place + +2018-10-01 17:51:26 -0700 Thiago Santos <thiagossantos@gmail.com> + + * gst-libs/gst/pbutils/encoding-profile.c: + encoding-profile: set_restriction should accept null as valid + It was checking for GST_IS_CAPS only and that would fail if the new + restriction caps was NULL and its documentation says it accepts NULL as + valid input. + +2018-10-01 19:13:39 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/pango/gstbasetextoverlay.c: + basetextoverlay: Append our rectangle to the upstream composition, not the other way around + Upstream is supposed to be painted first, and only then our rectangle. + +2018-10-01 18:27:22 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/pango/gstbasetextoverlay.c: + basetextoverlay: Minor cleanup of negotiation functions + +2018-10-01 12:17:42 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-overlay-composition.c: + video-overlay-composition: Handle miniobject writability correctly + By tracking parents and using the proper GstMiniObject API for detecting + writability instead of just the reference count. + https://bugzilla.gnome.org/show_bug.cgi?id=797230 + +2018-09-29 11:26:27 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideometa.c: + video: Fix annotations for gst_buffer_add_video_meta_full() + +2018-09-27 15:03:10 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/tag/gsttagdemux.c: + tagdemux: Use upstream GST_EVENT_STREAM_START if present + If we have an upstream GST_EVENT_STREAM_START, use that one instead + of creating a new one which could be completely different from the + upstream one and drop information (like the stream flags and stream + object). + Only create a new event if we don't already have one from upstream + https://bugzilla.gnome.org/show_bug.cgi?id=797215 + +2018-09-26 13:22:14 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + glviewconvert: wait and set the gl sync meta on buffers + This may be a cause of out-of-place frames when transforming multiview + buffers. + +2018-09-25 16:56:24 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + glviewconvert: Copy composition meta from the primary buffer to both outputs + Without this, glviewconvert (and thus glimagesink) will drop all overlay + composition metas. + +2018-09-25 16:56:07 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/gstglcolorconvert.c: + glcolorconvert: Don't copy overlay composition meta over to NULL outbufs + +2018-09-24 23:26:10 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixerbin.c: + glmixerbin: "latency" property on aggregator is uint64, not int64 + Also update the property description and range with aggregator's values. + +2018-09-24 19:25:28 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/audio/gstaudioutilsprivate.c: + * gst-libs/gst/audio/gstaudioutilsprivate.h: + gstaudioutilsprivate: Fix warnings while setting thread priority + Also use G_OS_WIN32 instead of _WIN32 for clarity. + +2018-04-28 14:50:11 +0100 Tim-Philipp Müller <tim@centricular.com> + + * common: + * configure.ac: + * gst-libs/gst/allocators/Makefile.am: + * gst-libs/gst/allocators/allocators-prelude.h: + * gst-libs/gst/allocators/meson.build: + * gst-libs/gst/app/Makefile.am: + * gst-libs/gst/app/app-prelude.h: + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/Makefile.am: + * gst-libs/gst/audio/audio-prelude.h: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/fft/Makefile.am: + * gst-libs/gst/fft/fft-prelude.h: + * gst-libs/gst/fft/meson.build: + * gst-libs/gst/gl/Makefile.am: + * gst-libs/gst/gl/android/Makefile.am: + * gst-libs/gst/gl/cocoa/Makefile.am: + * gst-libs/gst/gl/dispmanx/Makefile.am: + * gst-libs/gst/gl/eagl/Makefile.am: + * gst-libs/gst/gl/egl/Makefile.am: + * gst-libs/gst/gl/gbm/Makefile.am: + * gst-libs/gst/gl/gl-prelude.h: + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/gl/viv-fb/Makefile.am: + * gst-libs/gst/gl/wayland/Makefile.am: + * gst-libs/gst/gl/win32/Makefile.am: + * gst-libs/gst/gl/x11/Makefile.am: + * gst-libs/gst/pbutils/Makefile.am: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/pbutils/pbutils-prelude.h: + * gst-libs/gst/riff/Makefile.am: + * gst-libs/gst/riff/meson.build: + * gst-libs/gst/riff/riff-prelude.h: + * gst-libs/gst/rtp/Makefile.am: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtp/rtp-prelude.h: + * gst-libs/gst/rtsp/Makefile.am: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/rtsp/rtsp-prelude.h: + * gst-libs/gst/sdp/Makefile.am: + * gst-libs/gst/sdp/meson.build: + * gst-libs/gst/sdp/sdp-prelude.h: + * gst-libs/gst/tag/Makefile.am: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/tag/tag-prelude.h: + * gst-libs/gst/video/Makefile.am: + * gst-libs/gst/video/meson.build: + * gst-libs/gst/video/video-prelude.h: + * meson.build: + libs: fix API export/import and 'inconsistent linkage' on MSVC + For each lib we build export its own API in headers when we're + building it, otherwise import the API from the headers. + This fixes linker warnings on Windows when building with MSVC. + The problem was that we had defined all GST_*_API decorators + unconditionally to GST_EXPORT. This was intentional and only + supposed to be temporary, but caused linker warnings because + we tell the linker that we want to export all symbols even + those from externall DLLs, and when the linker notices that + they were in external DLLS and not present locally it warns. + What we need to do when building each library is: export + the library's own symbols and import all other symbols. To + this end we define e.g. BUILDING_GST_FOO and then we define + the GST_FOO_API decorator either to export or to import + symbols depending on whether BUILDING_GST_FOO is set or not. + That way external users of each library API automatically + get the import. + While we're at it, add new GST_API_EXPORT in config.h and use + that for GST_*_API decorators instead of GST_EXPORT. + The right export define depends on the toolchain and whether + we're using -fvisibility=hidden or not, so it's better to set it + to the right thing directly than hard-coding a compiler whitelist + in the public header. + We put the export define into config.h instead of passing it via the + command line to the compiler because it might contain spaces and brackets + and in the autotools scenario we'd have to pass that through multiple + layers of plumbing and Makefile/shell escaping and we're just not going + to be *that* lucky. + The export define is only used if we're compiling our lib, not by external + users of the lib headers, so it's not a problem to put it into config.h + Also, this means all .c files of libs need to include config.h + to get the export marker defined, so fix up a few that didn't + include config.h. + This commit depends on a common submodule commit that makes gst-glib-gen.mak + add an #include "config.h" to generated enum/marshal .c files for the + autotools build. + https://bugzilla.gnome.org/show_bug.cgi?id=797185 + +2018-09-21 22:31:33 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * meson.build: + meson: Specify encoding to UTF-8 when building with MSVC + Fix build on some non-US locale Windows systems + Error: + gst-plugins-base/tools/gst-device-monitor.c(278): error C2001 + https://bugzilla.gnome.org/show_bug.cgi?id=797186 + +2018-09-19 18:01:26 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix constant alpha enum value for constant alpha + +2018-09-21 11:29:42 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/gl/win32/Makefile.am: + * gst-libs/gst/gl/win32/gstglwindow_win32.c: + * gst-libs/gst/gl/win32/gstglwindow_win32.h: + * gst-libs/gst/gl/win32/win32_message_source.c: + * gst-libs/gst/gl/win32/win32_message_source.h: + gl/win32: Use g_io_channel_win32_new_messages() instead of our custom GSource + Removes some unneeded code duplication between here and GLib. + https://bugzilla.gnome.org/show_bug.cgi?id=797184 + +2018-09-20 14:04:39 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/vorbis/gstvorbisdec.c: + vorbisdec: Initialize decoder directly once we have the 3 headers + ... instead of waiting for the first non-header buffer. + Also drop non-identification headers arriving after initialization or + before the identification header. We don't do anything with them and + they would just accumulate. + https://bugzilla.gnome.org/show_bug.cgi?id=796980 + +2018-09-19 23:43:10 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/gl/generic/recordgraphic/main.cpp: + examples: gl: generic: recordgraphic: fix build with MSVC + +2018-06-27 10:34:09 +0200 Johan Bjäreholt <johanbj@axis.com> + + * gst/audioresample/gstaudioresample.c: + Removed unused GST_CAT_PERFORMANCE + https://bugzilla.gnome.org/show_bug.cgi?id=797175 + +2018-09-19 11:42:14 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + * meson_options.txt: + meson: add glib-checks option to disable API guards and such + We want this enabled by default, also in releases, but people + may want to disable this for performance-critical workloads or + on embedded devices. + +2018-09-19 11:34:37 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson_options.txt: + meson: fix missing closing bracket in option descriptions + +2018-09-19 11:16:17 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/gl/clutter/meson.build: + * tests/examples/gl/meson.build: + meson: add clutter gl examples to Meson build + +2018-09-19 10:52:40 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/gl/generic/generic.sln: + * tests/examples/gl/gtk/README: + * tests/examples/gl/gtk/gtk.sln: + * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.sln: + * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.sln: + * tests/examples/gl/qt/videooverlay/videooverlay.sln: + * tests/examples/gl/sdl/sdl.sln: + examples: gl: remove old and broken vs solution files + +2018-09-19 10:49:56 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/gl/generic/cube/meson.build: + * tests/examples/gl/generic/cubeyuv/meson.build: + * tests/examples/gl/generic/doublecube/meson.build: + * tests/examples/gl/generic/meson.build: + * tests/examples/gl/generic/recordgraphic/meson.build: + * tests/examples/gl/meson.build: + meson: add generic gl examples to Meson build + +2018-09-19 10:28:56 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Fix typo in property description + +2018-09-17 18:36:03 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/gl/egl/gsteglimage.c: + gl/egl: fix annotation for gst_egl_image_new_wrapped() + https://bugzilla.gnome.org/show_bug.cgi?id=797158 + +2018-09-17 17:45:42 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/gl/meson.build: + gl: meson: add missing headers for gir generations + There are a lot of symbols in GstGL-1.0.gir generated by automake that + are not when it is generated by meson, because a lot of headers were + not included in meson's gir generation. + https://bugzilla.gnome.org/show_bug.cgi?id=797158 + +2018-09-03 16:20:33 +1000 Matthew Waters <matthew@centricular.com> + + * docs/libs/Makefile.am: + * gst-libs/gst/gl/Makefile.am: + * gst-libs/gst/gl/meson.build: + gl/build: don't pass OpenGL headers to GIR + g-ir-scanner does not have a good enough C parser to parse the GL system + headers + +2018-09-03 16:06:45 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglshader.c: + glshader: macro out all the extremely similar uniform setting + +2018-09-14 14:12:40 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + glviewconvert: fix GEnumValue declaration + The purpose of value_name in GEnumValue structure is to express in + text format the name of the enum, not a description of the value, so + it can be use later for the gir file generation. + https://bugzilla.gnome.org/show_bug.cgi?id=797144 + +2018-09-13 20:02:43 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglmemory.c: + Revert "glmemory: Fix n_wrapped_pointers usage" + This reverts commit b1299c179bb185bc78df58dd3af9988e6e1f5490. + +2018-09-13 20:02:41 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + Revert "glupload: allow system memory for dmabuf in transform_caps" + This reverts commit d7eb48cce7ddb2b9f0d0bee84f66516c8113d167. + +2018-09-13 20:02:40 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + Revert "glupload: handle upload methods with different caps" + This reverts commit 87336b19577b7677c0574e8cb4c4914f6d934b81. + +2018-09-13 20:02:39 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/egl/gstegl.h: + * gst-libs/gst/gl/egl/gsteglimage.c: + * gst-libs/gst/gl/egl/gsteglimage.h: + Revert "gl/egl: Add gst_egl_image_from_dmabuf_direct() function" + This reverts commit 8f0d75d4d6f622483302e689653ec1d8c90bcaa4. + +2018-09-13 20:02:38 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + Revert "glupload: Implement direct dmabuf uploader" + This reverts commit 3b1ae6262b99b45095c6aca02af0d7bbf88cfbbc. + +2018-09-13 20:02:37 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + Revert "glupload: try to use the last method after reconfigure" + This reverts commit c1053e17d58c44f5509aaf9949c02b82332cb193. + +2018-09-13 20:02:34 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstgluploadelement.c: + Revert "gluploadelement: try to avoid dropping buffers" + This reverts commit 75f2532da784731190d44f118f01a12841ecb683. + +2018-09-13 20:34:08 -0300 Marcos Kintschner <marcos.ktn@gmail.com> + + * ext/opus/gstopusenc.c: + opusenc: fix segmentation fault at x86 version + The argument 0x0 is interpreted by the x86 compiler as a 32-bit int, but + it is consumed as a 64-bit uint causing a segmentation fault. We need to + explicit cast it to guint64 in order for the va_list to be built correctly. + https://bugzilla.gnome.org/show_bug.cgi?id=797092 + +2018-07-04 09:29:57 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * ext/gl/gstgluploadelement.c: + gluploadelement: try to avoid dropping buffers + Without this, a buffer is dropped if glupload indicates that it is + necessary to reconfigure. + Avoid this by explicitly reconfiguring immediately and uploading the buffer + again. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-04 09:17:11 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: try to use the last method after reconfigure + Reconfigure will trigger a set_caps which clears the upload method. + Remember the method in this case and start with it. + Wrap around once to try all methods if necessary. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-05 10:17:27 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Implement direct dmabuf uploader + The idea is that some GPUs (like the Vivante series) can actually + perform the YUV->RGB conversion internally, so no custom conversion + shaders are needed. To make use of this feature, we need an additional + uploader that can import DMABUF FDs and also directly pass the pixel + format, relying on the GPU to do the conversion. + Based on patches from Nicolas Dufresne <nicolas.dufresne@collabora.com> and + Carlos Rafael Giani <dv@pseudoterminal.org>. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-09-10 23:28:30 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/egl/gstegl.h: + * gst-libs/gst/gl/egl/gsteglimage.c: + * gst-libs/gst/gl/egl/gsteglimage.h: + gl/egl: Add gst_egl_image_from_dmabuf_direct() function + The colorspace conversion happens during the upload so the necessary hints + must be provided to ensure that the conversion works correctly. + At least the Mesa Intel driver will create a texture without error but + produces an incorrect result. Use eglQueryDmaBufModifiersEXT() to check if + non-external upload is supported for the given format. + Based on a patch from Carlos Rafael Giani <dv@pseudoterminal.org>. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-04 09:21:00 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: handle upload methods with different caps + If a upload method is selected then use it exclusively in transform_caps(). + Also, reconfigure if the current caps don't match the current upload + method. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-07-05 15:17:30 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst-libs/gst/gl/gstglupload.c: + glupload: allow system memory for dmabuf in transform_caps + This should not be necessary, but currently not all plugins that provide + dmabuf memory announce this with caps features, e.g. v4l2. + The static caps already contain the system memory. It didn't break before + because other upload methods provide the necessary transformation. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2017-06-07 18:00:08 +0200 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglmemory.c: + glmemory: Fix n_wrapped_pointers usage + gst_gl_memory_setup_buffer() was not properly using the number + of pointers to wrapped. This also fixes the validation, as we + only support 1 wrapper per view, or num_planes * views wrapper. + https://bugzilla.gnome.org/show_bug.cgi?id=783521 + +2018-09-07 22:15:35 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: Delete the link before pushing + The gst_video_decoder_clip_and_push_buf() now drops the internal stream + lock while pushing. This means, the output_queued list could be modififed + during that time. To make the code safe again, we delete the link before + pushing the data. The walk pointer will later be updated with the list + head, which makes it safe in case the list was modififed. + https://bugzilla.gnome.org/show_bug.cgi?id=715192 + +2018-09-11 00:41:59 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/audio/gstaudiosink.c: + * gst-libs/gst/audio/gstaudiosrc.c: + * gst-libs/gst/audio/gstaudioutilsprivate.c: + * gst-libs/gst/audio/gstaudioutilsprivate.h: + gstaudiosrc/sink: Set audio ringbuffer thread priority + On Windows, the ringbuffer thread function must have the "Pro Audio" + priority set, otherwise it sometimes doesn't get scheduled for + 200-300ms, which will immediately cause an underrun unless you set + a very high latency-time and buffer-time. + This has no compile-time deps since it tries to load avrt.dll at + runtime to set the thread priority. + +2018-09-10 22:22:16 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * ext/vorbis/gstivorbisdec.c: + * ext/vorbis/meson.build: + * meson_options.txt: + meson: Add an option for the 'Tremor' Vorbis implementation + It makes sense to control it explicitly to allow us to enable it on + platforms that don't have hardware floating-point, and to allow people + to enable the 'vorbis' plugin without having to also provide the + Tremor dependency which is useless on most devices. + +2018-09-05 18:34:06 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: check for EGL headers before allowing use of EGL + For distros that provide headers in seperate dev/devel packages this + won't build egl support without the necessary EGL headers. + +2018-09-04 11:55:03 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/gstdiscoverer.c: + discoverer: Consider closedcaption/ as subtitles and improve subtitle caps detection + Generally all subtitle/, subpicture/, text/, closedcaption/ and + application/x-subtitle caps instead of hardcoding a small set of caps. + https://bugzilla.gnome.org/show_bug.cgi?id=797072 + +2013-11-25 20:49:50 +0400 Alexey Chernov <achernov@neosphere.com> + + * gst-libs/gst/video/gstvideoencoder.c: + videoencoder: Release STREAM_LOCK during gst_pad_push() + Release STREAM_LOCK before calling gst_pad_push() and take it + back afterward so that upstream isn't blocked while output + buffer is being pushed downstream. + https://bugzilla.gnome.org/show_bug.cgi?id=715192 + +2013-11-25 20:45:18 +0400 Alexey Chernov <achernov@neosphere.com> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: Release STREAM_LOCK during gst_pad_push() + Release STREAM_LOCK before calling gst_pad_push() and take it + back afterward so that upstream isn't blocked while output + buffer is being pushed downstream. + https://bugzilla.gnome.org/show_bug.cgi?id=715192 + +2018-08-31 14:36:30 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/allocators/meson.build: + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/fft/meson.build: + * gst-libs/gst/gl/meson.build: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/riff/meson.build: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/sdp/meson.build: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/video/meson.build: + * meson.build: + meson: Maintain macOS ABI through dylib versioning + Requires Meson 0.48, but the feature will be ignored on older versions + so it's safe to add it without bumping the requirement. + Documentation: + https://github.com/mesonbuild/meson/blob/master/docs/markdown/Reference-manual.md#shared_library + +2018-08-31 18:14:13 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: fix gbm option to enable rather than disable + This change matches what the other winsys/platforms are doing + +2018-08-31 00:15:35 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: add Android build definitions + +2018-08-02 15:59:20 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/meson.build: + * gst-libs/gst/gl/meson.build: + gl/meson: add build for iOS + +2018-07-02 23:48:04 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * gst-libs/gst/video/video-info.h: + video: Add GST_VIDEO_INFO_FIELD_RATE_N() macro + Add a new macro that gives you the rate of the fields, which is the + numerator of the field-rate for ALTERNATE interlacing video and FPS for + progressive and other interlacing formats. + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-07-06 15:48:35 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * gst-libs/gst/video/gstvideodecoder.c: + * gst-libs/gst/video/gstvideodecoder.h: + video: Add gst_video_decoder_set_interlaced_output_state() + Add a variant of gst_video_decoder_set_output_state() that allows the user + to pass an interlacing mode as well. This is needed to ensure that + gst_video_info_set_interlaced_format() is used instead so that + GstVideoInfo.size is correctly initialized. + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-07-02 23:48:04 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * gst-libs/gst/video/video-info.c: + * gst-libs/gst/video/video-info.h: + video: Add GST_VIDEO_INFO_FIELD_HEIGHT() macro + Add a new macro that gives you the height of a field. It returns the + height of the full frame unless split-field (alternate) interlacing is + in use. Also GST_VIDEO_INFO_COMP_HEIGHT macro now uses this new macro to + get the height for its calculation. + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-07-02 17:51:06 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * tests/check/libs/video.c: + test: Ensure gst_video_info_set_format() calls succeed + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-07-02 16:48:30 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * gst-libs/gst/video/video-info.c: + * gst-libs/gst/video/video-info.h: + * tests/check/libs/video.c: + video: Add gst_video_info_set_interlaced_format() + Add a helper to set the interlacing mode while creating the GstVideoInfo + in addition to format and resolution. Using this helper will ensure that + size is correctly calculated for split-field interlacing mode. + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-05-04 16:16:28 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * gst-libs/gst/video/video-info.c: + * gst-libs/gst/video/video-info.h: + * tests/check/libs/video.c: + video: Add GST_VIDEO_INTERLACE_MODE_ALTERNATE + Add a new interlace mode enum to represent buffers containing a single + field of an interlaced video in a buffer. The name is based on the + equivalent video format in the V4L2 API, V4L2_FIELD_ALTERNATE: + https://01.org/linuxgraphics/gfx-docs/drm/media/uapi/v4l/field-order.html + Since caps fields are optional, we also introduce a new caps feature, + "format:Interlaced" that always goes with "alternate" interlace mode to ensure + that caps for this incompatible format are incompatible with other interlaced + and progressive video caps. + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-05-04 15:19:11 +0200 Zeeshan Ali <zeenix@collabora.co.uk> + + * gst-libs/gst/video/video-frame.h: + video: Add format for single fields of interlaced video in a buffer + https://bugzilla.gnome.org/show_bug.cgi?id=796106 + +2018-08-29 10:38:32 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglbasefilter.c: + doc: glbasefilter: Add missing Since for gst_gl_base_filter_find_gl_context() + +2018-08-16 19:37:33 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/vorbis/gstvorbisdec.c: + vorbisdec: Always handle in-band header packets once the first non-header packet arrives + And clean up any old pending headers if we receive a new identification + header, or if we receive a new set of headers via caps. + Otherwise it might happen that we receive one or more header but not + all, and then afterwards all headers again, and libvorbis does not like + getting headers passed multiple times and would error out. + It only makes sense to pass the very latest headers to the decoder at + the time we can actually make use of them. + https://bugzilla.gnome.org/show_bug.cgi?id=796980 + +2018-08-28 13:35:28 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/gl/meson.build: + meson: Always define gstgl_dep to a valid dependency object + Fixes configure error when gl support was auto-detected as not being + available: + ext/gl/meson.build:50:20: ERROR: Unknown variable "gstgl_dep". + +2017-09-21 14:03:28 +0900 Yuji Kuwabara <HHG01200@nifty.ne.jp> + + * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: + gl/dispmanx: fix removing foreign window handle + gst_gl_window_dispmanx_egl_set_window_handle() removes native window handle + (dispmanx element), regardless it was foreign window handle + (set via gst_video_overlay_set_window_handle()) or not. + This problem prevents glimagesink reusable. + (PAUSED -> READY -> PAUSED does not work) + This patch corrects it comparing the native window handle with foreign window + handle. This behavior is same as gst_gl_window_dispmanx_egl_close(). + https://bugzilla.gnome.org/show_bug.cgi?id=785199 + +2018-08-28 14:31:43 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: + gl/wayland: correctly use the set_render_rectangle size first + https://bugzilla.gnome.org/show_bug.cgi?id=789384 + +2017-10-24 17:39:50 +1030 memeka <mihailescu2m@gmail.com> + + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: + * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: + gl/wayland: add preferred window size, and set it according to video size + The glimagesink wayland backend lacks the implementation of + gst_gl_window_wayland_egl_set_preferred_size. Because of this, glimagesink windows on + wayland are created with a fixed window size of 320x240. + [Matthew Waters]: gst-indent sources + https://bugzilla.gnome.org/show_bug.cgi?id=789384 + +2018-08-27 15:41:31 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/pango/gstbasetextoverlay.c: + * ext/pango/gstbasetextoverlay.h: + * ext/pango/gstclockoverlay.c: + * ext/pango/gsttextrender.c: + * ext/pango/gsttextrender.h: + * ext/pango/gsttimeoverlay.c: + pango: Create one context per instance and remove class mutex + PangoCairo is thread-safe as long as the context and fontmap are not + shared between threads. Previously each subclass had its own context and + a class mutex for this reason, but apart from hurting performance this + was also not completely safe yet: the same fontmap might've been used by + different classes from different threads as the thread-default fontmap + (at time of class initialization) was used. + +2018-08-27 11:07:47 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/ogg/gstoggstream.c: + oggdemux: Ensure that no pad values are set when setting up the mapper + Otherwise we might have arbitrary values set that are used later and can + cause undefined behaviour, as found by ossfuzz. + +2018-08-26 01:52:41 +0200 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglcolorscale.c: + glcolorscale: fix compiler warning + gstglcolorscale.c(173): warning C4098: 'gst_gl_colorscale_gl_stop': 'void' function returning a value + +2018-08-26 01:41:42 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/gstglbasefilter.h: + gl: use right export decorator + +2018-08-26 01:40:57 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/audio/audio.h: + audio: use right export decorator + +2018-08-18 12:37:48 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/meson.build: + * tests/examples/meson.build: + meson: gl: return not-found dependency instead of disabler if opengl is disabled + This allows consumers of the gstgl dependency where gstgl is optional + to do things like: + config_data.set('HAVE_GST_GL', gstgl_dep.found()) + deps = [gstvideo_dep, gstgl_dep] + meaning they can still use the dep unconditionally. With the + disabler we would just disable the whole target even if the + gstgl part was an optional extra. We can add an option to + dependency() later to let users/consumers of the dep decide + if they want a not-found dependency or a disabler instead. + +2018-08-17 02:59:14 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/gl/meson.build: + meson: host_system is 'ios' when building for iOS + The cross file sets this value, and we use 'ios' in Cerbero. + +2018-06-16 14:27:20 +0100 Philippe Normand <philn@igalia.com> + + * gst/playback/gstplaysink.c: + playsink: audio visualization support fixes + The queue between the audiotee and the audio chain wasn't properly added to the + bin, leading to streamsynchronizer locks on EOS. Reconfiguration of the + visualization chain wasn't working as expected either. It is now possible to + dynamically enable/disable the audio visualization support. + https://bugzilla.gnome.org/show_bug.cgi?id=796553 + +2018-08-16 18:03:37 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Also run the audio-specific caps fixation for audio aggregator subclasses that can't convert + +2018-08-16 17:54:00 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Fixate to some meaningful values if no sinkpad is configured yet + The default caps fixation code would select a rate of 1 for example, + which is not really ideal. + +2018-08-16 17:07:06 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Define crossfade-ratio to have range [0.0,1.0] + Previously negative values had the same effect as 0.0, which was + confusing. + https://bugzilla.gnome.org/show_bug.cgi?id=796845 + +2018-08-16 11:35:33 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/meson.build: + meson: remove obsolete FIXME + +2018-08-16 11:08:38 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/meson.build: + meson: gl: find libjpeg via pkg-config + This effectively (but optionally) requires libjpeg-turbo which + ships with a .pc file and is what pretty much everyone these days + uses anyway for libjpeg, so shouldn't be a problem hopefully. + https://bugzilla.gnome.org/show_bug.cgi?id=796947 + +2018-08-16 10:58:47 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/meson.build: + * meson.build: + meson: move gmodule check to top-level + It's also needed by the generic/states test and the variable + is currently checked as part of the opengl lib tests so wouldn't + be available if opengl was disabled. + +2018-08-16 10:28:48 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/meson.build: + * gst-libs/gst/gl/meson.build: + * meson_options.txt: + meson: add option for opengl and the misc optional gl plugin deps + Finer control over the opengl integration library dependencies + is already implemented via the gl_api, gl_platform, and gl_winsys + options. + https://bugzilla.gnome.org/show_bug.cgi?id=796947 + +2018-08-16 10:13:39 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson_options.txt: + meson: options: move gl options into separate section + +2018-08-16 10:02:42 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Make sure to hold object lock while iterating sink pads + They might otherwise just change while we iterate. + +2018-08-13 14:50:09 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Properly propagate caps negotiation failures + Otherwise we'll end up doing a division by zero when clipping buffers, + and might even accept buffers for which we don't know the caps. + https://bugzilla.gnome.org/show_bug.cgi?id=796951 + +2018-04-28 14:50:11 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/audio/audio-quantize.c: + * gst-libs/gst/audio/gstaudiobasesink.c: + * gst-libs/gst/audio/gstaudiometa.c: + * gst-libs/gst/audio/gstaudioringbuffer.c: + * gst-libs/gst/audio/gstaudiosink.c: + * gst-libs/gst/audio/gstaudiosrc.c: + * gst-libs/gst/gl/egl/gstegl.c: + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: + * gst-libs/gst/pbutils/gstpluginsbaseversion.c: + * gst-libs/gst/rtp/gstrtcpbuffer.c: + * gst-libs/gst/rtp/gstrtpbasedepayload.c: + * gst-libs/gst/rtp/gstrtpbuffer.c: + * gst-libs/gst/rtp/gstrtphdrext.c: + * gst-libs/gst/rtp/gstrtppayloads.c: + * gst-libs/gst/rtsp/gstrtspmessage.c: + * gst-libs/gst/rtsp/gstrtsprange.c: + * gst-libs/gst/rtsp/gstrtsptransport.c: + * gst-libs/gst/rtsp/gstrtspurl.c: + * gst-libs/gst/sdp/gstmikey.c: + * gst-libs/gst/tag/gsttageditingprivate.c: + * gst-libs/gst/video/convertframe.c: + * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: + * gst-libs/gst/video/gstvideometa.c: + * gst-libs/gst/video/gstvideopool.c: + * gst-libs/gst/video/gstvideotimecode.c: + * gst-libs/gst/video/video-dither.c: + * gst-libs/gst/video/video-event.c: + * gst-libs/gst/video/video-tile.c: + gst-libs: include config.h in all source files + This will be needed later when we get our export define from config.h + +2018-04-29 00:18:58 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/pbutils/gstdiscoverer-types.c: + * gst-libs/gst/pbutils/gstdiscoverer.h: + * gst-libs/gst/pbutils/pbutils-prelude.h: + * gst-libs/gst/rtsp/gstrtsptransport.c: + * gst-libs/gst/rtsp/gstrtsptransport.h: + * gst-libs/gst/rtsp/rtsp-prelude.h: + pbutils, rtsp: fix deprecation guards + Function body must only be removed if compiling with + GST_REMOVE_DEPRECATED. Function declaration must not + be skipped if GST_DISABLE_DEPRECATED is defined, since + it contains our export decorator and we wouldn't export + the symbol as public API any more then since we compile + with GST_DISABLE_DEPRECATED. + +2018-04-28 13:41:11 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/check/Makefile.am: + tests: remove unused build definition + +2018-08-12 18:12:35 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + * meson_options.txt: + * tests/meson.build: + meson: add build options to disable tools and tests + +2018-08-12 13:19:44 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/tag/lang-tables.dat: + * gst-libs/gst/tag/mklangtables.c: + tag: add license to generated backup language name table and update + It's LGPL same as iso-codes + +2018-08-12 12:55:00 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/tag/meson.build: + * meson_options.txt: + meson: use iso-codes in gsttag if available + +2018-08-12 00:21:58 +0100 Tim-Philipp Müller <tim@centricular.com> + + * pkgconfig/meson.build: + meson: add zlib to gstreamer-1.0.pc if found + https://bugzilla.gnome.org/show_bug.cgi?id=793995 + +2018-08-12 00:13:31 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + * meson_options.txt: + meson: add options to disable gobject cast checks and glib asserts + and define G_DISABLE_DEPRECATED for development versions, + like we do in autotools. + +2018-08-12 00:09:20 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson_options.txt: + meson: update available gl_winsys in options list + +2018-08-11 18:49:10 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/tag/meson.build: + meson: tag: check for zlib and support compressed id3v2 tag if found + https://bugzilla.gnome.org/show_bug.cgi?id=793995 + +2018-08-10 22:44:12 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglviewconvert.c: + glviewconvert: fix output when a transformation matrix is used + If we have a transformation matrix, we have no idea where in the output + the video is going to endup. It might also be different and not cover + the entire output. + We need to clear the output to remove any previous data in the backing + texture. + Found from + https://stackoverflow.com/questions/51707229/python-gstreamer-for-dynamic-control-of-element-properties + +2018-08-10 12:43:38 +0100 Bastian Köcher <gnome@kchr.de> + + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/video/meson.build: + meson: fix install dir for generated header files + Nixos installs into a non-standard includedir, so need + to take account of the 'includedir' option instead of + just hard-coding 'include' here. + https://bugzilla.gnome.org/show_bug.cgi?id=794856 + +2018-08-08 19:18:22 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tools/gst-play.c: + gst-play: use Fisher-Yates shuffle for shuffling the playlist + +2018-08-08 12:44:55 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/tag/gsttagdemux.c: + tagdemux: Propagate flow returns from gst_type_find_helper_get_range() properly + Instead of considering every failed typefinding as an error, even in + case of e.g. GST_FLOW_FLUSHING. + +2018-08-06 14:17:09 -0400 Thibault Saunier <tsaunier@igalia.com> + + * gst-libs/gst/rtsp/Makefile.am: + rtsp: Include gstreamer-base gir dir in autotools + +2018-08-03 19:06:00 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: fix macos additions for non-macos platforms + "gst-libs/gst/gl/meson.build:655:20: ERROR: Unknown variable "quartzcore_dep"." + +2017-07-21 16:59:28 +1000 Alessandro Decina <alessandro.d@gmail.com> + + * ext/gl/meson.build: + * gst-libs/gst/gl/meson.build: + * meson.build: + gl/meson: OSX support (CGL and Cocoa) + [Matthew Waters]: minor additions such as -fobjc-arc and relying on + dependency rather than cc.find_library() + +2018-08-01 13:59:45 +0200 Norbert Wesp <n.wesp@phytec.de> + + * gst-libs/gst/gl/egl/gstgldisplay_egl.c: + * m4/gst-gl.m4: + Add GBM_CFLAGS and define EGL_PLATFORM_GBM_MESA + Building an image with yocto for an 'am335x' processor will fail, + because 'gbm.h' can not be found and 'EGL_PLATFORM_GBM_MESA' is not defined. + So simply adding define of 'EGL_PLATFORM_GBM_MESA' in 'gstgldisplay_egl.c' + and adding 'GBM_CFLAGS' in 'gst-gl.m4' to get rid of this errors and complete + a full build process. + ERRORs were: + ----------- + gst-plugins-base-1.14.1/gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h:24:10: + fatal error: gbm.h: No such file or directory + #include <gbm.h> + ^~~~~~~ + gst-plugins-base-1.14.1/gst-libs/gst/gl/egl/gstgldisplay_egl.c:157:39: + error: 'EGL_PLATFORM_GBM_MESA' undeclared (first use in this function); + did you mean 'EGL_PLATFORM_WAYLAND'? + ret = _gst_eglGetPlatformDisplay (EGL_PLATFORM_GBM_MESA, (gpointer) display, + ^~~~~~~~~~~~~~~~~~~~~ + https://bugzilla.gnome.org/show_bug.cgi?id=796885 + +2018-07-31 22:41:16 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/opus/gstopusdec.c: + * ext/opus/gstopusdec.h: + opusdec: Add property to control phase inversion + When enabled, phase-inversion slightly increase stereo quality, but + produce a stream that when downmixed to mono will present important + audio distortion. This patch disables this feature by default and + introduce a property that let user enable it if desired. + https://bugzilla.gnome.org/show_bug.cgi?id=791771 + +2018-07-30 10:03:11 +0300 freyr <ciceromarcus@yandex.ru> + + * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c: + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: + gl/gbm: allow headless mode + Don't require an output for the GBM backend. + https://bugzilla.gnome.org/show_bug.cgi?id=794716 + +2018-07-19 11:16:05 +0200 Carlos Rafael Giani <dv@pseudoterminal.org> + + * m4/gst-gl.m4: + gl: Add switches for explicitely enabling/disabling PNG and JPEG support + https://bugzilla.gnome.org/show_bug.cgi?id=796833 + +2018-07-19 10:30:54 +0200 Carlos Rafael Giani <dv@pseudoterminal.org> + + * m4/gst-gl.m4: + gl: Add switch for explicitely enabling/disabling GBM support + https://bugzilla.gnome.org/show_bug.cgi?id=796833 + +2018-07-31 23:32:42 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * meson.build: + meson: Fix build with x11 dependency is disabled + gtk_x11_dep is used unconditionally in tests/icles/meson.build + +2018-07-31 13:28:59 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * ext/cdparanoia/meson.build: + meson: Fix detection of cdparanoia library + Without this the pkg-config file is required when the plugin is enabled. + +2018-07-27 15:15:34 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/tag/gsttagdemux.c: + tagdemux: Properly propagate gst_pad_pull_range() errors + And don't consider FLUSHING an actual error, just stop in that case. + https://bugzilla.gnome.org/show_bug.cgi?id=796883 + +2018-07-25 07:35:05 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * docs/libs/meson.build: + * ext/alsa/meson.build: + * ext/cdparanoia/meson.build: + * ext/libvisual/meson.build: + * ext/meson.build: + * ext/ogg/meson.build: + * ext/opus/meson.build: + * ext/pango/meson.build: + * ext/theora/meson.build: + * ext/vorbis/meson.build: + * gst-libs/gst/meson.build: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/tag/meson.build: + * gst/meson.build: + * meson.build: + * meson_options.txt: + * sys/meson.build: + * sys/xvimage/meson.build: + * tests/examples/gl/sdl/meson.build: + * tests/examples/overlay/meson.build: + * tests/meson.build: + meson: Add feature options for all plugins + GL dependency detection is still automagic. + https://bugzilla.gnome.org/show_bug.cgi?id=795107 + +2018-07-26 00:20:02 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Don't leak all buffers while crossfading and not all pads are crossfading + +2018-07-25 15:03:59 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglfilterbin.c: + * ext/gl/gstglmixerbin.c: + * ext/gl/gstglsinkbin.c: + * ext/gl/gstglsrcbin.c: + gl: Also don't leak floating references to elements set via properties + Fixup for 58ac815eae6ed468d1db60a54a1bd34d6324c28c. Floating references + are such a mess. + +2018-07-25 14:23:36 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglfilterbin.c: + * ext/gl/gstglmixerbin.c: + * ext/gl/gstglsinkbin.c: + * ext/gl/gstglsrcbin.c: + gl: Don't steal callers reference when setting non-floating elements via properties + Introduced by fbef9220d3dc2f785081c4766901aab2ecfaed10. The code there + is only correct for elements we get from signals. + +2018-07-24 15:09:25 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio-buffer.c: + audio-buffer: fix typo in assignment that causes buggy behavior + +2018-07-20 16:25:02 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/blend.c: + compositor: Use 255 as maximum alpha instead of 256 + 255 will easily become 0 in the blending function as they expect + the maximum value to be 255. + Can be reproduce with + gst-launch-1.0 videotestsrc pattern=ball ! c.sink_0 \ + videotestsrc pattern=snow ! c.sink_1 \ + compositor name=c \ + sink_0::zorder=0 sink_1::zorder=1 sink_0::crossfade-ratio=0.5 \ + background=black ! \ + videoconvert ! xvimagesink + crossfade-ratio +/- 0.001 makes it work correctly and the same happens + at e.g. 0.25, 0.75, N*0.0625 + https://bugzilla.gnome.org/show_bug.cgi?id=796846 + +2018-02-14 13:55:06 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/gstaudiodecoder.c: + gstaudiodecoder: take into account GstAudioMeta::samples on the output buffers + This is useful if the output buffers are planar and have extra padding + on each plane, in which case size/bpf does not represent the number of + valid samples. + https://bugzilla.gnome.org/show_bug.cgi?id=705977 + +2018-02-14 13:11:37 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/gstaudiodecoder.c: + gstaudiodecoder: do not aggregate output if buffers are planar + Aggregation will break the layout, as it concatenates buffers, + and fixing it here would be much more inefficient than configuring + the actual decoder implementation to output larger buffers. + https://bugzilla.gnome.org/show_bug.cgi?id=705977 + +2018-07-21 09:13:27 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * tests/examples/gl/gtk/3dvideo/meson.build: + * tests/examples/gl/gtk/filtervideooverlay/meson.build: + * tests/examples/gl/gtk/fxtest/meson.build: + * tests/examples/gl/gtk/meson.build: + * tests/examples/gl/gtk/switchvideooverlay/meson.build: + meson: gl/gtk tests: Add video_dep to the helper + The gtk helper library includes videooverlay.h hence must have a + dependency on video_dep, this allow removing the dep from the dependant + executables. + +2018-07-21 11:12:09 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/gl/meson.build: + meson: examples: fix wrong keyword for gtk examples + +2018-07-20 22:07:04 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * tests/examples/gl/gtk/3dvideo/meson.build: + * tests/examples/gl/gtk/filternovideooverlay/meson.build: + * tests/examples/gl/gtk/filtervideooverlay/meson.build: + * tests/examples/gl/gtk/fxtest/meson.build: + * tests/examples/gl/gtk/meson.build: + * tests/examples/gl/gtk/switchvideooverlay/meson.build: + * tests/examples/gl/meson.build: + meson: Build gl/gtk examples + +2018-01-05 16:07:54 +0900 Justin Kim <justin.kim@collabora.com> + + * gst/audiorate/gstaudiorate.c: + * gst/audiorate/gstaudiorate.h: + * tests/check/Makefile.am: + * tests/check/elements/audiorate.c: + audiorate: accumulate offset by time diff + The fomula, 'offset = time / rate', is correct only if + the rate is never changed. When the rate is changed, + the offset should be re-calculated based on the previous + offset. + https://bugzilla.gnome.org/show_bug.cgi?id=791269 + +2018-07-18 19:53:26 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * sys/xvimage/xvimage.c: + * sys/xvimage/xvimagesink.c: + xvimage: Fix symbol redefine build error + https://bugzilla.gnome.org/show_bug.cgi?id=796827 + +2018-07-17 11:43:40 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Only offer DMABuf caps feature if using EGL + This was miss-leading VAAPI which was not forcing linear back buffers, + would still export DMABuf. That caused bad rendering as the buffers are + tiled and most likely compressed. + https://bugzilla.gnome.org/show_bug.cgi?id=796822 + +2018-07-18 20:05:26 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/compositor/compositor.c: + compositor: Update conversion info in property setter + ... not in getter. Otherwise, video-converter will not be updated + with new width/height + https://bugzilla.gnome.org/show_bug.cgi?id=796828 + +2016-09-01 15:14:37 +0900 Wonchul Lee <wonchul.lee@collabora.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: Rename urisourcebin variable and query functions + https://bugzilla.gnome.org/show_bug.cgi?id=770693 + +2018-05-11 20:25:34 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: Set streams-aware flag + https://bugzilla.gnome.org/show_bug.cgi?id=777213 + https://bugzilla.gnome.org/show_bug.cgi?id=775132 + +2018-07-16 16:01:34 +0200 Iñigo Huguet <inigohuguet@fanamoel.com> + + * gst-libs/gst/gl/egl/gsteglimage.c: + * gst-libs/gst/gl/gstglconfig.h.meson: + * gst-libs/gst/gl/meson.build: + * m4/gst-gl.m4: + gl/build: fixed failed compilation due to missing EGLuint64KHR typedef + [Matthew Waters]: add meson differences + https://bugzilla.gnome.org/show_bug.cgi?id=796820 + +2018-07-17 11:51:49 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + Revert "glupload: Only offer DMABuf caps feature if using EGL" + This reverts commit bc9afe724360cbbe5489ca1e1ea44f077810aca4. + +2018-07-17 11:43:40 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/gl/gstglupload.c: + glupload: Only offer DMABuf caps feature if using EGL + This was miss-leading VAAPI which was not forcing linear back buffers, + would still export DMABuf. That caused bad rendering as the buffers are + tiled and most likely compressed. + +2018-07-16 17:09:02 -0400 Olivier Crête <olivier.crete@collabora.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + docs: libs: Add new symbols to section file + +2018-07-16 13:12:50 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * gst/rawparse/gstrawvideoparse.c: + rawvideoparse: fix typo in 'plane-offsets' description + The property is 'plane-offsets', not 'plane-offset' so the example in + the description was wrong. + https://bugzilla.gnome.org/show_bug.cgi?id=796817 + +2018-07-09 14:03:04 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: Don't always drain on gaps/discont + V4L2 and OMX decoder don't support draining and keeping reference + frames. As a side effect, these decoder just stops working on + gaps/discont. When this drain was introduced, the commit stated that + this was for TRICKMODE_KEY_UNITS, so only drain if running in this mode. + https://bugzilla.gnome.org/show_bug.cgi?id=796771 + +2018-02-13 15:04:04 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/libs/audio.c: + tests: audio: test gst_audio_buffer_reorder_channels() also with non-interleaved buffers + https://bugzilla.gnome.org/show_bug.cgi?id=796743 + +2018-02-13 13:24:32 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio-channels.c: + libs: audio: implement planar buffer support in gst_audio_buffer_reorder_channels() + https://bugzilla.gnome.org/show_bug.cgi?id=796743 + +2018-02-12 14:45:44 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/audiorate/gstaudiorate.c: + audiorate: fix support for non-interleaved buffers + https://bugzilla.gnome.org/show_bug.cgi?id=796741 + +2018-05-18 16:22:47 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio.c: + * gst-libs/gst/audio/audio.h: + libs: audio: add a new gst_audio_buffer_truncate() function + Essentially this moves the truncation logic out of gst_audio_buffer_clip() + so that it can be used in other places, like in audiorate. + https://bugzilla.gnome.org/show_bug.cgi?id=796740 + +2018-05-18 16:22:32 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/libs/audio.c: + tests: audio: add unit tests for planar audio support in gst_audio_buffer_clip() + https://bugzilla.gnome.org/show_bug.cgi?id=796740 + +2018-02-08 14:34:23 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio.c: + libs: audio: implement support for non-interleaved audio in gst_audio_buffer_clip() + https://bugzilla.gnome.org/show_bug.cgi?id=796740 + +2018-07-12 13:13:04 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstgluploadelement.c: + gluploadelement: also set the context in decide_allocation + If downstream doesn't perform allocation queries, the context would + never be set and criticals would occur. + +2018-07-12 12:48:39 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix default placement when different sized output + i.e. when expanding from 320x240 to 800x600, the resulting frame should + appear in the top left corner, not the middle. + https://bugzilla.gnome.org/show_bug.cgi?id=794401 + +2018-04-25 16:36:21 +0200 Daniel Klamt <d.klamt@pengutronix.de> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Moves the objects to zero on z axis + Matches the output from a similar glimagesink pipeline when + rotating from an upstream gltransformation passed through + the affine transformation meta with xpos/ypos being set. + https://bugzilla.gnome.org/show_bug.cgi?id=794401 + +2018-07-11 18:29:52 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/pipelines/simple-launch-lines.c: + tests: simple-launch-lines: fixate audioconvert caps now that the layout is also convertable + Because audioconvert can now convert between interleaved and non-interleaved, + this pipeline fails on the upstream capsfilter not being able to fixate its + output caps. This is unavoidable. + +2018-02-12 15:33:49 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/adder/gstadder.c: + adder: remove non-interleaved layout from caps + adder needs more than just trivial work to support planar buffers properly + because it currently reads sub-buffers from GstCollectPads in order for all + of them to have matching sizes. In planar mode, this means it would truncate + some channels and mix them up in strange ways. It only works if all input + buffers in all sink pads have matching sizes. + +2018-02-07 18:17:07 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/audioresample/gstaudioresample.c: + audioresample: implement support for non-interleaved buffers + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-02-09 17:07:48 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/audioconvert.c: + tests: audioconvert: add tests for planar audio + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-02-09 14:29:57 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/audioconvert.c: + tests: audioconvert: add support for specifying the layout on tests + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-02-01 18:08:51 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/audioconvert/gstaudioconvert.c: + audioconvert: implement support for converting between interleaved and non-interleaved layouts + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-02-01 17:00:06 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio-converter.c: + libs: audio-converter: complete code to support non-interleaved audio buffers + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-02-01 13:23:53 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio-resampler.c: + libs: audio-resampler: add support for consuming non-interleaved input buffers + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-01-31 19:28:57 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/audio-channel-mixer.c: + libs: audio-channel-mixer: add support for non-interleaved audio buffers + https://bugzilla.gnome.org/show_bug.cgi?id=705986 + +2018-07-11 14:48:57 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/Makefile.am: + tests/check/Makefile.am: link audiotestsrc test with libgstaudio + Needed for the new planar audio unit test + +2018-01-31 17:41:32 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/audiotestsrc.c: + tests: audiotestsrc: add unit test for non-interleaved audio output + https://bugzilla.gnome.org/show_bug.cgi?id=796739 + +2018-01-31 17:39:05 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/audiotestsrc/gstaudiotestsrc.c: + audiotestsrc: implement producing non-interleaved audio buffers + https://bugzilla.gnome.org/show_bug.cgi?id=796739 + +2018-07-10 09:45:31 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Fix coding style + +2018-07-10 09:42:47 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Add missing string.h include + +2018-04-25 16:39:34 +0200 Daniel Klamt <d.klamt@pengutronix.de> + + * ext/gl/gstglvideomixer.c: + Moved the pad offset and aspect ratio to a matrix so it will be added in view space and not in world space + https://bugzilla.gnome.org/show_bug.cgi?id=794401 + +2018-07-10 20:03:12 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglutils.c: + * gst-libs/gst/gl/gstglutils.c: + * tests/check/libs/gstglmatrix.c: + gl/utils: fixup matrix math again for column major + e4bf9ed8f060021151cd57e2b00493ed696cb47b was not quite right and changed + the wrong thing. Intead we needed to change the multiplication order + and should have kept the previous to/from matrices as is done in this + patch. + +2018-07-09 10:48:54 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * gst-libs/gst/video/gstvideopool.c: + videopool: display expected size in warning message + Display the size computed from the caps when rejecting a pool + configuration because the buffer size is too small. + https://bugzilla.gnome.org/show_bug.cgi?id=796768 + +2017-10-20 18:36:55 +0200 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideosink.c: + videosink: Set processing deadline to 15ms + This roughly corresponds to one frame at 60fps, and leave 5ms + of max_lateness to not change the existing behaviour. + https://bugzilla.gnome.org/show_bug.cgi?id=640610 + +2018-07-06 10:51:37 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/playback/gstparsebin.c: + parsebin: Don't try to continue autoplugging a parser if we got raw caps + Otherwise we'll fail with an unhelpful message that no decoder for the + raw caps was found if a container contains raw media. + +2018-07-06 13:48:09 +0200 Edward Hervey <edward@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Bail out on huge EBML chunks + We can't handle/store more than guint32 anyway + +2018-07-06 13:46:17 +0200 Edward Hervey <edward@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Use guint32 for sizes + This brings it in sync with the type used with gst_type_find_*() API + +2018-07-06 13:12:51 +0200 Edward Hervey <edward@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: Use types of same size/signedness + Where applicable/possible + +2018-02-08 15:20:09 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/libs/audio.c: + tests: audio: add unit test for GstAudioBuffer & GstAudioMeta + https://bugzilla.gnome.org/show_bug.cgi?id=751605 + +2018-02-07 14:36:01 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/audio/Makefile.am: + * gst-libs/gst/audio/audio-buffer.c: + * gst-libs/gst/audio/audio-buffer.h: + * gst-libs/gst/audio/audio.h: + * gst-libs/gst/audio/gstaudiometa.c: + * gst-libs/gst/audio/gstaudiometa.h: + * gst-libs/gst/audio/meson.build: + libs: audio: Implement GstAudioBuffer & GstAudioMeta + Library bits to support non-interleaved audio + https://bugzilla.gnome.org/show_bug.cgi?id=751605 + +2018-06-29 10:54:36 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/rtsp/meson.build: + meson: rtsp now also depends on libgstbase + +2018-06-29 08:53:48 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/rtsp/Makefile.am: + rtsp: Also use libgstbase for introspection module + +2018-06-29 08:08:46 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/rtsp/Makefile.am: + rtsp: Link to libgstbase for GstDataQueue + +2018-06-28 20:13:04 +0800 wangzq <qiang_jsj@live.cn> + + * gst-libs/gst/audio/gstaudiobasesrc.c: + audiobasesrc: Round down segsize to an integer number of samples + https://bugzilla.gnome.org/show_bug.cgi?id=796704 + +2018-06-28 10:19:19 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/rtsp/gstrtspconnection.c: + rtspconnection: Use GstQueueArray instead of GQueue for the queued messages + +2018-06-26 12:18:27 +0930 memeka <mihailescu2m@gmail.com> + + * gst-libs/gst/gl/egl/gstgldisplay_egl.c: + gl: check for EGL_KHR_platform_gbm for non-MESA gbm implementations + https://bugzilla.gnome.org/show_bug.cgi?id=796694 + +2018-06-24 13:35:20 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: + gl: fix build on iOS + +2018-06-24 13:19:21 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/win32/gstglcontext_wgl.c: + gl: fix build on Windows + +2018-06-24 00:17:26 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Update for g_type_class_add_private() deprecation in recent GLib + +2018-06-24 00:17:26 +0200 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixerbin.c: + gl: Update for g_type_class_add_private() deprecation in recent GLib + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: + * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: + * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: + * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: + * gst-libs/gst/gl/gstglbasefilter.c: + * gst-libs/gst/gl/gstglbufferpool.c: + * gst-libs/gst/gl/gstglcolorconvert.c: + * gst-libs/gst/gl/gstglcontext.c: + * gst-libs/gst/gl/gstgldisplay.c: + * gst-libs/gst/gl/gstglframebuffer.c: + * gst-libs/gst/gl/gstglshader.c: + * gst-libs/gst/gl/gstglslstage.c: + * gst-libs/gst/gl/gstglupload.c: + * gst-libs/gst/gl/gstglviewconvert.c: + * gst-libs/gst/gl/gstglwindow.c: + * gst-libs/gst/gl/win32/gstglcontext_wgl.c: + * gst-libs/gst/gl/win32/gstglwindow_win32.c: + * gst-libs/gst/gl/x11/gstglcontext_glx.c: + * gst-libs/gst/gl/x11/gstglwindow_x11.c: + gl: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: + * gst-libs/gst/rtp/gstrtpbasedepayload.c: + * gst-libs/gst/rtp/gstrtpbasepayload.c: + rtp: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/pbutils/gstaudiovisualizer.c: + * gst-libs/gst/pbutils/gstdiscoverer.c: + pbutils: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/tag/gsttagdemux.c: + * gst-libs/gst/tag/gsttagmux.c: + tag: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideodecoder.c: + * gst-libs/gst/video/gstvideoencoder.c: + * gst-libs/gst/video/gstvideopool.c: + * gst-libs/gst/video/gstvideosink.c: + video: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + * gst-libs/gst/audio/gstaudiobasesink.c: + * gst-libs/gst/audio/gstaudiobasesrc.c: + * gst-libs/gst/audio/gstaudiocdsrc.c: + * gst-libs/gst/audio/gstaudiodecoder.c: + * gst-libs/gst/audio/gstaudioencoder.c: + audio: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-23 21:33:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + * gst-libs/gst/app/gstappsrc.c: + app: Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-22 22:43:08 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + glcontextegl: only dump configs once + +2018-06-22 22:40:55 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + glcontextegl: Fix android build without ES3 tokens + +2018-06-20 04:41:24 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/rtsp/gstrtspdefs.c: + * gst-libs/gst/rtsp/gstrtspdefs.h: + rtspdefs: Add gst_rtsp_generate_digest_auth_response_from_md5 + Passwords are usually not stored in clear text, usually + the A1 section of the response is stored as is in .htdigest + files. + https://bugzilla.gnome.org/show_bug.cgi?id=796636 + +2018-06-21 17:47:09 +1000 Matthew Waters <matthew@centricular.com> + + * tests/check/libs/gstglmatrix.c: + gl/tests: matrix use the affine matrix setter to convert matrices + Removes some duplicated matrices that didn't really need to be + hardcoded. + +2018-06-21 17:36:39 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + glcontextegl: dump the list of EGLConfig's available + +2018-06-18 22:24:13 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl: use dependency fallbacks to get at a possible gl-headers subproject + We would make the subproject conditional on the wrap-mode=nodownload + however get_option('wrap-mode') or similar is not available from + meson.build files as the wrap-mode is meant to be used automatically. + Instead use the dependency fallback mechanism to get at the subproject + where possible i.e. when downloading is allows and only add the compat + includes when we have a valid internal dependency from the gl-headers + subproject. + https://bugzilla.gnome.org/show_bug.cgi?id=796534 + +2018-06-18 13:28:15 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/ogg/gstoggdemux.c: + oggdemux: Make sure that events are writable before changing their seqnum + +2018-06-15 22:48:42 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Fix string leak + gst_video_colorimetry_to_string() returns allocated memory which + must be freed. + https://bugzilla.gnome.org/show_bug.cgi?id=796596 + +2018-06-15 13:14:12 +1000 Matthew Waters <matthew@centricular.com> + + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/gstglfeature.c: + * tests/check/meson.build: + gl/tests: add extension/version parsing checks + +2018-06-13 15:29:46 +0300 Vivia Nikolaidou <vivia@ahiru.eu> + + * tools/gst-discoverer.c: + discoverer: Don't crash when running with -v if channel-mask==0 and >7 channels + For e.g. 16-channel audio, if the channel mask is 0 (which it usually + is), gst_audio_channel_positions_from_mask would get confused, + ultimately leading into a crash. + https://bugzilla.gnome.org/show_bug.cgi?id=796578 + +2018-06-13 13:19:54 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/gstvideoencoder.c: + videoencoder: Keep the segment position in sync + If the start of the segment is modified, the position should be + modified accordingly + https://bugzilla.gnome.org/show_bug.cgi?id=796576 + +2018-06-11 18:32:28 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/sdp/gstsdpmessage.c: + * gst-libs/gst/sdp/gstsdpmessage.h: + sdp: Add new constructor, sdp_message_from_text + Helper function for bindings, in python for example + users can now replace: + res, msg = GstSdp.SDPMessage.new() + GstSdp.sdp_message_parse_buffer(bytes(text.encode()), msg) + with: + res, msg = GstSdp.SDPMessage.new_from_text(text) + https://bugzilla.gnome.org/show_bug.cgi?id=796563 + +2018-06-11 13:51:47 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/video/gstvideopool.c: + videopool: Removed unused private caps member + +2018-06-11 13:48:09 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: log an ERROR if we're going to return a flow error + +2018-06-07 17:42:35 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/meson.build: + Revert "gl/meson: add support for using bundled headers in a subproject" + This reverts commit 82c43ff9a32f1c1d113cd6e1e8d046b7ab64422d. + Reverting for the time being, since it trips up build bots + that don't have network connectivity. + We ideally shouldn't have a subproject that's used unconditionally. + +2018-06-07 13:58:43 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglalpha.c: + glalpha: fix compilation with msvc + It doesn't define M_PI + +2018-06-06 17:27:15 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: add support for using bundled headers in a subproject + This is most useful when building on windows which does not ship the + necessary OpenGL headers. + +2018-06-07 13:48:10 +1000 Matthew Waters <matthew@centricular.com> + + * subprojects/gl-headers.wrap: + gl: add subproject for necessary GL headers for building + Originally for windows with the GL/glext.h and GL/wglext.h but can be + extended for other headers + +2017-11-01 10:25:49 -0600 Thomas Bluemel <tbluemel@control4.com> + + * gst-libs/gst/audio/gstaudiobasesink.c: + audiobasesink: Improve clock skew corrections. + The external time should be moved only as much as needed + to get back to the ideal center point, so that the clock + is still allowed to drift both directions after the correction. + This reduces excessive back and forth corrections that were + caused by the assumption of a linear drift. + https://bugzilla.gnome.org/show_bug.cgi?id=788006 + +2018-06-06 17:24:26 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: force the gl dependency to use pkg-config + Meson has an internal override for dependency('gl') which we do not want + to use as it assumes too many things. Force meson to only search for + gl.pc. + +2018-06-04 22:34:04 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/meson.build: + gl/meson: don't define GST_EXPORTS + The intended use (msvc) doesn't currently like it and will fail to + resolve symbols at runtime. + +2018-06-04 22:32:03 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstgldownloadelement.c: + gldownloadelement: fix build with msvc + msvc doesn't like #ifdef inside macro expansion + +2018-05-24 02:49:54 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglutils.c: + * gst-libs/gst/gl/gstglutils.c: + * tests/check/libs/gstglmatrix.c: + gl/utils: Fix NDC conversion matrices for column-majorness + The matrices were converting the wrong values with non-diagonal-only matrices. + e.g. a typical yflip matrix in [-1,1]^3 such as + 1 0 0 0 + 0 -1 0 0 + 0 0 1 0 + 0 0 0 1 + Would have actually required a matrix like this in [0,1]^3 + 1 0 0 0 + 0 -1 0 0 + 0 0 1 0 + 0 -2 0 1 + Which is + 1. not consistent with our multiplication convention and would require + transposing matrices or changing our multiplication order (from what is + generally used on opengl matrix guides/tutorials). + 2. Produces incorrect values when input with actual vertices accounting for + the difference in multiplication order. e.g. some vertices multiplied by + the yflip matrix using vertex * yflip(== transpose(yflip) * vertex): + vertex: -> result: expected: + vec4(1,0,1,1) -> vec4(1,-2,1,1) vec4(1,1,1,1) + vec4(1,1,1,1) -> vec4(1,-3,1,1) vec4(1,0,1,1) + With the updated values, we now get the expected values. + Includes a test for this behaviour and the example above + +2018-06-05 17:30:47 +0200 Edward Hervey <edward@centricular.com> + + * gst/playback/gstplaysink.c: + playsink: Properly propagate SEGMENT seqnum + When flushing chains, make sure the FLUSH events have seqnum + that are consistent with the current SEGMENT seqnum + +2018-06-05 17:29:53 +0200 Edward Hervey <edward@centricular.com> + + * gst/playback/gststreamsynchronizer.c: + streamsynchronizer: Properly propagate seqnum on EOS event + +2018-06-05 17:24:55 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/rtp/gstrtpbasedepayload.c: + rtpbasedepayload: Properly propagate segment seqnum + This wasn't done previously and the outgoing SEGMENT events had + seqnums which weren't consistent with the upstream ones + +2018-06-05 17:24:05 +0200 Edward Hervey <edward@centricular.com> + + * ext/ogg/gstoggdemux.c: + oggdemux: Properly relay seqnum of segments + Not all cases were handled regarding properly propagating the + seqnum of SEGMENT events on all downstream segment-related events + +2018-05-30 11:39:40 +0200 Edward Hervey <edward@centricular.com> + + * gst/subparse/gstsubparse.c: + subparse: Don't read beyond array + If num_open_tags is 0, we shouldn't try to get the "last" open tag + since there isn't any. + +2018-05-30 10:56:12 +0200 Edward Hervey <edward@centricular.com> + + * ext/ogg/gstoggstream.c: + ogg: Avoid undefined granule shift + A granule is a 64bit signed integer, shifting by 63 or more is + undefined and most likely an indication that the stream is + corrupted or invalid. + Detected by oss-fuzz + +2018-05-22 13:59:58 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + * gst/playback/gstparsebin.c: + * gst/playback/gsturidecodebin.c: + docs: Fix typos + +2014-04-18 10:37:57 +0200 Antoine Jacoutot <ajacoutot@gnome.org> + + * gst-libs/gst/gl/Makefile.am: + libs: g-ir-scanner: do not hardcode libtool path + https://bugzilla.gnome.org/show_bug.cgi?id=726571 + +2018-05-21 23:12:22 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + * meson_options.txt: + meson: rename gtkdoc option to gtk_doc + +2018-05-21 11:35:05 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + * meson_options.txt: + meson: add install_plugins_helper option + +2018-05-21 09:18:24 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/video/video-color.c: + video: fix some GIR array annotations + +2018-05-21 09:18:09 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/audio/audio-channels.c: + audio: fix some GIR array annotations + +2018-05-20 13:37:07 +0200 Christoph Reiter <reiter.christoph@gmail.com> + + * gst-libs/gst/gl/meson.build: + meson: gl: remove non-headers from gl_prototype_headers + This made the meson build install those files, while they aren't + installed with the autotools build. + https://bugzilla.gnome.org/show_bug.cgi?id=796274 + +2018-05-20 14:38:37 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + meson: use cdata.set_quoted() in more places + +2018-05-20 14:27:18 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + * meson_options.txt: + meson: add 'nls' option to disable translations + And enable by default. Was implicitly disabled because + ENABLE_NLS was not defined. + +2018-05-20 13:33:13 +0200 Christoph Reiter <reiter.christoph@gmail.com> + + * gst-libs/gst/tag/meson.build: + meson: install license-translations.dict and set LICENSE_TRANSLATIONS_PATH + The autotools build installs the file and sets the LICENSE_TRANSLATIONS_PATH + macro which licences.c uses as a fallback path. Do the same with meson. + https://bugzilla.gnome.org/show_bug.cgi?id=796274 + +2018-05-20 13:35:52 +0200 Christoph Reiter <reiter.christoph@gmail.com> + + * tools/meson.build: + meson: install the man pages for the command line tools + https://bugzilla.gnome.org/show_bug.cgi?id=796274 + +2018-04-28 20:22:31 -0400 ayaka <ayaka@soulik.info> + + * gst-libs/gst/video/video-converter.c: + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + * gst-libs/gst/video/video-info.c: + video: Add NV12_10LE40 pixel format + This pixel format is a fully packed variant of NV12_10LE32, + a luma pixel would take 10bits in memory, without any + filled bits between pixels in a stride. The color range + follows the BT.2020 standard. + In order to get a better performance in hardware memory + operation, it may expend the stride, append zero data at the + end of echo lines. + Pack function by Nicolas Dufresne. + https://bugzilla.gnome.org/show_bug.cgi?id=795462 + Signed-off-by: Nicolas Dufresne <nicolas@ndufresne.ca> + Signed-off-by: ayaka <ayaka@soulik.info> + +2014-04-18 10:37:57 +0200 Antoine Jacoutot <ajacoutot@gnome.org> + + * gst-libs/gst/allocators/Makefile.am: + * gst-libs/gst/app/Makefile.am: + * gst-libs/gst/audio/Makefile.am: + * gst-libs/gst/pbutils/Makefile.am: + * gst-libs/gst/riff/Makefile.am: + * gst-libs/gst/rtp/Makefile.am: + * gst-libs/gst/rtsp/Makefile.am: + * gst-libs/gst/sdp/Makefile.am: + * gst-libs/gst/tag/Makefile.am: + * gst-libs/gst/video/Makefile.am: + libs: g-ir-scanner: do not hardcode libtool path + https://bugzilla.gnome.org/show_bug.cgi?id=726571 + +2018-05-17 13:54:35 +0900 hoonhee.lee <hoonhee.lee@lge.com> + + * gst/playback/gstplaybin3.c: + playbin3: Collect appropriate stream-type when doing stream selection + https://bugzilla.gnome.org/show_bug.cgi?id=796193 + +2018-04-23 13:30:38 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Remove custom get_next_time implementation + GstAggregator now has the same thing in the simple implementation. + https://bugzilla.gnome.org/show_bug.cgi?id=795486 + +2018-04-23 13:27:39 -0400 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Remove custom get_next_time implementation + GstAggregator now offers same thing in a common implementation. + https://bugzilla.gnome.org/show_bug.cgi?id=795486 + +2017-12-13 12:30:54 +0100 Georg Lippitsch <glippitsch@toolsonair.com> + + * gst-libs/gst/video/gstvideotimecode.c: + videotimecode: Allow 24000/1001 frame rate + https://bugzilla.gnome.org/show_bug.cgi?id=796107 + +2018-05-13 23:33:14 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/gl/Makefile.am: + examples: gl: subdirs can be built independently in parallel + +2018-05-13 23:31:22 +0100 Pierre Labastie <pierre.labastie@neuf.fr> + + * tests/examples/gl/sdl/Makefile.am: + examples: gl: sdl: link to the right in-tree libgstvideo + https://bugzilla.gnome.org/show_bug.cgi?id=796082 + +2018-05-12 17:19:50 +0100 Philippe Normand <philn@igalia.com> + + * gst/subparse/gstsubparse.c: + subparse: follow-up build fix after d871b1205 + +2018-05-12 13:53:02 +0100 Philippe Normand <philn@igalia.com> + + * gst/subparse/gstsubparse.c: + * tests/check/elements/subparse.c: + subparse: support for more than 32 unclosed markup tags + https://bugzilla.gnome.org/show_bug.cgi?id=796043 + +2018-05-12 10:05:38 +0800 Roland Jon <rlandjon@gmail.com> + + * gst/playback/gstparsebin.c: + parsebin: remove unused macro definitions + https://bugzilla.gnome.org/show_bug.cgi?id=796039 + +2018-05-11 09:44:58 +0200 Edward Hervey <bilboed@bilboed.com> + + * tests/examples/gl/gtk/3dvideo/Makefile.am: + * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: + * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: + * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: + examples: Disable a specific warning + gcc 8 checks more cases in the "parentheses" checks, and unfortunately + upstream gtk headers fails with that warning. + Make that warning non-fatal + +2018-05-10 01:54:36 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/playback/gstdecodebin3-parse.c: + * gst/playback/gstdecodebin3.c: + decodebin3: Do not modify structure of EOS event + https://bugzilla.gnome.org/show_bug.cgi?id=795981 + +2018-05-10 01:33:55 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: Do not modify structure of EOS event + https://bugzilla.gnome.org/show_bug.cgi?id=795981 + +2018-05-09 10:39:23 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/playback/gsturidecodebin3.c: + uridecodebin3: Fix GList leak + https://bugzilla.gnome.org/show_bug.cgi?id=795937 + +2018-05-08 23:44:38 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst/playback/gsturidecodebin3.c: + uridecodebin3: Fix string leak + uri and suburi should be free'd + https://bugzilla.gnome.org/show_bug.cgi?id=795932 + +2018-05-07 17:53:32 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Set video-meta option on buffer pool configuration correctly + CID 1435451 + +2018-05-07 09:17:16 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: First override set/get_property vfuncs, then install properties + Gives assertions otherwise. + +2016-02-02 18:19:30 +0200 Kyrylo Polezhaiev <kirushyk@gmail.com> + + * gst-libs/gst/tag/gsttagdemux.c: + tagdemux: avoid timestamp field initialisation for tag event + This field is not used and will be removed in 2.0 API. + https://bugzilla.gnome.org/show_bug.cgi?id=761462 + +2018-02-27 23:22:24 +1100 Jan Schmidt <jan@centricular.com> + + * ext/gl/gstglcolorbalance.c: + glcolorbalance: Support OES textures for input/passthrough + glcolorbalance is in the default GL path inside glimagesink, + so has been causing an possibly-unnecessary extra texture copy + on Android for a while now. If we're just doing passthrough, + we can support OES directly. If not, they'll be transformed + to 2D textures and colourbalanced. + +2018-05-06 16:49:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Some more documentation fixes + +2018-05-06 16:44:47 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: expose converter-config on convert pads + This in order to allow users control over the conversion + process, for example the scaling method. + +2018-05-06 16:43:32 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Fix up documentation some more + +2017-04-25 16:35:45 +0900 hoonhee.lee <hoonhee.lee@lge.com> + + * gst/playback/gstdecodebin3.c: + decodebin3: Re-order all streams and add to collection + Sort all streams from parsebins by stream type and SELECT flag + and stream-id. First video, then audio, then others. + https://bugzilla.gnome.org/show_bug.cgi?id=775615 + +2018-05-06 16:22:01 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Clean up header and update docs a bit + +2018-05-06 16:05:28 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglstereomix.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Rename get_output_buffer() to create_output_buffer() + For consistency with GstAudioAggregator. + +2018-05-06 15:49:36 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Validate pool configuration and create a new pool if it just does not work + Also pass the given allocator to the pool if one is set. + +2018-05-06 15:21:24 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglmixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst/compositor/compositor.c: + * gst/compositor/compositorpad.h: + videoaggregator: Switch to a GstVideoAggregatorConvertPad subclass + This moves all the conversion related code to a single place, allows + less code-duplication inside compositor and makes the glmixer code less + awkward. It's also the same pattern as used by GstAudioAggregator. + +2018-05-06 11:09:45 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst/typefind/gsttypefindfunctions.c: + typefindfunctions: fix tap typefinder + If we memcmp() 12 bytes we should make sure to get + at least 12 bytes as well, and not just 8 bytes. + Thanks oss-fuzz! + +2018-05-06 18:51:10 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglcolorconvert.c: + glcolorconvert: fix negotiation for a non list video format in caps + For a single format in the caps, we were returning some weird answers, + like only RGB formats for a RGB input when we can also support YUV from + RGB. + Fixup of 3cfff727b19d450898dbe7931c53ea05bc2a9ac3 where I thought my + previous (~6month) self had got this right. Don't trust your previous + self people! + +2018-05-05 18:02:16 +0200 Tim-Philipp Müller <tim@centricular.com> + + * gst/tcp/gsttcpclientsink.c: + * gst/tcp/gsttcpclientsrc.c: + * gst/tcp/gsttcpserversink.c: + * gst/tcp/gsttcpserversrc.c: + tcp: fix markup for example pipelines in docs + gtk-doc doesn't like the # it seems. + https://bugzilla.gnome.org/show_bug.cgi?id=795548 + +2018-05-05 17:47:55 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: Include string.h for memset() + gstglmixer.c:143:5: error: implicit declaration of function ‘memset’ [-Werror=implicit-function-declaration] + memset (prepared_frame, 0, sizeof (GstVideoFrame)); + ^~~~~~ + gstglmixer.c:143:5: error: incompatible implicit declaration of built-in function ‘memset’ [-Werror] + +2013-11-16 16:13:00 +0000 Fabrizio Gennari <fabrizio.ge@tiscali.it> + + * gst/typefind/gsttypefindfunctions.c: + typefind: Add TAP and DMP files support + https://bugzilla.gnome.org/show_bug.cgi?id=661137 + +2018-05-05 19:25:20 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/gl/meson.build: + * meson.build: + * meson_options.txt: + * tests/check/meson.build: + * tests/meson.build: + meson: Update option names to omit disable_ and with- prefixes + Also yield common options to the outer project (gst-build in our case) + so that they don't have to be set manually and use array types for some + options. + +2018-05-05 11:29:05 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: Update converters after updating with the new audioinfo/caps + Otherwise subclasses might accidentially use the old audioinfo/caps. + None of the subclasses currently uses the audioinfo/caps, but future + subclasses might. + https://bugzilla.gnome.org/show_bug.cgi?id=795827 + +2018-05-05 16:31:13 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Remove sink_non_alpha_caps class field + This is only used for caching reasons and should never actually be in + the public API. If this is ever a bottleneck later, caching around a + class private struct could be implemented. + +2018-05-05 16:14:14 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst/compositor/compositor.c: + videoaggregator: Move needs_alpha pad field to the private struct + And also trigger renegotiation if the value has changed. + https://bugzilla.gnome.org/show_bug.cgi?id=795836 + +2018-05-05 15:49:17 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst/compositor/compositor.c: + videoaggregator: Move aggregated_frame and the pad buffer into the private struct + The aggregated_frame is now called prepared_frame and passed to the + prepare_frame and cleanup_frame virtual methods directly. For the + currently queued buffer there is a method on the video aggregator pad + now. + +2018-03-16 18:57:36 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: + gl: allow for high resolution EAGLLayer's + +2018-05-05 21:29:40 +1000 Matthew Waters <matthew@centricular.com> + + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/gstglformat.c: + * tests/check/meson.build: + glformat: add test for formats + +2018-05-05 21:21:13 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglcolorconvert.c: + * gst-libs/gst/gl/gstglcolorconvert.h: + * gst-libs/gst/gl/gstglformat.c: + * gst-libs/gst/gl/gstglformat.h: + * gst-libs/gst/gl/gstglmemory.h: + glcolorconvert: add support for ARGB64 conversion + +2018-05-05 21:03:25 +1000 Matthew Waters <matthew@centricular.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/gl/gstglformat.c: + * gst-libs/gst/gl/gstglformat.h: + gl/format: add a function to retrieve if a format is supported + +2018-05-03 13:59:07 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglcolorconvertelement.c: + * ext/gl/gstglcolorconvertelement.h: + * ext/gl/gstgluploadelement.c: + * ext/gl/gstgluploadelement.h: + * gst-libs/gst/gl/gstglbasefilter.c: + * gst-libs/gst/gl/gstglbasefilter.h: + glbasefilter: expose finding the local GL context + And use it to attempt to find the GL context sooner for upload and color + conversion caps transformations. + +2018-03-14 18:12:21 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/gl/gstglformat.c: + * gst-libs/gst/gl/gstglformat.h: + * gst-libs/gst/gl/gstglmemory.c: + * gst-libs/gst/gl/gstglmemorypbo.c: + gl/memory: store the internal format as the texture format + Instead of having special cases at each GL texture creation, upload, + readback or copy for all non-8-bits-per-components. + Simply store the more specific format and retrieve the generic + component/type tuple from that. + Introduce a helper function for retrieving the generic GL format (RGBA, + RGB, RG, R, L, A) and type (BYTE, SHORT, SHORT_5_6_5) from a sized + GL format enum (RGBA8, RGB565, RG8, etc). + +2018-03-14 18:20:54 +1100 Matthew Waters <matthew@centricular.com> + + * tests/check/libs/gstglmemory.c: + gl/memory/tests: split test into separate subtests + Allows for more fine-grained notification of failures + +2018-03-05 17:58:11 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/Makefile.am: + * ext/gl/gstglalpha.c: + * ext/gl/gstglalpha.h: + * ext/gl/gstopengl.c: + * ext/gl/meson.build: + gl: add glalpha element that is similar to the alpha element + It performs similarly to the existing alpha element however performs + calculations in floating point rather than with small (guint8) integers + so some differences are to be expected. + https://bugzilla.gnome.org/show_bug.cgi?id=794070 + +2018-05-05 12:16:35 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: Move frame/texture mapping/unmapping into prepare/clean_frame + Previously we assumed that the texture ID is going to be valid even + after unmapping the frame, as it was immediately unmapped before even + being used. Now we only unmap once we're done with the texture. + +2018-05-04 10:35:36 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/video-chroma.c: + * gst-libs/gst/video/video-converter.c: + video: Silence "restrict" issues with ORC code + The problem is that even though the functions we are calling are + in-place transformation, orc automatically puts the restrict keyword + on all arguments. To silence that warning just create yet-another + variable containing the same value. + https://bugzilla.gnome.org/show_bug.cgi?id=795765 + +2018-05-04 17:18:12 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Move property storage to private pad struct + +2018-05-04 16:46:00 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * tests/check/elements/compositor.c: + videoaggregator: Rename ignore-eos pad property to repeat-after-eos + What it does is to repeat the last frame forever after EOS, it does not + literally ignore EOS. + +2018-05-04 16:13:16 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + videoaggregator: Move GstChildProxy implementations into leaf classes + Not every subclass will want to expose the pads via the interface. + https://bugzilla.gnome.org/show_bug.cgi?id=739011 + +2018-05-04 14:53:21 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Get rid of separate header for the aggregator pad + +2018-05-04 13:36:36 +0200 Olivier Crête <olivier.crete@collabora.com> + + * COPYING: + * COPYING.LIB: + * Makefile.am: + COPYING: Put LGPLv2 in there + There is no GPLv2 code in this repo. + https://bugzilla.gnome.org/show_bug.cgi?id=674852 + +2018-05-02 18:39:31 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + appsink: Handle unlock in drain query handling too + And also handle flushing, we might otherwise wait here forever when + flushing too. + +2018-05-02 18:35:23 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + appsink: Make sure to also handle unlock when waiting for EOS to be handled + Otherwise shutting down during EOS waiting will cause a deadlock. + https://bugzilla.gnome.org/show_bug.cgi?id=795551 + +2018-05-02 18:11:58 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + * gst-libs/gst/app/gstappsrc.c: + appsrc/sink: Fix optimization for only signalling waiters if someone is actually waiting + It is possible that both application and the stream are waiting + currently, if for example the following happens: + 1) app is waiting because no buffer in appsink + 2) appsink providing a buffer and waking up app + 3) appsink getting another buffer and waiting because it's full now + 4) app thread getting back control + Previously step 4 would overwrite that the appsink is currently waiting, + so it would never be signalled again. + https://bugzilla.gnome.org/show_bug.cgi?id=795551 + +2018-04-30 17:17:22 +0200 Thibault Saunier <tsaunier@igalia.com> + + * gst-libs/gst/pbutils/descriptions.c: + pbutils: Avoid assertion describing raw audio caps without format + We used to get: + gst_audio_format_from_string: assertion 'format != NULL' failed + +2018-04-23 16:50:26 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst-libs/gst/pbutils/encoding-profile.c: + encoding-profile: Fix deserialization of a single profile + Instead of trying to guess what profile to build, just get the possible + elements to use with the specified caps and determine the + EncodingProfile from it. + https://bugzilla.gnome.org/show_bug.cgi?id=795490 + +2018-04-22 10:49:29 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst/encoding/gstencodebin.c: + encodebin: Also lock input caps when dynamic output is disabled + With the way caps negotiation work in encoders, the only way to ensure + that no downstream renegotiation is done in the encoder is to also lock + upstream caps. Anyway with the current behavior upstream of encoders + *require* to handle any file format so locking upstream format should + be safe. + https://bugzilla.gnome.org/show_bug.cgi?id=795464 + +2018-04-30 19:49:20 +0900 Seungha Yang <seungha.yang@navercorp.com> + + * gst-libs/gst/tag/gsttagmux.c: + tagmux: Reset final tags for reusing element + If the output tag had been exposed, it never ever updated + even if we reset the tagmux using state change. + https://bugzilla.gnome.org/show_bug.cgi?id=795691 + +2018-04-25 09:28:53 +0900 hoonhee.lee <hoonhee.lee@lge.com> + + * gst/playback/gsturidecodebin3.c: + uridecodebin3: don't segfault if a pad is not a source pad when it is removed + Ignore to handling a pad of decodebin3 which doesn't have corresponding output + when it is removed. + https://bugzilla.gnome.org/show_bug.cgi?id=795529 + +2018-04-20 12:30:22 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * tests/check/libs/videodecoder.c: + videodecoder: add test for event order + When frames are dropped or reordered then the serialized events are + collected and pushed with the next frame. This test verifies that the + order is preserved. + https://bugzilla.gnome.org/show_bug.cgi?id=794192 + +2018-03-08 11:28:58 +0100 Matthias Fend <matthias.fend@wolfvision.net> + + * gst-libs/gst/video/gstvideodecoder.c: + videodecoder: keep event order + Since events are pushed out in reverse order, newer events need to + be added at the front of event lists + https://bugzilla.gnome.org/show_bug.cgi?id=794192 + +2018-03-30 15:41:15 +0900 Hyunjun Ko <zzoon@igalia.com> + + * docs/libs/gst-plugins-base-libs-sections.txt: + * gst-libs/gst/allocators/gstdmabuf.c: + * gst-libs/gst/allocators/gstdmabuf.h: + dmabufallocator: adds gst_dmabuf_allocator_alloc_with_flags + If we can guarantee the lifetime of the fd is longer than + the memory, we can use DONT_CLOSE flag not to close when release. + But it's not provided in gstdmabuf yet while gstfdmemory does. + For example, in case of using VA-API or MSDK, we would need this api. + Otherwise we should call dup to duplicate the fd. + https://bugzilla.gnome.org/show_bug.cgi?id=794829 + +2018-04-26 13:01:05 +0800 Haihua Hu <jared.hu@nxp.com> + + * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: + viv-fb: export viv-fb display api + qmlgl plugin will use this api + https://bugzilla.gnome.org/show_bug.cgi?id=795562 + +2018-04-24 13:48:53 +0800 Haihua Hu <jared.hu@nxp.com> + + * gst-libs/gst/gl/viv-fb/Makefile.am: + viv-fb: install gstgldisplay_viv_fb.h into build result + gstgldisplay_viv_fb.h is need by qmlgl plugin in gst-good package + https://bugzilla.gnome.org/show_bug.cgi?id=795499 + +2018-04-25 11:26:17 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/app/meson.build: + meson: fix copy'n'paste-o in app plugin build description + +2018-04-24 14:05:30 -0400 Xavier Claessens <xavier.claessens@collabora.com> + + * gst/compositor/meson.build: + Meson: Generate pc file for all plugins in bad + https://bugzilla.gnome.org/show_bug.cgi?id=794568 + +2018-04-24 14:05:57 -0400 Xavier Claessens <xavier.claessens@collabora.com> + + * ext/alsa/meson.build: + * ext/cdparanoia/meson.build: + * ext/gl/meson.build: + * ext/libvisual/meson.build: + * ext/ogg/meson.build: + * ext/opus/meson.build: + * ext/pango/meson.build: + * ext/theora/meson.build: + * ext/vorbis/meson.build: + * gst/adder/meson.build: + * gst/app/meson.build: + * gst/audioconvert/meson.build: + * gst/audiomixer/meson.build: + * gst/audiorate/meson.build: + * gst/audioresample/meson.build: + * gst/audiotestsrc/meson.build: + * gst/encoding/meson.build: + * gst/gio/meson.build: + * gst/pbtypes/meson.build: + * gst/playback/meson.build: + * gst/rawparse/meson.build: + * gst/subparse/meson.build: + * gst/tcp/meson.build: + * gst/typefind/meson.build: + * gst/videoconvert/meson.build: + * gst/videorate/meson.build: + * gst/videoscale/meson.build: + * gst/videotestsrc/meson.build: + * gst/volume/meson.build: + * meson.build: + * sys/ximage/meson.build: + * sys/xvimage/meson.build: + Meson: Generate pc file for all plugins in base + https://bugzilla.gnome.org/show_bug.cgi?id=794568 + +2018-04-25 10:57:48 +0100 Tim-Philipp Müller <tim@centricular.com> + + * meson.build: + meson: use -Wl,-Bsymbolic-functions where supported + Just like the autotools build. + +2018-04-25 01:33:43 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: + gl/cocoa: Let ARC clean up our dispatch queue if ARC is used, and otherwise do it manually + Also don't use __bridge casts if ARC is not used, as is the case on 32 + bit systems. + +2018-04-25 01:08:58 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: + gl/cocoa: Use NSRect instead of CGRect + On 64 bit systems they're typedefs of each other but on 32 bit systems + not, and we pass the rect to an API that expects a NSRect + +2018-04-24 17:05:17 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/video/video-converter.c: + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + * gst-libs/gst/video/video-info.c: + Revert "video: Add NV12_10LE40 pixel format" + This reverts commit 35d0783fca504997e1be30cfebfa8de042ea49ab. + +2017-03-26 04:54:42 +0800 ayaka <ayaka@soulik.info> + + * gst-libs/gst/video/video-converter.c: + * gst-libs/gst/video/video-format.c: + * gst-libs/gst/video/video-format.h: + * gst-libs/gst/video/video-info.c: + video: Add NV12_10LE40 pixel format + This pixel format is a fully packed variant of NV12, a luma + pixel would take 10bits in memory, without any filled bits + between pixels in a stride. The color range follows + the BT.2020 standard. + In order to get a performance in hardware memory + operation, it may expend the stride, append zero data at the + end of echo lines. + Signed-off-by: ayaka <ayaka@soulik.info> + https://bugzilla.gnome.org/show_bug.cgi?id=795462 + +2018-04-20 21:54:23 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/gl/gstgldisplay.c: + * gst-libs/gst/gl/gstglmemory.c: + * gst-libs/gst/gl/gstglslstage.c: + * gst-libs/gst/gl/gstglupload.c: + gl: fix some GIR annotations + Mostly related to out and array parameters + +2018-04-20 21:53:17 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/pbutils/codec-utils.c: + pbutils: fix some GIR annotations + Mostly related to out and array parameters + +2018-04-20 21:53:16 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/video/gstvideometa.c: + * gst-libs/gst/video/video-anc.c: + * gst-libs/gst/video/video-color.c: + * gst-libs/gst/video/video-event.c: + * gst-libs/gst/video/video-info.c: + * gst-libs/gst/video/videoorientation.c: + video: fix some GIR annotations + Mostly related to out and array parameters + +2018-04-20 21:53:16 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/audio/audio-converter.c: + * gst-libs/gst/audio/audio-info.c: + * gst-libs/gst/audio/gstaudiodecoder.c: + * gst-libs/gst/audio/gstaudioringbuffer.c: + audio: fix some GIR annotations + Mostly related to out and array parameters + +2018-04-20 21:53:15 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/rtsp/gstrtspmessage.c: + * gst-libs/gst/rtsp/gstrtsprange.c: + * gst-libs/gst/rtsp/gstrtsptransport.c: + * gst-libs/gst/rtsp/gstrtspurl.c: + rtsp: fix some GIR annotations + Mostly related to out and array parameters. + +2018-04-20 21:53:10 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/rtp/gstrtcpbuffer.c: + * gst-libs/gst/rtp/gstrtpbaseaudiopayload.c: + * gst-libs/gst/rtp/gstrtpbuffer.c: + * gst-libs/gst/rtp/gstrtphdrext.c: + rtp: fix some GIR annotations + Mostly related to out and array parameters. + +2018-04-23 16:32:41 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: fix filtered getcaps + In the situation described in + https://bugzilla.gnome.org/show_bug.cgi?id=795397, + downstream_caps consists of two structures, the first with + the preferred rate, if at all possible (44100), the second + containing the full range of allowed rates, as audioresample + correctly tries to negotiate passthrough caps. + As audioaggregator cannot perform rate conversion, it wants + to return a fixated rate in its getcaps implementation, + however it previously directly used the first structure in + the caps allowed downstream, without taking the filter into + consideration, to determine the rate to fixate to. + With this, we first intersect our downstream caps with the + filter, in order not to fixate to an unsupported rate. + +2018-04-23 12:23:41 +0200 Zeeshan Ali <zeeshanak@gnome.org> + + * tests/check/libs/videodecoder.c: + tests: videodecoder: Fix a minor c&p mistake + This completes what commit 0de0f3b2c should have already done. :) + https://bugzilla.gnome.org/show_bug.cgi?id=795483 + +2018-04-23 12:23:41 +0200 Zeeshan Ali <zeeshanak@gnome.org> + + * tests/check/libs/videodecoder.c: + tests: videodecoder: Fix a minor c&p mistake + https://bugzilla.gnome.org/show_bug.cgi?id=795483 + +2018-04-21 01:00:28 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst-libs/gst/video/video-frame.c: + video: Safe guard info->finfo when mapping a frame + Not sure how that slept through but that case is possible and leads + to segfaults in any code path of the function right now. + https://bugzilla.gnome.org/show_bug.cgi?id=795436 + +2018-04-20 11:04:44 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst-libs/gst/pbutils/encoding-profile.c: + encoding-profile: Handle escaped '\:' in caps describing profiles + Otherwise it won't be possible to specify some profiles such as + video/x-h264,profile=(string)high-4:4:4 + With this patch, we can do + video/x-h264,profile=(string)high-4\:4\:4 + +2018-04-20 11:42:16 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/meson.build: + * gst-libs/gst/gl/meson.build: + meson: gl: fix 'invalid keyword argument' meson warnings + Required is not a valid kwarg for cc.has_header() + +2018-04-06 20:02:13 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/rtp/gstrtpbasedepayload.c: + * tests/check/libs/rtpbasedepayload.c: + rtpbasedepayload: condition the sending of gap events + The default implementation for packet loss handling previously + always sent a gap event. + While this is correct as long as we know the packet that was + lost was actually a media packet, with ULPFEC this becomes + a bit more complicated, as we do not know whether the packet + that was lost was a FEC packet, in which case it is better + to not actually send any gap events in the default implementation. + Some payloaders can be more clever about, for example VP8 can + use the picture-id, and the M and S bits to determine whether + the missing packet was inside an encoded frame or outside, + and thus whether if it was a media packet or a FEC packet, + which is why ulpfecdec still lets these lost events go through, + though stripping them of their seqnum, and appending a new + "might-have-been-fec" field to them. + This is all a bit terrible, but necessary to have ULPFEC + integrate properly with the rest of our RTP stack. + https://bugzilla.gnome.org/show_bug.cgi?id=794909 + +2018-04-11 00:57:43 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/app/gstappsink.c: + * tests/check/elements/appsink.c: + appsink: Reuse sample object in pull_sample if possible + Simple optimization to reduce memory allocations. + https://bugzilla.gnome.org/show_bug.cgi?id=795145 + +2018-04-18 16:06:07 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst/playback/gstparsebin.c: + parsebin: Post STREAM_COLLECTION on EVENT_STREAM_COLLECTION + Otherwise decodebin won't get notified about STREAM_COLLECTION comming + from the sources and thus will never get informored about it. Without + being informed about the stream collection decodebin won't be able to + select any streams. It ends up not creating any output for the streams + defined from outside parserbin. + https://bugzilla.gnome.org/show_bug.cgi?id=795364 + +2018-04-18 10:28:42 -0400 Omar Akkila <omar.akkila@collabora.co.uk> + + * gst-libs/gst/gl/egl/gsteglimage.c: + egl: fix build when using RPi EGL + https://bugzilla.gnome.org/show_bug.cgi?id=795336 + +2018-04-18 17:22:45 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * meson.build: + * tests/examples/meson.build: + meson: move some dependency checks to the top level + The newly-added build definitions for test/icles relied + on dependencies that were only defined when the examples + are enabled, thus breaking meson build -Ddisable_examples=true + +2018-04-16 17:04:06 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/video-anc.c: + video: Don't corrupt caption GstMeta + the meta initialization function is provided *after* the base implementation + fields have been set so do *NOT* reset them otherwise it would result + in corrupted GstMeta. + Instead explicitely set our fields to the default values we actually want. + +2018-04-16 10:52:51 +0100 Tim-Philipp Müller <tim@centricular.com> + + * README: + * common: + Automatic update of common submodule + From f0c2dc9 to ed78bee + +2018-04-16 11:10:45 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> + + * gst-libs/gst/gl/meson.build: + gl: Define default value for GST_GL_HAVE_WINDOW_GBM + Thus, silent compiler's warning: + "GST_GL_HAVE_WINDOW_GBM" is not defined, evaluates to 0 [-Wundef] + +2018-04-13 20:18:56 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst-libs/gst/tag/gstid3tag.c: + * gst-libs/gst/tag/gstvorbistag.c: + * gst-libs/gst/tag/gstxmptag.c: + * gst-libs/gst/tag/tags.c: + tag: fix some GIR annotations + Mostly related to out and array parameters. + +2018-04-13 01:23:38 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/check/gst-plugins-base.supp: + tests: make getaddrinfo suppression more generic + So it works for me on debian sid. + +2018-04-13 01:05:23 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/gst-plugins-base.supp: + valgrind supps: ignore leaks where pango is the first frame + +2018-04-13 01:02:27 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/gst-plugins-base.supp: + valgrind supps: ignore intentional leak in GL test + +2018-04-12 22:34:22 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/gst-plugins-base.supp: + valgrind supps: conditional moves in nvidia-glcore + Not much we can do here + +2018-04-12 22:33:27 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/gst-plugins-base.supp: + valgrind supps: getaddrinfo leaks when resolving addresses + https://lists.debian.org/debian-glibc/2016/03/msg00243.html + +2018-04-12 22:24:26 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audioaggregator: unref converted buffer after gst_buffer_replace + +2018-04-12 22:23:50 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * ext/alsa/gstalsamidisrc.c: + alsamidisrc: unref buffer_list before early return + +2018-04-12 21:49:40 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/elements/audiomixer.c: + tests/audiomixer: fix caps leak + +2018-04-12 20:15:01 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/gst-plugins-base.supp: + valgrind supps: ignore bash leaks + gst_install_plugins_* can instantiate bash + +2018-04-10 09:31:32 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst/playback/gsturisourcebin.c: + urisourcebin: Avoid unreffing a pad we are not owning + expose_output_pad takes ownership of the pad. + +2018-04-12 19:33:18 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * gst/playback/gsturidecodebin3.c: + uridecodebin3: free_play_items when READY_TO_PAUSED failed. + We will never go through the PAUSED_TO_READY transition if + that is the case, and thus never free the play items. + +2018-04-12 18:12:49 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/playback/gstplaybin3.c: + playbin3: fix leak of recursive mutex + +2018-04-12 18:50:35 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/generic/states.c: + * tests/check/gst-plugins-base.supp: + valgrind suppressions: ignore XInitThreads leaks + As we load that symbol dynamically, valgrind gets confused + when it leaks and reports the leak against an unrelated library + and an unknown (??) symbol. + To address that, put the loading and calling of that symbol + in a separate function, and ignore any malloc leak happening + in that function. + +2018-04-12 18:44:12 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/check/gst-plugins-base.supp: + valgrind supps: ignore leak in XextCreateExtension + Searching for that specific function in other suppression files + on the Internet shows a few projects ignoring it + eg: https://github.com/XCSoar/XCSoar/blob/master/valgrind.suppressions + +2018-04-11 22:56:34 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * ext/vorbis/gstvorbisenc.c: + vorbisenc: do not map input buffer in WRITE mode + +2018-04-12 15:02:51 +0200 Mathieu Duponchelle <mathieu@centricular.com> + + * tests/icles/meson.build: + * tests/meson.build: + meson: port tests/icles + https://bugzilla.gnome.org/show_bug.cgi?id=795198 + +2018-04-11 21:40:23 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/gstaudiovisualizer.c: + audiovisualizer: Only fixate pixel-aspect-ratio if the field exists + It's optional. + +2018-04-11 12:18:55 +0300 Vivia Nikolaidou <vivia@ahiru.eu> + + * gst-libs/gst/app/gstappsrc.c: + appsrc: Documentation fix in gst_app_src_push_sample_internal + Make it clear that it doesn't take ownership of the sample. + https://bugzilla.gnome.org/show_bug.cgi?id=795150 + +2018-04-10 21:18:11 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/gstaudiovisualizer.c: + audiovisualizer: Fixate pixel-aspect-ratio to the closest value to 1/1 + +2018-03-12 10:53:05 +0100 Edward Hervey <edward@centricular.com> + + * gst/playback/gstparsebin.c: + * gst/playback/gstrawcaps.h: + * gst/playback/gstsubtitleoverlay.c: + playback: Add support for CEA 608/708 CC overlay elements + https://bugzilla.gnome.org/show_bug.cgi?id=794901 + +2018-02-15 13:59:56 +0100 Edward Hervey <edward@centricular.com> + + video: Add support for VANC and Closed Caption + This commits add common elements for Ancillary Data and Closed + Caption support in GStreamer: + * A VBI (Video Blanking Interval) parser that supports detection + and extraction of Ancillary data according to the SMPTE S291M + specification. Currently supports the v210 and UYVY video + formats. + * A new GstMeta for Closed Caption : GstVideoCaptionMeta. This + supports the two types of CC : CEA-608 and CEA-708, along with + the 4 different ways they can be transported (other systems + are super-set of those). + https://bugzilla.gnome.org/show_bug.cgi?id=794901 + +2018-01-31 15:09:36 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/pbutils/descriptions.c: + pbutils: Add Closed Caption caps description + https://bugzilla.gnome.org/show_bug.cgi?id=794901 + +2018-04-09 17:24:30 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/audio/gstaudiobasesrc.c: + audiobasesrc: posting errors should be always be safe + Don't try to signal an error in the ringbuffer if it hasn't been + allocated yet. + https://bugzilla.gnome.org/show_bug.cgi?id=794611 + +2018-04-07 11:07:45 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/audio/gstaudioringbuffer.c: + audioringbuffer: Don't spam INFO for every buffer + This makes GST_DEBUG=4 outputs too spammy, and such frequent messages + are meant to go into DEBUG or TRACE anyway. + +2018-04-05 16:41:57 +0200 Zeeshan Ali <zeeshanak@gnome.org> + + * tests/check/meson.build: + tests: Enable tests for videodecoder + The tests pass fine here so don't see any reason to keep them disabled. + https://bugzilla.gnome.org/show_bug.cgi?id=795005 + +2018-04-04 19:30:55 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst/encoding/gstencodebin.c: + encodebin: Always respect encoding profile preset factory name + And fail if it is not present. + +2018-03-24 15:51:20 -0300 Thibault Saunier <tsaunier@igalia.com> + + * gst/encoding/gstencodebin.c: + encodebin: Inform about missing elements in the "text" error field + Instead of the debug field, that information should be directly + exposed to end users. + https://bugzilla.gnome.org/show_bug.cgi?id=794663 + +2018-04-02 15:08:48 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: + * gst-libs/gst/video/gstvideoutils.c: + * gst-libs/gst/video/video.c: + video: Fix/Add section documentation + +2018-04-02 08:45:04 +0200 Edward Hervey <edward@centricular.com> + + docs/libs: The big spring cleanup + * Explicitely specify which headers aren't to be included in gtkdoc-scan + This is essentially all the headers that are not installed and only + for internal/local usage. This also includes the orc-generated headers. + * Remove all symbols/sections that are no longer present (due to accurately + scanning only the headers we need). + * Add or expose sections which weren't previously exposed + * Make sure the "unified" library headers (ex: gst/video/video.h) are used + everywhere applicable. Only use the specific headers where applicable + (such as the GL-implementation-specific objects) + * Add all documentation which was not previously exposed in the right sections + * Update 'types' file to get as many runtime information as possible + This brings down the number of unused symbols to 15 (from over 300). + +2018-04-02 08:34:58 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/allocators/gstdmabuf.c: + * gst-libs/gst/allocators/gstfdmemory.c: + * gst-libs/gst/allocators/gstphysmemory.h: + * gst-libs/gst/audio/audio-converter.c: + * gst-libs/gst/audio/audio-format.h: + * gst-libs/gst/audio/audio-resampler.c: + * gst-libs/gst/audio/gstaudioaggregator.c: + * gst-libs/gst/audio/gstaudioaggregator.h: + * gst-libs/gst/audio/gstaudiodecoder.c: + * gst-libs/gst/audio/gstaudioencoder.c: + * gst-libs/gst/audio/gstaudiometa.c: + * gst-libs/gst/audio/gstaudioringbuffer.h: + * gst-libs/gst/audio/gstaudiostreamalign.c: + * gst-libs/gst/gl/egl/gsteglimage.h: + * gst-libs/gst/gl/egl/gstglmemoryegl.c: + * gst-libs/gst/gl/egl/gstglmemoryegl.h: + * gst-libs/gst/gl/gstglbasefilter.h: + * gst-libs/gst/gl/gstglbasememory.h: + * gst-libs/gst/gl/gstglbuffer.h: + * gst-libs/gst/gl/gstglcolorconvert.c: + * gst-libs/gst/gl/gstglcontext.c: + * gst-libs/gst/gl/gstglfilter.h: + * gst-libs/gst/gl/gstglmemory.h: + * gst-libs/gst/gl/gstglmemorypbo.h: + * gst-libs/gst/gl/gstgloverlaycompositor.h: + * gst-libs/gst/gl/gstglrenderbuffer.h: + * gst-libs/gst/gl/gstglutils.c: + * gst-libs/gst/gl/gstglviewconvert.c: + * gst-libs/gst/gl/wayland/Makefile.am: + * gst-libs/gst/gl/x11/gstgldisplay_x11.h: + * gst-libs/gst/pbutils/gstaudiovisualizer.c: + * gst-libs/gst/pbutils/gstaudiovisualizer.h: + * gst-libs/gst/rtp/gstrtcpbuffer.h: + * gst-libs/gst/rtp/gstrtpbasedepayload.h: + * gst-libs/gst/rtp/gstrtpdefs.h: + * gst-libs/gst/rtsp/gstrtspextension.h: + * gst-libs/gst/rtsp/gstrtspmessage.h: + * gst-libs/gst/sdp/gstmikey.c: + * gst-libs/gst/sdp/gstmikey.h: + * gst-libs/gst/sdp/gstsdpmessage.c: + * gst-libs/gst/video/gstvideodecoder.c: + * gst-libs/gst/video/gstvideoencoder.c: + * gst-libs/gst/video/gstvideometa.c: + * gst-libs/gst/video/gstvideotimecode.c: + * gst-libs/gst/video/gstvideoutils.h: + * gst-libs/gst/video/video-converter.h: + * gst-libs/gst/video/video-frame.h: + * gst-libs/gst/video/video-info.h: + * gst-libs/gst/video/video-multiview.c: + * gst-libs/gst/video/video-overlay-composition.c: + * gst-libs/gst/video/video-scaler.c: + * gst-libs/gst/video/video-tile.c: + * gst-libs/gst/video/videooverlay.h: + libs: Documentation cleanup + * Fix wrong naming, wrong types and typos + * Add missing sections + * Add missing documentation for entries + * Explicitely mark private structure entries + * Remove items that never existed + +2018-04-02 08:43:17 +0200 Edward Hervey <edward@centricular.com> + + * tests/check/libs/discoverer.c: + * tools/gst-discoverer.c: + tools: Fix discoverer deprecation + The only information provided by "misc" was the missing plugins which + is already handled with another API + +2018-04-02 08:42:01 +0200 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/pbutils/gstdiscoverer-types.c: + * gst-libs/gst/pbutils/gstdiscoverer.h: + * gst-libs/gst/rtsp/gstrtsptransport.c: + * gst-libs/gst/rtsp/gstrtsptransport.h: + libs: Add deprecation guard + Those functions have been marked as deprecated + +2018-04-02 08:33:58 +0200 Edward Hervey <edward@centricular.com> + + * tests/check/libs/struct_i386_osx.h: + check: Remove old structures from ABI check + Just in case someone still tries to run it on 32bit osx + +2017-04-28 15:24:43 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/videorate/gstvideorate.c: + videorate: In reverse playback mode, don't output the first buffer with ts=segment.stop + Instead go backwards before segment.stop based on the framerate or the + next buffers end timestamp. Otherwise the first buffer will usually be + dropped because outside the segment. + https://bugzilla.gnome.org/show_bug.cgi?id=781899 + +2018-03-27 10:43:16 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/gl/Makefile.am: + gl: pick up GstVideo-1.0.gir from local build dir + https://bugzilla.gnome.org/show_bug.cgi?id=794708 + +2018-03-22 11:12:20 +0100 Antonio Ospite <ao2@ao2.it> + + * tools/gst-play-kb.c: + tools: play: fix leaving STDIN in non-blocking mode after exit + gst-play-1.0 sets STDIN to non-blocking mode to have the input + characters read as soon as they arrive. + However, when gst_play_kb_set_key_handler() gets called from + restore_terminal() it forgets to restore the STDIN blocking status. + This can result in broken behavior for cli command executed in the same + terminal after gst-play-1.0 exited. + It turns out that putting STDIN in non-blocking mode is not even the + proper way to achieve the desired effect, instead VMIN and VTIME in + struct termios should be set to 0. + Let's do that, and don't mess with the STDIN blocking mode now that it's + not necessary. + https://bugzilla.gnome.org/show_bug.cgi?id=794591 + +2018-03-18 11:15:55 -0700 Thiago Santos <thiagossantos@gmail.com> + + * gst-libs/gst/pbutils/encoding-profile.c: + encoding-profile: fix gi annotation for gst_encoding_profile_find + +2018-03-25 12:48:12 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/Makefile.am: + gl: Disable glmixerbin for the time being too + Otherwise we have one copy in gst-plugins-bad and one (unused) here, + which makes static linking unhappy. + +2018-03-24 21:35:07 +0900 Seungha Yang <pudding8757@gmail.com> + + * gst/encoding/gstencodebin.c: + encodebin: Use gst_object_unref() instead of g_object_unref() + ... for better debugging (e.g., tracing refcount) + https://bugzilla.gnome.org/show_bug.cgi?id=794654 + +2018-03-23 14:24:38 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/audio/gstaudioaggregator.c: + audio-aggregator: Check return values + And copy over already-parsed information + CID #1427140 + +2017-07-20 14:15:30 +1000 Alessandro Decina <alessandro.d@gmail.com> + + * Makefile.am: + * gst-libs/gst/app/app_mkenum.py: + * gst-libs/gst/app/meson.build: + * gst-libs/gst/audio/audio_mkenum.py: + * gst-libs/gst/audio/meson.build: + * gst-libs/gst/pbutils/meson.build: + * gst-libs/gst/pbutils/pbutils_mkenum.py: + * gst-libs/gst/rtp/meson.build: + * gst-libs/gst/rtp/rtp_mkenum.py: + * gst-libs/gst/rtsp/meson.build: + * gst-libs/gst/rtsp/rtsp_mkenum.py: + * gst-libs/gst/tag/meson.build: + * gst-libs/gst/tag/tag_mkenum.py: + * gst-libs/gst/video/meson.build: + * gst-libs/gst/video/video_mkenum.py: + * meson.build: + meson: libs: use gnome.mkenums_simple() to generate enumtypes files + This way we no longer need custom wrapper scripts or template files. + +2018-03-04 16:41:14 +0100 Carlos Rafael Giani <dv@pseudoterminal.org> + + * gst-libs/gst/gl/egl/gstglcontext_egl.c: + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.c: + * gst-libs/gst/gl/gbm/gstglwindow_gbm_egl.h: + gl/gbm: Initialize window handle (= gbm surface) like other window systems + https://bugzilla.gnome.org/show_bug.cgi?id=793997 + +2018-03-22 07:56:28 +0100 Carlos Rafael Giani <dv@pseudoterminal.org> + + * gst-libs/gst/gl/gstglupload.c: + * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: + viv-fb: Include gstglfuncs.h to fix cross compilation errors + https://bugzilla.gnome.org/show_bug.cgi?id=794589 + +2018-03-21 18:15:49 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst-libs/gst/allocators/gstdmabuf.c: + dmabufallocator: Fix build if LINUX_DMA_BUF_H is missing + +2018-03-09 21:24:52 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * configure.ac: + * gst-libs/gst/allocators/gstdmabuf.c: + * meson.build: + allocators: Add DMABuf synchronization + When doing CPU Access, some architecture may require caches to be + synchronize before use. Otherwise, some visual artifact may be + visible, as the CPU modification may still resides in cache. + https://bugzilla.gnome.org/show_bug.cgi?id=794216 + +2018-03-21 10:27:04 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video-tile.h: + video: Set correct value in g-i annotations for tile related mask constants + +2018-03-21 10:25:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/video.h: + video: Include gstvideoaffinetransformationmeta.h in video.h + +2018-03-21 10:21:41 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/pbutils/pbutils.h: + pbutils: Include gstaudiovisualizer.h in pbutils.h + +2018-03-20 09:15:37 +0000 Tim-Philipp Müller <tim@centricular.com> + + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-adder.xml: + * docs/plugins/inspect/plugin-alsa.xml: + * docs/plugins/inspect/plugin-app.xml: + * docs/plugins/inspect/plugin-audioconvert.xml: + * docs/plugins/inspect/plugin-audiomixer.xml: + * docs/plugins/inspect/plugin-audiorate.xml: + * docs/plugins/inspect/plugin-audioresample.xml: + * docs/plugins/inspect/plugin-audiotestsrc.xml: + * docs/plugins/inspect/plugin-cdparanoia.xml: + * docs/plugins/inspect/plugin-encoding.xml: + * docs/plugins/inspect/plugin-gio.xml: + * docs/plugins/inspect/plugin-libvisual.xml: + * docs/plugins/inspect/plugin-ogg.xml: + * docs/plugins/inspect/plugin-opengl.xml: + * docs/plugins/inspect/plugin-opus.xml: + * docs/plugins/inspect/plugin-pango.xml: + * docs/plugins/inspect/plugin-pbtypes.xml: + * docs/plugins/inspect/plugin-playback.xml: + * docs/plugins/inspect/plugin-rawparse.xml: + * docs/plugins/inspect/plugin-subparse.xml: + * docs/plugins/inspect/plugin-tcp.xml: + * docs/plugins/inspect/plugin-theora.xml: + * docs/plugins/inspect/plugin-typefindfunctions.xml: + * docs/plugins/inspect/plugin-videoconvert.xml: + * docs/plugins/inspect/plugin-videorate.xml: + * docs/plugins/inspect/plugin-videoscale.xml: + * docs/plugins/inspect/plugin-videotestsrc.xml: + * docs/plugins/inspect/plugin-volume.xml: + * docs/plugins/inspect/plugin-vorbis.xml: + * docs/plugins/inspect/plugin-ximagesink.xml: + * docs/plugins/inspect/plugin-xvimagesink.xml: + * meson.build: + Back to development + === release 1.14.0 === 2018-03-19 20:15:02 +0000 Tim-Philipp Müller <tim@centricular.com> @@ -126,6 +5128,14 @@ * gst-libs/gst/audio/meson.build: meson: install new audio-prelude.h +2018-03-13 13:07:52 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.h: + video: GST_EXPORT -> GST_URI_VIDEO_BAD_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + 2018-03-13 11:56:59 +0000 Tim-Philipp Müller <tim@centricular.com> * docs/libs/Makefile.am: @@ -530,6 +5540,16 @@ would lead to all frames being dropped. https://bugzilla.gnome.org/show_bug.cgi?id=668995 +2018-03-01 00:34:40 +0100 Mathieu Duponchelle <mathieu@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglstereomix.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + Port to latest GstAggregator segment API + The aggregator segment is now exposed on the src pad + https://bugzilla.gnome.org/show_bug.cgi?id=793946 + 2018-03-01 00:34:06 +0100 Mathieu Duponchelle <mathieu@centricular.com> * ext/gl/gstglmixer.c: @@ -917,6 +5937,12 @@ * meson.build: Back to development +2018-02-15 18:50:51 +0000 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/compositor/crossfade.c: + Dist compositor crossfade example and pythons script for meson build + And add to autotools build so it gets disted. + === release 1.13.1 === 2018-02-15 17:01:15 +0000 Tim-Philipp Müller <tim@centricular.com> @@ -1019,6 +6045,11 @@ * docs/libs/gst-plugins-base-libs-sections.txt: doc: Include new GstVideoOverlay API +2018-02-14 14:36:00 +0100 Edward Hervey <edward@centricular.com> + + * gst/compositor/compositororc-dist.c: + Update ORC fallback disted code + 2018-02-14 10:21:49 +0000 Philippe Normand <philn@igalia.com> * gst/playback/gstplaybin3.c: @@ -1587,6 +6618,16 @@ with the FOURCC XV15 https://bugzilla.gnome.org/show_bug.cgi?id=789876 +2016-10-03 13:11:07 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix vertex_buffer leak + We call the base class first as this will remove the pad from + the aggregator, thus stopping misc callbacks from being called, + one of which (process_textures) will recreate the vertex_buffer + if it is destroyed + https://bugzilla.gnome.org/show_bug.cgi?id=760873 + 2018-01-25 18:39:11 +0000 Tim-Philipp Müller <tim@centricular.com> * gst/subparse/gstsubparse.c: @@ -1608,12 +6649,26 @@ Add to valgrind suppressions file. https://bugzilla.gnome.org/show_bug.cgi?id=781021 +2017-12-28 12:15:21 +0100 Mathieu Duponchelle <mathieu@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregatorpad: implement skip_buffer + Skip buffers from sources with a framerate higher than the output + framerate. + https://bugzilla.gnome.org/show_bug.cgi?id=781928 + 2018-01-23 09:01:00 +0000 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/audio/gstaudioaggregator.c: Update for renamed aggregator pad API https://bugzilla.gnome.org/show_bug.cgi?id=791204 +2018-01-23 09:01:00 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + Update for renamed aggregator pad API + https://bugzilla.gnome.org/show_bug.cgi?id=791204 + 2015-03-20 09:41:05 +0100 Branislav Katreniak <bkatreniak@nuvotechnologies.com> * ext/alsa/gstalsasrc.c: @@ -20548,6 +25603,13 @@ 2017-12-02 16:01:25 +0000 Tim-Philipp Müller <tim@centricular.com> + * gst/compositor/Makefile.am: + * gst/compositor/meson.build: + Remove GstAggregator from -bad, moved to core + https://bugzilla.gnome.org/show_bug.cgi?id=739010 + +2017-12-02 16:01:25 +0000 Tim-Philipp Müller <tim@centricular.com> + * gst/audiomixer/Makefile.am: * gst/audiomixer/meson.build: Remove GstAggregator from -bad, moved to core @@ -20706,6 +25768,12 @@ * gst-libs/gst/video/video-color.h: video: add missing GST_EXPORT +2017-11-25 12:48:40 +0100 Edward Hervey <edward@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't leak string + The result of gst_video_colorimetry_to_string () needs to be free'd + 2017-11-25 12:45:03 +0100 Edward Hervey <edward@centricular.com> * gst/playback/gsturisourcebin.c: @@ -20720,6 +25788,19 @@ Instead, subclasses now use add_pad_template_with_gtype. https://bugzilla.gnome.org/show_bug.cgi?id=789986 +2017-11-06 21:07:51 +0100 Mathieu Duponchelle <mathieu@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglmixer.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + aggregator: Remove klass->sinkpads_type + This posed problems for the python bindings (and possibly others). + Instead, subclasses now use add_pad_template_with_gtype. + https://bugzilla.gnome.org/show_bug.cgi?id=789986 + 2017-11-21 10:15:02 +0100 Edward Hervey <edward@centricular.com> * gst/videotestsrc/gstvideotestsrc.c: @@ -21064,12 +26145,42 @@ 2017-11-02 12:46:26 +0000 Tim-Philipp Müller <tim@centricular.com> + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: use new gst_element_foreach_sink_pad() + Instead of gst_aggregator_iterate_sinkpads() which will + soon be removed. + https://bugzilla.gnome.org/show_bug.cgi?id=785679 + +2017-11-02 12:56:57 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: add CAST macros + +2017-11-02 12:46:26 +0000 Tim-Philipp Müller <tim@centricular.com> + * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 +2017-11-02 12:17:38 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglvideomixer.c: + gl: use new gst_element_foreach_sink_pad() + Instead of gst_aggregator_iterate_sinkpads() which will + soon be removed. + https://bugzilla.gnome.org/show_bug.cgi?id=785679 + +2017-11-02 11:57:24 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + videoaggregator: drop ABI compat in padding for new struct member + Don't really have to do that while it's in -bad and most users + are in-tree anyway. + 2017-10-23 22:03:22 +0200 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/audio/gstaudioaggregator.h: @@ -21458,6 +26569,11 @@ audioaggregator: move comment to the place it is meant to be This probably got shifted after some changes. +2017-10-13 11:46:09 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: use GstFlowReturn for flow returns + 2017-10-11 18:03:20 +0200 Mathieu Duponchelle <mathieu@centricular.com> * gst-libs/gst/audio/audio-channel-mixer.c: @@ -21681,6 +26797,12 @@ alsasink: Fix Memory leak in payload not succuss case https://bugzilla.gnome.org/show_bug.cgi?id=788114 +2017-09-25 17:20:58 +0530 Ponnam Srinivas <p.srinivas@samsung.com> + + * ext/gl/gstglmixer.c: + glmixer: Unmap video frame in error case + https://bugzilla.gnome.org/show_bug.cgi?id=788127 + 2017-08-15 02:39:54 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> * gst/audioconvert/gstaudioconvert.c: @@ -21724,6 +26846,28 @@ consider this should be the job of basetransform. https://bugzilla.gnome.org/show_bug.cgi?id=785471 +2017-09-20 20:00:03 +0800 Haihua Hu <jared.hu@nxp.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvidemixer: need reconfigure output gemotry after caps renegotiated + +2017-09-21 11:59:22 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + Revert "glvideomixer: need update output geometry after src caps reconfigure" + This reverts commit d6e538dc5651fb03c85d7c7614bcf6c689f2db2f. + +2017-09-18 15:42:00 +0800 Haihua Hu <jared.hu@nxp.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvideomixer: need update output geometry after src caps reconfigure + Need update output geometry when sink caps changed and use + gst_structure_set to update caps if structure is fixed + https://bugzilla.gnome.org/show_bug.cgi?id=787820 + 2017-08-24 10:02:31 +0100 Julien Isorce <jisorce@oblong.com> * gst-libs/gst/app/gstappsink.c: @@ -21802,12 +26946,42 @@ which we only parsed when there was no allocation pool. https://bugzilla.gnome.org/show_bug.cgi?id=730758 +2017-09-05 16:20:44 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglmixer.c: + Request minimum buffer even if need_pool is FALSE + When tee is used, it will not request a pool, but still it wants to + know how many buffers are required. + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + 2017-08-24 19:11:29 +1000 Matthew Waters <matthew@centricular.com> * gst-libs/gst/video/gstvideoaffinetransformationmeta.c: * gst-libs/gst/video/gstvideoaffinetransformationmeta.h: video/affinetransformationmeta: use the provided doc comment for the struct +2017-07-07 16:15:12 +0100 Julien Isorce <jisorce@oblong.com> + + * ext/gl/gstglmixer.h: + * ext/gl/gstglvideomixer.c: + gl: do not include GL headers in public gstgl headers + Except for gst/gl/gstglfuncs.h + It is up to the client app to include these headers. + It is coherent with the fact that gstreamer-gl.pc does not + require any egl.pc/gles.pc. I.e. it is the responsability + of the app to search these headers within its build setup. + For example gstreamer-vaapi includes explicitly EGL/egl.h + and search for it in its configure.ac. + For example with this patch, if an app includes the headers + gst/gl/egl/gstglcontext_egl.h + gst/gl/egl/gstgldisplay_egl.h + gst/gl/egl/gstglmemoryegl.h + it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h. + Which is good because the app might want to use the gstgl api only + without the need to bother about gl headers. + Also added a test: cd tests/check && make libs/gstglheaders.check + https://bugzilla.gnome.org/show_bug.cgi?id=784779 + 2017-08-20 12:09:52 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> * gst/playback/gstplaybin2.c: @@ -21869,6 +27043,29 @@ * gst-libs/gst/pbutils/gstpluginsbaseversion.h.in: pbutils: sprinkle more GST_EXPORT +2017-08-10 01:48:18 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: use colorimetry from find_best_format. + This increases the chances that we won't need to do any conversion + for a given pad. + https://bugzilla.gnome.org/show_bug.cgi?id=786078 + +2017-08-10 01:45:53 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: improve find_best_format heuristic. + The goal here is to minimize the work needed to bring all images + to a common format. A better criteria than the number of pads + with a given format is the number of pixels with a given format. + https://bugzilla.gnome.org/show_bug.cgi?id=786078 + +2017-08-10 01:43:15 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst/compositor/compositor.c: + compositor: improve conversion debugging + https://bugzilla.gnome.org/show_bug.cgi?id=786078 + 2017-08-10 10:27:23 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/audio/audio-format.h: @@ -21921,6 +27118,52 @@ xmptag: Stop parsing GPS coordinate if sscanf() fails CID 1139610 +2017-08-04 11:08:18 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't mix up width and height + CID 1416129 + +2017-08-03 20:21:17 +0100 Tim-Philipp Müller <tim@centricular.com> + + * tests/examples/compositor/crossfade.c: + examples: fix compiler warning in compositor crossfade example + warning: control reaches end of non-void function + +2017-08-03 20:14:20 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/compositor/compositororc-dist.c: + * gst/compositor/compositororc-dist.h: + compositor: update disted orc fallback files + +2017-07-11 22:04:55 -0400 Thibault Saunier <thibault.saunier@osg.samsung.com> + + * tests/examples/compositor/crossfade.c: + tests: examples: Add a simple crossfade example + https://bugzilla.gnome.org/show_bug.cgi?id=784827 + +2017-07-06 14:26:21 -0400 Thibault Saunier <thibault.saunier@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/blend.c: + * gst/compositor/blend.h: + * gst/compositor/compositor.c: + * gst/compositor/compositor.h: + * gst/compositor/compositororc.orc: + * gst/compositor/compositorpad.h: + compositor: Add support for crossfade blending + Crossfading is a bit more complex than just having two pads with the + right keyframes as the blending is not exactly the same. + The difference is in the way we compute the alpha channel, in the case + of crossfading, we have to compute an additive operation between + the destination and the source (factored by the alpha property of both + the input pad alpha property and the crossfading ratio) basically so + that the crossfade result of 2 opaque frames is also fully opaque at any + time in the crossfading process, avoid bleeding through the layer + blending. + Some rationnal can be found in https://phabricator.freedesktop.org/T7773. + https://bugzilla.gnome.org/show_bug.cgi?id=784827 + 2017-08-01 17:07:32 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/app/gstappsrc.c: @@ -22040,6 +27283,11 @@ encodebin: fix possible pad ref leak in error code path https://bugzilla.gnome.org/show_bug.cgi?id=785065 +2017-07-18 12:46:09 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.h: + video: mark symbols explicitly for export with GST_EXPORT + 2017-07-18 00:29:56 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/audio/gstaudioaggregator.h: @@ -22219,6 +27467,17 @@ convertframe: Fix leak in case of vcrop is disabled https://bugzilla.gnome.org/show_bug.cgi?id=784639 +2017-04-11 01:18:51 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix gaps at end of streams. + When the pad has received EOS, its buffer may still be mixed + any number of times, when the pad's framerate is inferior + to the output framerate. + This was introduced by my patch in + https://bugzilla.gnome.org/show_bug.cgi?id=782962, this patch + also correctly addresses the initial issue. + 2017-07-03 21:08:02 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> * tests/check/elements/appsrc.c: @@ -22515,12 +27774,64 @@ * meson.build: meson: don't need config.h.meson any longer +2017-05-21 18:31:59 +0200 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglbasemixer.h: + glbasemixer: Remove unused negotiated member + This is now all handled in GstAggregator, so this code is not + called anymore. + +2017-05-21 15:44:02 +0200 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Declare that it supports the video meta on input + https://bugzilla.gnome.org/show_bug.cgi?id=782918 + +2017-05-21 15:30:10 +0200 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglbasemixer.h: + * ext/gl/gstglmixer.c: + * ext/gl/gstglvideomixer.c: + gl*mixer: Use propose_allocation from the GstAggregator base class + https://bugzilla.gnome.org/show_bug.cgi?id=782918 + 2017-05-20 17:59:19 +0200 Olivier Crête <olivier.crete@collabora.com> * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Use downstream allocator and params if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 +2017-05-20 18:10:29 +0200 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Create normal video pool as a fallback + https://bugzilla.gnome.org/show_bug.cgi?id=746529 + +2017-05-20 17:35:43 +0200 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglbasemixer.h: + * ext/gl/gstglmixer.c: + glbasemixer: Remove own decide_allocation, use GstAggregator's + https://bugzilla.gnome.org/show_bug.cgi?id=746529 + +2017-05-20 17:30:06 +0200 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglbasemixer.c: + glbasemixer: Use aggregator for allocation handling + https://bugzilla.gnome.org/show_bug.cgi?id=746529 + +2017-05-20 17:25:16 +0200 Olivier Crête <olivier.crete@collabora.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglbasemixer.h: + * ext/gl/gstglmixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Get the buffer from the pool if available + https://bugzilla.gnome.org/show_bug.cgi?id=746529 + 2017-05-21 12:34:08 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net> * ext/pango/gstbasetextoverlay.c: @@ -22528,6 +27839,13 @@ textoverlay: optionally scale text to ensure proper display text aspect ratio ... by prescaling with an inverse aspect scaling as applied by video scaling +2017-05-21 12:41:53 +0200 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Return to parent on reconfigure + The caps negotiation is now in the parent, so need to return there + if a reconfiguration is needed, otherwise it will loops forever. + 2017-05-21 10:49:20 +0100 Tim-Philipp Müller <tim@centricular.com> * tests/check/meson.build: @@ -22589,6 +27907,20 @@ I'm about to use it to change the 'drop-only' code path. https://bugzilla.gnome.org/show_bug.cgi?id=780767 +2017-05-20 14:24:57 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglmixer.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst/compositor/compositor.c: + aggregator: add simple support for caps handling + Modelled off the videoaggregator caps handling as that seems the most + mature aggregtor-using implementation that has caps handling there is. + https://bugzilla.gnome.org/show_bug.cgi?id=776931 + 2017-05-20 15:56:16 +0200 Olivier Crête <olivier.crete@collabora.com> * gst-libs/gst/audio/gstaudioaggregator.h: @@ -22607,6 +27939,24 @@ mature aggregtor-using implementation that has caps handling there is. https://bugzilla.gnome.org/show_bug.cgi?id=776931 +2017-04-04 11:25:43 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + videoaggregator: delay using new caps from a sink pad until the next buffer in the queue is taken + When caps changes while streaming, the new caps was getting processed + immediately in videoaggregator, but the next buffer in the queue that + corresponds to this new caps was not necessarily being used immediately, + which resulted sometimes in using an old buffer with new caps. Of course + there used to be a separate buffer_vinfo for mapping the buffer with its + own caps, but in compositor the GstVideoConverter was still using wrong + info and resulted in invalid reads and corrupt output. + This approach here is more safe. We delay using the new caps + until we actually select the next buffer in the queue for use. + This way we also eliminate the need for buffer_vinfo, since the + pad->info is always in sync with the format of the selected buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=780682 + 2016-07-06 16:39:17 -0400 Olivier Crête <olivier.crete@collabora.com> * gst-libs/gst/audio/gstaudioaggregator.c: @@ -22615,6 +27965,16 @@ may only be processed on the output thread. https://bugzilla.gnome.org/show_bug.cgi?id=781673 +2016-07-06 17:28:11 -0400 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/elements/compositor.c: + tests: Test caps using query + Sending an event can accepted event if the caps were rejected + because the event could be queued and processed later. + Also send a drain query in the caps test to make sure that the + event has been processed. + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + 2016-07-06 16:41:44 -0400 Olivier Crête <olivier.crete@collabora.com> * gst-libs/gst/audio/gstaudioaggregator.c: @@ -22723,6 +28083,13 @@ 2017-05-16 14:05:52 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + * gst/compositor/Makefile.am: + Remove plugin specific static build option + Static and dynamic plugins now have the same interface. The standard + --enable-static/--enable-shared toggle are sufficient. + +2017-05-16 14:05:52 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + * gst/audiomixer/Makefile.am: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard @@ -22937,6 +28304,16 @@ It can happen when giving incorrect parameters (ie, a URI when expecting a pipeline, etc) +2017-05-07 11:47:40 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix whole example launch line actually + +2017-05-07 11:41:06 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: remove extraneous \ from example launch line in docs + 2017-05-04 23:55:20 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/allocators/Makefile.am: @@ -23219,6 +28596,15 @@ * gst/audiomixer/gstaudiomixer.c: docs: Port all docstring to gtk-doc markdown +2017-03-08 15:01:13 -0300 Thibault Saunier <thibault.saunier@osg.samsung.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + docs: Port all docstring to gtk-doc markdown + 2017-04-12 09:58:49 +0100 Tim-Philipp Müller <tim@centricular.com> * ext/theora/gsttheoraparse.c: @@ -23349,6 +28735,17 @@ The previous fix was only working for non-drop-frame timecodes. https://bugzilla.gnome.org/show_bug.cgi?id=779866 +2017-04-07 18:49:52 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Do not mix the same buffer twice when EOS. + When entering this code path, we know that: + We received EOS on this pad. + We consumed all its buffers. + In any case, we want to replace vaggpad->buffer with NULL, + otherwise we will end up mixing the same buffer twice. + https://bugzilla.gnome.org/show_bug.cgi?id=781037 + === release 1.11.90 === 2017-04-07 16:31:10 +0300 Sebastian Dröge <sebastian@centricular.com> @@ -23944,6 +29341,12 @@ to read way, just like gst-launch-1.0 does nowadays, without escaping everything three times. +2017-03-03 16:20:15 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: redo src caps negotiation if a sink pad's caps have changed in the meantime + https://bugzilla.gnome.org/show_bug.cgi?id=755782 + 2017-03-06 19:14:48 +1100 Jan Schmidt <jan@centricular.com> * gst-libs/gst/video/gstvideodecoder.c: @@ -24059,6 +29462,21 @@ videodecoder: Handle return value of gst_video_decoder_drain() CID 1362896 +2017-02-28 13:06:41 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + * gst/compositor/compositor.c: + glvideomixer/compositor: Correctly error out if calculating DAR fails + CID 1320700 + +2017-02-28 10:53:04 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + gl: Rename gst_gl_get_affine_transformation_meta_as_ndc_ext() to prevent symbol conflict + The same symbol also exists in libgstgl, although marked as private and + internal. This has no effect when doing static linking and there's a + symbol conflict. + 2017-02-09 12:44:51 +0000 Jochen Henneberg <jh@henneberg-systemdesign.com> * ext/vorbis/gstvorbisdec.c: @@ -24521,6 +29939,15 @@ see is READY->NULL. https://bugzilla.gnome.org/show_bug.cgi?id=775893 +2017-01-18 15:03:48 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: ensure caps are writable after intersection + gst_caps_intersect () may return an increased reference of one of the + input caps. + Fixes critical in the simple-launch-lines test: + Unexpected critical/warning: gst_caps_set_features: assertion 'IS_WRITABLE (caps)' failed + 2014-11-27 18:02:49 -0600 Carl Karsten <carl@personnelware.com> * gst/videotestsrc/gstvideotestsrc.c: @@ -24547,6 +29974,20 @@ * meson.build: meson: bump version +2017-01-12 21:35:25 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl/utils: also take care of the local GL context in query functions + Simplifies a deduplicates a lot of code in elements retrieving/setting + the local OpenGL context. + +2017-01-12 01:57:29 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glutils: remove trivial helper function + gst_gl_caps_replace_all_caps_features() is only used in two places and can + be trivially reproduced. + 2017-01-12 16:32:42 +0200 Sebastian Dröge <sebastian@centricular.com> * configure.ac: @@ -24759,6 +30200,12 @@ * gst-libs/gst/pbutils/encoding-profile.c: pbutils: Fix annotation in gst_encoding_profile_set_preset +2017-01-10 12:51:51 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + gl: remove custom control binding proxy + Use the existing GstProxyControlBinding instead. + 2017-01-09 19:45:25 +0000 Tim-Philipp Müller <tim@centricular.com> * win32/common/libgstvideo.def: @@ -25262,6 +30709,28 @@ decoder). Fixes playback on such HLS streams. +2016-12-14 15:53:41 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Reject multiview video + glvideomixer does not support it currently and it needs special support + for handling this correctly, and is rather non-trivial to implement for + all formats. + +2016-12-14 15:36:14 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Reject multiview video + Compositor does not support it currently and it needs special support + for handling this correctly, and is rather non-trivial to implement for + all formats. + +2016-12-14 15:35:42 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Remove unlock() if set_info() fails + There is not mutex locked here that needs to be unlocked. + 2016-12-14 09:48:02 +0000 Tim-Philipp Müller <tim@centricular.com> * .gitignore: @@ -25284,6 +30753,12 @@ boxed type or (skip) https://bugzilla.gnome.org/show_bug.cgi?id=774416 +2016-12-13 22:39:01 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/compositor.c: + gst: Don't declare variables inside the for loop header + This is a C99 feature. + 2016-12-13 22:26:08 +0200 Sebastian Dröge <sebastian@centricular.com> * ext/pango/gstbasetextoverlay.c: @@ -25830,6 +31305,13 @@ it's better if we have some room for add class members. Using the small padding since this is unlikely. +2016-11-17 20:20:15 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Mark pad as needing reconfiguration again if it failed + And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. + https://bugzilla.gnome.org/show_bug.cgi?id=774623 + 2016-11-17 20:18:55 +0200 Sebastian Dröge <sebastian@centricular.com> * ext/pango/gstbasetextoverlay.c: @@ -26038,6 +31520,14 @@ * gst-libs/gst/rtsp/meson.build: libs:rtsp: Remove wrong dependency on Sdp for the gir file +2016-11-10 19:14:24 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl/utils: move gen_shader() to the plugin and remove del_shader() + gst_gl_context_del_shader() can be replaced by a g_object_unref(). + gst_gl_context_gen_shader() should be replaced by using GstGLSLStage. + 2016-10-20 17:17:27 -0300 Thibault Saunier <thibault.saunier@osg.samsung.com> * gst-libs/gst/allocators/meson.build: @@ -26102,6 +31592,11 @@ gst_video_decoder_allocate_output_frame_with_params call. https://bugzilla.gnome.org/show_bug.cgi?id=773165 +2016-11-04 16:26:50 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/compositor.c: + gst: Fix more mentions of interlaced-mode to say interlace-mode + 2016-11-04 16:25:55 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/video-info.h: @@ -26147,6 +31642,13 @@ By making sure each different videoscale check instance gets logged into different output file +2016-10-05 12:19:12 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglvideomixer.c: + gl: GST_GL_TYPE -> GST_TYPE_GL + Some deprecated symbols are kept for backwards compatibility + 2016-11-02 11:04:32 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/video-orc-dist.c: @@ -27252,6 +32754,35 @@ build: silence error about pthread for 'make check' in osx Fixes "clang: error: argument unused during compilation: '-pthread'" +2016-08-26 02:20:11 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Handle if update_caps() returns EMPTY + Don't assume the returned caps from update_caps() is + non-empty. + +2016-08-26 02:07:27 +1000 Jan Schmidt <jan@centricular.com> + + * ext/gl/gstglvideomixer.c: + gl: Update glvideomixer doc + +2016-08-26 02:06:00 +1000 Jan Schmidt <jan@centricular.com> + + * ext/gl/gstglstereomix.c: + gl: Add/update docs for glviewconvert, glstereomix + Add some example pipelines for glstereomix, and fix up + the example pipelines for glviewconvert + +2016-08-26 00:29:34 +1000 Jan Schmidt <jan@centricular.com> + + * ext/gl/gstglstereomix.c: + * ext/gl/gstglstereomix.h: + glstereomix: Fix caps negotiation + The videoaggregator negotiation sequence changed some time + back and broke glstereomix. Instead of doing nego incorrectly + in the find_best_format() vfunc, do it directly in the + update_caps() method. + 2016-08-25 12:19:52 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/video/meson.build: @@ -27317,6 +32848,28 @@ Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. +2016-08-12 21:21:45 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/meson.build: + Add support for Meson as alternative/parallel build system + https://github.com/mesonbuild/meson + With contributions from: + Tim-Philipp Müller <tim@centricular.com> + Matej Knopp <matej.knopp@gmail.com> + Jussi Pakkanen <jpakkane@gmail.com> (original port) + Highlights of the features provided are: + * Faster builds on Linux (~40-50% faster) + * The ability to build with MSVC on Windows + * Generate Visual Studio project files + * Generate XCode project files + * Much faster builds on Windows (on-par with Linux) + * Seriously fast configure and building on embedded + ... and many more. For more details see: + http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html + http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html + Building with Meson should work on both Linux and Windows, but may + need a few more tweaks on other operating systems. + 2016-08-12 20:56:31 +0530 Nirbheek Chauhan <nirbheek@centricular.com> * .gitignore: @@ -27686,6 +33239,29 @@ and completely replace audioparse and videoparse https://bugzilla.gnome.org/show_bug.cgi?id=767011 +2016-07-12 12:59:57 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glframebuffer: rewrite for a more consistent API + Facilities are given to create fbo's and attach GL memory (renderbuffers + or textures). It also keeps track of the renderable size for use with + effective use with glViewport(). + +2016-07-12 00:30:22 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + * ext/gl/gstglmosaic.h: + * ext/gl/gstglvideomixer.c: + gl: use GLMemory for accessing textures everywhere + This simplifies and consolidates a lot of duplicated code creating + and modifying textures. + 2016-03-20 14:37:03 +1100 Jan Schmidt <jan@centricular.com> * gst/playback/gstdecodebin2.c: @@ -27985,6 +33561,12 @@ Automatic update of common submodule From f363b32 to f49c55e +2016-07-11 19:21:11 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + Fix various gboolean vs GstFlowReturn problems + Caught by building with MSVC which gave warnings for these + 2016-07-10 10:28:44 +0900 Seungha Yang <sh.yang@lge.com> * gst-libs/gst/app/gstappsrc.c: @@ -28451,6 +34033,14 @@ reffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 +2016-05-19 11:19:20 +0300 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * tests/check/elements/compositor.c: + fix event leaks in tests + The events are supposed to be unreffed when finishing the test, not + reffed. + https://bugzilla.gnome.org/show_bug.cgi?id=766663 + 2016-05-19 11:19:01 +0300 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> * tests/check/elements/audiointerleave.c: @@ -28654,6 +34244,12 @@ valid. https://bugzilla.gnome.org/show_bug.cgi?id=767173 +2016-05-17 17:14:49 +0300 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * gst-libs/gst/video/gstvideoaggregator.c: + gst-libs: gl, video: use MAY_BE_LEAKED flag + https://bugzilla.gnome.org/show_bug.cgi?id=767162 + 2016-05-10 13:56:13 +0200 Stian Selnes <stian@pexip.com> * gst-libs/gst/video/video-color.c: @@ -28713,6 +34309,20 @@ http://www.fourcc.org/yuv.php#IYU2 https://bugzilla.gnome.org/show_bug.cgi?id=763026#c5 +2016-05-24 23:39:27 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + glvideomixer: fix race retrieving the GL context from the display + _get_gl_context() can be called concurrently from either propose_allocation() or + decide_allocation(). If it so happens that this happens at the same time, + the check for whether we already had a GL context was outside the lock. Inside + the lock and loop, the first thing that happens is that we unref the current GL + context (if valid) as if there was a conflict adding it to the display. If the + timing was unlucky, subsequent use of the GL context would be referencing an + already unreffed GL context object resulting in a critical: + g_object_ref: assertion 'object->ref_count > 0' failed + https://bugzilla.gnome.org/show_bug.cgi?id=766703 + 2016-03-17 23:47:48 +0530 Nirbheek Chauhan <nirbheek.chauhan@gmail.com> * ext/libvisual/visual.c: @@ -28750,6 +34360,23 @@ Details should go into the debug message. We should probably make up new codes for encoder/decoder lib init failures too. +2016-05-19 16:55:31 +0300 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * ext/gl/gstglmosaic.c: + glmosaic: fix shader leak + gst_gl_mosaic_init_shader() is called twice with test_glmosaic so the + first shader was leaked. + https://bugzilla.gnome.org/show_bug.cgi?id=766661 + +2016-05-14 11:56:59 +0200 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't wait if input buffer is after output + If the input buffer is after the end of the output buffer, then waiting + for more data won't help. We will never get an input buffer for this point. + This fixes compositing of streams from rtspsrc. + https://bugzilla.gnome.org/show_bug.cgi?id=766422 + 2016-05-19 12:26:05 -0400 Olivier Crête <olivier.crete@collabora.com> * ext/opus/gstopusdec.c: @@ -28785,6 +34412,15 @@ Fix a leak with the 'test_suburi_error_wrongproto' test. https://bugzilla.gnome.org/show_bug.cgi?id=766515 +2016-05-16 12:27:50 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: canonicalise function names + Had to be done at some point: + gst_videoaggregator_* -> gst_video_aggregator_* + Also fix up some function names with typos. + 2016-05-16 09:52:35 +0100 Tim-Philipp Müller <tim@centricular.com> * tests/check/elements/playbin.c: @@ -28820,6 +34456,15 @@ in push-mode. https://bugzilla.gnome.org/show_bug.cgi?id=766467 +2016-05-15 14:34:33 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/compositor/compositor.c: + compositor: Check if we get a valid display ratio + As is done everywhere else, and avoids setting bogus values + And remove useless *<val> checks (we always provide valid values and + it's an internal function). + CID #1320700 + 2016-05-15 13:31:03 +0300 Sebastian Dröge <sebastian@centricular.com> * docs/plugins/gst-plugins-base-plugins.args: @@ -28890,6 +34535,24 @@ Attempt to reproduce leak. https://bugzilla.gnome.org/show_bug.cgi?id=755867 +2016-05-14 16:27:26 +0300 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + gl: take the affine transformation in NDC + Provide a function to get the affine matrix in the meta in terms of NDC + coordinates and use as a standard opengl matrix. + Also advertise support for the affine transformation meta in the allocation + query. + +2016-05-14 15:50:57 +0300 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglbasemixer.h: + glbasemixer: actually attempt to propose an allocation upstream + We were always failing the allocation query as a flag was never being set to + signal a successful negotiation. Fix by setting the required flag on a + successful caps event from upstream. + 2016-05-10 12:17:34 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> * tests/check/elements/vorbistag.c: @@ -28965,6 +34628,21 @@ ->blocked or has fixed caps (which were set before we could block it). https://bugzilla.gnome.org/show_bug.cgi?id=765456 +2016-05-04 12:17:59 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + gl/egl: replace gsteglimagememory with an EGLImage wrapper + That can be passed to GstGLMemoryEGL. + This also ports the dmabuf uploader to GstEGLImage and GstGLMemoryEGL. + +2016-05-03 11:11:24 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Set blend functions in ::negotiated_caps() instead of ::fixate_caps() + The latter should not change any state but just fixate the caps, while the + former is always called when srcpads caps are decided. + https://bugzilla.gnome.org/show_bug.cgi?id=765324 + 2016-05-02 14:21:55 -0300 Thiago Santos <thiagoss@osg.samsung.com> * ext/opus/gstopusdec.c: @@ -29147,6 +34825,23 @@ elsewhere, otherwise we won't have timestamps. https://bugzilla.gnome.org/show_bug.cgi?id=764948 +2016-04-18 13:46:55 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: plug caps leak + It was losing ref of the original 'ret' caps that would be returned + or returning it with 2 references to it. + +2016-03-28 15:44:27 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * tests/check/elements/compositor.c: + videoaggregator: properly handle interlace-mode restrictions + videoaggregator can't handle interlace-mode changes so it must + always restrict itself to the first interlacing mode it receives. + Tests included + https://bugzilla.gnome.org/show_bug.cgi?id=754495 + 2016-04-18 17:39:02 +0300 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> * tools/gst-play.c: @@ -29154,6 +34849,11 @@ So we can use gst-play to track memory leaks. https://bugzilla.gnome.org/show_bug.cgi?id=765216 +2016-04-15 13:22:51 -0700 Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com> + + * gst/compositor/compositor.c: + Drop usage of 'overlayed' to mean 'overlaid' + 2016-04-15 17:48:26 +0100 Tim-Philipp Müller <tim@centricular.com> * win32/common/libgstsdp.def: @@ -29315,6 +35015,11 @@ converter, only if it is a parser. https://bugzilla.gnome.org/show_bug.cgi?id=764948 +2016-04-11 16:43:45 +0000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + glbasemixer: chain up to the parent implementation + 2016-04-11 11:28:09 +0200 Fabrice Bellet <fabrice@bellet.info> * gst-libs/gst/audio/gstaudiosink.c: @@ -29326,6 +35031,16 @@ g_thread_self(). https://bugzilla.gnome.org/show_bug.cgi?id=764865 +2016-04-04 20:55:51 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: repect the result of find_best_format in the default update_caps + We weren't using the result of find_best_format at all. + Also, move the find_best_format usage to the default update_caps() to make + sure that it is also overridable. + https://bugzilla.gnome.org/show_bug.cgi?id=764363 + 2016-04-06 17:57:28 +0100 Tim-Philipp Müller <tim@centricular.com> * tests/check/libs/gstlibscpp.cc: @@ -29355,6 +35070,11 @@ * win32/common/libgstaudio.def: win32: Add new libgstaudio symbols +2016-03-23 03:16:11 +0000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: add support for the affine transformation meta + 2016-04-01 12:25:14 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> * gst-libs/gst/audio/gstaudiodecoder.c: @@ -29388,11 +35108,22 @@ allocation_caps will be the same as the caps set in the src pad. https://bugzilla.gnome.org/show_bug.cgi?id=764421 +2016-04-05 16:22:49 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: set the current texture to 0 before mapping + If we fail mapping, we don't want to use undefined video data in the subclass. + 2016-04-04 16:39:21 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com> * gst-libs/gst/audio/gstaudioencoder.c: audioencoder: fix gtk-doc comment format +2016-04-04 13:43:30 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixerbin.c: + glmixerbin: proxy the start-time-* properties from aggregator + 2016-04-02 10:37:55 +0200 Mikhail Fludkov <misha@pexip.com> * gst-libs/gst/rtp/gstrtpbasedepayload.c: @@ -30025,6 +35756,12 @@ Add a resampler to the processing chain when needed. port the audio resampler to the new audioconverter library +2016-03-28 08:45:45 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * tests/check/elements/compositor.c: + tests/compositor: Add test for aggregator pad numbering + Tests that the behaviour in 7a5cb5a473 is being conformed to. + 2016-03-25 01:13:54 +1100 Jan Schmidt <jan@centricular.com> * win32/common/libgstpbutils.def: @@ -30073,6 +35810,15 @@ bad: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763081 +2016-03-04 15:50:26 +0900 Vineeth TM <vineeth.tm@samsung.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixerbin.c: + * ext/gl/gstglstereomix.c: + * gst/compositor/compositor.c: + bad: use new gst_element_class_add_static_pad_template() + https://bugzilla.gnome.org/show_bug.cgi?id=763081 + 2016-03-08 19:22:18 +0000 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/audio/gstaudiodecoder.c: @@ -30281,6 +36027,12 @@ Use gst-inspect-1.0 instead of gst-inspect-0.10 https://bugzilla.gnome.org/show_bug.cgi?id=763316 +2016-03-16 22:16:34 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglstereomix.c: + glstereo{mix,split}: allow running on GLES 2/3 + It's mostly supported for GLES 2.x, fully supported on GLES 3.x + === release 1.7.91 === 2016-03-15 12:02:20 +0200 Sebastian Dröge <sebastian@centricular.com> @@ -30468,6 +36220,15 @@ Remove unused _register() functions and look up the performance debug category in a function that's actually called at some point. +2016-03-08 02:06:46 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: signal continuation in reset + We want to iterate over all the pads, not just the first one. Fix by returning + TRUE in the GstAggregatorPadForeachFunc. + Removes a GST_IS_GL_CONTEXT() assertion on shutdown with >2 inputs + using gst-launch. + 2016-03-04 17:13:59 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/audio/audio-channel-mixer.h: @@ -30702,6 +36463,36 @@ * gst-libs/gst/video/video-frame.c: video: flesh out docs for gst_video_frame_map() +2016-02-23 12:42:19 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * tests/check/elements/compositor.c: + tests: compositor: drop special case for valgrind timeout + The default one is 6 minutes, the test was using 5 minutes so just + resort to using the default. + For the non-valgrind test also use the default 20 secs instead of + reducing it to 6s. No real reason to set a custom value here. + +2016-02-23 12:17:59 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * tests/check/elements/compositor.c: + tests: compositor: add tests for caps queries + Verifies that proper caps are returned based on what downstream + restricts. + +2016-02-18 10:57:51 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * tests/check/elements/compositor.c: + videoaggregator: fix caps queries to allow proper renegotiation + When caps are already negotiated it should be possible to + select formats other than the one that was negotiated. If downstream + allows alpha video caps and it has already negotiated to a non-alpha + format, caps queries should still return the alpha caps as a possible + format as caps renegotiation can happen. + Includes tests (for compositor) to check that caps queries done after + a caps has been negotiated returns complete results + https://bugzilla.gnome.org/show_bug.cgi?id=757610 + 2016-02-25 10:47:17 +0000 Luis de Bethencourt <luisbg@osg.samsung.com> * gst-libs/gst/pbutils/gstaudiovisualizer.c: @@ -30724,6 +36515,15 @@ Use the current (intermediate) format to decide how to set up dithering instead of the input format. +2016-02-24 10:45:17 +0800 Wang Xin-yu (王昕宇) <comicfans44@gmail.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + glmixer: iterator didn't advance in continue statement + Leading to a deadlock. + https://bugzilla.gnome.org/show_bug.cgi?id=760873 + 2016-02-23 18:23:45 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/rtp/gstrtpbasepayload.c: @@ -30745,6 +36545,12 @@ about the conductor. https://bugzilla.gnome.org/show_bug.cgi?id=762451 +2016-02-22 20:49:52 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl: error out if the configured GL API is unsupported by our element + https://bugzilla.gnome.org/show_bug.cgi?id=759801 + 2016-02-20 11:31:43 +0000 Tim-Philipp Müller <tim@centricular.com> * ext/theora/gsttheoradec.c: @@ -31013,6 +36819,34 @@ error. Check if topology is valid before using it https://bugzilla.gnome.org/show_bug.cgi?id=755918 +2016-01-21 10:40:36 +0800 Wang Xin-yu (王昕宇) <comicfans44@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: don't leak pad's vertex buffer on release_pad + https://bugzilla.gnome.org/show_bug.cgi?id=760873 + +2016-02-17 01:08:18 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + * ext/gl/gstglmosaic.h: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglstereomix.h: + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glmixer: Remove usage of GstGLMixerFrameData + Subclasses can just iterate over the list of pads themselves + https://bugzilla.gnome.org/show_bug.cgi?id=760873 + +2016-01-13 14:41:22 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: don't hold the object lock while calling into GL + Doing so can deadlock between the GL thread and the object lock e.g. + when performing reconfigure events in glimagesink on a resize event. + https://bugzilla.gnome.org/show_bug.cgi?id=760559 + 2016-02-05 10:10:40 +0100 Havard Graff <havard.graff@gmail.com> * gst-libs/gst/Makefile.am: @@ -31124,6 +36958,20 @@ was passed to the Opus decoding API. https://bugzilla.gnome.org/show_bug.cgi?id=758158 +2016-01-21 16:10:48 +0800 Wang Xin-yu (王昕宇) <comicfans44@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix checker vbo leak + https://bugzilla.gnome.org/show_bug.cgi?id=760925 + +2016-01-29 14:03:26 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: par may not exist in the caps + Fixes a critical in the gst-validate tests: + gst_structure_fixate_field_nearest_fraction: assertion 'gst_structure_has_field + (structure, field_name) + 2016-01-28 13:29:39 +0100 Sebastian Dröge <sebastian@centricular.com> * gst/audiorate/gstaudiorate.c: @@ -31154,6 +37002,31 @@ Some encoders can update the stream header through time (for example vp8 might do that) but it does not strictly changes the output format. +2015-10-14 21:13:57 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglstereomix.c: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst/compositor/compositor.c: + videoaggregator: don't do caps processing that is not overridable + Allows the subclass to completely override the chosen src caps. + This is needed as videoaggregator generally has no idea exactly + what operation is being performed. + - Adds a fixate_caps vfunc for fixation + - Merges gst_video_aggregator_update_converters() into + gst_videoaggregator_update_src_caps() as we need some of its info + for proper caps handling. + - Pass the downstream caps to the update_caps vfunc + https://bugzilla.gnome.org/show_bug.cgi?id=756207 + +2016-01-27 19:56:36 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + gl: move control binding proxy implementation from glvideomixer + Other elements may need to use it's functionality + 2016-01-26 14:09:42 +0100 Aurélien Zanelli <aurelien.zanelli@parrot.com> * gst-libs/gst/video/video-format.h: @@ -31419,6 +37292,23 @@ resort to using is_subset() checks. https://bugzilla.gnome.org/show_bug.cgi?id=760477 +2016-01-12 18:21:50 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvideomixer: implement glBlendFunc and glBlendEquation + Allows more blending options than just A over B + e.g. frame comparisons are now possible. + glvideomixer name=m + sink_0::zorder=0 + sink_1::zorder=1 + sink_1::blend-equation-rgb={subtract,reverse-subtract} + sink_1::blend-function-src-rgb=src-color + sink_1::blend-function-dst-rgb=dst-color + ! glimagesinkelement + videotestsrc pattern=checkers-4 ! m.sink_0 + videotestsrc pattern=checkers-8 ! m.sink_1 + 2016-01-12 15:56:36 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/audio/audio-channel-mixer.c: @@ -32104,6 +37994,13 @@ Make it possible to pass an array of sample blocks when dealing with non-interleaved formats. +2015-12-11 15:39:57 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglstereomix.h: + gldownload: remove helper api from the library + It was never used by anyone and is not needed anymore with the element + and GstGLMemory's transparent support for downloading textures. + 2015-12-12 17:49:28 +0100 Luis de Bethencourt <luisbg@osg.samsung.com> * gst-libs/gst/riff/riff-media.c: @@ -32480,6 +38377,14 @@ audio-quantize: Fix dither_buffer memory leak https://bugzilla.gnome.org/show_bug.cgi?id=757928 +2015-11-10 13:52:30 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglstereomix.c: + glviewconvert: remove set_format + We need the caps to be able to + 1. check the caps features + 2. get the requested texture-target on input/output + 2015-11-11 00:59:16 +1100 Jan Schmidt <jan@centricular.com> * ext/vorbis/gstvorbisdec.c: @@ -32622,6 +38527,12 @@ channelmix: GstChannel -> GstAudioChannel Rename GstChannel to GstAudioChannel +2015-11-06 12:30:12 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglmixerbin.c: + glmixerbin: fix minor leak + Don't leak removed list node. + 2015-11-06 13:02:19 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/audio/audio-quantize.c: @@ -32935,6 +38846,13 @@ Plus it creates more readable values in the logs. https://bugzilla.gnome.org/show_bug.cgi?id=757480 +2015-11-02 16:58:57 +0000 Luis de Bethencourt <luisbg@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: use GST_STIME_ARGS for GstClockTimeDiff + No need to manually handle negative values of diff, GST_STIME_ARGS does + exactly this. + 2015-11-02 16:36:35 +0000 Luis de Bethencourt <luisbg@osg.samsung.com> * ext/ogg/gstoggmux.c: @@ -33085,6 +39003,15 @@ * gst/audioconvert/gstaudioquantize.c: audioquantize: make helper for add with saturation +2015-10-29 00:44:26 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglstereomix.c: + glmemory: add support for rectangle textures + Add the various tokens/strings for the differnet texture types (2D, rect, oes) + Changes the GLmemory api to include the GstGLTextureTarget in all relevant + functions. + Update the relevant caps/templates for 2D only textures. + 2015-10-29 16:52:31 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/gstvideodecoder.c: @@ -33445,6 +39372,12 @@ formatter is being used in logs. Changing all those to int64 https://bugzilla.gnome.org/show_bug.cgi?id=756065 +2015-10-06 21:23:11 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Proxy the ignore-eos videoaggregator property as well + Identical to how the z-order property is proxied + 2015-10-04 18:36:00 +0100 Sebastian Dröge <sebastian@centricular.com> * sys/xvimage/xvimagepool.c: @@ -33627,6 +39560,14 @@ This is resulting in segmentation fault. Fix the same by typecasting to guint64 https://bugzilla.gnome.org/show_bug.cgi?id=755840 +2015-09-29 13:31:18 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix compilation with older glib version + Remove weird use of private gtype defines and fix compilation + with older glib versions such as 2.36. + https://bugzilla.gnome.org/show_bug.cgi?id=755754 + 2015-09-23 11:59:22 -0400 Perry Hung <perry@leaflabs.com> * gst-libs/gst/app/Makefile.am: @@ -33636,6 +39577,18 @@ paths when using ./configure --with-pkg-config-path= https://bugzilla.gnome.org/show_bug.cgi?id=755494 +2015-09-28 22:20:29 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl: chain up to the parent class for GstElement::set_context + https://bugzilla.gnome.org/show_bug.cgi?id=705579 + +2015-08-29 19:16:38 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * tests/check/elements/compositor.c: + check: Add test for videoaggregator sinkpads being sorted by zorder + https://bugzilla.gnome.org/show_bug.cgi?id=754285 + 2015-09-26 10:21:41 +0100 Tim-Philipp Müller <tim@centricular.com> * gst/audiomixer/gstaudioaggregator.c: @@ -33888,6 +39841,13 @@ 2015-09-18 00:20:13 +1000 Jan Schmidt <jan@centricular.com> + * ext/gl/gstglstereomix.c: + Don't throw compiler warnings with G_DISABLE_ASSERT + Disable code that warns about unused variables when G_DISABLE_ASSERT + is defined, as it is in tarballs and pre-releases. + +2015-09-18 00:20:13 +1000 Jan Schmidt <jan@centricular.com> + * gst/audiomixer/gstaudioaggregator.c: Don't throw compiler warnings with G_DISABLE_ASSERT Disable code that warns about unused variables when G_DISABLE_ASSERT @@ -33900,6 +39860,12 @@ audiosink, multisocketsink: Fix error leak during failures https://bugzilla.gnome.org/show_bug.cgi?id=755143 +2015-09-17 13:35:02 +0900 Vineeth T M <vineeth.tm@samsung.com> + + * ext/gl/gstglbasemixer.c: + gl: Fix GError leaks during failures + https://bugzilla.gnome.org/show_bug.cgi?id=755140 + 2015-09-16 19:53:35 +0200 Sebastian Dröge <sebastian@centricular.com> * gst/playback/gsturidecodebin.c: @@ -33947,6 +39913,18 @@ audioaggregator: Use stream time in the position query instead of segment position https://bugzilla.gnome.org/show_bug.cgi?id=753196 +2015-09-11 12:22:51 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Fix mixup of running times and segment positions + We have to queue buffers based on their running time, not based on + the segment position. + Also return running time from GstAggregator::get_next_time() instead of + a segment position, as required by the API. + Also only update the segment position after we pushed a buffer, otherwise + we're going to push down a segment event with the next position already. + https://bugzilla.gnome.org/show_bug.cgi?id=753196 + 2015-09-14 09:36:20 +0900 Vineeth TM <vineeth.tm@samsung.com> * sys/xvimage/xvimagesink.c: @@ -33985,6 +39963,19 @@ We should cast to guintptr from gulong before we cast to gpointer. https://bugzilla.gnome.org/show_bug.cgi?id=754755 +2015-09-09 19:51:18 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: fix caps query to properly handle alpha formats + Only accept alpha if downstream has alpha as well. It could + theoretically accept alpha unconditionally if blending is + properly implemented for handle it but at the moment this + is a missing feature. + Improves the caps query by also comparing with the template + caps to filter by what the subclass supports. + https://bugzilla.gnome.org/show_bug.cgi?id=754465 + 2015-09-09 19:00:33 -0300 Thiago Santos <thiagoss@osg.samsung.com> * gst-libs/gst/video/video-format.c: @@ -34026,6 +40017,18 @@ 64bit size data modifier. https://bugzilla.gnome.org/show_bug.cgi?id=754630 +2015-09-05 01:50:41 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + * tests/check/elements/compositor.c: + compositor: Ensure all arguments to CLAMP are signed int + If any of the arguments to CLAMP are unsigned integers, the comparison causes + an automatic conversion of the signed int to unsigned, which causes -1 to become + UINT_MAX and get clamped to the high value of the CLAMP instead of 0. + See 716 at http://c0x.coding-guidelines.com/6.3.1.8.html + Also add a test for this. + https://bugzilla.gnome.org/show_bug.cgi?id=754576 + 2015-08-31 10:46:43 +0200 Havard Graff <havard.graff@gmail.com> * gst-libs/gst/Makefile.am: @@ -34053,6 +40056,14 @@ videoscale: fix gamma-decode option We need to use the enum to configure the option now. +2015-09-02 19:16:56 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: lift restriction of changing pixel-aspect-ratio + The videoaggregator can convert PAR, there is no reason for + restricting it. + https://bugzilla.gnome.org/show_bug.cgi?id=754291 + 2015-09-03 08:58:08 +0530 Prashant Gotarne <ps.gotarne@samsung.com> * ext/pango/gstbasetextoverlay.c: @@ -34071,12 +40082,30 @@ * gst-libs/gst/allocators/allocators.h: allocators: include gstfdmemory.h in the main library header, allocators.h +2015-08-29 16:51:08 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + compositor: variables in clamp_rectangle() should be signed + x/y/w/h are signed integers. As can be seen in GstCompositorPad. + The prototype for clamp_rectangle was wrong. This commit reverts the change + and fixes the prototype. + This reverts commit bca444ea4a84c39e9989681f892f6e4cb2033cf9. + 2015-08-29 10:44:28 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/audio/gstaudiobasesink.c: audiobasesink: fix misleading error message debug detail https://bugzilla.gnome.org/show_bug.cgi?id=754260 +2015-08-28 15:21:11 +0100 Luis de Bethencourt <luis@debethencourt.com> + + * gst/compositor/compositor.c: + compositor: remove check for below zero for unsigned value + CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative + number since it is an unsigned integer. Removing that check and only checking if + it is bigger than max by using MIN(). + CID 1320707 + 2015-08-28 09:36:15 -0300 Thiago Santos <thiagoss@osg.samsung.com> * gst/playback/gstplaysinkconvertbin.c: @@ -34094,12 +40123,32 @@ audiobasesink: Fix incorrect/missing custom slaving method documentation https://bugzilla.gnome.org/show_bug.cgi?id=754199 +2015-08-26 15:40:16 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + * tests/check/elements/compositor.c: + compositor: Actually use the output resolution for clamping + The obscured check in compositor was using the dimensions of the pad to clamp + the h/w of the pad instead of the output resolution, and was doing an incorrect + calculation to do so. Fix that by simplifying the whole calculation by using + corner coordinates. Also add a test for this bug which fell through the cracks, + and just skip all the obscured tests if the pad's alpha is 0.0. + https://bugzilla.gnome.org/show_bug.cgi?id=754107 + 2015-08-21 16:44:43 +0900 hoonhee.lee <hoonhee.lee@lge.com> * tests/check/elements/audiomixer.c: tests: audiomixer: remove duplicated word in comment https://bugzilla.gnome.org/show_bug.cgi?id=753915 +2015-08-20 14:11:56 +0300 Ben Browitt <ben.browitt@gmail.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Always set the pad's buffer_vinfo when storing a buffer + Otherwise it might be unset, and then the buffer is used and + gst_video_frame_map() will crash because of invalid video-info. + https://bugzilla.gnome.org/show_bug.cgi?id=753805 + 2015-08-19 21:19:05 +0900 Eunhae Choi <eunhae1.choi@samsung.com> * gst/subparse/gstsubparse.c: @@ -34725,6 +40774,21 @@ set it, as it's confusing. https://bugzilla.gnome.org/show_bug.cgi?id=752791 +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-07-30 18:43:19 -0400 Olivier Crête <olivier.crete@collabora.com> * ext/ogg/gstoggdemux.c: @@ -34741,6 +40805,13 @@ not delivered before they are needed. 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-02 18:33:43 -0400 Olivier Crête <olivier.crete@collabora.com> * gst/audiomixer/gstaudiointerleave.c: @@ -34795,6 +40866,28 @@ Fixes make check-valgrind. https://bugzilla.gnome.org/show_bug.cgi?id=750235 +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-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/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-28 13:57:20 +0300 Sebastian Dröge <sebastian@centricular.com> * ext/pango/gstbasetextoverlay.c: @@ -34855,6 +40948,16 @@ the impression that seeking doesn't actually work. Make minimum seek step a second instead. +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: @@ -34925,6 +41028,13 @@ * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Read output buffer duration with lock held +2015-06-19 11:57:06 +0100 Julien Isorce <j.isorce@samsung.com> + + * ext/gl/gstglbasemixer.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-20 16:25:10 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> * ext/pango/gstbasetextoverlay.c: @@ -35253,6 +41363,13 @@ gst_navigation_message_parse_event, but not freed. https://bugzilla.gnome.org/show_bug.cgi?id=752040 +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-03 21:48:52 +0200 Stefan Sauer <ensonic@users.sf.net> * docs/plugins/gst-plugins-base-plugins-sections.txt: @@ -35364,6 +41481,12 @@ Use a local category for the default category and fix the import for the performance category. +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-02 10:47:45 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> * ext/pango/gstbasetextoverlay.c: @@ -35390,6 +41513,11 @@ and the true branches of these checks. CID #1308943 +2015-06-26 15:34:35 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglmixer.c: + gl: Don't leak pool if set_config failed + 2015-07-02 13:15:58 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/audio/gstaudioencoder.c: @@ -35631,6 +41759,20 @@ send event when switch EOS track to non-EOS one. https://bugzilla.gnome.org/show_bug.cgi?id=750761 +2015-06-20 13:36:27 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: simplifies and improves sink_get_caps. + The problem here was that after removing the formats and + all the things we could convert, we then intersected these + caps with the template caps. + Hence if a subclass offered permissive sink templates + (eg all the possible formats videoconvert handles), but only + one output format, then at negotiation time getcaps returned + caps with the format restricted to that format, even though + we do handle conversion. + https://bugzilla.gnome.org/show_bug.cgi?id=751255 + 2015-06-22 20:54:18 +0200 Sebastian Dröge <sebastian@centricular.com> * gst/playback/gststreamsynchronizer.c: @@ -35749,6 +41891,14 @@ is packed at half resolution per view or not, since very few videos provide the information. +2015-05-30 02:29:04 +1000 Jan Schmidt <jan@centricular.com> + + * ext/gl/gstglstereomix.c: + * ext/gl/gstglstereomix.h: + gl: Add glviewconvert, glstereomix and glstereosplit elements + Conversion elements for transforming multiview/stereoscopic video + https://bugzilla.gnome.org/show_bug.cgi?id=611157 + 2015-06-17 17:09:46 +0200 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-converter.c: @@ -35848,6 +41998,38 @@ * Miss-named parameter * Missing transfer none annotation for meta +2015-06-15 14:29:04 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Print some debug output if we change the timestamp offset + +2015-06-15 14:25:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Add some more debug output + +2015-06-15 14:19:05 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't update the ts-offset before updating the actual configured caps + +2015-06-15 14:18:39 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Remember if the last LATENCY query returned live or not and use the in the QoS messages + +2015-06-14 23:20:38 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst/compositor/compositor.c: + compositor: update zorder documentation. + It is not bound between 0 and 10000 anymore. + +2015-06-14 23:13:59 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: No need to artificially bound the zorder. + It is an unsigned integer so the upper bound is G_MAXUINT. + 2015-05-27 12:20:19 +0300 Lazar Claudiu <lazar.claudiu.florin@gmail.com> * ext/pango/gstbasetextoverlay.c: @@ -35860,6 +42042,12 @@ * gst-libs/gst/video/gstvideoencoder.c: videoencoder: fix gtk-doc chunk for new function +2015-06-13 18:43:04 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixerbin.c: + glmixerbin: implement proper dynamic pad removal + https://bugzilla.gnome.org/show_bug.cgi?id=750881 + 2015-05-12 14:12:52 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> * ext/pango/gstbasetextoverlay.c: @@ -35907,6 +42095,29 @@ * win32/common/libgstvideo.def: Update .def file for new API +2015-06-06 20:40:13 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * tests/check/elements/compositor.c: + tests: Add test for the 'ignore-eos' compositor sink pad property + When the 'ignore-eos' property is set on a pad, compositor will keep resending + the last buffer on the pad till the pad is unlinked. We count the buffers + received on appsink, and if it's more than the buffers sent by videotestsrc, the + test passes. + +2015-02-10 00:49:35 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: add "ignore-eos" property for input pads + When set, it causes videoaggregator to repeatedly aggregate the last buffer on + an EOS pad instead of skipping it and outputting silence. This is useful, for + instance, while playing back files seamless one after the other, to avoid + videoaggregator ever outputting silence (the checkerboard pattern). + It is to be noted that if all the pads on videoaggregator have this property set + on them, the mixer will never forward EOS downstream for obvious reasons. Hence, + at least one pad with 'ignore-eos' set to FALSE must send EOS to the mixer + before it will be forwarded downstream. + https://bugzilla.gnome.org/show_bug.cgi?id=748946 + 2015-06-13 01:35:52 +1000 Jan Schmidt <jan@centricular.com> * gst-libs/gst/video/gstvideodecoder.c: @@ -35966,6 +42177,11 @@ text-sink at all. https://bugzilla.gnome.org/show_bug.cgi?id=750785 +2015-06-11 15:22:04 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixerbin.c: + gl: Use gst_object_ref_sink() for gl{filter,mixer,src}bin too + 2015-06-11 23:01:48 +1000 Jan Schmidt <jan@centricular.com> * gst/playback/gstplaybin2.c: @@ -36180,6 +42396,31 @@ Set WM_CLASS of the xvimagesink window so window managers can apply rules based on xprop filtering. +2015-05-06 14:29:01 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: simplify aggregate returning + Rework special handling with goto/labels to only have one case + and otherwise just return normally. + +2015-05-06 14:19:36 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: refactor caps reconfigure to its own function + Makes the aggregation code shorter and easier to read + +2015-05-06 13:59:51 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fixing types in aggregate function + Correctly use boolean and GstFlowReturn types in the function. + +2015-05-06 13:08:11 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: use macro to access aggregator src pad + Makes code a bit more readable + 2015-06-07 23:06:08 +0200 Stefan Sauer <ensonic@users.sf.net> * common: @@ -36229,6 +42470,11 @@ * gst/audiomixer/gstaudiomixerorc-dist.c: Release 1.5.1 +2015-06-07 10:55:35 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositororc-dist.c: + Release 1.5.1 + === release 1.5.1 === 2015-06-07 10:04:41 +0200 Sebastian Dröge <sebastian@centricular.com> @@ -36330,6 +42576,12 @@ caps, the code and behaviour is too confusing otherwise. https://bugzilla.gnome.org/show_bug.cgi?id=749581 +2015-06-05 09:35:39 -0300 Thiago Santos <thiagoss@osg.samsung.com> + + * ext/gl/gstglmixerbin.c: + Fix a common typo: retreive -> retrieve + Seems to have been copy pasted around a few places + 2015-06-05 10:16:56 +0200 Sebastian Dröge <sebastian@centricular.com> * docs/libs/gst-plugins-base-libs-sections.txt: @@ -36521,6 +42773,26 @@ static const gchar utf16beenc[] = "UTF-16BE"; ^ +2015-05-10 18:55:16 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Add class property to disable caps scaling + Add preserve_update_caps_result boolean on the class to allow + sub-classes to disable videoaggregator removing sizes and framerate + from the update_caps() return result. + +2015-05-04 18:17:21 +1000 Jan Schmidt <jan@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Catch errors, and allow sub-class to return NULL from get_output_buffer() + A return value of GST_FLOW_OK with a NULL buffer from get_output_buffer() + means the sub-class doesn't want to produce an output buffer, so + skip it. + If gst_videoaggregator_do_aggregate() generates an error, make sure + to propagate it - don't just ignore and discard the error by + over-writing it with the gst_pad_push() result. + 2015-05-30 01:03:46 +1000 Jan Schmidt <jan@centricular.com> * docs/design/part-stereo-multiview-video.markdown: @@ -36701,6 +42973,18 @@ Has been removed in 835422b2 as part of porting things over to the new videoscale API. +2015-05-21 16:24:48 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + * gst/compositor/compositor.c: + compositor/glvideomixer: Don't calculate PAR/DAR with unset GstVideoInfos + Otherwise we divide by zero. + +2015-05-21 16:19:08 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Fix double assignment + 2015-05-21 12:10:40 +0100 Tim-Philipp Müller <tim@centricular.com> * tools/gst-play-1.0.1: @@ -36713,6 +42997,14 @@ * gst-libs/gst/rtp/Makefile.am: rtp: Clean G-I files on make clean too +2015-05-21 00:56:01 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * gst/compositor/compositor.c: + compositor/glvideomixer: fix up par handling + We were using the wrong formula + https://bugzilla.gnome.org/show_bug.cgi?id=749634 + 2015-05-20 16:23:46 +0300 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/rtp/Makefile.am: @@ -36900,6 +43192,16 @@ http://www.docbook.org/tdg/en/html/para.html http://www.docbook.org/tdg/en/html/refsect2.html +2015-05-18 20:16:32 +0200 Stefan Sauer <ensonic@users.sf.net> + + * gst/compositor/compositor.c: + Revert "doc: Workaround gtkdoc issue" + This reverts commit ff6c736fe08e01f4320c4b02e811a0b57cf97cc1. + This is fixed by the gtk-doc 1.23 release. + <para> cannot contain <refsect2>: + http://www.docbook.org/tdg/en/html/para.html + http://www.docbook.org/tdg/en/html/refsect2.html + 2015-05-18 20:01:49 +0200 Stefan Sauer <ensonic@users.sf.net> * gst/playback/gstplaybin2.c: @@ -36940,6 +43242,14 @@ followed by a refsect2. Workaround the issue by wrapping the refsect2 into para. +2015-05-16 23:38:14 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * gst/compositor/compositor.c: + doc: Workaround gtkdoc issue + With gtkdoc 1.22, the XML generator fails when a itemizedlist is + followed by a refsect2. Workaround the issue by wrapping the + refsect2 into para. + 2015-05-16 23:33:55 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> * gst/playback/gstplaybin2.c: @@ -36955,6 +43265,70 @@ playback: use the new gst_object api Use gst_object_has_as_anchestor instead of the now deprecated _has_ancestor. +2015-05-14 16:42:09 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls + We are using shaders everywhere and so they are not needed + +2015-05-01 12:04:28 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + gl: element buffers are part of vao state + Use them as such. They are also required for GL3 core profile support + with glDrawElements on OS X. + +2015-05-14 13:04:21 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + compositor: implement proper par handling + We were previously failing on different input and output par + +2015-05-13 23:54:52 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl: don't deadlock on context creation failure + https://bugzilla.gnome.org/show_bug.cgi?id=749284 + +2015-05-13 15:42:15 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixerbin.c: + glmixerbin: Don't unref pad templates + Otherwise we unref the reference that is owned by the element class. + +2015-05-13 17:38:35 +1000 Matthew Waters <matthew@centricular.com> + + * gst/compositor/compositor.c: + * tests/check/elements/compositor.c: + compositor: fix rectangle obscure test to clamp against the output frame size + Rather than one of the input pad video info's. + The test checking this was not constraining the output frame size + to ensure that the out of frame stream was not being displayed. + +2015-05-13 17:11:55 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: implement par handling + We were previously ignoring it completely + +2015-05-13 17:10:42 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: don't upload the vertex data every frame + Add the missing cache tracking statement. + +2015-05-11 15:54:52 +0300 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: Implement GstVideoAggregator::find_best_format() + Without this, we will fixate weird pixel-aspect-ratios like 1/2147483647. But + in the end, all the negotiation code in videoaggregator needs a big cleanup + and videoaggregator needs to get rid of the software-mixer specific things + everywhere. + 2015-05-10 11:42:21 +0100 Tim-Philipp Müller <tim@centricular.com> * ext/ogg/gstoggmux.c: @@ -37039,6 +43413,21 @@ * gst-libs/gst/video/gstvideodecoder.c: videodecoder: Also negotiate with downstream if needed before handling a GAP event +2015-05-06 15:46:49 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + Revert "gl: readd glupload/download onto element pads" + This reverts commit 87d8270f302b03f63ce04f986d824892a2c131fd. + +2015-05-06 15:43:32 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + Revert "Revert "glvideomixer: implement with glmixerbin"" + This reverts commit b4bd11f2f3a60224d188b27ab55b278077cb1217. + 2015-05-06 12:40:48 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/gstvideodecoder.c: @@ -37140,6 +43529,46 @@ These lines have done nothing for about 10 years. https://bugzilla.gnome.org/show_bug.cgi?id=748820 +2015-03-13 06:10:52 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * tests/check/elements/compositor.c: + tests: Add a check for the new compositor pad-is-obscured optimization + We verify that all the buffers on an obscured sinkpad are skipped by overriding + the map() function in the GstVideoMeta of the buffers to set a variable when + called. We also test that the buffers do get mapped when they're not obscured. + Blame^WCredit for the GstVideoMeta map() idea goes to Tim. + https://bugzilla.gnome.org/show_bug.cgi?id=746147 + +2015-04-18 15:10:00 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + compositor: Only map the frame from a buffer if it will be used + It's a waste of resources to map it if it won't be converted + or used at all. Since we moved the frame mapping down, we need + to use the GST_VIDEO_INFO accessor macros now in the code above + that instead of the GST_VIDEO_FRAME accessor macros. + https://bugzilla.gnome.org/show_bug.cgi?id=746147 + +2015-04-18 15:09:02 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + compositor: use accessor macros for consistency + https://bugzilla.gnome.org/show_bug.cgi?id=746147 + +2015-04-18 15:09:02 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + compositor: Skip pads that are completely obscured by a higher zorder pad + For each frame, compare the frame boundaries, check if the format contains an + alpha channel, check opacity, and skip the frame if it's going to be completely + overwritten by a higher zorder frame. The check is O(n^2), but that doesn't + matter here because the number of sinkpads is small. + More can be done to avoid needless drawing, but this covers the majority of + cases. See TODOs. Ideally, a reverse painter's algorithm should be used for + optimal drawing, but memcpy during compositing is small compared to the CPU used + for frame conversion on each pad. + https://bugzilla.gnome.org/show_bug.cgi?id=746147 + 2015-04-10 15:24:28 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> * gst-libs/gst/pbutils/codec-utils.c: @@ -37155,6 +43584,23 @@ Remove unused macro GET_TMP_LINE https://bugzilla.gnome.org/show_bug.cgi?id=748687 +2015-04-30 11:15:40 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + gl: readd glupload/download onto element pads + Allows insertion of gl elements into non-gl pipelines without converter + (upload/download) elements. + https://bugzilla.gnome.org/show_bug.cgi?id=743974 + +2015-04-29 22:55:00 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + Revert "glvideomixer: implement with glmixerbin" + This reverts commit 0fb56738a14391f248aa0be8756adeaf978baa0c. + 2015-04-29 15:44:59 +0100 Tim-Philipp Müller <tim@centricular.com> * tools/gst-play.c: @@ -37209,6 +43655,12 @@ Use the helper function available in the base class instead. https://bugzilla.gnome.org/show_bug.cgi?id=748585 +2015-04-28 20:11:07 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixerbin.c: + glupload: provide the sink template caps that could be used + https://bugzilla.gnome.org/show_bug.cgi?id=746399 + 2015-04-28 12:01:02 +0200 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-info.c: @@ -37239,6 +43691,14 @@ audio: Change the remaining "samples" in the ::delay() vfunc docs to "frames" https://bugzilla.gnome.org/show_bug.cgi?id=748289 +2015-04-27 15:20:56 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl: unref display/other-context in the correct place + Otherwise state changes from PLAYING->READY->PAUSED will cause there to + to be no display configured on the element. + https://bugzilla.gnome.org/show_bug.cgi?id=748405 + 2015-04-26 20:13:01 +0100 Tim-Philipp Müller <tim@centricular.com> * tests/check/pipelines/tcp.c: @@ -37418,6 +43878,14 @@ validate.http.media_check.vorbis_theora_1_ogg scenario. https://bugzilla.gnome.org/show_bug.cgi?id=748247 +2015-04-22 18:54:45 +0900 Vineeth T M <vineeth.tm@samsung.com> + + * ext/gl/gstglmixer.c: + glmixer: Possible null pointer dereference + While printing error message when context fails, error variable is not being used anymore + so it will lead to null pointer dereference + https://bugzilla.gnome.org/show_bug.cgi?id=748287 + 2015-04-22 10:34:09 +0200 Sebastian Dröge <sebastian@centricular.com> * INSTALL: @@ -37447,6 +43915,24 @@ video-scaler: scale enough pixels in YUY2 (and friends) mode Fixes https://bugzilla.gnome.org/show_bug.cgi?id=747790 +2015-04-21 12:19:46 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gldisplay: synchronize the searching and creation of GstGLContext's + Ootherwise we could end up with multiple elements in different chains + each creating a context. Fixes context creation with glvideomixer. + +2015-04-15 15:22:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * ext/gl/gstglmixer.c: + glmixer: fix caps leak in gst_gl_mixer_pad_sink_getcaps() + Caps refcounting was all wrong in this function. Rewrote it and add some + comments to make it clearer. + Fix caps leaks with the + validate.file.glvideomixer.simple.play_15s.synchronized scenario. + https://bugzilla.gnome.org/show_bug.cgi?id=747915 + Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + 2015-04-17 16:21:05 +0900 Hyunjun Ko <zzoon.ko@samsung.com> * tests/check/libs/rtpbasedepayload.c: @@ -37475,6 +43961,40 @@ setting the new one. https://bugzilla.gnome.org/show_bug.cgi?id=747103 +2015-04-16 14:17:04 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix caps leak when early returning + https://bugzilla.gnome.org/show_bug.cgi?id=747993 + Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + +2015-04-16 14:21:16 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * ext/gl/gstglmixer.c: + glmixer: unref owned caps when finalizing the mixer + Fix a caps leak with the + validate.file.glvideomixer.simple.play_15s.synchronized scenario. + https://bugzilla.gnome.org/show_bug.cgi?id=747915 + Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + +2015-04-15 15:16:33 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + + * ext/gl/gstglmixer.c: + glmixer: pass the proper free function to frames and buffers array + 'array_buffers' contain borrowed GstBuffer and so shouldn't have a free + function. 'frames' is the one containing GstGLMixerFrameData and so should use + _free_glmixer_frame_data as free function. + Fix GstGLMixerFrameData leaks with the + validate.file.glvideomixer.simple.play_15s.synchronized scenario. + https://bugzilla.gnome.org/show_bug.cgi?id=747913 + Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> + +2015-04-17 14:09:47 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglmixer.c: + gl: Remove some empty ::finalize() implementations + 2015-04-17 11:45:34 +0200 Edward Hervey <edward@centricular.com> * win32/common/libgstallocators.def: @@ -37645,6 +44165,16 @@ decodebin: Also log the pointer value of sticky events in debug output Makes it easier to follow them in the debug logs. +2015-04-08 19:29:40 -0700 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Remove broken timestamps-going-backwards check + This would've also triggered if for some reason the segment was updated + in such a way that PTS went backwards, but the running time increased. Like + what happens when non-flushing seeks are done. + We're doing a proper buffer-from-the-past check a few lines below based on the + running time, which is the only time we should care about here. + 2015-04-08 17:12:22 +0100 Luis de Bethencourt <luis.bg@samsung.com> * tests/examples/dynamic/addstream.c: @@ -37922,6 +44452,17 @@ * tests/examples/seek/scrubby.c: examples: fix deprecated API in scrubby +2015-03-06 21:12:52 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: Query latency on first incoming buffer. + And keep on querying upstream until we get a reply. + Also, the _get_latency_unlocked() method required being calld + with a private lock, so removed the _unlocked() variant from the API. + And it now returns GST_CLOCK_TIME_NONE when the element is not live as + we think that 0 upstream latency is possible. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + 2015-04-01 20:32:41 -0400 Olivier Crête <olivier.crete@collabora.com> * gst/audiomixer/gstaudiomixer.c: @@ -37973,6 +44514,12 @@ * tests/examples/audio/audiomix.c: tests: update deprecated GTK API in audiomix +2015-03-31 16:27:00 +0200 Edward Hervey <edward@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Don't use context if not present + Avoids assertions at runtime + 2015-03-31 11:21:25 +0200 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/allocators/Makefile.am: @@ -38154,6 +44701,13 @@ Adding a comment makes coverity happy and quells the issue. CID 1291629 +2015-03-24 19:04:26 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Check if there's a previous buffer to 'keep' + If we want to keep a previous buffer but there's no previous buffer, we actually + need more data instead. + 2015-02-16 09:25:03 +1000 Duncan Palmer <dpalmer@digisoft.tv> * gst/playback/gstdecodebin2.c: @@ -38362,6 +44916,14 @@ valid case, to indicate clipping of data at start. https://bugzilla.gnome.org/show_bug.cgi?id=743900 +2015-03-16 03:53:33 +1100 Jan Schmidt <jan@centricular.com> + + * gst/compositor/compositororc.orc: + compositor: Revert most of previous patch. + The calculation doesn't produce the same results. + Keep just the change to divide alpha by 255 instead of 256, + for slightly better accuracy + 2015-03-15 17:27:33 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/allocators/gstdmabuf.c: @@ -38388,6 +44950,16 @@ This would make it possible later to add other allocators also using fd backed memory. +2015-03-16 00:22:14 +1100 Jan Schmidt <jan@centricular.com> + + * gst/compositor/compositororc.orc: + compositor: Fix blending functions + Correctly calculate alpha in a few places by dividing by 255, + not 256. + Fix the argb and bgra blending functions to avoid an off-by-one + error in the calculations, so painting with alpha = 0xff doesn't + ever bleed through from behind + 2015-03-14 18:08:15 +0000 Thiago Santos <thiagoss@osg.samsung.com> * gst/playback/gststreamsynchronizer.c: @@ -38397,6 +44969,12 @@ again before going to sleep. Bonus: fix a comment typo +2015-03-14 16:25:29 +0000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glsyncmeta: make context to wait and set sync explicit + otherwise we may wait on a sync object in same context by accident + 2015-03-13 18:07:12 +0000 Ramiro Polla <ramiro.polla@collabora.co.uk> * gst/playback/gstplaysink.c: @@ -38528,6 +45106,20 @@ patch is valid and useful on its own. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=746150 +2015-03-13 10:25:35 +0000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl: get the context from basemixer/basefilter + +2015-03-13 09:38:54 +0000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl: retreive the gldisplay/app gl context as soon as possible + fixes the usage of gst_gl_display_filter_gl_api + 2015-03-13 10:30:43 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com> * gst-libs/gst/video/video-frame.c: @@ -38553,6 +45145,44 @@ act on it a bit later if the discont stayed around for discont_wait time. https://bugzilla.gnome.org/show_bug.cgi?id=746032 +2015-03-03 17:26:47 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + gl: store the list of contexts within gldisplay + Removes the reliance on the allocation query to propogate GL contexts. + Allows thread safely getting a context for the a specific thread. + +2015-02-26 13:45:56 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvideomixer: implement with glmixerbin + The relevant properties are forwarded to/from the containing bin + and sink pads. + +2015-02-26 00:20:37 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + glmixer: remove usage of upload/download objects + +2015-02-25 23:48:56 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixerbin.c: + * ext/gl/gstglmixerbin.h: + gl: new glmixerbin element + +2015-02-11 14:48:45 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglbasemixer.c: + * ext/gl/gstglbasemixer.h: + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglvideomixer.h: + gl: add a new glbasemixer class below glmixer + It deals with propagating the gl display/contexts throughout the + application/pipeline + 2015-03-12 10:06:15 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * ext/ogg/gstoggdemux.c: @@ -38632,6 +45262,11 @@ buffers or inserting silence; for example if the offset is changed on an srcpad connected to audiomixer. +2015-01-20 19:53:09 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: While aggregating, sync values for all pads before converting frames + 2015-03-03 15:18:04 +0800 Song Bing <b06498@freescale.com> * tests/check/pipelines/streamsynchronizer.c: @@ -38832,6 +45467,37 @@ * gst-libs/gst/video/video-orc-dist.h: video: Update orc generated C files +2015-03-06 20:11:00 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * ext/gl/gstglmixer.c: + glmixer: Don't share our downstream pool with upstream + Pool cannot have multiple owner. This can lead to spurious + pool was flushing error. + https://bugzilla.gnome.org/show_bug.cgi?id=74570 + +2015-03-06 18:15:11 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + gl: Remove format info in glcolorconvert's transform_caps function instead of on every caller + ... and let glmixer actually transform the caps it is supposed to transform + instead of inventing new caps. + +2015-03-06 18:49:16 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + Revert "videoaggregator: Create new caps from the video-info" + This reverts commit 78215be0dfbb4e8ed4f249e161a94c644328d28d. + because it broke glvideomixer with custom caps features. + +2015-03-06 14:36:26 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Create new caps from the video-info + In case the original caps were missing some optional fields like + interlace-mode. We assume default values for those everywhere, + but they can still cause negotiation to fail if a downstream element + expects the field to be there and at a specific value. + 2015-03-06 12:54:56 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-converter.c: @@ -39472,6 +46138,11 @@ used to pass extra details to the external installer process. https://bugzilla.gnome.org/show_bug.cgi?id=744465 +2015-02-13 16:03:53 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: use new gst_aggregator_pad_drop_buffer() + 2015-02-13 16:06:34 +0000 Tim-Philipp Müller <tim@centricular.com> * gst/audiomixer/gstaudiomixer.c: @@ -39479,6 +46150,11 @@ 2015-02-12 15:48:07 +0000 Tim-Philipp Müller <tim@centricular.com> + * tests/check/elements/compositor.c: + tests: remove GST_DISABLE_PARSE guards from two tests that don't require it + +2015-02-12 15:48:07 +0000 Tim-Philipp Müller <tim@centricular.com> + * tests/check/elements/audiomixer.c: tests: remove GST_DISABLE_PARSE guards from two tests that don't require it @@ -39542,6 +46218,14 @@ 2015-02-11 14:16:21 +0100 Sebastian Dröge <sebastian@centricular.com> + * gst-libs/gst/video/gstvideoaggregator.c: + Improve and fix LATENCY query handling + This now follows the design docs everywhere, especially the maximum latency + handling. + https://bugzilla.gnome.org/show_bug.cgi?id=744106 + +2015-02-11 14:16:21 +0100 Sebastian Dröge <sebastian@centricular.com> + * gst/audiomixer/gstaudiomixer.c: Improve and fix LATENCY query handling This now follows the design docs everywhere, especially the maximum latency @@ -39650,6 +46334,12 @@ video-converter: only enable backlog for interlaced video Skip lines we don't need. +2015-02-10 10:56:37 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: When receiving timeout before caps, make sure to also advance our frame counter + Otherwise we will directly go EOS on the next non-timeout. + 2015-02-10 09:30:44 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-converter.c: @@ -39660,6 +46350,16 @@ * gst-libs/gst/video/video-format.c: video-format: fix pstride of NV16 and NV24 formats +2015-02-09 00:59:30 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix buffer selection when duration=-1 + If the src framerate and videoaggreator's output framerate were + different, then we were taking every single buffer that had duration=-1 + as it came in regardless of the buffer's start time. This caused the src + to possibly run at a different speed to the output frames. + https://bugzilla.gnome.org/show_bug.cgi?id=744096 + 2015-02-09 18:01:30 +0000 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/rtsp/gstrtspmessage.c: @@ -39730,6 +46430,12 @@ if (!setup_scale (convert, transforms[i].fformat)) ~~~~~~~~~~~ ~~~~~~~~~~~~~~^~~~~~~ +2015-02-08 14:32:22 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: don't set element factory details + This is an abstract base class, not an element. + 2015-02-07 03:56:05 +1100 Jan Schmidt <jan@centricular.com> * ext/ogg/gstoggmux.c: @@ -39875,6 +46581,13 @@ video-converter: add support for borders in scale fastpath Add support for borders and cropping in the scaler fastpaths. +2015-02-05 15:48:41 +0000 Tim-Philipp Müller <tim@centricular.com> + + * tests/check/elements/compositor.c: + tests: compositor: add unit test for proper segment.base handling + As adjusted by gst_pad_set_offset(), or when doing segment seeks + or looping for example. + 2015-02-05 15:23:04 +0000 Tim-Philipp Müller <tim@centricular.com> * tests/check/elements/audiomixer.c: @@ -39966,6 +46679,21 @@ audio{enc,dec}oder: Handle max_latency == GST_CLOCK_TIME_NONE And initialize the latencies with 0 and NONE. +2015-02-03 15:30:08 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + gl: remove the egl caps from the src pads + we don't actually support producing EGLImage buffers anywhere. + +2015-02-03 00:11:06 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glupload/download/convert: provide transform_caps functions + Allows finer grain decisions about formats and features at each + stage of the pipeline. + Also provide propose_allocation for glupload besed on the supported + methods. + 2015-01-28 05:26:06 +1100 Jan Schmidt <jan@centricular.com> * gst-libs/gst/audio/gstaudiobasesink.c: @@ -40005,6 +46733,22 @@ flushing to the caller, rather than emit a flow error. https://bugzilla.gnome.org/show_bug.cgi?id=722442 +2015-01-28 00:13:46 +1100 Alessandro Decina <alessandro.d@gmail.com> + + * ext/gl/gstglmixer.c: + gl: initial support for texture targets other than GL_TEXTURE_2D + Make GstGLMemory hold the texture target (tex_target) the texture it represents + (tex_id) is bound to. Modify gst_gl_memory_wrapped_texture and + gst_gl_download_perform_with_data to take the texture target as an argument. + This change is needed to support wrapping textures created outside libgstgl, + which might be bound to a target other than GL_TEXTURE_2D. For example on OSX + textures coming from VideoToolbox have target GL_TEXTURE_RECTANGLE. + With this change we still keep (and sometimes imply) GL_TEXTURE_2D as the + target of textures created with libgstgl. + API: modify GstGLMemory + API: modify gst_gl_memory_wrapped_texture + API: gst_gl_download_perform_with_data + 2015-01-28 16:43:59 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * ext/opus/gstopusenc.c: @@ -40027,6 +46771,14 @@ sense anymore with a private lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 +2015-01-26 11:32:47 +0100 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: More fixes around locking when accessing protected private fields + In some more places we were accessing GstAggregator->segment + and GstAggregator->seqnum without holding the GST_OBJECT_LOCK + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + 2015-01-26 11:25:54 +0100 Thibault Saunier <tsaunier@gnome.org> * gst/audiomixer/gstaudiomixer.c: @@ -40036,6 +46788,15 @@ those fields https://bugzilla.gnome.org/show_bug.cgi?id=742684 +2015-01-26 11:25:54 +0100 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: Hide GstAggregatorPad buffer and EOS fileds + And add a getter for the EOS. + The user should always use the various getters to access + those fields + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + 2015-01-21 19:09:13 -0500 Olivier Crête <olivier.crete@collabora.com> * tests/check/elements/audiomixer.c: @@ -40045,6 +46806,13 @@ Prevent that by taking the source's stream lock while flushing. https://bugzilla.gnome.org/show_bug.cgi?id=742684 +2015-01-21 19:43:12 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: Document locking for gst_aggregator_get_latency_unlocked() + Renamed it to _unlocked() to make it clear. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + 2015-01-22 17:41:24 -0500 Olivier Crête <olivier.crete@collabora.com> * tests/check/elements/audiomixer.c: @@ -40053,6 +46821,14 @@ through the aggregator by taking the stream locks. https://bugzilla.gnome.org/show_bug.cgi?id=742684 +2015-01-14 14:45:06 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Lock access to members of GstAggregatorPad + Take the pad's object lock before accessing members of the + GstAggregatorPad structure. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + 2015-01-21 19:32:34 -0500 Olivier Crête <olivier.crete@collabora.com> * tests/check/elements/audiomixer.c: @@ -40085,6 +46861,15 @@ Also means adding an _unlocked version of gst_aggregator_pad_steal_buffer(). https://bugzilla.gnome.org/show_bug.cgi?id=742684 +2015-01-29 02:28:38 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: If getting a timeout before having caps, just advance our position + This can happen if this is a live pipeline and no source produced any buffer + and sent no caps until an output buffer should've been produced according to the + latency. + This fix is similar in spirit to commit be7034d1 by Sebastian for audiomixer. + 2015-01-28 17:44:57 +0100 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/video-converter.c: @@ -40218,6 +47003,17 @@ audiodecoder: Fix typo in documentation Fix a couple of harmless warnings in the gtk-doc parsing +2015-01-26 09:22:23 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix crash when receiving buffer without timestamps + Unset out buffer in clip function when we unref the buffer to be + clipped, otherwise aggregator will continue to use the already- + freed buffer. Fixes crash when buffers without timestamps are + being fed to aggregator. Partly because aggregator ignores the + error flow return. + https://bugzilla.gnome.org/show_bug.cgi?id=743334 + 2015-01-23 12:46:41 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/video/video-dither.c: @@ -40313,6 +47109,12 @@ to consume any more input samples. https://bugzilla.gnome.org/show_bug.cgi?id=732908 +2015-01-19 12:37:23 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/compositor/blend.c: + compositor: fix illegal memory access in blend function with negative ypos + https://bugzilla.gnome.org/show_bug.cgi?id=741115 + 2015-01-19 11:17:18 +0100 Sebastian Dröge <sebastian@centricular.com> * gst/videorate/Makefile.am: @@ -40391,6 +47193,19 @@ videoutils: keep caps features in account when building the downstream filter See 00c2ce6 and https://bugzilla.gnome.org/show_bug.cgi?id=741263 for reference. +2015-01-15 09:47:45 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglvideomixer.c: + glvideomixer: don't upload if alpha <= 0 + Implemented using a upload_buffer vfunc within GstGLMixer allowing + NULL uploaded buffers. + +2015-01-14 23:48:16 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + compositor: Document the zorder pad property from gstvideoaggregator + 2015-01-14 10:35:34 -0300 Thiago Santos <thiagoss@osg.samsung.com> * tests/examples/playback/playback-test.c: @@ -40409,6 +47224,13 @@ to avoid doing those again. https://bugzilla.gnome.org/show_bug.cgi?id=742885 +2015-01-14 22:08:43 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + gl: split glcolorconvert usage from glupload + the separation allows the transfer operation to occur in a separate + thread/time which may increase performance in specific circumstances. + 2015-01-13 16:58:34 +0000 Luis de Bethencourt <luis.bg@samsung.com> * ext/libvisual/gstaudiovisualizer.c: @@ -40440,6 +47262,16 @@ lines down before it is ever used. Save the unnecessary memory and instructions. CID #1226467 +2015-01-13 14:54:26 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Don't do any conversions if the pad is completely transparent anyway + +2015-01-12 21:25:14 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/compositor/.gitignore: + gitignore: ignore more files + 2015-01-12 15:27:18 +0000 Luis de Bethencourt <luis.bg@samsung.com> * ext/libvisual/gstaudiovisualizer.c: @@ -40515,16 +47347,39 @@ * ext/ogg/gstoggmux.c: oggmux: fix silly GQueue iteration code +2014-12-30 19:43:43 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglvideomixer.c: + glmixer, glvideomixer: update for GstAggregatorPadForeachFunc change + +2014-12-30 19:26:47 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: update for aggregator start/stop vfunc change + 2014-12-30 18:01:34 +0000 Tim-Philipp Müller <tim@centricular.com> * gst/audiomixer/gstaudiomixer.c: audiomixer: update for aggregator start/stop vfunc change +2014-12-30 17:56:35 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: update for aggregator start/stop vfunc change + 2014-12-30 15:29:36 +0000 Tim-Philipp Müller <tim@centricular.com> * gst/audiomixer/gstaudiomixer.c: audiomixer: fix output-block-size property description +2014-12-28 01:13:33 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.h: + aggregator: make padding larger + Esp. the class structures, can't have enough + spare space for virtual functions. + 2014-12-26 20:48:55 +0000 Sam Thursfield <sam@afuera.me.uk> * gst-libs/gst/pbutils/gstdiscoverer-types.c: @@ -40535,6 +47390,16 @@ object and should definitely not get freed by the caller as well. https://bugzilla.gnome.org/show_bug.cgi?id=742006 +2014-12-27 15:50:17 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: Point to compositor for the pad properties documentation + +2014-12-27 15:49:47 +0530 Nirbheek Chauhan <nirbheek@centricular.com> + + * gst/compositor/compositor.c: + compositor: Document the pad properties + 2014-12-27 15:49:39 +0530 Nirbheek Chauhan <nirbheek@centricular.com> * gst/audiomixer/gstaudiomixer.c: @@ -40592,6 +47457,11 @@ audiomixer: Change blocksize property to output-buffer-duration in time format This makes the interface of audiomixer independent of the actual caps. +2014-12-22 22:11:30 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Use the src query implementation of aggregator as the default case + 2014-12-22 22:11:13 +0100 Sebastian Dröge <sebastian@centricular.com> * gst/audiomixer/gstaudiomixer.c: @@ -40695,6 +47565,17 @@ And the offset the offset into that buffer. Changing the size will cause all kinds of assumptions to fail and cause crashes. +2014-12-18 22:04:38 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't try to map NULL buffers + +2014-12-18 22:03:04 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Make sure to always update the pad's videoinfo together with buffers + Otherwise the videoinfo and the buffer content can go out of sync. + 2014-12-18 13:24:22 +0100 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/riff/riff-media.c: @@ -40708,6 +47589,12 @@ http://demo.archermind.com/Test%20Sample/Video/MPEG%204/Divx3/Low-Motion/576-320.avi Audio and video together is still broken because of other issues. +2014-12-18 11:48:37 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Fix memory leak when no buffer is available for a pad currently + CID 1258718 + 2014-12-18 10:57:13 +0100 Edward Hervey <bilboed@bilboed.com> * gst-libs/gst/audio/Makefile.am: @@ -40834,6 +47721,13 @@ For audiomixer this is one blocksize, for videoaggregator this should be the duration of one output frame. +2014-12-17 19:51:32 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: Add function to allow subclasses to set their own latency + For audiomixer this is one blocksize, for videoaggregator this should + be the duration of one output frame. + 2014-12-17 19:37:22 +0100 Sebastian Dröge <sebastian@centricular.com> * gst/audiomixer/gstaudiomixer.c: @@ -40842,6 +47736,15 @@ 2014-12-17 17:54:09 +0100 Sebastian Dröge <sebastian@centricular.com> + * gst-libs/gst/video/gstvideoaggregator.c: + * gst/compositor/compositor.c: + aggregator: Add a timeout parameter to ::aggregate() + When this is TRUE, we really have to produce output. This happens + in live mixing mode when we have to output something for the current + time, no matter if we have enough input or not. + +2014-12-17 17:54:09 +0100 Sebastian Dröge <sebastian@centricular.com> + * gst/audiomixer/gstaudiomixer.c: aggregator: Add a timeout parameter to ::aggregate() When this is TRUE, we really have to produce output. This happens @@ -40863,6 +47766,25 @@ * gst/audiomixer/gstaudiomixer.c: audiomixer: Implement get_next_time() +2014-12-05 18:19:54 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: make the src pad task drive the pipeline for live pipelines + This removes the uses of GAsyncQueue and replaces it with explicit + GMutex, GCond and wakeup count which is used for the non-live case. + For live pipelines, the aggregator waits on the clock until either + data arrives on all sink pads or the expected output buffer time + arrives plus the timeout/latency at which time, the subclass + produces a buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=741146 + +2014-12-08 15:18:25 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: always try to use newer buffers + instead of dropping them for being too old. This ensures that + the newest buffer is always used for rendering + 2014-12-16 12:57:55 +0100 Wim Taymans <wtaymans@redhat.com> * sys/ximage/ximagesink.c: @@ -40971,6 +47893,12 @@ passed, so we must unref the caps afterwards. Fixes leaks when running test in valgrind in 1.4 branch. +2014-11-27 20:48:24 +0100 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Hide some more fields from the API + + Add some documentation + 2014-12-12 10:02:43 +0100 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/video-orc-dist.c: @@ -41013,6 +47941,11 @@ We were always returning the video stream combiner whatever stream type combiner was wanted. +2014-12-11 18:15:02 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + gl: fixup vao and vbo usage for legacy GL + 2014-12-10 13:23:23 -0300 Thiago Santos <thiagoss@osg.samsung.com> * gst/playback/gstplaybin2.c: @@ -41288,11 +48221,118 @@ later can cause crashes or any other kind of interesting and hard to debug bugs. +2014-11-28 10:23:55 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: Failure to map a video frame is not just a warning + Also add some warning debug output if mapping a output buffer fails + +2014-11-28 10:22:44 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Failure to map a video frame is not just a warning + +2014-11-27 21:05:45 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gldisplay: implement runtime GL api filtering + Needed so that the pipeline/application can limit the choice of GL api + to what it supports + +2014-10-17 15:22:24 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + gl: add a sync meta for synchronizing across GL contexts + A context can create a GLsync object that can be waited on in order + to ensure that GL resources created in one context are able to be + used in another shared context without any chance of reading invalid + data. + This meta would be placed on buffers that are known to cross from + one context to another. The receiving element would then wait + on the sync object to ensure that the data to be used is complete. + +2014-11-14 00:20:10 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvideomixer: add support for gl3 + +2014-11-27 21:22:44 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Minor cleanup + +2014-11-26 15:02:14 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + * gst/compositor/compositorpad.h: + compositor: Implement rescaling of the input via pad properties + compositor has now the same interface as glvideomixer. + +2014-11-27 20:34:25 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Copy over more fields from the relevant video-info + gst_video_info_set_format() will reset the complete video-info, but + we want to keep values like the PAR, colorimetry and chroma site. + Otherwise we risk setting different values on the srcpad caps than + what is actually inside the buffers. + +2014-11-27 20:25:29 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Directly use the converters video-info instead of recalculating it + +2014-11-27 19:52:20 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Do source pad negotiation only from the aggregated function + Otherwise we might negotiate from the sinkpad streaming threads at + the same time as on the srcpad streaming thread, and then all kinds + of crazy bugs happen that don't make any sense at all. + 2014-11-27 16:43:39 +0100 Thibault Saunier <tsaunier@gnome.org> * gst/audiomixer/gstaudiomixer.c: audiomixer: Do not try to resize a buffer to a negative size on EOS +2014-11-27 18:46:03 +0100 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoconvert: Hide all conversion related fields + And do not delay the setting of the conversion_info + https://bugzilla.gnome.org/show_bug.cgi?id=740768 + +2014-11-26 18:24:05 +0100 Thibault Saunier <tsaunier@gnome.org> + + * ext/gl/gstglmixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Expose vmethods to set converters and prepare/clean frames + This gives more flexibility to the subclasses and permits to remove the + GstVideoAggregatorClass->disable_frame_conversion ugly API. + WARNING: This breaks the API as it removes the disable_frame_conversion + field + API: + + GstVideoAggregatorClass->find_best_format + + GstVideoAggregatorPadClass->set_format + + GstVideoAggregatorPadClass->prepare_frame + + GstVideoAggregatorPadClass->clean_frame + - GstVideoAggregatorClass->disable_frame_conversion + https://bugzilla.gnome.org/show_bug.cgi?id=740768 + +2014-10-31 11:01:47 +0100 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Let a full renegotiation happen after removing the last pad + With the current code, we will end up setting the preferred downstream + format as the srcpad format, and it might not be accepted by the next + sinkpad to be added. We should instead let the next sinkpad reconfigure + everything. + 2014-11-27 17:10:31 +0100 Edward Hervey <bilboed@bilboed.com> * common: @@ -41378,12 +48418,30 @@ typefindfunctions: detect mp4 common file format variant Used e.g. by UltraViolet. +2014-11-26 13:06:21 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Also sync pad properties to the controller if conversion is disabled + +2014-11-26 12:35:52 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + * gst/compositor/compositorpad.h: + compositor: Remove unused zorder pad property + It's handled in videoaggregator already. + 2014-11-25 22:01:08 +0000 Tim-Philipp Müller <tim@centricular.com> * ext/alsa/gstalsasrc.c: alsasrc: debug message fixes In the same vein as 74e9640a. +2014-11-25 18:53:55 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositor.c: + compositor: GstVideoMeta is supported just fine, tell upstream about that + Also provide a GstVideoBufferPool to upstream just in case. + 2014-11-25 17:42:07 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-scaler.c: @@ -41505,6 +48563,12 @@ Use the error line for temporary storage in the fastpath so that we don't have to allocate any other temp lines. +2014-11-05 20:18:06 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glupload: rearchitecture for non GLMemory inputs/outputs + Allows other memory types to be implemented/returned/used by the caller. + 2014-11-22 21:51:33 +0100 Matej Knopp <matej.knopp@gmail.com> * gst-libs/gst/video/gstvideoencoder.c: @@ -41570,6 +48634,12 @@ rtspconnection: fix warning on param name mismatch https://bugzilla.gnome.org/show_bug.cgi?id=740013 +2014-11-19 17:02:40 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Don't output 0-duration buffers at the segment end + https://bugzilla.gnome.org/show_bug.cgi?id=740376 + 2014-11-18 00:04:59 +1100 Jan Schmidt <jan@centricular.com> * tests/icles/.gitignore: @@ -41740,6 +48810,13 @@ * gst-libs/gst/video/video-orc.orc: video-converter: add orc splat functions to draw border +2014-11-17 14:05:01 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix up QoS handling for live sources + Only attempt adaptive drop when we are not live + https://bugzilla.gnome.org/show_bug.cgi?id=739996 + 2014-11-05 21:52:44 +0000 Tim-Philipp Müller <tim@centricular.com> * ext/pango/gstbasetextoverlay.c: @@ -41764,6 +48841,11 @@ https://bugzilla.gnome.org/show_bug.cgi?id=738984 https://bugzilla.gnome.org/show_bug.cgi?id=739281 +2014-11-17 18:50:04 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: add read-only context property + 2014-11-16 23:26:45 +0000 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/video/video-blend.c: @@ -41909,6 +48991,13 @@ Add unit test to check that encode and decode are eachothers inverse and that the limits are respected. +2014-11-11 14:23:55 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + gl: remove the width/height fields from the caps to support frame resizing + It was previously only occuring with sysmem caps features + https://bugzilla.gnome.org/show_bug.cgi?id=739334 + 2014-11-10 14:53:13 +0100 Wim Taymans <wtaymans@redhat.com> * tests/check/libs/video.c: @@ -42182,6 +49271,11 @@ video-converter: add extra pixels for the border We need extra pixels for the border. +2014-11-03 16:13:23 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Swap source/destination parameters of gst_video_converter_frame() + 2014-11-03 15:36:26 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-orc.orc: @@ -42308,6 +49402,12 @@ video: Update disted orc files for new functions. Fixes the build when building without ORC +2014-10-31 12:52:07 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: advertise support for changing input caps mid-stream + https://bugzilla.gnome.org/show_bug.cgi?id=739334 + 2014-10-31 11:07:06 +0100 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-converter.c: @@ -42362,6 +49462,13 @@ into a rectangle in the destination frame. Add an option to add a border and border color. +2014-10-30 14:49:05 +0000 Luis de Bethencourt <luis.bg@samsung.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: remove storage of never used values + These two values are stored just before the function returns and they go out of + scope. + 2014-06-10 09:33:40 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * ext/opus/gstopusenc.c: @@ -42402,6 +49509,12 @@ * tests/check/libs/video.c: tests: fix test +2014-10-30 23:08:00 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: don't get the current caps from GstVideoInfo for the srcpad + It's missing the caps features needed. + 2014-10-03 12:42:46 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> * tools/gst-discoverer.c: @@ -42593,6 +49706,11 @@ * gst-libs/gst/video/video-chroma.c: video-chroma: fix typo +2014-10-29 08:27:57 +0800 Wang Xin-yu (王昕宇) <comicfans44@gmail.com> + + * ext/gl/gstglmixer.c: + glmixer:fix incorrect parameter passed to handle_set_context + 2014-10-27 17:56:51 +0100 Sebastian Dröge <sebastian@centricular.com> * common: @@ -42667,6 +49785,27 @@ * gst-libs/gst/rtsp/gstrtspextension.c: rtsp: use generic marshaller +2014-10-24 00:35:22 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: override the caps query in order to 'convert' capsfeatures + Otherwise, it is only possible for the sink pads and the src pads to + have the exact same caps features. We can convert from any feature + to another feature so support that. + +2014-10-23 23:55:48 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: override the accept caps query in order to 'convert' capsfeatures + Otherwise, it is only possible for the sink pads and the src pads to + have the exact same caps features. We can convert from any feature + to another feature so support that. + +2014-08-14 23:29:00 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglmixer.c: + gl: propogate other-context using GstContext + 2014-10-23 11:22:35 +0200 Thibault Saunier <tsaunier@gnome.org> * ext/pango/gstbasetextoverlay.c: @@ -42744,6 +49883,35 @@ watch related functionality. https://bugzilla.gnome.org/show_bug.cgi?id=737752 +2014-10-21 06:04:10 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: fixup eglimage include path + +2014-10-21 02:52:05 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fixate the parts of the caps we don't know how to deal with + fixes glvideomixer with video/x-raw,width=foo i.e. no format field. + +2014-10-18 10:03:43 +0200 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + glbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option + +2014-10-20 10:34:27 +1100 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglvideomixer.c: + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + * gst/compositor/compositor.c: + videoaggregator: operate on caps rather than video info + Otherwise the CapsFeatures will be lost along with the possibility + of multiple output types and formats. + https://bugzilla.gnome.org/show_bug.cgi?id=738129 + 2014-10-20 15:31:29 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/app/gstappsink.c: @@ -42798,6 +49966,24 @@ audiodecoder: should post DECODE errors and not ENCODE Fix error code for audio decoder +2014-10-13 13:27:55 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: Call the pad's parent class finalize method + +2014-10-13 13:27:11 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + glmixer: Only finalize the other context in finalize() + Otherwise we change a value of a property when going to READY state, + which is unexpected behaviour. + +2014-10-13 11:53:47 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + glmixer: Add other-context property + 2014-10-10 18:49:29 +0100 Luis de Bethencourt <luis.bg@samsung.com> * gst-libs/gst/video/video-blend.c: @@ -42836,9 +50022,26 @@ 2014-10-06 21:46:24 +1100 Matthew Waters <matthew@centricular.com> + * gst-libs/gst/video/gstvideoaggregator.c: + aggregator: add latency query handling + +2014-10-06 21:46:24 +1100 Matthew Waters <matthew@centricular.com> + * gst/audiomixer/gstaudiomixer.c: aggregator: add latency query handling +2014-10-06 18:33:52 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: support unresponsive pads + Render unresponsive pads with the last video frame received. + +2014-10-06 18:10:38 +1100 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: remove the use of the queued buffer on sink pads + That data is now held by the aggregator class + 2014-10-08 16:50:52 +0100 Luis de Bethencourt <luis.bg@samsung.com> * gst/videoscale/gstvideoscale.c: @@ -42882,6 +50085,14 @@ * gst/audiomixer/gstaudiomixer.c: audiomixer: Handle seek event in READY state +2014-09-23 15:59:10 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Do not wrongly set the aggregator.segment + The aggregator.segment is not to be initialized by the subclasses but + by the aggregator itself. Moreover, initializing it on start would make + us loose the information coming from the initial seek. + 2014-07-21 11:07:19 +0200 Thibault Saunier <tsaunier@gnome.org> * gst/audiomixer/gstaudiomixer.c: @@ -42890,6 +50101,11 @@ Otherwise stream offset and running time comparison will not be correct, leading to segfaults after seeks +2014-07-30 11:57:46 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Make sure not to unref a NULL pointer + 2014-05-28 16:29:37 +0200 Thibault Saunier <tsaunier@gnome.org> * gst/audiomixer/Makefile.am: @@ -42905,6 +50121,11 @@ * gst/playback/gstdecodebin2.c: decodebin: Free factories array when delaying autoplugging due to non-final caps +2014-10-06 10:11:47 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Unmap and free GstVideoFrames as needed after conversion and errors + 2014-10-06 10:11:05 +0300 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/video-converter.c: @@ -42926,6 +50147,18 @@ The flag wasn't used anywhere except for rejecting buffers after EOS, and this is now handled by GstPad directly. +2014-09-18 17:14:22 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Do not to release VIDEO_AGGREGATOR_LOCK while setting format info + We should be able to always keep the VIDEO_AGGREGATOR_LOCK while + negotiating caps, this patch introduce that change. + That also implies that we do not need the SETCAPS_LOCK anymore because + now VIDEO_AGGREGATOR_LOCK guarantees that setcaps is not called from + several threads and the gst_aggregator_set_caps method is now + protected. + https://bugzilla.gnome.org/show_bug.cgi?id=735042 + 2014-10-02 00:14:03 +0200 Aurélien Zanelli <aurelien.zanelli@darkosphere.fr> * ext/vorbis/gstvorbisdeclib.c: @@ -42953,6 +50186,26 @@ * docs/design/part-stereo-multiview-video.markdown: design: Add a proposal for handling stereoscopic 3D and multiview +2014-10-01 17:22:59 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Also copy over the chroma siting and colorimetry when deciding on a conversion + +2014-10-01 17:18:05 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Revert the last commit and handle resolutions differences properly + This is about converting the format, not about converting any widths and + heights. Subclasses are expected to handler different resolutions themselves, + like the videomixers already do properly. + +2014-10-01 17:11:16 +0300 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: GstVideoConverter currently can't rescale and will assert + Leads to ugly assertions instead of properly erroring out: + CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed + 2014-10-01 11:16:30 +0200 Aurélien Zanelli <aurelien.zanelli@parrot.com> * gst-libs/gst/video/gstvideoencoder.c: @@ -42960,6 +50213,11 @@ Otherwise, frame is leaked. https://bugzilla.gnome.org/show_bug.cgi?id=737706 +2014-09-30 20:39:36 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: update element documentation + 2014-09-25 17:32:32 +0200 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/video/video-converter.c: @@ -42976,6 +50234,14 @@ audio: Fix up a comment in GstAudioBaseSink Rewrote the comment to not be PulseAudio-specific. +2014-09-28 16:58:42 +1000 Matthew Waters <matthew@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: don't create converters when the subclass doesn't want them + fixes a critical with glvideomixer after + 35bd1969f912cecda0fb5df9595a005e6ddf4e7a + CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed + 2014-09-27 20:05:38 +0200 Rico Tzschichholz <ricotz@ubuntu.com> * gst-libs/gst/video/Makefile.am: @@ -43053,12 +50319,24 @@ Implementation for submethods - int16, int32, float and double https://bugzilla.gnome.org/show_bug.cgi?id=737400 +2014-09-26 01:34:54 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: fix blending with low-alpha sources + We also need to apply the blend paramaters to the alpha channel otherwise + the output of the blend will appear black at low alpha values (< 0.2). + 2014-09-25 15:19:21 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-libs/gst/video/video-orc-dist.c: * gst-libs/gst/video/video-orc-dist.h: video: update disted orc backup files +2014-09-24 16:55:49 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + video: use video lib conversion code instead of copy + 2014-09-24 16:19:30 +0200 Wim Taymans <wtaymans@redhat.com> * docs/libs/gst-plugins-base-libs-sections.txt: @@ -43137,6 +50415,21 @@ videopool: add missing annotation for gst_video_buffer_pool_new() https://bugzilla.gnome.org/show_bug.cgi?id=737072 +2014-09-24 14:29:37 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: skip input frames with an alpha of 0 + +2014-09-24 13:13:19 +1000 Matthew Waters <matthew@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + gl: download whenever we have sysmem capsfeatures + Otherwise we could pass on a RGBA formatted buffer and downstream would + misinterpret that as some other video format. + Fixes pipelines of the form + gleffects ! tee ! xvimagesink + 2014-09-23 23:12:19 +0300 Sebastian Dröge <sebastian@centricular.com> * gst/videoscale/vs_4tap.c: @@ -43184,11 +50477,40 @@ Avoids deprecation warnings (such as for gtk_widget_set_double_buffered() which became deprecated from 3.14) +2014-09-21 21:36:49 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglmixer.c: + glupload: provide the output buffer that is rendered into + Allows callers to properly reference count the buffers used for + rendering. + Fixes a redraw race in glimagesink where the previous buffer + (the one used for redraw operations) is freed as soon as the next + buffer is uploaded. + 1. glimagesink uploads in _prepare() to texture n + 1.1 glupload holds buffer n + 2. glimagesink _render()s texture n + 3. glimagesink uploads texture n+1 + 3.1 glupload free previous buffer which deletes texture n + 3.2 glupload holds buffer n+1 + 4. glwindow resize/expose + 5. glimagesink redraws with texture n + The race is that the buffer n (the one used for redrawing) is freed as soon as + the buffer n+1 arrives. There could be any amount of time and number of + redraws between this event and when buffer n+1 is actually rendered and thus + replaces buffer n as the redraw source. + https://bugzilla.gnome.org/show_bug.cgi?id=736740 + 2014-09-19 18:29:54 +0100 Tim-Philipp Müller <tim@centricular.com> * tools/gst-play.c: gst-play: add --quiet option to suppress output +2014-09-19 15:32:33 +0530 Sanjay NM <sanjay.nm@samsung.com> + + * ext/gl/gstglmixer.c: + gl: Removed unreachable break, unused variable + https://bugzilla.gnome.org/show_bug.cgi?id=736957 + 2014-09-05 13:49:46 -0300 Thiago Santos <thiagoss@osg.samsung.com> * ext/pango/gstbasetextoverlay.c: @@ -43275,6 +50597,12 @@ audioconvert/videoconvert elements. https://bugzilla.gnome.org/show_bug.cgi?id=735748 +2014-09-16 11:41:16 +0200 Ognyan Tonchev <ognyan@axis.com> + + * ext/gl/gstglmixer.c: + glmixer: do not leak pool in error cases + https://bugzilla.gnome.org/show_bug.cgi?id=736729 + 2014-09-16 01:07:18 +0300 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/video-frame.c: @@ -43638,6 +50966,31 @@ * gst-libs/gst/audio/gstaudiodecoder.c: audiodecoder: Don't ignore ::start/stop return values +2014-08-19 17:01:36 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglmixer.c: + glmixer: unref the GstGLUpload in the pad if freed while running + Dynamic pipelines that get and release the sink pads will finalize + the pad without going through gst_gl_mixer_stop() which is where the + upload object is usually freed. Don't leak objects in such case. + +2014-08-14 23:51:21 -0400 Wang Xin-yu (王昕宇) <comicfans44@gmail.com> + + * ext/gl/gstglmixer.c: + glvideomixer: avoid gl resource race condition between different thread + https://bugzilla.gnome.org/show_bug.cgi?id=734830 + +2014-08-19 14:44:29 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: don't clobber unnecessary GstVideoInfo fields + otherwise we might clobber other important fields such as the frame rate. + +2014-08-19 14:43:42 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: get the attribute from the correct shader + 2014-08-18 13:04:31 +0100 Tim-Philipp Müller <tim@centricular.com> * gst-plugins-base.spec.in: @@ -43784,6 +51137,17 @@ checks will fail. https://bugzilla.gnome.org/show_bug.cgi?id=733916 +2014-08-07 19:54:36 +1000 Matthew Waters <ystreet00@gmail.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: push the caps event as soon as we receive it + Along with the required mandatory dependent events. + Some elements need to perform an allocation query inside + ::negotiated_caps(). Without the caps event being sent prior, + downstream elements will be unable to answer and will return + an error. + https://bugzilla.gnome.org/show_bug.cgi?id=732662 + 2014-08-07 17:35:05 -0300 Thiago Santos <thiagoss@osg.samsung.com> * ext/pango/gstbasetextoverlay.c: @@ -43859,6 +51223,12 @@ get 8 7 6 before 6 5 3 and the video will play back correctly. https://bugzilla.gnome.org/show_bug.cgi?id=734441 +2014-08-10 18:07:28 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + opengl: update element docs for 1.x + 2014-08-10 17:30:18 +0100 Tim-Philipp Müller <tim@centricular.com> * configure.ac: @@ -43875,6 +51245,12 @@ check generically whether it's a derived GstMemory type, as boxed types don't allowe derivation. +2014-08-09 11:17:44 +0200 Sebastian Rasmussen <sebras@hotmail.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Unref allowed caps after usage + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734522 + 2014-08-09 14:24:59 +0200 Sebastian Rasmussen <sebras@hotmail.com> * ext/opus/gstopusheader.c: @@ -43893,6 +51269,14 @@ vorbisenc: Improve annotation of internal function https://bugzilla.gnome.org/show_bug.cgi?id=734541 +2014-08-07 19:18:49 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvideomixer: add a background property + That's compatible with the compositor/videomixer property + https://bugzilla.gnome.org/show_bug.cgi?id=731954 + 2014-08-06 13:41:46 +0200 Sebastian Rasmussen <sebras@hotmail.com> * tests/check/elements/appsrc.c: @@ -44000,6 +51384,14 @@ Note: This may lead to few regressions that will need fixing https://bugzilla.gnome.org/show_bug.cgi?id=732288 +2014-07-23 10:25:31 +0800 Wang Xin-yu (王昕宇) <comicfans44@gmail.com> + + * ext/gl/gstglmixer.c: + gl: fix multi gl object leaks + 1. fix FBO leaks in decide_allocation + 2. fix texture leaks in decide_allocation and reset + 3. fix texture leaks in FBO incomplete error path + 2014-07-23 19:51:36 +0200 Sebastian Dröge <sebastian@centricular.com> * gst/playback/gstdecodebin2.c: @@ -44416,6 +51808,17 @@ dmabuf: share the mapping with shared copies of the memory https://bugzilla.gnome.org/show_bug.cgi?id=730441 +2014-07-11 09:41:05 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/gl/gstglmixer.c: + * ext/gl/gstglmixer.h: + * ext/gl/gstglmosaic.h: + * ext/gl/gstglvideomixer.h: + gl: Move GstGLMixer to the plugin for now + It depends on GstAggregator and we don't want to install headers + for that yet. + https://bugzilla.gnome.org/show_bug.cgi?id=732207 + 2014-07-10 15:52:46 +0100 Philip Withnall <philip.withnall@collabora.co.uk> * ext/opus/gstopusheader.c: @@ -44430,6 +51833,20 @@ * po/vi.po: po: Update translations +2014-07-06 23:30:53 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: Fix some more the locking logic in update_src_caps + We need the GST_OBJECT_LOCK only to iterate the sinkpads, nothing else. + https://bugzilla.gnome.org/show_bug.cgi?id=732750 + +2014-07-06 22:16:48 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix broken locking in update_src_caps function + We would unlock an already-unlocked mutex that we never re-locked. + https://bugzilla.gnome.org/show_bug.cgi?id=732750 + 2014-07-03 13:46:08 -0700 Evan Nemerson <evan@nemerson.com> * gst-libs/gst/sdp/sdp.h: @@ -44508,6 +51925,12 @@ docs: Assorted documentation and introspection fixes for new 1.4 API https://bugzilla.gnome.org/show_bug.cgi?id=732595 +2014-07-01 12:52:39 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: reset QoS on segment event + https://bugzilla.gnome.org/show_bug.cgi?id=732540 + 2014-07-01 16:19:22 +0200 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/rtsp/gstrtspconnection.c: @@ -44524,6 +51947,18 @@ libvisual: Rename get_type() function to prevent conflicts with static linking https://bugzilla.gnome.org/show_bug.cgi?id=728443 +2014-06-28 17:01:52 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + badvideo: Rename videoconvert functions to prevent conflicts with static linking + https://bugzilla.gnome.org/show_bug.cgi?id=728443 + +2014-06-28 09:43:48 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * tests/check/elements/compositor.c: + compositor: tests: Fix pad leak + Remember to unref requested pad + === release 1.3.90 === 2014-06-28 11:01:13 +0200 Sebastian Dröge <sebastian@centricular.com> @@ -44633,6 +52068,13 @@ libs: There is no G_TYPE_CHECK_INTERFACE_TYPE and G_TYPE_CHECK_INTERFACE_CAST Remove the macros that used them, nobody could've used them anyway. +2014-06-27 00:09:08 +1000 Matthew Waters <ystreet00@gmail.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix a refcount error when keeping the buffer + We take a ref on the pad's buffer at the beginning so we need to + unref when we are done in all cases. + 2014-06-26 11:35:43 +0200 Gwenole Beauchesne <gwenole.beauchesne@intel.com> * gst-libs/gst/pbutils/codec-utils.c: @@ -44650,6 +52092,43 @@ Fixes a problem with at least one file being detected incorrectly as DTS because there's DTS packets early enough in the file. +2014-06-22 13:14:27 +0100 Julien Isorce <julien.isorce@collabora.co.uk> + + * ext/gl/gstglvideomixer.c: + gl: enable glvideomixer on GLES2 + +2014-06-25 12:00:34 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: bas output width/height on the pad properties + Allows automatic negotiation of the size in the following case: + gst-launch-1.0 glvideomixer name=m sink_0::xpos=0 sink_1::xpos=320 ! glimagesink \ + videotestsrc ! m. \ + videotestsrc pattern=1 ! m. + https://bugzilla.gnome.org/show_bug.cgi?id=731878 + +2014-06-25 10:18:48 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: don't clobber already allocated shader + +2014-06-24 08:01:21 +0200 Edward Hervey <edward@collabora.com> + + * gst/compositor/Makefile.am: + compositor: Fix Makefile CFLAGS/LIBADD ordering + We want to use the libraries from -bad if/when present + +2014-06-23 22:40:23 +1000 Matthew Waters <ystreet00@gmail.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: don't clobber already heap allocated video frame + CID # 1223440 + +2014-06-23 22:36:23 +1000 Matthew Waters <ystreet00@gmail.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + videoaggregator: fix up the parent chaining for dispose and finalize + 2014-06-23 01:02:22 +0100 Tim-Philipp Müller <tim@centricular.com> * tests/check/libs/rtpbasedepayload.c: @@ -44675,6 +52154,11 @@ * configure.ac: Back to development +2014-06-22 19:22:28 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/compositor/compositororc-dist.c: + Release 1.3.3 + === release 1.3.3 === 2014-06-22 18:07:57 +0200 Sebastian Dröge <sebastian@centricular.com> @@ -44770,6 +52254,58 @@ * po/uk.po: po: Update translations +2014-06-21 16:52:51 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.h: + libs:video: Properly declare APIs as UNSTABLE + +2014-06-20 22:02:07 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst-libs/gst/video/gstvideoaggregator.c: + libs: videoaggregato: Do not import videoconvert.h in gstvideoaggregatorpad.h + + Add a Private structure to the GstVideoAggregatorPad + + Add some padding + +2014-06-20 11:10:45 +0200 Thibault Saunier <tsaunier@gnome.org> + + * ext/gl/gstglvideomixer.c: + gl:glvideomixer: Add the Compositor in the element metadata class + So it is possible to pick one compositing element from the registry + +2014-05-22 19:46:02 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst/compositor/Makefile.am: + * gst/compositor/blend.c: + * gst/compositor/blend.h: + * gst/compositor/blendorc.h: + * gst/compositor/compositor.c: + * gst/compositor/compositor.h: + * gst/compositor/compositororc-dist.c: + * gst/compositor/compositororc-dist.h: + * gst/compositor/compositororc.orc: + * gst/compositor/compositorpad.h: + * tests/check/elements/compositor.c: + compositor: Add a new compositor based on the new GstVideoAggregator base class + It is a replacement for videomixer with a similare API + Co-Authored by: Thibault Saunier <tsaunier@gnome.org> + https://bugzilla.gnome.org/show_bug.cgi?id=731919 + +2014-06-10 11:26:53 +0200 Thibault Saunier <tsaunier@gnome.org> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl: Port glmixer to the GstVideoAggregator baseclass + https://bugzilla.gnome.org/show_bug.cgi?id=731921 + +2014-06-03 19:00:34 +0200 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> + + * gst-libs/gst/video/gstvideoaggregator.c: + * gst-libs/gst/video/gstvideoaggregator.h: + videoaggregator: Create a new GstVideoAggregator baseclass + This base class has been added to a newly created libgstbadvideo library + Co-Authored by: Thibault Saunier <tsaunier@gnome.org> + https://bugzilla.gnome.org/show_bug.cgi?id=731918 + 2014-06-20 11:00:14 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/audio/gstaudiodecoder.c: @@ -44788,6 +52324,28 @@ We don't change it in the encoder yet as that requires more internal logic changes AFAIU and I'm not aware of a case where this was a problem so far. +2014-06-15 15:18:46 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: silence incorrect number of arguments in format warning + +2014-06-15 13:59:07 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: wire up the alpha pad property + +2014-06-15 13:44:04 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + glvideomixer: support input frame scaling + +2014-06-15 12:26:21 +1000 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + glvideomixer: add positioning of input streams + https://bugzilla.gnome.org/show_bug.cgi?id=729798 + 2014-06-12 12:36:26 +0200 Michael Olbrich <m.olbrich@pengutronix.de> * gst/tcp/gsttcpserversrc.c: @@ -46088,6 +53646,13 @@ opus: add missing va_end in variadic function Coverity 1139944 +2014-04-08 16:23:50 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl: test for frame NULLness before dereferencing it + Coverity 1195172, 1195171 + 2014-04-08 15:43:50 +0200 Wim Taymans <wtaymans@redhat.com> * gst-libs/gst/sdp/gstsdpmessage.c: @@ -46175,6 +53740,18 @@ Added gst_rtsp_watch_set_flushing to list in file libgstrtsp.def +2014-04-02 23:05:11 +1100 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl: fix array initialization + +2014-04-02 22:43:41 +1100 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglvideomixer.c: + gl: fix assignment of temporary variables + 2014-03-30 18:26:59 +0200 Sebastian Dröge <sebastian@centricular.com> * gst-libs/gst/video/gstvideodecoder.c: @@ -46324,6 +53901,14 @@ GST_PLAY_FLAG_FORCE_FILTERS. https://bugzilla.gnome.org/show_bug.cgi?id=679031 +2014-03-16 11:23:16 +0100 Matthew Waters <ystreet00@gmail.com> + + * ext/gl/gstglmosaic.c: + * ext/gl/gstglmosaic.h: + * ext/gl/gstglvideomixer.c: + * ext/gl/gstglvideomixer.h: + move gl elements to ext subdirectory + 2014-03-15 20:21:32 +0000 Руслан Ижбулатов <lrn1986@gmail.com> * gst-libs/gst/rtsp/gstrtspconnection.c: |