summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2019-01-17 02:16:53 +0000
committerTim-Philipp Müller <tim@centricular.com>2019-01-17 02:16:59 +0000
commita60056c6b07f52a108d26032eb7feb943a8e3f99 (patch)
tree6826e01a87b4a041efb2d096643ec136a20e6aa4
parent448c496836e320de66483a46f86b8edfd22e7fd4 (diff)
Release 1.15.11.15.1
-rw-r--r--ChangeLog6848
-rw-r--r--NEWS1051
-rw-r--r--RELEASE34
-rw-r--r--configure.ac8
-rw-r--r--gst-plugins-bad.doap10
-rw-r--r--meson.build2
6 files changed, 7894 insertions, 59 deletions
diff --git a/ChangeLog b/ChangeLog
index 498eb849a..3b721ee71 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6851 @@
+=== release 1.15.1 ===
+
+2019-01-17 02:16:53 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
+ * configure.ac:
+ * gst-plugins-bad.doap:
+ * meson.build:
+ Release 1.15.1
+
+2019-01-17 02:16:52 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ * docs/plugins/gst-plugins-bad-plugins.hierarchy:
+ * docs/plugins/gst-plugins-bad-plugins.interfaces:
+ * docs/plugins/gst-plugins-bad-plugins.prerequisites:
+ * docs/plugins/gst-plugins-bad-plugins.signals:
+ * docs/plugins/inspect/plugin-accurip.xml:
+ * docs/plugins/inspect/plugin-adpcmdec.xml:
+ * docs/plugins/inspect/plugin-adpcmenc.xml:
+ * docs/plugins/inspect/plugin-aiff.xml:
+ * docs/plugins/inspect/plugin-asfmux.xml:
+ * docs/plugins/inspect/plugin-assrender.xml:
+ * docs/plugins/inspect/plugin-audiobuffersplit.xml:
+ * docs/plugins/inspect/plugin-audiofxbad.xml:
+ * docs/plugins/inspect/plugin-audiolatency.xml:
+ * docs/plugins/inspect/plugin-audiomixmatrix.xml:
+ * docs/plugins/inspect/plugin-audiovisualizers.xml:
+ * docs/plugins/inspect/plugin-autoconvert.xml:
+ * docs/plugins/inspect/plugin-bayer.xml:
+ * docs/plugins/inspect/plugin-bluez.xml:
+ * docs/plugins/inspect/plugin-bs2b.xml:
+ * docs/plugins/inspect/plugin-bz2.xml:
+ * docs/plugins/inspect/plugin-camerabin.xml:
+ * docs/plugins/inspect/plugin-chromaprint.xml:
+ * docs/plugins/inspect/plugin-closedcaption.xml:
+ * docs/plugins/inspect/plugin-coloreffects.xml:
+ * docs/plugins/inspect/plugin-colormanagement.xml:
+ * docs/plugins/inspect/plugin-curl.xml:
+ * docs/plugins/inspect/plugin-dashdemux.xml:
+ * docs/plugins/inspect/plugin-dc1394.xml:
+ * docs/plugins/inspect/plugin-de265.xml:
+ * docs/plugins/inspect/plugin-debugutilsbad.xml:
+ * docs/plugins/inspect/plugin-decklink.xml:
+ * docs/plugins/inspect/plugin-dfbvideosink.xml:
+ * docs/plugins/inspect/plugin-dtls.xml:
+ * docs/plugins/inspect/plugin-dtsdec.xml:
+ * docs/plugins/inspect/plugin-dvb.xml:
+ * docs/plugins/inspect/plugin-dvbsuboverlay.xml:
+ * docs/plugins/inspect/plugin-dvdspu.xml:
+ * docs/plugins/inspect/plugin-faac.xml:
+ * docs/plugins/inspect/plugin-faad.xml:
+ * docs/plugins/inspect/plugin-faceoverlay.xml:
+ * docs/plugins/inspect/plugin-fbdevsink.xml:
+ * docs/plugins/inspect/plugin-fdkaac.xml:
+ * docs/plugins/inspect/plugin-festival.xml:
+ * docs/plugins/inspect/plugin-fieldanalysis.xml:
+ * docs/plugins/inspect/plugin-flite.xml:
+ * docs/plugins/inspect/plugin-fluidsynthmidi.xml:
+ * docs/plugins/inspect/plugin-freeverb.xml:
+ * docs/plugins/inspect/plugin-frei0r.xml:
+ * docs/plugins/inspect/plugin-gaudieffects.xml:
+ * docs/plugins/inspect/plugin-gdp.xml:
+ * docs/plugins/inspect/plugin-geometrictransform.xml:
+ * docs/plugins/inspect/plugin-gme.xml:
+ * docs/plugins/inspect/plugin-gsm.xml:
+ * docs/plugins/inspect/plugin-hls.xml:
+ * docs/plugins/inspect/plugin-id3tag.xml:
+ * docs/plugins/inspect/plugin-inter.xml:
+ * docs/plugins/inspect/plugin-interlace.xml:
+ * docs/plugins/inspect/plugin-ipcpipeline.xml:
+ * docs/plugins/inspect/plugin-ivfparse.xml:
+ * docs/plugins/inspect/plugin-ivtc.xml:
+ * docs/plugins/inspect/plugin-jp2kdecimator.xml:
+ * docs/plugins/inspect/plugin-jpegformat.xml:
+ * docs/plugins/inspect/plugin-kate.xml:
+ * docs/plugins/inspect/plugin-kms.xml:
+ * docs/plugins/inspect/plugin-ladspa.xml:
+ * docs/plugins/inspect/plugin-legacyrawparse.xml:
+ * docs/plugins/inspect/plugin-midi.xml:
+ * docs/plugins/inspect/plugin-mms.xml:
+ * docs/plugins/inspect/plugin-modplug.xml:
+ * docs/plugins/inspect/plugin-mpegpsdemux.xml:
+ * docs/plugins/inspect/plugin-mpegpsmux.xml:
+ * docs/plugins/inspect/plugin-mpegtsdemux.xml:
+ * docs/plugins/inspect/plugin-mpegtsmux.xml:
+ * docs/plugins/inspect/plugin-musepack.xml:
+ * docs/plugins/inspect/plugin-mxf.xml:
+ * docs/plugins/inspect/plugin-neonhttpsrc.xml:
+ * docs/plugins/inspect/plugin-netsim.xml:
+ * docs/plugins/inspect/plugin-ofa.xml:
+ * docs/plugins/inspect/plugin-openal.xml:
+ * docs/plugins/inspect/plugin-opencv.xml:
+ * docs/plugins/inspect/plugin-openexr.xml:
+ * docs/plugins/inspect/plugin-openh264.xml:
+ * docs/plugins/inspect/plugin-openjpeg.xml:
+ * docs/plugins/inspect/plugin-openmpt.xml:
+ * docs/plugins/inspect/plugin-openni2.xml:
+ * docs/plugins/inspect/plugin-opusparse.xml:
+ * docs/plugins/inspect/plugin-pcapparse.xml:
+ * docs/plugins/inspect/plugin-pnm.xml:
+ * docs/plugins/inspect/plugin-proxy.xml:
+ * docs/plugins/inspect/plugin-removesilence.xml:
+ * docs/plugins/inspect/plugin-resindvd.xml:
+ * docs/plugins/inspect/plugin-rfbsrc.xml:
+ * docs/plugins/inspect/plugin-rsvg.xml:
+ * docs/plugins/inspect/plugin-rtmp.xml:
+ * docs/plugins/inspect/plugin-rtponvif.xml:
+ * docs/plugins/inspect/plugin-sbc.xml:
+ * docs/plugins/inspect/plugin-sdpelem.xml:
+ * docs/plugins/inspect/plugin-segmentclip.xml:
+ * docs/plugins/inspect/plugin-shm.xml:
+ * docs/plugins/inspect/plugin-siren.xml:
+ * docs/plugins/inspect/plugin-smooth.xml:
+ * docs/plugins/inspect/plugin-smoothstreaming.xml:
+ * docs/plugins/inspect/plugin-sndfile.xml:
+ * docs/plugins/inspect/plugin-soundtouch.xml:
+ * docs/plugins/inspect/plugin-spandsp.xml:
+ * docs/plugins/inspect/plugin-speed.xml:
+ * docs/plugins/inspect/plugin-srt.xml:
+ * docs/plugins/inspect/plugin-srtp.xml:
+ * docs/plugins/inspect/plugin-subenc.xml:
+ * docs/plugins/inspect/plugin-teletext.xml:
+ * docs/plugins/inspect/plugin-timecode.xml:
+ * docs/plugins/inspect/plugin-ttmlsubs.xml:
+ * docs/plugins/inspect/plugin-uvch264.xml:
+ * docs/plugins/inspect/plugin-vcdsrc.xml:
+ * docs/plugins/inspect/plugin-vdpau.xml:
+ * docs/plugins/inspect/plugin-videofiltersbad.xml:
+ * docs/plugins/inspect/plugin-videoframe_audiolevel.xml:
+ * docs/plugins/inspect/plugin-videoparsersbad.xml:
+ * docs/plugins/inspect/plugin-videosignal.xml:
+ * docs/plugins/inspect/plugin-vmnc.xml:
+ * docs/plugins/inspect/plugin-voaacenc.xml:
+ * docs/plugins/inspect/plugin-voamrwbenc.xml:
+ * docs/plugins/inspect/plugin-vulkan.xml:
+ * docs/plugins/inspect/plugin-wasapi.xml:
+ * docs/plugins/inspect/plugin-waylandsink.xml:
+ * docs/plugins/inspect/plugin-webp.xml:
+ * docs/plugins/inspect/plugin-webrtc.xml:
+ * docs/plugins/inspect/plugin-wildmidi.xml:
+ * docs/plugins/inspect/plugin-x265.xml:
+ * docs/plugins/inspect/plugin-y4mdec.xml:
+ * docs/plugins/inspect/plugin-yadif.xml:
+ * docs/plugins/inspect/plugin-zbar.xml:
+ Update docs
+
+2019-01-17 02:16:38 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * po/af.po:
+ * po/ast.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/ky.po:
+ * po/lt.po:
+ * po/lv.po:
+ * po/mt.po:
+ * po/nb.po:
+ * po/nl.po:
+ * po/or.po:
+ * po/pl.po:
+ * po/pt_BR.po:
+ * po/ro.po:
+ * po/ru.po:
+ * po/sk.po:
+ * po/sl.po:
+ * po/sq.po:
+ * po/sr.po:
+ * po/sv.po:
+ * po/tr.po:
+ * po/uk.po:
+ * po/vi.po:
+ * po/zh_CN.po:
+ Update translations
+
+2019-01-16 13:48:28 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/srt/Makefile.am:
+ srt: dist enums header
+
+2019-01-16 01:03:40 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/meson.build:
+ meson: enable tests for orc code
+
+2019-01-15 02:03:23 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ * sys/wasapi/gstwasapiutil.h:
+ wasapi: Fix infinite loop when the device disappears
+ When the audio device goes away during playback or capture, we were
+ going into an infinite loop of AUDCLNT_E_DEVICE_INVALIDATED. Return -1
+ and post an error message so the ringbuffer thread exits with an error.
+
+2019-01-14 14:29:07 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/srt/Makefile.am:
+ srt: Fix autotools build
+ 0a350c610dab54dcdf55b45a0293fff048d24bb3 broke the build by only
+ building enum types with meson. It also removed gstsrt.c from the list
+ of sources, causing the plugin to fail to load.
+ squash! srt: Fix autotools build
+
+2019-01-14 14:37:23 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/srt/gstsrtobject.c:
+ srt: Fix GCC function type error
+ gstsrtobject.c: In function ‘gst_srt_object_close’:
+ gstsrtobject.c:1036:7: error: function called through a non-compatible type [-Werror]
+ (GDestroyNotify) g_closure_unref);
+ /usr/include/glib-2.0/glib/gmem.h:121:8: note: in definition of macro ‘g_clear_pointer’
+ (destroy) (_ptr); \
+ ^~~~~~~
+ gstsrtobject.c:1038:7: error: function called through a non-compatible type [-Werror]
+ (GDestroyNotify) g_closure_unref);
+ /usr/include/glib-2.0/glib/gmem.h:121:8: note: in definition of macro ‘g_clear_pointer’
+ (destroy) (_ptr); \
+ ^~~~~~~
+ Arch Linux
+ gcc 8.2.1 20181127
+ glib 2.58.2
+
+2019-01-10 14:28:52 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdk: set the right BRCParamMultiplier
+ BRCParamMultiplier in mfxInfoMFX is a parameter which specifies a
+ multiplier for bitrate control parameters [1], it impacts TargetKbps,
+ MaxKbps, BufferSizeInKB and InitialDelayInKB.
+ [1]: https://software.intel.com/en-us/node/628473
+
+2019-01-10 15:02:16 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdk: set the upper bound of max-vbv-bitrate to 2048000 kbps
+ The upper bound of bitrate is also 2048000 kbps which should be large
+ enough in practice.
+ Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/863
+
+2019-01-10 15:34:51 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/msdk/meson.build:
+ meson: Fix building of MSDK plugin on Windows
+ Variable name was typoed in 604c8d5232eba961ca34c9e98de8d5454cd5ab5f
+
+2018-11-07 14:47:44 +0900 Justin Kim <jeongseok.kim@sk.com>
+
+ * ext/srt/Makefile.am:
+ * ext/srt/gstsrt-enums.h:
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrt.h:
+ * ext/srt/gstsrtbasesink.c:
+ * ext/srt/gstsrtbasesink.h:
+ * ext/srt/gstsrtbasesrc.c:
+ * ext/srt/gstsrtbasesrc.h:
+ * ext/srt/gstsrtclientsink.c:
+ * ext/srt/gstsrtclientsink.h:
+ * ext/srt/gstsrtclientsrc.c:
+ * ext/srt/gstsrtclientsrc.h:
+ * ext/srt/gstsrtobject.c:
+ * ext/srt/gstsrtobject.h:
+ * ext/srt/gstsrtserversink.c:
+ * ext/srt/gstsrtserversink.h:
+ * ext/srt/gstsrtserversrc.c:
+ * ext/srt/gstsrtserversrc.h:
+ * ext/srt/gstsrtsink.c:
+ * ext/srt/gstsrtsink.h:
+ * ext/srt/gstsrtsrc.c:
+ * ext/srt/gstsrtsrc.h:
+ * ext/srt/meson.build:
+ srt: Integrate server and client element into one
+ We have srt{client,server}{src,sink} elements in accordance to the
+ norm of the connection oriented protocols. However, SRT connection
+ mode can be changed by uri parameters so it requires an integrated
+ element to handle the parameters.
+ fix: #740
+
+2019-01-09 15:03:19 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkcontext.c:
+ msdk: needn't call MFXJoinSession after MFXCloneSession
+ According to the MSDK documation[1], MFXCloneSession is a light-weight
+ equivalent of MFXJoinSession after MFXInit, so MFXJoinSession call isn't
+ needed in the msdk plugin, otherwise the cloned session is joined to the
+ parent session twice, and we will get a MFX error when closing the
+ parent session
+ example pipeline:
+ gst-launch-1.0 videotestsrc num-buffers=100 ! \
+ video/x-raw,format=NV12,width=352,height=288 ! msdkh264enc ! msdkh264dec ! \
+ msdkh264enc ! fakesink
+ Error message:
+ 0:00:00.211948518 21733 0x5586ee741c60 ERROR msdk
+ msdk.c:148:msdk_close_session: Close failed (undefined behavior)
+ [1]: https://software.intel.com/en-us/node/628429#MFXCloneSession
+
+2019-01-09 12:19:50 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkcontext.c:
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: check whether mfx function call fails
+ And log the failures for debugging
+
+2019-01-09 09:49:16 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdkenc: return NULL instead of FALSE
+ The returned type is a pointer
+
+2019-01-09 08:58:00 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: release resources if failing to create the buffer pool
+ Needn't check the pointers against NULL because the pointers are
+ non-NULL
+
+2019-01-08 13:33:44 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * sys/msdk/meson.build:
+ msdk: meson: compile vp9dec if available
+ based on the patches provided by Haihao Xiang <haihao.xiang@intel.com>
+
+2019-01-08 13:36:09 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * configure.ac:
+ * sys/msdk/gstmsdkh265dec.c:
+ * sys/msdk/gstmsdkh265enc.c:
+ * sys/msdk/gstmsdkmjpegdec.c:
+ * sys/msdk/gstmsdkvp8dec.c:
+ * sys/msdk/gstmsdkvp8enc.c:
+ * sys/msdk/gstmsdkvp9dec.c:
+ * sys/msdk/meson.build:
+ * sys/msdk/msdk.h:
+ * sys/msdk/msdk_libva.h:
+ msdk: add mfx in include path
+ Thus removing the preprocessor's directives to included if found.
+
+2019-01-08 13:30:29 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * sys/msdk/meson.build:
+ msdk: meson: use libmfx pkg-config if available
+ Refactoring to bail out early if MediaSDK is not found.
+ based on the patches provided by Haihao Xiang <haihao.xiang@intel.com>
+
+2019-01-08 13:18:13 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * configure.ac:
+ msdk: add in configure more directories to search for libraries
+
+2018-12-29 13:56:49 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkallocator_d3d.c:
+ * sys/msdk/gstmsdkallocator_libva.c:
+ * sys/msdk/gstmsdkcontext.c:
+ * sys/msdk/gstmsdkcontext.h:
+ msdk: don't reset the external frame allocator
+ In gst-msdk, a mfx session may be shared between different gst
+ elements, each element tries to set the frame allocator. However, per
+ the MSDK documation[1], the behavior is undefined if reset the frame
+ allocator while the previous allocator is in use. Fortunately all
+ elements use the same frame allocator, so we can avoid to call
+ MFXVideoCORE_SetFrameAllocator again.
+ [1]: https://software.intel.com/en-us/node/628430#MFXVideoCORE3
+
+2018-12-27 16:50:54 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdkvpp: don't use NV12 as default output in normal mode
+ If so, BGRA is the preferred output format hence BGRA will be selected
+ as input format by default, e.g. in the pipleline below, BGRA instead of
+ NV12 is selected without renegotiation, so we can avoid the NV12 issue
+ (see commit 3f2314a) by default.
+ gst-launch-1.0 videotestsrc ! msdkvpp ! glimagesink
+
+2018-12-14 10:18:25 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdkvpp: close the current VPP session if this session has been initialized
+ Otherwise MFXVideoVPP_Init will fail because it is called twice without
+ a close.
+ Example pipeline:
+ gst-launch-1.0 videotestsrc ! msdkvpp ! glimagesink
+ Sometimes glimagesink emits GST_EVENT_RECONFIGURE event which results
+ in that MFXVideoVPP_Init is called twice, then get the negotiation
+ failure below:
+ 0:00:00.093715518 21218 0x558ef56231e0 ERROR msdkvpp
+ gstmsdkvpp.c:995:gst_msdkvpp_initialize:<msdkvpp0> Init failed
+ (undefined behavior)
+ WARNING: from element /GstPipeline:pipeline0/GstMsdkVPP:msdkvpp0: not
+ negotiated
+ After applying this commit, the pipeline above may run without
+ negotiation failure, however NV12 layout in dmabuf mode is selected in
+ renegotiation, the display image is corrupted due to the NV12 issue which
+ was mentioned in commit 3f2314a. Some other fixes are needed to avoid
+ renegotiation by default
+
+2018-12-19 10:44:50 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdkvpp: don't update pads' info if nothing have changed
+
+2019-01-04 11:57:52 -0800 U. Artie Eoff <ullysses.a.eoff@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdkenc: break out of flush frames loop on error
+ In general, we should assume any unhandled error is
+ non-recoverable.
+ In the flush frames loop, some error states can cause us
+ to never increment the task and therefore we get stuck
+ in an infinite loop and generate GST_ELEMENT_ERROR
+ over and over again. This eventually consumes all
+ system memory and triggers OOM. Thus, assume the worst
+ and break out of the loop upon the first "unhandled" error.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/859
+
+2019-01-04 18:36:43 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ wasapi: Fix double call to Start when resetting the element
+ When either the source or sink goes from PLAYING -> NULL -> PLAYING,
+ we call _reset() which sets client_needs_restart, and then we call
+ prepare() which calls IAudioClient_Start(), so we don't need to call
+ it again in src_read() or sink_write(). Unlike when we're just going
+ PLAYING -> PAUSED -> PLAYING.
+
+2019-01-03 15:49:26 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ wasapisink: Don't call CoUninitialize() twice in unprepare()
+ It has to be symmetric with CoInitialize(), otherwise everything else
+ will fail.
+
+2019-01-02 17:18:58 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ decklinkvideosink: Don't forget to unref clock after usage
+ And don't unref a clock that is potentially NULL.
+
+2018-12-31 12:09:42 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/webrtc/webrtcsdp.c:
+ webrtc: include stdlib.h for atoi()
+ Fixes #857
+
+2018-12-30 22:31:39 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/meson.build:
+ tests: Enable more tests on Windows
+
+2018-12-30 22:33:03 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/elements/compositor.c:
+ tests: Remove compositor test
+ It's moved to -base and no more part of -bad
+
+2018-12-30 22:31:02 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/elements/asfmux.c:
+ * tests/check/elements/camerabin.c:
+ * tests/check/elements/gdpdepay.c:
+ * tests/check/elements/gdppay.c:
+ tests: Remove pointless unistd include
+
+2018-12-27 17:52:47 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-bad-plugins-sections.txt:
+ * docs/plugins/inspect/plugin-openglmixers.xml:
+ * ext/Makefile.am:
+ * ext/gl/Makefile.am:
+ * ext/gl/gstglbasemixer.c:
+ * ext/gl/gstglbasemixer.h:
+ * ext/gl/gstglbumper.c:
+ * ext/gl/gstglbumper.h:
+ * ext/gl/gstglfilterreflectedscreen.c:
+ * ext/gl/gstglfilterreflectedscreen.h:
+ * ext/gl/gstglmixer.c:
+ * ext/gl/gstglmixer.h:
+ * ext/gl/gstglmixerbin.c:
+ * ext/gl/gstglmixerbin.h:
+ * ext/gl/gstglmosaic.c:
+ * ext/gl/gstglmosaic.h:
+ * ext/gl/gstglstereomix.c:
+ * ext/gl/gstglstereomix.h:
+ * ext/gl/gstglutils.c:
+ * ext/gl/gstglutils.h:
+ * ext/gl/gstglvideomixer.c:
+ * ext/gl/gstglvideomixer.h:
+ * ext/gl/gstopengl.c:
+ * ext/gl/meson.build:
+ * ext/meson.build:
+ * meson_options.txt:
+ Remove openglmixers plugin, moved to -base
+ Merged into the existing opengl plugin in -base.
+
+2018-12-27 13:41:05 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * .gitignore:
+ * configure.ac:
+ * docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-bad-plugins-sections.txt:
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ * docs/plugins/gst-plugins-bad-plugins.hierarchy:
+ * docs/plugins/gst-plugins-bad-plugins.interfaces:
+ * docs/plugins/inspect/plugin-compositor.xml:
+ * gst/compositor/.gitignore:
+ * 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/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/crossfade.c:
+ * tests/examples/compositor/meson.build:
+ * tests/examples/meson.build:
+ Remove compositor plugin which was moved to -base
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/138
+
+2018-12-26 17:54:21 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * docs/libs/Makefile.am:
+ * docs/libs/gst-plugins-bad-libs-docs.sgml:
+ * docs/libs/gst-plugins-bad-libs-sections.txt:
+ * docs/libs/gst-plugins-bad-libs.types:
+ * ext/gl/Makefile.am:
+ * ext/gl/meson.build:
+ * ext/iqa/Makefile.am:
+ * ext/iqa/meson.build:
+ * gst-libs/gst/Makefile.am:
+ * gst-libs/gst/meson.build:
+ * gst-libs/gst/video/.gitignore:
+ * gst-libs/gst/video/Makefile.am:
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ * gst-libs/gst/video/gstvideoaggregator.h:
+ * gst-libs/gst/video/meson.build:
+ * gst-libs/gst/video/video-bad-prelude.h:
+ * gst/compositor/Makefile.am:
+ * gst/compositor/meson.build:
+ * pkgconfig/Makefile.am:
+ * pkgconfig/gstreamer-bad-video-uninstalled.pc.in:
+ * pkgconfig/gstreamer-bad-video.pc.in:
+ * pkgconfig/meson.build:
+ Remove GstVideoAggregator, moved into libgstvideo in -base
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/137
+
+2018-12-25 14:16:36 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/opencv/Makefile.am:
+ opencv: fix disting of new header files
+ Fixes distcheck.
+
+2018-10-08 23:45:28 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * docs/plugins/Makefile.am:
+ * docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-bad-plugins-sections.txt:
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ * docs/plugins/gst-plugins-bad-plugins.hierarchy:
+ * docs/plugins/inspect/plugin-stereo.xml:
+ * gst/meson.build:
+ * gst/stereo/.gitignore:
+ * gst/stereo/Makefile.am:
+ * gst/stereo/gststereo.c:
+ * gst/stereo/gststereo.h:
+ * gst/stereo/meson.build:
+ * meson_options.txt:
+ stereo: remove plugin which has been merged into audiofx in -good
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/457
+
+2018-12-25 16:10:57 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/msdk/gstmsdkbufferpool.c:
+ msdk: Fix invalid return type build warning
+ void function cannot have return value
+ gst-plugins-bad/sys/msdk/gstmsdkbufferpool.c(332): warning C4098:
+ 'gst_msdk_buffer_pool_release_buffer': ...
+
+2018-12-24 23:05:55 +0900 Justin Kim <jeongseok.kim@sk.com>
+
+ * ext/openal/gstopenalsink.h:
+ * ext/openal/gstopenalsrc.h:
+ * ext/openal/meson.build:
+ openal: Fix AL header path for Mac OS X
+ OpenAL.framework doesn't provide 'alext.h'.
+ Thus, openal is enabled only if the dependency
+ is set by pkg-config.
+ fixes: #852
+
+2018-12-22 18:39:44 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: Logging fix for updated audio info
+ Bitrate was logged a second time instead of the max_bitrate.
+
+2018-12-20 10:12:42 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/timecode/gsttimecodestamper.c:
+ timecodestamper: Don't use deprecated API
+
+2018-12-18 13:50:43 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/transportreceivebin.c:
+ * ext/webrtc/transportreceivebin.h:
+ webrtc/receive-bin: block pads before dtlssrtpdec:
+ Fixes SSL errors in fast-start scenarios and whenever media stream may
+ be received before an answer is set.
+
+2018-12-18 13:32:02 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: only change the receive state after setting the dtls-client
+ Doing so before will cause SSL errors with fast-start implementations
+ like Chrome or if media data arrives before an answer.
+
+2018-12-18 13:31:00 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: A couple of documentation fixes
+ set-*-description only takes the combined GstWebRTCSessionDescription
+ object
+
+2018-12-16 11:02:50 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.h:
+ decklinkvideosink: Fix support for raw CEA608 input and add support for raw CEA708 input
+ The former was only considering the first byte pair, for the latter we
+ have to convert raw CEA708 cc_data into CDP.
+
+2018-12-13 14:27:25 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/Makefile.am:
+ * tests/check/elements/.gitignore:
+ * tests/check/elements/ccconverter.c:
+ * tests/check/meson.build:
+ ccconverter: Add unit test
+
+2018-12-12 14:59:50 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/Makefile.am:
+ * ext/closedcaption/gstccconverter.c:
+ * ext/closedcaption/gstccconverter.h:
+ * ext/closedcaption/gstclosedcaption.c:
+ * ext/closedcaption/meson.build:
+ closedcaption: Add ccconverter element that can convert between different types of Closed Caption formats
+
+2018-12-18 15:25:58 -0500 Xavier Claessens <xavier.claessens@collabora.com>
+
+ * sys/tinyalsa/meson.build:
+ Fix build when we have tinyalsa but not its header
+
+2018-12-18 22:07:48 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/meson.build:
+ tests: Re-enable isoff test on Windows
+ ... and drop libxml2 dependency since it never be used by
+ both test and gstisoff.
+
+2018-12-16 22:46:02 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/elements/parser.h:
+ tests: Fix build with MSVC
+
+2018-12-18 21:16:43 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * meson.build:
+ * tests/check/meson.build:
+ meson: Prefer to use join_paths() over '/'
+ ... to avoid mixing '/' and '\' in a path string on Windows.
+
+2018-12-07 23:22:08 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * meson.build:
+ * tests/check/meson.build:
+ * tests/meson.build:
+ tests: Enable unit test on Windows
+ Allow run some unit tests on Windows.
+ * Add dependency explicitly for some test cases, otherwise plugins couldn't be
+ loaded on uninstalled environment of Windows.
+ * Add missing GST_PLUGIN_LOADING_WHITELIST on meson build.
+
+2018-11-06 22:07:52 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Accept underscore in property
+ Otherwise sdi_mode and similar properties would be canonicalised to
+ sdi-mode.
+
+2018-12-18 15:41:09 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: fix tmp_kmsmem leaks
+ configure_mode_setting() keeps a ref on tmp_kmsmem which is released in
+ gst_kms_sink_show_frame().
+ But if for some reason configure_mode_setting() is re-called before
+ showing a frame or if none is showed this memory was leaked.
+
+2018-12-18 00:34:44 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * meson.build:
+ * sys/Makefile.am:
+ * sys/acmenc/Makefile.am:
+ * sys/acmenc/acmenc.c:
+ * sys/acmmp3dec/Makefile.am:
+ * sys/acmmp3dec/acmmp3dec.c:
+ * sys/meson.build:
+ Remove acmmp3dec and acmenc plugins
+ ACM is an ancient legacy API, and there's no point in
+ keeping it around for a licensed mp3 decoder now that
+ mp3 patents have expired and we have a decoder in -good.
+ We didn't ship this in cerbero anyway. If there's a good
+ case for the AAC encoder (which is LC only anyway) someone
+ should write a new plugin based on current APIs, that can
+ actually be built out of the box.
+ Fixes #850
+
+2018-12-17 18:58:52 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/opencv/meson.build:
+ meson: fix opencv=disabled case if opencv is available on the system
+ ext/opencv/meson.build:103:2: ERROR: Unknown variable "gstopencv_dep".
+
+2018-12-17 11:18:06 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/wildmidi/meson.build:
+ meson: wildmidi detection fixes
+ Need at least 0.4.2 apparently.
+ ext/wildmidi/meson.build:11:2: ERROR: String '' cannot be converted to int
+
+2018-12-17 08:43:57 +0100 Jonathan Karlsson <jonakn@axis.com>
+
+ * ext/curl/gstcurlhttpsink.c:
+ curlhttpsink: free content type before assigning it
+ Not doing this would result in a memory leak.
+
+2018-12-17 08:07:26 +0100 Jonathan Karlsson <jonakn@axis.com>
+
+ * ext/curl/gstcurlbasesink.c:
+ curlbasesink: cleanup transfer immediately when done
+
+2018-12-05 01:29:18 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacdec.c:
+ * ext/fdkaac/gstfdkaacenc.c:
+ fdkaac: Syntax tweaks to increase readability
+ Mostly move some assignments out of conditionals that gst-indent
+ completely destroys.
+
+2018-12-04 18:33:09 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacdec.c:
+ fdkaacdec: Enable 8-channel playback
+ The decoder seems to default to 6 channels max, downmixing 7.1 to 5.1.
+ Disable the channel limit to expose all channels to GStreamer.
+ In addition, none of the standard configurations use ACT_SIDE channels.
+ The rear channels of the 7.1 configuration have to be taken from
+ ACT_BACK. See the table in aacenc_lib.h, reproduced here:
+ ----------------------------------------------------------------------------------------
+ ChannelMode | ChCfg | Height | front_El | side_El | back_El | lfe_El
+ -----------------------+-------+--------+---------------+----------+----------+---------
+ MODE_1 | 1 | NORM | SCE | | |
+ MODE_2 | 2 | NORM | CPE | | |
+ MODE_1_2 | 3 | NORM | SCE, CPE | | |
+ MODE_1_2_1 | 4 | NORM | SCE, CPE | | SCE |
+ MODE_1_2_2 | 5 | NORM | SCE, CPE | | CPE |
+ MODE_1_2_2_1 | 6 | NORM | SCE, CPE | | CPE | LFE
+ MODE_1_2_2_2_1 | 7 | NORM | SCE, CPE, CPE | | CPE | LFE
+ MODE_6_1 | 11 | NORM | SCE, CPE | | CPE, SCE | LFE
+ MODE_7_1_BACK | 12 | NORM | SCE, CPE | | CPE, CPE | LFE
+ -----------------------+-------+--------+---------------+----------+----------+---------
+ MODE_7_1_TOP_FRONT | 14 | NORM | SCE, CPE | | CPE | LFE
+ | | TOP | CPE | | |
+ -----------------------+-------+--------+---------------+----------+----------+---------
+ MODE_7_1_REAR_SURROUND | 0 | NORM | SCE, CPE | | CPE, CPE | LFE
+ MODE_7_1_FRONT_CENTER | 0 | NORM | SCE, CPE, CPE | | CPE | LFE
+ ----------------------------------------------------------------------------------------
+ - NORM: Normal Height Layer. - TOP: Top Height Layer. - BTM: Bottom Height Layer.
+ - SCE: Single Channel Element. - CPE: Channel Pair. - LFE: Low Frequency Element.
+ Restores 8 channels to
+ https://www2.iis.fraunhofer.de/AAC/7.1auditionOutLeader_v2_rtb.mp4
+
+2018-12-04 18:06:26 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * configure.ac:
+ * ext/fdkaac/gstfdkaacenc.c:
+ * ext/fdkaac/meson.build:
+ fdkaacenc: Add support for v2.0.0 and its configurations
+ These are MPEG-standard configurations so should be checked first,
+ before the PCE clones added by v0.1.4.
+
+2018-12-04 18:04:28 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacenc.c:
+ fdkaacenc: Add support for MPEG configuration 7
+
+2018-12-04 18:04:06 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacenc.c:
+ fdkaacenc: Add a description of each configuration
+
+2018-12-04 17:57:15 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacenc.c:
+ fdkaacenc: Prefer REAR for surround channels
+ We (currently?) prefer to use the REAR positions for what MPEG calls
+ "surround" channels.
+
+2018-12-16 23:45:32 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ * docs/plugins/gst-plugins-bad-plugins.interfaces:
+ * ext/Makefile.am:
+ * ext/daala/Makefile.am:
+ * ext/daala/gstdaala.c:
+ * ext/daala/gstdaaladec.c:
+ * ext/daala/gstdaaladec.h:
+ * ext/daala/gstdaalaenc.c:
+ * ext/daala/gstdaalaenc.h:
+ * ext/meson.build:
+ Remove daala plugin
+ Not so useful now that all effort is focused on AV1 instead.
+ Was only ever enabled with --enable-experimental anyway.
+ Fixes #848
+
+2018-12-17 12:30:27 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/openal/meson.build:
+ * ext/opencv/gsttemplatematch.cpp:
+ * ext/opencv/meson.build:
+ * ext/sndfile/meson.build:
+ meson: Add libsinc to the CFLAGS
+ Otherwise gst-i18n-plugin.h can't be found.
+
+2018-12-17 00:26:47 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/openni2/meson.build:
+ * meson_options.txt:
+ meson: build openni2 plugin
+
+2018-12-17 00:19:37 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/openmpt/meson.build:
+ * meson_options.txt:
+ meson: build openmpt plugin
+
+2018-12-17 00:11:16 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/openexr/meson.build:
+ * meson_options.txt:
+ meson: build openexr plugin
+
+2018-12-17 00:00:11 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/openal/meson.build:
+ * meson_options.txt:
+ meson: build openal plugin
+
+2018-12-16 20:27:56 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/sndfile/meson.build:
+ * meson_options.txt:
+ meson: build sndfile plugin
+
+2018-12-16 20:18:11 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/freeverb/meson.build:
+ meson: install freeverb preset file
+
+2018-12-16 20:13:08 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/voamrwbenc/meson.build:
+ * meson.build:
+ * meson_options.txt:
+ meson: build voamrwbenc plugin
+
+2018-12-16 20:02:07 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/teletextdec/meson.build:
+ * meson_options.txt:
+ meson: build teletext plugin
+
+2018-12-16 18:45:53 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/modplug/meson.build:
+ * meson_options.txt:
+ meson: build modplug plugin
+
+2018-12-16 18:07:48 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/wildmidi/meson.build:
+ * meson_options.txt:
+ meson: build wildmidi plugin
+
+2018-12-16 17:35:58 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/dc1394/meson.build:
+ * ext/meson.build:
+ * meson_options.txt:
+ meson: build dc1394 plugin
+
+2018-12-16 01:05:25 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/ofa/meson.build:
+ * meson_options.txt:
+ meson: build ofa plugin
+
+2018-12-16 00:56:50 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/gme/meson.build:
+ * ext/meson.build:
+ * meson_options.txt:
+ meson: build gme plugin
+
+2018-12-16 00:41:23 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson_options.txt:
+ * sys/meson.build:
+ * sys/vdpau/meson.build:
+ meson: build vdpau plugin
+
+2018-12-15 20:02:48 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson_options.txt:
+ * sys/meson.build:
+ * sys/tinyalsa/meson.build:
+ meson: build tinyalsa plugin
+
+2018-12-15 18:24:11 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson_options.txt:
+ * sys/meson.build:
+ * sys/vcd/meson.build:
+ meson: build vcdsrc plugin
+
+2018-12-16 23:35:58 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * ext/Makefile.am:
+ * ext/meson.build:
+ * ext/spc/Makefile.am:
+ * ext/spc/gstspc.c:
+ * ext/spc/gstspc.h:
+ * ext/spc/tag.c:
+ * ext/spc/tag.h:
+ Remove spc plugin
+ Replaced by gme plugin. Fixes #467
+
+2018-12-11 14:12:13 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstcccombiner.c:
+ * ext/closedcaption/gstccextractor.c:
+ closedcaption: Use new API for converting GstVideoCaptionType from/to GstCaps
+
+2018-12-10 15:54:49 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstcccombiner.c:
+ * ext/closedcaption/gstccextractor.c:
+ * ext/closedcaption/gstline21dec.c:
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ closedcaption: Replace GST_VIDEO_CAPTION_TYPE_CEA608_IN_CEA708_RAW with CEA608_S334_1A
+ As a side-effect we can now actually store the line offset in the
+ line21dec element, and have to perform fewer transformations in the
+ decklink elements (which were also buggy as they assumed a single byte
+ triplet per meta).
+
+2018-12-10 15:43:19 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstline21dec.c:
+ line21dec: If CCs are not found at the previous line, reset and search from the beginning again
+
+2018-12-10 15:42:04 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstline21dec.c:
+ line21dec: Don't read more lines than the height of the frame
+
+2018-12-14 19:55:32 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/meson.build:
+ removesilence: add libm to meson.build
+
+2018-12-14 17:09:01 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ * gst/removesilence/gstremovesilence.h:
+ removesilence: reset filter on start and on segment events
+
+2018-12-14 15:48:09 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ removesilence: improve documentation
+
+2018-11-26 16:40:01 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ * gst/removesilence/vad_private.c:
+ * gst/removesilence/vad_private.h:
+ removesilence: add threshold property
+ silence thresold was hardcoded to -60 dB, now it is configurable
+ using this new property
+ Closes #63
+
+2018-11-26 16:39:16 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ * gst/removesilence/gstremovesilence.h:
+ removesilence: add properties to detect silence only after minimum silence time/buffers
+ Closes #63
+
+2018-11-26 16:38:37 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ * gst/removesilence/gstremovesilence.h:
+ removesilence: add silent property to control bus message notifications
+ Closes #63
+
+2018-11-26 16:37:40 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ * gst/removesilence/gstremovesilence.h:
+ removesilence: post bus messages when silence is detected/finished
+ Closes #63
+
+2018-11-26 16:36:18 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * gst/removesilence/gstremovesilence.c:
+ * gst/removesilence/gstremovesilence.h:
+ removesilence: add squash property
+ allows to output buffers without timestamp gap when silence is removed
+ Closes #63
+
+2018-12-14 12:22:51 +0900 Justin Kim <jeongseok.kim@sk.com>
+
+ * sys/applemedia/meson.build:
+ sys: applemedia: meson: Add dependencies by using appleframeworks
+ gst-build#13
+
+2018-12-03 16:18:32 +0900 Wonchul Lee <w.lee@lge.com>
+
+ * configure.ac:
+ * ext/wayland/wldisplay.c:
+ * ext/wayland/wldisplay.h:
+ * ext/wayland/wlwindow.c:
+ * ext/wayland/wlwindow.h:
+ waylandsink: Avoid race condition on multi-threaded client
+ When waylandsink is used on some other thread than the main wayland
+ client thread, the waylandsink implementation is vulnerable to a
+ condition related to registry and surface events which handled in
+ seperated event queue.
+ The race that may happen is that after a proxy is created, but
+ before the queue is set, events meant to be emitted via the yet to
+ set queue may already have been queued on the wrong queue.
+ Wayland 1.11 introduced new API that allows creating a proxy
+ wrappper which can help to avoid this race condition.
+
+2018-12-03 11:59:46 +0900 Wonchul Lee <w.lee@lge.com>
+
+ * tests/examples/waylandsink/Makefile.am:
+ * tests/examples/waylandsink/meson.build:
+ * tests/examples/waylandsink/wayland-threads.c:
+ examples/wayland: Add wayland multi-thread client example
+ This is for testing race condition with multi-thread wayland client
+ environment. The race condition will be resolved with wayland proxy
+ wrapper API when handling event queue.
+
+2018-12-01 22:42:53 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth264parse.c:
+ * gst/videoparsers/gsth265parse.c:
+ h26{4,5}parse: Don't confuse nal of codec_data with frame
+ vps/sps/pps in codec_data shouldn't be considered as inband data.
+ Otherwise, h26{4,5}parse never insert them to nal when transform
+ (packetized to byte-stream) use case
+
+2018-11-20 04:09:52 -0600 Matthew Waters <matthew@centricular.com>
+
+ * sys/nvdec/gstnvdec.c:
+ nvdec: Rely on upstream's value for interlace-mode with hevc
+ The nvdec API doesn't seem to produce interlacing information with hevc
+ streams so rely on upstreams value for interlace-mode
+
+2018-12-12 15:24:18 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: change the wait time for encoder and vpp
+ In MSDK samples, the wait time for encoder, decoder and vpp is
+ 300000. Let's set the wait time to the same value in msdk plugin
+
+2018-12-12 13:45:34 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: correct the error message
+ It is VPP session instead of Encoder session
+
+2018-12-12 12:52:46 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: check the created context against NULL pointer
+ gst_msdk_context_new_with_parent() may return NULL
+
+2018-12-11 15:54:51 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkcontext.c:
+ msdk: decrease the reference count of object
+ Otherwise there are reference leaks if failed to clone or join a
+ mfx session
+
+2018-12-11 15:04:12 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/msdk.c:
+ msdk: assign the returned value to status variable
+ Othervise the subsequent check will use the stale value of status
+ variable
+
+2018-11-27 15:56:03 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkh265enc.c:
+ msdkh265enc: output main-10 bitstream if the input is P010_10LE
+ Tested on KBL using the following command:
+ gst-launch-1.0 videotestsrc num_buffers=100 ! video/x-raw,format=P010_10LE ! \
+ msdkh265enc ! filesink location=a.hevc
+ This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/829
+
+2018-11-27 19:22:16 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkh265enc.c:
+ msdkh265enc: add P010_10LE to the sink pad template
+
+2018-11-27 15:55:51 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkh265enc.c:
+ msdkh265enc: re-add the sink pad template
+ We will add more profiles in the sink caps of msdkh265enc, so let
+ msdkh265enc re-add the sink pad template. Note this change doesn't
+ impact any capability
+
+2018-11-27 16:08:42 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdkenc: handle P010_10LE input format
+ Note it is up to each codec to support P010_10LE format
+
+2018-11-27 15:52:56 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdkenc: use macro GST_VIDEO_INFO_FORMAT if possible
+
+2018-11-27 22:28:15 -0600 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.h:
+ decklink: calculate the decklink output time from the internal clock
+ Fixes the time calculations when dealing with a slaved clock (as
+ will occur with more than one decklink video sink), when performing
+ flushing seeks causing stalls in the output timeline, pausing.
+ Tighten up the calculations by relying solely on the internal time
+ (from the internal clock) for determining when to schedule display
+ frames instead attempting to track pause lengths from the external
+ clock and converting to internal time. This results in a much easier
+ offset calculation for choosing the output time and ensures that the
+ clock is always advancing when we need it to.
+ This is fixup to the 'monotonically increasing output timestamps' goal
+ in: bf849e9a69442f7a6f9d4f0a1ef30d5a8009f689
+
+2018-11-29 19:22:51 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/check/Makefile.am:
+ * tests/check/elements/mpegvideoparse.c:
+ * tests/files/Makefile.am:
+ * tests/files/mpeg2-es-with-cea708-cc.dat:
+ tests: mpegvideoparse: add unit test for CEA-708 closed captions extraction
+
+2018-11-28 17:05:33 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/videoparsers/gstmpegvideoparse.c:
+ * gst/videoparsers/gstmpegvideoparse.h:
+ mpegvideoparse: extract CEA-708 closed captions
+
+2018-12-10 16:14:07 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/elements/mpegtsmux.c:
+ mpegtsmux: Change unit test to not generate zero-sized buffers ever
+
+2018-12-10 16:13:37 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/mpegtsmux/tsmux/tsmuxstream.c:
+ mpegtsmux: Handle zero-sized buffers correctly without going into an infinite loop
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/844
+
+2018-11-29 13:49:04 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: Don't crash if playbin is not available but kill the process cleanly
+
+2018-12-07 16:52:39 +1100 Matthew Waters <matthew@centricular.com>
+
+ * sys/androidmedia/meson.build:
+ androidmedia: also install java sources
+ As needed by our ndk-build integration
+
+2018-12-05 19:01:40 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstccextractor.c:
+ * tests/check/elements/ccextractor.c:
+ ccextractor: Copy over timecode meta from the input buffers to the outgoing caption buffers
+ Formats like SCC and MCC work based on timecodes so ideally we pass
+ through the timecodes when writing them.
+
+2018-12-05 18:46:52 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstccextractor.c:
+ * ext/closedcaption/gstccextractor.h:
+ * tests/check/elements/ccextractor.c:
+ ccextractor: Include framerate in the closedcaption caps
+ It depends on the framerate how many cc_data byte pairs are allowed per
+ frame, and the framerate is also needed for converting into the CDP or
+ MCC format as the framerate is part of the header metadata.
+
+2018-12-05 17:55:14 +0100 Patricia Muscalu <patricia@axis.com>
+
+ * ext/curl/gstcurlbasesink.c:
+ curlbasesink: Rename curl transfer thread
+ Some systems restrict the length of thread names to 16 bytes.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/838
+
+2018-12-05 13:10:11 +0000 Philippe Normand <philn@igalia.com>
+
+ * ext/meson.build:
+ * ext/wpe/WPEThreadedView.cpp:
+ * ext/wpe/WPEThreadedView.h:
+ * ext/wpe/gstwpesrc.cpp:
+ * ext/wpe/gstwpesrc.h:
+ * ext/wpe/meson.build:
+ * meson_options.txt:
+ wpe: Add a source element acting as a Web Browser based on WebKit WPE
+ The wpe element is used to produce a video texture representing a web page
+ rendered off-screen by WPE. This element can be used to overlay HTML on top of
+ another video stream for instance.
+
+2018-11-19 11:39:50 +0100 Jonathan Karlsson <jonakn@axis.com>
+
+ * ext/curl/gstcurlhttpsink.c:
+ curlhttpsink: Enable content type changes
+ Makes it possible to change content type without having to
+ reinitialize the element, typically after reset.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/41
+
+2018-12-05 10:10:39 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacdec.c:
+ fdkaacdec: Use WAV channel mapping instead of interleave setting
+ The latter is going away in libfdk-aac 2.0.0. Instead, MPEG-style output
+ is always non-interleaved and WAV-style output is always interleaved.
+ Earlier libfdk-aac also defaults interleaving accordingly.
+ Since our reordering looks at the associated PCE indices instead of the
+ actual channel order, we're agnostic to the mapping.
+ For https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/825
+
+2018-12-04 17:54:42 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/fdkaac/gstfdkaacenc.c:
+ fdkaacenc: Remove MODE_2_1
+ This is not a standard mode and no longer supported by fdk-aac 2.0.0.
+ For https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/825
+
+2018-12-05 17:24:20 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * common:
+ Automatic update of common submodule
+ From cd1dee0 to 59cb678
+
+2018-12-05 19:58:44 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/webrtc/meson.build:
+ meson: Add missing gio dep to webrtcbin plugin
+ It's usually pulled in implicitly through gstsdp_dep, but it's
+ actually a private dependency there. Fixes a build failure on Windows
+ with newer Meson.
+
+2018-12-04 16:15:22 +0530 Naveen Cherukuri <naveen.cherukuri@xilinx.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Avoiding get_property to take ownership of object members
+ Double free will happen if application frees string retuned by _get_property
+
+2018-11-28 12:39:58 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/msdk_libva.c:
+ msdk: add missing breaks
+
+2018-11-28 11:15:28 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkbufferpool.c:
+ msdk: fix the wrong operator
+ The condition is for video memory only, so the operator should be
+ & instead of |
+
+2018-09-27 15:33:32 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: process SEI recovery point
+ Similar change as the on I did in h264parse. We want to process SEI
+ recovery point as keyframe so muxers will mark them as seek points and
+ decoders will be able to start decoding from them rather than waiting
+ for an IDR.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790
+
+2018-09-27 15:33:32 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst-libs/gst/codecparsers/gsth265parser.c:
+ * gst-libs/gst/codecparsers/gsth265parser.h:
+ h265parser: parse SEI recovery point
+ Copied the implementation from h264parser and adapted it to the HEVC
+ syntax.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790
+
+2018-09-19 09:07:10 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: parse SEI messages
+ Don't do anything with them yet. I just copied the parsing and
+ processing logic from h264parse.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790
+
+2018-09-19 10:06:15 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst/videoparsers/gsth264parse.c:
+ h264parse: mark SEI Recovery Point as keyframes
+ The spec states that "recovery point SEI message assists a decoder in
+ determining when the decoding process will produce acceptable
+ pictures for display after the decoder initiates random access or after the
+ encoder indicates a broken link in the coded video sequence."
+ Mark those as keyframes so muxers will mark them as seek points and
+ decoders will be able to start decoding from them rather than waiting
+ for an IDR.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790
+
+2018-11-23 11:51:04 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ * gst/videoparsers/gsth265parse.h:
+ h265parse: Don't duplicate VPS/SPS/PPS per config-interval if exists
+ Don't need to manually insert VPS/SPS/PPS since inband data could be useable.
+ Also fixes #824
+
+2018-11-23 11:28:44 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth264parse.c:
+ * gst/videoparsers/gsth264parse.h:
+ h264parse: Don't duplicate SPS/PPS per config-interval if exists
+ Don't need to manually insert SPS/PPS since inband data could be useable.
+ Fixes #824
+
+2018-11-26 00:58:16 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/ipcpipeline/meson.build:
+ * tests/examples/ipcpipeline/meson.build:
+ * tests/examples/meson.build:
+ * tests/examples/opencv/meson.build:
+ meson: build opencv and ipcpipeline examples
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/576
+
+2018-11-29 11:24:39 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/closedcaption/gstceaccoverlay.c:
+ cc708overlay: fix deadlock
+ We would forget to unlock when a caption data buffer is deemed
+ out of segment, which makes everything lock up next time buffers
+ are received.
+
+2018-11-28 13:35:35 +0200 Jordan Petridis <jordan@centricular.com>
+
+ * ext/dtls/gstdtlsagent.c:
+ * ext/dtls/gstdtlscertificate.c:
+ * ext/dtls/gstdtlsconnection.c:
+ * ext/webrtc/gstwebrtcice.c:
+ * sys/androidmedia/gstamcvideodec.c:
+ * sys/decklink/win/DeckLinkAPI_i.c:
+ * sys/winks/ksdeviceprovider.c:
+ * tests/check/libs/planaraudioadapter.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-20 10:37:47 +0000 Maciej Wolny <maciej.wolny@codethink.co.uk>
+
+ * gst-libs/gst/webrtc/rtpreceiver.h:
+ webrtc: Remove duplicate declarations
+ This causes 'redefinition of typedef ...' errors on GCC 4.5.3
+
+2018-11-27 16:06:53 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/hls/gsthlssink2.c:
+ hlssink2: Fix string leak
+ Need to free allocated string memory on _finalize()
+
+2018-11-16 13:58:22 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkh265dec.c:
+ msdk: remove unnecessary assignment
+ CodecProfile will be set in MFXVideoDECODE_DecodeHeader() to match
+ the input stream. Setting the hard-coded profile here will mislead
+ user that msdkh265dec supports a special profile only.
+
+2018-11-16 08:56:34 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkh265dec.c:
+ msdk: update the sink and src caps of msdkh265dec
+ Now hevc 10bit video can be decoded correctly, so update the sink
+ and src caps accordingly.
+ This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/720
+
+2018-11-19 22:24:33 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/msdk.c:
+ msdk: set right BitDepth and Shift for P010 mfx frame
+ BitDepth is 10 and Shitf must be set to 1 when creating P010 mfx
+ frame in MSDK
+
+2018-11-19 15:34:38 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/msdk.c:
+ * sys/msdk/msdk.h:
+ msdk: don't use hard-coded video format
+ Some codecs may support varied formats, e.g. HEVC may support NV12
+ and P010_10LE etc
+
+2018-11-16 20:01:52 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ msdk: adjust the RT format for P010 surface
+ According to VA API, VA_RT_FORMAT_YUV420_10 is expected for P010
+ surface
+
+2018-11-16 14:36:31 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ msdk: create VA_FOURCC_P010 surface from dmabuf
+
+2018-11-16 14:32:29 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ msdk: VA_FOURCC_P010 frame lock
+ P010 and NV12 have the same layout, so we may reuse the code in
+ gst_msdk_frame_lock()
+
+2018-11-16 16:42:43 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/msdk_libva.c:
+ msdk: map MFX_FOURCC_P010 to VA_FOURCC_P010
+
+2018-11-16 14:18:36 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdksystemmemory.c:
+ msdk: make sure the surface data is set for GST_VIDEO_FORMAT_P010_10LE
+ P010_10LE and NV12 have the same layout, so we may reuse the code.
+
+2018-10-19 16:23:21 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/msdk.c:
+ msdk: map GST_VIDEO_FORMAT_P010_10LE to MFX_FOURCC_P010
+
+2018-11-16 14:00:02 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ msdk: add an assert in gst_msdk_frame_lock() for unhandled formats
+ We will add support for more formats, e.g. P010, Adding an assert
+ here may catch the error early
+
+2018-10-19 16:23:34 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkh265dec.c:
+ msdk: use separate src caps for msdkh265dec
+ We will add more formats in the src caps of msdkh265dec, so let
+ msdkh265dec uses separate src caps. Note it doesn't change any
+ capability
+
+2018-11-20 15:17:44 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdk: Make sure a variable is initialized when it is used
+ Previously alloc_info is initialized when both thiz->initialized
+ and thiz->allocation_caps are true, but only thiz->initialized is
+ checked when alloc_info is used.
+
+2018-11-20 14:21:54 +0800 Xiang, Haihao <haihao.xiang@intel.com>
+
+ * sys/msdk/gstmsdkvideomemory.c:
+ msdk: Close fd handle
+ Otherwise it will result in resource leak if mem == NULL
+
+2018-11-25 20:27:25 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * ext/opencv/gsthanddetect.cpp:
+ opencv: define CASCADE_DO_CANNY_PRUNING for opencv < 4
+
+2018-11-25 16:13:28 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * configure.ac:
+ * ext/opencv/MotionCells.cpp:
+ * ext/opencv/MotionCells.h:
+ * ext/opencv/camerautils.hpp:
+ * ext/opencv/gstcameracalibrate.cpp:
+ * ext/opencv/gstcameraundistort.cpp:
+ * ext/opencv/gstcvdilate.cpp:
+ * ext/opencv/gstcvequalizehist.cpp:
+ * ext/opencv/gstcverode.cpp:
+ * ext/opencv/gstcvlaplace.cpp:
+ * ext/opencv/gstcvsmooth.cpp:
+ * ext/opencv/gstcvsobel.cpp:
+ * ext/opencv/gstdewarp.h:
+ * ext/opencv/gstdisparity.cpp:
+ * ext/opencv/gstdisparity.h:
+ * ext/opencv/gstedgedetect.cpp:
+ * ext/opencv/gstfaceblur.cpp:
+ * ext/opencv/gstfacedetect.cpp:
+ * ext/opencv/gstgrabcut.cpp:
+ * ext/opencv/gstgrabcut.h:
+ * ext/opencv/gsthanddetect.cpp:
+ * ext/opencv/gsthanddetect.h:
+ * ext/opencv/gstretinex.cpp:
+ * ext/opencv/gstsegmentation.cpp:
+ * ext/opencv/gstsegmentation.h:
+ * ext/opencv/gstskindetect.cpp:
+ * ext/opencv/gsttemplatematch.cpp:
+ * ext/opencv/gsttextoverlay.h:
+ * ext/opencv/meson.build:
+ * gst-libs/gst/opencv/gstopencvutils.cpp:
+ * gst-libs/gst/opencv/gstopencvvideofilter.cpp:
+ * gst-libs/gst/opencv/meson.build:
+ opencv: make compatible with opencv 4
+ Closed #826
+
+2018-11-25 16:12:40 +0100 Nicola Murino <nicola.murino@gmail.com>
+
+ * ext/opencv/MotionCells.cpp:
+ * ext/opencv/camerautils.cpp:
+ * ext/opencv/gstcameracalibrate.cpp:
+ * ext/opencv/gstcameraundistort.cpp:
+ * ext/opencv/gstcvlaplace.cpp:
+ * ext/opencv/gstcvsmooth.cpp:
+ * ext/opencv/gstcvsobel.cpp:
+ * ext/opencv/gstdisparity.cpp:
+ * ext/opencv/gstedgedetect.cpp:
+ * ext/opencv/gstfaceblur.cpp:
+ * ext/opencv/gstgrabcut.cpp:
+ * ext/opencv/gsthanddetect.cpp:
+ * ext/opencv/gstretinex.cpp:
+ * ext/opencv/gstsegmentation.cpp:
+ * gst-libs/gst/opencv/gstopencvutils.cpp:
+ * gst-libs/gst/opencv/gstopencvvideofilter.cpp:
+ opencv: fix indentation
+
+2018-11-27 16:22:04 +0800 Wangfei <fei.w.wang@intel.com>
+
+ * configure.ac:
+ configure.ac: add gst-allocator check in msdk.
+ With out check gst-allocator, there will be a gst-allocator api
+ symbol link error when call for libgstmsdk.so.
+
+2018-11-21 08:43:56 -0600 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.h:
+ decklink: fixup internal time tracking over buffering pauses
+ Instead of relying on buffers after a state change to PLAYING to always start
+ from 0, track the amount of time we have spent outside playing but not changed
+ state to PAUSED.
+
+2018-11-26 16:53:52 +1100 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/elements/webrtcbin.c:
+ tests/webrtc: fix tests for no libnice
+ webrtcbin will fail the state change to READY when libnice elements are
+ not available.
+
+2018-11-26 16:50:17 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/gstwebrtcbin.h:
+ * ext/webrtc/utils.c:
+ * ext/webrtc/utils.h:
+ * ext/webrtc/webrtcdatachannel.c:
+ * ext/webrtc/webrtcsdp.c:
+ * ext/webrtc/webrtcsdp.h:
+ * tests/check/elements/webrtcbin.c:
+ tests/webrtc: use the existing functions in the plugin
+ Instead of redefining our own, use the function implementations in
+ webrtcsdp.c and utils.c
+
+2018-11-26 16:21:58 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: fix typo in RTCRemoteOutboundRTPStreamStats
+
+2018-11-26 16:21:19 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: add a few comments on bundle and src pad exposure
+
+2018-11-26 16:20:02 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: factor out dtls fingerprint setting
+
+2018-11-26 16:12:03 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: remove extra 'pad' from log line
+
+2018-11-26 16:07:57 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/transportstream.c:
+ * ext/webrtc/transportstream.h:
+ * ext/webrtc/webrtcsdp.c:
+ * ext/webrtc/webrtcsdp.h:
+ * ext/webrtc/webrtctransceiver.c:
+ * ext/webrtc/webrtctransceiver.h:
+ webrtc: move some functions to the appropriate files
+
+2018-11-26 11:26:52 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/meson.build:
+ meson: Fix Windows CUDA dependency check
+ Python returns 'None' string for unknown environment
+
+2018-11-22 17:18:18 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/nvenc/gstnvh265enc.c:
+ nvh265enc: Fix email address typo
+
+2018-11-22 16:14:12 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/nvenc/gstnvbaseenc.c:
+ nvenc: Fix undefined reference build error on MSVC and CUDA 9.1
+
+2018-11-22 14:01:28 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/nvenc/gstnvh264enc.c:
+ * sys/nvenc/gstnvh265enc.c:
+ nvenc: Fix MSVC build error C2121
+
+2018-11-22 12:14:44 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * configure.ac:
+ * meson_options.txt:
+ * sys/meson.build:
+ * sys/nvenc/Makefile.am:
+ * sys/nvenc/gstnvenc.c:
+ * sys/nvenc/gstnvenc.h:
+ * sys/nvenc/meson.build:
+ nvenc: Add meson build with Windows support
+ Note that, since Nvidia does not provide nvEncodeAPI.lib file,
+ find_library() couldn't be used for build on Windows.
+ This patch changes to load nvEncodeAPI(64).dll or libnvidia-encode.so
+ in runtime
+
+2018-11-19 22:40:50 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * meson_options.txt:
+ * sys/meson.build:
+ * sys/nvdec/meson.build:
+ nvdec: Add meson build with Windows support
+
+2018-11-22 00:22:25 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * configure.ac:
+ * sys/nvdec/Makefile.am:
+ * sys/nvdec/dynlink_cuda.c:
+ * sys/nvdec/dynlink_nvcuvid.c:
+ * sys/nvdec/gstnvdec.c:
+ * sys/nvdec/gstnvdec.h:
+ nvdec: Drop dynlink interface and use NVIDIA CODEC SDK instead
+ dynlink_* was introduced since CUDA Toolkit 9.x but it's deprecated from 10.0.
+ Instead of using #ifdef hack, shipping nvidia headers of NVIDA CODEC SDK
+ can make build/code simple
+
+2018-11-22 10:57:00 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/nvdec/cuviddec.h:
+ * sys/nvdec/nvcuvid.h:
+ * sys/nvenc/nvEncodeAPI.h:
+ nvdec/nvenc: Shipping NVIDA Codec SDK headers
+ Add cuvidec.h, nvcuvid.h and nvEncodeAPI.h of NVIDIA Codec SDK 8.2.16
+
+2018-11-15 21:52:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * configure.ac:
+ nvenc/nvdec: Add support CUDA Toolkit 10.0
+
+2018-11-25 17:33:04 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/examples/codecparsers/meson.build:
+ examples: codecparser: fix compiler warnings for unstable API use
+ Breaks build bots and build with --werror
+
+2018-10-08 23:47:51 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/examples/camerabin2/gst-camera2.c:
+ * tests/examples/uvch264/test-uvch264.c:
+ examples: force gtk to x11 backend
+ Until someone makes it work with the wayland backend.
+ The code currenty assumes and hard-codes X11.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/49
+
+2018-10-08 23:47:42 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * tests/examples/audiomixmatrix/meson.build:
+ * tests/examples/avsamplesink/meson.build:
+ * tests/examples/camerabin2/meson.build:
+ * tests/examples/codecparsers/meson.build:
+ * tests/examples/directfb/meson.build:
+ * tests/examples/meson.build:
+ * tests/examples/mxf/meson.build:
+ * tests/examples/uvch264/meson.build:
+ * tests/icles/meson.build:
+ * tests/meson.build:
+ meson: build more examples
+ See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/576
+
+2018-11-24 19:26:30 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * meson.build:
+ meson: Specify encoding to UTF-8 when building with MSVC
+ Use build arguments consistent with core and -base. This can also
+ remove noisy "C4819" warning of non-us locale MSVC.
+
+2018-11-23 17:05:51 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * sys/msdk/meson.build:
+ msdk: don't declare headers in meson
+ This partially reverts commit 0bae64835302574953c3e5e89fa0822eb4f6ca4b.
+ The compiler tells ninja the header dependency, then there is
+ no need to add them explicity.
+
+2018-11-23 13:41:57 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * sys/msdk/meson.build:
+ msdk: declare headers in meson
+
+2018-11-20 14:36:30 +0800 Wangfei <fei.w.wang@intel.com>
+
+ * sys/msdk/Makefile.am:
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkdec.h:
+ * sys/msdk/gstmsdkdecproputil.c:
+ * sys/msdk/gstmsdkdecproputil.h:
+ * sys/msdk/gstmsdkh264dec.c:
+ * sys/msdk/gstmsdkh264dec.h:
+ * sys/msdk/gstmsdkh265dec.c:
+ * sys/msdk/gstmsdkh265dec.h:
+ * sys/msdk/gstmsdkmpeg2dec.c:
+ * sys/msdk/gstmsdkmpeg2dec.h:
+ * sys/msdk/gstmsdkvc1dec.c:
+ * sys/msdk/gstmsdkvc1dec.h:
+ * sys/msdk/gstmsdkvp8dec.c:
+ * sys/msdk/gstmsdkvp8dec.h:
+ * sys/msdk/gstmsdkvp9dec.c:
+ * sys/msdk/gstmsdkvp9dec.h:
+ * sys/msdk/meson.build:
+ msdkdec: move output-order out of decode bass class.
+ Since output-order is a deprecated attribute, move it out of decode
+ bass class and configure it in each sub decoder class who need it.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796853
+
+2018-11-22 17:02:09 +0100 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * sys/msdk/meson.build:
+ msdk: add support for open sourced MediaSDK
+ MediaSDK has been released as open source [1], but the directories
+ where it installs its files, are different from the binary only
+ distribution.
+ This patch adds to the libraries path the directory /lib. Also it
+ is defined in meson if the include directory has the mfx/ prefix,
+ something that is already handled in autotools.
+ 1. https://github.com/Intel-Media-SDK/MediaSDK
+
+2018-11-22 18:47:13 +0530 Harshad Khedkar <harshad@koperadev.com>
+
+ * ext/webrtc/gstwebrtcice.c:
+ Webrtcbin : Need to use 'host' from gst_uri_get_host s libnice agent expects it
+ Currently master code of gst1-plugins-bad use plain-string host name while passing it to
+ libnice agent: nice_agent_set_relay_info() in gstwebrtcice.c while adding turn_server(_add_turn_server).
+ It is observered that if we don't convert the host parameter by using gst_uri_get_host, it fails in libnice agent(0.1.14-1).
+ Code does, actually, set the host correctly but while passing params to nice_agent_set_relay_info, it uses incorrect one.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/823
+
+2018-11-12 12:03:53 +0100 Lars Petter Endresen <lars.petter.endresen@gmail.com>
+
+ * gst/siren/common.c:
+ siren: Fix floating point invalid operation
+ Mix of single and double precision leads to zero-by-zero divide
+ for upper 64-bit of the xmm register, even though they are not
+ used.
+
+2018-11-14 14:55:37 -0800 Rosen Penev <rosenp@gmail.com>
+
+ * ext/dtls/gstdtlsagent.c:
+ * ext/dtls/gstdtlscertificate.c:
+ dtls: Fix compilation without deprecated APIs on OpenSSL 1.1.x
+
+2018-11-13 18:20:15 +0900 Justin Kim <jeongseok.kim@sk.com>
+
+ * ext/opencv/gstcameracalibrate.h:
+ cameracalibrate: Fix build error on Mac OSX
+ It fails to build only on Mac OSX with the following error.
+ In file included from ../subprojects/gst-plugins-bad/ext/opencv/gstopencv.cpp:45:
+ ../subprojects/gst-plugins-bad/ext/opencv/gstcameracalibrate.h:96:38: error: a space is required between consecutive right angle brackets (use '> >')
+ std::vector<std::vector<cv::Point2f>> imagePoints;
+ ^~
+ > >
+ 1 error generated.
+ Fix: #817
+
+2018-11-13 17:50:26 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/opensles/meson.build:
+ meson: Fix invalid keyword warning
+ "required" keyword is not a valid argument for has_header()
+ WARNING: Passed invalid keyword argument "required".
+ WARNING: This will become a hard error in the future.
+
+2018-11-13 10:02:57 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ decklinkvideosink: Cast result of bitwise-or of multiple enum values to the enum again
+ In C++ the bitwise-or results in an int, and ints are not implicitely
+ cast to enums.
+ See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/25#note_78122
+
+2018-11-13 09:55:56 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/d3dvideosink/d3dhelpers.c:
+ d3dvideosink: Remove unused variable
+ Fixes a compiler warning.
+
+2018-11-07 17:15:25 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.h:
+ decklinkvideosink: Add support for outputting closed captions
+
+2018-11-12 13:23:45 +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-12 21:23:37 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/soundtouch/meson.build:
+ * ext/webrtcdsp/meson.build:
+ * meson.build:
+ build: link against the gnustl dependency on android for c++ plugins
+
+2018-11-09 15:20:09 +0000 Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+ * sys/bluez/gstavdtputil.c:
+ * sys/bluez/gstavdtputil.h:
+ avdtputil: Remove dead code
+ These function are not used at all, using them together with the
+ transport-volume property from avdtpsrc may end up in a binding loop so
+ we better remove the functions.
+
+2018-11-09 15:16:46 +0000 Jochen Henneberg <jh@henneberg-systemdesign.com>
+
+ * sys/bluez/gstavdtpsrc.c:
+ * sys/bluez/gstavdtpsrc.h:
+ avdtpsrc: Fix transport-volume write
+ If properties are proxied through GBinding this can work only if the
+ proxied property keeps it's own value. The previous implementation will
+ read the original value if the proxied property signals a change and
+ thus nothing will happen.
+
+2018-10-18 14:49:50 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * tests/check/elements/srtp.c:
+ srtp: Add unit tests for MKI support
+ Both as a srtpenc ! srtpdec pipeline and as a test that uses
+ fake packets for multiple mixed MKIs.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797305
+
+2018-10-17 18:30:10 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/srtp/gstsrtpenc.c:
+ * ext/srtp/gstsrtpenc.h:
+ srtpenc: Add support for adding a MKI
+ https://bugzilla.gnome.org/show_bug.cgi?id=797305
+
+2018-10-15 18:23:35 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/srtp/gstsrtpdec.c:
+ srtpdec: Add support for MKI
+ Add support for MKIs which allow multiple keys to be used with a single SRTP stream.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797305
+
+2018-10-16 11:53:20 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/CMakeLists.txt:
+ * sys/dshowsrcwrapper/dshowdeviceprovider.cpp:
+ * sys/dshowsrcwrapper/dshowdeviceprovider.h:
+ * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp:
+ dshowsrcwrapper: add implementation of GstDeviceMonitor
+ Right now this only works for video. An attempt was made at adding
+ monitoring following the example winks, but it seems the only devices that
+ can be easily detected are KS sources, which winks already handles.
+
+2018-10-16 11:45:15 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshow.cpp:
+ * sys/dshowsrcwrapper/gstdshow.h:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.h:
+ dshowsrcwrapper: refactor device selection, filter creation, and caps retrieval
+ This allows a future GstDeviceProvider to more easily query devices and caps.
+
+2018-10-12 10:12:14 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ dshowsrcwrapper: add get_property implementation to sources
+
+2018-10-12 09:59:54 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshow.cpp:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ dshowvideosrc: handle empty strings for device and device-name
+ The device and device-name properties should treat NULL and empty strings the same
+
+2018-10-12 08:57:07 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ dshowvideosrc: delay selecting device until source is started
+ The previous behaviour had issues when setting one of the device properties
+ after _get_caps had been called. The device shouldn't be locked in until after
+ _start has been called.
+
+2018-10-12 08:49:06 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ dshowvideosrc: fix template caps to reflect actual supported caps
+
+2018-10-11 12:58:35 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshow.cpp:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ dshowsrcwrapper: add some helpful debug statements
+
+2018-10-15 12:49:55 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/winks/ksvideohelpers.c:
+ ksvideosrc: initialize pointer to satisfy MSVC
+
+2018-10-15 12:48:10 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/winks/ksvideohelpers.c:
+ ksvideosrc: support 'Y16 ' FOURCC as GRAY16_LE
+ The FLIR Boson USB provides 16-bit grayscale video using this FOURCC.
+
+2018-10-15 12:46:32 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/winks/gstksvideosrc.c:
+ ksvideosrc: gracefully handle device prop when empty string
+
+2018-11-08 08:15:41 +0000 Russel Winder <russel@winder.org.uk>
+
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+ * gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
+ * gst-libs/gst/mpegts/gstmpegtsdescriptor.h:
+ mpegts: Register a number of new boxed types to support auto generation of bindings.
+
+2018-11-07 17:24:35 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ decklinkvideosrc: Search from line 1 again if we didn't find closed captions at the same line as before
+
+2018-05-29 01:06:09 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst/mpegtsdemux/mpegtsbase.c:
+ * gst/mpegtsdemux/mpegtsbase.h:
+ * gst/mpegtsdemux/tsdemux.c:
+ tsdemux: implement preliminary support for the bitrate query
+ Return the size / total duration as a ballpark estimate.
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60
+
+2018-10-14 16:36:33 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/codecparsers/gsth265parser.c:
+ * gst-libs/gst/codecparsers/gsth265parser.h:
+ h265parser: Various update of vps parsing
+ * Add FIXME for future correction of HRDParames parsing.
+ Spec. defines that the number of HRDParames could be up to
+ "vps_num_layer_sets_minus1 + 1" (i.e., 1024).
+ * Add parsing vps_base_layer_{internal,available}_flag.
+ * Fix possible invalid vps_extension parsing.
+ Fixes #798
+
+2018-10-14 16:02:01 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * tests/check/libs/h265parser.c:
+ tests: h265parser: Add test parsing nonzero vps_max_layer_id in VPS
+
+2018-10-12 19:26:01 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/codecparsers/gsth265parser.c:
+ h265parser: Fix wrong maximum range check in gst_h265_parse_vps()
+ Fix validation of some syntax.
+ Fixes #798
+
+2018-10-29 21:51:14 +0200 Jordan Petridis <jordan@centricular.com>
+
+ * sys/msdk/meson.build:
+ meson: avoid unkown variables in the msdk tests
+
+2018-11-06 18:47:43 +0100 Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+
+ * ext/dtls/Makefile.am:
+ * ext/dtls/meson.build:
+ dtls: Link against winsock2 on Windows
+ Should fix the Windows build after
+ b1509b1047bb76c9b2d8b14e9cecd0da72fd8e65.
+
+2018-11-06 11:06:01 -0600 admin <brad.reitmeyer@livingasone.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ decklinkvideosink: fix segfault when audiosink is closed before videosink
+
+2018-11-06 16:50:29 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/dtls/gstdtlsconnection.c:
+ dtlsconnection: Print out errno info for syscall errors
+ As suggested in [the SSL_get_error manpage][1]. Upgrade the message to a
+ warning if the errno isn't 0 (success). The latter apparently means the
+ transport encountered an EOF (shutdown) without the shut down handshake
+ on the (D)TLS level. This happens quite often for otherwise normal DTLS
+ connections.
+ [1]: https://www.openssl.org/docs/man1.1.1/man3/SSL_get_error.html
+
+2018-03-29 13:33:10 +0200 Andreas Frisch <afrisch@make.tv>
+
+ * ext/dtls/gstdtlsagent.c:
+ * ext/dtls/gstdtlsconnection.c:
+ dtls: Properly display all errors/warnings from ERR queue
+ Print out all errors from the OpenSSL error queue instead of just
+ looking at the topmost error. Using the callback interface also removes
+ the need for formatting using a buffer on the stack.
+
+2018-11-05 12:37:21 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/dtls/gstdtlsconnection.c:
+ dtlsconnection: Replace if-else chain with switch
+ A more idiomatic construct for testing a bunch of integers.
+
+2018-11-05 12:31:38 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/dtls/gstdtlsconnection.c:
+ dtlsconnection: Clear error queue before SSL_do_handshake
+ As documented on [the SSL_get_error manpage][1] we need to empty the
+ error queue before making any call that we check with SSL_get_error.
+ [1]: https://www.openssl.org/docs/man1.1.1/man3/SSL_get_error.html
+
+2018-11-05 12:26:26 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/dtls/gstdtlsconnection.c:
+ dtlsconnection: Lower BIO error log level to DEBUG
+ Periodic SSL_ERROR_SYSCALL errors with errno == 0 seem to be normal
+ behavior for DTLS connections.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/677
+
+2018-11-06 17:08:35 +0100 Jan Alexander Steffens (heftig) <jsteffens@make.tv>
+
+ * ext/dtls/gstdtlsconnection.c:
+ dtlsconnection: Run gst-indent
+
+2018-11-05 17:00:20 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/Makefile.am:
+ * tests/check/elements/.gitignore:
+ * tests/check/elements/cccombiner.c:
+ * tests/check/meson.build:
+ cccombiner: Add unit test
+
+2018-11-05 16:24:58 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/Makefile.am:
+ * ext/closedcaption/gstcccombiner.c:
+ * ext/closedcaption/gstcccombiner.h:
+ * ext/closedcaption/gstclosedcaption.c:
+ * ext/closedcaption/meson.build:
+ cccombiner: Add new closed caption combiner element
+ This is the inverse of ccextractor: it takes a video and closed caption
+ stream and places the closed caption metas on the video output buffers.
+
+2018-11-05 17:07:32 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstccextractor.c:
+ ccextractor: Handle multiple caption metas per buffer
+
+2018-11-06 12:40:12 +0100 Florent Thiéry <florent.thiery@ubicast.eu>
+
+ * sys/msdk/meson.build:
+ msdk: fix intel sdk libdir path
+ the 2018.3.1 intel sdk release places libraries into /lib64 instead of
+ /lib/lin_x64 or /lib/x64, this commit adds /lib64 to the libdir
+ locations list
+ Fixes #815
+
+2018-11-06 20:14:32 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/d3dvideosink/d3dhelpers.c:
+ d3dvideosink: Fix calculating buffer size of packed format
+ The Pitch (i.e., stride) of D3DLOCKED_RECT structure is already
+ respecting required stride value.
+
+2018-11-04 22:41:50 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/d3dvideosink/d3dhelpers.c:
+ d3dvideosink: Set actual buffer size to buffer pool
+ If configured size of buffer pool and actual buffer size are mismatched,
+ pool will do unwanted buffer resize.
+ Fixes #801
+
+2018-11-03 20:52:20 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/d3dvideosink/d3dhelpers.c:
+ d3dvideosink: Use lock/cond to wait internal window construction
+ We can save one (or possibly more) sleep time by using lock/cond
+
+2018-11-03 20:20:50 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/d3dvideosink/d3dhelpers.c:
+ * sys/d3dvideosink/d3dvideosink.h:
+ d3dvideosink: Don't leak GThread object
+ Need to call g_thread_join() to avoid leak
+
+2018-10-30 22:49:01 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/d3dvideosink/d3dvideosink.h:
+ d3dvideosink: Print lock/unlock log with trace debug level
+
+2018-11-06 19:36:12 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/d3dvideosink/d3dhelpers.c:
+ d3dvideosink: Remove white space
+
+2018-11-02 15:53:56 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/codecparsers/gsth265parser.c:
+ h265parser: Stop considering 6 bytes NAL complete
+ This is only TRUE for EOS / EOB NALs. Before this patch, passing
+ any valid 6 bytes of a NAL would make the parser pretend this NAL is
+ complete.
+
+2018-11-02 15:50:15 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * tests/check/libs/h265parser.c:
+ h265parser: Add same parsing test as for H264
+ This adds the same test as found in H264 test.
+
+2018-11-02 13:59:58 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * tests/check/libs/h264parser.c:
+ h264parser: Add unit test parsing 5 valid bytes of a NAL
+ In the case 5 valid bytes of a slice NAL, the parser should return
+ NO_NAL_END.
+
+2018-11-02 14:18:54 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/codecparsers/gsth264parser.c:
+ h264parser: Stop considering 5 bytes NAL complete
+ This is only TRUE for SEQ_END / STREAM_END. Before this patch, passing
+ any valid 5 bytes of a NAL would make the parser pretend this NAL is
+ complete.
+
+2018-11-06 14:35:20 +1100 Matthew Waters <matthew@centricular.com>
+
+ * sys/applemedia/meson.build:
+ applemedia: install plugin pkg-config file
+
+2018-11-05 15:21:35 +0000 Russel Winder <russel@winder.org.uk>
+
+ * gst-libs/gst/mpegts/gst-atsc-section.h:
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+ * gst-libs/gst/mpegts/gst-dvb-section.c:
+ * gst-libs/gst/mpegts/gst-dvb-section.h:
+ * gst-libs/gst/mpegts/gst-scte-section.h:
+ * gst-libs/gst/mpegts/gstmpegtsdescriptor.h:
+ * gst-libs/gst/mpegts/gstmpegtssection.h:
+ mpegts: remove insignificant trailing whitespace from lines of files in the MPEG-TS library.
+
+2018-08-16 11:30:08 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/decklink/gstdecklink.cpp:
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ decklinkvideosrc: respect pixel format property even if mode is set to auto
+ Before this patch, if mode=auto and video-format!=auto, video-format would
+ always be ignored, and get set to 8bit-yuv, or if detected to be RGB444, then
+ it would be set to 8bit-argb. This change respects video-format if it is set
+ to 10bit-yuv (v210) or 8bit-bgra, even when mode=auto.
+ Closes #772
+
+2018-11-05 05:39:12 +0000 Matthew Waters <matthew@centricular.com>
+
+ * .gitmodules:
+ Update common submodule location
+ Remove the git directory
+
+2018-11-05 12:46:29 +0800 Haihao Xiang <haihao.xiang@intel.com>
+
+ * .gitmodules:
+ * gst-plugins-bad.doap:
+ Clone the code from gitlab
+ This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/814
+
+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-02 20:31:11 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ docs: update for git master
+
+2018-11-02 20:16:56 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/webrtc/meson.build:
+ webrtc: update default libnice options
+ Uses feature options now.
+
+2018-11-02 12:21:45 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/Makefile.am:
+ * tests/check/elements/.gitignore:
+ * tests/check/elements/ccextractor.c:
+ * tests/check/meson.build:
+ ccextractor: Add unit test
+ https://bugzilla.gnome.org/show_bug.cgi?id=797370
+
+2018-11-02 12:21:24 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstccextractor.c:
+ ccextractor: Support changes of the caption type
+ https://bugzilla.gnome.org/show_bug.cgi?id=797370
+
+2018-11-01 17:59:17 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ decklinkvideosrc: Add support for extracing CEA608 according to S334-1 Annex A
+ https://bugzilla.gnome.org/show_bug.cgi?id=797363
+
+2018-10-31 18:44:34 +0000 Russel Winder <russel@winder.org.uk>
+
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+ mpegts: Register a boxed type for GstMpegtsContent
+
+2018-06-25 19:37:56 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: don't change uri when setting subtitle uri
+ https://bugzilla.gnome.org/show_bug.cgi?id=797362
+
+2018-11-01 10:44:44 +0000 Philippe Normand <philn@igalia.com>
+
+ * docs/libs/gst-plugins-bad-libs-sections.txt:
+ docs: Follow-up fix for GstPlayer new subtitle-video-offset API
+ These symbols were not renamed after the initial review in Bugzilla.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797134
+
+2018-10-28 14:48:35 +0000 Philippe Normand <philn@igalia.com>
+
+ * docs/libs/gst-plugins-bad-libs-sections.txt:
+ * gst-libs/gst/player/gstplayer.c:
+ * gst-libs/gst/player/gstplayer.h:
+ player: API additions for subtitle-video-offset property
+ This new property contols the synchronisation offset between subtitles and video
+ in nanoseconds.
+ 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-30 10:05:03 +0100 Johan Bjäreholt <johanbj@axis.com>
+
+ * gst/compositor/compositororc-dist.h:
+ compositor: fix undeclared functions
+
+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-28 14:54:52 +0000 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson_options.txt:
+ * sys/msdk/meson.build:
+ meson: Add a feature option for the MSDK plugin
+
+2018-10-28 11:53:42 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/curl/meson.build:
+ * meson_options.txt:
+ meson: add 'curl-ssh2' option for curl libssh2 support
+ https://bugzilla.gnome.org/show_bug.cgi?id=797346
+
+2018-10-28 06:47:38 -0400 Xavier Claessens <xavier.claessens@collabora.com>
+
+ * ext/curl/meson.build:
+ meson: Use the 'curl' feature option
+ https://bugzilla.gnome.org/show_bug.cgi?id=797346
+
+2018-10-28 11:07:47 +0000 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/mpegts/meson.build:
+ mpegts: Use gst and gst_mpegts as symbol prefix in the meson build
+ Just like we do in the autotools build.
+
+2018-10-11 12:45:21 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshow.cpp:
+ * sys/dshowsrcwrapper/gstdshow.h:
+ * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp:
+ * sys/dshowsrcwrapper/gstdshowaudiosrc.h:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.cpp:
+ * sys/dshowsrcwrapper/gstdshowvideosrc.h:
+ dshowsrcwrapper: add device-index property to sources
+ This allows users to more easily select different devices without having
+ to first get the device or device-name.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797338
+
+2018-10-24 14:16:38 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/BUILD.txt:
+ dshowsrcwrapper: update CMake build instructions
+ GStreamer 1.8 is minimum version, and remove paragraph about 32 vs 64-bit build
+ https://bugzilla.gnome.org/show_bug.cgi?id=797338
+
+2018-10-24 14:15:08 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/CMakeLists.txt:
+ dshowsrcwrapper: support building 32- and 64-bit with CMake
+ https://bugzilla.gnome.org/show_bug.cgi?id=797338
+
+2018-10-11 11:17:11 -0400 Joshua M. Doe <oss@nvl.army.mil>
+
+ * sys/dshowsrcwrapper/gstdshow.cpp:
+ * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp:
+ dshowsrcwrapper: add debug category for general dshowsrcwrapper
+ https://bugzilla.gnome.org/show_bug.cgi?id=797338
+
+2018-10-27 17:55:54 +0200 Edward Hervey <edward@centricular.com>
+
+ * tests/check/Makefile.am:
+ * tests/check/meson.build:
+ check: Disable mssdemux unit test for now
+ This is for the same reason as the dash tests. This should ideally
+ be converted to gst-validate tests. These tests randomly timeout also
+ due to the tests doing seeks from the streaming thread (sic).
+
+2018-10-27 13:57:45 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.h:
+ mpegts: Add boxed type for DVB CableDeliverySystem descriptor
+
+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-10-27 13:37:38 +0200 Edward Hervey <edward@centricular.com>
+
+ * tests/check/libs/player.c:
+ tests: Disable most gstplayer tests for now
+ https://bugzilla.gnome.org/show_bug.cgi?id=787374
+
+2018-10-26 15:15:41 +0100 Luis de Bethencourt <luisbg@amazon.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: options is a placeholder argument
+ Make it clear this unused argument is there for planned future use.
+
+2018-10-26 14:36:37 +0100 Luis de Bethencourt <luisbg@amazon.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: ws-semantic is not supported
+ Don't offer something that isn't supported.
+
+2018-10-24 14:34:13 +0100 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: Don't set state to READY if we're already stopped
+ Otherwise setting an URI after creation will already set the state
+ to READY/buffering and disallow setting the configuration.
+ See https://github.com/servo/servo/issues/22010
+
+2018-10-22 09:59:24 +0200 Edward Hervey <edward@centricular.com>
+
+ * ext/hls/gsthlsdemux-util.c:
+ hls: Remove stray '\n' from debug statement
+
+2018-10-17 18:33:12 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/srtp/gstsrtpdec.c:
+ Revert "srtpdec: also check for "roc" in caps"
+ This reverts commit 73ebdb888e047b14ceea19ce1a0bbbeff0cd7b2a.
+ This isn't needed and it breaks srtpenc ! srtpdec, specifying the
+ roll-over counter manually is an advanced feature.
+ Also revert "srtp: Add "roc" caps field to the gst-launch example"
+ This reverts commit 67ae35813bff9362065bbfec770f3fdbb89165a3.
+ https://bugzilla.gnome.org/show_bug.cgi?id=765079
+
+2018-10-17 21:09:22 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/bayer/meson.build:
+ * gst/compositor/meson.build:
+ * gst/fieldanalysis/meson.build:
+ * gst/gaudieffects/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-17 21:04:51 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/sctp/meson.build:
+ sctp: link against ws2_32 on windows
+ ext/sctp/ext@sctp@@gstsctp@sha/sctpassociation.c.obj: In function `receive_cb':
+ /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/sources/windows_x86/gst-plugins-bad-1.0-1.15.0.1/_builddir/../ext/sctp/sctpassociation.c:692: undefined reference to `_imp__ntohl@4'
+
+2018-09-14 00:08:34 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/gstwebrtcbin.h:
+ * ext/webrtc/transportstream.c:
+ * ext/webrtc/transportstream.h:
+ * ext/webrtc/webrtcsdp.c:
+ * gst-libs/gst/webrtc/webrtc_fwd.h:
+ * tests/check/elements/webrtcbin.c:
+ webrtcbin: implement support for group: BUNDLE
+
+2018-10-07 16:19:03 +0900 Wonchul Lee <chul0812@gmail.com>
+
+ * ext/aom/gstav1enc.c:
+ * ext/aom/gstav1utils.c:
+ * ext/aom/gstav1utils.h:
+ av1enc: Add to configure image formats
+ Expanded to support image format to YV12/I422/I444. It's related to the
+ color bit-depth and profile of the codec. It can make configuring
+ appropriate profile according to bit-depth and format.
+ https://bugzilla.gnome.org/show_bug.cgi?id=791674
+
+2018-10-03 17:13:32 +0900 Wonchul Lee <chul0812@gmail.com>
+
+ * ext/aom/gstav1enc.c:
+ av1enc: fix compliation with removed defines
+ AOM_FRAME_IS_INVISIBLE is unused and remove in aom_encoder.h
+ https://aomedia-review.googlesource.com/c/aom/+/70421
+ https://bugzilla.gnome.org/show_bug.cgi?id=791674
+
+2018-07-30 23:31:00 +0900 Wonchul Lee <chul0812@gmail.com>
+
+ * ext/aom/Makefile.am:
+ * ext/aom/gstav1enc.c:
+ * ext/aom/gstav1enc.h:
+ * ext/aom/gstav1utils.c:
+ * ext/aom/gstav1utils.h:
+ * ext/aom/meson.build:
+ av1enc: Add configurations
+ Added rate control and profile related configuration. The profile
+ configuration has been copied from vpx.
+ https://bugzilla.gnome.org/show_bug.cgi?id=791674
+
+2018-10-09 16:59:54 +0200 Josep Torra <n770galaxy@gmail.com>
+
+ * sys/shm/gstshmsrc.c:
+ shmsrc: delay fd removal until there's no uses
+ This fixes the remaining race condition with the fd by delaying
+ the removal until last pipe ref.
+ Unexpected critical/warning: gst_poll_fd_has_error: assertion 'fd->fd
+ >= 0' failed
+ Stack trace:
+ gst_debug_get_stack_trace (gstinfo.c:2788)
+ gst_check_log_critical_func (gstcheck.c:281)
+ g_logv (/lib/x86_64-linux-gnu/libglib-2.0.so.0.4800.2:0x7fdd4efa0a40)
+ g_log (/lib/x86_64-linux-gnu/libglib-2.0.so.0.4800.2:0x7fdd4efa0c6b)
+ gst_poll_fd_has_error (gstpoll.c:1217)
+ gst_shm_src_create (gstshmsrc.c:364)
+ gst_push_src_create (gstpushsrc.c:131)
+ gst_base_src_get_range (gstbasesrc.c:2521)
+ gst_base_src_loop (gstbasesrc.c:2845)
+ gst_task_func (gsttask.c:328)
+ default_func (gsttaskpool.c:69)
+ https://bugzilla.gnome.org/show_bug.cgi?id=797203
+
+2018-09-28 13:35:49 +0200 Josep Torra <n770galaxy@gmail.com>
+
+ * sys/shm/gstshmsrc.c:
+ shmsrc: fixes a crash when is-live is true due a race condition
+ There's a race condition when is-live is set to true and the shmsrc
+ element releases the pipe in the transition from PLAYING to PAUSED.
+ To avoid it this change ensures that _create method takes the pipe
+ and increases the use_count in one operation protected by object lock.
+ Also perform apropriate protections when releasing the pipe.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797203
+
+2018-09-28 13:23:38 +0200 Josep Torra <n770galaxy@gmail.com>
+
+ * tests/check/elements/shm.c:
+ tests: shm: add an end to end test for live reception
+ Add a unit test to exchange data between two pipelines with shmsrc
+ acting as a live source.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797203
+
+2018-10-10 13:07:50 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * sys/shm/gstshmsrc.c:
+ shmsrc: Remove commented out code
+
+2018-10-08 13:56:56 -0700 Aleix Conchillo Flaqué <aleix@oblong.com>
+
+ * sys/shm/gstshmsink.c:
+ shmsink: do not keep locking if element is unlocked
+ https://bugzilla.gnome.org/show_bug.cgi?id=797260
+
+2018-10-08 20:53:17 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ meson: use new 'python' module instead of deprecated 'python3' one
+ https://github.com/mesonbuild/meson/pull/4169
+
+2018-10-09 02:38:14 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/webrtcdatachannel.c:
+ * tests/check/elements/webrtcbin.c:
+ webrtc/datachannel: fix support for prenegotiated channels
+ With prenegotiated channels, the data-channel protocol is not used and
+ instead the channel's negotiation is intended to be performed out of band in
+ some application-specific manner.
+ Comes with test!
+
+2018-10-08 21:56:31 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ * tests/check/elements/webrtcbin.c:
+ webrtc: start in the closed state
+ This means that we will reject all operations before we've transitioned
+ into READY.
+ This also fixes the tests using the default GMainContext in the NULL
+ state instead of the webrtcbin internal GMainContext and thread. Also
+ removes a potential ordering race where on the element transitioning to
+ READY, an operations could have been queued on two different threads and
+ removing a guarentee on operation ordering.
+
+2018-10-05 12:10:06 -0700 Aleix Conchillo Flaqué <aleix@oblong.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: start and stop thread when changing state
+ It might be possible that if we set webrtcbin to the NULL state some
+ tasks (idle sources) are still executed and they might even freeze. The freeze
+ is caused because the webrtcbin tasks don't hold a reference to webrtcbin and
+ if it's last unref inside the idle source itself this will not allow the main
+ loop to finish because the main loop is waiting on the idle source to finish.
+ We now start and stop webrtcbin thread when changing states. This will allow
+ the idle sources to finish properly.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797251
+
+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-04 12:07:31 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/timecode/gstavwait.c:
+ avwait: Fix sending of dropping=true messages
+ If the first audio buffer to be dropped started right between two video
+ buffers (after the end of the first but before the start of the second,
+ as is often the case with N/1001 video frame rates), we would miss
+ sending the dropping=true message.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797248
+
+2018-10-04 16:29:25 +1000 Matthew Waters <matthew@centricular.com>
+
+ * tests/check/elements/webrtcbin.c:
+ tests/webrtcbin: add a couple more dependant element checks
+ Without the sctp elements, all the data channel tests will fail
+
+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-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-09-27 15:24:20 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdksystemmemory.c:
+ * sys/msdk/gstmsdkvideomemory.c:
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: Fix building on MSVC
+ And add missing #ifdef _WIN32 for MSVC build
+ https://bugzilla.gnome.org/show_bug.cgi?id=797211
+
+2018-09-27 14:42:44 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/msdk/meson.build:
+ msdk: Fix meson build
+ gst-plugins-bad\sys\msdk\meson.build:57:4: ERROR: File msdk-enum.c does not exist.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797211
+
+2018-09-27 17:15:20 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/mpegtsmux/tsmux/tsmuxstream.c:
+ mpegtsmux: add custom AC-3 descriptor
+ tsdemux expects a custom descriptor (GST_MTS_DESC_AC3_AUDIO_STREAM)
+ to detect a stream as AC3 and not EAC3.
+ Note that tsdemux expects this descriptor because mpegtsmux writes
+ a stream with a HDMV registration descriptor.
+ Fixes:
+ gst-launch-1.0 -v audiotestsrc ! avenc_ac3 ! ac3parse ! mpegtsmux ! \
+ tsdemux ! ac3parse ! avdec_ac3 ! audioconvert ! autoaudiosink
+ https://bugzilla.gnome.org/show_bug.cgi?id=797220
+
+2018-09-26 16:00:50 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/webrtcdatachannel.c:
+ webrtcdatachannel: take ref of data so it doesn't disappear
+
+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 14:40:31 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/player/gstplayer-media-info.h:
+ * gst-libs/gst/player/player-prelude.h:
+ player: fix deprecated api declaration
+
+2018-09-24 11:52:22 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * common:
+ * configure.ac:
+ * gst-libs/gst/adaptivedemux/Makefile.am:
+ * gst-libs/gst/adaptivedemux/adaptive-demux-prelude.h:
+ * gst-libs/gst/adaptivedemux/meson.build:
+ * gst-libs/gst/audio/Makefile.am:
+ * gst-libs/gst/audio/audio-bad-prelude.h:
+ * gst-libs/gst/audio/gstplanaraudioadapter.c:
+ * gst-libs/gst/audio/meson.build:
+ * gst-libs/gst/basecamerabinsrc/Makefile.am:
+ * gst-libs/gst/basecamerabinsrc/basecamerabinsrc-prelude.h:
+ * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.c:
+ * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c:
+ * gst-libs/gst/basecamerabinsrc/meson.build:
+ * gst-libs/gst/codecparsers/Makefile.am:
+ * gst-libs/gst/codecparsers/codecparsers-prelude.h:
+ * gst-libs/gst/codecparsers/dboolhuff.c:
+ * gst-libs/gst/codecparsers/gstjpeg2000sampling.c:
+ * gst-libs/gst/codecparsers/gstjpegparser.c:
+ * gst-libs/gst/codecparsers/gstvp8rangedecoder.c:
+ * gst-libs/gst/codecparsers/meson.build:
+ * gst-libs/gst/codecparsers/parserutils.c:
+ * gst-libs/gst/codecparsers/vp8utils.c:
+ * gst-libs/gst/insertbin/Makefile.am:
+ * gst-libs/gst/insertbin/gstinsertbin.h:
+ * gst-libs/gst/insertbin/meson.build:
+ * gst-libs/gst/interfaces/Makefile.am:
+ * gst-libs/gst/interfaces/meson.build:
+ * gst-libs/gst/interfaces/photography-prelude.h:
+ * gst-libs/gst/isoff/Makefile.am:
+ * gst-libs/gst/isoff/gstisoff.c:
+ * gst-libs/gst/isoff/gstisoff.h:
+ * gst-libs/gst/isoff/meson.build:
+ * gst-libs/gst/mpegts/Makefile.am:
+ * gst-libs/gst/mpegts/gst-atsc-section.c:
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+ * gst-libs/gst/mpegts/gst-dvb-section.c:
+ * gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
+ * gst-libs/gst/mpegts/gstmpegtssection.c:
+ * gst-libs/gst/mpegts/meson.build:
+ * gst-libs/gst/mpegts/mpegts-prelude.h:
+ * gst-libs/gst/opencv/Makefile.am:
+ * gst-libs/gst/opencv/meson.build:
+ * gst-libs/gst/opencv/opencv-prelude.h:
+ * gst-libs/gst/player/Makefile.am:
+ * gst-libs/gst/player/meson.build:
+ * gst-libs/gst/player/player-prelude.h:
+ * gst-libs/gst/sctp/Makefile.am:
+ * gst-libs/gst/sctp/meson.build:
+ * gst-libs/gst/sctp/sctp-prelude.h:
+ * gst-libs/gst/sctp/sctpreceivemeta.c:
+ * gst-libs/gst/sctp/sctpsendmeta.c:
+ * gst-libs/gst/uridownloader/Makefile.am:
+ * gst-libs/gst/uridownloader/gstfragment.c:
+ * gst-libs/gst/uridownloader/gsturidownloader.c:
+ * gst-libs/gst/uridownloader/meson.build:
+ * gst-libs/gst/uridownloader/uridownloader-prelude.h:
+ * gst-libs/gst/video/Makefile.am:
+ * gst-libs/gst/video/meson.build:
+ * gst-libs/gst/video/video-bad-prelude.h:
+ * gst-libs/gst/wayland/Makefile.am:
+ * gst-libs/gst/wayland/meson.build:
+ * gst-libs/gst/wayland/wayland.h:
+ * gst-libs/gst/webrtc/Makefile.am:
+ * gst-libs/gst/webrtc/meson.build:
+ * gst-libs/gst/webrtc/webrtc_fwd.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-24 10:59:16 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ * docs/plugins/gst-plugins-bad-plugins.hierarchy:
+ * docs/plugins/gst-plugins-bad-plugins.signals:
+ * docs/plugins/inspect/plugin-assrender.xml:
+ * docs/plugins/inspect/plugin-debugutilsbad.xml:
+ * docs/plugins/inspect/plugin-dvb.xml:
+ * docs/plugins/inspect/plugin-dvbsuboverlay.xml:
+ * docs/plugins/inspect/plugin-inter.xml:
+ * docs/plugins/inspect/plugin-opencv.xml:
+ * docs/plugins/inspect/plugin-openglmixers.xml:
+ * docs/plugins/inspect/plugin-resindvd.xml:
+ * docs/plugins/inspect/plugin-sndfile.xml:
+ * docs/plugins/inspect/plugin-ttmlsubs.xml:
+ * docs/plugins/inspect/plugin-uvch264.xml:
+ docs: plugins: update for git master
+
+2018-09-22 19:49:13 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * pkgconfig/Makefile.am:
+ * pkgconfig/meson.build:
+ pkgconfig: generate sctp lib .pc file also with Meson build
+ and fix up autotools definition now that it's not conditional
+ any more.
+
+2018-09-22 17:37:42 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * pkgconfig/Makefile.am:
+ pkgconfig: sctp lib does not depend on external sctp library
+ So install .pc files unconditionally.
+
+2018-09-21 15:04:01 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/Makefile.am:
+ libs: dist new sctp lib
+
+2018-09-14 16:05:20 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/timecode/gstavwait.c:
+ * gst/timecode/gstavwait.h:
+ avwait: Send dropping=true message after all streams stopped
+ Previously it was dispatched before the last video buffer, and audio
+ buffers would follow afterwards. It's misleading to send the
+ dropping=true message before both streams have really stopped, it can
+ lead to races when someone is e.g. waiting for that message to send EOS.
+ Also added some debug output.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797145
+
+2018-09-21 14:56:52 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/Makefile.am:
+ gst-libs: Always build sctp mini-library
+ It doesn't depend on any external library
+
+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-10 23:52:05 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/Makefile.am:
+ * ext/webrtc/fwd.h:
+ * ext/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/gstwebrtcbin.h:
+ * ext/webrtc/meson.build:
+ * ext/webrtc/sctptransport.c:
+ * ext/webrtc/sctptransport.h:
+ * ext/webrtc/transportreceivebin.c:
+ * ext/webrtc/transportsendbin.c:
+ * ext/webrtc/webrtcdatachannel.c:
+ * ext/webrtc/webrtcdatachannel.h:
+ * ext/webrtc/webrtcsdp.c:
+ * ext/webrtc/webrtcsdp.h:
+ * gst-libs/gst/webrtc/webrtc_fwd.h:
+ * tests/check/elements/webrtcbin.c:
+ webrtcbin: add support for data channels based on SCTP
+ Mostly follows the W3C specification
+ https://www.w3.org/TR/webrtc/#peer-to-peer-data-api
+ With contributions from:
+ Mathieu Duponchelle <mathieu@centricular.com>
+ https://bugzilla.gnome.org/show_bug.cgi?id=794351
+
+2018-09-10 23:30:56 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: functionify dependent element checks
+
+2018-09-10 23:27:08 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/gstwebrtcstats.c:
+ webrtc/stats: rename debug category not to be ice related
+
+2018-09-13 19:56:47 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/sctp/gstsctpdec.c:
+ * ext/sctp/gstsctpenc.c:
+ sctp elements: avoid assertions on shutdown
+
+2018-09-10 23:25:36 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst-libs/gst/sctp/sctpreceivemeta.h:
+ * gst-libs/gst/sctp/sctpsendmeta.h:
+ sctp*meta: fix api define in gst_sctp_buffer_get_*_meta()
+
+2018-09-10 23:24:21 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/sctp/sctpassociation.c:
+ sctpassociation: don't join a NULL thread
+ Can occur if no connection is actually made and thus no connection
+ thread is created.
+
+2018-09-10 23:23:43 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/sctp/gstsctpenc.c:
+ sctpenc: don't require caps when requesting the pad
+ They can be set later
+
+2018-09-10 23:21:52 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/sctp/gstsctpenc.c:
+ sctpenc: start pad task after the parent has activated pads
+ Fixes a race where the task could attempt to set
+ stream-start/caps/segment before the pad was active and would be
+ dropped resulting in a 'data-flow before stream-start' warning.
+
+2018-09-06 17:27:27 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/meson.build:
+ * ext/sctp/meson.build:
+ * gst-libs/gst/meson.build:
+ * gst-libs/gst/sctp/Makefile.am:
+ * gst-libs/gst/sctp/meson.build:
+ * gst-libs/gst/sctp/sctp-prelude.h:
+ * gst-libs/gst/sctp/sctpreceivemeta.h:
+ * gst-libs/gst/sctp/sctpsendmeta.h:
+ * meson_options.txt:
+ Update sctp plugin for the current build system
+ - Add meson build definitions
+ - Add necessary API decorators
+
+2015-02-04 17:12:48 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+ * configure.ac:
+ * ext/Makefile.am:
+ * ext/sctp/Makefile.am:
+ * ext/sctp/gstsctpdec.c:
+ * ext/sctp/gstsctpdec.h:
+ * ext/sctp/gstsctpenc.c:
+ * ext/sctp/gstsctpenc.h:
+ * ext/sctp/gstsctpplugin.c:
+ * ext/sctp/sctpassociation.c:
+ * ext/sctp/sctpassociation.h:
+ * gst-libs/gst/Makefile.am:
+ * gst-libs/gst/sctp/Makefile.am:
+ * gst-libs/gst/sctp/sctpreceivemeta.c:
+ * gst-libs/gst/sctp/sctpreceivemeta.h:
+ * gst-libs/gst/sctp/sctpsendmeta.c:
+ * gst-libs/gst/sctp/sctpsendmeta.h:
+ * pkgconfig/Makefile.am:
+ * pkgconfig/gstreamer-sctp-uninstalled.pc.in:
+ * pkgconfig/gstreamer-sctp.pc.in:
+ Add new SCTP plugins (sctpenc/sctpdec)
+ https://bugzilla.gnome.org/show_bug.cgi?id=744863
+
+2018-08-28 18:48:48 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/webrtc/gstwebrtcice.c:
+ webrtcice: do not run host resolution from applictation thread
+ g_resolver_lookup_by_name is a blocking call, and should not
+ be run when the user sets or adds a turn-server.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797012
+
+2018-08-22 19:05:02 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/gstwebrtcice.c:
+ * ext/webrtc/gstwebrtcice.h:
+ webrtcbin: New add-turn-server API
+ It is possible and often desirable to pass multiple ICE relays
+ to libnice agents, the "turn-server" property, while convenient
+ to use from the command line, does not allow that.
+ This adds a new action signal, "add-turn-server" to address that.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797012
+
+2018-09-19 12:02:19 +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 12:01:47 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson_options.txt:
+ meson: fix missing closing bracket in option descriptions
+
+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-06 20:23:55 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstccextractor.c:
+ ccextractor: Use gst_caps_new_simple() instead of gst_caps_from_string()
+
+2018-09-12 22:38:56 +1000 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ decklinkvideosink: fix build
+ ../sys/decklink/gstdecklinkvideosink.cpp:1006:11: error: ‘GstDecklinkVideoSink {aka struct _GstDecklinkVideoSink}’ has no member named ‘scheduled_stop_time’
+ self->scheduled_stop_time = start_time;
+ ^
+
+2018-09-12 05:29:09 -0500 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ decklink: wait for stop with a timeout
+ Decklink sometimes does not notify us through the callback that it has
+ stopped scheduled playback either because it was uncleanly shutdown
+ without an explicit stop or for unknown other reasons.
+ Wait on the cond for a short amount of time before checking if scheduled
+ playback has stopped without notification.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797130
+
+2018-07-08 09:54:04 -0500 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkaudiosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.h:
+ decklink: start scheduled playback in paused
+ This is part of a much larger goal to always keep the frames we schedule to
+ decklink be always increasing. This also allows us to avoid using both the
+ sync and async frame display functions which aren't recomended to be used
+ together.
+ If the output timestatmsp is not always increasing decklink seems to hold
+ onto the latest frame and may cause a flash in the output if the played
+ sequence has a framerate less than the video output.
+ Scenario is play for N seconds, pause, flushing seek to some other position,
+ play again. Each of the play sequences would normally start at 0 with
+ the decklink time. As a result, the latest frame from the previous sequence
+ is kept alive waiting for it's timestamp to pass before either dropping
+ (if a subsequent frame in the new sequence overrides it) or displayed
+ causing the out of place frame to be displayed.
+ This is also supported by the debug logs from the decklink video sink
+ element where a ScheduledFrameCompleted() callback would not occur for
+ the frame until the above had happened.
+ It was timing related as to whether the frame was displayed based
+ on the decklink refresh cycle (which seems to be 16ms here),
+ when the frame was scheduled by the sink and the difference between
+ the 'time since vblank' of the two play requests (and thus start times
+ of scheduled playback).
+ https://bugzilla.gnome.org/show_bug.cgi?id=797130
+
+2018-09-12 05:32:04 -0500 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkaudiosink.cpp:
+ decklinkaudiosink: fix debug string copy-paste error
+ Stopping != Starting
+
+2018-08-13 22:44:51 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Fix periodic SPS/PPS sending work after a seek
+ Apply the commit ef71b61
+ See also https://bugzilla.gnome.org/show_bug.cgi?id=742212
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-13 20:34:36 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ * gst/videoparsers/gsth265parse.h:
+ h265parse: Add support insert parameter set per IDR
+ Apply commits 0c04e00, bf0d952 and a0876aa to h265parse.
+ See also https://bugzilla.gnome.org/show_bug.cgi?id=766803
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-14 00:46:26 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Don't discard first AU delimiter
+ Apply the commit 48a1f27
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-14 00:43:01 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Consider SEI NALU as "HEADER" packets
+ Apply the commit 69c09c3
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-13 22:45:54 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Don't unref buffer that was unreffed just a few lines before already
+ Apply the commit 9b50a12
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-14 01:11:27 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Reset the parser information when caps changes
+ Apply the commit 14f6fcd
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-13 23:45:13 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Fix collection of access units to preserve config headers
+ Apply the commit 7d44a51
+ See also https://bugzilla.gnome.org/show_bug.cgi?id=732203
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-13 23:36:33 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Improve conditions for skipping NAL units
+ See also https://bugzilla.gnome.org/show_bug.cgi?id=732203
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-13 22:23:22 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ * gst/videoparsers/gsth265parse.h:
+ h265parse: Introduce new state tracking variables
+ Direct applying the commit 7bb6443. This could fix also unexpected
+ nal dropping when nonzero "config-interval" is set.
+ (e.g., gst-launch-1.0 videotestsrc ! x265enc key-int-max=30 !
+ h265parse config-interval=30 ! avdec_h265 ! videoconvert ! autovideosink)
+ Similar to the h264parse, have_{vps,sps,pps} variables will be used
+ for deciding on when to submit updated caps or not, and rather mean
+ "have new SPS/PPS to be submitted?"
+ See also https://bugzilla.gnome.org/show_bug.cgi?id=732203
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-13 21:49:57 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Fix and optimize NAL collection function
+ Adopt h264parse's _collect_nal() behavior.
+ See also commit 5601c87 and https://bugzilla.gnome.org/show_bug.cgi?id=732154
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-14 00:29:56 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Unref/replace force_key_unit_event in gst_h265_parse_reset
+ Apply the commit 36a2aca
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-14 00:27:12 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ * gst/videoparsers/gsth265parse.h:
+ h265parse: Copy over DISCONT flag from input buffers
+ Apply the commit 10ffa08
+ https://bugzilla.gnome.org/show_bug.cgi?id=754124
+
+2018-08-16 16:58:31 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst/debugutils/gstwatchdog.c:
+ watchdog: Add missing static keyword
+ get/set_property method should have been static.
+
+2018-09-11 01:00:21 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisink.h:
+ * sys/wasapi/gstwasapisrc.c:
+ * sys/wasapi/gstwasapisrc.h:
+ * sys/wasapi/gstwasapiutil.c:
+ * sys/wasapi/gstwasapiutil.h:
+ wasapi: Remove code that sets thread priority
+ This is now handled directly in gstaudiosrc/sink, and we were setting
+ it in the wrong thread anyway. prepare() is not the same thread as
+ sink_write() or src_read().
+
+2018-09-05 21:31:22 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/dts/meson.build:
+ meson: Don't pass GNU-like compiler wargs on MSVC
+ cl : Command line error D8021 : invalid numeric argument '/Wno-missing-include-dirs'
+
+2018-09-05 20:47:05 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/meson.build:
+ meson: Don't skip plugins that don't build with MSVC
+ We now have options for all plugins, so we will just disable these in
+ the cerbero recipe instead. These require external deps, so they won't
+ affect gst-build either.
+
+2018-09-03 15:15:45 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/timecode/gsttimecodestamper.c:
+ timecodestamper: Fix typo in set_drop_frame
+ Was checking if fps_d == 60000 (instead of fps_n), causing 60000/1001 to
+ be always falsely interpreted as non-drop-frame
+
+2018-09-01 11:23:33 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: Set default position and duration value to GST_CLOCK_TIME_NONE
+ When the position query fails the returned value shall remain -1 instead of 0 to
+ avoid confusion on application side between error and beginning of media.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797066
+
+2018-09-01 21:48:31 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/applemedia/meson.build:
+ meson: Fix applemedia dependencies on iOS
+ These were accidentally not being found because they were incorrectly
+ specified.
+
+2018-08-31 14:37:46 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst-libs/gst/adaptivedemux/meson.build:
+ * gst-libs/gst/audio/meson.build:
+ * gst-libs/gst/basecamerabinsrc/meson.build:
+ * gst-libs/gst/codecparsers/meson.build:
+ * gst-libs/gst/insertbin/meson.build:
+ * gst-libs/gst/interfaces/meson.build:
+ * gst-libs/gst/isoff/meson.build:
+ * gst-libs/gst/mpegts/meson.build:
+ * gst-libs/gst/opencv/meson.build:
+ * gst-libs/gst/player/meson.build:
+ * gst-libs/gst/uridownloader/meson.build:
+ * gst-libs/gst/video/meson.build:
+ * gst-libs/gst/wayland/meson.build:
+ * gst-libs/gst/webrtc/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 17:19:02 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/webrtc/meson.build:
+ meson: add pkg-config file for the webrtc plugin
+
+2018-08-31 00:37:17 +1000 Matthew Waters <matthew@centricular.com>
+
+ * sys/androidmedia/meson.build:
+ androidmedia/meson: we also depend on gmodule and orc
+
+2018-08-31 14:55:05 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/rtmp/gstrtmpsink.c:
+ rtmpsink: Fix leak on connection failure
+ Although RTMP_ConnectStream() was failed, librtmp's internal memory
+ is not freed by RTMP_ConnectStream(), so RTMP_Close() should be called
+ before RTMP_Free()
+ https://bugzilla.gnome.org/show_bug.cgi?id=797058
+
+2018-08-25 22:47:34 +0530 Devarsh Thakkar <devarsht@xilinx.com>
+
+ * sys/kms/gstkmssink.c:
+ * sys/kms/gstkmssink.h:
+ kmssink: Add "restore-crtc" property
+ This adds "restore-crtc" property using which one
+ can restore previous crtc mode.
+ By default it is enabled, if CRTC was already
+ active with a valid mode and kmssink set a new mode
+ on CRTC using force-modesetting.
+ This helps user restore previous crtc mode and get
+ the previous session back after running a kmssink
+ pipeline involving a force-modesetting.
+ For e.g. When running a kmssink pipeline on rpi
+ using force-modesetting on tty console, it was giving
+ a blank screen after pipeline, and now with help of restore-crtc
+ functionality, CRTC is set with previous crtc mode
+ previously active on tty console.
+ Edited-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
+ https://bugzilla.gnome.org/show_bug.cgi?id=797025
+
+2018-08-29 12:02:22 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Document possible advance usage
+ This adds a mention about modetest command line tool and adds an example
+ on how to use the connector/plane-properties.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797027
+
+2018-08-29 11:53:13 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Escape DRM property names
+ This allow setting properties that contains spaces. The spaces are
+ replaced with '-'. As an example, one can set the connector proper
+ "scaling mode" with the following:
+ ... ! kmssink connector-properties="s,scaling-mode=1"
+ https://bugzilla.gnome.org/show_bug.cgi?id=797027
+
+2018-08-27 15:08:08 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ * sys/kms/gstkmssink.h:
+ kmssink: Add 'plane-properties' property
+ This is similar to 'connector-properties' but will change
+ selected plane properties instead.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797027
+
+2018-08-27 15:07:47 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Generalize setting DRM object properties
+ https://bugzilla.gnome.org/show_bug.cgi?id=797027
+
+2018-08-23 14:29:37 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * sys/kms/gstkmssink.c:
+ * sys/kms/gstkmssink.h:
+ kmssink: add 'connector-properties' prop
+ Can be used to pass custom connector properties to DRM. Properties can
+ be enumerated using modetest tool. These properties can then be applied
+ with the following gst-launch-1.0 syntax. Note that the name of the
+ structure is ignored.
+ ... ! kmssink connector-properties="s,props1=value,props2=value"
+ https://bugzilla.gnome.org/show_bug.cgi?id=797027
+
+2018-08-28 12:54:07 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson_options.txt:
+ * sys/androidmedia/meson.build:
+ * sys/meson.build:
+ * sys/opensles/meson.build:
+ meson: Add build files for androidmedia and opensles
+ Note that androidmedia requires Android gstgl
+
+2018-08-28 15:04:53 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ decklink: Only use drop-frame flag for 29.97 and 59.94 FPS
+ Otherwise it can cause errors in gstvideotimecode.c because drop-frame
+ is not defined for any other frame rate (e.g. 24000/101)
+ https://blog.frame.io/2017/07/17/timecode-and-frame-rates/
+ https://bugzilla.gnome.org/show_bug.cgi?id=797037
+
+2018-08-28 09:11:32 +0200 Johan Bjäreholt <johanbj@axis.com>
+
+ * gst/audiobuffersplit/gstaudiobuffersplit.c:
+ audiobuffersplit: Fix format string warning
+ We have a GST_DEBUG_OBJECT, which prints a guint64 with %lu which gave a
+ compiler warning. Used G_GUINT64_FORMAT instead.
+ https://bugzilla.gnome.org/show_bug.cgi?id=797036
+
+2018-08-17 11:12:26 +0200 Philipp Zabel <p.zabel@pengutronix.de>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: configure mode setting from video info
+ drmModeGetFB returns -EINVAL for multi-planar framebuffers. Instead of
+ depending on the framebuffer dimensions to select the mode, use width
+ and height from GstVideoInfo, which was used to create the framebuffer
+ in the first place. This enables kmssink to display multi-planar
+ formats such as I420 or NV12 with modesetting enabled.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796985
+
+2018-08-16 12:35:50 +0200 Jerome Laheurte <jlaheurte@quividi.net>
+
+ * sys/winks/ksdeviceprovider.c:
+ ksvideosrc: fix device enumeration when hotplugging a camera
+ Since both audio and video capture devices declare the KSCATEGORY_CAPTURE interface,
+ plugging a camera that supports both could result in an audio device being mistaken
+ for a video one.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796958
+
+2018-08-19 15:50:25 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/musepack/meson.build:
+ * meson_options.txt:
+ meson: build musepack plugin
+
+2018-08-19 15:44:16 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ * ext/musepack/gstmusepackdec.c:
+ * ext/musepack/gstmusepackdec.h:
+ * ext/musepack/gstmusepackreader.c:
+ * ext/musepack/gstmusepackreader.h:
+ musepack: remove support for the 'old' API
+
+2018-08-19 14:39:53 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/freeverb/gstfreeverb.c:
+ freeverb: update for g_type_class_add_private() deprecation
+ Not that the private struct is really needed here.
+
+2018-08-19 01:11:38 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/meson.build:
+ * ext/neon/meson.build:
+ * meson_options.txt:
+ meson: build neonhttpsrc
+
+2018-08-18 21:32:11 +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-17 16:37:45 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audiobuffersplit/gstaudiobuffersplit.c:
+ * gst/audiobuffersplit/gstaudiobuffersplit.h:
+ audiobuffersplit: Add a gapless mode which inserts silence/drops samples on disconts
+ The output is always a continguous stream without any gaps.
+
+2018-08-17 16:37:31 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audiobuffersplit/gstaudiobuffersplit.c:
+ audiobuffersplit: Always set DISCONT flag after resyncs
+
+2018-08-17 16:33:52 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audiobuffersplit/gstaudiobuffersplit.c:
+ * gst/audiobuffersplit/gstaudiobuffersplit.h:
+ audiobuffersplit: Keep track of resync time separately
+ If we drain after a discont, the discont time given by the stream
+ synchronizer is already the time after the discontinuity. But we need to
+ drain all pending data based on the previous discont time instead.
+
+2018-08-17 14:56:51 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/audiobuffersplit/gstaudiobuffersplit.c:
+ audiobuffersplit: Update output buffer size after each buffer to compensate for accumulated errors
+ https://bugzilla.gnome.org/show_bug.cgi?id=796981
+
+2018-08-16 17:47:55 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/timecode/gstavwait.c:
+ * gst/timecode/gstavwait.h:
+ * tests/check/elements/avwait.c:
+ * tests/check/meson.build:
+ avwait: Start video and audio together if audio starts late
+ Also add test to meson
+ https://bugzilla.gnome.org/show_bug.cgi?id=796977
+
+2018-08-17 02:59:26 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson.build:
+ * sys/applemedia/meson.build:
+ * sys/decklink/meson.build:
+ * sys/shm/meson.build:
+ meson: host_system is 'ios' when building for iOS
+ The cross file sets this value, and we use 'ios' in Cerbero.
+
+2018-08-17 01:49:07 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson.build:
+ * meson_options.txt:
+ * tests/meson.build:
+ meson: Add an option for tests
+ This is needed because we don't always have gstreamer-check available,
+ for instance inside Cerbero on iOS.
+
+2018-08-16 15:21:00 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/dash/gstdashdemux.c:
+ dashdemux: Always create the adapter
+ Worst case it will be empty. This fixes a crash when the base class
+ calls data_received() when the stream is neither is_isobmff or
+ has_isoff_ondemand_profile.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796745
+
+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:42:25 +0200 Wim Taymans <wtaymans@redhat.com>
+
+ * ext/curl/gstcurlhttpsrc.c:
+ curlhhtpsrc: avoid invalid memory references
+ gst_curl_http_src_remove_queue_item() can free qelement and then
+ we get an invalid memory reference when we do qelement->next a
+ couple of lines below. Take the next pointer earlier so that we can
+ safely free.
+
+2018-08-16 11:20:54 +0200 Wim Taymans <wtaymans@redhat.com>
+
+ * gst/librfb/rfbdecoder.c:
+ rfbdecoder: don't free decoder data
+ The decoder data is freed when we read more data.
+
+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-15 19:44:17 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson.build:
+ meson: Define HAVE_OSX on macOS and iOS
+ Needed by the shm, ladspa, and lv2 plugins. Same as Autotools.
+
+2018-08-15 19:34:31 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/shm/meson.build:
+ meson: Fix shm librt dep check on macOS, iOS, and *BSD
+
+2018-08-14 15:59:52 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/opencv/Makefile.am:
+ makefile: opencv: Fix header names in noinst_HEADERS
+ This should fix missing gstcameracalibrate.h and gstcameraundistort.h
+ missing into generated tarballs.
+
+2018-08-14 19:48:28 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson_options.txt:
+ * sys/applemedia/meson.build:
+ meson: Add an option for the applemedia plugin
+
+2018-07-18 11:11:17 +0100 Michael Drake <michael.drake@codethink.co.uk>
+
+ * ext/assrender/gstassrender.c:
+ * ext/assrender/gstassrender.h:
+ assrender: fix multiple subtitles on screen simultaneously
+ This fixes an issue with SSA/ASS subtitles, where subtitles
+ would fail to appear if there was already a subtitle on screen.
+ This was because `struct _GstAssRender` had a single
+ `GstBuffer *subtitle_pending` member. This meant that
+ the assrender context could only be aware of one subtitle
+ at a time.
+ This patch changes the subtitle_pending member to a
+ linked list of pending subtitles.
+ The `gst_ass_render_chain_text` function no longer needs
+ to care about whether there are already subtitles pending,
+ it simply appends new subtitles to the list.
+ The `gst_ass_render_chain_video` function has been modified
+ to handle the list of pending subtitles.
+ Finally, the `gst_ass_render_pop_text` function has been
+ modified to pop the entire list of pending subtitles.
+ https://bugzilla.gnome.org/show_bug.cgi?id=735944
+
+2018-08-14 13:53:00 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * tests/check/elements/.gitignore:
+ * tests/check/libs/.gitignore:
+ check: update gitignore
+
+2018-08-14 12:42:02 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * ext/closedcaption/raw_decoder.c:
+ closedcaption: comment out unused function
+ When compiling with clang-6 this error raises:
+ raw_decoder.c:411:1: error: unused function 'cpr1204_crc'
+ [-Werror,-Wunused-function]
+ This patch only comments it out.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796957
+
+2018-08-14 12:36:53 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * ext/closedcaption/raw_decoder.c:
+ closedcaption: avoid implicit convertion of enums
+ When compiling with clang-6 this error pops out:
+ raw_decoder.c:1011:62: error: implicit conversion from enumeration
+ type 'const vbi_modulation' to different enumeration type
+ 'vbi3_modulation' [-Werror,-Wenum-conversion]
+ This is because function vbi3_bit_slicer_set_params() sets
+ vbi3_modulation as enum type parameter, nonetheless vbi_modulation
+ enum is passed. Both enums looks semantically equal, thus the fix is a
+ simple cast.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796957
+
+2018-08-11 04:12:46 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/webrtcdsp/meson.build:
+ meson: Add gnustl dep for webrtcdsp on Android
+ Needed for C++ headers. Without this, webrtcdsp can't find <algorithm>
+
+2018-08-10 12:57:47 +0100 Bastian Köcher <gnome@kchr.de>
+
+ * gst-libs/gst/interfaces/meson.build:
+ * gst-libs/gst/mpegts/meson.build:
+ * gst-libs/gst/webrtc/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 00:31:51 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstaudioclient3.h:
+ * sys/wasapi/meson.build:
+ wasapi: Fix build with Windows 8.1 SDK
+ With the Windows 8.1 SDK, the v1 of the AUDCLNT_STREAMOPTIONS enum is
+ defined which only has NONE and RAW, so it's not only defined when
+ AudioClient3 is available.
+ Add a meson check for the symbol. This is not needed for Autotools
+ because there we build against the MinGW audioclient.h which is still
+ at v1 of the AudioClient interface.
+
+2018-08-03 15:23:24 +0300 George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+ * tests/check/Makefile.am:
+ tests/check/Makefile.am: add GST_AUDIO_CFLAGS also on the planar audio adapter unit test
+
+2018-08-03 08:16:19 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/audio/Makefile.am:
+ badaudio: Fix typo, ADUIO vs AUDIO
+
+2018-08-03 07:57:50 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst-libs/gst/audio/Makefile.am:
+ GstPlanarAudioAdapter: Add audio library in Makefile.am
+ This fixes a build regression.
+
+2018-08-03 07:57:02 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/webrtcdsp/gstwebrtcdsp.h:
+ * ext/webrtcdsp/gstwebrtcechoprobe.h:
+ webrtcdsp: Avoid redefinition of GST_USE_UNSTABLE_API
+
+2018-02-19 18:30:13 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+ * ext/webrtcdsp/Makefile.am:
+ * ext/webrtcdsp/gstwebrtcdsp.cpp:
+ * ext/webrtcdsp/gstwebrtcdsp.h:
+ * ext/webrtcdsp/gstwebrtcechoprobe.cpp:
+ * ext/webrtcdsp/gstwebrtcechoprobe.h:
+ * ext/webrtcdsp/meson.build:
+ webrtcdsp: add support for using F32/non-interleaved buffers
+ This is the native format that is in use by the webrtc audio processing
+ library internally, so this avoids internal {de,}interleaving and
+ format conversion (S16->F32 and back)
+ https://bugzilla.gnome.org/show_bug.cgi?id=793605
+
+2018-02-19 11:48:01 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+ * gst-libs/gst/audio/gstplanaraudioadapter.c:
+ * gst-libs/gst/audio/gstplanaraudioadapter.h:
+ GstPlanarAudioAdapter: copy pts, dts and offset tracking from GstAdapter
+ https://bugzilla.gnome.org/show_bug.cgi?id=793605
+
+2018-02-16 15:55:45 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com>
+
+ * gst-libs/gst/audio/Makefile.am:
+ * gst-libs/gst/audio/gstplanaraudioadapter.c:
+ * gst-libs/gst/audio/gstplanaraudioadapter.h:
+ * gst-libs/gst/audio/meson.build:
+ * tests/check/Makefile.am:
+ * tests/check/libs/planaraudioadapter.c:
+ * tests/check/meson.build:
+ libs: audio: add new GstPlanarAudioAdapter class
+ This is a GstAdapter, but for planar audio buffers.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793605
+
+2017-07-21 17:53:11 +1000 Alessandro Decina <alessandro.d@gmail.com>
+
+ * meson.build:
+ * sys/applemedia/meson.build:
+ * sys/meson.build:
+ meson: enable applemedia
+
+2018-08-02 21:05:24 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/rsvg/gstrsvgdec.c:
+ rsvg: Also accept </svg:svg> as ending tag
+ Some SVG files created by inkscape use that, such as:
+ https://gitlab.gnome.org/GNOME/pitivi/uploads/8dd8d9d988b5eb6cc38f871196caac6f/Titel-Tafel3.2_anim.svg
+ This is a first patch for https://bugzilla.gnome.org/show_bug.cgi?id=796909
+ but it is not enough to support animated gifs.
+
+2018-08-02 11:19:07 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * configure.ac:
+ * ext/opencv/MotionCells.h:
+ * ext/opencv/gsthanddetect.h:
+ * ext/opencv/gsttemplatematch.cpp:
+ * ext/opencv/gsttemplatematch.h:
+ * ext/opencv/meson.build:
+ * meson.build:
+ opencv: Fixup include to follow new standard
+ This uses the new path for OpenCV headers. OpenCV now have
+ master headers files per modules, which reduce the amount of
+ required includes. Note that HIGHGUI was included to get the
+ imgcodecs includes, which I fixed, though the master header is
+ missing the C headers, so I included that directly. All the
+ image stuff should be ported to C++ eventually. Finally, this
+ patch also update the header checks to reflect the modules that
+ are really being used.
+
+2018-08-02 11:03:47 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/opencv/MotionCells.h:
+ * ext/opencv/gstcameracalibrate.h:
+ * ext/opencv/gstcameraundistort.h:
+ * ext/opencv/gstcvdilate.cpp:
+ * ext/opencv/gstcvdilateerode.cpp:
+ * ext/opencv/gstcvequalizehist.cpp:
+ * ext/opencv/gstcverode.cpp:
+ * ext/opencv/gstcvlaplace.cpp:
+ * ext/opencv/gstcvsmooth.cpp:
+ * ext/opencv/gstcvsobel.cpp:
+ * ext/opencv/gstdewarp.h:
+ * ext/opencv/gstedgedetect.cpp:
+ * ext/opencv/gstedgedetect.h:
+ * ext/opencv/gstfaceblur.cpp:
+ * ext/opencv/gstfaceblur.h:
+ * ext/opencv/gstfacedetect.h:
+ * ext/opencv/gstgrabcut.cpp:
+ * ext/opencv/gstgrabcut.h:
+ * ext/opencv/gsthanddetect.h:
+ * ext/opencv/gstmotioncells.h:
+ * ext/opencv/gstretinex.cpp:
+ * ext/opencv/gstretinex.h:
+ * ext/opencv/gstsegmentation.cpp:
+ * ext/opencv/gstskindetect.cpp:
+ * ext/opencv/gsttemplatematch.h:
+ * gst-libs/gst/opencv/gstopencvutils.cpp:
+ * gst-libs/gst/opencv/gstopencvvideofilter.cpp:
+ opencv: Updated to use new header path
+
+2018-08-02 10:39:14 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * configure.ac:
+ * ext/opencv/MotionCells.cpp:
+ * ext/opencv/gstcameracalibrate.cpp:
+ * ext/opencv/gstcameraundistort.cpp:
+ * ext/opencv/gstdisparity.cpp:
+ * ext/opencv/gstdisparity.h:
+ * ext/opencv/gstfacedetect.cpp:
+ * ext/opencv/gsthanddetect.cpp:
+ * ext/opencv/gstsegmentation.cpp:
+ * ext/opencv/gstsegmentation.h:
+ * ext/opencv/gsttemplatematch.cpp:
+ * ext/opencv/gsttextoverlay.h:
+ * ext/opencv/meson.build:
+ * gst-libs/gst/opencv/meson.build:
+ opencv: Bump requirement to 3.0.0+
+ And removes all the ifdef code to support the 2.X APIs.
+
+2018-08-02 16:18:12 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/closedcaption/gstceaccoverlay.c:
+ ceaccoverlay: Initialize debug category
+
+2018-08-02 18:24:02 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisrc.c:
+ wasapisrc: Correctly disable provide-clock
+ `#ifdef` will, of course, evaluate to 1 in this case. We want `#if`.
+
+2018-08-02 08:13:08 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/opencv/gstcameracalibrate.h:
+ * ext/opencv/gstcameraundistort.h:
+ cameracalibrtate: Fix opencv2 core.hpp path
+ This is to support older release of OpenCV2
+ https://bugzilla.gnome.org/show_bug.cgi?id=789075
+
+2018-05-27 14:31:55 +0200 Christoph Reiter <reiter.christoph@gmail.com>
+
+ * sys/wasapi/gstwasapiutil.c:
+ wasapisink: fix regression in shared mode segment size
+ In commit fd806628a8 (839cc3926 in the stable branch) I changed the
+ segment size to match exactly the buffer size. I missed that this is
+ only valid in exclusive mode and in shared mode the buffer size is
+ a multiple of the device period.
+ Revert the logic for the shared mode.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796354
+ https://bugzilla.gnome.org/show_bug.cgi?id=796858
+
+2017-10-16 22:29:01 +0200 Philippe Renon <philippe_renon@yahoo.fr>
+
+ * ext/opencv/Makefile.am:
+ * ext/opencv/cameraevent.cpp:
+ * ext/opencv/cameraevent.hpp:
+ * ext/opencv/camerautils.cpp:
+ * ext/opencv/camerautils.hpp:
+ * ext/opencv/gstcameracalibrate.cpp:
+ * ext/opencv/gstcameracalibrate.h:
+ * ext/opencv/gstcameraundistort.cpp:
+ * ext/opencv/gstcameraundistort.h:
+ * ext/opencv/gstopencv.cpp:
+ * ext/opencv/meson.build:
+ opencv: new cameracalibrate and cameraundistort elements
+ https://bugzilla.gnome.org/show_bug.cgi?id=789075
+
+2018-08-01 15:11:09 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/timecode/gstavwait.c:
+ avwait: Don't wait if audio_running_time_to_wait_for is NONE
+ The case is properly handled a few lines below by dropping the buffer.
+ We shouldn't perpetually block the audio chain function until the
+ target-timecode is reached.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796906
+
+2018-08-01 03:43:31 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson_options.txt:
+ * sys/winks/meson.build:
+ meson: Add option for winks plugin
+ This was accidentally missed.
+
+2018-07-29 20:55:26 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrt.h:
+ srt: Allow the host name "localhost"
+ Add support "srt://localhost:port" style uri, and change the
+ default host to "localhost"
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-28 15:59:04 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrtclientsink.c:
+ srtclientsink: Fix SRT socket option setting
+ SRTClientSink is sender
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-27 15:04:29 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrtclientsrc.c:
+ srt: Do not ignore SRT socket error event
+ ... and set SRT_EPOLL_IN flag if the client is not sender
+ (i.e., source element) since waiting readable event for
+ srt_recvmsg() makes more sense.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-27 13:23:43 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrtbasesrc.c:
+ * ext/srt/gstsrtclientsrc.c:
+ * ext/srt/gstsrtserversrc.c:
+ srtbasesrc: Use GstBaseSrc's timestamp impl.
+ ... instead of doing it ourselves. Otherwise, we should add more
+ logic here (such as checking GstClock and etc) which was already provided by
+ GstBaseSrc.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-25 10:44:20 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrt.h:
+ srt: Add "const" keyword to a function argument
+ Given "passphrase" shouldn't be modified
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-20 16:02:26 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrt.h:
+ * ext/srt/gstsrtserversink.c:
+ * ext/srt/gstsrtserversrc.c:
+ srt: Remove duplicated code for setting server socket
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-28 18:06:08 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrtserversink.h:
+ * ext/srt/gstsrtserversrc.h:
+ srt: Fix signal args mismatch
+ client-added and client-{removed,closed} signals were defined
+ to be emitted with two arguments (socket fd and address)
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-25 17:36:03 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrtserversrc.c:
+ srtserversrc: Emit client-closed signal in _stop()
+ ... instead of client-added
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-25 15:16:32 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrtclientsink.c:
+ srtclientsink: Do not leak string
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-23 14:28:05 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrtclientsink.c:
+ * ext/srt/gstsrtclientsrc.c:
+ srtclient: Fix bind-port and rendez-vous property getter
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-20 14:05:32 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrt.c:
+ * ext/srt/gstsrt.h:
+ * ext/srt/gstsrtclientsink.c:
+ * ext/srt/gstsrtclientsrc.c:
+ srt: Reduce useless call depth
+ Providing simplified _client_connect() is not required for now.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-20 12:10:21 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/srt/gstsrtbasesink.h:
+ * ext/srt/gstsrtbasesrc.c:
+ * ext/srt/gstsrtbasesrc.h:
+ * ext/srt/gstsrtclientsink.c:
+ * ext/srt/gstsrtclientsink.h:
+ * ext/srt/gstsrtclientsrc.c:
+ * ext/srt/gstsrtclientsrc.h:
+ * ext/srt/gstsrtserversink.c:
+ * ext/srt/gstsrtserversink.h:
+ * ext/srt/gstsrtserversrc.c:
+ * ext/srt/gstsrtserversrc.h:
+ srt: Remove white space
+ https://bugzilla.gnome.org/show_bug.cgi?id=796842
+
+2018-07-27 23:00:53 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst/jpegformat/gstjpegparse.c:
+ jpegparse: Generate timestamp if framerate is known
+ This change allow setting timestamp on streams that would otherwise have
+ no timestamp. This is useful to make a video from bunch of JPEG files. An
+ example of such pipeline would be:
+ gst-launch-1.0 multifilesrc location=%05d.jpeg caps=image/jpeg,framerate=30/1 \
+ ! jpegparse ! fakesink silent=0 -v
+
+2018-07-27 22:36:40 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/mplex/meson.build:
+ meson: mjpegtools_api should be 20K for mplex too
+ This error was duplicated.
+
+2018-07-27 22:33:47 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * ext/mpeg2enc/meson.build:
+ meson: mjpegtools_api should have been 20K not 2K
+ This was miss-ported when the options got added. The requires version was
+ properly set to 2000 before.
+
+2018-07-27 22:17:56 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/bluez/meson.build:
+ meson: Generate bluez.h instead of bluez-interface.h
+ This is a recent regression, the meson code was ported to use the meson
+ gnome module helpers, but the generated file was changed to
+ bluez-interface.h.
+
+2018-07-27 18:59:23 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/aom/meson.build:
+ * ext/assrender/meson.build:
+ * ext/bs2b/meson.build:
+ * ext/bz2/meson.build:
+ * ext/chromaprint/meson.build:
+ * ext/closedcaption/meson.build:
+ * ext/dash/meson.build:
+ * ext/directfb/meson.build:
+ * ext/dtls/meson.build:
+ * ext/dts/meson.build:
+ * ext/faac/meson.build:
+ * ext/faad/meson.build:
+ * ext/fdkaac/meson.build:
+ * ext/flite/meson.build:
+ * ext/fluidsynth/meson.build:
+ * ext/gl/meson.build:
+ * ext/gsm/meson.build:
+ * ext/hls/meson.build:
+ * ext/iqa/meson.build:
+ * ext/kate/meson.build:
+ * ext/ladspa/meson.build:
+ * ext/libde265/meson.build:
+ * ext/libmms/meson.build:
+ * ext/lv2/meson.build:
+ * ext/meson.build:
+ * ext/mpeg2enc/meson.build:
+ * ext/mplex/meson.build:
+ * ext/openh264/meson.build:
+ * ext/openjpeg/meson.build:
+ * ext/opus/meson.build:
+ * ext/resindvd/meson.build:
+ * ext/rsvg/meson.build:
+ * ext/rtmp/meson.build:
+ * ext/sbc/meson.build:
+ * ext/smoothstreaming/meson.build:
+ * ext/soundtouch/meson.build:
+ * ext/spandsp/meson.build:
+ * ext/srt/meson.build:
+ * ext/srtp/meson.build:
+ * ext/ttml/meson.build:
+ * ext/voaacenc/meson.build:
+ * ext/vulkan/meson.build:
+ * ext/webp/meson.build:
+ * ext/webrtc/meson.build:
+ * ext/webrtcdsp/meson.build:
+ * ext/x265/meson.build:
+ * ext/zbar/meson.build:
+ * gst-libs/gst/opencv/meson.build:
+ * gst-libs/gst/wayland/meson.build:
+ * gst/mpegtsdemux/meson.build:
+ * meson.build:
+ * meson_options.txt:
+ * sys/bluez/meson.build:
+ * sys/d3dvideosink/meson.build:
+ * sys/decklink/meson.build:
+ * sys/directsound/meson.build:
+ * sys/dvb/meson.build:
+ * sys/fbdev/meson.build:
+ * sys/ipcpipeline/meson.build:
+ * sys/kms/meson.build:
+ * sys/msdk/meson.build:
+ * sys/shm/meson.build:
+ * sys/uvch264/meson.build:
+ * sys/wasapi/meson.build:
+ * sys/winks/meson.build:
+ * sys/winscreencap/meson.build:
+ * tests/check/meson.build:
+ Add feature options for almost all plugins
+ The only plugins remaining are those that haven't been ported to Meson
+ yet, and msdk. Also, the tests are still automagic.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795107
+
+2018-07-25 17:12:00 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/meson.build:
+ * gst/meson.build:
+ * meson.build:
+ * meson_options.txt:
+ * tests/examples/waylandsink/meson.build:
+ * tests/meson.build:
+ meson: Add feature options for many plugins
+ The rest will be converted later, these are necessary for gst-build to
+ set options correctly.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795107
+
+2018-07-26 11:19:41 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/aom/gstav1enc.c:
+ av1enc: Implement latency setting
+
+2018-07-26 10:48:34 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/aom/gstav1enc.c:
+ av1enc: Propagate flags from encoder to GstBuffer
+
+2018-07-26 09:55:48 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/aom/gstav1enc.c:
+ av1enc: Implement finish for EOS
+ Call the encode function repeatedly until nothing comes out.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796727
+
+2018-07-26 09:49:02 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/aom/gstav1enc.c:
+ av1enc: Return downstream error from push
+
+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 13:44:48 +0200 Gary Bisson <gary.bisson@boundarydevices.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Add support for mxsfb-drm driver
+ The mxsfb-drm driver has been added to the kernel long ago and will now
+ be the default display driver for NXP i.MX28, i.MX6SX and i.MX7D
+ processors so now is a good time to add it to kmssink.
+ Also, this is used in the upcoming i.MX8MQ and i.MX8MM processors.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796873
+
+2018-07-09 20:20:59 -0500 Matteo Valdina <matteo.valdina@gmail.com>
+
+ * ext/wayland/Makefile.am:
+ * ext/wayland/meson.build:
+ * ext/wayland/wldisplay.c:
+ * ext/wayland/wldisplay.h:
+ * ext/wayland/wlwindow.c:
+ waylandsink: relaxed wl_shell check and added zwp_fullscreen_shell.
+ Relaxed the wl_shell interface constrains, so application that
+ pass via GstContext the wl_surface can use waylandsink in a
+ compositor without wl_surface and zwp_fullscreen_shell.
+ Added support for zwp_fullscreen_shell.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796772
+
+2018-07-19 18:34:40 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * gst/timecode/gstavwait.c:
+ * gst/timecode/gstavwait.h:
+ * tests/check/Makefile.am:
+ * tests/check/elements/avwait.c:
+ avwait: Add recording property
+ It works like a valve in front of the actual avwait. When recording ==
+ TRUE, other rules are then examined. When recording == FALSE, nothing is
+ passing through.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796836
+
+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-07-22 10:34:06 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/ladspa/gstladspa.c:
+ ladspa: Only scan LADSPA subdir APPDATA and COMMONPROGRAMFILES
+ Don't scan the entire APPDATA and COMMONPROGRAMFILES
+ path tree, just the LADSPA sub-directory inside them, if any.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796450
+
+2018-07-22 09:52:23 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/ladspa/gstladspa.c:
+ ladspa: Don't try and load every file as a plugin
+ When scanning paths for LADSPA plugins, don't try and load
+ every random file as a module, as g_module_open ends up throwing
+ errors on Windows.
+ Use a G_MODULE_SUFFIX and GST_EXTRA_MODULE_SUFFIX suffix check as
+ we do for GStreamer plugins.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796450
+
+2018-07-18 14:26:17 +0100 Sam Gigliotti <samgig@amazon.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: fix memory leak
+ When it parses SDP, it doesn't free the error object.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796830
+
+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
+
+2018-06-18 13:01:50 +0200 Jonathan Karlsson <jonakn@axis.com>
+
+ * ext/curl/gstcurlhttpsink.c:
+ curlhttpsink: Support for multipart/form-data Content-Type
+ Add support to set multipart/form-data as Content-Type by sending a
+ caps event to the curlhttpsink with a field named "boundary".
+ https://bugzilla.gnome.org/show_bug.cgi?id=796618
+
+2018-07-15 23:05:26 +1000 Jan Schmidt <jan@centricular.com>
+
+ * tests/check/elements/webrtcbin.c:
+ webrtc: Add some ssrc to caps in the unit test.
+ The unit test uses incomplete caps to test webrtcbin,
+ causing some weirdness generating RTX stream mappings.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796810
+
+2018-07-14 23:15:02 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: Add a warning in sdp_media_from_transceiver()
+ When generating caps with no ssrc, at least throw a
+ warning instead of using an uninitialised stack variable
+ https://bugzilla.gnome.org/show_bug.cgi?id=796810
+
+2018-07-14 23:05:53 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: Fix memory leak
+ Fix a leaked string when building RTX info.
+
+2018-07-14 23:04:30 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/transportsendbin.c:
+ * ext/webrtc/transportsendbin.h:
+ webrtc: Clean up and fix transportsendbin
+ Refactor transportsendbin, and change the way
+ pads are blocked on dtlssrtpenc so that they
+ don't interfere with state changes.
+ As well as being easier to read, this fixes
+ spurious failures shutting down webrtcbin
+ if DTLS negotiation hasn't completed yet.
+
+2018-07-14 23:02:05 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/transportsendbin.c:
+ * gst-libs/gst/webrtc/dtlstransport.c:
+ webrtc: Move dtlssrtpenc state management
+ Move the errant piece of dtlssrtpenc state change
+ management from dtlstransport in the Webrtc libs,
+ into the transportsendbin that does the rest of
+ the element management so it's all in one place.
+
+2018-07-02 19:55:41 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst-libs/gst/webrtc/dtlstransport.c:
+ webrtc/dtlstransport: Add more debug. Rename category
+ Rename the dtlstransport debug category to webrtcdtlstransport.
+
+2018-07-13 14:42:28 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/opencv/MotionCells.cpp:
+ * ext/opencv/gsthanddetect.cpp:
+ * ext/opencv/gsttemplatematch.cpp:
+ opencv: Fix build for opencv >= 3.4.2
+ The `CV_RGB` macro is now in `imgproc.hpp`.
+ Fixes:
+ ../subprojects/gst-plugins-bad/ext/opencv/gsthanddetect.cpp:497:40: error: ‘CV_RGB’ was not declared in this scope
+ cvCircle (img, center, radius, CV_RGB (0, 0, 200), 1, 8, 0);
+ ^~~~~~
+
+2018-07-07 03:40:49 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ find_codec_preferences: use received caps
+ When negotiation is triggered by receiving caps on our sink pad
+ probes, we could encounter a race condition where need-negotiation
+ is emitted and the application requires the creation of an offer
+ before the current caps were actually updated.
+ This led to retrieving incomplete caps when creating the offer,
+ using find_codec_preferences -> pad_get_current_caps.
+ Instead, as we save the caps in the probe callback anyway, it is better
+ and thread safe to use these if they were set.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796801
+
+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-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-07-08 09:54:04 -0500 Matthew Waters <matthew@centricular.com>
+
+ * sys/decklink/gstdecklinkvideosink.cpp:
+ * sys/decklink/gstdecklinkvideosink.h:
+ decklink: keep the internal time we send to decklink always increasing
+ Otherwise decklink seems to hold onto the latest frame and may cause a
+ flash in the output if the played sequence has a framerate less than the
+ video output.
+ Scenario is play for N seconds, pause, flushing seek to some other position,
+ play again. Each of the play sequences would normally start at 0 with
+ the decklink time. As a result, the latest frame from the previous sequence
+ is kept alive waiting for it's timestamp to pass before either dropping
+ (if a subsequent frame in the new sequence overrides it) or displayed
+ causing the out of place frame to be displayed.
+ This is also supported by the debug logs from the decklink video sink
+ element where a ScheduledFrameCompleted() callback would not occur for
+ the frame until the above had happened.
+ It was timing related as to whether the frame was displayed based
+ on the decklink refresh cycle (which seems to be 16ms here),
+ when the frame was scheduled by the sink and the difference between
+ the 'time since vblank' of the two play requests (and thus start times
+ of scheduled playback).
+
+2018-07-10 20:12:15 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/gl/gstglutils.c:
+ gl/utils: fix matrix conversion for column majorness
+ Companion to
+ https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=e4bf9ed8f060021151cd57e2b00493ed696cb47b
+ https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=16cba63d43f319ac33bc993eca2b1b51679727b3
+
+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-09 06:40:29 +0530 Arun Raghavan <git@arunraghavan.net>
+
+ * ext/closedcaption/gstceaccoverlay.c:
+ closedcaption: Fix compilation on older compilers
+ For when -std=c99 (or later) is not the default.
+
+2018-07-09 06:40:24 +0530 Arun Raghavan <git@arunraghavan.net>
+
+ * sys/bluez/gstavdtpsrc.c:
+ * sys/bluez/gstavdtputil.c:
+ * sys/bluez/gstavdtputil.h:
+ bluez: Expose transport volume as a property on avdtpsrc
+ This can be handy if we want to track Bluetooth volume changes from the
+ device, or if we want to set it.
+ https://bugzilla.gnome.org/show_bug.cgi?id=787020
+
+2018-07-03 18:38:04 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdkdec: Fix latency calculation
+ Use async_depth for latency calcuation instead of
+ the length of Tasks array which could be NULL since we
+ don't do the msdk decoder init in set_format().
+
+2018-07-02 16:50:46 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/msdk.c:
+ msdk: Set 16 bit alignment for width
+ According to MediaSDK specification,
+ Width must be a multiple of 16 and Height must be a multiple
+ of 16 for progressive frame sequence and a multiple of 32 otherwise.
+ This patch sets a 16 bit alignment for width and 32 bit alignment
+ for height as default.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796566
+
+2018-07-02 16:50:02 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdkdec: avoid early destruction of frame in dynamic resolution change
+ In cases where we do hard resest, the current code destroys the frame
+ which has new resolution bit early and this causes buffer_unmap
+ warnings. Keep an extra ref to the frame internally to avoid this.
+
+2018-07-02 16:49:23 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvc1dec.c:
+ msdkdec: vc1: Fix handling of advanced profile elementary stream
+ Advanced profile elementary streams may not have codec_data
+ always. So make sure we don't do anything with null buffer.
+
+2018-07-02 16:48:11 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdkdec: Fix advanced profile vc1 decode when codec_data presents
+ The gst-msdk decoders only support packetized formats for
+ all codecs except VC1. For VC1, it supports codec_data for advanced
+ profiles and this codec_data wan't submitting to MSDK's DecodeHeader APIs.
+ Make sure the subclass deocders correctly configured so that
+ the codec_data buffers are in place in the internal adapter for
+ MediaSDK's DecoderHeader usage.
+
+2018-07-02 16:42:20 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdkdec: Fix the PTS of output frames
+ Currently we use the gst_video_decoder_get_oldest_frame()
+ to get the old pending frame to output. But this is not correct
+ if pts re-ordering required. This patch uses a custom made
+ get_old_frame() which accounts the PTS too similar to the
+ v4l2decoder.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796699
+
+2018-07-02 16:41:58 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkdec.h:
+ msdkdec: Remove dead code
+ We are not using any ExtendedParams for decoding.
+
+2018-07-02 16:17:49 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkdec.h:
+ * sys/msdk/gstmsdkvp9dec.c:
+ msdk: dec: Add dynamic-configuration change support
+ The patch adds a serios of changes to support dynamic resolution
+ change and efficient utilization of resources.
+ Major changes:
+ -- Use MSDK's apis to retrieve the headers instead of only relying
+ on upsteram notification. For eg: avc decoder requires SEI header
+ information for dpb count calculation which we don't get from caps.
+ -- For all codecs other than VP9, we force the reset of decoder
+ if resoultion changes to fit with gstreamer flow. VP9 enfource
+ the hard reset only if the new resolution is bigger.
+ -- delay the src caps setting till msdk api's invokation in
+ handle_frame to avoid caching multiple configuration values
+ -- ensure pool negotiation is based on decoder's allocation_caps.
+ --dynamic resoluttion change use an explicit allocation_query
+ to reclaim the buffers before closing the decoder (thanks to v4l2dec)
+ --In case if we don't get upstream notification of res change (for eg,
+ this can can happen for vp9 frames with ivfheader where ivfparse
+ is not able to notify the dynamic changes), we handle the the case
+ based on MFX_ERR_INCOMPATIBLE_VIDEO_PARAM which is the return value
+ of MFXVideoDECODE_DecodeFrameAsync
+ -- calculate the minimum surfaces to be preallocated based on
+ msdk suggestion, downstream requirement, async depth and scratch surface
+ count for smooth display.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796566
+
+2018-07-02 19:09:19 +0800 Roland Jon <rlandjon@gmail.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: Avoid trying to join the player thread from itself
+ https://bugzilla.gnome.org/show_bug.cgi?id=796731
+
+2018-07-01 10:44:45 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtc: Explicitly initialise mutex and condition
+ Fixes random crashes when an allocated webrtcbin isn't
+ given fresh 0-filled memory in its allocation. It works
+ mostly because GMutex and GCond are automatically initialised
+ in that case.
+
+2018-06-30 00:56:29 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/transportsendbin.c:
+ webrtc: Move the transportsendbin pad block removal
+ Move freeing of the pad blocks back to before we call the
+ GstBin state change function, as there's something racy
+ going on on the build server otherwise, where the pads don't
+ unblock during downward state changes.
+ This is a bit of a stab in the dark, since I can't recreate
+ the build server failure locally.
+
+2018-06-27 09:48:00 +0000 Sean-Der <sean@siobud.com>
+
+ * ext/aom/gstav1dec.c:
+ aomenc: Handle 8 bit_depth images with AOM_IMG_FMT_HIGHBITDEPTH enabled
+ https://bugzilla.gnome.org/show_bug.cgi?id=791674
+
+2018-06-27 09:44:00 +0000 Sean-Der <sean@siobud.com>
+
+ * ext/aom/gstav1dec.c:
+ aomenc: Add support for 10/12bit decoding
+ https://bugzilla.gnome.org/show_bug.cgi?id=791674
+
+2018-06-26 17:45:36 +0200 Georg Ottinger <g.ottinger@gmx.at>
+
+ * gst/ivfparse/gstivfparse.c:
+ ivfparse: Add the AV01 FOURCC for parsing AV1 IVFs
+ Adds AV01 FOURCC to the list of allowed media files, in order to allow
+ parsing the IVF Container holding AV1 content.
+ At a later point dynamic resolution change can be supported - therefore
+ the sequence header OBU and frame header OBU of AV1 file must be parsed,
+ which can be done in future with the help of gst-lib gstav1parse.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796677
+
+2018-06-28 15:21:12 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/openh264/meson.build:
+ meson: Add fallback for openh264 dependency
+
+2018-06-27 22:42:12 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/transportsendbin.c:
+ webrtc: Clean up pad block allocs on dispose.
+ Release references in pad blocks and release the memory in the
+ dispose function too, in case the state change doesn't get
+ run (because calling the parent state change fails).
+
+2018-06-27 03:05:55 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/webrtc/transportsendbin.c:
+ webrtc: Don't deadlock on block pads on shutdown
+ When changing state downward, we can't set pads
+ to inactive if they are blocked, it will deadlock
+ trying to acquire the streaming lock.
+ Just calling the parent state change function
+ will do the correct things to unblock probes and
+ set the pad inactive, so let it do that and
+ remove the probes after the parent state change
+ function has run
+ https://bugzilla.gnome.org/show_bug.cgi?id=796682
+
+2018-06-24 00:17:26 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/winks/gstksclock.c:
+ * sys/winks/gstksvideodevice.c:
+ * sys/winks/gstksvideosrc.c:
+ winks: Update for g_type_class_add_private() deprecation in recent GLib
+ Untested
+
+2018-06-24 00:17:26 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/msdk/gstmsdkbufferpool.c:
+ * sys/msdk/gstmsdkcontext.c:
+ msdk: Update for g_type_class_add_private() deprecation in recent GLib
+ Untested.
+
+2018-06-24 00:17:26 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+ * gst-libs/gst/insertbin/gstinsertbin.c:
+ * gst-libs/gst/uridownloader/gstfragment.c:
+ * gst-libs/gst/uridownloader/gsturidownloader.c:
+ libs: 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>
+
+ * 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-24 00:17:26 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/vulkan/vkbufferpool.c:
+ * ext/vulkan/vkdevice.c:
+ * ext/vulkan/vkdisplay.c:
+ * ext/vulkan/vkinstance.c:
+ * ext/vulkan/vkswapper.c:
+ * ext/vulkan/vkwindow.c:
+ * ext/vulkan/xcb/vkwindow_xcb.c:
+ vulkan: 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/soundtouch/gstbpmdetect.cc:
+ * ext/soundtouch/gstpitch.cc:
+ soundtouch: 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/dtls/gstdtlsagent.c:
+ * ext/dtls/gstdtlscertificate.c:
+ * ext/dtls/gstdtlsconnection.c:
+ dtls: 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/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/gstwebrtcice.c:
+ * ext/webrtc/icestream.c:
+ * ext/webrtc/nicetransport.c:
+ webrtc: Update for g_type_class_add_private() deprecation in recent GLib
+
+2018-06-24 00:07:59 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/uvch264/gstuvch264_mjpgdemux.c:
+ * sys/uvch264/gstuvch264_mjpgdemux.h:
+ uvch264src: get rid of unnecessary private struct
+
+2018-06-23 23:51:37 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/jpegformat/gstjifmux.c:
+ * gst/jpegformat/gstjifmux.h:
+ * gst/jpegformat/gstjpegparse.c:
+ * gst/jpegformat/gstjpegparse.h:
+ jpegformat: get rid of unnecessary private structs
+
+2018-06-21 08:49:01 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/closedcaption/misc.h:
+ ext/closedcaption/misc.h: Transform into UTF-8
+
+2018-06-20 11:38:17 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/decklink/gstdecklinkaudiosink.cpp:
+ decklink: Fix warning about HRESULT not being unsigned int
+
+2018-06-18 23:06:18 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst/mpegtsdemux/tsdemux.c:
+ tsdemux: Don't set invalid seqnum on segment event
+ https://bugzilla.gnome.org/show_bug.cgi?id=796623
+
+2018-06-18 23:42:04 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/soundtouch/gstpitch.cc:
+ pitch: remove trailing whitespaces from previous commit
+
+2018-06-18 07:39:10 +0530 Suhas Nayak <suhas2go@gmail.com>
+
+ * ext/soundtouch/gstpitch.cc:
+ pitch: Flush only if there are unprocessed samples
+ Otherwise we end up trying to flush before
+ sample rate of SoundTouch is set
+ https://bugzilla.gnome.org/show_bug.cgi?id=796613
+
+2018-06-18 12:18:07 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * tests/check/elements/dash_demux.c:
+ * tests/check/elements/dash_mpd.c:
+ * tests/check/elements/hls_demux.c:
+ * tests/check/elements/mssdemux.c:
+ tests: Make sure to provide the KEY_UNIT flag always together with the SNAP flags in seeks
+ SNAP flags alone make no sense and nowadays cause warnings.
+
+2018-06-16 18:23:41 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/soundtouch/gstpitch.cc:
+ pitch: preserve seek event seqnums
+ This was wreaking havoc when used with a downstream audiomixer.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796603
+
+2018-06-16 18:21:58 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/soundtouch/gstpitch.cc:
+ pitch: fix latency reporting
+ When max is GST_CLOCK_TIME_NONE in the query, it should not
+ be set in the query handler, this otherwise could lead to
+ impossible situations, where the minimum latency ended up
+ greater than the maximum.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796603
+
+2018-06-16 18:19:39 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/soundtouch/gstpitch.cc:
+ pitch: Fix single input buffer followed by EOS
+ The flush function immediately returned when pitch->next_buffer_offset
+ was 0.
+ This is clearly wrong, as next_buffer_offset can be 0 when a single
+ input buffer has been received, and no output buffer has been produced
+ before receiving EOS.
+ Simply remove that condition.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796603
+
+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-03-07 00:07:29 +1100 Jan Schmidt <jan@centricular.com>
+
+ * sys/androidmedia/gstamcvideodec.c:
+ androidmedia: Invert the transform matrix from the decoder
+ The transform from mediacodec applies to the texture coords, but
+ GStreamer affine meta applies to the video geometry, which is the
+ opposite - so invert it to get display correct for decoders
+ that require transforming
+
+2018-02-08 17:02:17 +1100 Matthew Waters <matthew@centricular.com>
+
+ * ext/vulkan/vkinstance.c:
+ vulkaninstance: add missing precondition to _open()
+
+2018-06-12 11:14:25 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/mpegtsdemux/tsdemux.c:
+ tsdemux: Don't query duration if program isn't active
+
+2018-06-11 18:34:24 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst-libs/gst/webrtc/rtcsessiondescription.c:
+ gst_webrtc_session_description_new: fix annotations
+
+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 15:31:54 -0800 Wang,Fei <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ msdk: vpp: remove mfxExtVPPDoUse from vpp filters.
+ According to msdk spec, there are two ways to enable filters:
+ 1: Filters can be enabled by adding a filter ID
+ to mfxExtVPPDoUse. In this case, default filter parameters are used
+ 2: Add filter configuration structures directly to mfxVideoParam.
+ Using 1 with 2 is optional but legal. Unfortunately it won't work
+ with some specific use cases like Detail/EdgeEnhancement.
+ Let's stick with option2 which works fine for all VPP operations.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796468
+
+2018-06-07 15:30:23 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: set passthrough from set_caps method for code clarity
+ Call passthrough setting method from set_caps so that
+ msdk initialize subroutine looks more clear.
+
+2018-06-07 15:29:29 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ mskd: vpp: error out gracefully instead of segfaulting if Init failed
+ Since we do the MSDK initializing in set_caps(), a FALSE
+ return may still cause the invokation of set_caps() again
+ and this will leads to buffer allocation and other mess-up.
+ So make sure the msdk initialized correctly before trying
+ to do any buffer allocation.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796465
+
+2018-06-07 15:28:44 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: Add filters to VideoParm before doing the Query
+ Make sure all the enabled filter structures are added in the
+ mfxVideoParm before doing the VPPQuery so that msdk
+ can do the input param validation
+ https://bugzilla.gnome.org/show_bug.cgi?id=796465
+
+2018-06-06 14:32:56 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * tests/examples/compositor/meson.build:
+ * tests/examples/mpegts/meson.build:
+ * tests/examples/webrtc/meson.build:
+ examples: Don't install non-prefixed examples
+
+2018-06-06 14:31:43 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * tests/examples/meson.build:
+ * tests/examples/waylandsink/meson.build:
+ examples: Build waylandsink example
+
+2018-06-06 07:51:19 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/mpegtsdemux/mpegtsbase.c:
+ * gst/mpegtsdemux/mpegtsbase.h:
+ * gst/mpegtsdemux/tsdemux.c:
+ mpegtsdemux: Fix SEGMENT seqnum propagation
+ * If the seek was handled upstream, use that SEGMENT seqnum
+ * Use the proper invalid default value
+
+2018-06-06 07:50:21 +0200 Edward Hervey <edward@centricular.com>
+
+ * sys/vdpau/gstvdpsink.c:
+ vdpau: Run gst-indent
+
+2018-06-05 17:01:13 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: fix the filter count in mfxExtVPPDoUse
+ Repostion the mfxExtVPPDoUse enabling code
+ so that it will get the filter algorithm count correctly.
+
+2018-06-05 14:11:13 -0400 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst-libs/gst/webrtc/dtlstransport.h:
+ * gst-libs/gst/webrtc/icetransport.h:
+ webrtc: Fix wrong parent classes for DTLSTransport and ICETransport
+ Those are GObjects not GstBins
+
+2018-06-04 16:35:41 +0800 Lyon Wang <lyon.wang@nxp.com>
+
+ * gst-libs/gst/player/gstplayer.c:
+ player: Fix duration-changed CRITICAL warning if duration did not actually change
+ Check if duration is changed before emitting duration-changed signal
+ https://bugzilla.gnome.org/show_bug.cgi?id=796491
+
+2018-06-01 17:07:19 +1000 Jan Schmidt <jan@centricular.com>
+
+ * sys/dvb/camconditionalaccess.h:
+ dvb: Fix typo in comment termination
+
+2018-06-01 16:37:13 +1000 Alessandro Decina <alessandro.d@gmail.com>
+
+ * sys/dvb/cam.c:
+ * sys/dvb/cam.h:
+ * sys/dvb/camapplication.c:
+ * sys/dvb/camapplication.h:
+ * sys/dvb/camapplicationinfo.c:
+ * sys/dvb/camapplicationinfo.h:
+ * sys/dvb/camconditionalaccess.c:
+ * sys/dvb/camconditionalaccess.h:
+ * sys/dvb/camdevice.c:
+ * sys/dvb/camdevice.h:
+ * sys/dvb/camresourcemanager.c:
+ * sys/dvb/camresourcemanager.h:
+ * sys/dvb/camsession.c:
+ * sys/dvb/camsession.h:
+ * sys/dvb/camswclient.c:
+ * sys/dvb/camswclient.h:
+ * sys/dvb/camtransport.c:
+ * sys/dvb/camtransport.h:
+ * sys/dvb/camutils.c:
+ * sys/dvb/camutils.h:
+ * sys/dvb/dvbbasebin.c:
+ * sys/dvb/dvbbasebin.h:
+ * sys/dvb/gstdvb.c:
+ dvb: update my email address
+
+2018-06-01 16:30:12 +1000 Alessandro Decina <alessandro.d@gmail.com>
+
+ * sys/dvb/camconditionalaccess.c:
+ * sys/dvb/camconditionalaccess.h:
+ dvb: camconditionalaccess: fix wrong license headers
+ Update the license blurb in camconditionalaccess.[hc] from GPL to LGPL.
+ The plugin is LGPL and the GPL header in those two files was just a
+ copy/paste mistake.
+
+2018-06-01 08:20:21 +0200 Edward Hervey <edward@centricular.com>
+
+ * tests/check/libs/.gitignore:
+ gitignore: Add h265parser test
+
+2018-05-31 18:21:58 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * gst-libs/gst/codecparsers/gstmpegvideoparser.c:
+ codecparsers: mpeg2: don't mess the StartCode only packets
+ It is completely legal to have packets with zero sizes.
+ Zero-sized packet indicates header with only Start Code.
+ One eg: is user data packet. The patch allows having
+ GstMpegVideoPacket with zero sizes.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796477
+
+2018-05-30 16:27:37 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: don't use NV12 as vpp default output for DMABuf usecase
+ Using NV12 layout in dmabuf mode giving mis-aligned
+ VPP output with the media-driver. Keep the NV12 support
+ (so that we can file the bug agianst msdk or mediadriver),
+ but lower the ordering so that BGRA picks as default.
+ NV12 issue can be reproduced with explicit capfilter:
+ vidoetestsrc ! msdkvpp ! video/x-raw\(memory:DMABuf\),format=NV12 ! glimagesink
+
+2018-05-30 16:26:27 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ msdk: enc: Add supprot for dmabuf-import
+ MediaSDK requires all the input buffers to be
+ pre-allocated during init phase and this won't work with
+ current design of GStreamer or gst-msdk. But this can be
+ done in future once we have a solution for:
+ https://bugzilla.gnome.org/show_bug.cgi?id=795747
+ There is a workaround possible as per
+ https://github.com/Intel-Media-SDK/MediaSDK/issues/155#issuecomment-381790504
+ by faking the mem-id during MFXInit.
+ This patch enabling it in gst-msdk by replacing the MemID of mfxSurface
+ with dmabuf-backed vasurface dynamically.
+ Important: v4l2 ! msdkenc won't work without a copy because
+ of the GMMLib (https://github.com/intel/gmmlib) memory restrictions.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794817
+
+2018-05-30 16:24:24 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: Add supprot for dmabuf-import
+ MediaSDK requires all the input and output buffers to be
+ pre-allocated during init phase and this won't work with
+ current design of GStreamer or gst-msdk. But this can be
+ done with https://bugzilla.gnome.org/show_bug.cgi?id=795747
+ There is a workaround possible as per
+ https://github.com/Intel-Media-SDK/MediaSDK/issues/155#issuecomment-381790504
+ by faking the mem-id during MFXInit.
+ This patch do this in gst-msdk by replacing the MemID of mfxSurface
+ with dmabuf-backed vasurface dynamically.
+ Important: v4l2 ! msdkvpp won't work without a copy because
+ of the GMMLib (https://github.com/intel/gmmlib) memory restrictions.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794817
+
+2018-05-30 16:23:44 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ * sys/msdk/gstmsdkallocator_libva.h:
+ msdk: Add method to replace internal VASurface of mfxFrameSurface
+ Added a utility method to replace the MemID (interanl VASurfaceID)
+ associated with the mfxFrameSurface. This is usefull for dmabuf-import
+ where we need to replace the memID dynamically
+ https://bugzilla.gnome.org/show_bug.cgi?id=794817
+
+2018-05-30 16:22:49 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ * sys/msdk/gstmsdkallocator_libva.h:
+ msdk: Add method to export dmabuf to VASurface
+ Exporting DRM_PRIME fd to VASurface requires direct
+ invocation of VA api VACreateSurface with
+ VASurfaceAttribExternalBufferDescriptor and other
+ necessary surface attributes.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794817
+
+2018-05-29 13:03:54 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: copy sticky events on our ghostpads
+ This lets users call gst_pad_get_current_caps on newly-added
+ pads to easily determine what to plug them into.
+ We cannot copy sticky events unconditionally in core,
+ see #719437
+ https://bugzilla.gnome.org/show_bug.cgi?id=796387
+
+2017-07-10 16:56:26 +0900 Hosang Lee <hosang10.lee@lge.com>
+
+ * gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+ adaptivedemux: Set connection-speed value as current download rate if set
+ If connection-speed property is in use, this value should be used as the
+ current download rate since subclasses might read it to figure out
+ which playlist variant they will use.
+ https://bugzilla.gnome.org/show_bug.cgi?id=784592
+
+2018-05-28 15:55:57 +0200 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/gstcea708decoder.c:
+ * ext/closedcaption/gstceaccoverlay.c:
+ * ext/closedcaption/misc.h:
+ closedcaption: Fix compilation without debugging
+
+2015-03-11 18:00:08 +0800 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/Makefile.am:
+ * ext/closedcaption/gstcea708decoder.c:
+ * ext/closedcaption/gstcea708decoder.h:
+ * ext/closedcaption/gstceaccoverlay.c:
+ * ext/closedcaption/gstceaccoverlay.h:
+ * ext/closedcaption/gstclosedcaption.c:
+ * ext/closedcaption/meson.build:
+ ceaccoverlay: New CEA-708 Closed Caption decoder and overlayer
+ This new element allows decoding and overlaying CEA-708 Closed Caption
+ streams over video.
+ * Supports CDP and cc_data closedcaption/x-cea-708 streams
+ * Uses pango to render CC stream
+ * Support GstVideoOverlayComposition meta if downstream supports is
+ Tested on various test files.
+ Remains to be fixed/improved:
+ * Switch to GstByteReader (for code safety)
+ * Switch to GString (instead of manual pango string construction)
+ * Move pango/rendering code outside of main 708 decoder file (so
+ that actual CC parser/decoder can be (re)used in other scenarios).
+ Initial patches and improvements by:
+ * CableLabs RUIH-RI Team <ruihri@cablelabs.com>
+ * Steve Maynard <steve@secondstryke.com>
+ * cjun.wang" <cjun.wang@samsung.com>
+ https://bugzilla.gnome.org/show_bug.cgi?id=704881
+
+2018-05-28 14:16:48 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/closedcaption/meson.build:
+ closedcaption: fix meson build
+
+2018-03-19 10:56:31 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/Makefile.am:
+ * ext/closedcaption/gstclosedcaption.c:
+ * ext/closedcaption/gstline21dec.c:
+ * ext/closedcaption/gstline21dec.h:
+ closedcaption: Add new "line 21 VBI" CC decoder
+ Allows detecting and extracting CEA608 closed caption present on
+ the VBI of analog NTSC SD signals.
+
+2018-03-19 10:55:06 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/decoder.c:
+ * ext/closedcaption/decoder.h:
+ * ext/closedcaption/misc.h:
+ closedcaption: zvbi: Add gst-debug category to zvbi code
+ And adapt their logging system to go through it
+
+2018-03-19 10:53:52 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/decoder.c:
+ * ext/closedcaption/decoder.h:
+ closedcaption: zvbi: Disable unused legacy bit slicer
+ The code only uses the new 'optimized' bit slicer
+
+2018-03-19 10:52:08 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/raw_decoder.c:
+ closedcaption: zvbi: Enforce strict line21 CC detection
+ zvbi switched to a lot more flexible CC detection in VBI.
+ The problem is that it returns a *lot* of non-VBI lines as containing
+ CC which isn't the case.
+
+2018-03-22 15:35:45 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/misc.h:
+ closedcaption: zvbi: Comment out bogus redefinition
+ All this code should be converted to glib eventually, but for now
+ just comment out a function which isn't even used
+
+2018-03-20 09:01:25 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/bit_slicer.c:
+ closedcaption: zvbi: Remove dead code
+ * RGB8 is never used
+ * some inline functions were never used
+
+2018-03-15 07:07:16 +0100 Edward Hervey <edward@centricular.com>
+
+ * ext/closedcaption/Makefile.am:
+ * ext/closedcaption/bcd.h:
+ * ext/closedcaption/bit_slicer.c:
+ * ext/closedcaption/bit_slicer.h:
+ * ext/closedcaption/decoder.c:
+ * ext/closedcaption/decoder.h:
+ * ext/closedcaption/macros.h:
+ * ext/closedcaption/misc.h:
+ * ext/closedcaption/raw_decoder.c:
+ * ext/closedcaption/raw_decoder.h:
+ * ext/closedcaption/sampling_par.c:
+ * ext/closedcaption/sampling_par.h:
+ * ext/closedcaption/sliced.h:
+ closedcaption: Include zvbi raw vbi decoder code
+ Current code from zapping/zvbi as of 2018-03-14. Files copied
+ are all LGPL v2+.
+ Changes from original zvbi code:
+ * Switch to gst-debug logging system
+ * Use glib for endianness detection
+ * Fix compilation warnings
+
+2018-05-28 11:09:45 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/closedcaption/meson.build:
+ * ext/meson.build:
+ closedcaption: add meson build files
+
+2018-03-08 15:22:47 +0100 Edward Hervey <edward@centricular.com>
+
+ * configure.ac:
+ * ext/Makefile.am:
+ * ext/closedcaption/Makefile.am:
+ * ext/closedcaption/gstccextractor.c:
+ * ext/closedcaption/gstccextractor.h:
+ * ext/closedcaption/gstclosedcaption.c:
+ ext: New ccextractor element
+ Allows extracting GstVideoCaptionMeta from a stream and outputs
+ it to a standalone stream.
+ Part of a new 'ext' closedcaption plugin, since more features are
+ going to be added, which will depend on external dependencies such
+ as pango.
+
+2018-05-27 20:34:50 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ webrtcbin: rtpstorage takes a 64-bit integer for "size-time" property
+ https://bugzilla.gnome.org/show_bug.cgi?id=796429
+
+2018-05-25 19:49:34 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/directfb/Makefile.am:
+ * tests/examples/directfb/Makefile.am:
+ directfb: don't error out for warnings in system headers
+ On debian system headers trigger compiler warnings like these,
+ don't error out on them:
+ /usr/include/directfb/direct/os/linux/glibc/waitqueue.h:95:1: note: previous definition of ‘direct_waitqueue_signal’ was here
+
+2018-05-28 10:59:01 +0200 Edward Hervey <edward@centricular.com>
+
+ * .gitignore:
+ gitignore: Add new webrtc example
+
+2018-05-23 21:15:09 +0200 Christoph Reiter <reiter.christoph@gmail.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ wasapisink: recover from low buffer levels in shared mode
+ In case the wasapi buffer levels got low in shared mode we would still wait until
+ more buffer is available until writing something in it, which means we could never
+ catch up and recover.
+ Instead only wait for a new buffer in case the existing one is full and always write
+ what we can. Also don't loop until all data is written since the base class can handle
+ that for us and under normal circumstances this doesn't happen anyway.
+ This only works in shared mode, as in exclusive mode we have to exactly
+ fill the buffer and always have to wait first.
+ This fixes noisy (buffer underrun) playback with the wasapisink under load.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796354
+
+2018-05-24 11:04:08 +0200 Christoph Reiter <reiter.christoph@gmail.com>
+
+ * sys/wasapi/gstwasapiutil.c:
+ wasapisink: fix a rounding error when calculating the buffer frame count
+ The calculation for the frame count in the non-aligned case resulted in
+ a one too low buffer frame count.
+ This resulted in:
+ 1) exclusive mode not working as the frame count has to match
+ exactly there.
+ 2) Buffer underruns in shared mode as the current write() code doesn't
+ handle catching up to low buffer levels (fixed in the next commit)
+ To fix just use the wasapi API to get the buffer size which will always
+ be correct.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796354
+
+2018-05-23 21:10:00 +0200 Christoph Reiter <reiter.christoph@gmail.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ wasapisink: fix missing unlock in case IAudioClient_Start fails
+ https://bugzilla.gnome.org/show_bug.cgi?id=796354
+
+2018-05-22 22:58:22 +0200 Christoph Reiter <reiter.christoph@gmail.com>
+
+ * sys/wasapi/gstwasapiutil.h:
+ wasapi: use FAILED to detect errors
+ S_FALSE is a valid return value which does not indicate an error.
+ For example IAudioClient_Stop() returns S_FALSE when it is already stopped.
+ Use the FAILED macro instead which just checks if an error occured or not.
+ This fixes spurious warnings when using the wasapisink element.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796280
+
+2018-05-22 22:12:34 +0200 Christoph Reiter <reiter.christoph@gmail.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ wasapi: Don't pass CoTaskMemFree to g_clear_pointer
+ CoTaskMemFree has a different calling convention than GDestroyNotify
+ and things crash at least with MinGW.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796280
+
+2018-05-21 14:42:56 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/webrtc/meson.build:
+ meson: fix libnice fallback options
+
+2018-05-21 12:07:04 +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-19 12:24:40 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/webrtc/meson.build:
+ webrtc: add some default options for libnice fallback
+ The tests are not very reliable, so disable for now.
+
+2018-05-18 18:42:43 +0100 Russel Winder <russel@winder.org.uk>
+
+ * gst-libs/gst/mpegts/gst-dvb-descriptor.c:
+ * gst-libs/gst/mpegts/gstmpegtsdescriptor.c:
+ * gst-libs/gst/mpegts/gstmpegtssection.c:
+ mpegts: Add GIR generation array anotations
+ For function parameters that are known to be arrays.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796221
+
+2018-05-19 11:03:08 +0200 Edward Hervey <edward@centricular.com>
+
+ * sys/dvb/camswclient.c:
+ dvb: Fix string copy wiht strlen() argument
+ This is a new warning introduced by gcc 8
+ We already check just before that we have enough space, just do a regular
+ memcpy with the full string size.
+ camswclient.c:87:3: error: ‘strncpy’ specified bound depends on the length of the source argument [-Werror=stringop-overflow=]
+
+2014-04-18 10:38:47 +0200 Antoine Jacoutot <ajacoutot@gnome.org>
+
+ * gst-libs/gst/insertbin/Makefile.am:
+ * gst-libs/gst/mpegts/Makefile.am:
+ libs: g-ir-scanner: do not hardcode libtool path
+ https://bugzilla.gnome.org/show_bug.cgi?id=726571
+
+2018-05-17 21:36:51 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * configure.ac:
+ nvdec/nvenc: Bump up supported CUDA Toolkit version
+ Add CUDA 9.2 to configure.ac
+ https://bugzilla.gnome.org/show_bug.cgi?id=796202
+
+2018-05-17 21:49:25 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/nvenc/gstnvenc.c:
+ nvenc: Fix build warning error
+ 'cuDeviceComputeCapability' was deprecated as of CUDA 5.0
+ gstnvenc.c: In function ‘gst_nvenc_create_cuda_context’:
+ gstnvenc.c:290:9: error: ‘cuDeviceComputeCapability’ is deprecated [-Werror=deprecated-declarations]
+ && cuDeviceComputeCapability (&maj, &min, cdev) == CUDA_SUCCESS) {
+ ^
+ https://bugzilla.gnome.org/show_bug.cgi?id=796203
+
+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-05-15 16:33:00 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * configure.ac:
+ * sys/msdk/Makefile.am:
+ * sys/msdk/gstmsdk.c:
+ * sys/msdk/gstmsdkvp9dec.c:
+ msdk: Add conditional build for vp9 decoder
+ https://bugzilla.gnome.org/show_bug.cgi?id=796119
+
+2018-05-15 16:32:22 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/Makefile.am:
+ * sys/msdk/gstmsdk.c:
+ * sys/msdk/gstmsdkvp9dec.c:
+ * sys/msdk/gstmsdkvp9dec.h:
+ msdk: dec: Add VP9 decoder
+ https://bugzilla.gnome.org/show_bug.cgi?id=796119
+
+2018-05-15 16:31:02 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * configure.ac:
+ * sys/msdk/gstmsdkh265dec.c:
+ * sys/msdk/gstmsdkh265enc.c:
+ * sys/msdk/gstmsdkmjpegdec.c:
+ * sys/msdk/gstmsdkmjpegenc.c:
+ * sys/msdk/gstmsdkvp8dec.c:
+ * sys/msdk/gstmsdkvp8enc.c:
+ * sys/msdk/msdk.h:
+ * sys/msdk/msdk_libva.h:
+ msdk: allow building against open sourced msdk
+ Building against mfx_dispatcher is used to search for
+ headers in PREFIX/include/mfx/ only (commit: 62f04e801bd7e247102ac67df889bee33ab74ff7),
+ but it is just PREFIX/include with open source msdk version.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796118
+
+2018-05-11 15:49:05 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * ext/dash/gstdashdemux.c:
+ dashdemux: Fix sync of updated manifest from previous one
+ _get_next_fragment_timestamp() returns relative timestamp to period start.
+ But gst_mpd_client_stream_seek() uses absolute MPD timeline.
+ https://bugzilla.gnome.org/show_bug.cgi?id=781183
+
+2018-05-10 23:08:10 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+ adaptivedemux: Support period change in live playlist
+ Regardless of LIVE or VOD, "a manifest has next period but
+ currently EOSed" state is meaning that it's time to advance period.
+ Previous behavior of adpativedemux, however, was able to period
+ advancing only for VOD case, since the adaptivedemux tried to
+ update and wait new manifest without respecting existence of the next period.
+ https://bugzilla.gnome.org/show_bug.cgi?id=781183
+
+2018-05-11 20:54:35 +0200 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/srtp/gstsrtpdec.c:
+ srtp: Add "roc" caps field to the gst-launch example
+ The currrent example was broken since 1.8.3 it seems.
+ https://bugzilla.gnome.org/show_bug.cgi?id=786304
+
+2018-05-11 17:39:35 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ decklink: Fix crash with closed-captions signal and 10-bit input
+ Only free the parser if there is one. If the format hadn't changed but
+ had always been 10-bit, there might genuinely be no parser.
+ https://bugzilla.gnome.org/show_bug.cgi?id=796030
+
+2018-05-11 12:30:35 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
+
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ decklinkvideosrc: Don't check for closed captions when there's no signal
+ Otherwise the gst_decklink_video_format_from_type() call spams the logs
+ with one "Unknown pixel format 0x0" line per frame.
+
+2018-05-11 09:54:22 +0200 Edward Hervey <edward@centricular.com>
+
+ * ext/opencv/gstgrabcut.cpp:
+ opencv: Fix memcpy within C++
+ Explicitly cast to void* because GCC 8 is (rightfully) upset that this is
+ "writing to an object of type ‘...’ with no trivial copy-assignment".
+ Caused by the new "class-memaccess" warning
+
+2017-11-29 17:57:52 +0100 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/webrtc/gstwebrtcbin.c:
+ * ext/webrtc/gstwebrtcbin.h:
+ * ext/webrtc/webrtctransceiver.c:
+ * ext/webrtc/webrtctransceiver.h:
+ * gst-libs/gst/webrtc/webrtc_fwd.h:
+ * tests/check/elements/webrtcbin.c:
+ * tests/examples/webrtc/Makefile.am:
+ * tests/examples/webrtc/meson.build:
+ * tests/examples/webrtc/webrtctransceiver.c:
+ webrtcbin: implement support for FEC and RTX
+ https://bugzilla.gnome.org/show_bug.cgi?id=795044
+
+2018-05-07 14:12:10 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkdec.h:
+ * sys/msdk/msdk-enums.c:
+ * sys/msdk/msdk-enums.h:
+ msdk:dec: Add new propery to dump frames in decoded order
+ The new property "output-order" can be set to either "display" order
+ which is the default where frames will be outputting in display order,
+ or "decoded-order" which will be outputting the frames in decoded order.
+ The "decoded order" output is generally useful for debugging. But there
+ are few
+ customers who use it for low-latency streaming. For eg if the customer
+ already knows that the stream doesn't have b-frames (which means no
+ algorithm requires for display order calculation), then they can use
+ "decoded-order"
+ output to skip some of the DPB logic to avoid the frame accumulation at
+ start-up.
+ The root cause of the above issue is a bit of unclarity in h264 spec +
+ lazy implementation of many H264 encoders; This is well handled in
+ gstreamer-vaapi using "low-latency" property:
+ https://bugzilla.gnome.org/show_bug.cgi?id=762509
+ https://bugzilla.gnome.org/show_bug.cgi?id=795783
+
+2018-05-07 14:11:34 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdk: dec: inform msdk if the buffer contains a complete frame
+ For packetized input, inform the msdk that the buffer has
+ a complete frame or complementary field pairs. For decoding,
+ this means that the decoder can proceed with this buffer without
+ waiting for the start of the next frame, which effectively reduces
+ decoding latency.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795783
+
+2018-05-07 14:11:14 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdk: dec: reset async depth to one
+ Currently we use an async depth of 4 as default (based on
+ recommendations
+ in msdk apps), which indicates how many asynchronous operations an
+ application performs
+ before the application explicitly synchronizes the result. As a result,
+ we
+ queue four frames in decoder which might not be good approach for
+ live streaming.
+ This patch reset the async-depth to 1 as default so that we do sync for
+ each frame we decode without queuing. Customer can play with already
+ exposed "async-depth" property for other use cases
+ https://bugzilla.gnome.org/show_bug.cgi?id=795783
+
+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 19:18:26 +0200 Kyrylo Polezhaiev <kirushyk@gmail.com>
+
+ * gst/gdp/dataprotocol.c:
+ * gst/gdp/gstgdppay.c:
+ gdp: ignore timestamp of event
+ This field is not used and will be removed in 2.0 API.
+ https://bugzilla.gnome.org/show_bug.cgi?id=761462
+
+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
+
+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:
+ * ext/iqa/iqa.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.
+
+2017-02-23 11:48:13 +0100 Fabien Dessenne <fabien.dessenne@st.com>
+
+ * ext/wayland/gstwaylandsink.c:
+ * ext/wayland/gstwaylandsink.h:
+ * ext/wayland/wlwindow.c:
+ * ext/wayland/wlwindow.h:
+ waylandsink: support fullscreen
+ Add the fullscreen property that makes the sink displayed all across
+ the output.
+ https://bugzilla.gnome.org/show_bug.cgi?id=688190
+
+2018-05-05 17:55:58 +0200 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-bad-plugins.args:
+ * docs/plugins/gst-plugins-bad-plugins.hierarchy:
+ * docs/plugins/gst-plugins-bad-plugins.interfaces:
+ * docs/plugins/inspect/plugin-debugutilsbad.xml:
+ * docs/plugins/inspect/plugin-kms.xml:
+ docs: plugins: update
+
+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]
+
+2018-05-05 19:30:42 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * meson.build:
+ * meson_options.txt:
+ * tests/check/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.
+
+2018-05-05 14:32:59 +0000 Jan Schmidt <jan@centricular.com>
+
+ * configure.ac:
+ * tests/examples/Makefile.am:
+ waylandsink: Only build if gtk-3.0 was built with wayland target
+ Check in configure if the gtk-3.0 has wayland support, and don't
+ build the waylandsink example if it doesn't.
+
+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:
+ * ext/iqa/iqa.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-05-05 18:48:13 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/webrtc/meson.build:
+ meson: Add a subproject fallback for libnice in webrtc
+
+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-05 14:37:06 +0900 Seungha Yang <seungha.yang@navercorp.com>
+
+ * sys/nvdec/gstnvdec.c:
+ nvdec: Add support VP8/VP9 decoding
+ NVIDIA video decoder supports VP8 and VP9 decoding
+ https://bugzilla.gnome.org/show_bug.cgi?id=795823
+
+2018-05-05 01:59:53 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/srtp/gstsrtpenc.c:
+ srtpenc: Handle session object disappearing
+ During element shutdown, the srtp encryption session
+ object can be cleaned up. In that case, return GST_FLOW_FLUSHING
+ from the chain function. Also properly return GST_FLOW_ERROR
+ upstream during actual errors.
+ https://bugzilla.gnome.org/show_bug.cgi?id=790508
+
+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:
+ * tests/examples/playout.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/Makefile.am:
+ * gst-libs/gst/video/gstvideoaggregator.c:
+ * gst-libs/gst/video/gstvideoaggregator.h:
+ * gst-libs/gst/video/gstvideoaggregatorpad.h:
+ * gst-libs/gst/video/meson.build:
+ videoaggregator: Get rid of separate header for the aggregator pad
+
+2015-03-16 16:20:44 +0100 Aurélien Zanelli <aurelien.zanelli@parrot.com>
+
+ * gst/mpegtsdemux/tsdemux.c:
+ tsdemux: ignore sparse stream when checking for initial timestamp
+ Unless we only have sparse streams. In this case we will consider them.
+ It fixes a bug happening when first observed timestamp comes from a
+ sparse stream and other streams don't have a valid timestamp, yet. Thus
+ leading the timestamp from sparse stream to be the start of the
+ following segment. In this case, if the timestamp is really bigger than
+ non-sparse stream (audio/video), it will lead the pipeline to clip
+ samples from the non-parse stream.
+ https://bugzilla.gnome.org/show_bug.cgi?id=744469
+
+2018-05-04 22:24:18 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/resindvd/resindvdsrc.c:
+ resindvsrc: Don't use the GST_EVENT_TIMESTAMP
+ Store a PTS of a highlight event directly into the event structure,
+ rather than the GST_EVENT_TIMESTAMP that will probably be removed
+ in GStreamer 2.0, and is hardly used.
+ https://bugzilla.gnome.org/show_bug.cgi?id=761477
+
+2014-10-27 09:41:51 +0530 Vineeth T M <vineeth.tm@samsung.com>
+
+ * gst/videofilters/gstscenechange.c:
+ scenechange: improve detection algorithm
+ Scene detection determines, how many scenes have changed in a video.
+ It compared the previous frame with present frame to find out the score and a
+ threshold is calculated for the same.
+ I have added an intermediate condition which helps in improving the positive
+ detections.
+ https://bugzilla.gnome.org/show_bug.cgi?id=735094
+
+2018-05-02 14:52:24 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdkenc.h:
+ msdk: enc: Add dmabuf-export support
+ Current implementation is only supporting dmabuf-export
+ through DMABufCapsfeatures.
+ MSDK dmabuf fds are not mappable and dmabuf-import
+ is not yet supported too (#794817).
+ https://bugzilla.gnome.org/show_bug.cgi?id=795707
+
+2018-04-30 12:40:32 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ msdkvpp: Disable passthrough if memory capsfeature changes
+ So far msdk produced dmabuf fds are non-mappable.
+ If user wants to download the content of underlined surfaces,
+ dmabufcapsfeature negotiated pipeline will fail. So if the input surface
+ is dmabuf and downstream doesn't have support for dmabuf capsfeatures,
+ we do the vpp (no passthrough) and produce the mappable videomemory
+ buffers.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794946
+
+2018-04-30 12:39:52 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ msdk: vpp: Add dmabuf-export support
+ Currenly, the dmabuf buffer pool can be negotiated
+ only through DMABuf capsfeatures.
+ This will not allow to negotiate dmabuf support with
+ v4l2src (v4l2src ! msdkvpp) where v4l2src always export
+ the dmabuf based memory with out using the DMABuf capsfeatures.
+ So it requires fix based on:
+ https://bugzilla.gnome.org/show_bug.cgi?id=794817
+ https://bugzilla.gnome.org/show_bug.cgi?id=794946
+
+2018-04-28 01:15:44 +1000 Jan Schmidt <jan@centricular.com>
+
+ * sys/nvdec/gstnvdec.c:
+ nvdec: Add colorimetry info to the caps
+ Output any colorimetry information extracted from the stream
+ into the caps.
+
+2018-04-27 14:41:14 +1000 Jan Schmidt <jan@centricular.com>
+
+ * sys/nvdec/gstnvdec.c:
+ nvdec: Use gst_video_info_to_caps to build caps.
+ Don't build caps directly, as that won't add any GstVideoInfo
+ newer fields (such as colorimetry) automatically.
+
+2018-03-08 20:23:05 +0000 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmsutils.c:
+ kmssink: Add 24bit RGB support
+ https://bugzilla.gnome.org/show_bug.cgi?id=794186
+
+2018-04-25 12:26:43 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: Add YV12, YUY2 and BGRx formats to template
+
+2018-04-24 16:46:20 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/msdk.c:
+ msdk: Add more video format mapping
+ BGRx format can be supported with Msdk's RGB4
+
+2018-04-24 16:45:24 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ msdk: vpp: Allocation query fixes
+ prpose_allocation:
+ -- always instantiate a pool for for upstream
+ -- use async_depth + 1 as min buffer count
+ decide_allocation:
+ -- always create a new bufferpool for source pad.
+ Each of the msdk element has to create it's own mfxsurfacepool
+ which is an msdk contraint. For eg: Each Msdk component (vpp, dec and
+ enc)
+ will invoke the external Frame allocator for video-memory usage
+ So sharing the pool between gst-msdk elements might not be a good idea.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-04-25 15:05:38 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst/librfb/gstrfbsrc.c:
+ rfbsrc: Fix decide_allocation to support NULL pool
+ We were assuming that NULL pool meant that downstream didn't reply.
+ Update the pool index 0 instead of adding at the end. Otherwise we ended
+ up letting basesrc decide, which would pick the blocksize as a size
+ (4096) instead of the image size.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795327
+
+2018-04-25 13:36:01 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * gst/librfb/rfbdecoder.c:
+ rfbsrc: Fix support for applevncserver
+ This server uses an unknown 003.889 protocol version. This patch fixes
+ the version validation in order to simply fallback to 3.3 as suggested
+ by the spec.
+
+2018-04-24 14:05:30 -0400 Xavier Claessens <xavier.claessens@collabora.com>
+
+ * ext/aom/meson.build:
+ * ext/assrender/meson.build:
+ * ext/bs2b/meson.build:
+ * ext/bz2/meson.build:
+ * ext/chromaprint/meson.build:
+ * ext/curl/meson.build:
+ * ext/dash/meson.build:
+ * ext/directfb/meson.build:
+ * ext/dtls/meson.build:
+ * ext/dts/meson.build:
+ * ext/faac/meson.build:
+ * ext/faad/meson.build:
+ * ext/fdkaac/meson.build:
+ * ext/flite/meson.build:
+ * ext/fluidsynth/meson.build:
+ * ext/gl/meson.build:
+ * ext/gsm/meson.build:
+ * ext/hls/meson.build:
+ * ext/iqa/meson.build:
+ * ext/kate/meson.build:
+ * ext/ladspa/meson.build:
+ * ext/libde265/meson.build:
+ * ext/libmms/meson.build:
+ * ext/lv2/meson.build:
+ * ext/mpeg2enc/meson.build:
+ * ext/mplex/meson.build:
+ * ext/opencv/meson.build:
+ * ext/openh264/meson.build:
+ * ext/openjpeg/meson.build:
+ * ext/opus/meson.build:
+ * ext/resindvd/meson.build:
+ * ext/rsvg/meson.build:
+ * ext/rtmp/meson.build:
+ * ext/sbc/meson.build:
+ * ext/smoothstreaming/meson.build:
+ * ext/soundtouch/meson.build:
+ * ext/spandsp/meson.build:
+ * ext/srt/meson.build:
+ * ext/srtp/meson.build:
+ * ext/ttml/meson.build:
+ * ext/voaacenc/meson.build:
+ * ext/vulkan/meson.build:
+ * ext/wayland/meson.build:
+ * ext/webp/meson.build:
+ * ext/webrtcdsp/meson.build:
+ * ext/x265/meson.build:
+ * ext/zbar/meson.build:
+ * gst/accurip/meson.build:
+ * gst/adpcmdec/meson.build:
+ * gst/adpcmenc/meson.build:
+ * gst/aiff/meson.build:
+ * gst/asfmux/meson.build:
+ * gst/audiobuffersplit/meson.build:
+ * gst/audiofxbad/meson.build:
+ * gst/audiolatency/meson.build:
+ * gst/audiomixmatrix/meson.build:
+ * gst/audiovisualizers/meson.build:
+ * gst/autoconvert/meson.build:
+ * gst/bayer/meson.build:
+ * gst/camerabin2/meson.build:
+ * gst/coloreffects/meson.build:
+ * gst/compositor/meson.build:
+ * gst/debugutils/meson.build:
+ * gst/dvbsuboverlay/meson.build:
+ * gst/dvdspu/meson.build:
+ * gst/faceoverlay/meson.build:
+ * gst/festival/meson.build:
+ * gst/fieldanalysis/meson.build:
+ * gst/freeverb/meson.build:
+ * gst/frei0r/meson.build:
+ * gst/gaudieffects/meson.build:
+ * gst/gdp/meson.build:
+ * gst/geometrictransform/meson.build:
+ * gst/id3tag/meson.build:
+ * gst/inter/meson.build:
+ * gst/interlace/meson.build:
+ * gst/ivfparse/meson.build:
+ * gst/ivtc/meson.build:
+ * gst/jp2kdecimator/meson.build:
+ * gst/jpegformat/meson.build:
+ * gst/librfb/meson.build:
+ * gst/midi/meson.build:
+ * gst/mpegdemux/meson.build:
+ * gst/mpegpsmux/meson.build:
+ * gst/mpegtsdemux/meson.build:
+ * gst/mpegtsmux/meson.build:
+ * gst/mxf/meson.build:
+ * gst/netsim/meson.build:
+ * gst/onvif/meson.build:
+ * gst/pcapparse/meson.build:
+ * gst/pnm/meson.build:
+ * gst/proxy/meson.build:
+ * gst/rawparse/meson.build:
+ * gst/removesilence/meson.build:
+ * gst/sdp/meson.build:
+ * gst/segmentclip/meson.build:
+ * gst/siren/meson.build:
+ * gst/smooth/meson.build:
+ * gst/speed/meson.build:
+ * gst/stereo/meson.build:
+ * gst/subenc/meson.build:
+ * gst/timecode/meson.build:
+ * gst/videofilters/meson.build:
+ * gst/videoframe_audiolevel/meson.build:
+ * gst/videoparsers/meson.build:
+ * gst/videosignal/meson.build:
+ * gst/vmnc/meson.build:
+ * gst/y4m/meson.build:
+ * gst/yadif/meson.build:
+ * meson.build:
+ * sys/bluez/meson.build:
+ * sys/d3dvideosink/meson.build:
+ * sys/decklink/meson.build:
+ * sys/directsound/meson.build:
+ * sys/dvb/meson.build:
+ * sys/fbdev/meson.build:
+ * sys/ipcpipeline/meson.build:
+ * sys/kms/meson.build:
+ * sys/msdk/meson.build:
+ * sys/shm/meson.build:
+ * sys/uvch264/meson.build:
+ * sys/wasapi/meson.build:
+ * sys/winks/meson.build:
+ * sys/winscreencap/meson.build:
+ Meson: Generate pc file for all plugins in bad
+ https://bugzilla.gnome.org/show_bug.cgi?id=794568
+
+2018-04-25 11:00:00 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ meson: use -Wl,-Bsymbolic-functions where supported
+ Just like the autotools build.
+
+2018-03-06 15:18:46 +0100 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst-libs/gst/codecparsers/gsth264parser.h:
+ * gst/videoparsers/gsth264parse.c:
+ h264parse: add constrained and progressive profiles
+ Those profiles have been added in the version 2012-01
+ and 2011-06 of the AVC spec.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794127
+
+2018-02-27 10:51:07 +0800 Jun Xie <jun.xie@samsung.com>
+
+ * ext/curl/gstcurlhttpsrc.c:
+ curlhttpsrc: deadlock in multi-instance scenario
+ Fixed queue iterator issue and set context state to
+ GSTCURL_MULTI_LOOP_STATE_RUNNING in case other
+ instance are in running state.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793863
+
+2018-04-25 02:43:26 +1000 Jan Schmidt <jan@centricular.com>
+
+ * sys/nvenc/gstnvh264enc.c:
+ * sys/nvenc/gstnvh265enc.c:
+ nvenc: Remove GST_USE_UNSTABLE_API defines
+ GstGL is no longer unstable API since moving to -base
+
+2018-04-25 02:25:16 +1000 Jan Schmidt <jan@centricular.com>
+
+ * configure.ac:
+ configure: Fix nvenc GL check
+ Make the nvenc OpenGL usage rely on the the same condition
+ that the automake USE_OPENGL conditional checks, as the
+ USE_OPENGL doesn't actually get set into the configure script,
+ so it can't check that
+
+2018-04-25 02:42:43 +1000 Jan Schmidt <jan@centricular.com>
+
+ * sys/nvenc/gstnvh264enc.c:
+ * sys/nvenc/gstnvh265enc.c:
+ nvenc: Use the HAVE_NVENC_GST_GL define instead of HAVE_GST_GL
+ Fix compiling against the GL interop by gating includes
+ on the right header
+
+2018-04-06 23:22:26 +0900 Seungha Yang <pudding8757@gmail.com>
+
+ * sys/nvenc/Makefile.am:
+ * sys/nvenc/gstnvenc.c:
+ * sys/nvenc/gstnvh265enc.c:
+ * sys/nvenc/gstnvh265enc.h:
+ nvh265enc: Add Nvidia GPU based HEVC encoder
+ https://bugzilla.gnome.org/show_bug.cgi?id=795037
+
+2018-04-07 00:05:46 +0900 Seungha Yang <pudding8757@gmail.com>
+
+ * sys/nvenc/gstnvbaseenc.c:
+ * sys/nvenc/gstnvh264enc.c:
+ nvencbase: Define sinkpad template in subclass
+ https://bugzilla.gnome.org/show_bug.cgi?id=795037
+
+2018-04-06 23:49:12 +0900 Seungha Yang <pudding8757@gmail.com>
+
+ * sys/nvenc/gstnvbaseenc.c:
+ * sys/nvenc/gstnvenc.c:
+ * sys/nvenc/gstnvenc.h:
+ * sys/nvenc/gstnvh264enc.c:
+ nvenc: Add debug catagory for nvh264enc
+ https://bugzilla.gnome.org/show_bug.cgi?id=795037
+
+2014-05-29 16:54:59 +0200 Stefan Ringel <linuxtv@stefanringel.de>
+
+ * docs/libs/gst-plugins-bad-libs.types:
+ * gst-libs/gst/mpegts/gst-atsc-section.h:
+ docs: mpegts: add atsc docs
+ https://bugzilla.gnome.org/show_bug.cgi?id=730940
+
+2018-03-09 12:23:04 +0100 Edward Hervey <bilboed@bilboed.com>
+
+ * sys/decklink/gstdecklink.cpp:
+ * sys/decklink/gstdecklink.h:
+ * sys/decklink/gstdecklinkvideosrc.cpp:
+ * sys/decklink/gstdecklinkvideosrc.h:
+ decklinkvideosrc: Add support for extracting Closed Caption
+ If the "output-cc" property is set to TRUE and there is CC present
+ in the VBI Ancillary Data, they will be extracted and set on the
+ outgoing buffer as GstVideoCaptionMeta.
+ Only CDP packets are supported.
+ https://bugzilla.gnome.org/show_bug.cgi?id=773863
+
+2018-04-22 18:28:13 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * configure.ac:
+ configure: look for right version of plugins, not >= 0.11
+ Well, just look for same version as we require for -base
+ which should be good enough. Also use plugins base req
+ for -base libs.
+
+2018-04-22 18:27:37 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/dash/gstmpdparser.c:
+ * ext/dts/gstdtsdec.c:
+ * ext/faad/gstfaad.c:
+ * gst/freeverb/gstfreeverb.c:
+ * sys/applemedia/vtdec.c:
+ * sys/winks/gstksvideodevice.c:
+ * sys/winscreencap/gstdx9screencapsrc.c:
+ Fix code indentation
+
+2018-04-22 18:25:34 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/winscreencap/gstdx9screencapsrc.c:
+ dx9screenscapsrc: consolidate UNLOCK
+
+2018-04-21 11:03:54 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/debugutils/gsttestsrcbin.c:
+ testsrcbin: typo fixes
+
+2018-04-21 11:00:58 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/debugutils/gsttestsrcbin.c:
+ testsrcbin: fix bug setting stream flags
+ We would mark all streams with FLAG_UNSELECT as we would check
+ the pointer for non-NULLness not the dereferenced stream number
+ (and the pointer is always non-NULL). The intention here was
+ presumably to mark the first stream of each type as SELECT and
+ the others as UNSELECT by default.
+ CID 1434970.
+
+2018-04-21 10:51:03 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/debugutils/gsttestsrcbin.c:
+ testsrcbin: fix memory leak
+ CID 1434971
+
+2018-04-20 21:51:34 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * ext/iqa/iqa.c:
+ * ext/iqa/iqa.h:
+ dssim: Add a dssim-error-threshold property
+ If that threshold is reached, `iqa` will emit an ERROR message on the
+ bus, stopping any processing.
+ This way we can do a simpler comparison with gst-validate and the
+ process will error out if the specified threshold is reached.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795428
+
+2018-04-20 11:46:07 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/fbdev/meson.build:
+ meson: fbdev: fix 'invalid keyword argument' meson warnings
+ Required is not a valid kwarg for cc.has_header()
+
+2018-04-19 20:58:55 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * gst/debugutils/gsttestsrcbin.c:
+ testsrcbin: Do not use G_DECLARE_ as it requires GLib 2.44
+ Fixes https://bugzilla.gnome.org/show_bug.cgi?id=795382
+
+2018-04-18 15:53:34 -0300 Thibault Saunier <tsaunier@igalia.com>
+
+ * docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+ * docs/plugins/gst-plugins-bad-plugins-sections.txt:
+ * gst/debugutils/Makefile.am:
+ * gst/debugutils/debugutilsbad.c:
+ * gst/debugutils/gsttestsrcbin.c:
+ * gst/debugutils/meson.build:
+ debugutils: Add a testsrcbin element
+ This is a simple Bin that will expose audiotestsrc or videotestsrc
+ based on what is asked by the user either through the GstURIHandler
+ API or through the "stream-types" property.
+ This element also provides GstStream and GstStreamCollection
+ so it is nicely usable from playbin3.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795366
+
+2018-04-18 03:43:57 -0700 Devarsh Thakkar <devarsht@xilinx.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Add new entry for Xilinx DRM Driver
+ This adds entry for new DRM driver from xilinx
+ called "xlnx" which supports atomic modesetting.
+ We have kept entry for older DRM driver "xilinx_drm"
+ for backward compatility with a note describing
+ deprecation.
+ Signed-off-by: Devarsh Thakkar <devarsht@xilinx.com>
+ https://bugzilla.gnome.org/show_bug.cgi?id=795228
+
+2018-04-18 15:03:19 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisrc.c:
+ wasapisrc: Don't provide a clock based on WASAPI's clock
+ The clock seems to have a lot of drift (or we're using it incorrectly)
+ which causes buffers to be late on the sink and get dropped.
+ Disable till someone can investigate whether our usage of the API is
+ incorrect (it looked correct to me) or if something is wrong.
+
+2018-03-22 10:18:57 +0200 Snir Sheriber <ssheribe@redhat.com>
+
+ * configure.ac:
+ * sys/nvdec/Makefile.am:
+ * sys/nvdec/dynlink_cuda.c:
+ * sys/nvdec/dynlink_nvcuvid.c:
+ * sys/nvdec/gstnvdec.c:
+ * sys/nvdec/gstnvdec.h:
+ nvdec/nvenc: Support CUDA Toolkit 9
+ Since cuda-tools 9.0, nvcuvid.h is replaced by dynlink_nvcuvid.h.
+ This patch changes nvdec to use run-time dynamic linking if
+ cuda-tools version >= 9.
+ nvenc does not require any change since its necessary headers are
+ still available.
+ https://bugzilla.gnome.org/show_bug.cgi?id=791724
+
+2018-04-16 14:37:21 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkmjpegdec.c:
+ msdk: jpegdec: Fix non-interleaved sample decode
+ Using the default value (InterleavedDec == MFX_SCANTYPE_UNKNOWN)
+ causing issues with non-interleaved sample decode. Ideally the usage
+ of MFXVideoDECODE_DecodeHeader should fix these type of issue, but
+ it seems to be not. But hardcoding the InterleaveDec to
+ MFX_SCANTYPE_NONINTERLEAVED
+ is fixing the problem and fortunately msdk seems to be taking care of
+ Interleaved samples
+ too .So let's hardcode it for now.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793787
+
+2018-04-16 14:00:39 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * gst/jpegformat/gstjpegparse.c:
+ jpegparse: Fix APP1 marker segment parsing
+ Reposition the bytereader for proper skipping of
+ APP1 marker segment if it is not Exif.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795117
+
+2018-04-16 19:35:07 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ * sys/wasapi/gstwasapiutil.c:
+ wasapi: Call CoIn/Uninitialize() around prepare()
+ Seems to be required for exclusive mode and also for all
+ initialization on Windows 7
+ https://bugzilla.gnome.org/show_bug.cgi?id=795274
+
+2018-04-16 10:53:07 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * README:
+ * common:
+ Automatic update of common submodule
+ From f0c2dc9 to ed78bee
+
+2018-04-16 10:44:10 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+ * gst-libs/gst/webrtc/rtcsessiondescription.h:
+ webrtc: fix gtk-doc annotations
+
+2018-04-15 10:06:46 +0200 Antonio Ospite <ao2@ao2.it>
+
+ * gst/pcapparse/gstpcapparse.c:
+ pcapparse: bail out in case of fragmented packets
+ pcapparse cannot parse fragmented IP packets correctly, in particular it
+ will get confused when trying to parsing fragments as standalone frames
+ in two ways:
+ 1. the first fragment will have the packet length greater than the
+ frame size and will always be discarded;
+ 2. fragments with non-zero offsets will be interpreted as full packets
+ and the first part of their raw payload data will be parsed as the
+ transport protocol header, resulting in bogus values for addresses
+ and ports, thus evading the properties filtering on those values.
+ This can make it difficult for users to see why the data does not get
+ downstream.
+ So be more explicit and just bail out when fragmented packets are
+ encountered.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795284
+
+2018-04-14 20:14:35 +0200 Antonio Ospite <ao2@ao2.it>
+
+ * gst/pcapparse/gstpcapparse.c:
+ pcapparse: add some comments about the pcap format headers
+ Since the code is full of magic add at least some guidance for newbies.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795284
+
+2016-12-27 11:14:00 +0530 Garima Gaur <garima.g@samsung.com>
+
+ * ext/resindvd/rsninputselector.c:
+ * sys/uvch264/gstuvch264_src.c:
+ * sys/winscreencap/gstdx9screencapsrc.c:
+ resindvd, uvch264src, dx9screencapsrc: fix clock ref leaks in error paths
+ https://bugzilla.gnome.org/show_bug.cgi?id=776376
+
+2016-12-27 13:45:49 +0530 Garima Gaur <garima.g@samsung.com>
+
+ * sys/bluez/gstavdtpsrc.c:
+ bluez: avdtpsrc: fix caps leak in error code paths
+ https://bugzilla.gnome.org/show_bug.cgi?id=776085
+
+2018-04-06 23:22:39 +0900 Seungha Yang <pudding8757@gmail.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Make caps writable before modifying them
+ Fix following assertion failure
+ GStreamer-CRITICAL **: gst_structure_remove_field: assertion 'IS_MUTABLE (structure)' failed
+ https://bugzilla.gnome.org/show_bug.cgi?id=795032
+
+2018-04-10 10:20:52 +0100 Philippe Normand <philn@igalia.com>
+
+ * gst/debugutils/gstfakevideosink.c:
+ fakevideosink: explicit type cast for max-lateness property setter
+ g_object_set() expects the parameters values to be the exact type of the
+ property being set.
+
+2018-04-10 05:13:17 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ wasapi: Handle return value of WaitForSingleObject
+ The wait could've failed for whatever reason, we should handle that.
+
+2018-04-10 05:09:42 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisink.h:
+ * sys/wasapi/gstwasapisrc.c:
+ * sys/wasapi/gstwasapisrc.h:
+ wasapi: Call _Start if the client was _Reset
+ Otherwise we will wait forever in WaitForSingleObject because we forgot
+ to start the client again after _Stop is called in reset().
+ https://bugzilla.gnome.org/show_bug.cgi?id=795114
+
+2018-04-09 17:54:05 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
+
+ * gst/debugutils/gstfakevideosink.c:
+ fakevideosink: request an extra buffer if enable-last-sample is enabled
+ If the 'enable-last-sample' property is enabled, fakevideosink will keep
+ a reference on last rendered buffer which may lead to buffer starvation
+ in the pipeline.
+ Request one extra buffer in this case so we always have a buffer flying
+ in the pipeline.
+ https://bugzilla.gnome.org/show_bug.cgi?id=795109
+
+2018-04-09 17:16:38 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ wasapi: Don't open the device in get_caps()
+ We can just return the template caps till the device is opened when
+ going from READY -> PAUSED. This fixes a CRITICAL when calling
+ ELEMENT_ERROR before the ringbuffer is allocated.
+ Also fixes a couple of leaks in error conditions.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794611
+
+2018-04-06 23:01:36 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ wasapi: Only use audioclient3 when low-latency
+ Causes glitches on very slow CPU machines or VMs, and our
+ out-of-the-box experience should be good.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794497
+
+2018-03-21 14:53:27 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapiutil.c:
+ wasapi: Don't derive device period from latency time
+ This seems to cause glitches on devices with low CPU availability,
+ such as virtual machines. Maybe even actual machines under high load.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794497
+
+2018-04-04 17:30:21 -0800 U. Artie Eoff <ullysses.a.eoff@intel.com>
+
+ * sys/msdk/gstmsdkcontext.c:
+ * sys/msdk/msdk.c:
+ * sys/msdk/msdk.h:
+ msdk: fix plugin load on implementations with only HW support
+ We can't assume that MSDK always supports SW implementation
+ on all platforms. Thus, msdk_is_available should check for
+ ANY implementation.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794991
+
+2018-04-04 18:32:19 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapiutil.h:
+ wasapi: Squelch warning about %x and HRESULT
+ HRESULT is always a 32-bit value, as is guint.
+
+2018-04-04 01:07:14 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapisink.c:
+ * sys/wasapi/gstwasapisrc.c:
+ * sys/wasapi/gstwasapisrc.h:
+ * sys/wasapi/gstwasapiutil.c:
+ * sys/wasapi/gstwasapiutil.h:
+ wasapisrc: Implement loopback recording
+ Now, when you set loopback=true on wasapisrc, the `device` property
+ should refer to a sink (render) device for loopback recording.
+ If the `device` property is not set, the default sink device is used.
+
+2018-04-03 23:54:41 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/audiolatency/gstaudiolatency.c:
+ audiolatency: Fix wave detection in buffers
+ -1/1000 is 0, so we were *always* detecting a buffer.
+
+2018-04-03 23:53:24 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/audiolatency/gstaudiolatency.c:
+ audiolatency: Avoid bogus pts values while starting
+
+2018-04-03 19:21:46 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * sys/msdk/meson.build:
+ msdk: fix meson syntax
+
+2018-03-22 16:04:02 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/gstmsdkvpputil.c:
+ * sys/msdk/msdk-enums.c:
+ * sys/msdk/msdk-enums.h:
+ msdk: vpp : Add frame rate control
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-21 18:17:11 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/gstmsdkvpputil.c:
+ msdk: vpp : Add force-aspect-ratio property
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-21 17:57:27 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/msdk-enums.c:
+ * sys/msdk/msdk-enums.h:
+ msdk: Add more scaling filter algorithms
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-21 17:22:18 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/msdk-enums.c:
+ * sys/msdk/msdk-enums.h:
+ msdk: vpp: Add support for horizontal and vertical mirroring
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-21 17:14:04 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ msdk: vpp: Add detail/edge enhancement tuning
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-21 14:45:35 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ msdk: vpp: Add ProAmp(colorbalance) support
+ Added Hue, Saturation, Brightness and Contrast tuning support.
+ Fixme: Add GstColorBalanceInterface support
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-06 13:52:04 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/gstmsdkvpputil.c:
+ * sys/msdk/gstmsdkvpputil.h:
+ * sys/msdk/msdk-enums.c:
+ * sys/msdk/msdk-enums.h:
+ * sys/msdk/msdk.c:
+ msdk: vpp: Add deinterlacing support
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-06 13:51:32 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/msdk-enums.c:
+ * sys/msdk/msdk-enums.h:
+ msdk: vpp:Add more filters
+ -- Add Denoise
+ -- Add Rotation
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-03-06 13:51:05 +0000 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/Makefile.am:
+ * sys/msdk/gstmsdk.c:
+ * sys/msdk/gstmsdkvpp.c:
+ * sys/msdk/gstmsdkvpp.h:
+ * sys/msdk/gstmsdkvpputil.c:
+ * sys/msdk/gstmsdkvpputil.h:
+ * sys/msdk/meson.build:
+ msdk: Add VPP element
+ https://bugzilla.gnome.org/show_bug.cgi?id=793705
+
+2018-04-03 14:03:17 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/mpegts/meson.build:
+ meson: mpegts: make internal mpegts lib dep depend on the enumtypes header
+
+2018-03-29 19:18:23 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/hls/gsthlssink2.c:
+ hlssink2: Use the new reset-muxer property on splitmuxsink
+ We don't want to reset the muxer, otherwise the continuity counter will
+ reset after each segment and some software gets confused. We want to
+ create a continuous stream.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794816
+
+2018-03-29 19:03:45 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/mpegtsmux/mpegtsmux.c:
+ mpegtsmux: Resend initial segments and header sections after FLUSH_STOP
+ https://bugzilla.gnome.org/show_bug.cgi?id=794816
+
+2018-04-02 15:49:59 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdk: dec: rename the function to what it means more exactly.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-04-02 15:49:32 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ msdk: allocator: libva: check if it's already using dmabuf when mapping
+ As long as we negotiate the "DMABuf" capsfeatures for now, map can't be
+ working. So we need to confirm not to do it if using DMABuf memory.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-04-02 21:43:53 +0900 Daeseok Youn <daeseok.youn@gmail.com>
+
+ * sys/nvenc/gstnvbaseenc.c:
+ nvbaseenc: fix build warnings with HAVE_NVENC_GST_GL
+ fix following error:
+ gstnvbaseenc.c: In function ‘gst_nv_base_enc_set_context’:
+ gstnvbaseenc.c:451:17: error: unused variable ‘nvenc’ [-Werror=unused-variable]
+ GstNvBaseEnc *nvenc = GST_NV_BASE_ENC (element);
+ ^
+ https://bugzilla.gnome.org/show_bug.cgi?id=794896
+
+2018-03-31 10:41:32 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/decklink/win/DeckLinkAPI.h:
+ * sys/decklink/win/DeckLinkAPI_i.c:
+ decklink: Fix MinGW warnings due to MSVC-specific pragmas
+ https://bugzilla.gnome.org/show_bug.cgi?id=794652#c7
+
+2018-03-30 11:06:40 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ * sys/msdk/gstmsdkdec.h:
+ msdkdec: use dmabuf if possible
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-03-30 11:06:05 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/Makefile.am:
+ * sys/msdk/gstmsdkbufferpool.c:
+ * sys/msdk/gstmsdkbufferpool.h:
+ * sys/msdk/gstmsdkvideomemory.c:
+ * sys/msdk/gstmsdkvideomemory.h:
+ * sys/msdk/meson.build:
+ * sys/msdk/msdk.c:
+ msdk: dmabuf support
+ This patch includes:
+ 1\ Implements MsdkDmaBufAllocator and allocation of msdk dmabuf memroy.
+ 2\ Each msdk dmabuf memory include its own msdk surface kept by GQuark.
+ 3\ Adds new option GST_BUFFER_POOL_OPTION_MSDK_USE_DMABUF
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-03-30 11:05:16 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/Makefile.am:
+ * sys/msdk/gstmsdkallocator_libva.c:
+ * sys/msdk/gstmsdkallocator_libva.h:
+ msdk: adds new function to get dmabuf information from surface.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-03-30 11:03:17 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkallocator.h:
+ * sys/msdk/gstmsdkallocator_libva.c:
+ msdk: allocator: get dmabuf handle during allocation if required
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-03-30 11:03:00 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkbufferpool.c:
+ * sys/msdk/gstmsdkvideomemory.c:
+ * sys/msdk/gstmsdkvideomemory.h:
+ msdk: generalize the parameter of msdk video memory functions
+ There needs to be generalized for the parameter from
+ GstVideoMsdkVideoMemory to GstMemory.
+ Thus we can call these functions if using DMABuf memory.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-03-30 11:02:26 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkallocator_libva.c:
+ * sys/msdk/gstmsdkcontext.c:
+ msdk: specify the way to find a proper cached response by request
+ The current way to find proper response by just comparing request's
+ value is wrong. We need to compare the size of a frame and the
+ number of suggested frames.
+ Refer to the sample in https://github.com/Intel-Media-SDK/samples.
+ https://bugzilla.gnome.org/show_bug.cgi?id=793707
+
+2018-03-30 13:47:00 +0200 Paul Kocialkowski <paul.kocialkowski@bootlin.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Add support for the Allwinner DRM driver (sun4i-drm)
+ This adds the sun4i DRM driver to the list of DRM drivers in kmssink.
+ The driver allows displaying video in either the main plane or an
+ overlay plane.
+ https://bugzilla.gnome.org/attachment.cgi?bugid=794839
+
+2018-03-29 13:06:41 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkh264dec.c:
+ * sys/msdk/gstmsdkmjpegdec.c:
+ * sys/msdk/gstmsdkmpeg2dec.c:
+ msdk: dec: remove framerate field from sink caps template
+ Removes unessential field framerate for decoder so that negotiation
+ works even if framerate is not provided from upstream.
+ https://bugzilla.gnome.org/show_bug.cgi?id=789752
+
+2018-03-29 12:41:48 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkdec.c:
+ msdk: dec: set framerate to the driver only if provided
+ For example, if framerate 0/1 is provided from upstream, the driver
+ fails to configure and complain about it.
+ We can let it go and make the driver assuming framerate itself.
+ https://bugzilla.gnome.org/show_bug.cgi?id=789752
+
+2018-03-29 12:40:34 -0800 Hyunjun Ko <zzoon@igalia.com>
+
+ * sys/msdk/gstmsdkh265dec.c:
+ msdk: h265dec: remove framerate field from sink caps template
+ Removes unessential field framerate for decoder so that negotiation
+ works even if framerate is not provided from upstream.
+ https://bugzilla.gnome.org/show_bug.cgi?id=789752
+
+2018-03-29 11:56:19 -0800 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
+
+ * sys/msdk/gstmsdkenc.c:
+ * sys/msdk/gstmsdkenc.h:
+ * sys/msdk/gstmsdkh264enc.c:
+ * sys/msdk/gstmsdkh265enc.c:
+ * sys/msdk/gstmsdkmpeg2enc.c:
+ * sys/msdk/gstmsdkvp8enc.c:
+ msdk: Don't set extended coding options for JPEG encode
+ MJPEG doesn't have support for extended coding options
+ https://bugzilla.gnome.org/show_bug.cgi?id=793873
+
+2018-03-27 17:36:27 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst-plugins-bad-plugins-docs.sgml:
+ * docs/plugins/inspect/plugin-gstsiren.xml:
+ * docs/plugins/inspect/plugin-rawparse.xml:
+ docs: plugins: remove stale xml data for moved or renamed plugins
+ rawparse plugin moved to -base, only legacyrawparse remains.
+ siren plugin was renamed and was listed twice.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794069
+
+2018-03-27 16:51:30 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/onvif/gstrtponviftimestamp.c:
+ rtponviftimestamp: fix state change function init/reset
+ When starting up we need to initialise things *before*
+ streaming starts, so before we chain up to the parent
+ class in the state change function. And when we shut
+ down the element, we need to reset things after streaming
+ has stopped, so after we chain up to the parent class
+ in the state change function.
+ Possibly related to memory leak in:
+ https://bugzilla.gnome.org/show_bug.cgi?id=794353
+
+2018-03-27 14:25:24 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/ladspa/meson.build:
+ meson: Add missing optional lrdf dep to ladspa build
+ https://bugzilla.gnome.org/show_bug.cgi?id=794350
+
+2018-03-27 12:47:13 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/decklink/gstdecklink.cpp:
+ decklink: Use g_thread_new instead of g_thread_create
+ It's deprecated, and causes a build failure in Cerbero because we pass
+ -DG_DISABLE_DEPRECATED.
+
+2018-03-27 12:24:30 +0900 Takeshi Sato <t-sato@bx.jp.nec.co.jp>
+
+ * sys/decklink/gstdecklink.cpp:
+ decklink: fix initialization fails in windows binary
+ There is no log of gst_decklink_com_thread () which initializes COM.
+ The initialization part is not valid with #ifdef MSC_VER.
+ Windows binaries are built with gcc.
+ As with other codes, it was avoidable by setting it to G_OS_WIN32
+ instead of MSC_VER.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794652
+
+2018-03-25 18:08:58 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * sys/wasapi/gstwasapiutil.h:
+ wasapi: Print the hresult hex value on error
+ This helps figure out precisely what error enum value was returned,
+ which can be necessary when the description is too generic
+
+2018-03-23 09:15:38 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * ext/ladspa/gstladspa.c:
+ ladspa: Fix critical during plugin load on Windows
+ https://bugzilla.gnome.org/show_bug.cgi?id=794611
+
+2018-03-26 19:52:50 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ext/x265/gstx265enc.c:
+ x265enc: no //-style comments
+
+2018-03-23 14:14:12 +0000 James Stevenson <james@stev.org>
+
+ * ext/x265/gstx265enc.c:
+ * ext/x265/gstx265enc.h:
+ x265enc: Add "key-int-max" property
+ https://bugzilla.gnome.org/show_bug.cgi?id=794623
+
+2018-03-25 12:53:06 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/gl/Makefile.am:
+ gl: Rename gstglutils.h functions to prevent symbol conflicts with static linking
+ The gl plugin in -base has the same function.
+
+2018-03-25 12:52:32 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * ext/opus/Makefile.am:
+ opus: Rename opusheader functions to prevent symbol conflicts with static linking
+ The opus plugin in -base has the same functions.
+
+2018-03-23 13:42:05 +0000 James Stevenson <james@stev.org>
+
+ * ext/x265/gstx265enc.c:
+ x265: Fix tagging of keyframes on output buffers
+ https://bugzilla.gnome.org/show_bug.cgi?id=794620
+
+2018-03-22 14:07:53 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * Makefile.am:
+ * gst-libs/gst/webrtc/meson.build:
+ * gst-libs/gst/webrtc/webrtc_mkenum.py:
+ * meson.build:
+ meson: webrtc: use gnome.mkenums_simple() to generate enumtypes files
+
+2018-03-22 13:43:52 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/webrtc/Makefile.am:
+ * gst-libs/gst/webrtc/webrtc_mkenum.py:
+ webrtc: use right export define in generated enumtypes file
+
+2018-03-22 13:42:31 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst-libs/gst/webrtc/Makefile.am:
+ webrtc: fix g-ir-scanner complaining about unstable API
+
+2017-07-20 17:47:55 +1000 Alessandro Decina <alessandro.d@gmail.com>
+
+ * Makefile.am:
+ * ext/srtp/meson.build:
+ * ext/srtp/srtp_mkenum.py:
+ * gst-libs/gst/interfaces/build_mkenum.py:
+ * gst-libs/gst/interfaces/meson.build:
+ * gst-libs/gst/mpegts/meson.build:
+ * gst-libs/gst/mpegts/mpegts_enum.py:
+ * meson.build:
+ meson: use gnome.mkenums_simple() to generate enumtypes files
+ Means we no longer need our custom scripts, nor template files.
+
+2018-03-22 10:35:25 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * pkgconfig/Makefile.am:
+ * pkgconfig/gstreamer-gl-uninstalled.pc.in:
+ * pkgconfig/gstreamer-gl.pc.in:
+ pkgconfig: remove some cruft
+ gl has moved to -base, remove leftover files.
+
+2018-03-05 17:43:26 +0100 Patrik Nilsson <asavartzeth@gmail.com>
+
+ * ext/ladspa/meson.build:
+ meson: fix ladspa dependencies
+ There are two issues, both related to dependency checking with the meson
+ support for the ladspa plugin.
+ With autotools, lrdf is handled like an optional dependency. But with
+ meson it is required. This makes the meson support less flexible and
+ inconsistent with autotools.
+ When autotools is used it properly checks if ladspa.h is available.
+ But with meson it does not, instead it treats lrdf as the main
+ dependency. This could cause a build failure if lrdf is installed, but
+ the ladspa sdk is not.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794350
+
+2018-03-05 18:23:09 +0100 Patrik Nilsson <asavartzeth@gmail.com>
+
+ * ext/bs2b/meson.build:
+ * ext/meson.build:
+ meson: enable bs2b compilation
+ Add meson build system support to bs2b plugin.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794346
+
+2018-03-21 13:42:30 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/mpegtsmux/mpegtsmux.c:
+ * gst/mpegtsmux/tsmux/tsmux.c:
+ * gst/mpegtsmux/tsmux/tsmux.h:
+ mpegtsmux: Explicitly resend PAT/SI/PMT on force-keyunit events
+ And don't randomly change the PCR stream, which would cause a new PMT
+ version to be generated instead and could confuse players.
+
+2018-03-21 13:34:17 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/mpegtsmux/mpegtsmux.c:
+ mpegtsmux: Deterministically set the PCR stream to the first stream of the program
+ Otherwise it would be randomly set to the first stream of the program
+ that receives a buffer.
+
+2018-03-21 11:05:23 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/mpegtsmux/mpegtsmux.c:
+ mpegtsmux: Reset a few more fields in mpegtsmux_reset() to their original values
+
+2018-03-21 10:59:29 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * gst/mpegtsmux/tsmux/tsmux.c:
+ tsmux: Don't use GST_DEBUG_OBJECT() with non-GObject types
+
+2018-03-20 11:49:19 -0700 Brendan Shanks <brendan.shanks@teradek.com>
+
+ * gst/videoparsers/gsth264parse.c:
+ h264parse: reset internal 'state' variable properly
+ Reset the internal 'state' variable when the parser is started, fixes
+ errors when parser is being re-used.
+ https://bugzilla.gnome.org/show_bug.cgi?id=794537
+
+2018-03-20 16:16:19 +0200 Sebastian Dröge <sebastian@centricular.com>
+
+ * sys/shm/gstshmsink.c:
+ shmsink: Fix compilation with latest GLib
+ g_object_ref() forwards its arguments type.
+ gstshmsink.c: In function ‘gst_shm_sink_allocator_alloc_locked’:
+ /usr/include/glib-2.0/gobject/gobject.h:512:32: error: passing argument 3 of ‘gst_memory_init’ from incompatible pointer type [-Werror=incompatible-pointer-types]
+ #define g_object_ref(Obj) ((__typeof__(Obj)) (g_object_ref) (Obj))
+ ^
+ gstshmsink.c:292:45: note: in expansion of macro ‘g_object_ref’
+ gst_memory_init (memory, params->flags, g_object_ref (self), NULL,
+ ^~~~~~~~~~~~
+
+2018-03-20 09:39:17 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * NEWS:
+ * RELEASE:
+ * configure.ac:
+ * docs/plugins/inspect/plugin-accurip.xml:
+ * docs/plugins/inspect/plugin-adpcmdec.xml:
+ * docs/plugins/inspect/plugin-adpcmenc.xml:
+ * docs/plugins/inspect/plugin-aiff.xml:
+ * docs/plugins/inspect/plugin-asfmux.xml:
+ * docs/plugins/inspect/plugin-assrender.xml:
+ * docs/plugins/inspect/plugin-audiobuffersplit.xml:
+ * docs/plugins/inspect/plugin-audiofxbad.xml:
+ * docs/plugins/inspect/plugin-audiolatency.xml:
+ * docs/plugins/inspect/plugin-audiomixmatrix.xml:
+ * docs/plugins/inspect/plugin-audiovisualizers.xml:
+ * docs/plugins/inspect/plugin-autoconvert.xml:
+ * docs/plugins/inspect/plugin-bayer.xml:
+ * docs/plugins/inspect/plugin-bluez.xml:
+ * docs/plugins/inspect/plugin-bs2b.xml:
+ * docs/plugins/inspect/plugin-bz2.xml:
+ * docs/plugins/inspect/plugin-camerabin.xml:
+ * docs/plugins/inspect/plugin-chromaprint.xml:
+ * docs/plugins/inspect/plugin-coloreffects.xml:
+ * docs/plugins/inspect/plugin-colormanagement.xml:
+ * docs/plugins/inspect/plugin-compositor.xml:
+ * docs/plugins/inspect/plugin-curl.xml:
+ * docs/plugins/inspect/plugin-dashdemux.xml:
+ * docs/plugins/inspect/plugin-dc1394.xml:
+ * docs/plugins/inspect/plugin-de265.xml:
+ * docs/plugins/inspect/plugin-debugutilsbad.xml:
+ * docs/plugins/inspect/plugin-decklink.xml:
+ * docs/plugins/inspect/plugin-dfbvideosink.xml:
+ * docs/plugins/inspect/plugin-dtls.xml:
+ * docs/plugins/inspect/plugin-dtsdec.xml:
+ * docs/plugins/inspect/plugin-dvb.xml:
+ * docs/plugins/inspect/plugin-dvbsuboverlay.xml:
+ * docs/plugins/inspect/plugin-dvdspu.xml:
+ * docs/plugins/inspect/plugin-faac.xml:
+ * docs/plugins/inspect/plugin-faad.xml:
+ * docs/plugins/inspect/plugin-faceoverlay.xml:
+ * docs/plugins/inspect/plugin-fbdevsink.xml:
+ * docs/plugins/inspect/plugin-fdkaac.xml:
+ * docs/plugins/inspect/plugin-festival.xml:
+ * docs/plugins/inspect/plugin-fieldanalysis.xml:
+ * docs/plugins/inspect/plugin-flite.xml:
+ * docs/plugins/inspect/plugin-fluidsynthmidi.xml:
+ * docs/plugins/inspect/plugin-freeverb.xml:
+ * docs/plugins/inspect/plugin-frei0r.xml:
+ * docs/plugins/inspect/plugin-gaudieffects.xml:
+ * docs/plugins/inspect/plugin-gdp.xml:
+ * docs/plugins/inspect/plugin-geometrictransform.xml:
+ * docs/plugins/inspect/plugin-gme.xml:
+ * docs/plugins/inspect/plugin-gsm.xml:
+ * docs/plugins/inspect/plugin-hls.xml:
+ * docs/plugins/inspect/plugin-id3tag.xml:
+ * docs/plugins/inspect/plugin-inter.xml:
+ * docs/plugins/inspect/plugin-interlace.xml:
+ * docs/plugins/inspect/plugin-ipcpipeline.xml:
+ * docs/plugins/inspect/plugin-ivfparse.xml:
+ * docs/plugins/inspect/plugin-ivtc.xml:
+ * docs/plugins/inspect/plugin-jp2kdecimator.xml:
+ * docs/plugins/inspect/plugin-jpegformat.xml:
+ * docs/plugins/inspect/plugin-kate.xml:
+ * docs/plugins/inspect/plugin-kms.xml:
+ * docs/plugins/inspect/plugin-ladspa.xml:
+ * docs/plugins/inspect/plugin-legacyrawparse.xml:
+ * docs/plugins/inspect/plugin-midi.xml:
+ * docs/plugins/inspect/plugin-mms.xml:
+ * docs/plugins/inspect/plugin-modplug.xml:
+ * docs/plugins/inspect/plugin-mpegpsdemux.xml:
+ * docs/plugins/inspect/plugin-mpegpsmux.xml:
+ * docs/plugins/inspect/plugin-mpegtsdemux.xml:
+ * docs/plugins/inspect/plugin-mpegtsmux.xml:
+ * docs/plugins/inspect/plugin-musepack.xml:
+ * docs/plugins/inspect/plugin-mxf.xml:
+ * docs/plugins/inspect/plugin-neonhttpsrc.xml:
+ * docs/plugins/inspect/plugin-netsim.xml:
+ * docs/plugins/inspect/plugin-ofa.xml:
+ * docs/plugins/inspect/plugin-openal.xml:
+ * docs/plugins/inspect/plugin-opencv.xml:
+ * docs/plugins/inspect/plugin-openexr.xml:
+ * docs/plugins/inspect/plugin-openglmixers.xml:
+ * docs/plugins/inspect/plugin-openh264.xml:
+ * docs/plugins/inspect/plugin-openjpeg.xml:
+ * docs/plugins/inspect/plugin-opusparse.xml:
+ * docs/plugins/inspect/plugin-pcapparse.xml:
+ * docs/plugins/inspect/plugin-pnm.xml:
+ * docs/plugins/inspect/plugin-proxy.xml:
+ * docs/plugins/inspect/plugin-removesilence.xml:
+ * docs/plugins/inspect/plugin-resindvd.xml:
+ * docs/plugins/inspect/plugin-rfbsrc.xml:
+ * docs/plugins/inspect/plugin-rsvg.xml:
+ * docs/plugins/inspect/plugin-rtmp.xml:
+ * docs/plugins/inspect/plugin-rtponvif.xml:
+ * docs/plugins/inspect/plugin-sbc.xml:
+ * docs/plugins/inspect/plugin-sdpelem.xml:
+ * docs/plugins/inspect/plugin-segmentclip.xml:
+ * docs/plugins/inspect/plugin-shm.xml:
+ * docs/plugins/inspect/plugin-siren.xml:
+ * docs/plugins/inspect/plugin-smooth.xml:
+ * docs/plugins/inspect/plugin-smoothstreaming.xml:
+ * docs/plugins/inspect/plugin-soundtouch.xml:
+ * docs/plugins/inspect/plugin-spandsp.xml:
+ * docs/plugins/inspect/plugin-speed.xml:
+ * docs/plugins/inspect/plugin-srtp.xml:
+ * docs/plugins/inspect/plugin-stereo.xml:
+ * docs/plugins/inspect/plugin-subenc.xml:
+ * docs/plugins/inspect/plugin-teletext.xml:
+ * docs/plugins/inspect/plugin-timecode.xml:
+ * docs/plugins/inspect/plugin-ttmlsubs.xml:
+ * docs/plugins/inspect/plugin-uvch264.xml:
+ * docs/plugins/inspect/plugin-vcdsrc.xml:
+ * docs/plugins/inspect/plugin-vdpau.xml:
+ * docs/plugins/inspect/plugin-videofiltersbad.xml:
+ * docs/plugins/inspect/plugin-videoframe_audiolevel.xml:
+ * docs/plugins/inspect/plugin-videoparsersbad.xml:
+ * docs/plugins/inspect/plugin-videosignal.xml:
+ * docs/plugins/inspect/plugin-vmnc.xml:
+ * docs/plugins/inspect/plugin-voaacenc.xml:
+ * docs/plugins/inspect/plugin-voamrwbenc.xml:
+ * docs/plugins/inspect/plugin-vulkan.xml:
+ * docs/plugins/inspect/plugin-wasapi.xml:
+ * docs/plugins/inspect/plugin-waylandsink.xml:
+ * docs/plugins/inspect/plugin-webp.xml:
+ * docs/plugins/inspect/plugin-webrtc.xml:
+ * docs/plugins/inspect/plugin-wildmidi.xml:
+ * docs/plugins/inspect/plugin-x265.xml:
+ * docs/plugins/inspect/plugin-y4mdec.xml:
+ * docs/plugins/inspect/plugin-yadif.xml:
+ * docs/plugins/inspect/plugin-zbar.xml:
+ * meson.build:
+ Back to development
+
=== release 1.14.0 ===
2018-03-19 20:24:05 +0000 Tim-Philipp Müller <tim@centricular.com>
diff --git a/NEWS b/NEWS
index 5366a0dfc..1e860c47a 100644
--- a/NEWS
+++ b/NEWS
@@ -3,23 +3,19 @@
GSTREAMER 1.16 RELEASE NOTES
-GStreamer 1.16 has not been released yet. It is scheduled for release
-around September 2018.
+GStreamer 1.16 has not been released yet. It is scheduled for release in
+January/February 2019.
-1.15.0.1 is the unstable development version that is being developed in
+1.15.x is the unstable development version that is being developed in
the git master branch and which will eventually result in 1.16.
-The plan for the 1.16 development cycle is yet to be confirmed, but it
-is expected that feature freeze will be around August 2017 followed by
-several 1.15 pre-releases and the new 1.16 stable release in September.
-
1.16 will be backwards-compatible to the stable 1.14, 1.12, 1.10, 1.8,
1.6, 1.4, 1.2 and 1.0 release series.
See https://gstreamer.freedesktop.org/releases/1.16/ for the latest
version of this document.
-_Last updated: Tuesday 20 March 2018, 01:30 UTC (log)_
+_Last updated: Monday 14 January 2019, 13:00 UTC (log)_
Introduction
@@ -34,63 +30,705 @@ other improvements.
Highlights
-- this section will be completed in due course
+- GStreamer WebRTC stack gained support for data channels for
+ peer-to-peer communication based on SCTP, BUNDLE support, as well as
+ support for multiple TURN servers.
+
+- AV1 video codec support for Matroska and QuickTime/MP4 containers
+ and more configuration options and supported input formats for the
+ AOMedia AV1 encoder
+
+- Support for Closed Captions and other Ancillary Data in video
+
+- Spport for planar (non-interleaved) raw audio
+
+- GstVideoAggregator, compositor and OpenGL mixer elements are now in
+ -base
+
+- New alternate fields interlace mode where each buffer carries a
+ single field
+
+- WebM and Matroska ContentEncryption support in the Matroska demuxer
+
+- new WebKit WPE-based web browser source element
+
+- Video4Linux: HEVC encoding and decoding, JPEG encoding, and improved
+ dmabuf import/export
+
+- Hardware-accelerated Nvidia video decoder gained support for VP8/VP9
+ decoding, whilst the encoder gained support for H.265/HEVC encoding.
+
+- Many improvements to the Intel Media SDK based hardware-accelerated
+ video decoder and encoder plugin (msdk): dmabuf import/export for
+ zero-copy integration with other components; VP9 decoding; 10-bit
+ HEVC encoding; video post-processing (vpp) support including
+ deinterlacing; and the video decoder now handles dynamic resolution
+ changes.
+
+- The ASS/SSA subtitle overlay renderer can now handle multiple
+ subtitles that overlap in time and will show them on screen
+ simultaneously
+
+- The Meson build is now feature-complete (*) and it is now the
+ recommended build system on all platforms. The Autotools build is
+ scheduled to be removed in the next cycle.
+
+- The GStreamer Rust bindings and Rust plugins module are now
+ officially part of upstream GStreamer.
+
+- Many performance improvements
Major new features and changes
Noteworthy new API
-- this section will be filled in in due course
+- GstAggregator has a new "min-upstream-latency" property that forces
+ a minimum aggregate latency for the input branches of an aggregator.
+ This is useful for dynamic pipelines where branches with a higher
+ latency might be added later after the pipeline is already up and
+ running and where a change in the latency would be disruptive. This
+ only applies to the case where at least one of the input branches is
+ live though, it won’t force the aggregator into live mode in the
+ absence of any live inputs.
+
+- GstBaseSink gained a "processing-deadline" property and
+ setter/getter API to configure a processing deadline for live
+ pipelines. The processing deadline is the acceptable amount of time
+ to process the media in a live pipeline before it reaches the sink.
+ This is on top of the systemic latency that is normally reported by
+ the latency query. This defaults to 20ms and should make pipelines
+ such as “v4lsrc ! xvimagesink” not claim that all frames are late in
+ the QoS events. Ideally, this should replace max_lateness for most
+ applications.
+
+- RTCP Extended Reports (XR) parsing according to RFC 3611:
+ Loss/Duplicate RLE, Packet Receipt Times, Receiver Reference Time,
+ Delay since the last Receiver (DLRR), Statistics Summary, and VoIP
+ Metrics reports.
+
+- a new mode for interlaced video was added where each buffer carries
+ a single field of interlaced video, with buffer flags indicating
+ whether the field is the top field or bottom field. Top and bottom
+ fields are expected to alternate in this mode. Caps for this
+ interlace mode must also carry a format:Interlaced caps feature to
+ ensure backwards compatibility.
+
+- The video library has gained support for three new raw pixel
+ formats:
+
+ - Y410: packed 4:4:4 YUV, 10 bits per channel
+ - Y210: packed 4:2:2 YUV, 10 bits per channel
+ - NV12_10LE40: fully-packed 10-bit variant of NV12_10LE32,
+ i.e. without the padding bits
+
+- GstRTPSourceMeta is a new meta that can be used to transport
+ information about the origin of depayloaded or decoded RTP buffers,
+ e.g. when mixing audio from multiple sources into a single stream. A
+ new "source-info" property on the RTP depayloader base class
+ determines whether depayloaders should put this meta on outgoing
+ buffers. Similarly, the same property on RTP payloaders determines
+ whether they should use the information from this meta to construct
+ the CSRCs list on outgoing RTP buffers.
+
+- gst_sdp_message_from_text() is a convenience constructor to parse
+ SDPs from a string which is particularly useful for language
+ bindings.
+
+Support for Planar (Non-Interleaved) Raw Audio
+
+Raw audio samples are usually passed around in interleaved form in
+GStreamer, which means that if there are multiple audio channels the
+samples for each channel are interleaved in memory, e.g.
+|LEFT|RIGHT|LEFT|RIGHT|LEFT|RIGHT| for stereo audio. A non-interleaved
+or planar arrangement in memory would look like
+|LEFT|LEFT|LEFT|RIGHT|RIGHT|RIGHT| instead, possibly with
+|LEFT|LEFT|LEFT| and |RIGHT|RIGHT|RIGHT| residing in separate memory
+chunks or separated by some padding.
+
+GStreamer has always had signalling for non-interleaved audio, but it
+was never actually properly implemented in any elements. audioconvert
+would advertise support for it, but wasn’t actually able to handle it.
+
+With this release we now have full support for non-interleaved audio as
+well, which means more efficient integration with external APIs that
+handle audio this way, but also more efficient processing of certain
+operations like interleaving multiple 1-channel streams into a
+multi-channel stream which can be done without memory copies now.
+
+New API to support this has been added to the GStreamer Audio support
+library: There is now a new GstAudioMeta which describes how data is
+laid out inside the buffer, and buffers with non-interleaved audio must
+always carry this meta. To access the non-interleaved audio samples you
+must map such buffers with gst_audio_buffer_map() which works much like
+gst_buffer_map() or gst_video_frame_map() in that it will populate a
+little GstAudioBuffer helper structure passed to it with the number of
+samples, the number of planes and pointers to the start of each plane in
+memory. This function can also be used to map interleaved audio buffers
+in which case there will be only one plane of interleaved samples.
+
+Of course support for this has also been implemented in the various
+audio helper and conversion APIs, base classes, and in elements such as
+audioconvert, audioresample, audiotestsrc, audiorate.
+
+Support for Closed Captions and Other Ancillary Data in Video
+
+The video support library has gained support for detecting and
+extracting Ancillary Data from videos as per the SMPTE S291M
+specification, including:
+
+- a VBI (Video Blanking Interval) parser that can detect and extract
+ Ancillary Data from Vertical Blanking Interval lines of component
+ signals. This is currently supported for videos in v210 and UYVY
+ format.
+
+- a new GstMeta for closed captions: GstVideoCaptionMeta. This
+ supports the two types of closed captions, CEA-608 and CEA-708,
+ along with the four different ways they can be transported (other
+ systems are a superset of those).
+
+- a VBI (Video Blanking Interval) encoder for writing ancillary data
+ to the Vertical Blanking Interval lines of component signals.
+
+The new closedcaption plugin in gst-plugins-bad then makes use of all
+this new infrastructure and provides the following elements:
+
+- cccombiner: a closed caption combiner that takes a closed captions
+ stream and another stream and adds the closed captions as
+ GstVideoCaptionMeta to the buffers of the other stream.
+
+- ccextractor: a closed caption extractor which will take
+ GstVideoCaptionMeta from input buffers and output them as a separate
+ closed captions stream.
+
+- ccconverter: a closed caption converter that can convert between
+ different formats
+
+- line21decoder: extract line21 closed captions from SD video streams
+
+- cc708overlay: decodes CEA 608/708 captions and overlays them on
+ video
+
+Additionally, the following elements have also gained Closed Caption
+support:
+
+- qtdemux and qtmux support CEA 608/708 Closed Caption tracks
+
+- mpegvideoparse extracts Closed Captions from MPEG-2 video streams
+
+- decklinkvideosink can output closed captions and decklinkvideosrc
+ can extract closed captions
+
+- playbin and playbin3 learned how to autoplug CEA 608/708 CC overlay
+ elements
+
+The rsclosedcaption plugin in the Rust plugins collection includes a
+MacCaption (MCC) file parser and encoder.
New Elements
-- this section will be filled in in due course
+- overlaycomposition: New element that allows applications to draw
+ GstVideoOverlayCompositions on a stream. The element will emit the
+ "draw" signal for each video buffer, and the application then
+ generates an overlay for that frame (or not). This is much more
+ performant than e.g. cairooverlay for many use cases, e.g. because
+ pixel format conversions can be avoided or the blitting of the
+ overlay can be delegated to downstream elements (such as
+ gloverlaycompositor). It’s particularly useful for cases where only
+ a small section of the video frame should be drawn on.
+
+- gloverlaycompositor: New OpenGL-based compositor element that
+ flattens any overlays from GstVideoOverlayCompositionMetas into the
+ video stream.
+
+- glalpha: New element that adds an alpha channel to a video stream.
+ The values of the alpha channel can either be set to a constant or
+ can be dynamically calculated via chroma keying. It is similar to
+ the existing alpha element but based on OpenGL. Calculations are
+ done in floating point so results may not be identical to the output
+ of the existing alpha element.
+
+- rtpfunnel funnels together rtp-streams into a single session. Use
+ cases include multiplexing and bundle. webrtcbin uses it to
+ implement BUNDLE support.
+
+- testsrcbin is a source element that provides an audio and/or video
+ stream and also announces them using the recently-introduced
+ GstStream API. This is useful for testing elements such as playbin3
+ or uridecodebin3 etc.
+
+- New closed caption elements: cccombiner, ccextractor, ccconverter,
+ line21decoder and cc708overlay (see above)
+
+- wpesrc: new source element acting as a Web Browser based on WebKit
+ WPE
+
+- Two new OpenCV-based elements: cameracalibrate and cameraundistort
+ who can communicate to figure out distortion correction parameters
+ for a camera and correct for the distortion.
+
+- new sctp plugin based on usrsctp with sctpenc and sctpdec elements
New element features and additions
-- this section will be filled in in due course
+- playbin3, playbin and playsink have gained a new "text-offset"
+ property to adjust the positioning of the selected subtitle stream
+ vis-a-vis the audio and video streams. This uses subtitleoverlay’s
+ new "subtitle-ts-offset" property. GstPlayer has gained matching API
+ for this, namely gst_player_get_text_video_offset().
+
+- playbin3 buffering improvements: in network playback scenarios there
+ may be multiple inputs to decodebin3, and buffering will be done
+ before decodebin3 using queue2 or downloadbuffer elements inside
+ urisourcebin. Since this is before any parsers or demuxers there may
+ not be any bitrate information available for the various streams, so
+ it was difficult to configure the buffering there smartly within
+ global constraints. This was improved now: The queue2 elements
+ inside urisourcebin will now use the new bitrate query to figure out
+ a bitrate estimate for the stream if no bitrate was provided by
+ upstream, and urisourcebin will use the bitrates of the individual
+ queues to distribute the globally-set "buffer-size" budget in bytes
+ to the various queues. urisourcebin also gained "low-watermark" and
+ "high-watermark" properties which will be proxied to the internal
+ queues, as well as a read-only "statistics" property which allows
+ querying of the minimum/maximum/average byte and time levels of the
+ queues inside the urisourcebin in question.
+
+- splitmuxsink has gained a couple of new features:
+
+ - new "async-finalize" mode: This mode is useful for muxers or
+ outputs that can take a long time to finalize a file. Instead of
+ blocking the whole upstream pipeline while the muxer is doing
+ its stuff, we can unlink it and spawn a new muxer + sink
+ combination to continue running normally. This requires us to
+ receive the muxer and sink (if needed) as factories via the new
+ "muxer-factory" and "sink-factory" properties, optionally
+ accompanied by their respective properties structures (set via
+ the new "muxer-properties" and "sink-properties" properties).
+ There are also new "muxer-added" and "sink-added" signals in
+ case custom code has to be called for them to configure them.
+
+ - "split-at-running-time" action signal: When called by the user,
+ this action signal ends the current file (and starts a new one)
+ as soon as the given running time is reached. If called multiple
+ times, running times are queued up and processed in the order
+ they were given.
+
+ - "split-after" action signal to finish outputting the current GOP
+ to the current file and then start a new file as soon as the GOP
+ is finished and a new GOP is opened (unlike the existing
+ "split-now" which immediately finishes the current file and
+ writes the current GOP into the next newly-started file).
+
+ - "reset-muxer" property: when unset, the muxer is reset using
+ flush events instead of setting its state to NULL and back. This
+ means the muxer can keep state across resets, e.g. mpegtsmux
+ will keep the continuity counter continuous across segments as
+ required by hlssink2.
+
+- qtdemux gained PIFF track encryption box support in addition to the
+ already-existing PIFF sample encryption support, and also allows
+ applications to select which encryption system to use via a
+ "drm-preferred-decryption-system-id" context in case there are
+ multiple options.
+
+- qtmux: the "start-gap-threshold" property determines now whether an
+ edit list will be created to account for small gaps or offsets at
+ the beginning of a stream in case the start timestamps of tracks
+ don’t line up perfectly. Previously the threshold was hard-coded to
+ 1% of the (video) frame duration, now it is 0 by default (so edit
+ list will be created even for small differences), but fully
+ configurable.
+
+- rtpjitterbuffer has improved end-of-stream handling
+
+- rtpmp4vpay will be prefered over rtpmp4gpay for MPEG-4 video in
+ autoplugging scenarios now
+
+- rtspsrc now allows applications to send RTSP SET_PARAMETER and
+ GET_PARAMETER requests using action signals.
+
+- rtspsrc also has a small (100ms) configurable teardown delay by
+ default to try and make sure an RTSP TEARDOWN request gets sent out
+ when the source element shuts down. This will block the downward
+ PAUSED to READY state change for a short time, but can be unset
+ where it’s a problem. Some servers only allow a limited number of
+ concurren clients, so if no proper TEARDOWN is sent clients may have
+ problems connecting to the server for a while.
+
+- souphttpsrc behaves better with low bitrate streams now. Before it
+ would increase the read block size too quickly which could lead to
+ it not reading any data from the socket for a very long time with
+ low bitrate streams that are output live downstream. This could lead
+ to servers kicking off the client.
+
+- filesink: do internal buffering to avoid performance regression with
+ small writes since we bypass libc buffering by using writev()
+
+- identity: add "eos-after" property and fix "error-after" property
+ when the element is reused
+
+- input-selector: lets context queries pass through, so that
+ e.g. upstream OpenGL elements can use contexts and displays
+ advertised by downstream elements
+
+- queue2: avoid ping-pong between 0% and 100% buffering messages if
+ upstream is pushing buffers larger than one of its limits, plus
+ performance optimisations
+
+- opusdec: new "phase-inversion" property to control phase inversion.
+ When enabled, this will slightly increase stereo quality, but
+ produces a stream that when downmixed to mono will suffer audio
+ distortions.
+
+- The x265enc HEVC encoder also exposes a "key-int-max" property to
+ configure the maximum allowed GOP size now.
+
+- decklinkvideosink has seen stability improvements for long-running
+ pipelines (potential crash due to overflow of leaked clock refcount)
+ and clock-slaving improvements when performing flushing seeks
+ (causing stalls in the output timeline), pausing and/or buffering.
+
+- srtpdec, srtpenc: add support for MKIs which allow multiple keys to
+ be used with a single SRTP stream
+
+- The srt Secure Reliable Transport plugin has integrated server and
+ client elements srt{client,server}{src,sink} into one (srtsrc and
+ srtsink), since SRT connection mode can be changed by uri
+ parameters.
+
+- h264parse and h265parse will handle SEI recovery point messages and
+ mark recovery points as keyframes as well (in addition to IDR
+ frames)
+
+- webrtcbin: "add-turn-server" action signal to pass multiple ICE
+ relays (TURN servers).
+
+- The removesilence element has received various new features and
+ properties, such as a
+ "threshold"1 property, detecting silence only after minimum silence time/buffers, a“silent”property to control bus message notifications as well as a“squash”`
+ property.
+
+- AOMedia AV1 decoder gained support for 10/12bit decoding whilst the
+ AV1 encoder supports more image formats and subsamplings now and
+ acquired support for rate control and profile related configuration.
+
+- The Fraunhofer fdkaac plugin can now be built against the 2.0.0
+ version API and has improved multichannel support
+
+- kmssink now supports unpadded 24-bit RGB and can configure mode
+ setting from video info, which enables display of multi-planar
+ formats such as I420 or NV12 with modesetting. It has also gained a
+ number of new properties: The "restore-crtc" property does what it
+ says on the tin and is enabled by default. "plane-properties" and
+ "connector-properties" can be used to pass custom properties to the
+ DRM.
+
+- waylandsink has a "fullscreen" property now.
Plugin and library moves
-- this section will be filled in in due course
+- The stereo element was moved from -bad into the existing audiofx
+ plugin in -good. If you get duplicate type registration warnings
+ when upgrading, check that you don’t have a stale gststereo plugin
+ lying about somewhere.
+
+GstVideoAggregator, compositor, and OpenGL mixer elements moved from -bad to -base
+
+GstVideoAggregator is a new base class for raw video mixers and muxers
+and is based on [GstAggregator][aggregator]. It provides defined-latency
+mixing of raw video inputs and ensures that the pipeline won’t stall
+even if one of the input streams stops producing data.
+
+As part of the move to stabilise the API there were some last-minute API
+changes and clean-ups, but those should mostly affect internal elements.
+Most notably, the "ignore-eos" pad property was renamed to
+"repeat-after-eos" and the conversion code was moved to a
+GstVideoAggregatorConvertPad subclass to avoid code duplication, make
+things less awkward for subclasses like the OpenGL-based video mixer,
+and make the API more consistent with the audio aggregator API.
+
+It is used by the compositor element, which is a replacement for
+‘videomixer’ which did not handle live inputs very well. compositor
+should behave much better in that respect and generally behave as one
+would expected in most scenarios.
+
+The compositor element has gained support for per-pad blending mode
+operators (SOURCE, OVER, ADD) which determines what operator to use for
+blending this pad over the previous ones. This can be used to implement
+crossfading.
+
+A number of OpenGL-based video mixer elements (glvideomixer, glmixerbin,
+glvideomixerelement, glstereomix, glmosaic) which are built on top of
+GstVideoAggregator have also been moved from -bad to -base now. These
+elements have been merged into the existing OpenGL plugin, so if you get
+duplicate type registration warnings when upgrading, check that you
+don’t have a stale gstopenglmixers plugin lying about somewhere.
Plugin removals
-- this section will be filled in in due course
+The following plugins have been removed from gst-plugins-bad:
+
+- The experimental daala plugin has been removed, since it’s not so
+ useful now that all effort is focused on AV1 instead, and it had to
+ be enabled explicitly with --enable-experimental anyway.
+
+- The spc plugin has been removed. It has been replaced by the gme
+ plugin.
+
+- The acmmp3dec and acmenc plugins for Windows have been removed. ACM
+ is an ancient legacy API and there was no point in keeping them
+ around for a licensed mp3 decoder now that mp3 patents have expired
+ and we have a decoder in -good. We also didn’t ship these in our
+ cerbero-built Windows packages, so it’s unlikely that they’ll be
+ missed.
Miscellaneous API additions
-- this section will be filled in in due course
+- GstBitwriter: new generic bit writer API to complement the existing
+ bit reader
+
+- gst_buffer_new_wrapped_bytes() creates a wrap buffer from a GBytes
+
+- gst_caps_set_features_simple() sets a caps feature on all the
+ structures of a GstCaps
+
+- New GST_QUERY_BITRATE query: This allows determining from downstream
+ what the expected bitrate of a stream may be which is useful in
+ queue2 for setting time based limits when upstream does not provide
+ timing information. tsdemux, qtdemux and matroskademux have basic
+ support for this query on their sink pads.
+
+- elements: there is a new “Hardware” class specifier. Elements
+ interacting with hardware devices should specify this classifier in
+ their element factory class metadata. This is useful to advertise as
+ one might need to put such elements into READY state to test if the
+ hardware is present in the system for example.
+
+- protection: Add a new definition for unspecified system protection
+
+- take functions for various mini objects that didn’t have them yet:
+ gst_query_take(), gst_message_take(), gst_tag_list_take(),
+ gst_buffer_list_take(). Unlike the various _replace() functions
+ _take() does not increase the reference count but takes ownership of
+ the mini object passed.
+
+- clear functions for various mini object types and GstObject which
+ unrefs the object or mini object (if non-NULL) and sets the variable
+ pointed to to NULL: gst_clear_structure(), gst_clear_tag_list(),
+ gst_clear_query(), gst_clear_message(), gst_clear_event(),
+ gst_clear_caps(), gst_clear_buffer_list(), gst_clear_buffer(),
+ gst_clear_mini_object(), gst_clear_object()
+
+- miniobject: new API gst_mini_object_add_parent() and
+ gst_mini_object_remove_parent()to set parent pointers on mini objects to ensure correct writability: Every container of miniobjects now needs to store itself as parent in the child object, and remove itself again later. A mini object is then only writable if there is at most one parent, that parent is writable itself, and the reference count of the mini object is 1.GstBuffer(for memories),GstBufferList(for buffers),GstSample(for caps, buffer, bufferlist), andGstVideoOverlayComposition`
+ were updated accordingly. Without this it was possible to have
+ e.g. a buffer list with a refcount of 2 used in two places at once
+ that both modify the same buffer with refcount 1 at the same time
+ wrongly thinking it is writable even though it’s really not.
+
+- poll: add API to watch for POLLPRI and stop treating POLLPRI as a
+ read. This is useful to wait for video4linux events which are
+ signalled via POLLPRI.
+
+- sample: new API to update the contents of a GstSample and make it
+ writable: gst_sample_set_buffer(), gst_sample_set_caps(),
+ gst_sample_set_segment(), gst_sample_set_info(), plus
+ gst_sample_is_writable() and gst_sample_make_writable(). This makes
+ it possible to reuse a sample object and avoid unnecessary memory
+ allocations, for example in appsink.
+
+- ClockIDs now keep a weak reference to underlying clock to avoid
+ crashes in basesink in corner cases where a clock goes away while
+ the ClockID is still in use, plus some new API
+ (gst_clock_id_get_clock(), gst_clock_id_uses_clock()) to check the
+ clock a ClockID is linked to.
+
+- The GstCheck unit test library gained a
+ fail_unless_equals_clocktime() convenience macro as well as some new
+ GstHarness API for for proposing meta APIs from the allocation
+ query: gst_harness_add_propose_allocation_meta(). ASSERT_CRITICAL()
+ checks in unit tests are now skipped if GStreamer was compiled with
+ GST_DISABLE_GLIB_CHECKS.
+
+- gst_audio_buffer_truncate() convenience function to truncate a raw
+ audio buffer
+
+
+Miscellaneous performance and memory optimisations
+
+As always there have been many performance and memory usage improvements
+across all components and modules. Some of them (such as dmabuf
+import/export) have already been mentioned elsewhere so won’t be
+repeated here.
+
+The following list is only a small snapshot of some of the more
+interesting optimisations that haven’t been mentioned in other contexts
+yet:
+
+- The GstVideoEncoder and GstVideoDecoder base classes now release the
+ STREAM_LOCK when pushing out buffers, which means (multi-threaded)
+ encoders and decoders can now receive and continue to process input
+ buffers whilst waiting for downstream elements in the pipeline to
+ process the buffer that was pushed out. This increases throughput
+ and reduces processing latency, also and especially for
+ hardware-accelerated encoder/decoder elements.
+
+- GstQueueArray has seen a few API additions
+ (gst_queue_array_peek_nth(), gst_queue_array_set_clear_func(),
+ gst_queue_array_clear()) so that it can be used in other places like
+ GstAdapter instead of a GList, which reduces allocations and
+ improves performance.
+
+- appsink now reuses the sample object in pull_sample() if possible
+
+- rtpsession only starts the RTCP thread when it’s actually needed now
+
+- udpsrc uses a buffer pool now and the GstUdpSrc object structure was
+ optimised for better cache performance
GstPlayer
-- this section will be filled in in due course
+- API was added to fine-tune the synchronisation offset between
+ subtitles and video
Miscellaneous changes
-- this section will be filled in in due course
+- As a result of moving to different FFmpeg APIs, encoder and decoder
+ elements exposed by the GStreamer FFmpeg wrapper plugin (gst-libav)
+ may have seen possibly incompatible changes to property names and/or
+ types, and not all properties exposed might be functional. We are
+ still reviewing the new properties and aim to minimise breaking
+ changes at least for the most commonly-used properties, so please
+ report any issues you run into!
OpenGL integration
-- this section will be filled in in due course
+- The OpenGL mixer elements have been moved from -bad to
+ gst-plugins-base (see above)
+
+- The Mesa GBM backend now supports headless mode
+
+- gloverlaycompositor: New OpenGL-based compositor element that
+ flattens any overlays from GstVideoOverlayCompositionMetas into the
+ video stream.
+
+- glalpha: New element that adds an alpha channel to a video stream.
+ The values of the alpha channel can either be set to a constant or
+ can be dynamically calculated via chroma keying. It is similar to
+ the existing alpha element but based on OpenGL. Calculations are
+ done in floating point so results may not be identical to the output
+ of the existing alpha element.
+
+- glupload: Implement direct dmabuf uploader, the idea being 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.
Tracing framework and debugging improvements
-- this section will be filled in in due course
+- There is now a GDB PRETTY PRINTER FOR VARIOUS GSTREAMER TYPES: For
+ GstObject pointers the type and name is added, e.g.
+ 0x5555557e4110 [GstDecodeBin|decodebin0]. For GstMiniObject pointers
+ the object type is added, e.g. 0x7fffe001fc50 [GstBuffer]. For
+ GstClockTime and GstClockTimeDiff the time is also printed in human
+ readable form, e.g. 150116219955 [+0:02:30.116219955].
+
+- GDB EXTENSION WITH TWO CUSTOM GDB COMMANDS gst-dot AND gst-print:
+
+ - gst-dot creates dot files that a very close to what
+ GST_DEBUG_BIN_TO_DOT_FILE() produces, but object properties and
+ buffer contents such as codec-data in caps are not available.
+
+ - gst-print produces high-level information about a GStreamer
+ object. This is currently limited to pads for GstElements and
+ events for the pads. The output may look like this:
+
+ (gdb) gst-print pad.object.parent
+ GstMatroskaDemux (matroskademux0) {
+ SinkPad (sink, pull) {
+ }
+ SrcPad (video_0, push) {
+ events:
+ stream-start:
+ stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/001:1274058367
+ caps: video/x-theora
+ width: 1920
+ height: 800
+ pixel-aspect-ratio: 1/1
+ framerate: 24/1
+ streamheader: < 0x5555557c7d30 [GstBuffer], 0x5555557c7e40 [GstBuffer], 0x7fffe00141d0 [GstBuffer] >
+ segment: time
+ rate: 1
+ tag: global
+ container-format: Matroska
+ }
+ SrcPad (audio_0, push) {
+ events:
+ stream-start:
+ stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/002:1551204875
+ caps: audio/mpeg
+ mpegversion: 4
+ framed: true
+ stream-format: raw
+ codec_data: 0x7fffe0014500 [GstBuffer]
+ level: 2
+ base-profile: lc
+ profile: lc
+ channels: 2
+ rate: 44100
+ segment: time
+ rate: 1
+ tag: global
+ container-format: Matroska
+ tag: stream
+ audio-codec: MPEG-4 AAC audio
+ language-code: en
+ }
+ }
+
+- gst_structure_to_string() now serialises the actual value of
+ pointers when serialising GstStructures instead of claiming they’re
+ NULL. This makes debug logging in various places less confusing,
+ because it’s clear now that structure fields actually hold valid
+ objects. Such object pointer values will never be deserialised
+ however.
Tools
-- this section will be filled in in due course
+- gst-inspect-1.0 has coloured output now and will automatically use a
+ pager if the output does not fit on a page. This only works in a
+ unix environment and if the output is not piped. If you don’t like
+ the colours you can disable them by setting the
+ GST_INSPECT_NO_COLORS=1 environment variable or passing the
+ --no-colors command line option.
GStreamer RTSP server
-- this section will be filled in in due course
+- Improved backlog handling when using TCP interleaved for data
+ transport. Before there was a fixed maximum size for backlog
+ messages, which was prone to deadlocks and made it difficult to
+ control memory usage with the watch backlog. The RTSP server now
+ limits queued TCP data messages to one per stream, moving queuing of
+ the data into the pipeline and leaving the RTSP connection
+ responsive to RTSP messages in both directions, preventing all those
+ problems.
+
+- Initial ULP Forward Error Correction support in rtspclientsink and
+ for RECORD mode in the server.
+
+- API to explicitly enable retransmission requests (RTX)
+
+- Lots of multicast-related fixes
+
+- rtsp-auth: Add support for parsing .htdigest files
GStreamer VAAPI
@@ -110,34 +748,350 @@ GStreamer validate
GStreamer Python Bindings
-- this section will be filled in in due course
+- add binding for gst_pad_set_caps()
+- pygobject dependency requirement was bumped to >= 3.8
-Build and Dependencies
+- new audiotestsrc, audioplot, and mixer plugin examples, and a
+ dynamic pipeline example
-- this section will be filled in in due course
+GStreamer C# Bindings
+
+- bindings for the GstWebRTC library
+
+
+GStreamer Rust Bindings
+
+The GStreamer Rust bindings are now officially part of the GStreamer
+project and are also maintained in the GStreamer GitLab.
+
+The releases will generally not be synchronized with the releases of
+other GStreamer parts due to dependencies on other projects.
+
+Also unlike the other GStreamer libraries, the bindings will not commit
+to full API stability but instead will follow the approach that is
+generally taken by Rust projects, e.g.:
+
+1) 0.12.X will be completely API compatible with all other 0.12.Y
+ versions.
+2) 0.12.X+1 will contain bugfixes and compatible new feature additions.
+3) 0.13.0 will _not_ be backwards compatible with 0.12.X but projects
+ will be able to stay at 0.12.X without any problems as long as they
+ don’t need newer features.
+
+The current stable release is 0.12.2 and the next release series will be
+0.13, probably around March 2019.
+
+At this point the bindings cover most of GStreamer core (except for most
+notably GstAllocator and GstMemory), and most parts of the app, audio,
+base, check, editing-services, gl, net. pbutils, player, rtsp,
+rtsp-server, sdp, video and webrtc libraries.
+
+Also included is support for creating subclasses of the following types
+and writing GStreamer plugins:
-Platform-specific improvements
+- gst::Element
+- gst::Bin and gst::Pipeline
+- gst::URIHandler and gst::ChildProxy
+- gst::Pad, gst::GhostPad
+- gst_base::Aggregator and gst_base::AggregatorPad
+- gst_base::BaseSrc and gst_base::BaseSink
+- gst_base::BaseTransform
+
+Changes to 0.12.X since 0.12.0
+
+Fixed
+
+- PTP clock constructor actually creates a PTP instead of NTP clock
+
+Added
+
+- Bindings for GStreamer Editing Services
+- Bindings for GStreamer Check testing library
+- Bindings for the encoding profile API (encodebin)
+
+- VideoFrame, VideoInfo, AudioInfo, StructureRef implements Send and
+ Sync now
+- VideoFrame has a function to get the raw FFI pointer
+- From impls from the Error/Success enums to the combined enums like
+ FlowReturn
+- Bin-to-dot file functions were added to the Bin trait
+- gst_base::Adapter implements SendUnique now
+- More complete bindings for the gst_video::VideoOverlay interface,
+ especially
+ gst_video::is_video_overlay_prepare_window_handle_message()
+
+Changed
+
+- All references were updated from GitHub to freedesktop.org GitLab
+- Fix various links in the README.md
+- Link to the correct location for the documentation
+- Remove GitLab badge as that only works with gitlab.com currently
+
+Changes in git master for 0.13
+
+Fixed
+
+- gst::tag::Album is the album tag now instead of artist sortname
+
+Added
+
+- Subclassing infrastructure was moved directly into the bindings,
+ making the gst-plugin crate deprecated. This involves many API
+ changes but generally cleans up code and makes it more flexible.
+ Take a look at the gst-plugins-rs crate for various examples.
+
+- Bindings for CapsFeatures and Meta
+- Bindings for
+ ParentBufferMeta,VideoMetaandVideoOverlayCompositionMeta`
+- Bindings for VideoOverlayComposition and VideoOverlayRectangle
+- Bindings for VideoTimeCode
+
+- UniqueFlowCombiner and UniqueAdapter wrappers that make use of the
+ Rust compile-time mutability checks and expose more API in a safe
+ way, and as a side-effect implement Sync and Send now
+
+- More complete bindings for Allocation Query
+- pbutils functions for codec descriptions
+- TagList::iter() for iterating over all tags while getting a single
+ value per tag. The old ::iter_tag_list() function was renamed to
+ ::iter_generic() and still provides access to each value for a tag
+- Bus::iter() and Bus::iter_timed() iterators around the corresponding
+ ::pop*() functions
+
+- serde serialization of Value can also handle Buffer now
+
+- Extensive comments to all examples with explanations
+- Transmuxing example showing how to use typefind, multiqueue and
+ dynamic pads
+- basic-tutorial-12 was ported and added
+
+Changed
+
+- Rust 1.31 is the minimum supported Rust version now
+- Update to latest gir code generator and glib bindings
+
+- Functions returning e.g. gst::FlowReturn or other “combined” enums
+ were changed to return split enums like
+ Result<gst::FlowSuccess, gst::FlowError> to allow usage of the
+ standard Rust error handling.
+
+- MiniObject subclasses are now newtype wrappers around the underlying
+ GstRc<FooRef> wrapper. This does not change the API in any breaking
+ way for the current usages, but allows MiniObjects to also be
+ implemented in other crates and makes sure rustdoc places the
+ documentation in the right places.
+
+- BinExt extension trait was renamed to GstBinExt to prevent conflicts
+ with gtk::Bin if both are imported
+
+- Buffer::from_slice() can’t possible return None
+
+- Various clippy warnings
+
+
+GStreamer Rust Plugins
+
+Like the GStreamer Rust bindings, the Rust plugins are now officially
+part of the GStreamer project and are also maintained in the GStreamer
+GitLab.
+
+In the 0.3.x versions this contained infrastructure for writing
+GStreamer plugins in Rust, and a set of plugins.
+
+In git master that infrastructure was moved to the GLib and GStreamer
+bindings directly, together with many other improvements that were made
+possible by this, so the gst-plugins-rs repository only contains
+GStreamer elements now.
+
+Elements included are:
+
+- Tutorials plugin: identity, rgb2gray and sinesrc with extensive
+ comments
+
+- rsaudioecho, a port of the audiofx element
+
+- rsfilesrc, rsfilesink
+
+- rsflvdemux, a FLV demuxer. Not feature-equivalent with flvdemux yet
+
+- threadshare plugin: ts-appsrc, ts-proxysrc/sink, ts-queue, ts-udpsrc
+ and ts-tcpclientsrc elements that use a fixed number of threads and
+ share them between instances. For more background about these
+ elements see Sebastian’s talk “When adding more threads adds more
+ problems - Thread-sharing between elements in GStreamer” at the
+ GStreamer Conference 2017.
+
+- rshttpsrc, a HTTP source around the hyper/reqwest Rust libraries.
+ Not feature-equivalent with souphttpsrc yet.
+
+- togglerecord, an element that allows to start/stop recording at any
+ time and keeps all audio/video streams in sync.
+
+- mccparse and mccenc, parsers and encoders for the MCC closed caption
+ file format.
+
+Changes to 0.3.X since 0.3.0
+
+- All references were updated from GitHub to freedesktop.org GitLab
+- Fix various links in the README.md
+- Link to the correct location for the documentation
+
+Changes in git master for 0.4
+
+- togglerecord: Switch to parking_lot crate for mutexes/condition
+ variables for lower overhead
+- Merge threadshare plugin here
+- New closedcaption plugin with mccparse and mccenc elements
+- New identity element for the tutorials plugin
+
+- Register plugins statically in tests instead of relying on the
+ plugin loader to find the shared library in a specific place
+
+- Update to the latest API changes in the GLib and GStreamer bindings
+- Update to the latest versions of all crates
+
+
+Build and Dependencies
+
+- The MESON BUILD SYSTEM BUILD IS NOW FEATURE-COMPLETE (*) and it is
+ now the recommended build system on all platforms and also used by
+ Cerbero to build GStreamer on all platforms. The Autotools build is
+ scheduled to be removed in the next cycle. Developers who currently
+ use gst-uninstalled should move to gst-build. The build option
+ naming has been cleaned up and made consistent and there are now
+ feature options to enable/disable plugins and various other features
+ on a case-by-case basis. (*) with the exception of plugin docs which
+ will be handled differently in future
+
+- Symbol export in libraries is now controlled via explicit exports
+ using symbol visibility or export defines where supported, to ensure
+ consistency across all platforms. This also allows libraries to have
+ exports that vary based on detected platform features and configure
+ options as is the case with the GStreamer OpenGL integration library
+ for example. A few symbols that had been exported by accident in
+ earlier versions may no longer be exported. These symbols will not
+ have had declarations in any public header files then though and
+ would not have been usable.
+
+- The GStreamer FFmpeg wrapper plugin (gst-libav) now depends on
+ FFmpeg 4.x and uses the new FFmpeg 4.x API and stopped relying on
+ ancient API that was removed with the FFmpeg 4.x release. This means
+ that it is no longer possible to build this module against an older
+ system-provided FFmpeg 3.x version. Use the internal FFmpeg 4.x copy
+ instead if you build using autotools, or use gst-libav 1.14.x
+ instead which targets the FFmpeg 3.x API and _should_ work fine in
+ combination with a newer GStreamer. It’s difficult for us to support
+ both old and new FFmpeg APIs at the same time, apologies for any
+ inconvenience caused.
+
+- Hardware-accelerated Nvidia video encoder/decoder plugins nvdec and
+ nvenc can be built against CUDA Toolkit versions 9 and 10.0 now. The
+ dynlink interface has been dropped since it’s deprecated in 10.0.
+
+- The (optional) OpenCV requirement has been bumped to >= 3.0.0 and
+ the plugin can also be built against OpenCV 4.x now.
+
+- New sctp plugin based on usrsctp (for WebRTC data channels)
+
+
+Platform-specific changes and improvements
Android
-- this section will be filled in in due course
+- The way that GIO modules are named has changed due to upstream GLib
+ natively adding support for loading static GIO modules. This means
+ that any GStreamer application using gnutls for SSL/TLS on the
+ Android or iOS platforms (or any other setup using static libraries)
+ will fail to link looking for the g_io_module_gnutls_load_static()
+ function. The new function name is now
+ g_io_gnutls_load(gpointer data). data can be NULL for a static
+ library. Look at this commit for the necessary change in the
+ examples.
macOS and iOS
-- this section will be filled in in due course
+- macOS binaries should be fully relocatable now
+
+- The way that GIO modules are named has changed due to upstream GLib
+ natively adding support for loading static GIO modules. This means
+ that any GStreamer application using gnutls for SSL/TLS on the
+ Android or iOS platforms (or any other setup using static libraries)
+ will fail to link looking for the g_io_module_gnutls_load_static()
+ function. The new function name is now
+ g_io_gnutls_load(gpointer data). data can be NULL for a static
+ library. Look at this commit for the necessary change in the
+ examples.
Windows
-- this section will be filled in in due course
+- The webrtcdsp element is shipped again as part of the Windows binary
+ packages, the build system issue has been resolved.
+- ‘Inconsistent DLL linkage’ warnings when building with MSVC have
+ been fixed
-Contributors
+- Hardware-accelerated Nvidia video encoder/decoder plugins nvdec and
+ nvenc build on Windows now, also with MSVC and using Meson.
-- this section will be filled in in due course
+- The ksvideosrc camera capture plugin supports 16-bit grayscale video
+ now
+
+- The wasapisrc audio capture element implements loopback recording
+ from another output device or sink
-... and many others who have contributed bug reports, translations, sent
+- wasapisink recover from low buffer levels in shared mode and some
+ exclusive mode fixes
+
+- dshowsrc now implements the GstDeviceMonitor interface
+
+
+Contributors
+
+Aleix Conchillo Flaqué, Alessandro Decina, Alexandru Băluț, Alex Ashley,
+Alexey Chernov, Alicia Boya García, Amit Pandya, Andoni Morales
+Alastruey, Andreas Frisch, Andre McCurdy, Andy Green, Anthony Violo,
+Antoine Jacoutot, Antonio Ospite, Arun Raghavan, Aurelien Jarno,
+Aurélien Zanelli, ayaka, Bananahemic, Bastian Köcher, Branko Subasic,
+Brendan Shanks, Carlos Rafael Giani, Christoph Reiter, Corentin Noël,
+Daeseok Youn, Daniel Drake, Daniel Klamt, Dardo D Kleiner, David Ing,
+David Svensson Fors, Devarsh Thakkar, Dimitrios Katsaros, Edward Hervey,
+Emilio Pozuelo Monfort, Enrique Ocaña González, Ezequiel Garcia, Fabien
+Dessenne, Fabrizio Gennari, Florent Thiéry, Francisco Velazquez,
+Freyr666, Garima Gaur, Gary Bisson, George Kiagiadakis, Georg Lippitsch,
+Georg Ottinger, Geunsik Lim, Göran Jönsson, Guillaume Desmottes, H1Gdev,
+Haihao Xiang, Haihua Hu, Harshad Khedkar, Havard Graff, He Junyan,
+Hoonhee Lee, Hosang Lee, Hyunjun Ko, Ingo Randolf, Iñigo Huguet, James
+Stevenson, Jan Alexander Steffens, Jan Schmidt, Jerome Laheurte, Jimmy
+Ohn, Joakim Johansson, Jochen Henneberg, Johan Bjäreholt, John-Mark
+Bell, John Nikolaides, Jonathan Karlsson, Jonny Lamb, Jordan Petridis,
+Josep Torra, Joshua M. Doe, Jos van Egmond, Juan Navarro, Jun Xie,
+Junyan He, Justin Kim, Kai Kang, Kim Tae Soo, Kirill Marinushkin, Kyrylo
+Polezhaiev, Lars Petter Endresen, Linus Svensson, Louis-Francis
+Ratté-Boulianne, Luis de Bethencourt, Luz Paz, Lyon Wang, Maciej Wolny,
+Marc-André Lureau, Marc Leeman, Marcos Kintschner, Marian Mihailescu,
+Marinus Schraal, Mark Nauwelaerts, Marouen Ghodhbane, Martin Kelly,
+Matej Knopp, Mathieu Duponchelle, Matteo Valdina, Matthew Waters,
+Matthias Fend, memeka, Michael Drake, Michael Gruner, Michael Olbrich,
+Michael Tretter, Miguel Paris, Mike Wey, Mikhail Fludkov, Naveen
+Cherukuri, Nicola Murino, Nicolas Dufresne, Niels De Graef, Nirbheek
+Chauhan, Norbert Wesp, Ognyan Tonchev, Olivier Crête, Omar Akkila,
+Patricia Muscalu, Patrick Radizi, Patrik Nilsson, Paul Kocialkowski, Per
+Forlin, Peter Körner, Peter Seiderer, Petr Kulhavy, Philippe Normand,
+Philippe Renon, Philipp Zabel, Pierre Labastie, Roland Jon, Roman
+Sivriver, Rosen Penev, Russel Winder, Sam Gigliotti, Sean-Der, Sebastian
+Dröge, Seungha Yang, Sjoerd Simons, Snir Sheriber, Song Bing, Soon,
+Thean Siew, Sreerenj Balachandran, Stefan Ringel, Stephane Cerveau,
+Stian Selnes, Suhas Nayak, Takeshi Sato, Thiago Santos, Thibault
+Saunier, Thomas Bluemel, Tianhao Liu, Tim-Philipp Müller, Tomasz
+Andrzejak, Tomislav Tustonić, U. Artie Eoff, Ulf Olsson, Varunkumar
+Allagadapa, Víctor Guzmán, Víctor Manuel Jáquez Leal, Vincenzo Bono,
+Vineeth T M, Vivia Nikolaidou, Wang Fei, wangzq, Whoopie, Wim Taymans,
+Wind Yuan, Wonchul Lee, Xabier Rodriguez Calvar, Xavier Claessens,
+Haihao Xiang, Yacine Bandou, Yeongjin Jeong, Yuji Kuwabara, Zeeshan Ali,
+
+… and many others who have contributed bug reports, translations, sent
suggestions or helped testing.
@@ -165,30 +1119,41 @@ the git 1.16 branch, which is a stable branch.
1.16.0
-1.16.0 is scheduled to be released around September 2018.
+1.16.0 is scheduled to be released around January/February 2019.
Known Issues
-- The webrtcdsp element is currently not shipped as part of the
- Windows binary packages due to a build system issue.
+- possibly breaking/incompatible changes to properties of wrapped
+ FFmpeg decoders and encoders (see above).
+
+- The way that GIO modules are named has changed due to upstream GLib
+ natively adding support for loading static GIO modules. This means
+ that any GStreamer application using gnutls for SSL/TLS on the
+ Android or iOS platforms (or any other setup using static libraries)
+ will fail to link looking for the g_io_module_gnutls_load_static()
+ function. The new function name is now
+ g_io_gnutls_load(gpointer data). See Android/iOS sections above for
+ further details.
Schedule for 1.18
-Our next major feature release will be 1.16, and 1.15 will be the
-unstable development version leading up to the stable 1.16 release. The
-development of 1.15/1.16 will happen in the git master branch.
+Our next major feature release will be 1.18, and 1.17 will be the
+unstable development version leading up to the stable 1.18 release. The
+development of 1.17/1.18 will happen in the git master branch.
-The plan for the 1.16 development cycle is yet to be confirmed, but it
-is expected that feature freeze will be around August 2017 followed by
-several 1.15 pre-releases and the new 1.16 stable release in September.
+The plan for the 1.18 development cycle is yet to be confirmed, but it
+is expected that feature freeze will be around July 2019 followed by
+several 1.17 pre-releases and the new 1.18 stable release in
+August/September.
-1.16 will be backwards-compatible to the stable 1.14, 1.12, 1.10, 1.8,
-1.6, 1.4, 1.2 and 1.0 release series.
+1.18 will be backwards-compatible to the stable 1.16, 1.14, 1.12, 1.10,
+1.8, 1.6, 1.4, 1.2 and 1.0 release series.
------------------------------------------------------------------------
-_These release notes have been prepared by Tim-Philipp Müller._
+_These release notes have been prepared by Tim-Philipp Müller with_
+_contributions from Sebastian Dröge._
_License: CC BY-SA 4.0_
diff --git a/RELEASE b/RELEASE
index 02ad21290..a6731fbce 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,6 +1,6 @@
-This is GStreamer gst-plugins-bad 1.15.0.1.
+This is GStreamer gst-plugins-bad 1.15.1.
-GStreamer 1.15 is the development version leading up to the next major
+GStreamer 1.15 is the development branch leading up to the next major
stable version which will be 1.16.
The 1.15 development series adds new features on top of the 1.14 series and is
@@ -11,8 +11,8 @@ Full release notes will one day be found at:
https://gstreamer.freedesktop.org/releases/1.16/
-Binaries for Android, iOS, Mac OS X and Windows will be provided shortly
-after the release.
+Binaries for Android, iOS, Mac OS X and Windows will usually be provided
+shortly after the release.
This module will not be very useful by itself and should be used in conjunction
with other GStreamer modules for a complete multimedia experience.
@@ -57,7 +57,7 @@ You can find source releases of gstreamer in the download
directory: https://gstreamer.freedesktop.org/src/gstreamer/
The git repository and details how to clone it can be found at
-http://cgit.freedesktop.org/gstreamer/gstreamer/
+https://cgit.freedesktop.org/gstreamer/gstreamer/
==== Homepage ====
@@ -65,10 +65,16 @@ The project's website is https://gstreamer.freedesktop.org/
==== Support and Bugs ====
-We use GNOME's bugzilla for bug reports and feature requests:
-http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
+We have recently moved from GNOME Bugzilla to GitLab on freedesktop.org
+for bug reports and feature requests:
-Please submit patches via bugzilla as well.
+ https://gitlab.freedesktop.org/gstreamer
+
+Please submit patches via GitLab as well, in form of Merge Requests. See
+
+ https://gstreamer.freedesktop.org/documentation/contribute/
+
+for more details.
For help and support, please subscribe to and send questions to the
gstreamer-devel mailing list (see below for details).
@@ -77,8 +83,14 @@ There is also a #gstreamer IRC channel on the Freenode IRC network.
==== Developers ====
-GStreamer is stored in Git, hosted at git.freedesktop.org, and can be cloned
-from there (see link above).
+GStreamer source code repositories can be found on GitLab on freedesktop.org:
+
+ https://gitlab.freedesktop.org/gstreamer
+
+and can also be cloned from there and this is also where you can submit
+Merge Requests or file issues for bugs or feature requests.
Interested developers of the core library, plugins, and applications should
-subscribe to the gstreamer-devel list.
+subscribe to the gstreamer-devel list:
+
+ https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
diff --git a/configure.ac b/configure.ac
index 0fc71540d..276484f57 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@ AC_PREREQ([2.69])
dnl initialize autoconf
dnl when going to/from release please set the nano (fourth number) right !
dnl releases only do Wall, git and prerelease does Werror too
-AC_INIT([GStreamer Bad Plug-ins],[1.15.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
+AC_INIT([GStreamer Bad Plug-ins],[1.15.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
AG_GST_INIT
@@ -51,11 +51,11 @@ dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
dnl - interfaces added -> increment AGE
dnl - interfaces removed -> AGE = 0
dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 1500, 0, 1500)
+AS_LIBTOOL(GST, 1501, 0, 1501)
dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.15.0.1
-GSTPB_REQ=1.15.0.1
+GST_REQ=1.15.1
+GSTPB_REQ=1.15.1
dnl *** autotools stuff ****
diff --git a/gst-plugins-bad.doap b/gst-plugins-bad.doap
index 546f5ea6c..878d4719e 100644
--- a/gst-plugins-bad.doap
+++ b/gst-plugins-bad.doap
@@ -35,6 +35,16 @@ real live maintainer, or some actual wide use.
<release>
<Version>
+ <revision>1.15.1</revision>
+ <branch>master</branch>
+ <name></name>
+ <created>2019-01-17</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.15.1.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.14.0</revision>
<branch>master</branch>
<name></name>
diff --git a/meson.build b/meson.build
index 12f6dbee7..50f4174b0 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gst-plugins-bad', 'c', 'cpp',
- version : '1.15.0.1',
+ version : '1.15.1',
meson_version : '>= 0.47',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])