=== release 1.14.0 === 2018-03-19 20:24:05 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.14.0 2018-03-19 20:24:05 +0000 Tim-Philipp Müller * 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: Update docs 2018-03-18 14:11:53 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: try to satisfy both mingw and msvc Fix-up for previous commit, hopefully. 2018-03-18 09:50:51 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add Amlogic upstreamer DRM driver support Amlogic Upstream driver is named meson, not to be confuse with the build system. 2018-03-17 23:52:31 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapiutil.c: wasapi: fix indentation 2018-03-17 23:48:13 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: fix unresolved symbol linker error with vs2017 on win10 ERROR: unresolved external symbol PKEY_AudioEngine_DeviceFormat Apparently the order of the header includes matters, and initguid.h must be included first. Let's hope this doesn't break anything on the other toolchains. https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/ceff4e2d-8f63-4ab6-b09b-fdac65d62a80/pkeyaudioenginedeviceformat-link-error?forum=windowspro-audiodevelopment 2018-03-16 19:21:31 +0200 Sebastian Dröge * gst-libs/gst/webrtc/Makefile.am: webrtc: Fix make distcheck for g-i build ERROR: ../../../../../gst-libs/gst/webrtc/webrtc-enumtypes.c: no such a file or directory 2018-03-16 17:00:56 +0200 Sebastian Dröge * gst-libs/gst/webrtc/Makefile.am: webrtc: Include webrtc-enumtypes in the g-i build 2018-03-16 11:07:01 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Remove parameter from gst_webrtc_rtp_sender_new() 2018-03-15 17:32:24 +0200 Sebastian Dröge * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: webrtc: Remove unused parameter from rtpsender constructor https://bugzilla.gnome.org/show_bug.cgi?id=794363 2018-03-15 17:31:50 +0200 Sebastian Dröge * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc: Add some locks to setters and remove non-existing functions from headers https://bugzilla.gnome.org/show_bug.cgi?id=794363 2018-03-15 16:58:40 +0200 Sebastian Dröge * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Rename GstWebRTCIceRole to GstWebRTCICERole for consistency Everything else is ICE, not Ice. https://bugzilla.gnome.org/show_bug.cgi?id=794362 2018-03-15 16:45:46 +0200 Sebastian Dröge * gst-libs/gst/webrtc/meson.build: webrtc: Fix gobject-introspection build with meson 2018-03-15 12:04:00 +0200 Sebastian Dröge * gst-libs/gst/webrtc/Makefile.am: * gst-libs/gst/webrtc/meson.build: webrtc: Add gobject-introspection integration https://bugzilla.gnome.org/show_bug.cgi?id=794347 2018-03-14 11:42:42 +0100 Jan Alexander Steffens (heftig) * ext/srt/Makefile.am: srt: Add missing gstsrt.h to noinst_HEADERS Reorder the list to match the SOURCES. https://bugzilla.gnome.org/show_bug.cgi?id=794320 2018-03-13 14:21:40 -0800 Hyunjun Ko * sys/msdk/msdk_libva.c: msdk: libva: remove unnecessary code and comments https://bugzilla.gnome.org/show_bug.cgi?id=794276 2018-03-13 14:20:50 -0800 Hyunjun Ko * sys/msdk/gstmsdk.c: * sys/msdk/msdk.c: msdk: adds new debug category https://bugzilla.gnome.org/show_bug.cgi?id=794276 2018-03-13 14:18:23 -0800 Hyunjun Ko * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: fix typo https://bugzilla.gnome.org/show_bug.cgi?id=794276 2018-03-13 13:54:17 -0800 Wang,Fei * sys/msdk/gstmsdkvideomemory.c: msdk: Fix the I420 video format support Make sure I420 surface mapping works as expected by using YV12 format and swap U/V plane's offset and pitches. https://bugzilla.gnome.org/show_bug.cgi?id=793865 === release 1.13.91 === 2018-03-13 19:22:10 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.13.91 2018-03-13 19:22:10 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.hierarchy: * 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: Update docs 2018-03-13 13:14:58 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: docs: update api decorators to ignore 2018-03-13 13:11:17 +0000 Tim-Philipp Müller * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: GST_EXPORT -> GST_WEBRTC_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:09:28 +0000 Tim-Philipp Müller * gst-libs/gst/wayland/wayland.h: wayland: GST_EXPORT -> GST_WAYLAND_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:07:52 +0000 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-bad-prelude.h: video: GST_EXPORT -> GST_URI_VIDEO_BAD_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:05:45 +0000 Tim-Philipp Müller * gst-libs/gst/uridownloader/Makefile.am: * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.h: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/uridownloader/uridownloader-prelude.h: uridownloader: GST_EXPORT -> GST_URI_DOWNLOADER_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:02:54 +0000 Tim-Philipp Müller * gst-libs/gst/player/Makefile.am: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-types.h: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * gst-libs/gst/player/gstplayer-video-renderer.h: * gst-libs/gst/player/gstplayer-visualization.h: * gst-libs/gst/player/gstplayer.h: * gst-libs/gst/player/meson.build: * gst-libs/gst/player/player-prelude.h: * gst-libs/gst/player/player.h: player: GST_EXPORT -> GST_PLAYER_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:57:56 +0000 Tim-Philipp Müller * gst-libs/gst/opencv/Makefile.am: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.h: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/opencv/opencv-prelude.h: opencv: GST_EXPORT -> GST_OPENCV_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:47:03 +0000 Tim-Philipp Müller * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts-prelude.h: * gst-libs/gst/mpegts/mpegts.h: * gst-libs/gst/mpegts/mpegts_enum.py: mpegts: GST_EXPORT -> GST_MPEGTS_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:43:00 +0000 Tim-Philipp Müller * gst-libs/gst/isoff/gstisoff.h: isoff: GST_EXPORT -> GST_ISOFF_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:41:42 +0000 Tim-Philipp Müller * common: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/interfaces/photography-prelude.h: * gst-libs/gst/interfaces/photography.h: photography: GST_EXPORT -> GST_PHOTOGRAPHY_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:36:26 +0000 Tim-Philipp Müller * gst-libs/gst/insertbin/gstinsertbin.h: insertbin: GST_EXPORT -> GST_INSERT_BIN_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:34:24 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/codecparsers-prelude.h: * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst-libs/gst/codecparsers/gstjpegparser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstmpegvideometa.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.h: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp8rangedecoder.h: * gst-libs/gst/codecparsers/gstvp9parser.h: * gst-libs/gst/codecparsers/meson.build: codecparsers: GST_EXPORT -> GST_CODEC_PARSERS_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:29:08 +0000 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/basecamerabinsrc-prelude.h: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: * gst-libs/gst/basecamerabinsrc/meson.build: basecamerabinsrc: GST_EXPORT -> GST_BASE_CAMERA_BIN_SRC_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:21:39 +0000 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-bad-prelude.h: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: * gst-libs/gst/audio/meson.build: audio: GST_EXPORT -> GST_AUDIO_BAD_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:17:50 +0000 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/Makefile.am: * gst-libs/gst/adaptivedemux/adaptive-demux-prelude.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: GST_EXPORT -> GST_ADAPTIVE_DEMUX_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-12 20:10:02 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: plugins: add some more elements and plugins 2018-03-10 18:51:14 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.c: wasapi: Minor fixes for debug logging 2018-03-10 18:49:59 +0530 Nirbheek Chauhan * sys/directsound/meson.build: meson: Add deviceprovider changes to directsoundsrc These were missed when they were added to Makefile.am 2018-03-09 22:05:49 +0530 Nirbheek Chauhan * sys/wasapi/gstaudioclient3.h: wasapi: Guard IAudioClient2 structs and enums These are already defined in the audioclient.h provided by the latest MinGW headers, and the existing #ifndef were obviously wrong. https://bugzilla.gnome.org/show_bug.cgi?id=794197 2018-03-10 11:41:54 +0000 Tim-Philipp Müller * 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-wasapi.xml: docs: add wasapi elements 2018-03-09 23:59:16 +0000 Tim-Philipp Müller * sys/msdk/meson.build: * tests/check/meson.build: meson: fix build when msdk is not found 2018-03-09 10:48:11 -0900 Wang,Fei * tests/check/Makefile.am: * tests/check/elements/msdkh264enc.c: * tests/check/meson.build: tests: add msdkh264enc element unit test https://bugzilla.gnome.org/show_bug.cgi?id=793236 2018-03-09 10:32:40 -0900 Sreerenj Balachandran * sys/msdk/meson.build: msdk: Fix the misspelled file name in meson build 2018-03-09 11:11:40 +0100 Emilio Pozuelo Monfort * sys/wasapi/Makefile.am: wasapi: ship audioclient3 header in tarballs https://bugzilla.gnome.org/show_bug.cgi?id=794197 2018-03-08 11:39:25 -0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: enc: fix missing some frames to be encoded There was not handling the end of encoding sequence in encoder. This patch does drain any remaining internal streams while decoder already does this. Document says: "To mark the end of the encoding sequence, call this function with a NULL surface pointer. Repeat the call to drain any remaining internally cached bitstreams—one frame at a time—until MFX_ERR_MORE_DATA is returned." https://bugzilla.gnome.org/show_bug.cgi?id=793236 2018-03-08 11:38:52 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdk: dec: fix leaks when flushing https://bugzilla.gnome.org/show_bug.cgi?id=793708 2018-03-08 11:38:30 -0900 Hyunjun Ko * sys/msdk/gstmsdkcontext.c: msdk: manage child sessions on parent GstMsdkContext Sometimes parent context is released before its children get released. In this case MFXClose of parent session fails. To make sure that child sessions are closed before closing a parent session, Parent context needs to manage child sessions and close them first when it's released. https://bugzilla.gnome.org/show_bug.cgi?id=793412 2018-03-08 11:37:52 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdk: dec: remove code to manage buffers with locked surface https://bugzilla.gnome.org/show_bug.cgi?id=793413 2018-03-08 11:37:12 -0900 Hyunjun Ko * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: msdk: manage MSDK surfaces seperately Currently a gst buffer has one mfxFrameSurface when it's allocated and can't be changed. This is based on that the life of gst buffer and mfxFrameSurface would be same. But it's not true. Sometimes even if a gst buffer of a frame is finished on downstream, mfxFramesurface coupled with the gst buffer is still locked, which means it's still being used in the driver. So this patch does this. Every time a gst buffer is acquired from the pool, it confirms if the surface coupled with the buffer is unlocked. If not, replace it with new unlocked one. In this way, user(decoder or encoder) doesn't need to manage gst buffers including locked surface. To do that, this patch includes the following: 1. GstMsdkContext - Manages MSDK surfaces available, used, locked respectively as the following: 1\ surfaces_avail : surfaces which are free and unused anywhere 2\ surfaces_used : surfaces coupled with a gst buffer and being used now. 3\ surfaces_locked : surfaces still locked even after the gst buffer is released. - Provide an api to get MSDK surface available. - Provide an api to release MSDK surface. 2. GstMsdkVideoMemory - Gets a surface available when it's allocated. - Provide an api to get an available surface with new unlocked one. - Provide an api to release surface in the msdk video memory. 3. GstMsdkBufferPool - In acquire_buffer, every time a gst buffer is acquired, get new available surface from the list. - In release_buffer, it confirms if the buffer's surface is unlocked or not. - If unlocked, it is put to the available list. - If still locked, it is put to the locked list. This also fixes bug #793525. https://bugzilla.gnome.org/show_bug.cgi?id=793413 https://bugzilla.gnome.org/show_bug.cgi?id=793525 2018-03-08 10:12:16 +0100 Michael Tretter * configure.ac: configure.ac: enable largefile support if possible https://bugzilla.gnome.org/show_bug.cgi?id=793103 2018-03-05 19:37:06 +0000 Tim-Philipp Müller * tests/check/libs/player.c: tests: player: disable broken test_play_media_info test Until someone can be bothered to debug + fix it. https://bugzilla.gnome.org/show_bug.cgi?id=787372 https://bugzilla.gnome.org/show_bug.cgi?id=787374 2018-03-05 14:21:14 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * tests/check/libs/h265parser.c: h265parser: allow partial matching on range extension profile Best to return a valid profiles rather than no profile if bitstream uses a not standard profile. https://bugzilla.gnome.org/show_bug.cgi?id=793876 2018-02-26 17:26:07 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * tests/check/libs/h265parser.c: h265parse: add support for 'Format range extensions profiles' Those profiles have been introduced in version 2 of the HEVC spec (A.3.5). https://bugzilla.gnome.org/show_bug.cgi?id=793876 2018-02-27 11:30:15 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: parse extra profile fields Those fields have been introduced in version 2 and later to define new profiles like the format range extensions profiles (A.3.5). NOTE: This patch breaks the parser ABI, rebuild needed. https://bugzilla.gnome.org/show_bug.cgi?id=793876 2018-03-01 11:08:44 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * tests/check/Makefile.am: * tests/check/libs/h265parser.c: * tests/check/meson.build: h265parser: decouple GstH265Profile and GstH265ProfileIDC We used to have the same enum to represent H265 profiles and idc values. Those are no longer the same with extension profiles defined from version 2 of the spec. Split those enums so the semantic of each is clearer and we'll be able to add extension profiles to GstH265Profile. Also add gst_h265_profile_tier_level_get_profile() to retrieve the GstH265Profile from the GstH265ProfileTierLevel. It will be used to implement the detection of extension profiles. https://bugzilla.gnome.org/show_bug.cgi?id=793876 === release 1.13.90 === 2018-03-03 22:39:27 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.13.90 2018-03-03 22:39:27 +0000 Tim-Philipp Müller * 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-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 2018-03-02 21:53:47 +0200 Sebastian Dröge * ext/iqa/iqa.c: iqa: Fix build with latest aggregator API changes 2018-03-02 10:37:53 -0500 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: Revert "h265parse: early set src caps when input not byte-stream" This reverts commit 93d29e80300f566b7a8e7d86beecb578fe03821c. 2018-03-02 10:37:45 -0500 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: Revert "h264parse: early set src caps when input is avc" This reverts commit 5ac886d85aab4b919f84fb80e2d1ef36dc8e647d. 2018-03-01 18:44:13 +0100 Mathieu Duponchelle * ext/dts/meson.build: * meson.build: meson: enable more warnings 2018-03-01 15:24:39 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * 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-schro.xml: * ext/Makefile.am: * ext/meson.build: * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: * ext/schroedinger/meson.build: * meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/schroenc.c: * tests/check/meson.build: Remove schroedinger plugin No upstream (website disappeared), no maintainer, and pretty much a fringe format anyway. https://bugzilla.gnome.org/show_bug.cgi?id=776215 2018-03-01 00:34:40 +0100 Mathieu Duponchelle * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: Port to latest GstAggregator segment API The aggregator segment is now exposed on the src pad https://bugzilla.gnome.org/show_bug.cgi?id=793946 2018-03-01 15:29:27 +0530 Nirbheek Chauhan * sys/directsound/gstdirectsoundplugin.c: * sys/wasapi/gstwasapi.c: wasapi: Increase rank to prefer over directsoundsrc Directsoundsrc/sink have multiple issues, most of which cannot be fixed at all because the API is deprecated and is implemented as a compatibility wrapper around WASAPI since Vista. Users and developers should now use the wasapisrc/sink elements, and future development efforts should go towards that. 2018-02-28 23:46:32 +0100 Mathieu Duponchelle * gst/mxf/mxfmux.c: mxfmux: instantiate adapter at the correct place 2018-02-28 00:06:41 +0000 Tim-Philipp Müller * 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-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-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-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.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-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.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-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-schro.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-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-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-zbar.xml: docs: add new audiolatency element to docs and update docs for git 2018-02-28 00:56:38 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Fix string format specifier and use microseconds everywhere Should fix warnings or build errors on 32-bit platforms and on Windows. Also clarify in logging that all timestamps are in microseconds. 2018-02-28 00:40:21 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Fix cerbero build failure Average latency is a 64-bit integer. https://ci.gstreamer.net/job/GStreamer-master/9962/ 2018-02-27 15:47:40 +0100 Alicia Boya García * ext/x265/gstx265enc.c: x265enc: Add format example for option-string https://bugzilla.gnome.org/show_bug.cgi?id=793881 2018-02-26 18:38:58 +0530 Nirbheek Chauhan * configure.ac: * gst/audiolatency/Makefile.am: * gst/audiolatency/gstaudiolatency.c: * gst/audiolatency/gstaudiolatency.h: * gst/audiolatency/meson.build: * gst/meson.build: audiolatency: New plugin for measuring audio latency Measures the audio latency between the source pad and the sink pad by outputting period ticks on the source pad and measuring how long they take to arrive on the sink pad. Very useful for quantifying latency improvements in audio pipelines. This plugin was particularly useful during development of the low-latency features of the wasapi plugin. https://bugzilla.gnome.org/show_bug.cgi?id=793839 2018-02-27 10:07:18 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/subtitle.h: * ext/ttml/ttmlparse.c: ttml: Add support for IMSC 1.0.1 fillLineGap attribute Strictly speaking, the TTML spec requires that text backgrounds extend only to the font height of the related text, rather than to the vertical distance between lines. The result of this is that there will typically be vertical gaps between line backgrounds through which moving video can be seen. Since this was unnacceptable to some content providers, v1.0.1 of the IMSC spec (which profiles TTML) adds a new attribute, itts:fillLineGap[1], that allows content authors to specify that clients should extend text backgrounds such that there are no gaps between lines. This attribute is also going to be included in the next release of EBU-TT-D. This patch adds support for fillLineGap to ttmlparse and ttmlrender. [1] https://www.w3.org/TR/ttml-imsc1.0.1/#itts-fillLineGap https://bugzilla.gnome.org/show_bug.cgi?id=787071 2018-02-26 11:20:51 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: plugins: add some more elements Many will still be missing corresponding doc sections in the source code though. 2018-02-26 16:08:28 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Clarify usage of low-latency property, add myself as author The low-latency property is *always* safe to enable, so applications that do realtime communication should set it, and the elements will automatically configure WASAPI to use the lowest possible device period, and the audioringbuffer in audiobasesink will also be configured accordingly. Applications can also use exclusive mode during capture and playback for the lowest possible latency if they know that the device will not be used by any other application. In this mode, the latency-time and buffer-time properties will be completely ignored. 2018-02-26 15:55:19 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Add a property for trying the AudioClient3 API The AudioClient3 API is only available on Windows 10, and we will automatically detect when it is available and use it. However, using it for capturing audio with low latency and without glitches seems to require setting the realtime priority of the entire pipeline to "critical", which we cannot do from inside the element. Hence, we can only enable that by default for wasapisink since apps should be able to safely set the low-latency property to TRUE if they need low-latency capture or playback. 2018-02-14 20:12:07 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Set realtime thread priority at runtime Use LoadLibrary() to set the thread characteristics at runtime so it works automagically regardless of where or how the plugin was built. 2018-02-14 12:13:36 +0530 Nirbheek Chauhan * sys/wasapi/gstaudioclient3.h: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Use IAudioClient3 interface when available This allows us to request ultra-low-latency device periods even in shared mode. However, this requires good drivers and Windows 10, so we only enable this when we detect that we are running on Windows 10 at runtime. You can forcibly disable this feature on Windows 10 by setting GST_WASAPI_DISABLE_AUDIOCLIENT3=1 in the environment. 2018-02-14 11:56:45 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.c: wasapi: __uuidof is simply not available in C Fix comment, and don't try to use it at all. 2018-02-14 11:47:14 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapiutil.c: wasapi: Set a default category for util functions Without this, they all go to the default category where they can be missed 2018-02-14 09:27:31 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Use a macro for HRESULT failure paths Saves a lot of boilerplate across all files. 2018-02-23 14:08:32 -0900 Sreerenj Balachandran * gst/debugutils/gstchecksumsink.c: checksumsink: remove src pad template from sink element https://bugzilla.gnome.org/show_bug.cgi?id=793774 2018-02-23 14:30:56 -0900 Hyunjun Ko * sys/msdk/msdk.c: msdk: remove unused code There's unused code remaining since MSDK bufferpool patches landed. https://bugzilla.gnome.org/show_bug.cgi?id=793741 2018-02-16 09:17:40 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtserversink.c: srt: Add support for streamheaders to sinks https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-16 09:16:12 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtserversink.c: srt: Refactor gst_srt_*_sink_send_buffer, extract send https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-16 09:12:51 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtserversink.c: srt: Add gst_srt_base_sink_stop https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-15 12:07:32 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: srt: Remove unused queued_buffers field https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-22 12:32:45 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: msdkenc: remove unnecessary memset https://bugzilla.gnome.org/show_bug.cgi?id=791479 2018-02-22 12:32:20 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: enc: Support force-key-unit events https://bugzilla.gnome.org/show_bug.cgi?id=791479 2018-02-07 16:29:59 -0500 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Expose framerate even if fixed_frame_rate flag isn't set There is nothing in the spec that state that framerate is not valid in that case. This aligns GStreamer with FFMPEG behaviour for similar streams. https://bugzilla.gnome.org/show_bug.cgi?id=793284 2018-02-21 19:45:33 +0000 Tim-Philipp Müller * meson.build: meson: simplify GST_DISABLE_GST_DEBUG check and don't use add_global_* add_global_arguments() can't be used in subprojects. It's entirely possible that -bad is a subproject but gstreamer is picked up from an installed location, so we should really use add_project_arguments() in both cases. 2018-02-21 11:41:40 -0500 Nicolas Dufresne * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/debugutils/gstfakevideosink.c: doc: Add section for fakevideosink https://bugzilla.gnome.org/show_bug.cgi?id=793624 2018-02-19 22:02:14 -0500 Nicolas Dufresne * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstfakevideosink.c: * gst/debugutils/gstfakevideosink.h: * gst/debugutils/meson.build: Add fakevideosink element This is a wrapper around fakesink that will advertise GstVideoMeta and other meta API in order to achieve zero-copy whenever possible. his new element is useful when doing performance testing with video stream and don't want the sink capability to change the upstream behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=793624 2018-02-19 21:52:43 -0500 Nicolas Dufresne * gst/debugutils/meson.build: meson: Remove unused header list https://bugzilla.gnome.org/show_bug.cgi?id=793624 2018-02-19 14:52:30 -0500 Nicolas Dufresne * ext/srt/meson.build: Fix SRT Library package config name 2018-02-19 15:45:36 +0900 Justin Kim * meson.build: meson: Use .dylib suffix if darwin For Mac OS, GST_EXTRA_MODULE_SUFFIX should be set as '.dylib'. https://bugzilla.gnome.org/show_bug.cgi?id=793585 2018-02-20 17:22:35 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: msdk: enc: Fix typo 2018-02-15 19:00:04 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: h264_enc: Enable B-pyramid prediction support Since there is already an "adaptive-B" option, just use boolean property for B-pyramid enabling. Fixme: Not sure whether this can be supported in vp8 and vp9. It could be possible through GPB (b without backward ref) but can't verify currently. We can move this as common property once verified with vp8 and vp9 without breaking any backward compatibility. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 17:29:13 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: Add more tuning options Added tuning options for mb level bitrate control, adaptive I-frame insertion, and adaptive B-frame insertion. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 16:31:56 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: h264_enc: Add slice size tuning option According to spec, it is a general property. But based on testing it only works for h264 encoder. Let's keep it as h264 specific for now. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 15:59:08 +0000 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/meson.build: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: move enum definitions to separte file Move enum value defintions which are (or in future) supported by more than one codec into a common file. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 15:05:10 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: encoder: h264: Enable trellis quantization tuning Add a new property "trellis" to enable trellis quantization. Keeping trellis as a flag value (which is boolean for gst x264 enc element) since it is possible to enable/disable this seperately for I,P and B frames through MediaSDK ext option headers. The subclass implementations always need to inform base-encoder if it requires the inclusion of Extend Header buffers (mfxExtCodingOption2 and mfxExtCodingOption3). https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 12:19:48 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: h264_enc: Add LookaheadDownsampling support This option controls down sampling in look ahead bitrate control mode. According to spec it is only supported in AVC. Fixme: Probably HEVC also have support for this in recent MSDK versions. We could move the enumeration types to common header usable for multiple codecs. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 17:01:38 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: encode: Add more rate control options MediaSDK has support for a number of rate control algorithms. Adding all possible options to the property rate-control. Fixme1: In case of failure, currently we don't have a proper method to show which rate-control has been failed. It could be better to add some extensive validation on EncQuery output in case of error. Unfortunately, not all ratecontrol methods are supported by every codecs and we don't have the dynamic detection of supported ratecontrol methods yet. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 16:27:47 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: encode: Add property to set slice/partitioning Adding a new property num-slices to set the number of slices/partitions per frame. Adding it as a general property for all codecs (except jpeg). https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 14:29:57 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh265enc.c: msdk: encoder: h265: generalize the behavior of "i-frames" property We have the property "i-frames" to set the IDR interval in a gop. Unfortunately MSDK HEVC encoder behaves bit differently for IdrInterval field, IdrInteval == 1 indicate every I-frame should be an IDR (which is IdrInterval == 0 for other codecs), IdrInteval == 2 means every other I-frame is an IDR (which is IdrInterval == 1 for other codecs) etc. So we generalize the behaviour of property "i-frames" by incrementing the value by one in each case (only for HEVC). https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 11:42:55 +0000 Sreerenj Balachandran * 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: encoder: register only the required properties The base encoder common properties are not valid for mjpeg encoder where there is no motion compensation or rate control. Delaying the property installation on the base gobject untill the subclass class_init get invoked. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-18 14:46:52 +0100 Víctor Manuel Jáquez Leal * sys/msdk/Makefile.am: msdk: add missing files for dist target https://bugzilla.gnome.org/show_bug.cgi?id=793563 2018-02-18 12:01:07 +0200 Sebastian Dröge * ext/colormanagement/Makefile.am: colormanagement: Link to libgstbase for basetransform 2018-02-18 11:49:25 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: GL_LIBS does not exist anymore but X11_LIBS does and is needed In case of X11 we have to call XInitThreads(). 2018-02-18 11:37:18 +0200 Sebastian Dröge * configure.ac: configure: Add configure check for gmodule-no-export-2.0 This is needed for all code using the g_module_*() API. 2018-02-16 17:36:04 +0200 Sebastian Dröge * configure.ac: webrtc: We need at least libnice 0.1.14 meson.build already required that, let's do the same for configure.ac 2018-02-15 19:44:23 +0000 Tim-Philipp Müller * 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-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-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-schro.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-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: * meson.build: Back to development === release 1.13.1 === 2018-02-15 17:13:06 +0000 Tim-Philipp Müller * NEWS: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.13.1 2018-02-15 18:50:51 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * tests/examples/Makefile.am: * tests/examples/compositor/Makefile.am: * tests/examples/compositor/crossfade.c: Dist compositor crossfade example and pythons script for meson build And add to autotools build so it gets disted. 2018-02-15 15:07:26 +0000 Tim-Philipp Müller * configure.ac: configure: fix build with --disable-external 2018-02-15 14:59:35 +0000 Tim-Philipp Müller * po/bg.po: * po/cs.po: * po/hr.po: * po/it.po: * po/ky.po: * po/nl.po: * po/sv.po: * po/tr.po: po: update translations 2018-02-15 14:57:00 +0000 Tim-Philipp Müller * 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.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-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-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-opengl.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-schro.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-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: update plugin docs 2018-02-14 15:57:48 +0100 Edward Hervey * sys/decklink/gstdecklink.cpp: decklink: Fix array of devices usage We need to allocate actual Device structures since we are going to be setting callbacks with address to that structure https://bugzilla.gnome.org/show_bug.cgi?id=777239 2018-02-14 14:36:00 +0100 Edward Hervey * gst/bayer/gstbayerorc-dist.c: * gst/compositor/compositororc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.c: Update ORC fallback disted code 2018-02-05 08:52:55 +0000 Sean DuBois * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Implement cpu-used in av1enc https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-13 11:16:29 +0100 Dimitrios Katsaros * gst/pnm/gstpnmenc.c: pnm: Fixed segfault in pnmenc The pnmenc was not mapping the input buffers as video buffers. Because of this, the video frame stride was not being set based on frame but based on the caps, which make the assumption that the strides are a power of 4. For input that is not a power of 4, this would lead to a SIGSEGV. https://bugzilla.gnome.org/show_bug.cgi?id=793419 2018-02-13 17:39:26 -0900 Sreerenj Balachandran * configure.ac: build: check gudev dependency for msdk plugin gudev is the dependecy for rendernode support in MediaSDK plugin. https://bugzilla.gnome.org/show_bug.cgi?id=791599 2018-02-13 14:41:52 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkvc1dec.c: msdk: vc1_dec: Add Advanced profile (WVC1) support Only supporting asf header-format having BDUs with startcode. It might be possible to support other formats too, but haven't tested. https://bugzilla.gnome.org/show_bug.cgi?id=792589 2018-02-13 14:41:20 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdk: dec: Add non-packetized stream handling support The gst-msdk decoders prefer packetized streams as input and in this case we can avoid unnecessary input bitstream copy to mfxBitstream. This works fine for codecs like h264 where we only support byte-stream with au alignment. Other format conversions should be done thorugh parsers. But this won't work for codecs like vc1 where we don't have an autoplugged parser. Even the parser is not capable to do format conversions. Packetizing through base decoders parse() routine will bring a lot of uncecessary of complexities and codecparser libraray dependency. So we just use an interal gst_adaper to keep track of bitstream which is not consumed by msdk durig AsynchronusDecoding. This adapter will get used only if subclass implementations set the "is_packetized" to FALSE for msdk base encoder. https://bugzilla.gnome.org/show_bug.cgi?id=792589 2018-02-13 14:40:54 -0900 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvc1dec.h: * sys/msdk/meson.build: msdk: Add VC1 decoder (simple and main profiles) Adding Simple and Main profiles decode support. Currently msdkvc1dec is not capable to handle the codec_data, only instream headers are supported. Also msdk vc1 decoder expecting instream with Sequence header as per SMPTE 421M Annex L. Most of the decdoebin/playbin pipeline won't work with the above constraints because vc1parse is still not an autoplug element. Only way to make mskdvc1dec work is by connecting a vc1parse as an upstream element. https://bugzilla.gnome.org/show_bug.cgi?id=792589 2018-02-13 14:40:22 -0900 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdkcontext.c: * sys/msdk/meson.build: msdk : Add RenderNode support Use drm render node as the first choice of device node file. Fall backs to use drm primary (/dev/dri/card[0-9]) if there is no render node available Basic logic is inherited from gstreamer-vaapi, but using gudev API rather than libudev directly. Added gudev library as dependency for msdk. https://bugzilla.gnome.org/show_bug.cgi?id=791599 2018-02-13 13:54:03 -0900 Hyunjun Ko * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_d3d.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/meson.build: msdk: Avoid build failures on Windows until d3d allocator is implemented https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:53:02 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: use video memory if there's another MSDK context in a pipeline 1\ If downstream's pool is MSDK bufferpool, 2\ If there's shared GstMsdkContext in the pipeline, a decoder decides to use video memory. This policy should be improved to handle more cases. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:52:14 -0900 Hyunjun Ko * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: msdk: add async depth from each msdk element to GstMsdkContext to be shared In case that pipeline is like ".. ! decoder ! encoder ! ..." with using video memory, decoder needs to know the async depth of the following msdk element so that it could allocate the correct number of video memory. Otherwise, decoder's memory is exhausted while processing. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:51:18 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkdec/enc: query GstContext to share GstMsdkContext How to share/create GstMsdkcontext is the following: - Search GstMsdkContext if there's in the pipeline. - If found, check if it's decoder, encoder or vpp by job type. - If it's same job type, it creates another instance of GstMsdkContext with joined-session. - Otherwise just use the shared GstMsdkContext. - If not found, just creates new instance of GstMsdkContext. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:50:48 -0900 Hyunjun Ko * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: msdk: context: add job type to figure out if joining session is necessary According to the driver's instruction, if there are two or more encoders or decoders in a process, the session should be joined by MFXJoinSession. To achieve this successfully by GstContext, this patch adds job type specified if it's encoder, decoder or vpp. If a msdk element gets to know if joining session is needed by the shared context, it should create another instance of GstContext with joined session, which is not shared. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:50:08 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: * sys/msdk/meson.build: msdk: adds util functions to handle GstContext To share GstMsdkContext with each msdk element, it will be using GstContext. Most common code is from gstreamer-vaapi. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:49:28 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: use bufferpool 1\ In decide_allocation, it makes its own msdk bufferpool. - If downstream supports video meta, it just replace it with the msdk bufferpool. - If not, it uses the msdk bufferpool as a side pool, which will be decoded into. and will copy it to downstream's bufferpool. 2\ Decide if using video memory or system memory. - This is not completed in this patch. - It might be decided in update_src_caps. - But tested for both system memory and video memory cases. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:48:32 -0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdkenc: use bufferpool 1\ Proposes msdk bufferpool to upstream. - If upstream has accepted the proposed msdk bufferpool, encoder can get msdk surface from the buffer directly. - If not, encoder get msdk surface its own msdk bufferpool and copy from upstream's frame to the surface. 2\ Replace arrays of surfaces with msdk bufferpool. 3\ In case of using VPP, there should be another msdk bufferpool with NV12 info so that it could convert first and encode. Calls gst_msdk_set_frame_allocator and uses video memory only on linux. and uses system memory on Windows until d3d allocator is implemented. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:44:08 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkbufferpool.h: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdksystemmemory.h: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: * sys/msdk/meson.build: msdk: supports bufferpool Implements 2 memory allocators: 1\ GstMsdkSystemAllocator: This will allocate system memory. 2\ GstMsdkVideoAllocator: This will allocate device memory depending on the platform. (eg. VASurface) Currently GstMsdkBufferPool uses video allocator currently by default only on linux. On Windows, we should use system memory until d3d allocator is implemented. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:43:42 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/meson.build: msdk: adds frame allocator using libva Implements msdk frame allocator which is required from the driver. Also makes these functions global so that GstMsdkAllocator could use the allocated video memory later and couple with GstMsdkMemory. GstMsdkContext keeps allocation information such as mfxFrameAllocRequest and mfxFrameAllocResponse after allocation. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:43:00 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: fix typo https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:41:28 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/meson.build: * sys/msdk/msdk.h: * sys/msdk/msdk_d3d.c: * sys/msdk/msdk_libva.c: msdk: implements GstMsdkContext. Makes GstMsdkContext to be a descendant of GstObject so that we could track the life-cycle of the session of the driver. Also replaces MsdkContext with this one. Keeps msdk_d3d.c alive for the future. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:39:44 -0900 Hyunjun Ko * sys/msdk/msdk_libva.c: * sys/msdk/msdk_libva.h: msdk: libva: adds utility function between mfx and libva https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:37:47 -0900 Hyunjun Ko * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: adds new utility functions for conversion from gstreamer to libmfx https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:36:46 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: move and rename the function msdk_video_alignment Move the msdk_video_alignment function from decoder to msdk.c and rename so that others could call this function without duplicated declaration. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 14:11:49 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs.types: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/meson.build: audioaggregator: remove, moved to -base https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-13 00:28:36 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-audiomixer.xml: * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * gst/audiomixer/gstaudiomixerorc-dist.c: * gst/audiomixer/gstaudiomixerorc-dist.h: * gst/audiomixer/gstaudiomixerorc.orc: * gst/audiomixer/meson.build: * gst/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/audiointerleave.c: * tests/check/elements/audiomixer.c: * tests/check/meson.build: audiomixer: remove, moved to -base https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-12 19:30:01 +0000 Tim-Philipp Müller * gst/proxy/gstproxy-priv.h: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: proxy: remove unneeded object private structs Plugin headers are not installed. Also mark internal funcs as internal. 2018-02-12 18:48:32 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-qt.xml: * ext/Makefile.am: * ext/qt/.gitignore: * ext/qt/Makefile.am: * ext/qt/gstplugin.cc: * ext/qt/gstqsgtexture.cc: * ext/qt/gstqsgtexture.h: * ext/qt/gstqtgl.h: * ext/qt/gstqtglutility.cc: * ext/qt/gstqtglutility.h: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsink.h: * ext/qt/gstqtsrc.cc: * ext/qt/gstqtsrc.h: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: * ext/qt/qtplugin.pro: * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: * tests/examples/meson.build: * tests/examples/qt/qmlsink/.gitignore: * tests/examples/qt/qmlsink/CMakeLists.txt: * tests/examples/qt/qmlsink/main.cpp: * tests/examples/qt/qmlsink/main.qml: * tests/examples/qt/qmlsink/play.pro: * tests/examples/qt/qmlsink/qml.qrc: * tests/examples/qt/qmlsrc/.gitignore: * tests/examples/qt/qmlsrc/grabqml.pro: * tests/examples/qt/qmlsrc/main.cpp: * tests/examples/qt/qmlsrc/main.qml: * tests/examples/qt/qmlsrc/qml.qrc: qt: remove plugin, moved to -good https://bugzilla.gnome.org/show_bug.cgi?id=754094 2018-02-12 15:44:00 +0000 Tim-Philipp Müller * configure.ac: configure: remove two more unneeded gtk conditionals 2018-02-08 19:11:21 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gtk.xml: * ext/Makefile.am: * ext/gtk/Makefile.am: * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkbasesink.h: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gstgtkutils.c: * ext/gtk/gstgtkutils.h: * ext/gtk/gstplugin.c: * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstglwidget.h: * ext/gtk/gtkgstwidget.c: * ext/gtk/gtkgstwidget.h: * ext/gtk/meson.build: * ext/meson.build: * tests/examples/Makefile.am: * tests/examples/gtk/Makefile.am: * tests/examples/gtk/glliveshader.c: * tests/examples/gtk/gtkglsink.c: * tests/examples/gtk/gtksink.c: * tests/examples/meson.build: gtk: remove, plugin has moved to -good 2017-12-07 15:52:39 +0100 Carlos Rafael Giani * gst/inter/gstinteraudiosrc.c: interaudio: Make sure both PTS and DTS values are defined The inter plugin originated in 0.10, which had only one timestamp. As a result, during the port to 1.0, the DTS were left undefined. This can cause subtle bugs with basesrc, which can end up incorrectly picking DTS over PTS and producing output buffers with incorrect timestamps. https://bugzilla.gnome.org/show_bug.cgi?id=791347 2018-02-09 02:05:23 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapisrc: Re-align device period if necessary Same changes as done for wasapisink in cbe2fc40a. Turns out this is sometimes also needed for capture. Reported by Mathieu_Du. Also improve logging in that case for easier debugging. 2018-02-08 19:09:45 +0000 Tim-Philipp Müller * meson.build: meson: make version numbers ints and fix int/string comparison WARNING: Trying to compare values of different types (str, int). The result of this is undefined and will become a hard error in a future Meson release. 2018-02-05 18:03:31 +0100 Víctor Manuel Jáquez Leal * gst/gdp/gstgdpdepay.c: Revert "gdpdepay: don't use allocator if it has custom alloc" This reverts commit f6cb16ab8cecfe683473b173732ad040e858abd5. 2018-02-08 15:19:12 +0530 Nirbheek Chauhan * gst/proxy/gstproxy.c: proxy: Fix plugin definition I'm not sure how this was missed in review... 2018-02-08 14:45:28 +0530 Nirbheek Chauhan * gst/proxy/Makefile.am: proxy: Remove dead code from Makefile.am There is no gstproxytest.c 2018-02-08 14:41:05 +0530 Nirbheek Chauhan * sys/wasapi/meson.build: meson: Fix wasapi build on Windows Was missing device prober and avrt (on msvc) 2018-02-08 14:27:43 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Unprepare when src/sink_prepare fails unprepare() is not called automatically on failure. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-08 03:11:10 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: wasapisink: Re-align device period if necessary Sometimes the minimum period advertised by a card results in an unaligned buffer size error during initialization in exclusive mode. In that case, we can fetch the actual buffer size in frames and calculate the period from that. We can't do this pre-emptively because we can't call GetBufferSize till Initialize has been called at least once. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-08 03:09:26 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapisink: pre-load the buffer with silence This reduces the chances of startup glitches, and also reduces the chances that we'll get garbled output due to driver bugs. Recommended by the WASAPI documentation. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-07 04:48:58 +0530 Nirbheek Chauhan * 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: Try to use latency-time and buffer-time So far, we have been completely discarding the values of latency-time and buffer-time and trying to always open the device in the lowest latency mode possible. However, sometimes this is a bad idea: 1. When we want to save power/CPU and don't want low latency 2. When the lowest latency setting causes glitches 3. Other audio-driver bugs Now we will try to follow the user-set values of latency-time and buffer-time in shared mode, and only latency-time in exclusive mode (we have no control over the hardware buffer size, and there is no use in setting GstAudioRingBuffer size to something larger). The elements will still try to open the devices in the lowest latency mode possible if you set the "low-latency" property to "true". https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:56:41 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Cover more HRESULT error messages This requires using allocated strings, but it's the best option. For instance, a call could fail because CoInitialize() wasn't called, or because some other thing in the stack failed. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:45:02 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Increase thread priority to reduce glitches This is particularly important when running in exclusive mode because any delays will immediately cause glitching. The MinGW version in Cerbero is too old, so we can only enable this when building with MSVC or when people build GStreamer for MSYS2 or other MinGW-based distributions. To force-enable this code when building with MinGW, build with CFLAGS="-DGST_FORCE_WIN_AVRT -lavrt". https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:40:49 +0530 Nirbheek Chauhan * 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: Allow opening devices in exclusive mode This provides much lower latency compared to opening in shared mode, but it also means that the device cannot be opened by any other application. The advantage is that the achievable latency is much lower. In shared mode, WASAPI's engine period is 10ms, and so that is the lowest latency achievable. In exclusive mode, the limit is the device period itself, which in my testing with USB DACs, on-board PCI sound-cards, and HDMI cards is between 2ms and 3.33ms. We set our audioringbuffer limits to match the device, so the achievable sink latency is 6-9ms. Further improvements can be made if needed. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:37:19 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Rename struct element for device name We will use ->device for storing a pointer to the IMMDevice structure which is needed for fetching the caps supported by devices in exclusive mode. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-08 11:32:32 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapidevice.h: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: wasapi: Fix indentation issues missed by the commit hook These were missed because the relevant commits were made on Windows where `indent` wasn't installed. 2018-02-08 16:55:43 +1100 Matthew Waters * ext/vulkan/vkupload.c: vulkanupload: actually loop over possible uploaders Fix some funky control that wasn't working CID #1417219 2018-02-08 15:48:49 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: Fix ffeb09e4 conditional Fixes ffeb09e4abe73d3b9e8909996816f0288e307e22 if (sscanf(...)) { // != 0 error; } Is not correct where != 0 indicates some kind of success. Check instead that the correct number of elements were slurped. 2018-02-08 15:47:33 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: change dead code to an assert CID #1429140 2018-02-08 15:29:13 +1100 Matthew Waters * tests/check/meson.build: dtls: add meson definition for recently added test 2018-02-08 15:25:22 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: bail on invalid rtpbin names If we fail parsing rtpbin pad names, someone has screwed up so critical and return. CID #1429142 2016-02-04 00:08:57 +0530 Nirbheek Chauhan * configure.ac: * gst/meson.build: * gst/proxy/Makefile.am: * gst/proxy/gstproxy-priv.h: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/proxy/meson.build: Add new 'proxy' element to stream data between pipelines This keep-it-simple plugin is useful when you want to pipe arbitrary data to a different pipeline within the same process. Some advantages over appsink/appsrc, the inter elements, etc: * Ease of use. Buffers, events, and caps are transmitted as-is without copying or serialization. * Enables zerocopy (especially DMABUF) transparently without any special-casing. * Enables usage with sinks or elements that are unreliable and may throw errors and need re-initialization, such as a network sink, a USB device sink (v4l2), etc. * Transmits arbitrary data, not just audio/video/subs * Can easily implement 1 producer pipeline -> N dynamic consumer pipelines within a single process when combined with the `tee` element. All queries, events, buffers, and buffer lists are proxied. State changes, clocks, and base times for the two pipelines are independent since the upstream and downstreams continue to be different pipelines. https://bugzilla.gnome.org/show_bug.cgi?id=788200 2018-02-07 20:15:00 +1100 Matthew Waters * ext/qt/gstqtglutility.cc: qt: don't #include platform specific gstglcontext_*.h headers They aren't public headers 2018-02-06 11:36:27 +0100 Guillaume Desmottes * ext/opencv/meson.build: opencv: fix OPENCV_PATH_NAME when using meson Meson was checking for $prefix/OpenCV but was then defining OPENCV_PATH_NAME with 'OpenCv' rather than 'OpenCV'. https://bugzilla.gnome.org/show_bug.cgi?id=793212 2018-02-05 08:53:20 +0000 Sean DuBois * ext/aom/gstav1enc.c: aom: Drop pointless cast from av1enc https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-02 06:56:17 +0000 Sean DuBois * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Fix all definite leaks in av1enc Track if the encoder has been inited, and cleanup if needed. Also unref input_state if has been set https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-02 05:43:20 +0000 Sean DuBois * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Consistent naming between av1dec and av1enc https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-31 07:34:32 +0000 Sean DuBois * ext/aom/gstav1dec.c: aom: Implement flush for av1dec https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-04 12:18:06 +0100 Tim-Philipp Müller * configure.ac: autotools: use -fno-strict-aliasing where supported https://bugzilla.gnome.org/show_bug.cgi?id=769183 2018-02-05 17:00:15 +1100 Matthew Waters * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dtls.c: tests: add a test for the dtls{enc,dec} elements 2018-02-05 16:57:52 +1100 Matthew Waters * ext/dtls/gstdtlsenc.c: dtls: drop upstream segment and stream-start events Fixes tests with GstHarness We will push our own from the srcpad task. 2018-02-05 17:41:25 +1100 Matthew Waters * ext/dtls/gstdtlsconnection.c: dtls: don't leak the system clock Obtain and release it as needed. 2018-02-05 16:16:31 +1100 Matthew Waters * ext/dtls/gstdtlsenc.c: dtlsenc: fix typo in is-client property description 2017-07-07 17:32:33 +0200 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: reject segment seeks While #782140 can stay open for actually handling these, the fact is currently adaptivedemux does not handle segment seeks, and as such should not accept them. https://bugzilla.gnome.org/show_bug.cgi?id=784655 2017-01-31 20:56:59 +1100 Matthew Waters * .gitignore: * 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/Makefile.am: * ext/meson.build: * ext/webrtc/Makefile.am: * ext/webrtc/fwd.h: * ext/webrtc/gstwebrtc.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/gstwebrtcstats.h: * ext/webrtc/icestream.c: * ext/webrtc/icestream.h: * ext/webrtc/meson.build: * ext/webrtc/nicetransport.c: * ext/webrtc/nicetransport.h: * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/utils.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/meson.build: * gst-libs/gst/webrtc/Makefile.am: * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/rtcsessiondescription.c: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc.h: * gst-libs/gst/webrtc/webrtc_fwd.h: * gst-libs/gst/webrtc/webrtc_mkenum.py: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-webrtc-uninstalled.pc.in: * pkgconfig/gstreamer-webrtc.pc.in: * pkgconfig/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/webrtcbin.c: * tests/check/meson.build: * tests/examples/Makefile.am: * tests/examples/meson.build: * tests/examples/webrtc/Makefile.am: * tests/examples/webrtc/meson.build: * tests/examples/webrtc/webrtc.c: * tests/examples/webrtc/webrtcbidirectional.c: * tests/examples/webrtc/webrtcswap.c: webrtcbin: an element that handles the transport aspects of webrtc connections SDP's are generated and consumed according to the W3C PeerConnection API available from https://www.w3.org/TR/webrtc/ The SDP is either created initially from the connected sink pads/attached transceivers as in the case of generating an offer or intersected with the connected sink pads/attached transceivers as in the case for creating an answer. In both cases, the rtp payloaded streams sent by the peer are exposed as separate src pads. The implementation supports trickle ICE, RTCP muxing, reduced size RTCP. With contributions from: Nirbheek Chauhan Mathieu Duponchelle Edward Hervey https://bugzilla.gnome.org/show_bug.cgi?id=792523 2018-01-16 20:53:15 +1100 Matthew Waters * ext/dtls/gstdtlsdec.c: dtls: remove reliance on a default GMainContext/Loop By removing the indirection to the main loop completely when receiving the peer certificate. For reference, the on-decoder-key signal does not have a redirection. 2018-01-31 13:21:58 -0500 Omar Akkila * gst/netsim/gstnetsim.c: netsim: fix format errors for different platforms https://bugzilla.gnome.org/show_bug.cgi?id=793073 2018-01-31 16:10:24 +0000 Tim-Philipp Müller * configure.ac: configure: fix opengl api conditional Fixes build of openglmixers plugin due to mismatch between build system conditional USE_OPENGL and define in gstglconfig.h 2018-01-31 13:03:28 +0000 Tim-Philipp Müller * configure.ac: * ext/gl/Makefile.am: configure: fix OpenGL API detection And don't build gl mosaic element unconditionally. 2018-01-31 13:02:07 +0000 Tim-Philipp Müller * configure.ac: autotools: fix build if OpenGL support is not available https://bugzilla.gnome.org/show_bug.cgi?id=793039 2018-01-29 12:53:51 +0100 Víctor Manuel Jáquez Leal * gst/gdp/gstgdpdepay.c: gdpdepay: don't use allocator if it has custom alloc gdpdepay element uses the decide_allocation to fetch the downstream allocator. Nonetheless it is possible that allocate uses a custom alloc function, which is not usable by gdpdepay, crashing later the application when the allocater buffer is NULL. This patch checks for the allocator flags and reset it if the allocator has a custom alloc function. https://bugzilla.gnome.org/show_bug.cgi?id=789476 2018-01-29 12:50:36 +0100 Víctor Manuel Jáquez Leal * gst/gdp/gstgdpdepay.c: gdpdepay: don't allocation query if caps aren't fixed When querying downstream for allocation, and the source caps hasn't set its caps, using ANY by default, it raises a critical message in console: CRITICAL **: gst_video_info_from_caps: assertion 'gst_caps_is_fixed (caps)' failed This patch bails out decide_allocation() if the caps aren't fixed. https://bugzilla.gnome.org/show_bug.cgi?id=789476 2018-01-31 03:51:47 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Correctly set ringbuffer segsize/segtotal This will set the actual-latency-time and actual-buffer-time of the sink and source. We completely ignore the latency-time/buffer-time values set on the element because WASAPI is happiest when it is reading/writing at the default period. Improving this will likely require the use of the IAudioClient3 interfaces which are not available in MinGW yet. https://bugzilla.gnome.org/show_bug.cgi?id=792897 2018-01-25 00:51:22 +0530 Nirbheek Chauhan * sys/wasapi/Makefile.am: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapidevice.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Implement a device provider for probing Currently only does probing and does not handle messages from endpoints/devices. In the future we want to do proper monitoring which is well-supported in WASAPI. https://bugzilla.gnome.org/show_bug.cgi?id=792897 2018-01-24 08:20:38 +0530 Nirbheek Chauhan * 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: Implement support for >2 channels We need to parse the WAVEFORMATEXTENSIBLE structure, figure out what positions the channels have (if they are positional), and reorder them as necessary. https://bugzilla.gnome.org/show_bug.cgi?id=792897 2018-01-30 20:35:07 +0000 Tim-Philipp Müller * meson.build: meson: use -fno-strict-aliasing where supported https://bugzilla.gnome.org/show_bug.cgi?id=769183 2018-01-30 11:34:58 -0900 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvp8parser.c: codecparser: vp8: Fix range decoder init According to the vp8 spec, the first partition (size can be derived from the frame header) should have all compressed header information and we implemented gst codecparser based on that. But it doesn't seem to be the case with some of the streams (#792773) and libvpx works fine because it uses the whole frame size (not the first partition size) to initialize the bool decoder. https://bugzilla.gnome.org/show_bug.cgi?id=792773 2018-01-22 16:21:27 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Make render rectangle property controllable https://bugzilla.gnome.org/show_bug.cgi?id=792798 2016-10-03 13:11:07 +0100 Vincent Penquerc'h * ext/gl/gstglvideomixer.c: glvideomixer: fix vertex_buffer leak We call the base class first as this will remove the pad from the aggregator, thus stopping misc callbacks from being called, one of which (process_textures) will recreate the vertex_buffer if it is destroyed https://bugzilla.gnome.org/show_bug.cgi?id=760873 2018-01-26 16:25:33 +0100 Jan Alexander Steffens (heftig) * configure.ac: * ext/srtp/Makefile.am: * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: * ext/srtp/gstsrtpenums.h: * ext/srtp/meson.build: * ext/srtp/srtp_mkenum.py: srtp: Support libsrtp2 For libsrtp 1, add defines that translate the new namespaced identifiers to the old unnamespaced ones. Also move the code for setting and getting a stream's ROC into two compat functions that match libsrtp2's API. It seems that libsrtp2 properly supports changing the ROC without having to touch the sequence numbers afterwards, given that srtp_set_stream_roc sets a pending_roc field, so the entire roc_changed dance should not be needed anymore. The compat functions for libsrtp 1 just contain our preexisting hacks, however, so it's still needed there. libsrtp2 has no means of discovering the streams in the session, so to create the stats structure we need to iterate over our own set of SSRCs. For this we also need to re-add the previously removed ssrcs_set to the encoder. https://bugzilla.gnome.org/show_bug.cgi?id=776901 2018-01-28 14:28:33 +0000 Tim-Philipp Müller * ext/rtmp/gstrtmpsink.c: rtmpsink: don't crash if there's streamheader field in the caps Fix regression when used in combination with new flvmux which was ported to GstAggregator, and which sends plain video/x-flv caps before sending full caps that include streamheaders. 2017-12-13 13:43:30 +0900 Justin Kim * sys/androidmedia/gst-android-hardware-camera.c: ahc: enable autofocus callback It should be enabled to set autofocus properly, but it seems to be commented out mistakenly from the first commit. https://bugzilla.gnome.org/show_bug.cgi?id=790945 2018-01-26 06:01:35 +0000 Sean DuBois * ext/aom/gstav1dec.c: * ext/aom/gstav1dec.h: * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Add direct casts for GstAV1Enc and GstAV1Dec https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-26 05:20:55 +0000 Sean DuBois * ext/aom/gstav1dec.c: * ext/aom/gstav1enc.c: aom: Deadline was removed from AV1 https://bugzilla.gnome.org/show_bug.cgi?id=791674 2017-12-31 07:47:47 +0000 Sean DuBois * ext/aom/gstav1dec.c: aom: Fix leak in av1dec AOM Decoder wasn't being destroyed in stop https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-14 22:22:07 +0000 Sean DuBois * ext/aom/gstav1enc.c: aom: Put av1enc config debugging under gst_av1_enc_debug namespace https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-25 21:23:09 +0200 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Add missing \ in multi-line #define 2018-01-22 14:06:31 +0200 Sebastian Dröge * sys/directsound/Makefile.am: * sys/directsound/gstdirectsounddevice.c: * sys/directsound/gstdirectsounddevice.h: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Add support for a DeviceProvider https://bugzilla.gnome.org/show_bug.cgi?id=792782 2018-01-24 08:20:13 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: wasapi: Fix some leaks, bugs, and compiler warnings Also improve logging. 2017-11-06 12:39:32 +0100 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h26{4,5}parse: expose chroma format and bit depth in caps This information could be used for example to pick a decoder supporting a specific chroma and/or bit depth, like 4:2:2 10 bits. It can also be used to inform earlier decoder about the format it is about to decode. https://bugzilla.gnome.org/show_bug.cgi?id=792039 2017-04-16 16:08:27 +0200 Tim-Philipp Müller * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvh264enc.c: nvenc: add "gop-size" property This also changes the default gop size from 30 to 75 frames. https://bugzilla.gnome.org/show_bug.cgi?id=781410 2018-01-24 10:21:48 +0000 Tim-Philipp Müller * sys/nvenc/gstnvbaseenc.c: nvenc: mark properties that can be changed at runtime accordingly https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-17 13:58:53 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: nvenc: Add support for dynamic bitrate/preset reconfiguration Useful for dynamically updating bitrate in live scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-14 15:30:44 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: nvenc: Add support for I420 https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-12-21 18:33:49 +0800 Jun Xie * gst/netsim/gstnetsim.c: netsim: fix misleading packet delay log packet delay time shall be calculated by ready_time minus current time https://bugzilla.gnome.org/show_bug.cgi?id=791838 2017-12-28 12:15:21 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregatorpad: implement skip_buffer Skip buffers from sources with a framerate higher than the output framerate. https://bugzilla.gnome.org/show_bug.cgi?id=781928 2018-01-23 14:49:51 +0000 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: decklink: don't crash if there are no decklink devices Fixes generic/states check. 2018-01-23 10:27:57 +0000 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: decklink: don't limit number of devices to 16 There is no fixed limitation for the number of devices on the decklink API side according to BlackMagic. Many PC motherboards are able support 6 decklink cards each with up to 8 inputs so a limit of 16 might well be too low. https://bugzilla.gnome.org/show_bug.cgi?id=777239 2018-01-23 09:01:00 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/mxf/mxfmux.c: Update for renamed aggregator pad API https://bugzilla.gnome.org/show_bug.cgi?id=791204 2018-01-22 18:53:22 +0000 Tim-Philipp Müller * ext/curl/meson.build: * meson.build: meosn: curl: also check for and use libssh2 if available 2018-01-22 13:44:29 +0200 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Don't dynamically load one DirectSound symbol at runtime Just link statically to it, like for all other DirectSound symbols. 2018-01-21 09:02:30 +0530 Nirbheek Chauhan wasapi: Rewrite most of the code to make it work Both the source and the sink elements were broken in a number of ways: * prepare() was assuming that the format was always S16LE 2ch 44.1KHz. We now probe the preferred format with GetMixFormat(). * Device initialization was done with the wrong buffer size (buffer_time is in microseconds, not nanoseconds). * sink_write() and src_read() were just plain wrong and would never write or read anything useful. * Some functions in prepare() were always returning FALSE which meant trying to use the elements would *always* fail. * get_caps() and delay() were not implemented at all. TODO: support for >2 channels TODO: pro-audio low-latency TODO: SPDIF and other encoded passthroughs Three new properties are now implemented: role, mute, and device. * 'role' designates the stream role of the initialized device, see: https://msdn.microsoft.com/en-us/library/windows/desktop/dd370842(v=vs.85).aspx * 'device' is a system-wide GUIDesque string for a specific device. * 'mute' is a sink property and simply mutes it. On my Windows 8.1 system, the lowest latency that works is: wasapisrc buffer-time=20000 wasapisink buffer-time=10000 aka, 20ms and 10ms respectively. These values are close to the lowest possible with the IAudioClient interface. Further improvements require porting to IAudioClient2 or IAudioClient3. https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/low-latency-audio 2018-01-20 15:49:35 +0000 Tim-Philipp Müller * tests/check/elements/camerabin.c: tests: camerabin: skip checks if we don't have encoders for the default format https://bugzilla.gnome.org/show_bug.cgi?id=767863 2018-01-17 12:06:28 +0000 Tim-Philipp Müller * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: fix struct initialisation warnings with clang Use init macros to avoid gst-indent making a mess of it. https://bugzilla.gnome.org/show_bug.cgi?id=787980 2018-01-16 11:35:22 +0000 Tim-Philipp Müller * tests/icles/Makefile.am: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.h: * tests/icles/metadata_editor.ui: tests: remove test that's never been ported to 1.x 2018-01-03 10:26:49 +0800 Jun Xie * ext/hls/gsthlsdemux.c: hlsdemux: fix memory leak while updating master playlist new_master needs to be freed if current playlist is not a master playlist https://bugzilla.gnome.org/show_bug.cgi?id=792146 2018-01-15 20:01:06 +0000 Tim-Philipp Müller * ext/lv2/gstlv2utils.c: lv2: fix inverted boolean properties https://bugzilla.gnome.org/show_bug.cgi?id=791330 2018-01-11 11:49:06 +0100 Edward Hervey * tests/check/elements/.gitignore: * tests/check/libs/.gitignore: check: Update gitignore 2018-01-11 11:41:33 +0100 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Remove useless check Any modification of ret in that "while (ret == GST_FLOW_OK)" loop will break (and cause it to stop the iteration). CID #1427095 2018-01-11 11:33:22 +0100 Edward Hervey * ext/kate/gstkateenc.c: kateenc: Refactoring for readability and leak fixing Instead of a massive if/else/if/else/if/else/...: * Use a common cleanup path for allocated items just before leaving the function (which will be free-d only if we're not dealing with a delayed SPU). * "goto" that cleanup path wherever needed CID #1427096 CID #1427114 2018-01-11 11:29:38 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdk.c: msdk: change plugin's description There are not only encoders nowadays, there are decoders too and a postprocessor in the future. 2018-01-10 18:24:07 -0900 Sreerenj Balachandran * sys/msdk/gstmsdk.c: msdk: init the debug category for mpeg2dec https://bugzilla.gnome.org/show_bug.cgi?id=792260 2018-01-10 10:40:24 -0900 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkmpeg2dec.c: * sys/msdk/gstmsdkmpeg2dec.h: * sys/msdk/meson.build: msdk: Add mpeg2 decoder https://bugzilla.gnome.org/show_bug.cgi?id=792260 2018-01-09 18:11:52 -0500 Olivier Crête * configure.ac: srt: The pkgconfig is "srt", not "libsrt" Also, always use the pkgconfig file instead of falling back 2018-01-09 18:10:04 -0500 Olivier Crête * ext/srt/gstsrtserversrc.c: * ext/srt/gstsrtserversrc.h: srt: Include srt.h inside object header Otherwise, newer GCC complains about now having sockaddr defined in the header. 2018-01-07 14:45:37 +0000 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: doc update for set_subtitle_uri() A call to this function without enabling the subtitle track has no effect. 2017-12-29 15:14:54 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing Sometimes we might get an audio packet without a corresponding video frame. In these cases, the stream and hardware reference timestamps would be missing, because they're called on the video frame. Instead of potentially breaking stuff downstream that might depend on these, we now extrapolate them. https://bugzilla.gnome.org/show_bug.cgi?id=792042 2017-04-26 19:05:21 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Detect gaps on incoming stream times, issue warnings When we receive a video or audio buffer, we calculate the next stream time based on the current stream time + buffer duration. If the next buffer's stream time is after that, we issue a warning. This happens because the stream time incoming from Decklink should be really constant and without gaps. If there is a gap, it means that something went wrong, e.g. the internal buffer pool is empty (too many buffers queued up downstream). https://bugzilla.gnome.org/show_bug.cgi?id=781776 2018-01-04 15:41:51 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: Revert "WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings""" This reverts commit 8dceeb5ccd6e46a61e3bbe79efa45275504fa500. 2018-01-04 15:41:50 +0200 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: Revert "WIP: Revert "Revert "debugutils: Added new jitterer element""" This reverts commit a401cb9a61f21c2fbc803eb3f098a9e2496edc06. 2018-01-04 15:41:49 +0200 Vivia Nikolaidou * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "WIP: Revert "Revert "timecodestamper: LTC from audio""" This reverts commit e0be05dc7059cc97dceb70a48ca9cad4ee2edce6. 2018-01-04 15:41:48 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add""" This reverts commit 2f9da0ab59ef4231e9c850afb089d920e9d25609. 2018-01-04 15:41:44 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: Revert "decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing" This reverts commit 6af863916a7bf3bfe31970fdc2dd2d42ea3f9690. 2017-12-29 15:14:54 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing Sometimes we might get an audio packet without a corresponding video frame. In these cases, the stream and hardware reference timestamps would be missing, because they're called on the video frame. Instead of potentially breaking stuff downstream that might depend on these, we now extrapolate them. https://bugzilla.gnome.org/show_bug.cgi?id=792042 2017-11-07 21:14:18 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add"" This reverts commit 05426d9298431c149807fb435cd1d632e9fd061f. 2017-11-07 21:14:15 +0200 Vivia Nikolaidou * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: WIP: Revert "Revert "timecodestamper: LTC from audio"" This reverts commit 1998ccf1fbd586ef1dc4b1e7256bad7af8136f13. 2017-11-07 21:14:01 +0200 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: WIP: Revert "Revert "debugutils: Added new jitterer element"" This reverts commit ccc1624d097cbfdaf9f99526c033c642c863400c. 2017-11-07 21:13:57 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings"" This reverts commit 07819afda461f5e4d77c9be9f484a7aae3c5ec8c. 2018-01-03 16:07:24 +0100 Edward Hervey * ext/openh264/gstopenh264dec.cpp: openh264dec: Remove useless check We are sure to have a frame at this point CID #1427138 2018-01-03 15:15:25 +0100 Edward Hervey * ext/hls/gsthlssink2.c: hlssink2: Remove useless if statement message will always be present CID #1409853 2018-01-03 12:15:01 +0100 Edward Hervey * ext/kate/gstkateenc.c: kateenc: Fix memory leak in error cases CID #1427096 CID #1427114 2018-01-02 20:51:25 +0900 Justin Kim * ext/srt/gstsrt.h: * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.h: srt: Remove platform dependent socket headers SRT modules entrust `gnetworking.h` with finding right headers for the platforms. https://bugzilla.gnome.org/show_bug.cgi?id=792123 2018-01-02 15:23:00 +0100 Edward Hervey * gst-libs/gst/codecparsers/nalutils.c: nalutils: Fix Exponential-Golomb 'ue' parsing The algorithm we use only supports up to a maximum exponent of 31 (for a maximum resulting of 2**32 -1) CID #1427097 2018-01-02 11:43:39 +0000 Tim-Philipp Müller * configure.ac: * ext/opencv/meson.build: opencv: allow all future 3.4.x versions Fix-up for previous patch which I modified incorrectly. https://bugzilla.gnome.org/show_bug.cgi?id=792114 2018-01-02 10:12:11 +0100 Nicola Murino * configure.ac: * ext/opencv/meson.build: opencv: allow compilation against 3.4.x https://bugzilla.gnome.org/show_bug.cgi?id=792114 2017-12-27 13:08:18 +0000 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: transfer ownership of info properties The previous code would emit GObject critical warnings when the info properties are NULL. https://bugzilla.gnome.org/show_bug.cgi?id=791982 2017-12-26 09:54:18 +0900 Justin Kim * ext/srtp/gstsrtp.c: srtp: get ssrc for Application-Defined RTCP Packet Application-defined RTCP(204) packets also have a ssrc in their header. To find a valid stream from the packet, the ssrc should be used. https://bugzilla.gnome.org/show_bug.cgi?id=791955 2017-12-26 13:52:18 +0100 Tim-Philipp Müller * meson.build: meson: skip translations if gettext is not available 2017-12-24 11:36:01 +0100 Tim-Philipp Müller * pkgconfig/gstreamer-bad-audio.pc.in: Fix typo in gstreamer-bad-audio-1.0.pc https://bugzilla.gnome.org/show_bug.cgi?id=791910 2017-12-23 12:53:39 +0100 Tim-Philipp Müller * ext/gl/Makefile.am: gl: local libs should come first in Makefile.am And keep consistent order in CFLAGS and LIBS. 2017-12-23 12:29:03 +0100 Mark Nauwelaerts * ext/gl/Makefile.am: gl: arrange for finding headers and libs that have moved to -base In file included from ../../../gst-plugins-bad/ext/gl/gstopengl.c:47:0: ../../../gst-plugins-bad/ext/gl/gstglmixerbin.h:25:29: fatal error: gst/video/video.h: No such file or directory 2017-12-19 23:13:34 -0500 Nicolas Dufresne * gst/festival/gstfestival.c: festival: Don't forward all queries This fixes issues where wavparse would query the file size upstream and assert because the file size is way smaller then what the WAVE header says. This patch disable or cane a handful of queries that make no sense to forward. https://bugzilla.gnome.org/show_bug.cgi?id=791811 2017-12-20 15:02:30 +0100 Edward Hervey * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Don't leak pads all audioaggregator subclasses were leaking the first sink pad :) 2017-12-20 15:01:16 +0800 Jun Xie * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix pending_segment log pending_segment shall be logged as GST_PTR_FORMAT, it's an event https://bugzilla.gnome.org/show_bug.cgi?id=791813 2017-12-19 17:35:39 -0500 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Block in preroll_wait on unlock The correct behaviour of anything stuck in the ->render() function between ->unlock() and ->unlock_stop() is to call gst_base_sink_wait_preroll() and only return an error if this returns an error, otherwise, it must continue where it left off! https://bugzilla.gnome.org/show_bug.cgi?id=774950 2017-07-22 20:32:20 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audioaggregator: implement input conversion https://bugzilla.gnome.org/show_bug.cgi?id=786344 2016-07-07 20:40:22 +0200 Marcin Lewandowski * sys/shm/gstshmsink.c: smhsink: Check return values of functions working on memory https://bugzilla.gnome.org/show_bug.cgi?id=768530 2017-12-19 21:35:08 +0000 Tim-Philipp Müller * sys/applemedia/videotexturecache.m: applemedia: don't include private cocoa gl header 2017-12-19 16:22:52 -0500 Olivier Crête * tests/examples/gtk/Makefile.am: gtk example: Fix cflags in Makefile.am 2017-12-19 19:23:43 +0000 Tim-Philipp Müller * ext/Makefile.am: gl: enable openglmixers plugin in autotools again too 2017-12-19 17:56:33 +0000 Tim-Philipp Müller * sys/applemedia/Makefile.am: applemedia: fix build after gl move to -base 2017-12-19 17:34:50 +0000 Tim-Philipp Müller * ext/gl/meson.build: * ext/meson.build: * meson.build: meson: gl: fix build of openglmixers plugin 2017-12-19 15:14:07 +0000 Tim-Philipp Müller * meson.build: meson: fix dependency type name to check for 2017-12-19 15:06:22 +0000 Tim-Philipp Müller * meson.build: meson: fix build with GstGL from gst-plugins-base as subproject - use right fallback variable - get platform/winsys variables from subproject instead of pkg-config With contributions from Thibault Saunier. 2017-12-19 13:03:28 +0000 Tim-Philipp Müller * ext/gtk/gtkgstglwidget.c: gtk: don't include uninstalled header 2017-12-13 01:05:32 +0000 Tim-Philipp Müller * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/badallocators.h: * gst-libs/gst/allocators/gstphysmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: * gst-libs/gst/allocators/meson.build: * gst-libs/gst/meson.build: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-bad-allocators.pc.in: allocatorsbad: physmem moved to -base 2017-12-17 20:54:06 +0000 Tim-Philipp Müller * configure.ac: * ext/gl/Makefile.am: * ext/gtk/Makefile.am: * ext/gtk/meson.build: * ext/qt/Makefile.am: * meson.build: * sys/androidmedia/Makefile.am: * sys/applemedia/Makefile.am: * sys/nvdec/Makefile.am: * sys/nvenc/Makefile.am: * tests/check/Makefile.am: * tests/examples/gtk/Makefile.am: gl: update plugins to use GstGL from -base 2017-12-11 14:20:59 +0000 Tim-Philipp Müller * configure.ac: * ext/gl/Makefile.am: * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectscurves.c: * ext/gl/effects/gstgleffectscurves.h: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorbalance.h: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfilterbin.c: * ext/gl/gstglfilterbin.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsinkbin.h: * ext/gl/gstglsrcbin.c: * ext/gl/gstglsrcbin.h: * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstgluploadelement.c: * ext/gl/gstgluploadelement.h: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * ext/gl/gstopengl.c: * ext/gl/meson.build: gl: most of opengl plugin has moved to -base, keep mixer bits in -bad for now Since they rely on GstVideoAggregator. Fix detection of things again, and Meson 2017-12-11 12:59:09 +0000 Tim-Philipp Müller * Makefile.am: * 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: * 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: * ext/Makefile.am: * ext/meson.build: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/.gitignore: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/README: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/base.h: * gst-libs/gst/gl/glprototypes/blending.h: * gst-libs/gst/gl/glprototypes/buffers.h: * gst-libs/gst/gl/glprototypes/debug.h: * gst-libs/gst/gl/glprototypes/eglimage.h: * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/glprototypes/fixedfunction.h: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/query.h: * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/glprototypes/sync.h: * gst-libs/gst/gl/glprototypes/vao.h: * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfeature_private.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglpixelformat.c: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_private.h: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/utils/gles_versions.h: * gst-libs/gst/gl/utils/opengl_versions.h: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/win32_message_source.c: * gst-libs/gst/gl/win32/win32_message_source.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/xcb_event_source.c: * gst-libs/gst/gl/x11/xcb_event_source.h: * gst-libs/gst/meson.build: * meson_options.txt: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/meson.build: * po/POTFILES.in: * tests/check/Makefile.am: * tests/check/elements/glimagesink.c: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglheaders.c: * tests/check/libs/gstglmatrix.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglquery.c: * tests/check/libs/gstglshader.c: * tests/check/libs/gstglsl.c: * tests/check/libs/gstglslstage.c: * tests/check/libs/gstglupload.c: * tests/check/meson.build: * tests/check/pipelines/simple-launch-lines.c: * tests/examples/Makefile.am: * tests/examples/gl/Makefile.am: * tests/examples/gl/clutter/.gitignore: * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/clutter/cluttershare.c: * tests/examples/gl/clutter/cluttershare.cbp: * tests/examples/gl/cocoa/.gitignore: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: * tests/examples/gl/generic/Makefile.am: * tests/examples/gl/generic/README: * tests/examples/gl/generic/cube/.gitignore: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/.gitignore: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/.gitignore: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/generic.sln: * tests/examples/gl/generic/recordgraphic/.gitignore: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/gl/gtk/3dvideo/.gitignore: * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/3dvideo/main.cpp: * tests/examples/gl/gtk/3dvideo/mviewwidget.c: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/README: * tests/examples/gl/gtk/filternovideooverlay/.gitignore: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/main.cpp: * tests/examples/gl/gtk/filtervideooverlay/.gitignore: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/.gitignore: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gstgtk.c: * tests/examples/gl/gtk/gstgtk.h: * tests/examples/gl/gtk/gtk.sln: * tests/examples/gl/gtk/switchvideooverlay/.gitignore: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: * tests/examples/gl/meson.build: * tests/examples/gl/qt/.gitignore: * tests/examples/gl/qt/Makefile.am: * tests/examples/gl/qt/README: * tests/examples/gl/qt/mousevideooverlay/gstthread.cpp: * tests/examples/gl/qt/mousevideooverlay/gstthread.h: * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pri: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.sln: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/mousevideooverlay/qrenderer.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pri: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.sln: * tests/examples/gl/qt/qglwtextureshare/.gitignore: * tests/examples/gl/qt/qglwtextureshare/AsyncQueue.h: * tests/examples/gl/qt/qglwtextureshare/README: * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: * tests/examples/gl/qt/qglwtextureshare/gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/main.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.h: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_gstthread.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_pipeline.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_qrenderer.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.pri: * tests/examples/gl/qt/videooverlay/videooverlay.pro: * tests/examples/gl/qt/videooverlay/videooverlay.sln: * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/meson.build: * tests/examples/gl/sdl/sdl.sln: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: * tests/examples/meson.build: gl: remove GStreamer OpenGL integration library and move to -base https://bugzilla.gnome.org/show_bug.cgi?id=754094 2017-12-18 16:54:15 -0500 Nicolas Dufresne * ext/ladspa/gstladspa.c: ladspa: Add Windows/OSX path support This is to mimic LV2 and what is commonly documented over the web. We also completely track these directories when updating the cache now. Unlike LV2, the plugins are flat in the plugin directories, so no need for the recursive lookup. This also fixes support for Fedora and other architecture using lib64 as a libdir. 2017-12-18 16:09:53 -0500 Nicolas Dufresne * ext/ladspa/meson.build: * ext/meson.build: meson: Enable ladspa plugins compilation 2017-12-18 14:42:21 -0500 Nicolas Dufresne * ext/lv2/gstlv2.c: lv2: Try and reflect better lilv default path While keeping it simple, this patch tries and mimic lilv default path. It does not matter if some path are duplicated due to symlink because in the end it's lilv that will walk these paths. The worst case is that we update our cache more often then strictly needed. https://bugzilla.gnome.org/show_bug.cgi?id=791717 2017-12-18 12:11:21 -0500 Nicolas Dufresne * ext/lv2/gstlv2.c: lv2: Recursively monitor the lv2 plugin path Otherwise we might not update the cache when needed. https://bugzilla.gnome.org/show_bug.cgi?id=791717 2017-12-19 01:16:35 +0530 Nirbheek Chauhan * configure.ac: * gst/meson.build: * gst/proxy/Makefile.am: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink-priv.h: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc-priv.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/proxy/meson.build: Revert "New element 'proxy' to send data to in-process pipelines" This reverts commit 8a056af05e23ad5b81cd1dc2699ae20abcf9b91a. Accidentally pushed this element, oops! Progress on this element is being tracked at: https://bugzilla.gnome.org/show_bug.cgi?id=788200 2017-12-19 01:14:03 +0530 Nirbheek Chauhan * meson.build: meson: Use cdata.set_quoted and set LIBDIR correctly LIBDIR must include the prefix. Also use set_quoted instead of manually quoting because it's clearer what the intention is. https://bugzilla.gnome.org/show_bug.cgi?id=791751 2017-09-26 20:12:24 +0530 Nirbheek Chauhan * configure.ac: * gst/meson.build: * gst/proxy/Makefile.am: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink-priv.h: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc-priv.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/proxy/meson.build: New element 'proxy' to send data to in-process pipelines This plugin is useful when you want to pipe arbitrary data to a different pipeline within the same process. Buffers, events, and caps are transmitted as-is without copying or manipulation. 2017-12-18 11:34:13 -0500 Nicolas Dufresne * ext/lv2/meson.build: * ext/meson.build: meson: Enable building LV2 Note that I only support lilv 0.22+ for now, because it's simple and old enough. If anyone needs to use the 0.16 support it will need to be added. 2017-12-18 20:39:07 +0800 Jun Xie * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix log integer format range_start/range_end shall be logged as G_GINT64_FORMAT https://bugzilla.gnome.org/show_bug.cgi?id=791735 2017-12-14 15:18:38 +0800 Jun Xie * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: parse xs:dateTime's timezone indicator The lexical form of xs:dateTime is YYYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm] timezone indicator (+|-)hh:mm] needs to be parsed. https://bugzilla.gnome.org/show_bug.cgi?id=791602 2017-12-16 10:44:26 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Fix-up set_seek_accurate() configuration to take a player config instead of a player instance 2017-12-16 10:22:44 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Consistently use GstVideoMultiviewFramePacking instead of Mode The latter needs additional metadata, and the former was already used everywhere except for the functions: in properties in playbin itself. 2017-12-15 17:38:12 +0100 Edward Hervey * ext/aom/gstav1enc.c: av1enc: Add debugging of configuration settings In preparation of making such properties configurable via gobject properties. 2017-12-15 17:37:08 +0100 Edward Hervey * ext/aom/gstav1enc.c: av1enc: Remove g_print for errors And use standard debugging system for it 2017-06-27 22:50:41 +0000 Sean DuBois * configure.ac: * ext/Makefile.am: * ext/aom/Makefile.am: * ext/aom/gstaom.c: * ext/aom/gstaom.h: * ext/aom/gstav1dec.c: * ext/aom/gstav1dec.h: * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: * ext/aom/meson.build: * ext/meson.build: Add aom plugin with av1enc and av1dec element https://bugzilla.gnome.org/show_bug.cgi?id=784160 2017-12-14 13:31:33 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gsthanddetect.cpp: opencv: handdetect: fix typo in example launch line 2017-11-22 14:29:51 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Start audio pre-rolling if the output is not started yet in render() This seems to allow to schedule audio samples correctly at their right times already. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-06 20:36:37 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Only start if both sinks are set to PLAYING already Not only if the video sink is set to PLAYING so far. Also give more useful debug output about why we don't start, and don't start if already started. Also refactor the function to early-return instead of having a huge if-else block over the whole function. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-06 19:42:42 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Include final flow return in debug output https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-11-27 17:41:52 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Check also against the clock if we run ahead of the clock too much The buffer level as reported by the Decklink driver is completely unreliable, and we could otherwise easily run ahead >1s if we're unlucky. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-11-22 16:37:12 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: decklinkaudiosink: Implement resampling/buffer reversing for trick-modes https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-11-08 19:31:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkaudiosink: Re-implement around GstBaseSink instead of GstAudioBaseSink The Decklink and GstAudioBaseSink APIs don't fit very well together, which causes various problems due to inaccuracies in the clock calculations and the actual ringbuffer and GStreamer's copy getting of sync. Problems are audio drop-outs and A/V sync getting wrong after pausing/seeking. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-14 14:49:10 +1100 Matthew Waters * common: Automatic update of common submodule From e8c7a71 to 3fa2c9e 2017-12-12 08:40:33 +0100 Josep Torra * sys/applemedia/vtenc.c: vtenc: fix a warning when building in MacOS 10.12 vtenc.c:564:20: error: incompatible pointer types passing 'GstVTEnc *' (aka 'struct _GstVTEnc *') to parameter of type 'GstVideoEncoder *' (aka 'struct _GstVideoEncoder *') 2017-12-12 08:31:47 +0100 Josep Torra * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cocoa: fix a warning when building in MacOS 10.12 gstglwindow_cocoa.m:186:60: error: incompatible pointer types sending 'GstGLContextCocoa *' (aka 'struct _GstGLContextCocoa *') to parameter of type 'GstGLContext *' (aka 'struct _GstGLContext *') 2017-12-08 14:46:35 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl: display: demote error level at display creation error https://bugzilla.gnome.org/show_bug.cgi?id=791391 2017-11-10 15:56:40 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Added "avwait-status" element message "avwait-status" is posted when avwait starts or stops passing through data (e.g. because target-timecode and end-timecode respectively have been reached). The attached structure includes a "dropping" boolean (set to TRUE if we are currently dropping data, FALSE otherwise), and a "running-time" GST_CLOCK_TIME which contains the running time of the change. https://bugzilla.gnome.org/show_bug.cgi?id=790170 2017-10-16 19:51:36 +0200 Mathieu Duponchelle * meson_options.txt: * tests/check/media/download-media: * tests/check/media/meson.build: * tests/check/meson.build: meson test: Enable libs tests https://bugzilla.gnome.org/show_bug.cgi?id=789064 2017-12-08 13:54:27 +0100 Edward Hervey * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-audio.pc.in: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: pkgconfig: Move fixes for move of aggregator to core 2017-12-07 19:14:23 +0000 Tim-Philipp Müller * gst/videoparsers/gsth264parse.c: h264parse: make caps writable before modifying them https://bugzilla.gnome.org/show_bug.cgi?id=790628 2017-12-07 11:02:02 +0900 Seungha Yang * ext/srt/gstsrt.c: srt: Post error message for NULL host ... instead of crash without any information https://bugzilla.gnome.org/show_bug.cgi?id=791329 2017-12-06 20:50:31 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Fix memory leak of shm allocator This fixes conflict resolution error introduced in commit: 816d115317c522c87297109de781c63b16146493 http://bugzilla.gnome.org/show_bug.cgi?id=790042 2017-11-01 18:05:26 +0900 Shinya Saito * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: waylandsink: Fix memory leak of shm allocator. gst_allocator_find() needs gst_object_unref() after usage. https://bugzilla.gnome.org/show_bug.cgi?id=790042 2017-11-25 15:35:05 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: fix coredump issue with external AdaptationSet fix wrong AdaptationSet list iterator https://bugzilla.gnome.org/show_bug.cgi?id=790812 2017-11-25 22:24:39 +0900 Hosang Lee * ext/hls/m3u8.c: m3u8: Parse and use AVERAGE-BANDWIDTH attribute if available The AVERAGE-BANDWIDTH attribute in the EXT-X-STREAM-INF tag represents the average segment bit rate of the Variant Stream, while the BANDWIDTH attribute represents the peak segment bit rate of the Variant Stream. (https://tools.ietf.org/html/draft-pantos-http-live-streaming-23#section-4.3.4.2) Using the average bit rate instead of the peak bit rate for variant switching is more efficient and appropriate. Sometimes due to VBR encoding, the BANDWIDTH may represent a value way above the average bit rate, which could result to players not switching to that variant stream although network bandwidth is sufficiently available. https://bugzilla.gnome.org/show_bug.cgi?id=790821 2017-11-26 11:46:06 +0900 Wonchul Lee * tests/examples/audiomixmatrix/Makefile.am: * tests/examples/audiomixmatrix/test-audiomixmatrix.c: examples: audiomixmatrix: Remove unused part matrix-value-array property is removed since 18917de9562d0d33cf80ca68c071eee3572d4483 commit applied https://bugzilla.gnome.org/show_bug.cgi?id=790836 2017-12-04 11:52:16 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix CropMeta support We copy the meta's from the original buffer to the wrapper or copied buffer. https://bugzilla.gnome.org/show_bug.cgi?id=790473 2017-12-01 16:53:34 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Enforce pixel aspect ratio when we cannot scale When we cannot scale, we need to enforce the pixel aspect ratio. This was partly implemented in the previous patch. Doing this simplify some of the code. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-11-22 10:42:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Wait until scheduled playback is actually stopped before continuing Otherwise we might "start" again, just to get finally stopped and then getting errors all over the place. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-06 19:15:40 +0900 Seungha Yang * ext/srt/gstsrt.c: srt: Fix warning error gstsrt.c: In function ‘gst_srt_client_connect_full’: gstsrt.c:151:6: error: ‘sock’ may be used uninitialized in this function [-Werror=maybe-uninitialized] if (sock != SRT_INVALID_SOCK) { https://bugzilla.gnome.org/show_bug.cgi?id=791302 2017-12-01 13:02:12 +0000 Ursula Maplehurst * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: when flushing, better handle IllegalStateException received from getOutputBuffer 1. Similar to 880f3d8, don't consider not getting an output buffer as an error during flushing. I've seen the following sometimes when encoding: W GStreamer+amcvideoenc: java.lang.IllegalStateException W GStreamer+amcvideoenc: at android.media.MediaCodec.getBuffer(Native Method) W GStreamer+amcvideoenc: at android.media.MediaCodec.getOutputBuffer(MediaCodec.java:2886) 2. For amcvideodec/enc, call _find_nearest_frame (which grabs a fresh reference on a GstVideoCodecFrame) after we have an output buffer, so as to not leak the reference, in case getting an output buffer fails. Otherwise, if we get an error grabbing the output buffer, we leak the reference to the frame. This can cause issues with a v4l2bufferpool feeding the encoder not being able to clean itself up properly due to buffers still being marked as in-use. https://bugzilla.gnome.org/show_bug.cgi?id=791258 2017-12-05 10:37:40 +0100 Víctor Manuel Jáquez Leal * ext/gl/gstgldownloadelement.c: gldownload: fix wrong enum When compiling with clang, an enum conversion error is triggered since GstVideoFrameFlags are not GstVideoFlags. This patch sets GST_VIDEO_FRAME_FLAG_NONE to the added video meta. https://bugzilla.gnome.org/show_bug.cgi?id=791251 2017-12-03 11:22:02 +0100 Edward Hervey * docs/libs/gst-plugins-bad-libs-docs.sgml: docs: aggregator has moved to base 2017-12-02 19:28:30 -0500 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: gldownload: Add missing ifdef for dmabuf and egl This fixes the build for platforms that don't support one or the other. 2017-12-02 15:25:38 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Prefer wayland over X11 As most Wayland compositors supports XWayland, X11 backend get selected. This also realign better GStreamer decision to what happens with GTK and other stack out there. 2017-12-02 15:25:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Add missing GL API to the doc 2017-01-10 19:23:58 -0600 Matt Fischer * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: gldownload: Add dmabuf exporting This patch adds code to gldownload to export the image as a dmabuf if requested. The element now exposes memory:DMABuf as a cap feature, and if it is selected, the element exports the texture to an EGL image and then a dmabuf. It also implements a fallback to system memory download in case the exportation failed. https://bugzilla.gnome.org/show_bug.cgi?id=776927 2017-12-02 16:01:25 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/libs/Makefile.am: * 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: * ext/openmpt/Makefile.am: * ext/wildmidi/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/meson.build: * gst-libs/gst/base/Makefile.am: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/base/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/meson.build: * gst/audiomixer/Makefile.am: * gst/audiomixer/meson.build: * gst/compositor/Makefile.am: * gst/compositor/meson.build: * gst/mxf/Makefile.am: * gst/mxf/meson.build: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base.pc.in: * pkgconfig/meson.build: * tests/check/Makefile.am: * tests/check/libs/aggregator.c: Remove GstAggregator from -bad, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=739010 2017-12-01 11:59:01 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add display-width/height properties This is to be used with gst_video_overlay_set_render_rectangle() so the application can calculate a rectangle that fits inside the display. The property changes are notify in a way that you can watch either notify::display-width or notify::display-height and both will be up-to-data when this is called back. Before the element is started, the size will be 0x0. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-09-14 18:12:18 +0800 Haihua Hu * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: support videooverlay interface Implement videooverlay interface in kmssink, divided into two cases: when driver supports scale, then we do refresh in show_frame(); if not, send a reconfigure event to upstream and re-negotiate, using the new size. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-09-12 15:46:01 +0800 Haihua Hu * sys/kms/gstkmssink.c: kmssink: add can-scale property https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-11-27 20:05:29 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: remove duplicated code remove duplicated code https://bugzilla.gnome.org/show_bug.cgi?id=790895 2017-11-27 21:27:23 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: fix memory leak GPtrArray in GstActiveStream is leaked in some cases. gst_mpdparser_free_active_stream shall be invoked to free GstActiveStream https://bugzilla.gnome.org/show_bug.cgi?id=790899 2017-11-28 13:44:54 +0000 Tim-Philipp Müller * pkgconfig/meson.build: meson: don't generate or install pkg-config file for gstreamer-wayland which is not for public consumption currently (headers not installed). https://bugzilla.gnome.org/show_bug.cgi?id=790912 2017-11-27 20:11:23 +1100 Matthew Waters * common: Automatic update of common submodule From 3f4aa96 to e8c7a71 2017-11-27 14:44:58 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/qt/gstqtglutility.cc: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: use public GstGLContext instead of Cocoa-specific one Allows keeping the GstGLCAOpenGLLayer public but not the winsys-specific context/display/window. 2017-11-27 14:44:24 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: Revert "gl: cocoa: sprinkle some GST_EXPORT" This reverts commit 94d798c3337013bd902c0fd0a66f7f6842243eeb. cocoac headers don't need to be public as all the functionality can be provided by the base class 2017-11-26 22:36:35 +0000 Tim-Philipp Müller * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: gl: cocoa: sprinkle some GST_EXPORT Undefined symbols for architecture x86_64: "_gst_gl_context_cocoa_get_type", referenced from: __create_layer in libgstopengl_la-caopengllayersink.o Might need some more in other headers, but first need to clarify what exactly should be exported, there are some inconsistencies (installed header files vs. funcs in docs). 2017-11-26 18:35:13 +0000 Tim-Philipp Müller * Makefile.am: autotools: remove check-exports target dep which no longer exists 2017-11-26 16:32:01 +0000 Tim-Philipp Müller * Makefile.am: * win32/MANIFEST: * win32/common/libgstadaptivedemux.def: * win32/common/libgstbadaudio.def: * win32/common/libgstbadbase.def: * win32/common/libgstbadvideo.def: * win32/common/libgstbasecamerabinsrc.def: * win32/common/libgstcodecparsers.def: * win32/common/libgstinsertbin.def: * win32/common/libgstisoff.def: * win32/common/libgstmpegts.def: * win32/common/libgstphotography.def: * win32/common/libgstplayer.def: * win32/common/libgsturidownloader.def: win32: remove .def file with exports They're no longer needed, symbol exporting is now explicit via GST_EXPORT in all cases (autotools, meson, incl. MSVC). 2017-11-26 16:25:50 +0000 Tim-Philipp Müller * configure.ac: autotools: stop controlling symbol visibility with -export-symbols-regex Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT. This should result in consistent behaviour for the autotools and Meson builds. 2017-11-26 16:07:13 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * win32/common/libgstcodecparsers.def: codecparsers: mpegvideoparser: remove API that was deprecated 5 years ago Libraries in -bad are not covered by our API/ABI stability guarantees, and to the best of our knowledge everyone using this API has moved to the replacement APIs ages ago. 2017-11-25 20:06:57 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Add prototype for gst_wayand_pool_get_type() 2017-11-22 22:27:04 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Rollback video info changes when copying We change the video info base on the received buffer. We need to rollback these changes whenever we want to copy into our internal pool of buffers. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:18:24 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlshmallocator.c: waylandsink: Validate strides and offset when using FD as SHM As SHM interface only support 1 stride, and 1 offset, we need to make sure that there is no padding between planes for planar formats. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:17:14 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Update video info size to buffer size We where setting the size to the first memory size, this may be too small in case we received a buffer with multiple memory. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:12:12 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Allocate only what's needed when copying There was this regression that we'd be using the updated video info size instead of default size when initializing the pool. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:11:02 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Only try SHM for single memory buffer https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:10:03 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: wlwindow: Only update video info on new render The sink->video_info might not reflect the current buffer when expose is being called. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-20 21:09:28 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Disable video-alignment from the pool The SHM interface does not allow passing arbitrary strides and offsets, for this reason, we simply disable this feature from the proposed pool. This fixes video artifact seen when using the FFMPEG based video decoder. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2016-10-24 23:02:38 +0200 Havard Graff * ext/opus/gstopusparse.c: opusparse: fix uninitialized-warning 2016-01-29 11:46:52 +0100 Stian Selnes * gst/videoparsers/h263parse.c: h263parse: Add debug log for more annexes when plustype 2017-11-25 13:10:11 +0100 Edward Hervey * ext/hls/m3u8.c: hls: Don't leak mutex 2017-11-25 12:48:40 +0100 Edward Hervey * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't leak string The result of gst_video_colorimetry_to_string () needs to be free'd 2017-11-25 11:27:57 +0000 Tim-Philipp Müller * gst/netsim/gstnetsim.c: netsim: simplify getting buffer size in bits 2017-10-10 15:45:47 +0200 Håvard Graff * pkgconfig/meson.build: meson.build: use join_paths() on prefix So that "/" are correct on Windows and the paths in the .pc files are like C:/some/where and not C:\some\where. 2017-11-25 11:16:28 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: ignore waylandsink in state change test "Unexpected critical/warning: Wayland compositor is missing the ability to scale, video display may not work properly." 2016-11-01 16:03:00 +0100 Havard Graff * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: add "allow-reordering" property Reordering of packets is not very common in networks, and the delay functions will always introduce reordering if delay > packet-spacing, so by setting allow-reordering to FALSE you guarantee that the packets are in order, while at the same time introducing delay/jitter to them. 2016-10-03 18:43:24 +0200 Stian Selnes * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: Add gamma distribution for delay This simulates the delay on wifi networks better. 2016-08-02 13:45:54 +0200 Stian Selnes * gst/netsim/gstnetsim.c: netsim: Change max-delay to be inclusive It is more intuitive for the user that in order to acheive a constant delay min-delay and max-delay are equal. 2016-08-01 20:27:03 +0200 Stian Selnes * gst/netsim/Makefile.am: * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: * gst/netsim/meson.build: netsim: Add "delay-distribution" property plus normal distribution By using the property "delay-distribution" the user can control how the delay applied to delayed packets is distributed. This is either the uniform distribution (as before) or the normal distribution. "min-delay" and "max-delay" control both distributions. For the normal distribution it defines the bounds of the 95% confidence interval. 2017-11-23 13:47:48 +0100 Havard Graff * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: add token bucket algorithm for simulating network congestion 2017-11-23 13:48:32 +0100 Havard Graff * gst/netsim/gstnetsim.c: netsim: change property enums to PROP_* and fix indentation 2017-11-24 22:09:25 +0000 Tim-Philipp Müller * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: remove private struct and padding There's no need for these things, since the plugin headers are not public, and all the extra ->priv-> just clutter the code. 2017-11-25 09:41:00 +0100 Edward Hervey * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Handle bitrate > 2**31 On very-high connection, we could quite well exceed that. Instead use gint64 for max-bitrate. 2017-11-24 17:06:22 -0500 Nicolas Dufresne * tests/examples/gl/sdl/sdlshare.c: sdlshare: Destroy GL backend buffer before the GL Context This was otherwise leading to a deadlock in the GL library. 2017-11-24 16:58:21 -0500 Nicolas Dufresne * tests/examples/gl/sdl/sdlshare2.c: sdlshare2: Fix race conditions The client-draw callback is running on the GL Thread, which will be required to map the buffer. Map early, and pass the mapped frame instead. On top of that, make sure to signal any pending draw before trying to push EOS, as some pad locks might be taken. This is the cost of using the same thread to control GStreamer and to render GL. 2017-11-24 16:58:01 -0500 Nicolas Dufresne * tests/examples/gl/meson.build: * tests/examples/gl/sdl/meson.build: * tests/examples/meson.build: meson: Build gl/sdl examples 2017-11-24 15:48:19 -0500 Nicolas Dufresne * tests/examples/meson.build: meson: Playout example has not GL deps 2017-11-24 15:19:25 -0500 Nicolas Dufresne * tests/examples/meson.build: meson: Add missing examples directory This will make it more visible what is missing in meson. 2017-11-24 15:17:02 -0500 Nicolas Dufresne * tests/examples/meson.build: meson: Build playout example 2017-11-22 14:35:31 +0100 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: early set src caps when input not byte-stream When input is not in byte-stream format there is no need to wait for the first buffer before setting src caps. We already have all the information from the input codec_data. This allow us to already configure downstream elements allowing them, for example, to already allocate their internal buffers as they know the format of the input they are about to receive. Same change as the one I just did in h264parse. https://bugzilla.gnome.org/show_bug.cgi?id=790709 2017-11-22 14:35:31 +0100 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: h264parse: early set src caps when input is avc When input is in AVC format there is no need to wait for the first buffer before setting src caps. We already have all the information from the input codec_data. This allow us to already configure downstream elements allowing them, for example, to already allocate their internal buffers as they know the format of the input they are about to receive. https://bugzilla.gnome.org/show_bug.cgi?id=790709 2017-11-24 08:06:52 +0100 Edward Hervey * sys/uvch264/gstuvch264_src.c: uvch264src: Check return values of all xu_query calls And use warnings/returns like for other calls CID #1373414 CID #1373417 2017-11-24 08:00:21 +0100 Edward Hervey * ext/gtk/gtkgstglwidget.c: gtk: Fix possibility of NULL variable It's quite unlikely since it's initialized in instance initialization. CID #1417721 2017-11-24 07:57:49 +0100 Edward Hervey * ext/dc1394/gstdc1394src.c: dc1394src: Remove logically dead code buffer would always be NULL in the error case. Simplify and just return GST_FLOW_ERROR CID #1417216 2017-11-23 23:01:52 +1100 Jan Schmidt * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: viv-fb: Don't destroy the native FB display It causes crashes in applications because the result of fbGetDisplay() might be in use elsewhere in the application and Vivante doesn't seem to do any refcounting 2017-11-23 22:58:40 +1100 Jan Schmidt * ext/qt/gstqtglutility.cc: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: Revert "gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass" This reverts commit 47fd4d391e775c11f529705bb0f457a9d25ba5e7. This patch is incorrect. It doesn't actually compile, and causes a crash because the viv-fb window implementation needs a native EGL handle to pass to fbCreateWindow, but the GstGLDisplayEGL handleis actually an EGLDisplay now (and gets cast to the wrong type) 2017-11-24 01:37:48 +1100 Jan Schmidt * tests/examples/gl/gtk/3dvideo/main.cpp: 3dvideo example: Correct video overlay for HiDPI Use the GTK scaling factor to scale the video allocation so video displays correctly on hi-dpi screens 2017-11-23 11:15:49 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: remove outdated comment in build file 2017-11-23 12:38:11 +0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: keep draining even if a finish_task fails Should continue draining so that it could try to discard the rest of pending frames even if a finish_task fails. https://bugzilla.gnome.org/show_bug.cgi?id=790312 2017-11-10 13:32:17 -0600 Mario Alfredo Carrillo Arevalo * configure.ac: opencv: Update version for building plugins This commit allows to build the OpenCV plugin with OpenCV >= 2.3.0 to < 3.4.0. https://bugzilla.gnome.org/show_bug.cgi?id=790192 2017-11-23 08:14:06 +0100 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix previous commit strlen on strings (and not sizeof) *sigh* 2017-11-23 08:12:03 +0100 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix sock_addr usage (for real) It was great checking that the string was not too big ... but it's better if we actually copy the proper amount of bytes :) CID #206004 2017-11-23 08:09:36 +0100 Edward Hervey * sys/ipcpipeline/gstipcpipelinecomm.c: ipcpipeline: Don't leak structure CID #1416131 2017-11-23 08:05:48 +0100 Edward Hervey * sys/ipcpipeline/gstipcpipelinecomm.c: ipcpipeline: Simplify usage of g_cond_wait_until() It will return FALSE if a timeout happened. So don't check if we timed out afterwards, just use the return value. CID #1416347 2017-11-23 08:02:58 +0100 Edward Hervey * sys/ipcpipeline/gstipcpipelinesink.c: ipcpipeline: Check the proper value The code is meant to check the *peer* state change return value (and not the sink's one). CID #1416128 2017-11-22 17:37:02 +0100 Piotr Drąg * po/POTFILES.in: po: update POTFILES.in https://bugzilla.gnome.org/show_bug.cgi?id=790716 2017-11-22 16:53:17 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Don't leak structure CID #1415716 2017-11-06 21:07:51 +0100 Mathieu Duponchelle * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: * gst/mxf/mxfmux.c: aggregator: Remove klass->sinkpads_type This posed problems for the python bindings (and possibly others). Instead, subclasses now use add_pad_template_with_gtype. https://bugzilla.gnome.org/show_bug.cgi?id=789986 2017-11-20 17:54:54 +0100 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: put downstream caps first if possible on sink caps Try prioritizing downstream's caps over upstream's if possible so the parser can configured in "passthrough" if possible and save it from doing useless conversions. Exact same change as the one I just did in h264parse. https://bugzilla.gnome.org/show_bug.cgi?id=790628 2017-11-20 17:54:54 +0100 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: put downstream caps first if possible on sink caps Try prioritizing downstream's caps over upstream's if possible so the parser can configured in "passthrough" if possible and save it from doing useless conversions. https://bugzilla.gnome.org/show_bug.cgi?id=790628 2017-11-22 11:33:54 +0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: fix buffer leaks during drain and a leak of videobufferpool https://bugzilla.gnome.org/show_bug.cgi?id=790312 2017-11-21 14:57:03 +0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: handle the MORE_DATA case If the driver requires more data, just unref the frame at the moment then retreive/finish the frame after encoding is finished. This also fixes a memory leak. https://bugzilla.gnome.org/show_bug.cgi?id=790312 2017-11-22 10:30:22 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Print "Starting" instead of "Stopping" when starting 2017-11-17 17:09:22 +1100 Matthew Waters * sys/nvdec/gstnvdec.c: nvdec: implement flush/drain Fixes outputted frame sequence when performing a seek i.e. when seeking backwards, the first frame after the seek was a frame from the future. This would result in GstVideoDecoder essentially marking all the timestamps as essentially bogus and the base class would attempt to compensate. A visible indication of this was 'decreasing timestamp' warning after a seek. https://bugzilla.gnome.org/show_bug.cgi?id=790478 2017-11-21 20:56:38 +0100 Tim-Philipp Müller * ext/curl/meson.build: curl: fix meson build Include libsdir so our i18n header there is found. 2017-11-21 12:03:38 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add Raspberry Pi (vc4) support 2017-11-21 16:43:03 +0100 Edward Hervey * ext/libde265/libde265-dec.c: de265: Don't leak CodecState Unref it in error case CID #1417220 2017-11-21 16:39:14 +0100 Edward Hervey * ext/vulkan/vkupload.c: vulkan: Fix out-of-bound read G_N_ELEMENTS is the *number* of entries, not the maximum entry number CID #1417215 2017-11-21 16:30:35 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Post an error message if no URI was set Like for other sources 2017-11-21 16:30:17 +0100 Edward Hervey * ext/curl/gstcurl.c: * ext/curl/gstcurlhttpsrc.c: curl: Add i18n 2017-11-21 15:48:06 +0100 Edward Hervey * tests/check/elements/srtp.c: tests/srtp: Bump up timeout to 3mins for testcase This involves generating and processing 65536 packets, let's give it time to actually complete that. And a bit of debug to track what's going on. 2017-11-21 15:33:57 +0100 Edward Hervey * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: Handle invalid XML Nothing guarantees the manifest is valid and will return a root node 2017-11-21 15:33:08 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Fix return value The function returns a gchar * (and not a boolean) 2017-11-21 15:31:05 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Don't switch to PAUSED if not URI was specified Like for other sources 2017-11-20 17:06:07 +0100 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/mxf/mxftypes.c: all: Fix left-shift undefined behaviour Cast to the target type before shifting (or use macro if available) 2017-10-31 10:09:44 +0200 Sebastian Dröge * sys/msdk/Makefile.am: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdkh264enc: Implement frame-packing SEI insertion for side-by-side and top-bottom Ideally this would be supported directly in the Intel MediaSDK but that's not the case nowadays. https://bugzilla.gnome.org/show_bug.cgi?id=774920 2017-11-17 17:49:16 +0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/msdk.c: msdkenc: Fix handling of YUY2, UYVY, BGRA surfaces https://bugzilla.gnome.org/show_bug.cgi?id=789847 2017-11-16 11:32:52 +0200 Sebastian Dröge * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/msdk.c: msdkenc: Add support for YV12, YUY2, UYVY and BGRA By doing conversion with VPP to NV12 before the actual encoding. https://bugzilla.gnome.org/show_bug.cgi?id=789847 2017-11-09 12:36:44 +0800 Jun Xie * ext/hls/gsthlsdemux.c: hlsdemux: Fix memory leak caused by double buffer map https://bugzilla.gnome.org/show_bug.cgi?id=789999 2017-11-13 23:01:58 +0900 Justin Kim * 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/gstsrtclientsrc.c: * ext/srt/gstsrtserversink.c: * ext/srt/gstsrtserversrc.c: srt: add passphrase and key length properties For stream encryption, both `passphrase` and `key-length` properties are required. https://bugzilla.gnome.org/show_bug.cgi?id=790315 2017-11-14 18:13:54 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Deserialised timecodes set after caps event now get correct framerate A deserialised timecode has a framerate of 0/1 by default. That breaks it when comparing the frames field with another timecode (incoming from the frame). We were setting the framerate when receiving the caps event, but not when setting the timecode in set_property, so it was broken for timecodes set after the caps event. Also checking if the fps_n we got from the caps event is != 0 before setting it - also at the caps event. https://bugzilla.gnome.org/show_bug.cgi?id=790334 2017-11-10 17:21:43 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: timecode: Fix incorrect wording in error message 2017-11-10 17:18:45 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Better handling of deserialised timecode framerates Now that timecodes support proper serialisation / deserialisation, a timecode might have an invalid fps_n / fps_d even without using the target-time-code-string property. Detect those cases and set fps_n/fps_d properly. 2017-11-09 12:08:35 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Remove unused "bflags" variable We are ignoring all its flags anyway, so let's remove it altogether. 2017-11-09 11:44:17 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Ignore some driver-set timecode flags The "fields" flag is ignored because currently GStreamer doesn't support having only top or only bottom fields inside a frame. The "drop frame" flag is ignored because some occurrences have been spotted where it wasn't set while it should have been. In practice, when we have 29.97 or 59.94 FPS, it's always drop-frame. https://bugzilla.gnome.org/show_bug.cgi?id=790112 2017-11-09 00:16:21 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: decklink: Don't crash when getting hw serial number doesn't return OK If the return value isn't OK, it means we might be getting data that points to an invalid memory address. That shouldn't make us crash. 2017-07-31 14:38:34 +0900 Justin Kim * configure.ac: * ext/Makefile.am: * ext/meson.build: * ext/srt/Makefile.am: * 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/gstsrtserversink.c: * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.c: * ext/srt/gstsrtserversrc.h: * ext/srt/meson.build: srt: Introduce SRT source and sink SRT[0] is an open source transport technology[1] that optimizes streaming performance across unpredictable networks. Although SRT is based on UDP, it works like connection-oriented protocol. However, it doesn't mean that the SRT server or client is necessarily to link to a receiver or a sender so, here, the pairs of source and sink elements are introduced. - srtserversink: SRT server to feed SRT stream - srtclientsrc: SRT client to get SRT stream from srtserversink - srtclientsink: SRT client to send SRT stream - srtserversrc: SRT server to listen from srtclientsink [0] https://github.com/Haivision/srt [1] http://www.srtalliance.org/ https://bugzilla.gnome.org/show_bug.cgi?id=785730 2017-11-07 21:12:42 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: Revert "decklink: Detect gaps on incoming stream times, issue warnings" This reverts commit c1294e10f99adf04a104397da735904634400464. Was not ready to be pushed yet. 2017-11-07 21:12:36 +0200 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: Revert "debugutils: Added new jitterer element" This reverts commit 595254f21b15702d95d5a7cf6e43d29f9c179f43. Was not ready to be pushed yet. 2017-11-07 21:12:32 +0200 Vivia Nikolaidou * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "timecodestamper: LTC from audio" This reverts commit c01afab9f7fa7e822dea38e358e92163e8d36282. Was not ready to be pushed yet 2017-11-07 21:12:25 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "timecodestamper: Modify ltc-add to tc-add" This reverts commit 6552981b795a024d26bf509893d55970c2294c04. Was not ready to be pushed yet 2017-11-07 21:03:22 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Fix crash when explicitly setting end_tc to NULL If end_tc is NULL, it means that we don't want avwait to stop at any timecode. When explicitly setting end_tc to NULL, there is no point in comparing end_tc with start_tc (to see if we'll reject end_tc for being before start_tc), so the check in question is completely disabled instead of letting it crash. 2017-10-02 18:39:49 +0200 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Modify ltc-add to tc-add It is more general now and also adds TC to internal counter 2017-06-13 13:19:19 +0300 Georg Lippitsch * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: LTC from audio Add support for parsing linear time code from an audio source using libltc https://github.com/x42/libltc The user can now choose between 3 different and independently running timecode sources. The old override-existing property has been replaced by timecode-source. https://bugzilla.gnome.org/show_bug.cgi?id=784295 2017-09-06 13:16:21 +0300 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: debugutils: Added new jitterer element This element can be configured to add jitter and/or drift to incoming buffers' PTS, DTS, or both. Amplitude and average of jitter and drift are configurable. https://bugzilla.gnome.org/show_bug.cgi?id=787358 2017-04-26 19:05:21 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Detect gaps on incoming stream times, issue warnings When we receive a video or audio buffer, we calculate the next stream time based on the current stream time + buffer duration. If the next buffer's stream time is after that, we issue a warning. This happens because the stream time incoming from Decklink should be really constant and without gaps. If there is a gap, it means that something went wrong, e.g. the internal buffer pool is empty (too many buffers queued up downstream). https://bugzilla.gnome.org/show_bug.cgi?id=781776 2017-11-07 15:21:43 +1100 Matthew Waters * tests/check/Makefile.am: * tests/check/libs/gstglshader.c: * tests/check/libs/gstglslstage.c: gl/tests: add some simple shader testing Making sure that the default shaders compile and are usable 2017-11-07 12:39:58 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: guard stop in gl thread So we don't result in a critical when we've never created the GL context: gst_gl_context_thread_add: assertion 'GST_IS_GL_CONTEXT (context)' failed 2017-11-07 00:07:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: actually indicate start internally Otherwise when we stop, the necessary stop functions will not be called and things may be leaked. https://bugzilla.gnome.org/show_bug.cgi?id=788280 2017-11-06 23:19:15 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: free in the GL thread on stop Calling GL functions not on the GL thread may crash in some GL implementations. https://bugzilla.gnome.org/show_bug.cgi?id=789665 2017-11-03 10:55:28 +0900 Hyunjun Ko * sys/msdk/gstmsdkvp8dec.c: msdk: fix to build msdkvp8dec with mfx_dispatch https://bugzilla.gnome.org/show_bug.cgi?id=789751 2017-11-04 07:49:24 +0100 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix sockaddr_un usage The sun_path field needs to be NULL-terminated CID #206004 2017-11-02 18:32:55 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: add doc blurb for gst_aggregator_pad_is_eos() 2017-11-02 16:05:12 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: also remove now-unused PadForeachFunc declaration https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-08-02 12:08:26 -0400 Olivier Crête * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * win32/common/libgstbadbase.def: aggregator: Remove pad iterator function Use new gst_element_foreach_sink_pad() from core instead. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:56:57 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: add CAST macros 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:17:38 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 11:57:24 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst/compositor/compositor.c: videoaggregator: drop ABI compat in padding for new struct member Don't really have to do that while it's in -bad and most users are in-tree anyway. 2017-10-23 22:03:22 +0200 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: audioaggregator: make class padding larger 2017-11-01 15:18:08 +0100 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: add more comments 2017-10-30 15:06:32 +0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8dec.h: * sys/msdk/meson.build: msdk: adds msdkvp8dec https://bugzilla.gnome.org/show_bug.cgi?id=789751 2017-10-30 18:17:40 +0200 Sebastian Dröge * configure.ac: * sys/msdk/Makefile.am: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/msdk.h: msdk: Allow building against mfx_dispatcher E.g. from https://github.com/lu-zero/mfx_dispatch 2017-09-22 14:27:51 +1000 Matthew Waters * sys/applemedia/vtdec.c: vtdec: destroy and create the GL context on start()/stop() Removes a reference count loop 2017-10-23 10:42:51 +0200 Nicola Murino * sys/applemedia/vtdec.c: vtdec: flush decoder on stop fix a memory leak if the decoder shut down before EOS https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-10-23 10:40:43 +0200 Nicola Murino * sys/applemedia/vtenc.c: vtenc: flush encoder on stop https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-10-28 21:34:08 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: gl/shader: allow setting non-square matrices as uniforms on gles platforms It is possible with GLES3 2017-10-28 18:33:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglquery.c: * tests/check/libs/gstglquery.c: gl/query: split tests and fix some corresponding issues in usage 2017-10-14 13:22:18 -0700 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add replaced flag to not error out on bitrate change When switching bitrates we set the old streams as cancelled, but it could also be confused with a cancel due to other reasons (as an error) and it would lead the element to stop the pipeline mistankely. This would happen when the stream being replaced was waiting for a manifest update on live. Ss make it sure that we are stopping for switching bitrates to avoid erroring out. https://bugzilla.gnome.org/show_bug.cgi?id=789457 2017-10-25 16:11:58 +0200 Florent Thiéry * configure.ac: configure.ac: fix fdk-aac version check https://bugzilla.gnome.org/show_bug.cgi?id=789471 2017-10-25 14:35:12 +0200 Mathieu Duponchelle * ext/fdkaac/meson.build: fdkaacenc: check fdk-aac version in meson.build configure.ac used to set -DHAVE_FDK_AAC_0_1_4 , which enables 7.1 support. https://bugzilla.gnome.org/show_bug.cgi?id=789471 2017-10-24 16:17:28 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Added end-timecode property avwait can now be configured to stop when a given timecode has been reached. It will start at the timecode indicated with start-timecode and end at the timecode indicated with end-timecode. If end-timecode is NULL (default), the previous functionality is preserved: keep going and not end. https://bugzilla.gnome.org/show_bug.cgi?id=789403 2017-10-23 11:52:38 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: * tests/check/libs/aggregator.c: tests: comment and logging cleanups for audiomixer and aggregator Remove some references to 'collectpads'. Logs pads through the object variants. Add some more comments. Remove a left over comment. 2017-10-22 19:43:17 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: * gst/audiomixer/gstaudiomixer.c: aggregator: fix type for latency property (int64 -> GStClockTime) The value is used as GstClockTiem in the code. Adapt the hack^H^H^H^Hcode in live-adder. 2017-07-13 19:09:43 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Accept buffer with no data, but duration and gap flag These are produced from GAP events by the base class. https://bugzilla.gnome.org/show_bug.cgi?id=784846 2017-07-13 19:03:19 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't take flush lock from output thread Instead just take it in the chain function. https://bugzilla.gnome.org/show_bug.cgi?id=784911 2017-07-13 18:38:34 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't block if adding to the tail of the queue If we're adding to the tail of the queue, it's because we're converting a gap event, so don't block there it means we're calling from the output thread. https://bugzilla.gnome.org/show_bug.cgi?id=784911 2017-10-20 11:44:50 +0200 Jan Alexander Steffens (heftig) * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/meson.build: openjpeg: Remove compatibility with openjpeg 2.0 Everyone seems to be shipping 2.1 as the oldest v2 version, even debian oldstable (jessie). Also remove an unneeded (debug?) #include . https://bugzilla.gnome.org/show_bug.cgi?id=788703 2017-10-19 16:36:17 +0200 Jan Alexander Steffens (heftig) * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: openjpeg: Support building with openjpeg 2.3, simpler OpenJPEG 2.3 installs its headers to /usr/include/openjpeg-2.3. However, since libopenjp2.pc seems to provide the right includedir CFLAGS at least since version 2.1, instead of adding yet another version check, just remove the subdir and the check for 2.2. https://bugzilla.gnome.org/show_bug.cgi?id=788703 2017-10-19 16:26:45 +0200 Jan Alexander Steffens (heftig) * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: Revert "openjpeg: Support building with openjpeg 2.3" This reverts commit ef4d6b93e6078b7056c51a928f5620b13e55e323. A better fix follows. https://bugzilla.gnome.org/show_bug.cgi?id=788703 2017-10-20 10:32:23 +0200 Stefan Sauer * tests/check/pipelines/ipcpipeline.c: ipcpipeline: work around gcc bug in struct initializers Unfortunately we need to use an extra set of parenthesis for each data level. For details see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 Affected versions are e.g. gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4 which is the default on ubuntu-trusty. I looks like the fix was never backported. 2017-09-27 11:37:26 +0200 Nicola Murino * sys/applemedia/vtenc.c: vtenc: fix memory leak finish encoding and clean buffers queue on flush. This avoid a memory leak if the element shuts down before EOS https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-10-01 19:04:15 +0200 Jérôme Laheurte * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * tests/examples/avsamplesink/main.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: Use value instead of version macro when testing for mac OS version https://bugzilla.gnome.org/show_bug.cgi?id=788404 2017-10-19 16:01:46 +0200 Andreas Frisch * configure.ac: * ext/Makefile.am: * ext/colormanagement/Makefile.am: * ext/colormanagement/gstcolormanagement.c: * ext/colormanagement/gstlcms.c: * ext/colormanagement/gstlcms.h: lcms: Add LCMS ICC color correction element https://bugzilla.gnome.org/show_bug.cgi?id=765927 2017-09-27 09:17:07 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Refine sequence update debug messages Actually give some details about why it failed. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-27 09:27:12 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Don't try to match URIs when we have media sequences It is legal for a stream to reuse segments (marking discontinuities as needed). Uplynk delivers such playlists for their placeholder loops. Leave the URI scanning in place for playlists which have no EXT-X-MEDIA-SEQUENCE tag. This should be harmless since the spec requires these playlists to not be missing segments (RFC8216 6.2.2), so we should be always matching on the first segment. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-27 09:39:02 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Ignore empty playlists in check_media_seqnums Let these error in the immediately following check in gst_m3u8_update. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-15 08:57:03 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Split gst_m3u8_update_check_consistent_media_seqnums The function was basically one big if-else. Move the branch to the one caller. Currently, it's never called with previous_files == NULL. Assert that this continues. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-15 08:42:49 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Simplify control flow for sequence update Split the tail from the rest of the loop. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-10-04 13:53:35 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Add read-only property to read the device serial number https://bugzilla.gnome.org/show_bug.cgi?id=788510 2017-10-17 08:03:02 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: review code related to time level Add a comment for when the state matters. Use a local var for priv in update_time_level() to improve readability. Move the our_latency local var below the query results checks. 2017-10-17 07:51:51 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: init latency values with 0 instead of FALSE 2017-10-09 18:08:47 +0200 Michał Górny * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: opencv: Support smoothing only part of the image https://bugzilla.gnome.org/show_bug.cgi?id=788567 2017-10-11 22:03:24 +0200 Michał Górny * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: opencv: Add 'kernel' prefix to width/height Rename width to kernel-width, and height to kernel-height to avoid ambiguity in the name. https://bugzilla.gnome.org/show_bug.cgi?id=788567 2017-10-16 10:43:28 +0200 Thibault Saunier * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: openjpeg: Support building with openjpeg 2.3 And avoid failling the build each time openjpeg releases a new version. 2017-10-15 20:46:09 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: code cleanup for event and query func Only look up klass for non serialized events/queries. For events remove superfluous assignment for the return value in the flushing case. 2017-10-15 17:46:45 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: simplify pad_event_func for FLUSH_STOP events We want to skip serialization for FLUSH_STOP events (apparently). We can simplify the code to add it to the top-level conditions. There was nothing done in the first code path if the event was FLUSH_STOP. 2017-10-15 16:57:13 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: drop special casing for eos Just queue it like any other serialized event. This way we don't need to check if there still are buffers in the queue. Validated with the tests and gst-launch-1.0 pipelines. 2017-10-15 16:51:21 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: add a doc-blob for the event_func 2017-10-15 16:48:21 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: rename a local variable The variable tracks wheter the queue is not empty, but num_buffers==0. That means we have events or queries to process. Rename accordingly. 2017-10-15 12:17:42 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: remove commented code The SEGMENT_DONE event does not require any special treatment. This is commented out in 6efc106a67. 2017-10-15 12:14:28 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: move the comment for the locks to the lock macros Looks like some code was inserted afterwards. 2017-10-15 10:44:44 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: improve section docs Mention how data ends up in the queues. Document the relation of the pad functions and the class vmethods to get events and queries. 2017-10-15 10:29:20 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: improve readability in offset calculation Don't reuse the offset variables will contain a sample offset for an intermediate time value. Instead add a segment_pos variable of type GstClockTime for this. Use The clock-time macros to check if we got a valid time. 2017-10-14 18:18:44 +0200 Stefan Sauer * tests/check/libs/aggregator.c: aggregator: add two more tests for a sequence of data This verifies that we handle events and queries at the head of the queue and then buffers. 2017-10-14 13:26:02 +0200 Stefan Sauer * tests/check/libs/aggregator.c: aggregator: refactor the test helper Make the test helpers use a queue. This lets us also test sequences of events, queries and data. 2017-10-14 12:08:19 +0200 Stefan Sauer * tests/check/libs/aggregator.c: aggregator: test cleanup Remove gst_init() from a few tests. Use _OBJECT variants in logging. Remove arbitrary extra blank lines. Make push_event() more like push_buffer() - set the event to NULL and add cleanup to _chain_data_clear(). 2017-10-05 20:48:59 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: move comment to the place it is meant to be This probably got shifted after some changes. 2017-10-07 14:57:44 +0530 Ponnam Srinivas * sys/nvenc/gstnvbaseenc.c: nvbaseenc: Fix Memory leak in error case https://bugzilla.gnome.org/show_bug.cgi?id=788243 2017-10-13 12:25:22 +0100 Tim-Philipp Müller * ext/qt/qtplugin.pro: qt: update qmake .pro file Update for renaming of plugin file, and add some missing source files. 2017-10-13 11:46:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use GstFlowReturn for flow returns 2017-10-10 18:03:15 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Print one "dropped N old frames" message, not one per frame If we drop many frames at once, printing one message per video frame and one per audio packet would cause a lot of disk IO. Just print a total at the end. https://bugzilla.gnome.org/show_bug.cgi?id=788780 2017-10-06 15:07:58 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix crash on NULL dmabuf allocator pointer Now that we are doing lazy allocation, we may endup calling _stop() before the allocator was created. As a side effect, we need to nul-check the pointer before calling it's method (_clear_cache()). https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-10-04 16:29:52 +0530 Ponnam Srinivas * gst/mxf/mxfdemux.c: mxfdemux: Fix memory leak in error case https://bugzilla.gnome.org/show_bug.cgi?id=788508 2017-10-05 17:28:30 -0700 U. Artie Eoff * sys/kms/gstkmsallocator.c: kms: Fix compilation error when libdrm < 2.4.68 DRM_RDWR was not defined until libdrm 2.4.68. However, in configure.ac we only require libdrm >= 2.4.55. Seems silly to to bump minimum libdrm version for a simple define. Thus, define DRM_RDWR if it's not defined. This fixes compilation error introduced in: commit 922031b0f98bf5c7b01f4431d1c08617f65865f7 Author: Nicolas Dufresne Date: Tue Sep 12 12:07:13 2017 -0400 kms: Export DMABuf from Dumb buffer when possible https://bugzilla.gnome.org/show_bug.cgi?id=787593 Signed-off-by: U. Artie Eoff 2017-10-05 15:46:20 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: kmsallocator: Update GstVideoInfo.size when extrapolating When we guess the strides, we need to also update the GstVideoInfo.size otherwise the memory size will be set to something smaller then needed. This was causing crash with the DMABuf exportation, since we would not mmap() a large enough buffer. https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-12 12:07:13 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmsbufferpool.c: * sys/kms/gstkmsbufferpool.h: * sys/kms/gstkmssink.c: kms: Export DMABuf from Dumb buffer when possible https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-12 10:36:51 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Move the mem cache into the allocator No functional change, the cache will be later reused by the buffer pool to keep track of the kmssink memory when exporting dmabuf. https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-11 16:32:32 -0400 Nicolas Dufresne * sys/kms/gstkmsbufferpool.c: kmsbufferpool: Don't check allocator pointer twice https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-11 16:32:15 -0400 Nicolas Dufresne * sys/kms/gstkmsbufferpool.c: kmsbufferpool: Removed unused member fd https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-11 15:00:53 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Check if we can prime export This will be used later to decide if a DMABuf allocator should be exposed. https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-10-05 17:54:34 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: remove buffer!=NULL check Acording to the logic this cannot happen (we already check this before). So add a assert like we do above and remove the check. This make it clearer that we check for the offset range. Also remove a dead assignment since we reassign this a few lines below. 2017-10-05 17:52:37 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggreator: update docs Remove wrote references to collectpads. Document the units. 2017-10-04 14:29:20 +0200 Havard Graff * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/base/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/player/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: remove vs_module_defs The GST_EXPORT should handle it. 2017-10-05 14:30:43 +0200 Rico Tzschichholz * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/player/meson.build: meson: Fix namespace and add some missing args in the gir generation 2017-10-05 08:11:29 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: pass blocksize to mix_buffer() No need to recalc the value twice per run. Establishes that it is the same value. 2017-10-05 08:12:45 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: rename _fill_buffer() to _queue_new_buffer() It does not fill a buffer. Rename it and add a short comment. 2017-10-03 12:36:10 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: cleanup event forwarding Don't copy the whole event struct. Set the input params when we call the forwarding helper. Initialize the internal fields and return values in the helper. 2017-10-03 12:08:42 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: simplify src_event Avoid extra ref/unref, we have a ref and do_seek unrefs. Just return the result as we have. This lets us remove the local var plus the label. 2017-10-04 10:00:48 -0400 Nicolas Dufresne * tests/examples/mpegts/meson.build: * tests/examples/mpegts/ts-parser.c: meson: Define GST_USE_UNSTABLE_API in the build system This way meson and autotools both do the same thing and we don't need to modify the code after all. 2017-10-03 15:26:34 -0700 Reynaldo H. Verdejo Pinochet * tests/examples/mpegts/ts-parser.c: Fix autotools build broken by 25dee2f2cb21d3fdd Build fails on GST_USE_UNSTABLE_API being redefined 2017-10-02 14:28:26 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstvideoanalyse.c: * tests/check/elements/adaptive_demux_engine.h: Use proper GtkDoc notation for NULL/FALSE/TRUE 2017-09-26 16:46:10 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: fix typos 2017-10-03 17:16:15 -0400 Nicolas Dufresne * tests/examples/meson.build: * tests/examples/mpegts/meson.build: meson: Build tsparser example 2017-10-03 17:14:53 -0400 Nicolas Dufresne * tests/examples/mpegts/ts-parser.c: tsparses: Define GST_USE_UNSTABLE_API This example is entirely based on unstable API, this avoids the expected compilation warning. 2017-10-02 12:35:48 -0700 Cassandra Rommel * ext/qt/gstqtglutility.cc: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass This simplifies the code a lot without any functional changes apart from not closing the display connection. Closing the display connection is not safe to do as it is shared between all other code in the same process and no reference counting or anything happens at the platform layer. 2017-10-02 16:57:21 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: reduce variable scope This is a non-functional change that makes the code more alike to the previous check. I should be more obvious when we drop a buffer. 2017-10-02 09:40:50 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: update comment for aggregate Replace collect-pads left-over. Remove first paragraph, we're not doing this. Remove 3), 4) since this is not per pad. 2017-10-02 16:22:26 +0900 Justin Kim * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext_egl: Add gstglwindow header Otherwise, compiler complains implicit function declaration warning. https://bugzilla.gnome.org/show_bug.cgi?id=788413 2017-09-12 16:43:26 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Drain pending samples if the caps are changing https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-12 16:41:18 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Use new GstAudioStreamAlign API https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-28 16:20:53 +0530 Ponnam Srinivas * gst-libs/gst/gl/gstglfilter.c: glfilter: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788194 2017-09-28 13:55:18 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkaudio/videosrc: Put hardware reference timestamp in a reference timestamp meta This can be useful to know on multi-channel cards which frames from different channels were captured at the same time. 2017-09-25 17:20:58 +0530 Ponnam Srinivas * ext/gl/gstglmixer.c: glmixer: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788127 2017-09-21 18:13:19 +0530 Ponnam Srinivas * ext/webp/gstwebpenc.c: webpenc: Unmap video frame in failed case https://bugzilla.gnome.org/show_bug.cgi?id=787985 2017-09-22 08:10:44 +0100 James Stevenson * gst/autoconvert/gstautoconvert.c: autoconvert: Fix two memory leaks on error conditions Both the sink_chain and sink_chain_list will neither pass or free the buffer if the internal src pad doesn't exist yet. https://bugzilla.gnome.org/show_bug.cgi?id=788035 2017-09-21 14:40:06 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Free the correct memory in our own buffer pool The buffer itself is 128 bytes into the allocated memory area, to be able to store the size and other metadata before it. Freeing the buffer directly will make malloc moderately unhappy. 2017-09-21 11:46:22 +0300 George Kiagiadakis * tests/check/Makefile.am: tests/check: disable all ipcpipeline tests until I find a way to make them run reliably 2017-09-20 20:00:03 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvidemixer: need reconfigure output gemotry after caps renegotiated 2017-09-21 11:59:22 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: Revert "glvideomixer: need update output geometry after src caps reconfigure" This reverts commit d6e538dc5651fb03c85d7c7614bcf6c689f2db2f. 2017-09-18 15:42:00 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: need update output geometry after src caps reconfigure Need update output geometry when sink caps changed and use gst_structure_set to update caps if structure is fixed https://bugzilla.gnome.org/show_bug.cgi?id=787820 2017-09-19 15:37:42 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Ensure default showBackground behaviour is enacted Ensure that region backgrounds are always show when tts:showBackground is not explicitly set, in accordance with the default behavour given in the TTML spec. https://bugzilla.gnome.org/show_bug.cgi?id=787942 2017-09-19 17:18:48 -0700 Per-Erik Brodin * sys/nvdec/gstnvdec.c: nvdec: Correctly set the discontinuity flag Instead of clearing the "valid timestamp" flag, which would result in a timestamp mismatch after a discontinuity. https://bugzilla.gnome.org/show_bug.cgi?id=787926 2017-09-11 16:00:24 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl/viv-fb: transform screen coordinate to viewport coordinate In y direction, screen coordinate are opposite to viewport coordinate. https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-11 15:12:53 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl/viv-fb: fix wrong pos (x,y) calculate in queue_resize queue_resize viewport coordinate calculate is wrong and force queue_resize when do _set_render_rectangle in case user input pos changed https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-11 16:11:19 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: expose should do redisplay all the time when using internal window, window resize should work when pause state, but expose only do redisplay when window_id is valid. So expose should do redisplay all the time. https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-17 21:05:03 -0700 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix typo in comment 2017-09-17 12:37:03 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: register func for do_events_and_queries This fixes logging the func ptr from _iterate_sinkpads(). 2017-09-17 12:30:37 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: only set clipped_buffer to NULL if needed 2017-09-17 12:25:37 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: rename check_events This function also handles queries. Update the code to loop until all events and queuries are handled. 2017-09-17 12:24:54 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: add a few more comments to PadPrivate struct 2017-09-17 11:39:12 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: rename buffers field to data The queue stores buffers, events and queries. 2017-09-17 10:18:56 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: documentaion fixes Fix typos and remove params docs, where the param was moved. 2017-09-10 20:55:07 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: simplify audiomixer test Use _link_many() and reuse a helper to reduce the test code. 2017-09-15 20:34:28 +0100 Tim-Philipp Müller * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix caps leak in error code path https://bugzilla.gnome.org/show_bug.cgi?id=787736 2017-09-15 15:04:02 +0200 Philippe Renon * gst-libs/gst/player/gstplayer.c: player: introduce helper method to remove seek source this incidentally fixes a missing g_source_destroy() call in _main() https://bugzilla.gnome.org/show_bug.cgi?id=787727 2017-09-15 14:58:56 +0200 Philippe Renon * gst-libs/gst/player/gstplayer.c: player: remove duplicate state_ret check in play internal https://bugzilla.gnome.org/show_bug.cgi?id=787727 2017-09-06 07:59:56 +0000 Jochen Henneberg * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qmlglsink: Expose itemInitialized as property Instead of just signalling when ready exposing the state as a property allows us to bind at any time if player is loaded async. 2017-09-08 10:16:12 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Don't leak the dumb buffer on drain 2017-09-08 09:28:19 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Don't assume buffer pool won't touch buf pointer Just for extra safety, let's not assume that gst_buffer_pool_acquire() won't ever touch the buf pointer. 2017-09-08 14:57:06 +0200 Guillaume Desmottes * sys/kms/gstkmsbufferpool.c: kms: fix crash if bo allocation failed when copying to dumb buffer If bo allocation failed we destroy the buffer and return GST_FLOW_ERROR, but the @buffer pointer was still pointing to the address of the destroyed buffer. gst_kms_sink_copy_to_dumb_buffer() was then trying to unref it when bailing out causing a crash. Leave @buffer untouched if allocation failed to fix the crash. Also remove the check on *buffer being not NULL as gst_buffer_new() will abort if it failed. https://bugzilla.gnome.org/show_bug.cgi?id=787442 2017-09-07 09:39:13 +0100 Tim-Philipp Müller * ext/qt/gstplugin.cc: * ext/qt/qtplugin.pro: qt: fix build with qmake Move the package defines for GST_PLUGIN_DEFINE from the command line into the source file to avoid quoting issues (-DPACKAGE_NAME="foo" means the quotes won't actually make it to the compiler and then it no longer gets a string constant). 2017-09-06 16:04:49 -0300 Thibault Saunier * ext/directfb/dfbvideosink.c: dfbvideosink: Pass the VideoInfo to gst_video_info_from_caps Fixing the build 2017-09-05 16:20:44 -0400 Nicolas Dufresne * ext/directfb/dfbvideosink.c: * ext/gl/caopengllayersink.m: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gtk/gstgtkglsink.c: * ext/qt/gstqtsink.cc: * ext/vulkan/vkupload.c: * ext/wayland/gstwaylandsink.c: * gst-libs/gst/gl/gstglfilter.c: * sys/applemedia/avsamplevideosink.m: * sys/d3dvideosink/d3dvideosink.c: * sys/kms/gstkmssink.c: Request minimum buffer even if need_pool is FALSE When tee is used, it will not request a pool, but still it wants to know how many buffers are required. https://bugzilla.gnome.org/show_bug.cgi?id=730758 2017-09-05 15:07:03 +0300 George Kiagiadakis * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: fix compilation with OpenSSL 1.1.0 OpenSSL 1.1.0 no longer allows stack-allocated structures; it hides the implementation behind typedefs https://bugzilla.gnome.org/show_bug.cgi?id=787309 2017-09-05 14:26:52 +0200 Edward Hervey * tests/check/libs/aggregator.c: check: Fix usage of dual probes Using two (or more) probes on the same pad where one of the probe returns HANDLED or DROP is tricky since the other probes might not be called. Instead use regular probes and a proper pad (the sinkpad already existed, it only required to be activated and have a dummy chain function for the events/buffers to be received/handled properly) 2017-08-31 18:56:37 +1000 Matthew Waters * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-sensor.c: * sys/androidmedia/gstjniutils.c: amc: actually use the provided application class loader For the camera and sensor Fixes a couple of ClassNotFound java exceptions when initializing GStreamer off the main thread. 2017-09-05 16:14:02 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gl/wayland: call eglTerminate() before wl_display_disconnect() Calling these two functions in the wrong order will result in use-after-free inside wayland. https://bugzilla.gnome.org/show_bug.cgi?id=787293 2017-09-01 15:00:12 +1000 Matthew Waters * ext/gtk/gstgtkglsink.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gtkglsink: expose the created display and context correctly 1. Propagate the GstGLDisplay we create 2. Add the created GstGLContext to the propagated GstGLDisplay Otherwise with multi-branch GL pipelines involving gtkglsink, things will fall apart and errors will be genarated somewhere. 2017-09-05 10:56:12 +0300 Sebastian Dröge * ext/sbc/gstsbcenc.c: sbcenc: Fix typo in docs 2017-09-05 09:51:41 +0200 Edward Hervey * Makefile.am: * ext/libde265/Makefile.am: plugin: Rename libde265 to de265 for consistency And avoids it being blacklisted 2017-09-04 16:13:41 +0300 George Kiagiadakis * tests/examples/Makefile.am: examples: Makefile.am: add ipcpipeline in SUBDIRS if enabled 2017-09-04 16:00:02 +0300 George Kiagiadakis * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinecomm.h: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcpipelinesrc.c: ipcpipeline: cleanup header includes We are only using read(), write(), memcpy(), strlen() and errno in ipcpipelinecomm.c. Everything else is glib/gstreamer. 2017-09-04 15:52:03 +0300 George Kiagiadakis * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinecomm.h: ipcpipeline: use GstPoll instead of select() to watch for socket activity ... and make that code more readable in the process https://bugzilla.gnome.org/show_bug.cgi?id=787208 2017-09-04 10:39:58 +0300 George Kiagiadakis * tests/examples/ipcpipeline/ipc-play.c: examples: ipcpipeline: get rid of yet another use of SOCK_NONBLOCK https://bugzilla.gnome.org/show_bug.cgi?id=786763 2017-09-04 08:30:58 +0200 Nicola Murino * configure.ac: * ext/opencv/meson.build: opencv: allow compilation against 3.3.0 https://bugzilla.gnome.org/show_bug.cgi?id=787234 2017-09-01 15:56:04 +0200 Edward Hervey * ext/qt/gstqtgl.h: qt: Only include qtgui-config.h on qt >= 5.9.0 The file does not exist in previous versions 2017-08-30 08:37:04 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Make jp2k handling more robust and efficient * Avoid copying the pending data and instead create a buffer directly from that data with the appropriate offset. * Locate the jp2k magic to determine the exact location of the (first) frame data instead of assuming that the header is of an expected size https://bugzilla.gnome.org/show_bug.cgi?id=786111 2017-08-29 11:14:59 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle quirk in jp2k es header handling The jp2k specification (ITU-T T.800) specifies that the 'brat' box has two fields and the second one (AUF2) can be set to 0 for progressive streams. The problem is that the mpeg-ts specification (ITU-T H.222.0 06/2012) says that the AUF2 field is only present if the stream is interlaced In order to cope with both situation, accept those next 32bit if the stream is marked as progressive and those bits contain 0 https://bugzilla.gnome.org/show_bug.cgi?id=786111 2017-08-31 15:07:45 +0300 George Kiagiadakis * tests/examples/ipcpipeline/ipc-play.c: * tests/examples/ipcpipeline/ipcpipeline1.c: examples: ipcpipeline: do not use the linux-specific SOCK_NONBLOCK flag Use fcntl() instead to set O_NONBLOCK, which is portable. https://bugzilla.gnome.org/show_bug.cgi?id=786763 2017-08-31 14:57:34 +0300 George Kiagiadakis * configure.ac: * meson.build: * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: provide pipe2() on systems that don't have it https://bugzilla.gnome.org/show_bug.cgi?id=786763 2017-08-31 14:40:44 +1000 Matthew Waters * ext/qt/gstqtgl.h: qt: the defines for QT_OPENGL_ES_2 have moved Update the includes to account for that 2017-04-26 13:50:41 +0200 Jochen Henneberg * ext/qt/qtwindow.cc: qt: ensure GL_DRAW_FRAMEBUFFER 2017-08-30 18:11:27 +0300 George Kiagiadakis * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: make the state_changes test more deterministic Watching the STATE_CHANGED messages is way more deterministic than polling the state. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-30 16:37:21 +0300 George Kiagiadakis * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: fix broken exclusivity checks In most cases we want to stop the pipeline just once, but we have to do this from code that runs in the streaming threads and in case we have multiple streams, we need to make sure that we do this only once. The previous checks were broken, this should fix it. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-30 14:37:32 +0300 George Kiagiadakis * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: attempt to make tags test more deterministic Instead of using a timeout and pushing the tags from an outside thread, use a pad probe and push them from the streaming thread. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-30 15:18:58 +0100 Philippe Normand * tests/examples/gl/gtk/3dvideo/main.cpp: examples/gl/gtk: build fix for the 3dvideo example on macOS 2017-08-30 15:16:39 +0100 Philippe Normand * tests/examples/gl/gtk/gstgtk.c: examples/gl/gtk: fix overlay handling for macOS The GTK+ window requires a NSView sub-view, not an NSWindow. 2017-08-29 16:52:07 -0700 Per-Erik Brodin * sys/nvdec/gstnvdec.c: nvdec: fix build after GL/gl.h no longer included GL headers are no longer included in public gstgl headers, except for gstglfuncs.h so make sure to include that one. https://bugzilla.gnome.org/show_bug.cgi?id=786993 2017-08-29 10:37:11 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Properly error out on jp2k parsing errors Avoids crashes later on where we assume buffer exists 2017-08-28 12:56:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: gl: fix build for ios/win32/android after 2fd84a6c Some missing GL includes. 2017-08-26 13:08:27 +0100 Tim-Philipp Müller * gst-libs/gst/isoff/gstisoff.c: isoff: make debug category private Otherwise it shows up in .def file in autotools build. 2017-08-26 12:03:06 +0100 Tim-Philipp Müller * ext/smoothstreaming/meson.build: * tests/check/meson.build: meson: fix build for isoff lib addition 2017-08-26 12:02:51 +0100 Tim-Philipp Müller * gst-libs/gst/isoff/gstisoff.h: isoff: export symbols 2017-05-17 22:09:48 +0900 Seungha Yang * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssfragmentparser.c: * ext/smoothstreaming/gstmssfragmentparser.h: * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: Use isoff to parse tfxd/tfrf https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-07-02 14:27:33 +0900 Seungha Yang * gst-libs/gst/isoff/gstisoff.c: * gst-libs/gst/isoff/gstisoff.h: * tests/check/libs/isoff.c: * tests/check/libs/isoff.h: isoff: Add parsing mss specific tfrf and tfxd boxes This code is imported from mssdemux's tfxd/tfrf parsing function https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-06-02 23:19:36 +0900 Seungha Yang * gst-libs/gst/isoff/gstisoff.c: * gst-libs/gst/isoff/gstisoff.h: * tests/check/libs/isoff.c: * tests/check/libs/isoff.h: * win32/common/libgstisoff.def: isoff: Add parsing moov and tfdt To extract isobmff level timestamp, moov and tfdt parsing is required. https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-05-25 18:14:09 +0900 Seungha Yang * configure.ac: * ext/dash/Makefile.am: * ext/dash/gstdashdemux.h: * ext/dash/meson.build: * gst-libs/gst/Makefile.am: * 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/meson.build: * tests/check/Makefile.am: * tests/check/libs/isoff.c: * tests/check/libs/isoff.h: * win32/common/libgstisoff.def: isoff: Move isoff to gst-libs Also rename unit test dash_isoff to isoff https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-08-25 20:37:39 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/meson.build: gl: install new glfuncs.h header 2017-08-25 19:33:41 +0100 Tim-Philipp Müller * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: skip broken tests These fail on the build bots. Blacklist until someone investigates. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-24 13:43:18 +0100 Philippe Normand * tests/check/libs/player.c: tests/player: check for media-info-updated before duration-changed The media-info-updated signal is now emitted before duration-changed since commit 8a29da8023604a1419ac5f2cae7f165198d6fbbf. https://bugzilla.gnome.org/show_bug.cgi?id=786201 2017-08-24 18:00:41 +1000 Matthew Waters * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: zero out session member on dealloc Fixes a user-after-free retrieving stats from _get_property() 2017-08-24 01:18:40 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/checks: fix build 2017-08-23 16:36:09 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: add build for the vivante fb backend 2017-08-23 16:34:39 +1000 Matthew Waters * gst-libs/gst/allocators/meson.build: * gst-libs/gst/meson.build: meson: build allocators library 2017-08-23 16:32:57 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: detect valid configuration from enabled apis/platform/winsys 2017-08-23 16:23:07 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/build: also check for the GL/gl.h header In order to successfully build against a detected libGL library we also need headers 2017-08-17 13:46:04 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils_private.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglmatrix.c: glutils: fix matrix operations everywhere - correct the matrix multiplication - Use column-major matrices - reverse order of matrix multiplications https://bugzilla.gnome.org/show_bug.cgi?id=785980 2017-08-17 13:42:21 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: draw with GL_TRIANGLES Drawing 5 vertices with GL_TRIANGLE_STRIP will draw an extra unneeded triangle. 2017-08-22 16:16:44 +0100 Philippe Normand * sys/applemedia/iosurfacememory.h: applemedia: fix build after commit 2fd84a6c 2017-08-22 16:16:24 +0100 Philippe Normand * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: gl/cocoa: fix build after commit 2fd84a6c 2017-08-22 12:39:43 +0100 Julien Isorce * ext/qt/gstqsgtexture.cc: * ext/qt/gstqtglutility.cc: * ext/qt/gstqtsink.cc: * ext/qt/qtwindow.cc: qt: fix broken build due to commit 2fd84a6c for gstgl https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-08-22 12:39:43 +0100 Julien Isorce * ext/gl/caopengllayersink.h: * ext/gl/gstgltransformation.h: gl: fix broken build due to previous commit 2fd84a6c Can reproduce after installing libgraphene-dev Also fixes caopengllayersink.h to anticipate build error on osx. https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-07-07 16:15:12 +0100 Julien Isorce * ext/gl/gltestsrc.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.h: * ext/gl/gstgloverlay.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstglutils.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * ext/gtk/Makefile.am: * ext/gtk/gstgtkglsink.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglheaders.c: * tests/check/libs/gstglupload.c: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gtk/glliveshader.c: gl: do not include GL headers in public gstgl headers Except for gst/gl/gstglfuncs.h It is up to the client app to include these headers. It is coherent with the fact that gstreamer-gl.pc does not require any egl.pc/gles.pc. I.e. it is the responsability of the app to search these headers within its build setup. For example gstreamer-vaapi includes explicitly EGL/egl.h and search for it in its configure.ac. For example with this patch, if an app includes the headers gst/gl/egl/gstglcontext_egl.h gst/gl/egl/gstgldisplay_egl.h gst/gl/egl/gstglmemoryegl.h it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h. Which is good because the app might want to use the gstgl api only without the need to bother about gl headers. Also added a test: cd tests/check && make libs/gstglheaders.check https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-08-21 06:49:02 -0700 Jan Schmidt * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: gldownload: Micro-optimisation. Don't check output caps on every buffer The output caps will only change on a set_caps() call, so check if they contain the SystemMemory feature then and save some per-buffer CPU. 2017-08-17 12:23:37 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From 29046b8 to 3f4aa96 2017-08-16 13:59:01 +0200 Jan Alexander Steffens (heftig) * sys/directsound/gstdirectsoundsrc.h: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: sys: Convert source files to UTF-8 Otherwise we have problems with the new gtk-doc ported to python. But it's a good thing to do anyway. https://bugzilla.gnome.org/show_bug.cgi?id=786364 2017-08-14 14:09:33 +0100 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: notify of media-info update after duration change This is a follow-up of 98b0802a981eab05e610638bf5422a08a378a68a https://bugzilla.gnome.org/show_bug.cgi?id=786201 2017-08-15 10:27:03 +0930 Dave Johnstone * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Add support for Decklink hardware keying Add two properties (keyer-mode and keyer-level) to control the built-in hardware keyer of Decklink cards. https://bugzilla.gnome.org/show_bug.cgi?id=773660 2017-08-14 21:33:51 +1000 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: start/stop the manifest update loop on liveness or periodic update changes Scenario: A manifest starts out in live mode but then the recording is finalized and a subsequent update changes the state to a non-live manifest when the server has finished recording/transcoding/whatever with the full list of fragments. Without this patch, the manifest update task is never stopped on the live->non-live transition and will busy loop, burning through one CPU core. https://bugzilla.gnome.org/show_bug.cgi?id=786275 2017-08-14 16:33:48 -0300 Thibault Saunier * ext/openjpeg/meson.build: meson: Fix build with openjpeg>=2.2 2.2 implies HAVE_2_1 2017-05-21 16:01:14 +0200 Carlos Rafael Giani * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qmlglsink: Add itemInitialized signal to QML item This is useful for autoplay for example. With autoplay, it is necessary to wait until the scene graph is fully set up. This signal is emitted once the QML item node is ready. So, inside a connected slot, the pipeline's state can be set to PLAYING to automatically start playback as soon as the QML script is loaded. https://bugzilla.gnome.org/show_bug.cgi?id=786246 2017-08-14 12:12:34 +0100 Tim-Philipp Müller * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: fix build Include private headers for parent class debug categories. 2017-08-14 10:11:00 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstglwindow_private.h: gl: add missing new header files https://bugzilla.gnome.org/show_bug.cgi?id=786170 2017-08-14 09:33:38 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: make some debug categories private They weren't supposed to be public. https://bugzilla.gnome.org/show_bug.cgi?id=786170 2017-08-12 16:08:02 +0100 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: propagate updated duration to media_info https://bugzilla.gnome.org/show_bug.cgi?id=786201 2017-08-13 21:17:18 +0200 Clemens Lang * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: openjpeg: Fix build against openjpeg 2.2 OpenJPEG 2.2 has some API changes and thus ships its headers in a new include path. Add a configure check (to both meson and autoconf) to detect the newer version of OpenJPEG and add conditional includes. Fix the autoconf test for OpenJPEG 2.1, which checked for HAVE_OPENJPEG, which was always set even for 2.0. https://bugzilla.gnome.org/show_bug.cgi?id=786250 2017-08-11 18:38:41 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/xcb_event_source.c: gl: don't export symbols that are not supposed to be public Make a bunch of symbols private that are currently leaked accidentally because they have a gst_* prefix and are used internally. We mark those we can't make static with G_GNUC_INTERNAL so that they get hidden with the autotools build as well (although we could just pass -fvisibility=hidden there too). 2017-08-11 14:55:48 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbasememory.h: gl: sprinkle more GST_EXPORT 2017-08-11 14:39:07 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * win32/common/libgstmpegts.def: mpegts: make accidentally exported debug category symbol private Was never in header files, was just exported by accident because of the gst_ prefix of the variable name. 2017-08-11 14:21:05 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstmpegvideometa.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvp8parser.c: * gst-libs/gst/codecparsers/gstvp9parser.c: * win32/common/libgstcodecparsers.def: codecparsers: make debug categories static They're only used internally. The VP9 parser's debug category symbol was accidentally exported. 2017-08-09 14:55:44 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Add bus-id property https://bugzilla.gnome.org/show_bug.cgi?id=786112 2017-08-11 13:59:04 +0100 Tim-Philipp Müller * meson.build: meson: hide symbols by default unless explicitly exported 2017-08-10 23:25:13 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Drop current frame if passing it to the decoder caused an error Otherwise we will get it again later for output, however this frame will never actually be output so we will shift timestamps. This is especially bad if we're handling a live stream where the first frames are not keyframes. We would output the keyframe with the timestamp of the first frame, and everything would be too late when arriving in the sink. 2017-08-10 23:21:46 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Don't unref NULL frame on EOS decoding error 2017-08-10 17:00:37 +0300 Sebastian Dröge * gst/mxf/mxfvc3.c: mxfvc3: Use correct wrapping byte value 2017-08-10 01:48:18 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use colorimetry from find_best_format. This increases the chances that we won't need to do any conversion for a given pad. https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 01:45:53 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: improve find_best_format heuristic. The goal here is to minimize the work needed to bring all images to a common format. A better criteria than the number of pads with a given format is the number of pixels with a given format. https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 01:43:15 +0200 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: improve conversion debugging https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 09:09:22 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/wayland/wayland.h: gl, wayland: mark more declared functions with GST_EXPORT 2017-08-10 09:07:17 +0100 Tim-Philipp Müller * tests/check/elements/parser.h: * tests/check/meson.build: tests: export symbols of parser tests helper lib and make it static And only make the tests that use it link against the helper lib. 2017-08-09 14:59:19 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Free devname before setting it This avoids leaking the devname if the property is set twice. 2017-07-05 20:55:11 +0200 Mark Nauwelaerts * gst/mpegtsdemux/mpegtspacketizer.h: mpegtsdemux: remove obsolete function declaration 2017-08-09 15:10:56 +0100 Alex Ashley * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curlhttpsrc: set http-version default if curl does not have HTTP2 feature present If the version of the curl library is recent enough to allow support for HTTP2 (i.e. CURL_VERSION_HTTP2 is defined) but does not actually have that feature enabled, the call to g_object_class_install_property() uses an incorrect default value for the "http-version" property. The default should be 1.1 if HTTP2 is not supported by libcurl or if not enabled by libcurl. https://bugzilla.gnome.org/show_bug.cgi?id=786049 2017-08-09 11:26:37 +0200 Nicola Murino * sys/applemedia/vtenc.c: vtenc: assume 25 fps for unknown framerate This is better than reporting no latency at all and then later failing in live pipelines. https://bugzilla.gnome.org/show_bug.cgi?id=786036 2017-08-03 11:16:20 -0400 Aaron Boxer * gst/pcapparse/gstpcapparse.c: pcapparse: support vlan 802.1q https://bugzilla.gnome.org/show_bug.cgi?id=785778 2017-08-03 08:42:14 -0400 Aaron Boxer * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: Support pcap with nanosecond timestamps https://bugzilla.gnome.org/show_bug.cgi?id=785770 2017-08-02 18:17:08 +0100 Tom Bailey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix leak of pad probes in GstAdaptiveDemuxStream This commit ensures that the idle probe which GstAdaptiveDemuxStream adds to the upstream source pad is removed after use. Previously a new probe was added to the pad whenever a fragment was downloaded, meaning the number of pad probe callbacks being executed increased continually. https://bugzilla.gnome.org/show_bug.cgi?id=785957 2017-08-07 14:25:26 +0300 George Kiagiadakis * ext/rtmp/gstrtmpsrc.c: rtmpsrc: fix flushing seek Previously this was broken, because a flushing seek causes unlock() to be called and in the implementation of unlock() we close the socket, so the seek errors out. This patch fixes it by re-connecting before the seek. Unfortunately, a seek does not work properly right after re-connecting, so a small hack is also in place: we read 1 buffer before seeking to allow librtmp to do its processing in RTMP_Read() https://bugzilla.gnome.org/show_bug.cgi?id=785941 2017-08-07 14:05:14 +0300 George Kiagiadakis * ext/rtmp/gstrtmpsrc.c: rtmpsrc: remove unused macro 2017-08-08 09:20:00 +0000 davecraig@unbalancedaudio.com * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Stop prepared streams as well as running streams There can be twice as many stream tasks running as there are output pads for playback of variant HLS playlists. Half of them are the current pads, and the other half are the pads that are about to be switched to due to a bitrate change. The old code only stopped the current streams which could result in a deadlock on stopping the pipeline. The changes force stopping and joining of any prepared streams too. https://bugzilla.gnome.org/show_bug.cgi?id=785987 2017-08-07 16:41:27 +0100 Sam Hurst * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Does version set fail because of HTTP2 Check to see if setting CURL_HTTP_VERSION_2_0 failed due to lack of HTTP/2 support or some bigger underlying libcurl failure https://bugzilla.gnome.org/show_bug.cgi?id=785878 2017-08-07 10:25:17 +0100 Philippe Normand * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curlhttpsrc: set http-version class property as enum This matches better with the preferred_http_version which was already declared as enum. https://bugzilla.gnome.org/show_bug.cgi?id=785878 2017-08-08 11:05:15 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Constify the config argument to gst_player_get_video_snapshot() This structure is only ever read from. 2017-08-07 16:00:16 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: Revert "kmssink: support videooverlay interface" This is causing hard failure for non-squared pixel. The fix isn't trivial so taking offline by reverting. This reverts commit db07f4507dad6561fc7e9320624aa7f0f0e10b36. 2017-08-04 11:08:18 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't mix up width and height CID 1416129 2017-08-03 20:21:17 +0100 Tim-Philipp Müller * tests/examples/compositor/crossfade.c: examples: fix compiler warning in compositor crossfade example warning: control reaches end of non-void function 2017-08-03 20:17:03 +0100 Tim-Philipp Müller * 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.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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gsm.xml: * docs/plugins/inspect/plugin-gtk.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-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-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-mxf.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-opengl.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-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-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.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-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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.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: update for git master 2017-08-03 20:14:20 +0100 Tim-Philipp Müller * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: compositor: update disted orc fallback files 2017-07-11 22:04:55 -0400 Thibault Saunier * tests/examples/compositor/crossfade.c: * tests/examples/compositor/meson.build: * tests/examples/meson.build: * tests/meson.build: tests: examples: Add a simple crossfade example https://bugzilla.gnome.org/show_bug.cgi?id=784827 2017-07-06 14:26:21 -0400 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc.orc: * gst/compositor/compositorpad.h: compositor: Add support for crossfade blending Crossfading is a bit more complex than just having two pads with the right keyframes as the blending is not exactly the same. The difference is in the way we compute the alpha channel, in the case of crossfading, we have to compute an additive operation between the destination and the source (factored by the alpha property of both the input pad alpha property and the crossfading ratio) basically so that the crossfade result of 2 opaque frames is also fully opaque at any time in the crossfading process, avoid bleeding through the layer blending. Some rationnal can be found in https://phabricator.freedesktop.org/T7773. https://bugzilla.gnome.org/show_bug.cgi?id=784827 2017-07-20 16:17:16 -0400 Thibault Saunier * ext/libde265/gstlibde265.c: de265: Fix plugin name to match new plugin naming convention 2017-07-14 09:54:40 -0400 Thibault Saunier * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: Do not dereference a NULL pointer 2017-08-02 18:43:54 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix indentation 2017-08-02 10:46:46 +0300 George Kiagiadakis * sys/ipcpipeline/gstipcpipelinecomm.c: ipcpipeline: don't use g_steal_pointer; it's not in the current required version of GLib We depend on GLib 2.40, g_steal_pointer was introduced in 2.44. https://bugzilla.gnome.org/show_bug.cgi?id=785698 2017-08-01 17:07:59 +0300 George Kiagiadakis * configure.ac: * gst/ipcpipeline/meson.build: * gst/meson.build: * sys/Makefile.am: * sys/ipcpipeline/Makefile.am: * sys/ipcpipeline/gstipcpipeline.c: * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinecomm.h: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcpipelinesink.h: * sys/ipcpipeline/gstipcpipelinesrc.c: * sys/ipcpipeline/gstipcpipelinesrc.h: * sys/ipcpipeline/gstipcslavepipeline.c: * sys/ipcpipeline/gstipcslavepipeline.h: * sys/ipcpipeline/meson.build: * sys/ipcpipeline/protocol.txt: * sys/meson.build: * tests/check/Makefile.am: ipcpipeline: move to sys/ and make it dependent on platform support for unix sockets 2017-08-01 10:15:13 -0400 Georg Lippitsch * sys/decklink/gstdecklink.cpp: decklinksrc: Raise limit of devices to 16 https://bugzilla.gnome.org/show_bug.cgi?id=785694 2017-08-01 13:26:38 +0300 George Kiagiadakis * gst/ipcpipeline/meson.build: * gst/meson.build: meson: enable building the ipcpipeline plugin 2017-07-05 16:56:24 +0300 George Kiagiadakis * .gitignore: * configure.ac: * tests/examples/Makefile.am: * tests/examples/ipcpipeline/Makefile.am: * tests/examples/ipcpipeline/ipc-play.c: * tests/examples/ipcpipeline/ipcpipeline1.c: tests/examples: add manual tests/examples for the ipcpipeline elements ipcpipeline1 is a very simple test that shows a short videotestsrc fragment. ipc-play is a clone of gst-play that splits the pipeline in two processes, running the source & demuxer on the master process and the decoders & sinks on the slave. 2017-07-05 16:53:48 +0300 George Kiagiadakis * .gitignore: * tests/check/Makefile.am: * tests/check/pipelines/ipcpipeline.c: * tests/files/sine.wav: * tests/files/test.ts: tests/check: add automatic unit test suite for the ipcpipeline elements All tests run within a common framework for splitting processes and making them interract properly with the gst check system. 2017-07-05 16:50:22 +0300 George Kiagiadakis * configure.ac: * gst/ipcpipeline/Makefile.am: * gst/ipcpipeline/gstipcpipeline.c: * gst/ipcpipeline/gstipcpipelinecomm.c: * gst/ipcpipeline/gstipcpipelinecomm.h: * gst/ipcpipeline/gstipcpipelinesink.c: * gst/ipcpipeline/gstipcpipelinesink.h: * gst/ipcpipeline/gstipcpipelinesrc.c: * gst/ipcpipeline/gstipcpipelinesrc.h: * gst/ipcpipeline/gstipcslavepipeline.c: * gst/ipcpipeline/gstipcslavepipeline.h: * gst/ipcpipeline/protocol.txt: ipcpipeline: introduce new plugin for inter-process pipelines These elements allow splitting a pipeline across several processes, with communication done by the ipcpipelinesink and ipcpipelinesrc elements. The main use case is to split a playback pipeline into a process that runs networking, parser & demuxer and another process that runs the decoder & sink, for security reasons. https://bugzilla.gnome.org/show_bug.cgi?id=752214 2017-08-01 10:21:51 +0100 Julien Isorce * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl: return NULL mem if eglCreateImage failed Found on rpi when gpu_mem is too low so there is not enough memory to create the eglimage. But still gst_buffer_pool_acquire_buffer succeeded. And it leads to a CRITICAL assert: gst_egl_image_get_image: assertion 'GST_IS_EGL_IMAGE (image)' failed https://bugzilla.gnome.org/show_bug.cgi?id=785518 2017-06-20 13:11:27 +0800 Haihua Hu * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: support videooverlay interface Implement videooverlay interface in kmssink, divided into two cases: when driver supports scale, then we do refresh in show_frame(); if not, send a reconfigure event to upstream and re-negotiate, using the new size. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-07-30 12:17:57 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: log all events We already log a few events explicitly, just log them all with more detail. 2017-07-29 16:54:38 +0100 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: fix header formatting 2017-07-28 16:58:38 +0100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: gl: document missing GstGLShader functions 2017-07-28 11:00:12 +0100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.h: gl/docs: some documentation updates Add some missing/incomplete docs 2017-07-26 19:04:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: gl/docs: correctly name our objects in the documentation GstGl -> GstGL 2017-07-26 19:03:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglformat.h: gl/docs: document GstGLFormat enum 2017-07-26 17:22:31 -0700 Reynaldo H. Verdejo Pinochet * ext/curl/gstcurlqueue.c: curl: curlqueue: add symbol name to avoid confusing gtkdoc 2017-07-26 16:51:50 -0700 Reynaldo H. Verdejo Pinochet * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: do not check for NULL before g_free() g_free() is NULL-safe. 2017-07-26 17:06:17 +0100 Sam Hurst * ext/curl/curltask.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlqueue.c: curlhttpsrc: Fix flagged Coverity errors Fixes CIDs 1415707 - 1415717 2017-07-26 17:43:19 +0100 Sam Hurst * ext/curl/curltask.h: * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curl: Reorganise header files to fix macOS builds https://bugzilla.gnome.org/show_bug.cgi?id=744261 2017-07-23 13:26:23 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use local var Instead of the self->priv-> deref use the local var we created already. 2017-07-26 09:19:42 +0200 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Fix compilation without debugging system enabled 2017-07-25 15:23:57 +0100 Sam Hurst * ext/curl/Makefile.am: * ext/curl/curltask.h: * ext/curl/gstcurl.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: * ext/curl/gstcurlqueue.c: * ext/curl/gstcurlqueue.h: * ext/curl/meson.build: curl: Add curlhttpsrc element Merged from https://github.com/bbc/gst-curlhttpsrc commit f8aabcfc5c50a44f3362de831377d6e86dcd2d49 https://bugzilla.gnome.org/show_bug.cgi?id=744261 2017-07-17 16:07:21 +0200 Guillaume Desmottes * sys/kms/gstkmsallocator.c: kmsallocator: add driver pitch support for planar formats We used to to handle the driver pitch only for single plan video format. Add support for multi planes format by re-using the extrapolate function from the v4l2 element. Also use this pitch to calculate the proper offsets. Prevent DRM drivers to pick a slow path if the pitches/offsets don't match the ones it reported. https://bugzilla.gnome.org/show_bug.cgi?id=785029 2017-07-17 15:58:57 +0200 Guillaume Desmottes * sys/kms/gstkmsallocator.c: kmsallocator: inline gst_kms_allocator_alloc_empty() No semantic change, just renamed the 'tmp' variable to a more meaningful name and to use the same structure as in gst_kms_allocator_bo_alloc(). Needed as I'm going to move the gst_memory_init() call after the allocation of the DUMB buffer. https://bugzilla.gnome.org/show_bug.cgi?id=785029 2017-07-25 10:03:25 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix compilation with gcc 4.8.4 https://bugzilla.gnome.org/show_bug.cgi?id=785367 2017-07-24 18:38:57 +0300 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Remove the GAP event from the queue before queueing up the GAP buffer Otherwise check_events() will not remove the GAP event (as the queue tail is not the event anymore but the GAP buffer), then the GAP buffer is handled, then the GAP event is handled again, ... forever. 2017-07-24 17:00:02 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Correctly consider frame reordering for timecode calculation 2017-07-24 16:54:22 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Use material track edit rate for component PTS offsetting 2017-07-24 16:49:19 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Output timecodes for video streams 2017-07-24 16:21:31 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Keep track of component start positions and material track positions This allows us to know exactly where in the material track we are, and how to convert from a PTS for a source track to the actual PTS of the material track (i.e. by adding the component start position). https://bugzilla.gnome.org/show_bug.cgi?id=785119 2017-07-21 12:28:23 +0300 Sebastian Dröge * gst/mpegtsmux/Makefile.am: tsmux: Fix make distcheck 2017-07-21 08:43:45 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglframebuffer.c: gl: fix g-i annotations for glframebuffer gstglframebuffer.c:176: Error: GstGL: annotations not supported for tag "Since:". 2017-07-21 09:33:54 +0300 Sebastian Dröge * gst/mpegtsmux/meson.build: tsmux: Add mpegtsmux_jpeg2000.c to meson.build 2017-07-21 09:27:20 +0300 Sebastian Dröge * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: Store PES payload size in a 32 bit integer While the size in the packet is only 16 bits, we need to handle bigger sizes without overflowing. For video streams this can happen, 0 is written to the stream instead. This fixes muxing of buffers >= 2**16. 2017-07-19 10:14:21 -0400 Aaron Boxer * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux_jpeg2000.c: * gst/mpegtsmux/mpegtsmux_jpeg2000.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: tsmux/tsdemux: Add support for JPEG2000 Based on patches by Milos Seleceni. https://bugzilla.gnome.org/show_bug.cgi?id=753323 2017-07-20 10:29:18 -0400 Nicolas Dufresne * Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/meson.build: d3dsinkwrapper: Make the DLL name match the plugin name Otherwise, since 1.12, the plugin gets blacklisted. https://bugzilla.gnome.org/show_bug.cgi?id=785168 2017-07-20 18:09:15 +0530 Nirbheek Chauhan * configure.ac: * sys/decklink/gstdecklink.h: decklink: Fix building with MSYS2's MinGW Reported and tested by Philippe Renon. https://bugzilla.gnome.org/show_bug.cgi?id=784943 2017-07-20 18:51:53 +1000 Alessandro Decina * sys/shm/meson.build: meson: fix potentially undefined shm_deps variable 2017-07-20 18:43:11 +1000 Alessandro Decina * ext/smoothstreaming/meson.build: meson: make smoothstreaming depend on gio 2017-07-20 17:49:59 +1000 Alessandro Decina * gst-libs/gst/gl/meson.build: meson: specify fallback for libgmodule_dep Fixes build with glib built as a subproject. 2017-07-19 04:19:34 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix format specifier warnings in logging v2 HRESULT is unsigned long on Windows, but the Decklink headers define it to 'int' on Linux. Confusingly, the defines that talk about the possible return values for it use long constants. The easy fix would be to change the linux/LinuxCOM.h header, but that's copied from the decklink SDK. Change the logging to always upcast to unsigned long while printing HRESULT for consistency across platforms. 2017-07-19 04:14:13 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.h: decklink: Fix CI failure due to missing WINAPI definition WINAPI is for the windows calling convention to use, and should expand to nothing on Linux. https://build.gnome.org/continuous/buildmaster/builds/2017/07/18/76/build/log-gst-plugins-bad.txt 2017-07-19 02:21:42 +0530 Nirbheek Chauhan * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix format specifier warnings in logging gstdecklinkvideosrc.cpp:425:7: warning: format '%x' expects argument of type 'unsigned int', but argument 8 has type 'HRESULT {aka long int}' [-Wformat] [and so on] 2017-07-19 02:19:47 +0530 Nirbheek Chauhan * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix build on mingw32 by adding missing WINAPI gstdecklinkaudiosink.cpp:155:19: error: conflicting type attributes specified for 'virtual HRESULT GStreamerAudioOutputCallback::QueryInterface(const IID&, void**)' In file included from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/objbase.h:153:0, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/ole2.h:16, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/windows.h:94, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/rpc.h:16, from win/DeckLinkAPI.h:27, from gstdecklink.h:35, from gstdecklinkaudiosink.h:27, from gstdecklinkaudiosink.cpp:25: /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/unknwn.h:67:25: error: overriding 'virtual HRESULT IUnknown::QueryInterface(const IID&, void**)' (and many more) https://ci.gstreamer.net/job/cerbero-cross-mingw32/6407/console 2017-07-18 12:46:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: video: mark symbols explicitly for export with GST_EXPORT 2017-07-18 12:45:14 +0100 Tim-Philipp Müller * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: mark symbols explicitly for export with GST_EXPORT 2017-07-18 12:43:26 +0100 Tim-Philipp Müller * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * gst-libs/gst/player/gstplayer-video-renderer.h: * gst-libs/gst/player/gstplayer-visualization.h: * gst-libs/gst/player/gstplayer.h: player: mark symbols explicitly for export with GST_EXPORT 2017-07-18 01:16:28 +0100 Tim-Philipp Müller * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: mark symbols explicitly for export with GST_EXPORT 2017-07-18 01:10:56 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/mpegts.h: * gst-libs/gst/mpegts/mpegts_enum.py: mpegts: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:49:41 +0100 Tim-Philipp Müller * common: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/photography.h: photography: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:23:09 +0100 Tim-Philipp Müller * gst-libs/gst/insertbin/gstinsertbin.h: insertbin: mark symbols explicitly for export with GST_EXPORT 2017-05-20 13:19:07 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst-libs/gst/codecparsers/gstjpegparser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstmpegvideometa.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.h: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp8rangedecoder.h: * gst-libs/gst/codecparsers/gstvp9parser.h: codecparsers: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:31:36 +0100 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: basecamerabinsrc: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:30:51 +0100 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:29:56 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: audio: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:27:54 +0100 Tim-Philipp Müller * gst-libs/gst/allocators/gstphysmemory.h: allocators: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:26:23 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: mark symbols explicitly for export with GST_EXPORT 2017-07-10 16:39:49 +0900 Seungha Yang * docs/plugins/inspect/plugin-subenc.xml: * gst/subenc/gstwebvttenc.c: webvttenc: Change src pad template to application/x-subtitle-vtt Use consistent mime-type with subparse element for webvtt format https://bugzilla.gnome.org/show_bug.cgi?id=784715 2017-07-09 14:34:21 +0900 Seungha Yang * ext/dash/gstmpdparser.c: dashdemux: Add support webvtt subtitle stream Enable exposing webvtt subtitle streams. https://bugzilla.gnome.org/show_bug.cgi?id=784715 2017-07-18 00:52:03 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: openh264enc: set GST_PARAM_MUTABLE_PLAYING for bitrate/max-bitrate properties This way is documented that these properties can be changed in any state https://bugzilla.gnome.org/show_bug.cgi?id=784988 2017-07-18 00:49:12 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264enc: allow to dynamically change bitrate https://bugzilla.gnome.org/show_bug.cgi?id=784988 2017-07-18 00:36:27 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: openh264enc: fix indentation https://bugzilla.gnome.org/show_bug.cgi?id=784988 2017-07-17 19:29:39 +0200 Stefan Sauer * Makefile.am: cruft: add ext/gsettings to the cruft list 2017-07-11 10:09:02 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: support 2-component images https://bugzilla.gnome.org/show_bug.cgi?id=784797 2017-06-24 11:18:06 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: initial support for JP2 format This is a simple way of supporting JP2 : we treat is as JPC, and throw away header info. https://bugzilla.gnome.org/show_bug.cgi?id=767546 2017-07-06 15:14:57 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: Parse colorimetry, interlace-mode, field-order, multiview-mode and chroma-site https://bugzilla.gnome.org/show_bug.cgi?id=753323 2017-07-13 13:17:57 +0530 Satya Prakash Gupta * ext/gsm/gstgsmenc.c: gsm: unmap output buffer when done https://bugzilla.gnome.org/show_bug.cgi?id=784887 2017-07-17 08:06:22 +0200 Edward Hervey * gst-libs/gst/gl/meson.build: meson: Fix GLES2 check On systems without pkg-config, we have the the library present but not the headers https://bugzilla.gnome.org/show_bug.cgi?id=785010 2017-07-15 17:25:36 +0100 Philippe Normand * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow_cocoa: fix video overlay support Make sure the window handle is configured after the NSWindow was created. https://bugzilla.gnome.org/show_bug.cgi?id=767462 2017-07-16 01:17:04 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: keep refs over async operations Avoids dereferencing dead objects What happens in the autovideosink case is that context 1 is created and destroyed before all the async operations hae executed on the associated window. When the delayed operations execute, they then reference dead objects and crash. We fix this by keeping refs over all async operations so the object cannot be deleted while async operations are in flight. https://bugzilla.gnome.org/show_bug.cgi?id=782379 2017-07-15 01:24:52 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: implement set_render_rectangle support https://bugzilla.gnome.org/show_bug.cgi?id=782959 2017-07-15 21:28:38 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: audiomixer: set all properties at once 2017-07-15 19:33:21 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: audiomixer: use the buffer helper for other tests too 2017-07-15 12:52:38 +0100 Tim-Philipp Müller * meson.build: * po/meson.build: meson: add translations 2017-06-29 14:35:40 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: consolidate tuning stats gathering Additionally: drop unneeded fe_fd variable. 2017-07-14 13:54:31 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: document caps negotiation raciness Until we land conversion support in audioaggregator (#773762). https://bugzilla.gnome.org/show_bug.cgi?id=777915 2017-07-14 14:14:38 +0530 Nirbheek Chauhan * configure.ac: * sys/decklink/Makefile.am: decklink: Add autotools support on Windows Also add a missing windows file to EXTRA_DIST https://bugzilla.gnome.org/show_bug.cgi?id=784943 2017-07-07 16:33:42 +0100 Julien Isorce * pkgconfig/gstreamer-gl-uninstalled.pc.in: pkgconfig: missing GL_CFLAGS in gstreamer-gl-uninstalled.pc.in Already present in gstreamer-gl.pc.in https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-07-14 08:09:25 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: add a helper for buffer creation This makes the test setup easier to read. 2017-07-13 22:00:58 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: remove duplicated code fragment This code already runs above when (event || query). 2017-07-13 21:55:55 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/base/gstaggregator.c: aggregator: code cleanups Fix comment typos, some copy'n'paste in logging. Add more doc comments. 2017-07-13 21:54:55 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: use test helper once more 2017-07-13 12:57:12 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Workaround for live seek ranges when advancing This is a workaround for a regression introduced by f4190a49c04f1d5d174cebba0bc9a03a7ec721c2 ( adaptivedemux: Check live seeking range more often ) The goal of the previous commit was to be able to cope with non-1.0 rates on live streams which have a "seeking window" (i.e. the server keeps around quite a bit of the live stream so you can seek back into it). Without that commit, two different kind of issues would happen: * When doing reverse playback, you would never check whether you are outside of the seekable region. And would then continuously try to download fragments that are no longer present. * When doing fast forward, you would end up requesting fragments which are not present yet. In order to determine whether one was *really* outside of the seekable window, we check whether the current stream position is still within the seekable region. The *problem* though with that commit is that it assumes that subclasses will return continuously updated seeking ranges (i.e. dependent on the current time), which is *NOT* the case. For example: * dashdemux does use the current UTC to determine the seekable region * hlsdemux uses the values from the last updated manifest Therefore if one downloads fragments faster than realtime, for HLS we would end up at the end of the last manifest seekable range, and the previous commit would consider the stream as being ended... which is not the case. In the long run, we need to figure out a way to cope with non-1.0 rates on live streams for all types of stream (including HLS). https://bugzilla.gnome.org/show_bug.cgi?id=783075 2017-05-29 22:47:10 -0700 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: update manifest streams correctly if pads aren't exposed In some cases, it is possible that we need to update the manifest before pads have been exposed at all. If there are no current pads, just expose the next prepared streams. This doesn't handle the case where a manifest update would happen while a live streams is changing periods, which is a type of use case that we're unaware of real usages yet. https://bugzilla.gnome.org/show_bug.cgi?id=783028 2017-05-13 15:17:57 -0700 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: small refactor to avoid repeated code Move segment event update to a function https://bugzilla.gnome.org/show_bug.cgi?id=773159 2017-05-09 11:41:49 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle prepared streams on seeks This is a race that was exposed by the {hls|dash}.scrub_forward_seeking validate test. The "race" is that a subclass might want to change format, causing a new stream to be created (but not exposed/switched yet) and put on the prepared_streams list. That stream will have values (including pending segment) from the pre-seek state. Before the stream is exposed/switched, a new seek comes in and the stream values get updated ... but the ones that will be changed don't get updated causing them to push out wrong segments once they are exposed. https://bugzilla.gnome.org/show_bug.cgi?id=773159 2017-07-12 15:29:32 +1000 Jan Schmidt * ext/qt/gstqtsink.cc: * ext/qt/gstqtsink.h: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qt: Use a proxy object for access to the QML widget QML can destroy the video widget at any time, leaving us with a dangling pointer. Use a lock and a proxy object to cope with that, and block in the widget destructor if there are ongoing calls into the widget. 2017-07-06 21:09:50 +1000 Jan Schmidt * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Remove hard-coded pad templates Add a function to install the default RGBA pad templates, but don't make them required so that there can be GstGLFilter sub-classes with different input/output caps if they want. Remove the hard-coded RGBA restriction in the set_caps_features call, as it will be taken care of by intersecting with the pad templates. Update all the sub-classes to match 2017-07-07 14:41:17 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Don't throw assertions on invalid allocation query basesrc can send an allocation query with no caps, in which case we should just fail it without throwing assertions. 2017-07-11 20:54:25 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Create index table arrays with a big enough size 2017-07-11 20:53:22 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Initialize index table entries completely in all cases When seeking backwards into a previously unseen location, we wouldn't fully initialize them and playback would fail later. 2017-07-11 12:43:46 -0400 Olivier Crête * ext/openexr/Makefile.am: openexr: Header are not C++11, force C++98 2017-05-12 14:39:54 +0200 Georg Lippitsch * sys/decklink/gstdecklink.cpp: decklinkvideosrc: Add custom memory allocator The default memory allocator of the decklink library allocates a fixed pool of buffers, and the number of buffers is unknown. This makes it impossible do useful queuing downstream. The new memory allocator can create an unlimited number of buffers, giving all queuing features one would expect from a live source. https://bugzilla.gnome.org/show_bug.cgi?id=782556 2017-07-10 17:35:32 +0200 Philippe Renon * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Properly pass pLockedBuffer by reference when calling IDirectSoundCaptureBuffer_Lock https://bugzilla.gnome.org/show_bug.cgi?id=784755 2017-07-10 21:08:09 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: more test cleanups Port over the test helpers from the adder tests. 2017-07-10 20:16:10 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: refactor test Apply cleanups from the adder tests. Use a fixture for common code. 2017-07-05 11:07:05 +0300 Jussi Kukkonen * ext/vulkan/vkapi.h: * ext/vulkan/wayland/Makefile.am: * ext/vulkan/xcb/Makefile.am: vulkan: Use the generated version of vkconfig.h Build fails in ext/vulkan/xcb and ext/vulkan/wayland when: * building from tarball * building out-of-tree * Only one WSI integration (xcb or wayland) is enabled by configure.ac This is because vkconfig.h from source directory gets used instead of the generated one. Add the correct build directory to "-I". Use angle bracket include in vkapi.h so that it actually looks in the include search path instead of defaulting to the same (source tree) directory. https://bugzilla.gnome.org/show_bug.cgi?id=784539 2017-07-05 11:00:42 +0300 Jussi Kukkonen * ext/vulkan/vkdisplay.c: vkdisplay: Use ifdef for platform specific defines VK_KHR_*_SURFACE_EXTENSION_NAME are only available when corresponding WSI is enabled. https://bugzilla.gnome.org/show_bug.cgi?id=784539 2017-07-10 13:27:40 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: initialize variable Otherwise clang complains: gstkmssink.c:1192:7: warning: variable 'buf' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] 2017-06-12 23:36:05 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: support grayscale with alpha channel https://bugzilla.gnome.org/show_bug.cgi?id=783591 2017-06-12 09:47:49 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: allow parsing when current caps are null In this case, we assume that the format is jpc, and we infer the color space from the number of components. This allows the parser to process a jpc disk file coming from a filesrc element. https://bugzilla.gnome.org/show_bug.cgi?id=783291 2017-07-02 11:55:13 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: segment seek flag is not relevant when checking for EOS It is only relevant in deciding whether or not send SEGMENT_DONE. In this case, not detecting EOS leads to a busy loop when encountering the originally recorded end-of-file of a file that is still growing. 2017-07-07 17:20:38 -0400 Nicolas Dufresne * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: Revert "adaptivedemux: Allow application to force EOS" This reverts commit 8a070cf9aff8a122b1a52597441bab61c0476ef9. 2017-07-07 12:13:27 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Track cached kmsmem and clear them on drain In this patch we keep track of the cached kmsmem in a way that we can clear the cache during the drain process. This release the framebuffer before waiting for the next vblank, hence add support for DRM driver (like Intel one) that release the associated DMABuf reference asynchronously. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-07 12:12:38 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Move kmsmem cache code higher This will be needed as this API will be used elsewhere to clear the cache. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-05-18 11:54:31 +0200 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: drop last rendered buffer on ALLOCATION and DRAIN queries kmssink keeps a reference on the last rendered buffer. If this buffer refers to an upstream buffer, it should be should be released on DRAIN and ALLOCATION queries so all upstream buffers can be returned to the pool if needed. As the buffer may be used for scanout, we copy this buffer into a dumb buffer prior to let it go. Based on patch from Guillaume Desmottes https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-06 17:20:56 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: kmssink: Don't leak GEM primed from DMABuf This otherwise breaks DMABuf reclaiming. This is not visible from userspace, but inside the kernel, the DRM driver will hold a ref to the DMABuf object. With a V4L2 driver allocating those DMABuf, it then prevent changing the resolution and re-allocation new buffers. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-05 16:51:12 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Factor out copying to dump buffer This will be used to copy any upstream memory in order to return it on resolution change, allocation query or drain query. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-03 15:28:25 -0400 Nicolas Dufresne * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Allow application to force EOS Adaptive demuxers are special demuxers that runs their own sources internally. In this patch we flag the demuxer as being a source in order to receive the downstream events. We then handle the EOS event by resetting the internal state and pushing EOS on all pads. This handling is done asynchronously to avoid blocking user thread. https://bugzilla.gnome.org/show_bug.cgi?id=723868 2017-07-07 17:07:31 +0530 Nirbheek Chauhan * meson.build: meson: Set python3 before plugin subdir()s It's used by the msdk plugin 2017-07-07 20:20:35 +0900 Yasushi SHOJI * ext/gsm/meson.build: * ext/meson.build: meson: Added meson.build for gsm https://bugzilla.gnome.org/show_bug.cgi?id=784646 2017-07-07 12:28:14 +0100 Tim-Philipp Müller * sys/msdk/meson.build: meson: msdk: use python3 from python3 module 2017-07-07 11:59:03 +0100 Tim-Philipp Müller * meson.build: meson: find python3 via python3 module https://bugzilla.gnome.org/show_bug.cgi?id=783198 2017-04-13 22:11:55 +0200 Mathieu Duponchelle * gst-libs/gst/base/gstaggregator.c: aggregator: Invalidate pad's tail position ... when dequeuing a segment event. https://bugzilla.gnome.org/show_bug.cgi?id=784593 2017-07-06 09:37:28 +0100 Tim-Philipp Müller * ext/openjpeg/gstopenjpegdec.c: Revert "openjpegdec: support grayscale with alpha channel" This reverts commit 1883ac26b7d02724c11d4f4bad8698c4873b443d. This breaks the build on older versions of openjpeg: gstopenjpegdec.c:752:30: error: ‘opj_image_comp_t {aka struct opj_image_comp}’ has no member named ‘alpha’ https://bugzilla.gnome.org/show_bug.cgi?id=783591 2017-06-12 23:36:05 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: support grayscale with alpha channel https://bugzilla.gnome.org/show_bug.cgi?id=783591 2017-04-11 01:18:51 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix gaps at end of streams. When the pad has received EOS, its buffer may still be mixed any number of times, when the pad's framerate is inferior to the output framerate. This was introduced by my patch in https://bugzilla.gnome.org/show_bug.cgi?id=782962, this patch also correctly addresses the initial issue. 2017-07-05 17:04:46 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: For intra-only streams, always output DTS=PTS 2017-07-05 15:48:57 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix integer overflow in partition position comparison function 2017-07-05 15:11:22 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Print PTS and DTS in debug output when pushing buffers 2017-07-05 13:59:12 +0300 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Set field-order correctly for interlaced video 2017-07-05 13:52:25 +0300 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Use display width/height instead of stored width/height Stored values contain padding and alignment, and should only be used as fallback if neither display values nor sampled values exist. 2017-07-05 00:48:36 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't include any KLV packets between header metadata and index table segments in calculations Minor fixup of last commit. 2017-07-04 20:01:37 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Allow filler and other KLV packets between index table segments While only filler packets should be allowed, for good measure also skip any other KLV packets in the range where there could be index table segments. This fixes parsing of partitions with multiple index table segments, which are separated by a filler packet, or other packets. 2017-07-04 15:28:36 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: flesh out documentation for GST_H264_PARSER_NO_NAL_END 2017-07-03 10:11:42 +0100 Tim-Philipp Müller * ext/ttml/Makefile.am: ttml: fix linking to libgstvideo https://bugzilla.gnome.org/show_bug.cgi?id=784439 2017-07-01 20:23:25 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: fix "'aggclass' may be used uninitialized in this function" 2016-03-09 22:01:12 +0000 Julien Isorce * gst-libs/gst/gl/gstglupload.c: glupload: add GST_CAPS_FEATURE_MEMORY_DMABUF Insert before SystemMemory to advice upstream elements that it is preferable for them to push dmabuf with the caps feature. Examples: /* Discard memory:DMABuf caps feature */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ capsfilter caps="video/x-raw(memory:SystemMemory)" ! glimagesink /* Force memory:DMABuf caps feature. */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ capsfilter caps="video/x-raw(memory:DMABuf)" ! glimagesink /* Auto select memory:DMABuf caps feature. */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=774649 2017-06-28 14:45:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: reset gl->DrawBuffer to the necessary values GL_COLOR_ATTACHMENT0 when a framebuffer is bound GL_BACK if no framebuffer is bound https://bugzilla.gnome.org/show_bug.cgi?id=784210 2017-06-28 12:17:37 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglmemory.c: glmemory: reset the draw buffer to GL_BACK The draw buffer should be reset to GL_BACK since the framebuffer is already unbound. https://bugzilla.gnome.org/show_bug.cgi?id=784210 2017-06-28 16:17:41 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: use correct unit in tuning-timeout prop description Milliseconds was wrong and made use of this timeout quite confusing. The code uses the value as microsenconds so any meaningful number was off by orders of magnitude. 2017-06-23 16:18:49 -0400 Thibault Saunier * meson.build: meson: Allow using glib as a subproject 2017-06-20 13:44:47 -0400 Thibault Saunier * tests/check/meson.build: meson: Do not use path separator in test names Avoiding warnings like: WARNING: Target "elements/audioamplify" has a path separator in its name. 2017-06-27 18:47:37 -0700 Per-Erik Brodin * sys/nvdec/gstnvdec.c: nvdec: Use qdata on memory instead of buffer meta Using a meta can be problematic since the memory contained in the buffer can be transferred to a new buffer in which case the meta would be lost. https://bugzilla.gnome.org/show_bug.cgi?id=784235 2017-06-27 15:41:48 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Include duration in response to SEEKING query 2017-06-27 15:01:22 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Write temporal offset and correct keyframe offset into index table https://bugzilla.gnome.org/show_bug.cgi?id=784027 2017-06-27 10:47:44 +0300 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfd10.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfessence.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: mxfdemux: Take temporal reordering from the index table into account This is needed to know the PTS, without that we only know the DTS and using that also for the PTS is wrong unless we have an intra-only codec. If we can't get the temporal reordering from the index table, don't set any PTS for non-intra-only codecs and let decoders figure out something. https://bugzilla.gnome.org/show_bug.cgi?id=784027 2017-05-02 17:21:43 -0700 Per-Erik Brodin * configure.ac: * sys/Makefile.am: * sys/nvdec/Makefile.am: * sys/nvdec/gstnvdec.c: * sys/nvdec/gstnvdec.h: * sys/nvdec/plugin.c: nvdec: New plugin for NVIDIA hardware video decode https://bugzilla.gnome.org/show_bug.cgi?id=781537 2017-06-19 20:35:30 +0900 Eunhae Choi * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: remove unnecessary g_return_if_fail() This should never happen, and should be a g_assert() if it's a worry. Fixes warnings from source code checkers about possible caps leaks here. https://bugzilla.gnome.org/show_bug.cgi?id=783955 2017-06-26 09:52:24 +0100 Tim-Philipp Müller * meson.build: meson: fix with-package-name option https://bugzilla.gnome.org/show_bug.cgi?id=784082 2017-06-22 16:40:07 -0400 Nicolas Dufresne * tests/check/meson.build: meson: Enable netsim unit test 2017-06-22 14:21:34 -0400 Nicolas Dufresne * gst/meson.build: * gst/netsim/meson.build: meson: Add netsim plugin 2017-06-22 10:34:04 -0400 Nicolas Dufresne * gst-libs/gst/gl/meson.build: meson: Re-add pkg-config support for bcm_host Now we just fallback to find_library for Rasbian jessy and older. https://bugzilla.gnome.org/show_bug.cgi?id=784026 2017-06-21 15:15:37 -0400 Nicolas Dufresne * sys/shm/meson.build: * tests/check/meson.build: meson: Enable shm unit test 2017-06-21 13:45:04 -0400 Nicolas Dufresne * sys/meson.build: * sys/shm/meson.build: meson: Enable building shm plugin 2017-06-21 13:42:31 -0400 Nicolas Dufresne * sys/shm/shmpipe.c: shmpipe: Should not use glib type without ifdef The shmpipe should build without GLIB. 2017-06-21 11:18:43 +0200 Guillaume Desmottes * gst-libs/gst/gl/meson.build: gl: meson: use cc.find_library() to detect 'bcm_host' On the raspberry pi no pkg-config file is provided for the bcm_host library. We are using AC_CHECK_LIB to detect this lib with autotools, cc.find_library() library is a closer meson equivalent. https://bugzilla.gnome.org/show_bug.cgi?id=784026 2017-06-22 01:01:40 +1000 Jan Schmidt * configure.ac: configure: Add --with-moc/uic/rcc options For cross-compiling, it's easier to be able to specify the actual paths to the tools 2017-06-22 01:01:40 +1000 Jan Schmidt * tests/examples/qt/qmlsink/CMakeLists.txt: qmlsink example: Add CMakeLists.txt Make it possible to build using cmake instead of qmake 2017-06-22 01:01:40 +1000 Jan Schmidt * ext/qt/qtitem.cc: qt: Remove misleading reference to GTK in qtitem.cc 2017-06-20 19:19:51 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again And remove gstgldisplay_cocoa.h instead, which got moved to the installed headers earlier. 2017-06-19 21:59:29 +0900 Eunhae Choi * ext/directfb/dfbvideosink.c: directfb: fix caps leak add unref in case of error https://bugzilla.gnome.org/show_bug.cgi?id=783961 2017-06-16 18:08:39 -0700 Scott D Phillips * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/dash_mpd.c: tests: dash & adaptivedemux: move iterator variable declaration out of `for` This is a c99-ism that gcc 4.8.5 errors on unless -std=c99 is specified. https://bugzilla.gnome.org/show_bug.cgi?id=783868 2017-06-16 09:43:35 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: fix use of wrong array index for tune signal Erroneous value made "TUNE" overwrite "TUNNING_FAIL" .... 2017-06-15 17:08:19 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: issue warning on failed delsys-vs-parameter issues Aids in understanding misses with the delsys auto-detection logic 2017-06-15 14:13:14 -0400 Thibault Saunier * gst/mxf/mxfdemux.c: mxfdemux: Do not try to serialize unresolved metadatas When retrieving the `mxfdemux.structure` property, it leads to an assertion as metadatas need to be resolved for the call to mxf_metadata_base_to_structure to be valid. 2017-06-12 22:29:01 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix DirectVIV uploader for formats with a single plane We have to pass the "height" as height = vmeta->offset[1] / width to the API, which of course does not work well for formats with only a single plane. Use the whole memory size instead of the offset in that case. 2017-06-10 07:56:48 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: fix display artifacts for RGB 8-bit https://bugzilla.gnome.org/show_bug.cgi?id=783626 2017-06-07 16:17:50 +0100 Vincent Penquerc'h * ext/openjpeg/gstopenjpegdec.c: openjpeg: guard against invalid memory access on crafted files 2017-06-05 15:31:52 +0100 Vincent Penquerc'h * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: jpeg2000sampling: fix critical when sampling is missing from caps This can happen with real files 2017-06-07 16:58:23 -0400 Thibault Saunier * tests/check/meson.build: meson: Fix building/running tests outside gst-build 2017-05-18 22:02:38 +0200 Mathieu Duponchelle * meson.build: * tests/check/meson.build: * tests/meson.build: tests: start porting to meson Incomplete port, to get the ball rolling https://bugzilla.gnome.org/show_bug.cgi?id=782962 2017-05-18 10:36:50 -0700 Scott D Phillips * sys/msdk/gstmsdkenc.c: msdk: enc: set pts and dts, fix inverted sync_point flag Set the pts and dts on the frame that we receive from the msdk. Also fix the inverted logic in setting sync points, previously we were marking all frames as sync points except IDRs. https://bugzilla.gnome.org/show_bug.cgi?id=782801 2017-05-29 12:22:17 -0400 Nicolas Dufresne * ext/gl/meson.build: gl: Add dependency to gstallocators 2017-06-07 17:50:09 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Make timestamp reference specifier driver specific 2017-05-12 15:28:46 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: jpeg2000parse: parse RSIZ capabilities and put profile/level into the caps The RSIZ capabilities tag stores the JPEG 2000 profile. In the case of broadcast profiles, it also stores the broadcast main level, which specifies the bit rate. https://bugzilla.gnome.org/show_bug.cgi?id=782337 2017-06-04 20:23:36 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Clear "cancelled" on uridownloader before processing manifest Previous commit let demux call gst_uri_downloader_cancel() on _demux_reset(). Note that, _demux_reset() called during PAUSED_TO_READY and READY_TO_PAUSED. And, it will set "cancelled" on uridownloader which blocks the use of uridownloader. The issue is that, subclass can use the uridownloader not only live streaming for manifest update, but also for fetching another manifests such as variant and rendition m3u8 of hls streaming. So to unblock it, demux should clear "cancelled" before processing initial manifest. https://bugzilla.gnome.org/show_bug.cgi?id=783401 2017-06-06 14:58:55 -0400 Thibault Saunier * gst/rawparse/gstvideoparse.c: videoparse: Fix property handling Usage of GstValueArray was wrong and frame-stride does not exist in rawvideoparse 2017-05-25 15:10:32 +0200 Guillaume Desmottes * sys/kms/gstkmssink.c: kmssink: Add xilinx_drm to the list of drivers This prevent having to set the driver-name explicitly when running on Zynq UltraScale+ boards. https://bugzilla.gnome.org/show_bug.cgi?id=783188 2017-06-01 16:00:50 +0200 Wim Taymans * gst/pcapparse/gstpcapparse.c: pcapparse: endianness fix Also swap the linktype after we detected that we need to do byteswapping. Fixes a problem with reading pcap files generated on a machine with different endianness. 2017-05-31 02:46:01 +0200 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: release the manifest lock ... before broadcasting preroll. The deadlock was as follows: -> The subclass pushes a buffer on a newly-created stream in T1 -> We take the preroll lock in T1, to handle_preroll -> The demuxer is stopped in T2, we take the MANIFEST_LOCK -> T1 starts blocking because it received a reconfigure event and needs to take the MANIFEST_LOCK -> T2 deadlocks because it now wants the preroll_lock. https://bugzilla.gnome.org/show_bug.cgi?id=783255 2017-05-30 15:27:37 +0200 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Implement a default presentation delay Have a fallback presentation delay is great (if not present in the manifest), having an actual default value is better. https://bugzilla.gnome.org/show_bug.cgi?id=783244 2017-05-29 22:28:21 -0700 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: do not erase data while updates-loop is running Make sure the manifest update loop is stopped before proceeding with the resetting of the manifest data. Otherwise, the updates loop will try to use it and it leads to a segfault https://bugzilla.gnome.org/show_bug.cgi?id=783028 2017-05-29 22:26:09 -0700 Thiago Santos * ext/dash/gstmpdparser.c: mpdparser: remove duplicate free of client data https://bugzilla.gnome.org/show_bug.cgi?id=783028 2017-06-01 01:15:05 +0000 Jeremy Hiatt * gst-libs/gst/gl/gstglutils.c: glutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask() 2017-05-31 03:14:04 +0200 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: make sure to free all "old streams" As we release the MANIFEST_LOCK in stop_tasks, demux->priv->old_streams can be set, we need to free these otherwise we may end up trying to dispose elements in the READY state. https://bugzilla.gnome.org/show_bug.cgi?id=783256 2017-05-16 17:29:35 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't be too aggressive with seek ranges When an accurate seek is requested on a live stream, only requests the exact value for the "starting position" (i.e. start in forward playback and stop in reverse playback). https://bugzilla.gnome.org/show_bug.cgi?id=782698 2017-05-31 10:58:39 +0200 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Remove wrong assertion This is wrong because: * If the rate is negative we should check for the *previous* period * adaptivedemux already does the proper checks before calling this method 2017-05-26 17:55:44 +0200 Edward Hervey * ext/ttml/ttmlparse.c: ttml: Simplify code n2 can never be NULL since: * it's in a "while (n1 && n2)" block * and it's not modified before CID #1405868 2017-05-26 17:44:40 +0200 Edward Hervey * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: nonstreamaudio: Avoid using wrong variable And to make that 100% obvious, only use variables declared within the switch cases instead of function-wide ones. Also remove useless one-time-use-only variable. CID #1409857 2017-05-26 17:41:39 +0200 Edward Hervey * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: nonstreamaudio: Avoid using un-initialized value We would end up with cur_position not set but proceed being at its default value of TRUE. Instead, properly set proceed to FALSE CID #1409855 2017-05-26 17:30:10 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix debugging message GstSegment position is a guint64 and not a gint64 CID #1409910 2017-05-25 09:48:53 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Check live seeking range more often The live seeking range was only checked when doing actual seeks. This was assuming that the rate would always be 1.0 (i.e. the playback would advance in realtime, and therefore fragments would always be available since the seeking window moves at the same rate). With non-1.0 rates, this no longer becomes valid, and therefore we need to check whether we are still within the live seeking range when advancing. https://bugzilla.gnome.org/show_bug.cgi?id=783075 2017-05-25 16:42:03 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't create invalid event tags could potentially be NULL 2016-12-02 17:51:57 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: retry download MAX_DOWNLOAD_RETRY_COUNT times before erroring What we want is to retry downloading the fragment on 4xx/5xx errors however returning EOS will cause waiting for a manifest update for live (which may be a really long time) or stop everything for non-live. Change that to only return EOS/ERROR once we've reached the error limit. https://bugzilla.gnome.org/show_bug.cgi?id=776609 2017-05-25 13:06:03 +0300 Sebastian Dröge * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: gl: Fix indentation 2017-05-25 13:05:23 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: #define GL_READ_FRAMEBUFFER / GL_DRAW_FRAMEBUFFER if not defined yet Just like we do elsewhere already. 2017-05-25 11:05:47 +0800 Haihua Hu * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglrenderbuffer.c: glformat: fix the usage of GST_GL_RGB565 GL_RGB565 is sized internal glformat, the corresponding glformat should be GL_RGB and type is GL_UNSIGNED_SHORT_565. Otherwise will return GL_INVALID_ENUM when creating texture. https://bugzilla.gnome.org/show_bug.cgi?id=783066 2017-05-25 10:09:04 +0800 Haihua Hu * ext/qt/qtwindow.cc: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: glframebuffer: check frame buffer status need use specific fbo target https://bugzilla.gnome.org/show_bug.cgi?id=783065 2017-05-24 11:47:47 +0300 Sebastian Dröge * ext/openmpt/gstopenmptdec.c: openmpt: Fix compilation with 0.2.7386 as in Debian The OPENMPT_API_VERSION_AT_LEAST macro does not exist. 2017-05-22 23:06:01 +0200 Olivier Crête * tests/check/elements/audiomixer.c: tests: Make audiomixer test_clip verify the resulting timestamps too 2017-05-23 00:53:57 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Process serialized queries through the queue This ensures that they really get processed in order with buffers. Just waiting for the queue to be empty is sometimes not enough as the buffers are dropped from the pad before the result is pushed to the next element, sometimes resulting in surprising re-ordering. 2017-05-23 00:53:23 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Set flow to FLUSHING on pad stop Fixes a rare race where the pad is being stopped while doing a query. 2017-05-23 00:52:27 +0200 Olivier Crête * tests/check/elements/audiointerleave.c: tests: audiointerleave: Remove drain with manual clock Now that the queries go onto the queue, you may need to pull the crank in order for them to be processed, making this test difficult. 2017-05-23 09:57:28 +0100 Tim-Philipp Müller * configure.ac: * meson.build: Require wildmidi >= 0.4 https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-05-23 09:17:08 +0100 Tim-Philipp Müller * ext/wildmidi/gstwildmididec.c: wildmidi: include stdint.h for int8_t 2017-05-23 08:42:46 +0100 Tim-Philipp Müller * win32/common/libgstbadaudio.def: win32: update .def file for new base class https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-05-22 15:52:33 -0700 Reynaldo H. Verdejo Pinochet * ext/wildmidi/gstwildmididec.c: wildmididec: explicitly cast buffer data to int8 in _decode() Fixes compiler warning introduced in commit ff32a4297: gstwildmididec.c:637:47: error: pointer targets in passing argument 2 of ‘WildMidi_GetOutput’ differ in signedness WildMidi_GetOutput (wildmidi_dec->song, (char *) (info.data), info.size); ^ wildmidi_lib.h:106:15: note: expected ‘int8_t * {aka signed char *}’ but argument is of type ‘char *’ WM_SYMBOL int WildMidi_GetOutput (midi *handle, int8_t *buffer, uint32_t size); https://bugzilla.gnome.org/show_bug.cgi?id=768576 2016-07-27 02:22:26 +0200 Carlos Rafael Giani * configure.ac: * ext/Makefile.am: * ext/openmpt/Makefile.am: * ext/openmpt/gstopenmptdec.c: * ext/openmpt/gstopenmptdec.h: * ext/openmpt/plugin.c: openmpt: Add openmptdec element https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-03-08 22:17:41 +0100 Carlos Rafael Giani * docs/plugins/Makefile.am: * ext/wildmidi/Makefile.am: * ext/wildmidi/gstwildmidi.c: * ext/wildmidi/gstwildmidi.h: * ext/wildmidi/gstwildmididec.c: * ext/wildmidi/gstwildmididec.h: wildmidi: Port to 1.0 on top of the nonstreamaudiodecoder base class https://bugzilla.gnome.org/show_bug.cgi?id=768576 2016-07-27 01:41:20 +0200 Carlos Rafael Giani * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: * gst-libs/gst/audio/meson.build: audio: Add nonstreamaudiodecoder base class https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-05-22 13:46:36 +0200 Anders Jonsson * ext/gl/gstgltestsrc.c: gltestsrc: Fix typo (occured->occurred) https://bugzilla.gnome.org/show_bug.cgi?id=782947 2017-05-21 18:03:02 +0100 Tim-Philipp Müller * Makefile.am: * config.h.meson: * meson.build: meson: don't need config.h.meson any longer 2017-05-20 19:00:23 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: audioaggregate: Don't hold object locks across calls to aggregate_one https://bugzilla.gnome.org/show_bug.cgi?id=782878 2016-11-18 14:44:16 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Request pad templates which are not request pad https://bugzilla.gnome.org/show_bug.cgi?id=782920 2016-11-18 14:41:54 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't restrict sink pad names Sink pads could have other names than sink_%u https://bugzilla.gnome.org/show_bug.cgi?id=782920 2017-05-21 18:31:59 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: Remove unused negotiated member This is now all handled in GstAggregator, so this code is not called anymore. 2017-05-21 15:44:02 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Declare that it supports the video meta on input https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 15:30:10 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl*mixer: Use propose_allocation from the GstAggregator base class https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 15:19:17 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Implement propose allocation https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 14:34:13 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Check for the result of caps events https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 14:28:00 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Caps event always goes to the aggregate thread So no need to check it here. https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-09 23:59:04 +0200 Carlos Rafael Giani * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: gl/viv-fb: Fix user-choice string comparisons https://bugzilla.gnome.org/show_bug.cgi?id=782921 2017-05-21 15:26:12 +0200 Carlos Rafael Giani * ext/qt/gstqsgtexture.cc: * ext/qt/gstqsgtexture.h: qmlglsink: Add dummy texture that is shown as placeholder for NULL buffers https://bugzilla.gnome.org/show_bug.cgi?id=782917 2017-05-21 15:15:48 +0100 Tim-Philipp Müller * win32/common/libgstbadbase.def: win32: update .def file for new exports 2017-05-20 18:10:29 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Create normal video pool as a fallback https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:59:19 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Use downstream allocator and params if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:35:43 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: glbasemixer: Remove own decide_allocation, use GstAggregator's https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:30:06 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: glbasemixer: Use aggregator for allocation handling https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:25:16 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Get the buffer from the pool if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 16:58:54 +0200 Olivier Crête * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Add downstream allocation query https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-21 12:41:53 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Return to parent on reconfigure The caps negotiation is now in the parent, so need to return there if a reconfiguration is needed, otherwise it will loops forever. 2017-05-21 11:44:37 +0100 Tim-Philipp Müller * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: x11: fix compiler warning 2017-05-21 12:03:01 +0200 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glcontext: add public swap_buffers function That simply calls the implementation 2017-05-21 10:57:18 +0100 Tim-Philipp Müller * tests/examples/gl/generic/cube/cube.vcproj: * tests/examples/gl/generic/cubeyuv/cubeyuv.vcproj: * tests/examples/gl/generic/doublecube/doublecube.vcproj: * tests/examples/gl/generic/recordgraphic/recordgraphic.vcproj: * tests/examples/gl/gtk/3dvideo/3dvideo.vcproj: * tests/examples/gl/gtk/filternovideooverlay/filternovideooverlay.vcproj: * tests/examples/gl/gtk/filtervideooverlay/filtervideooverlay.vcproj: * tests/examples/gl/gtk/fxtest/fxtest.vcproj: * tests/examples/gl/gtk/pixbufdrop/pixbufdrop.vcproj: * tests/examples/gl/gtk/switchvideooverlay/switchvideooverlay.vcproj: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.vcproj: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.vcproj: * tests/examples/gl/qt/videooverlay/videooverlay.vcproj: * tests/examples/gl/sdl/sdlshare.vcproj: examples: gl: remove ancient bitrotten .vcproj files 2017-05-20 16:22:10 +0000 Graham Leggett * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix debug message printf format Match gsize to G_GSIZE_FORMAT in the debug message. https://bugzilla.gnome.org/show_bug.cgi?id=782873 2017-05-20 17:04:52 +0100 Tim-Philipp Müller * win32/common/libgstbadaudio.def: win32: update .def file for API removal 2017-05-20 17:47:04 +0200 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: audiointerleave: Take object lock while modifying channel count 2017-05-20 15:56:16 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/base/gstaggregator.h: aggregator: Remove unused GST_FLOW_NOT_HANDLED 2017-05-20 14:24:57 +0200 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: * tests/check/elements/audiointerleave.c: aggregator: add simple support for caps handling Modelled off the videoaggregator caps handling as that seems the most mature aggregtor-using implementation that has caps handling there is. https://bugzilla.gnome.org/show_bug.cgi?id=776931 2017-05-20 13:10:53 +0200 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Reset upstream latency on first buffer In the case an aggregator is created and pads are requested but only linked later, we end up never updating the upstream latency. This was because latency queries on pads that are not linked succeed, so we never did a new query once a live source has been linked, so the thread was never started. https://bugzilla.gnome.org/show_bug.cgi?id=757548 2017-04-04 11:25:43 +0300 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst/compositor/compositor.c: videoaggregator: delay using new caps from a sink pad until the next buffer in the queue is taken When caps changes while streaming, the new caps was getting processed immediately in videoaggregator, but the next buffer in the queue that corresponds to this new caps was not necessarily being used immediately, which resulted sometimes in using an old buffer with new caps. Of course there used to be a separate buffer_vinfo for mapping the buffer with its own caps, but in compositor the GstVideoConverter was still using wrong info and resulted in invalid reads and corrupt output. This approach here is more safe. We delay using the new caps until we actually select the next buffer in the queue for use. This way we also eliminate the need for buffer_vinfo, since the pad->info is always in sync with the format of the selected buffer. https://bugzilla.gnome.org/show_bug.cgi?id=780682 2016-05-14 15:52:37 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Always handle sync'ed events on output thread Having all synchronized events always be handled on the output thread should make synchronization easier. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 16:39:17 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Delay clipping to output thread This is required because the synchronized events like caps or segments may only be processed on the output thread. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-07 16:13:57 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Make pad eos as soon as all buffers are processed, dont way for events https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-07 11:47:40 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Only count buffers when declaring queue full https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 17:28:11 -0400 Olivier Crête * tests/check/elements/compositor.c: tests: Test caps using query Sending an event can accepted event if the caps were rejected because the event could be queued and processed later. Also send a drain query in the caps test to make sure that the event has been processed. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 16:41:44 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Simplify clip function The return value was ignored anyway https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-05-15 16:04:58 +0300 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Only declare first buffer on actual buffer The function needs to be unlocked if any data is received, but only end the first buffer processing on an actual buffer, synchronized events don't matter on the first buffer processing. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:20:07 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Set initial position on first buffer Set the initial position on the first buffer, otherwise the queue will grow without limits before the output thread is started. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:06:29 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Reset the pad's first buffer flag with the rest There is not reason to have separate code to reset this one. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:05:55 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Reset pad on init Factor out the pad reset code from the flushing and use it on init as well https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:13:58 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Fix indentation https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-02-23 15:42:08 -0800 fvanzile * gst-libs/gst/gl/gstglcontext.c: glcontext: keep a ref to the active thread With the macOS/iOS implementations, the active thread can change multiple times over the life of a pipeline which would expose a race in the thread tracking. Fix by taking a ref on the active thread while the context is active. https://bugzilla.gnome.org/show_bug.cgi?id=779202 2017-05-20 15:04:45 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add options to set package name and origin https://bugzilla.gnome.org/show_bug.cgi?id=782172 2017-05-20 12:34:27 +0200 Josep Torra * tests/examples/avsamplesink/main.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: examples: fix macOS 9.12 deprecation warnings Add #defines to allow older versions of macOS to use the new constant names. 2017-05-20 12:19:08 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: cocoa: fix a recently introduced typo Fixes gstgldisplay_cocoa.m:175:26: error: use of undeclared identifier 'singletone'. 2017-05-20 12:16:50 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cocoa: fix macOS 10.12 deprecation warnings Add #defines to allow older versions of macOS to use the new constant names. 2017-04-17 14:43:49 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Use correct (sub) fragment start when clipping chunk size If we didn't download anything yet, we shouldn't use fragment.start but the start position of the current sidx entry. 2017-04-17 14:25:10 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Make sure to pass the next buffer after a seek with DISCONT flag When we manually seek for skipping ahead in keyunit-only trickmode, we have to enforce that ourselves as adaptivedemux does not know about the seeks. 2017-04-15 11:55:34 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Ensure that we never ever download over the current SIDX entry Even if downloading more than needed to try to get the moof and first keyframe both together. 2017-04-13 22:49:29 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Take SIDX entry timestamp/duration into account for keyunit-only mode And not the whole segment's timestamp/duration 2017-04-13 17:12:26 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Reset parsing state correctly in various places 2017-04-13 14:51:07 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Reset previous target_time when seeking 2017-04-03 16:47:58 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Smooth out skip distances in keyframe-only trick modes This ensures smoother playback. It looks weird if we first do a big jump, then play a couple of consecutive frames, just to again skip ahead quite a bit because we ran late again. 2017-04-03 15:51:43 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Take configure max bitrate/framerate into account for keyframe skipping And by default only produce up to 10 fps. 2017-04-03 15:48:13 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Try harder to not run into a loop over the same fragment over and over While still making sure to not jump ahead one fragment further than needed. 2017-03-15 17:47:53 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Add some debug output to the target time selection 2017-03-28 14:12:12 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Use the current clock running time in addition to the QoS earliest time 2017-03-27 17:52:36 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Download keyframes from the current position if we're far enough ahead Far enough here means more than 500ms or 4 times the average keyframe download time. There is no need to jump ahead by one average keyframe download time in this case. This makes playback smooth if the network is fast enough. 2017-03-22 12:05:20 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix sync sample selection based on target time in reverse playback mode 2017-03-22 11:21:47 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Snap-seek for skipping ahead and use actual keyframe distance in the current fragment if applicable 2017-03-15 16:47:59 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't adjust for fragment duration twice when seeking ahead in KEYUNITS mode 2017-03-15 16:46:55 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Add current fragment duration in reverse playback mode to the position We play from the end of the fragment to the beginning, not from the beginning backwards. 2017-03-15 16:45:33 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Never take more than the current fragment duration for estimations inside the fragment Taking the average might give us from results. 2017-03-06 14:27:20 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't increase current position if we just downloaded the moof in KEYUNIT mode 2017-01-12 15:54:37 +0100 Edward Hervey * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Improve key-unit trick mode downloading When dealing with key-unit trick mode downloads, the goal is to provide the best "Quality of Experience". This is achieved by: 1) maximizing the number of frames displayed per second 2) avoiding "stalling" as much as possible (i.e. not downloading and decoding frames fast enough) This implementation achives this by: 1) Knowing very precisely the current keyframe being download (i.e more accurate than at the fragment level which might contain more than one keyfram). This is the new "actual_position" variable introduced by this commit 2) Knowing the position of downstream (provided by QoS and stored in the adaptivedemuxstream qos_earliest_time variable) 3) Knowing how long it takes to request and fully download a keyframe (the average_download_time variable) Taking those 3 variables into account, whenever a keyframe has been pushed downstream we calculate a "target time" (target_time variable) which is the ideal next keyframe time to request so that: 1) It will be requested/downloaded/demuxed/decoded in time to be displayed without being too late 2) It will not be too far ahead that it would cause too few frames per second to be displayed. How far ahead we will request is inversily proportional to how close the actual position (actual_position) is from the downstream position (qos_earliest_time). The more is buffered between the source and the sink, the "closer" the target time will be, and therefore the more frames per seconds will be displayed (up to the limit of keyframes_per_second * absolute_rate). 2017-01-11 17:11:27 +0100 Edward Hervey * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Store average download time This will be used to bound the download rate when working in keyframe-only trick mode 2017-01-11 17:08:36 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add various comments to the code 2016-11-15 08:13:27 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Store QoS time Allows subclasses to know where downstream is and make decisions based upon that 2016-09-01 17:47:11 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Collect keyunit distance and size statistics 2016-11-07 12:22:09 +0100 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Disable bitrate switching in key-unit trick mode This creates too much havoc for now 2016-10-31 10:08:35 +0100 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Use new adaptivedemux trickmode macro Reduces the lines of code, and makes it a bit more readable 2016-10-31 10:08:04 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add a macro to know if we are in trickmode-keyunit Reduces the amount of lines of code in subclasses 2017-05-18 15:57:22 +0200 Jan Schmidt * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264src: Apply timestamps to outgoing aux buffers When extracting an aux buffer from an MJPG carrier, at *least* put the original timestamp on it, even if we fail to apply any other timestamp (which we always do at the moment, because the timestamp calculating code was never finished). Apply a DTS using the camera supplied delay value as well, assuming that there's no re-ordering going on (there isn't in the C920, which is really the only extant camera doing this stuff) and a warning if that turns out not to be true. 2017-05-18 15:23:14 +0300 Simon Himmelbauer * ext/qt/gstqtglutility.cc: qt: Use GST_GL_HAVE_PLATFORM_CGL instead of GST_GL_HAVE_PLATFORM_COCOA The latter is not used/available anymore since years. Also fix a typo in the include path for the Cocoa GL display header. 2017-05-07 19:50:00 +0000 Dmitry Zhadinets * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: motioncells: delay motionmaskcoords until caps arrive motionmaskcoords is not applied on start because the information about resolution isn't available until caps arrive. https://bugzilla.gnome.org/show_bug.cgi?id=768666 2017-05-18 14:34:04 +0300 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Unref downstream caps after usage https://bugzilla.gnome.org/show_bug.cgi?id=782771 2017-05-18 10:58:20 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264plugin.c: * ext/resindvd/plugin.c: * ext/srtp/gstsrtp.c: * ext/teletextdec/gstteletextdec.c: * ext/ttml/gstttmlplugin.c: * ext/webrtcdsp/gstwebrtcdsp.cpp: * gst/fieldanalysis/gstfieldanalysis.c: * gst/gaudieffects/gstplugin.c: * gst/pcapparse/plugin.c: * sys/acmenc/acmenc.c: * sys/applemedia/plugin.m: * sys/msdk/gstmsdk.c: * sys/vdpau/gstvdpau.c: * sys/winks/gstksvideosrc.c: Fix up package name and origin in some plugins 2017-05-18 10:53:48 +0100 Tim-Philipp Müller * gst/stereo/gststereo.c: stereo: fix typo in plugin description 2017-05-18 11:42:17 +0300 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Fix calculation of codec_data buffer size 2017-05-17 16:26:38 +0800 Haihua Hu * gst-libs/gst/gl/gstglformat.c: glformat: Add missing GST_GL_RGB565 in some switch statement https://bugzilla.gnome.org/show_bug.cgi?id=782736 2017-05-17 17:38:01 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/Makefile.am: cocoa: Install gstgldisplay_cocoa.h It's needed by e.g. qmlglsink. 2017-05-15 20:31:31 +0300 Sebastian Dröge * ext/directfb/dfbvideosink.c: * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkmemory.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkwindow.c: * ext/vulkan/wayland/vkdisplay_wayland.c: * ext/vulkan/wayland/vkwindow_wayland.c: * ext/vulkan/xcb/vkdisplay_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.c: * ext/wayland/wlshmallocator.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/uridownloader/gsturidownloader.c: * sys/applemedia/corevideomemory.c: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosurfacememory.c: * sys/d3dvideosink/d3dhelpers.c: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsbufferpool.c: * sys/shm/gstshmsink.c: * sys/vdpau/gstvdpvideobufferpool.c: * sys/vdpau/gstvdpvideomemory.c: gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-15 14:23:44 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Sink the clock reference in the constructor This is now needed as GstClock does not do that internally anymore, because that broke bindings. https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-17 10:58:05 +0800 Haihua Hu * configure.ac: * ext/qt/gstqtglutility.cc: qml: Add EGL platform support for x11 backend Add support for EGL platform when x11 is available. This can work e.g. on imx6 platform. https://bugzilla.gnome.org/show_bug.cgi?id=782718 2017-05-16 14:05:52 -0400 Nicolas Dufresne * config.h.meson: * configure.ac: * ext/assrender/Makefile.am: * ext/bs2b/Makefile.am: * ext/bz2/Makefile.am: * ext/chromaprint/Makefile.am: * ext/curl/Makefile.am: * ext/daala/Makefile.am: * ext/dash/Makefile.am: * ext/dc1394/Makefile.am: * ext/directfb/Makefile.am: * ext/dtls/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/fdkaac/Makefile.am: * ext/flite/Makefile.am: * ext/fluidsynth/Makefile.am: * ext/gl/Makefile.am: * ext/gme/Makefile.am: * ext/gsm/Makefile.am: * ext/gtk/Makefile.am: * ext/hls/Makefile.am: * ext/iqa/Makefile.am: * ext/kate/Makefile.am: * ext/ladspa/Makefile.am: * ext/libde265/Makefile.am: * ext/libmms/Makefile.am: * ext/lv2/Makefile.am: * ext/modplug/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/openal/Makefile.am: * ext/opencv/Makefile.am: * ext/openexr/Makefile.am: * ext/openh264/Makefile.am: * ext/openjpeg/Makefile.am: * ext/openni2/Makefile.am: * ext/opus/Makefile.am: * ext/qt/Makefile.am: * ext/resindvd/Makefile.am: * ext/rsvg/Makefile.am: * ext/rtmp/Makefile.am: * ext/sbc/Makefile.am: * ext/schroedinger/Makefile.am: * ext/smoothstreaming/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spandsp/Makefile.am: * ext/spc/Makefile.am: * ext/srtp/Makefile.am: * ext/teletextdec/Makefile.am: * ext/ttml/Makefile.am: * ext/voaacenc/Makefile.am: * ext/voamrwbenc/Makefile.am: * ext/vulkan/Makefile.am: * ext/wayland/Makefile.am: * ext/webp/Makefile.am: * ext/wildmidi/Makefile.am: * ext/x265/Makefile.am: * ext/zbar/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: * gst/accurip/Makefile.am: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffersplit/Makefile.am: * gst/audiofxbad/Makefile.am: * gst/audiomixer/Makefile.am: * gst/audiomixmatrix/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/autoconvert/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin2/Makefile.am: * gst/coloreffects/Makefile.am: * gst/compositor/Makefile.am: * gst/debugutils/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/Makefile.am: * gst/faceoverlay/Makefile.am: * gst/festival/Makefile.am: * gst/fieldanalysis/Makefile.am: * gst/freeverb/Makefile.am: * gst/frei0r/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/gdp/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/id3tag/Makefile.am: * gst/inter/Makefile.am: * gst/interlace/Makefile.am: * gst/ivfparse/Makefile.am: * gst/ivtc/Makefile.am: * gst/jp2kdecimator/Makefile.am: * gst/jpegformat/Makefile.am: * gst/librfb/Makefile.am: * gst/midi/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegpsmux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mxf/Makefile.am: * gst/netsim/Makefile.am: * gst/onvif/Makefile.am: * gst/pcapparse/Makefile.am: * gst/pnm/Makefile.am: * gst/rawparse/Makefile.am: * gst/removesilence/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/smooth/Makefile.am: * gst/speed/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/timecode/Makefile.am: * gst/videofilters/Makefile.am: * gst/videoframe_audiolevel/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * gst/yadif/Makefile.am: * sys/acmenc/Makefile.am: * sys/acmmp3dec/Makefile.am: * sys/androidmedia/Makefile.am: * sys/applemedia/Makefile.am: * sys/bluez/Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/decklink/Makefile.am: * sys/directsound/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/fbdev/Makefile.am: * sys/kms/Makefile.am: * sys/msdk/Makefile.am: * sys/nvenc/Makefile.am: * sys/opensles/Makefile.am: * sys/shm/Makefile.am: * sys/tinyalsa/Makefile.am: * sys/uvch264/Makefile.am: * sys/vcd/Makefile.am: * sys/vdpau/Makefile.am: * sys/wasapi/Makefile.am: * sys/winks/Makefile.am: * sys/winscreencap/Makefile.am: * tools/gst-project-maker: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient. 2017-05-16 23:20:44 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Initialize sidx_position to GST_CLOCK_TIME_NONE If a manifest has non-zero presentation time offset (i.e., earliest presentation time specified by sidx box is not zero), the initial sidx position shouldn't be zero. Since we cannot define exact sidx position until parsing sidx box, set the value to unknown. https://bugzilla.gnome.org/show_bug.cgi?id=782693 2017-05-15 18:10:11 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle stop_type:SET, stop:NONE Seek values of type GST_SEEK_TYPE_SET with values of GST_CLOCK_TIME_NONE are perfectly valid (we essentially don't modify the existing position) 2017-05-15 16:37:14 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Copy min(gstreamer_stride, decklink_stride) per line Instead of just bpp * width, which might be more than we can copy. 2017-05-15 12:00:50 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: glshader: Make reference counting of attach() consistent https://bugzilla.gnome.org/show_bug.cgi?id=747990 https://bugzilla.gnome.org/show_bug.cgi?id=702960 2017-05-12 10:00:56 +0100 Vincent Penquerc'h * gst/videoparsers/gsth265parse.c: h265parse: fix caps leak in renegotiation 2017-05-12 10:01:10 +0100 Vincent Penquerc'h * gst/videoparsers/gsth264parse.c: h264parse: fix caps leak in renegotiation 2017-05-09 10:32:05 +0100 Vincent Penquerc'h * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: fix negotiation with j2c and jpc both allowed upstream If upstream supports both, but downstream supports only jpc, j2c would have been selected as the first in the caps. https://bugzilla.gnome.org/show_bug.cgi?id=782221 2017-04-19 13:47:57 +0100 Sebastian Dröge * ext/hls/Makefile.am: * ext/hls/gsthlsplugin.c: * ext/hls/gsthlssink2.c: * ext/hls/gsthlssink2.h: * ext/hls/meson.build: hlssink2: New HLS sink element based on splitmuxsink This embeds the muxer inside the sink and accepts elementary streams while the old HLS sink required the muxer outside. Apart from that the interface is the same as before. Currently only mpegtsmux is supported, but support for other muxers is just a matter of adding a property. The advantage of the new sink is that it reduces complexity a lot and properly handles pre-encoded streams with appropriately spaced keyframes. https://bugzilla.gnome.org/show_bug.cgi?id=781496 2017-02-25 12:37:46 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideo/audiosrc: Add GstReferenceTimestampMeta with the stream time to each buffer This is basically a frame counter provided by the driver and it's advancing at the speed of the HDMI/SDI input. Having this available on each buffer allows to know what constant-framerate-based timestamp each frame is corresponding to and can be used e.g. to write out files accordingly without having the local pipeline clock timestamps used. https://bugzilla.gnome.org/show_bug.cgi?id=779213 2017-05-12 11:35:39 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Consistently pass stream_time and stream_duration to audio/video src It's the same value now, pass it consistently. 2017-05-09 16:06:10 +0530 Nirbheek Chauhan * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Use a GstClockID to wait instead of Sleep() The main advantage is that our sleeps can be interrupted in case of an src_reset(). Earlier, we would need to wait for a read to complete before we could do a reset, which could take a long time. https://bugzilla.gnome.org/show_bug.cgi?id=781249 2017-05-11 18:39:46 +0200 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Allow changing the output-buffer-duration at any time Previously this was only allowed before the CAPS event arrived. 2017-05-09 15:13:10 -0400 Nicolas Dufresne * ext/opencv/meson.build: opencv/meson: Allow 3.2.0 This was already added and tested in autoconf. 2017-05-11 20:05:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: build/gl/meson: check for GLES3/gl3ext.h existence 791e7522ebcb75beb31fcace271dee1342d3505d for meson https://bugzilla.gnome.org/show_bug.cgi?id=781885 2017-05-11 10:29:58 +0200 Jens Georg * configure.ac: * gst-libs/gst/gl/gstglapi.h: build: Check for GLES3/gl3ext.h existence Some OpenGL drivers do not ship this but use GLES2/gl2ext.h instead. This is also in line with Khronos's recommendations https://bugzilla.gnome.org/show_bug.cgi?id=781885 2017-05-10 22:29:10 -0700 Scott D Phillips * sys/msdk/meson.build: msdk: Declare libmfx.a as a C++ static library This lets meson know that the overall plugin needs built with C++ linking. https://bugzilla.gnome.org/show_bug.cgi?id=781561 2017-05-10 15:59:42 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Always use the video stream time for audio too The audio packet times can be completely unrelated to the video stream time, depending on the card. While this looks like a bug in the driver, just always using the video stream time (which is correct) works as a workaround for now. 2017-05-09 15:06:52 -0400 Nicolas Dufresne * ext/opencv/meson.build: opencv/meson: Ensure variable opencv_found is set If the required version is not satisfied, we need to make sure this variable is set, otherwise build will fail. 2017-05-09 13:16:50 -0400 Nicolas Dufresne * ext/opencv/meson.build: * ext/webrtcdsp/meson.build: * meson.build: Bump and update for meson 0.40.1 This patch bumps the required meson to 0.40.1 as gstreamer core just did, and cleanup some code to use a feature from 0.37 that allow specifying version range when checking dependency. https://bugzilla.gnome.org/show_bug.cgi?id=780654 2017-05-05 11:05:40 +0100 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: do not drop preskip and gain from OpusHead header https://bugzilla.gnome.org/show_bug.cgi?id=753275 2017-05-09 09:47:10 -0400 Nicolas Dufresne * ext/qt/gstplugin.cc: qmlgl: Make the plugin name match the pugin file name 2017-05-09 09:43:01 -0400 Nicolas Dufresne * ext/gme/gstgme.c: gme: Make the plugin name match the plugin library name 2017-05-09 09:41:17 -0400 Nicolas Dufresne * ext/neon/gstneonhttpsrc.c: neon: Make the plugin name match the plugin library 2017-05-09 11:25:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Only use glDrawBuffer if available Otherwise fall back to glDrawBuffers. Also check if glReadBuffer exists before using it. glDrawBuffer does not exist for GLES, only glDrawBuffers does. https://bugzilla.gnome.org/show_bug.cgi?id=782376 2017-05-08 15:34:50 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle more live seeking use-cases This commit fixes the following assumptions with live seeking: 1) start was always valid and of type GST_SEEK_TYPE_SET 2) direction was always forward 3) stop should be offsetted when handling non-accurate seeks before the range start position. In order to handle more live seeking use-cases (including reverse playback), only do non-accurate start/stop value clamping for GST_SEEK_TYPE_SET values. Also add a bit more debugging lines for issues https://bugzilla.gnome.org/show_bug.cgi?id=782330 2017-05-05 18:25:43 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Implement GST_SEEK_TYPE_END usage for live When dealing with live streams, we can't rely on GstSegment calculation since it uses the segment duration to calculate the absolute values. But since we are dealing with live *and* we know the ranges, we can compute the absolute seeking values using the range stop (i.e. "now") as the END position. Allows seeking back to "live" by using start_type:GST_SEEK_TYPE_END and start:0 https://bugzilla.gnome.org/show_bug.cgi?id=782228 2017-05-08 11:01:39 -0700 Scott D Phillips * meson.build: meson: Ignore msvc warnings in C++ as well We were only ignoring the listed msvc warnings for C language files and not C++. This was working by the coincidence that we did not have any instances of these warnings in C++ files. Lately the build of decklink has been fixed on windows, and it has an instance of one of these warnings in a C++ file. https://bugzilla.gnome.org/show_bug.cgi?id=782345 2017-05-03 22:50:27 +0530 Nirbheek Chauhan * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Use latency-time and buffer-time settings Earlier, the plugin was ignoring those settings and blindly setting buffer-time to 2 seconds and latency-time to 200ms, which forced all pipelines to have a minimum latency of 200ms + sink latency. The values of segsize and segtotal were also not derived correctly. Now we obey these values, and you can get close to the previous behaviour by setting buffer-time and latency-time manually. Note that they are set in microseconds. As a consequence, when we haven't received enough data from the device, we now sleep for a time proportional to the data remaining. However, Directsound is a deprecated API so it maintains its own software ringbuffer which updates at arbitrary intervals. Hence we might have to wait a full segsize to get the last 10% of data. To avoid tight loops, we clamp our sleep floor at 10ms. In my testing, this keeps the wakeups not-too-high (proportional to the latency-time set on the source). Further improvements should be made by fixing the WASAPI audio source plugin instead of this. Directsound is deprecated and as the comments explain, it is impossible to get low latency, decent quality, or good performance from it. Based on a patch by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=781249 2017-05-07 11:47:40 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: fix whole example launch line actually 2017-05-07 11:41:06 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: remove extraneous \ from example launch line in docs 2017-05-05 18:22:18 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Allow live seeking range to go back to "now" The allowed live seek ranges returned by subclasses are "inclusive", that is to say that the "range_stop" value they return is the highest acceptable position one can seek to (i.e. "now"). Allow seeking to exactly that value 2017-05-05 18:52:24 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: Revert "decklink: Fix debug logging warnings on Windows" This reverts commit 845832263ba6b9e135b23e9a29c9d109cb2ee9c4. The commit broke cross-mingw CI: https://ci.gstreamer.net/job/GStreamer-master/8659/console It seems that cross-mingw on Autotools and native-mingw on Meson disagree about the size of HRESULT. Revert for now till I can investigate the Meson side of things some more. 2017-05-05 04:30:59 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/meson.build: decklink: Fix linking on MinGW MinGW does not provide comsupp.lib, so there's no implementation of _com_util::ConvertBSTRToString. Use a fallback implementation that uses wcstombs() instead. On MinGW we also truncate the name to 100 chars which should be fine. 2017-05-05 04:02:29 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.h: decklink: Fix building on Windows BSTR is already a pointer to a string 2017-05-05 03:59:45 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix debug logging warnings on Windows HRESULT is unsigned long int, not unsigned int 2017-05-05 04:01:38 +0530 Nirbheek Chauhan * sys/decklink/meson.build: meson: Fix decklink building on Windows Needs comsuppw, and does not need libdl or pthread. 2017-05-04 18:59:14 +0300 Sebastian Dröge * configure.ac: * meson.build: Back to development === release 1.12.0 === 2017-05-04 15:39:05 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.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-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-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.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-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: * meson.build: Release 1.12.0 2017-05-04 15:10:52 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-05-04 13:47:37 +0300 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2017-05-03 21:13:38 +0800 Ting-Wei Lan * ext/hls/meson.build: meson: hls: libm is required because m3u8.c uses math.h https://bugzilla.gnome.org/show_bug.cgi?id=782119 2017-05-03 13:21:42 +0200 Josep Torra * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.h: * sys/applemedia/qtkitvideosrc.m: qtkit: drop the qtkitvideosrc element The QTKit framework had been deprecated for long in favour of AVFundation framework and we already have avfvideosrc that provides the same functionality. https://bugzilla.gnome.org/show_bug.cgi?id=782078 2017-04-07 17:13:52 +0300 George Kiagiadakis * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: fix doc string of echo-cancel property If the echo probe element is not found, initialization actually fails instead of silently working with echo-cancel disabled. https://bugzilla.gnome.org/show_bug.cgi?id=780976 2017-05-02 13:24:30 +0800 Haihua Hu * gst-libs/gst/gl/gstglupload.c: glupload: passthrough composition caps features in directviv upload https://bugzilla.gnome.org/show_bug.cgi?id=782046 2017-04-27 21:21:44 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/Makefile.am: * tests/check/Makefile.am: tests: fix link problem on centos7 And put LIBS before -lgstfoo in adaptivedemux Makefile.am === release 1.11.91 === 2017-04-27 17:30:38 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.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-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-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.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-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: * meson.build: Release 1.11.91 2017-04-27 16:03:28 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-04-27 15:28:44 +0300 Sebastian Dröge * po/LINGUAS: * po/fur.po: * po/ky.po: * po/sv.po: po: Update translations 2017-04-26 17:46:10 +0800 shakin chou * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: amcvideodec/enc: Correctly check for no PTS on input buffers MediaCodec gives us a presentation timestamp of 0 if it does not know anything, but GStreamer gives us GST_CLOCK_TIME_NONE. Don't mix up these two. https://bugzilla.gnome.org/show_bug.cgi?id=780190 2017-04-25 15:15:13 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Consolidate adjacent co-styled inline elements A common subtitling use case is live-generated subtitles, in which each new word is contained in its own span, and the spans are displayed sequentially, with the effect that lines of displayed subtitles are built up word-by-word. This can, however, cause problems when the number of words in a block is greater than the number of allowed GstMemorys in a GstBuffer. Since in this use case each span will have the same styling as adjacent spans, we can join adjacent spans (and other inline elements, such as breaks) into a single element containing the concatenated text of each, thus avoiding the limit of GstMemorys in a GstBuffer and also reducing the amount of styling/layout metadata that is attached to each buffer. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 15:33:38 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Don't add GstMemorys to a GstBuffer that is full The parser stores the text from each inline element of a scene in its own GstMemory, which is inserted in the GstBuffer containing the scene data. However, GstBuffers can contain only a limited number of GstMemorys. Therefore, don't add more than the maximum number of GstMemorys to each buffer, and warn if this is attempted. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 15:10:22 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Store newline as text of br element When parsing
elements, store an actual newline in the text field of the created TtmlElement. They then don't need to be treated as a separate case from anon-span elements when being processed. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 10:17:49 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Replace repeated warning code with a function. Encapsulates in a function the code that warns of an illegally positioned element, rather than repeating the same code multiple times. Also frees a string allocated by ttml_get_element_type_string, which was previously being leaked. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-24 11:34:41 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Remove redundant text_index field of TtmlElement https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 10:04:50 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Don't leak TtmlElements when deleting GNodes/trees. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 13:22:33 +0300 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Fix compiler warning ../subprojects/gst-plugins-bad/ext/smoothstreaming/gstmssdemux.c: In function ‘gst_mss_demux_requires_periodical_playlist_update’: ../subprojects/gst-plugins-bad/ext/smoothstreaming/gstmssdemux.c:729:16: error: unused variable ‘mssdemux’ [-Werror=unused-variable] GstMssDemux *mssdemux = GST_MSS_DEMUX_CAST (demux); ^~~~~~~~ cc1: all warnings being treated as errors 2017-04-07 16:33:21 +1000 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: separate manifest update task from download tasks Rationale is to allow the manifest update task to continue running while seeks are occurring. Otherwise, if the user reliably performs a seek before the manifest is updated, then as the manifest task is reset on seeks (and thus the time to wait between manifest updates), the manifest would never be updated. This fix makes the manifest update task free-running and continously update even during seeks. 2017-04-07 14:42:24 +1000 Matthew Waters * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: mss: always periodically update the manifest taking the new fragments Without this, for streams where the content is stored indefinitely and can be seeked on, the duration would never increase when in paused or, until we reached near the end of the currently advertised stream (where the internal fragment parser would see descriptions of new fragments). 2017-04-24 20:28:06 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 60aeef6 to 48a5d85 2017-04-21 21:29:05 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add msm to the list of drivers This prevent having to set the driver-name explicitly when running on Qualcomm/MSM boards. 2017-04-20 14:43:45 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Convert tabs to spaces in input The TTML spec has an issue in which tab (U+0009) characters that are first in a sequence of whitespace characters are not suppressed at the start and end of line areas. This issue was reported in [1] and the editor of the TTML specs confirmed that this was not the intention behind the spec. The editor has created an issue to fix this in both the TTML1 and TTML2 specs [2], giving a proposal of what the spec should say. This patch updates ttmlparse to implement the intended behaviour as proposed, in which tabs in the input are converted to spaces before processing. [1] https://github.com/w3c/imsc/issues/224 [2] https://github.com/w3c/ttml1/issues/235 https://bugzilla.gnome.org/show_bug.cgi?id=781539 2017-04-20 10:24:30 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Fix potential resource leak identified by coverity. If multiple styles/regions with the same ID are present in the input (which is not allowed in TTML), use the last and give a warning. Fixes CID #1405134. 2017-04-20 10:22:49 +0100 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: Fix potential resource leak identified by coverity Fixes CID #1405133. 2017-04-19 19:08:41 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: Revert "decklinkvideo/audiosrc: Add GstReferenceTimestampMeta with the stream time to each buffer" This reverts commit d5684d5b145a3eb0e23476f18669d1ffa552c5de. This shouldn't have been merged before 1.12. 2017-02-25 12:37:46 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideo/audiosrc: Add GstReferenceTimestampMeta with the stream time to each buffer This is basically a frame counter provided by the driver and it's advancing at the speed of the HDMI/SDI input. Having this available on each buffer allows to know what constant-framerate-based timestamp each frame is corresponding to and can be used e.g. to write out files accordingly without having the local pipeline clock timestamps used. https://bugzilla.gnome.org/show_bug.cgi?id=779213 2017-04-19 16:06:52 +0100 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: Fix potential problem identified by clang Clang's static analyser found potential code paths in which variables were being used in comparisons when uninitialised. Fix by properly handling out-of-range value returned by gst_ttml_get_element_index. 2017-04-19 14:07:06 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Fix potential NULL dereference identified by coverity Hopefully fixes CID #1405131. 2017-04-19 14:00:47 +0100 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: Fix integer handling issue identified by coverity Fixes CID #1405132. 2017-04-19 12:36:03 +0100 Sebastian Dröge * ext/hls/gsthlssink.c: * ext/hls/gsthlssink.h: hlssink: Remove some unused struct fields 2017-04-17 19:25:49 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: nvenc: Stop bitstream thread in ::stop() Otherwise we are likely to crash if EOS didn't happen yet. https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-14 13:58:21 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: nvenc: Update to the current gstreamer-gl API https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-14 13:57:19 +0200 Ole André Vadla Ravnås * configure.ac: nvenc: Add support for the Cuda 8.0 SDK https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-12 20:01:40 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: dashdemux: Rewrite ISOBMFF & SIDX handling The previous code was handling both as separate steps and then tried to combine the results, but this resulted in all kinds of bugs which showed themselves as failures during seeking and offset tracking getting wrong. This also showed itself with gst-validate on the sample stream. The rewritten code now parses everything in one go and tracks the current offset only once, and as a side effect simplifies the code a lot. Also added is detection of SIDX that point to other SIDX instead of actual media segments, e.g. with this stream: http://dash.akamaized.net/dash264/TestCases/1a/sony/SNE_DASH_SD_CASE1A_REVISED.mpd Support for this will have to be added at some point but that should also be easier with the rewritten code. https://bugzilla.gnome.org/show_bug.cgi?id=781233 2017-04-15 18:17:29 -0700 Thiago Santos * tests/check/elements/dash_mpd.c: tests: dash_mpd: add some inheritance tests Tests regarding inheritance of segment template attributes 2017-04-12 16:58:10 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Do sanity check of Segment Base Information only at Repesentation level Spec 5.3.9.2 is saying about the existence of duration and SegmentTimeline only for Representation level. Other level such as Period or AdaptationSet might not have the attributes. https://bugzilla.gnome.org/show_bug.cgi?id=780570 2017-03-27 10:06:30 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Allow inherit Segment{Base,Template} from Period Similar to SegmentList, Representation can inherit Segment{Base,Template} from Period https://bugzilla.gnome.org/show_bug.cgi?id=780570 2017-04-14 18:16:28 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't hold locks when pushing FLUSH_START Some actions (Qos, reconfigure, ...) might take place before we finish pushing out flush_start. One problem would be that: 1) The QOS handling in adaptivedemux takes the MANIFEST LOCK That QOS event comes from basesink with its PREROLL_LOCK taken 2) FLUSH_START is sent from adaptivedemux with the MANIFEST_LOCK taken and the basesink flushing handler needs to take the PREROLL_LOCK => deadlock https://bugzilla.gnome.org/show_bug.cgi?id=781320 2017-04-13 13:27:57 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix segment creation/adaptation some more Take into account the segment stop and the negative rates https://bugzilla.gnome.org/show_bug.cgi?id=781267 2017-04-14 01:56:50 +1000 Jan Schmidt * ext/opencv/MotionCells.cpp: motioncells: Fix cell string generation Allow 1 extra char in the tmp buffer where the motion cell snippets are generated, so that it doesn't leave off a comma when dealing with cells that have 2 numerals in both indices 2017-04-13 11:33:41 +0100 Tim-Philipp Müller * configure.ac: * ext/ttml/gstttmlplugin.c: ttml: build, but don't autoplug unless GST_TTML_AUTOPLUG env var is set Don't hide build behind --enable-experimental. Our goal is to not autoplug it for now, so let's just always build it if the dependencies are there and hide autoplugging enablement behind an env var. 2016-10-19 14:56:06 +0200 Philipp Zabel * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: if the plane can not scale, retry without scaling and remember Retry the drmModeSetPlane call without scaling if the first try fails, and remember not to scale anymore. https://bugzilla.gnome.org/show_bug.cgi?id=781188 2017-04-12 20:09:33 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: Revert "dashdemux: Fix issue when manifest update sets slow start without passing necessary header & caps changes downstream" This reverts commit c9fbf3459a719b2c68ba69ddabd373ea9bf804a2. The representation ID comparision here was wrong and triggering always if the ID did *not* change, causing needless redownloading of the header. The sample stream provided in the bug does not exist anymore. 2017-03-08 15:01:13 -0300 Thibault Saunier * ext/assrender/gstassrender.c: * ext/bs2b/gstbs2b.c: * ext/chromaprint/gstchromaprint.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurltlssink.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: * ext/dash/gstdashdemux.c: * ext/dc1394/gstdc1394src.c: * ext/directfb/dfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/fluidsynth/gstfluiddec.c: * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstopengl.c: * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlssink.c: * ext/iqa/iqa.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/ladspa/gstladspa.c: * ext/libde265/libde265-dec.c: * ext/lv2/gstlv2.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opus/gstopusparse.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsninputselector.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: * ext/smoothstreaming/gstmssdemux.c: * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gstspanplc.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: * ext/teletextdec/gstteletextdec.c: * ext/ttml/gstttmlparse.c: * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/subtitlemeta.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vulkan/gstvulkan.c: * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkmemory.c: * ext/vulkan/vksink.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkwindow.c: * ext/wayland/gstwaylandsink.c: * ext/wildmidi/gstwildmidi.c: * ext/x265/gstx265enc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvp8parser.c: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.c: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer-visualization.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/accurip/gstaccurip.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautoconvert.c: * gst/bayer/gstbayer2rgb.c: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstdigitalzoom.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/compositor/compositor.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gsterrorignore.c: * gst/debugutils/gstwatchdog.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/gdp/dataprotocol.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/midi/midiparse.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/removesilence/gstremovesilence.c: * gst/sdp/gstsdpdemux.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/timecode/gstavwait.c: * gst/timecode/gsttimecodestamper.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstzebrastripe.c: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: * gst/videoparsers/gstdiracparse.c: * gst/videosignal/gstsimplevideomark.c: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstvideoanalyse.c: * gst/y4m/gsty4mdec.c: * gst/yadif/gstyadif.c: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahssrc.c: * sys/applemedia/atdec.c: * sys/applemedia/vtdec.c: * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dvb/gstdvbsrc.c: * sys/kms/gstkmssink.c: * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/tinyalsa/tinyalsasink.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdpvideomemory.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: docs: Port all docstring to gtk-doc markdown 2017-03-27 15:29:16 -0300 Thibault Saunier * gst/rawparse/gstvideoparse.c: rawvideoparse: videoparse now uses GstValueArray and not GValueArray 2017-04-12 09:35:16 -0300 Thibault Saunier * gst-libs/gst/gl/gstglsl.h: docs: Stop linking to inexistant symbols 2017-04-12 12:06:52 -0300 Thibault Saunier * gst-libs/gst/base/gstaggregator.h: aggregator: Make instance var name match between .c and .h Making GI happy 2017-04-12 13:17:24 +0300 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: Revert "directsoundsrc: Correctly calculate segsize and segtotal" This reverts commit 6d256d9908e292f6c593bf45e69354f6b613cc8b. It was configuring the period/buffer size in a way that often causes drop-outs or complete underruns. Needs further investigation. 2017-04-12 10:54:23 +0200 Edward Hervey * ext/dash/gstmpdparser.c: mpdparser: Fix leak The error: location takes care of freeing new_representation CID #1405027 2017-04-12 10:54:05 +0200 Edward Hervey * ext/dash/gstmpdparser.c: mpdparser: Run gst-indent 2017-04-11 15:46:19 +0300 Claudio Saavedra * gst-libs/gst/gl/meson.build: meson: add missing gstglrenderbuffer.h header https://bugzilla.gnome.org/show_bug.cgi?id=781179 2017-04-11 09:42:49 +0100 Tim-Philipp Müller * sys/decklink/meson.build: meson: decklink: fix meson configure error on macOS "meson encountered an error in file sys/decklink/meson.build, line 33, column 2: Invalid use of addition: must be str, not list" Also remove nonsensical linker flags on windows. https://bugzilla.gnome.org/show_bug.cgi?id=781156 2016-12-30 14:05:30 -0500 Fabian Orccon * configure.ac: * gst/faceoverlay/gstfaceoverlay.c: * gst/meson.build: faceoverlay: Port to GStreamer 1.x https://bugzilla.gnome.org/show_bug.cgi?id=764011 2017-04-05 16:03:08 -0500 Fabian Orccon * configure.ac: * gst/faceoverlay/Makefile.am: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: * gst/faceoverlay/meson.build: * gst/meson.build: faceoverlay: Revert deletion https://bugzilla.gnome.org/show_bug.cgi?id=764011 2017-03-03 09:08:06 +0100 Jürgen Sachs * ext/dash/gstmpdparser.c: dashdemux/mpdparser: Fix wrong false sanity check for manifests with nested SegmentTemplate nodes https://bugzilla.gnome.org/show_bug.cgi?id=778237 2017-04-10 23:49:16 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From 39ac2f5 to 60aeef6 2017-04-10 18:46:01 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Handle current SIDX before current position in normal mode like in keyunit-only trick mode Otherwise we'll get into an infinite loop here. Now this is still not correct and will cause a clean error, but at least it won't hang forever anymore. 2017-04-07 12:19:27 -0700 Scott D Phillips * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: meson: gl: set default value of 0 for glconf vars meson's configure_file emits only a comment like /* #undef ... */ for values which are unset in the configuration_data. For gstglconfig.h, this differs from the autotools build where the preprocessor definitions are always either 0 or 1. So loop over a list of variables to set to zero as default. Also sync up the gstglconfig.h.meson file with the additional macros defined by the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=781043 2017-04-07 10:19:43 +0100 Vincent Penquerc'h * gst-libs/gst/base/gstaggregator.c: gstaggregator: fix event use after free https://bugzilla.gnome.org/show_bug.cgi?id=781017 2017-04-07 10:39:31 +0100 Vincent Penquerc'h * gst/mxf/mxfmux.c: mxfmux: fix index entry leak https://bugzilla.gnome.org/show_bug.cgi?id=781023 2017-04-07 10:36:34 +0100 Vincent Penquerc'h * tests/check/elements/videoframe-audiolevel.c: tests: fix leak in videoframe-audiolevel test also add braces for the else case https://bugzilla.gnome.org/show_bug.cgi?id=781022 2017-04-07 10:30:09 +0100 Vincent Penquerc'h * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: fix display leak https://bugzilla.gnome.org/show_bug.cgi?id=781019 2017-04-07 10:24:19 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix list leak Windows aren't always removed in time, and it turns out to be very, very hard to remove a window in a way that's not racy and not deadlocky. Since the window itself doesn't leak, freeing the list on object destruction is enough. https://bugzilla.gnome.org/show_bug.cgi?id=781018 2017-04-07 10:43:51 +0100 Vincent Penquerc'h * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: fix invalid memory access in language descriptor Also add a couple sanity asserts/returns https://bugzilla.gnome.org/show_bug.cgi?id=781024 2017-03-27 09:56:32 +0900 Seungha Yang * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Report error if Representation is invalid Spec "5.3.5 Representation" is saying that id and bandwidth attributes are mandatory fields. https://bugzilla.gnome.org/show_bug.cgi?id=780569 2017-03-24 15:04:21 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Retry downloading a fragment immediately if any in live streaming At the moment that demux is waiting manifest update, the target sequence of fragment was advanced already. So, checking stream_has_next_fragment() means looking for the next fragment of target fragment. This might cause unexpected buffering if each fragment has large duration and manifest is listing only limited number of fragments. https://bugzilla.gnome.org/show_bug.cgi?id=780494 2017-03-24 08:16:35 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Fix SEEK of multi-period On-Demand profile For each period, media presentation is the relative to the period-start time. So SIDX seek position should be target seek position minus period-start. Also, if presentationTimeOffset is defined, the value should be compensated https://bugzilla.gnome.org/show_bug.cgi?id=780397 2017-04-04 11:47:55 +0100 Chris Bass * ext/ttml/gstttmlparse.c: ttmlparse: push segment events downstream Without this, subtitles will stop after seeking. https://bugzilla.gnome.org/show_bug.cgi?id=780897 2017-04-07 10:16:46 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: don't filter out untimed whitespace Significant whitespace in elements that don't have begin/end values should inherit timing from its parent, or if no its parents have no timing, from the document's Root Temporal Extent. Currently, such whitespace is removed, which is not spec-compliant. Fix this by retaining whitespace in content nodes, and assigning a Root Temporal Extent of 24 hours to any significant whitespace whose parents have no associated timing. https://bugzilla.gnome.org/show_bug.cgi?id=781027 2017-03-22 10:41:44 +0000 Chris Bass * ext/ttml/gstttmlparse.c: ttmlparse: don't leak caps. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 10:35:38 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: improve function comments/descriptions https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 10:30:47 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: relocate type definitions to head of file https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 10:21:28 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/ttmlparse.c: ttml: correctly implement lineHeight behaviour The specified behaviour in TTML when lineHeight is "normal" is different from the behaviour when a percentage is given. In the former case, the line height is a percentage (the TTML spec recommends 125%) of the largest font size that is applied to the spans within the block; in the latter case, the line height is the given percentage of the font size that is applied to the block itself. The code doesn't correctly implement this behaviour; this patch fixes that. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 09:21:09 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/gstttmlrender.h: ttmlrender: apply correct line height to blocks with multiple text sizes In TTML, the height of every line in a block is determined by lineHeight and fontSize style attributes, and should be the same for each line in that block, regardless of whether different sized text appears on different lines. Currently, a single PangoLayout is used to lay out all the text in a block; however, pango will vary the line height in a layout depending on the size of text used in each line, which is not compliant with TTML. This patch makes ttmlrender lay out the lines in a block itself, rather than using a PangoLayout to do the work. The code still uses a PangoLayout to render the text of each element, but the overall layout of the text in a block is now controlled by ttmlrender itself. By doing this, ttmlrender is able to ensure that the height of each line in a block is correct. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 15:05:18 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: add facility to stitch images in both directions https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 14:39:39 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: extend UnifiedElement type to include font metrics https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 14:11:42 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: extend UnifiedBlock type Include a reference to the GstSubtitleStyleSet of the represented block and a string containing the concatenated text from all elements. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 13:50:12 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/subtitle.h: ttml: add refcounting to GstSubtitleStlyeSet type https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 12:15:50 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: rename TextRange type and its fields. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 12:12:28 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/gstttmlrender.h: ttmlrender: store PangoLayout in object state https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 11:28:31 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: put all functions in gst_ttml_render namespace https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-04-08 21:28:58 +1000 Jan Schmidt * gst-libs/gst/gl/gstglframebuffer.h: gl: Remove duplicate typedef of GstGLFramebufferClass The GstGLFramebufferClass struct is typedeffed in gstgl_fwd.h, and having a duplicate elsewhere is breaking the cerbero build on my OSX machine, even though it seems to be working in CI. 2017-04-08 10:08:04 +0100 Tim-Philipp Müller * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/dash_demux.c: tests: dash: don't use deprecated g_object_newv() 2017-04-07 18:49:52 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do not mix the same buffer twice when EOS. When entering this code path, we know that: We received EOS on this pad. We consumed all its buffers. In any case, we want to replace vaggpad->buffer with NULL, otherwise we will end up mixing the same buffer twice. https://bugzilla.gnome.org/show_bug.cgi?id=781037 === release 1.11.90 === 2017-04-07 16:32:24 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.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-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-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.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-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: * meson.build: Release 1.11.90 2017-04-07 15:31:12 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-04-07 15:06:50 +0300 Sebastian Dröge * po/hu.po: * po/ky.po: * po/sv.po: po: Update translations 2017-04-07 14:44:54 +0300 Sebastian Dröge * win32/common/libgsturidownloader.def: win32: Update libgsturidownloader.def 2017-04-07 16:32:40 +1000 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: add some reasons on warning reporting 2017-04-06 16:13:41 +0300 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Correctly calculate segsize and segtotal segsize should be based on latency-time, and must be a multiple of the frame size. segtotal should be based on buffer-time and segsize. This prevents errors caused by outputting buffers that are not a multiple of the frame size, and actually makes the buffer-time and latency-time properties do what they're supposed to do. 2017-03-17 12:58:06 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Use a GWeakRef to the parent to prevent a reference cycle https://bugzilla.gnome.org/show_bug.cgi?id=780140 2015-12-09 13:19:11 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: set uridownloader's parent Allows internal http source to request contexts and share cookies with the pipeline in case the server imposes any restriction based on cookies. 2015-12-09 13:12:42 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: add new gst_uri_downloader_set_parent If set, the parent is used to proxy need-context messages from uridownloader's http source in order to get cookies/headers from the pipeline. Based on a patch from Philippe Normand https://bugzilla.gnome.org/show_bug.cgi?id=726314 2017-04-01 17:00:47 +0200 Josep Torra * .gitignore: examples: add audiomixmatrix test to .gitignore 2017-04-01 16:49:15 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: fix warnings reported by XCode 8.1.0 gstglwindow_cocoa.m:345:16: error: unused variable 'window' [-Werror,-Wunused-variable] GstGLWindow *window = GST_GL_WINDOW (window_cocoa); ^ gstglwindow_cocoa.m:445:11: error: unused variable 'external_view' [-Werror,-Wunused-variable] NSView *external_view = (__bridge NSView *)priv->external_view; ^ 2017-03-31 23:40:05 +1300 Douglas Bagnall * gst/audiomixer/gstaudiointerleave.c: audiointerleave: don't overflow channel map with >64 channels When there are more than 64 channels, we don't want to exceed the bounds of the ordering_map buffer, and in these cases we don't want to remap at all. Here we avoid doing that. Based on a patch originally for plugins-good/interleave in https://bugzilla.gnome.org/show_bug.cgi?id=780331 2017-03-29 23:45:21 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gldisplay: Fix assert caused by missing debug category 2017-03-29 23:36:50 -0400 Nicolas Dufresne * ext/mplex/meson.build: meson: Fix mplex plugin file name Meson was creating libgstmplex2.so which didn't match the plugin name 'mplex'. 2017-03-27 18:14:54 +0300 George Kiagiadakis * ext/webrtcdsp/gstwebrtcechoprobe.cpp: webrtcechoprobe: return from _read() early if the probe is not configured yet https://bugzilla.gnome.org/show_bug.cgi?id=780642 2017-03-28 16:04:15 +0100 Luis de Bethencourt * ext/dash/gstdashdemux.c: dashdemux: fix typo in implementation notes s/enveloppe/envelope 2017-03-27 21:15:32 -0400 Nicolas Dufresne * ext/meson.build: * ext/webrtcdsp/meson.build: webrtcdsp: Add support to build with meson 2017-02-23 16:12:38 +0100 Mathieu Duponchelle * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: expose voice activity detection. The element now exposes properties to enable and configure voice activity detection, and posts "voice-activity" messages when the return value of stream_has_voice () changes. https://bugzilla.gnome.org/show_bug.cgi?id=779138 2017-03-27 15:10:45 -0400 Nicolas Dufresne * gst/audiomixmatrix/gstaudiomixmatrix.c: audiomixmatrix: Don't crash if matrix is unset Fix a crash ff one set in_channels/out_channels to non-zero, and then get the matrix property. 2017-03-27 13:34:19 -0400 Nicolas Dufresne * gst/audiomixmatrix/gstaudiomixmatrix.c: audiomixmatrix: Remove property matrix-value-array This duplicated property is no longer needed as there is now API to allow bindings access GST_TYPE_ARRAY (see gst_util_get/set/object_array). Additionnally, Python has proper overrides which will make this looks like Python. A 2x2 matrix would be set this way: element = matrix = Gst.ValueArray(Gst.ValueArray([1.0, -1.0]), Gst.ValueArray([1.0, -1.0)) Notice that you need to "cast" each arrays to Gst.ValueArray, otherwise there is an ambiguity between Gst.ValueArray and Gst.ValueList list type. Fortunatly, Gst.ValueArray implements the Sequence interface, so it can be indexed like normal python matrix. 2017-03-01 20:51:43 +1100 Matthew Waters * ext/smoothstreaming/gstmssmanifest.c: mssdemux: only add live fragments after manifest fragments A live manifest may have a set (> LookAheadFragmentCount) of fragments that have already been served and are stored on the server, maybe indefinitely. Adding the parsed live fragments after the manifest fragments breaks duration reporting and the seekable range. Fix by only adding parsed fragments outside the list of fragments which assumes that the fragment list in the manifest is accurate enough to not stray too far off what's in the retrieved data. https://bugzilla.gnome.org/show_bug.cgi?id=779447 2017-03-24 15:43:07 -0400 Nicolas Dufresne * ext/kate/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: Add missing include path for gst/glib-compat-prive.h This fixes build failure in mplex and mpeg2enc plugins and most likely in kate plugin (untested). 2017-03-24 14:25:48 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Use GstQueueArray instead of GQueue Let's save two allocations and frees per frame. 2017-03-23 02:48:10 +0530 Nirbheek Chauhan * ext/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * meson.build: meson: Build mpeg2enc and mplex when available 2017-03-22 17:38:20 +0200 Sebastian Dröge * sys/kms/gstkmssink.c: kmssink: Fix compiler warning with gcc 7 gstkmssink.c: In function ‘gst_kms_sink_get_input_buffer’: gstkmssink.c:1102:29: error: ‘mems[0]’ may be used uninitialized in this function [-Werror=maybe-uninitialized] kmsmem = (GstKMSMemory *) get_cached_kmsmem (mems[0]); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors 2017-03-23 00:49:43 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't send EOS on pads when there's a pending switch When there are new pads pending for a bitrate switch, don't allow EOS through from the old streams. It will be sent when the new pads are ready, just before the old streams are removed. This fixes racy bitrate switching with hlsdemux in urisourcebin where old pads EOS before new pads appear and the entire pipeline can EOS if those propagate fast enough 2017-03-22 20:10:57 +0900 Seungha Yang * gst-libs/gst/player/gstplayer-media-info-private.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer.c: player: Make use of GstStreams API with playbin3 Allow use of playbin3 and GstStreams API by setting the environment variable "GST_PLAYER_USE_PLAYBIN3" https://bugzilla.gnome.org/show_bug.cgi?id=775487 2017-03-21 18:16:52 +0100 Georg Lippitsch * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Add read-only "signal" property https://bugzilla.gnome.org/show_bug.cgi?id=780367 2017-03-22 13:22:40 +0200 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Install srcpad query function on the srcpad, not the sinkpad 2017-03-22 12:04:35 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: In reverse playback mode, if seeking to the beginning of a fragment, start with the previous one instead There's no point to start downloading a fragment just to output 1ns. 2017-03-21 20:37:17 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Implement SNAP_NEAREST seeks 2017-03-21 20:36:02 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't use ABS() for calculating differences We know which number is bigger. 2017-03-21 20:27:10 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Only snap seeks forwards if the seek position does not happen to be the exact segment position 2017-03-21 20:14:53 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Use gst_mpdparser_get_segment_end_time() directly instead of calculating it again It does the exact same calculations. 2017-03-06 19:44:02 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Refactor to get rid of one level of indentation in seeking code Also go out of the segment searching loop once segment->start > ts. We're not going to find any earlier segment anymore. 2017-03-21 16:18:15 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix snap SIDX seeking and report if we're going outside the index Instead of just going to the first or last fragment, report if we're going outside the index. This should never happen unless there's a bug or the stream is broken. Allow some possibility for inaccuracies here though. 2017-03-21 10:20:49 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/camutils.c: dvb: camutils: drop macro disabling glib deprecation warnings No longer needed. 2017-03-20 15:19:08 -0700 Scott D Phillips * gst-libs/gst/Makefile.am: build: declare dependency from gl on allocators libgstgl has a dependency on libgstallocators starting with: ed1e4c1 glupload: Add support for Vivante DirectTexture uploads The dependency wasn't stated in the Makefile, so the build could occasionally fail if you got unlucky with the ordering of build steps. https://bugzilla.gnome.org/show_bug.cgi?id=780330 2017-03-20 19:57:32 +0000 Tim-Philipp Müller * sys/dvb/Makefile.am: dvb: fix distcheck Apparently automake automatically dists README files, but can't handle when they disappear. 2017-03-20 17:15:54 +0000 Tim-Philipp Müller * ext/assrender/gstassrender.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/speed/Makefile.am: * gst/speed/demo-mp3.c: * scripts/autoplugins.sh: * sys/dvb/README: * sys/dvb/gstdvbsrc.c: Update for 'mad' mp3 decoder removal https://bugzilla.gnome.org/show_bug.cgi?id=776140 2017-03-17 15:34:33 +0900 Seungha Yang * ext/hls/m3u8.c: m3u8: Fix parsing EXT-X-DISCONTINUITY EXT-X-DISCONTINUITY tag should have no trailing ":" character https://bugzilla.gnome.org/show_bug.cgi?id=780179 2017-03-17 16:47:07 +0900 Seungha Yang * ext/hls/m3u8.c: m3u8: Release m3u8 lock if consistent checking failed To fix deadlock during live m3u8 update https://bugzilla.gnome.org/show_bug.cgi?id=780180 2017-03-16 12:35:40 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Just reset SIDX parser if the index is invalid for the current segment https://bugzilla.gnome.org/show_bug.cgi?id=780108 2016-12-23 11:07:00 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/ttmlparse.c: ttml: Replace assertions Remove assertions and replace, where necessary, with code that handles the error cases. https://bugzilla.gnome.org/show_bug.cgi?id=776436 2017-03-15 13:24:57 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: If a SIDX seek failed although we're in the correct segment, disable the SIDX usage for this segment The SIDX apparently does not contain information about the current segment, so better stop using it instead of using incorrect values. 2017-03-15 13:24:04 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Keep track of the PTS, not the SIDX index position between representations There is no guarantee that the index positions are the same between representations, and assuming this easily causes us to get into invalid index positions. 2017-03-15 13:21:38 +0200 Sebastian Dröge * ext/dash/gstisoff.c: dashdemux: When clearing the sidx parser, reset all state And especially don't keep entry count and index around, we have no entries anymore after clearing. 2017-03-15 10:17:59 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Drain buffer at the end of subfragment Some of streams such as below have tailing boxes at the end of subfragment. http://dash.akamaized.net/dash264/TestCases/1a/netflix/exMPD_BIP_TC1.mpd https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-15 09:24:39 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Do not advace subfragment after pending SIDX seek done If a MPD is On-Demand profile and no index described, demux will terminate download loop after parsing inband SIDX with flow return custom-success. At this moment, SIDX index is excat target position, but finish_fragment() might cause re-advancing subfragment depending on MPD structure. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 19:47:17 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Reset SIDX related variables per fragment SIDX's base offset (i.e., byte offset of SIDX + sidx.first_offset) mostly vary as per fragment. Also, target SIDX index must be zero for the new fragment. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 20:15:31 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Two depth seeking for On-Demand profile Try to find fragment using MPD first, then do refinement to find target subframgnet using SIDX if possible. Note that, if target fragment was moved from the previously activated one, we should assume that the last SIDX is invalid for new fragment. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 19:41:56 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Exception handle in _sidx_seek() If target seek position is outside of the range of sidx entries, binary search returns NULL pointer. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 19:27:45 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Add assertion for preventing of access after the end of the sidx entries array Better crash cleanly here than reading some random numbers from memory. 2017-03-14 14:18:17 -0700 Scott D Phillips * gst-libs/gst/gl/gstglformat.c: gl/format: correct return enums in gst_gl_format_from_video_info In commit > 956c4d0 gl/format: use our own GL format enum's instead of gstvideo's the name and return type of gst_gl_format_from_video_info changed, but some returns of the old type were missed. Here they are updated to the correct type. https://bugzilla.gnome.org/show_bug.cgi?id=780064 2017-03-14 16:46:14 -0400 Olivier Crête * tests/check/elements/srtp.c: srtp test: Remove deprecation disabling No deprecated APIs are used. 2017-03-07 21:56:03 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Advance subfragment only if any exist SIDX based playback is not restricted to SegmentBase, but it possible with SegmentList/SegmentTemplate. In the latter case, each fragment has its own SIDX box and might be subdivided into subfragment. So, demux should not assume that the end of subfragment is the end of stream. Moreover, should try advance subfragment only if there are remaining subfragments. With additional fixes by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-13 16:06:53 +0200 George Kiagiadakis * sys/kms/gstkmssink.c: kmssink: adjust memory offset calculation for dmabuf buffers The data in the dmabuf fd may not start from byte 0, therefore we need to inform DRM about this additional offset. https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-13 15:48:33 +0200 George Kiagiadakis * gst-libs/gst/gl/gstglupload.c: glupload: adjust memory offset calculation for dmabuf buffers The data in the dmabuf fd may not start from byte 0, therefore we need to inform EGL about this additional offset. https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-13 12:46:47 +0200 George Kiagiadakis * ext/wayland/wllinuxdmabuf.c: waylandsink: fix memory offset calculation for dmabuf buffers https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-14 16:49:25 +1100 Matthew Waters * ext/dash/gstmpdparser.c: * ext/hls/m3u8.c: * ext/smoothstreaming/gstmssmanifest.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * tests/check/elements/hlsdemux_m3u8.c: Revert "adaptivedemux: answer duration queries for live streams" Completely disabling duration reporting with live streams is not cool. This reverts commit e1b68d9a65ba512a52c3a2b298fa830a445eb451. https://bugzilla.gnome.org/show_bug.cgi?id=753879 2017-03-14 14:15:00 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gltestsrc.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl: GL_ARRAY_BUFFER is not a part of VAO state As a result we need to bind it on every draw in order to have the correct state in the GL state machine. 2017-03-14 11:39:23 +1100 Matthew Waters * sys/applemedia/iosurfacememory.c: applemedia/iosurfacememory: Fix missing variable name change 956c4d0bde4d6707ccae2b4ae6dfba8500e55217 missed a variable name change. Fix that. 2017-03-13 14:28:47 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgloverlay.c: * ext/qt/gstqtsrc.cc: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/corevideobuffer.c: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/iosurfacememory.c: * sys/applemedia/iosurfacememory.h: * sys/applemedia/videotexturecache.m: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/format: use our own GL format enum's instead of gstvideo's They can describe in more detail (such as component sizes) the requested format. 2017-03-10 16:57:51 +0000 Vincent Penquerc'h * gst-libs/gst/gl/gstglupload.c: glupload: fix GValue leak https://bugzilla.gnome.org/show_bug.cgi?id=779869 2017-03-12 11:50:50 -0400 Nicolas Dufresne * Makefile.am: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-teletext.xml: Add old plugins names to cruft list This helps fixing uninstalled setup. Also fixes some path in plugin xml files. https://bugzilla.gnome.org/show_bug.cgi?id=779344 2015-09-23 17:12:34 +0200 Samuel Maroy * sys/shm/gstshmsink.c: shmsink: continue polling after EINTR https://bugzilla.gnome.org/show_bug.cgi?id=779856 2017-03-02 14:36:56 +0800 Haihua Hu * gst-libs/gst/player/gstplayer.c: player: Fix setting of external subtitle URI gst_player_set_uri_internal shouldn't free suburi which maybe set by user to load external subtitle before start play. It just need reset playbin's subutri property to NULL no matter if there was a previous one or not. https://bugzilla.gnome.org/show_bug.cgi?id=779453 2017-03-09 10:09:40 +0200 Sebastian Dröge * sys/applemedia/avfvideosrc.m: avfvideosrc: Use AVCaptureDeviceTypeBuiltInDuoCamera instead of DualCamera for now The former is deprecated in 10.2 but we don't require that SDK yet. 2017-03-08 22:28:15 -0500 Nicolas Dufresne * Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: Fix doc generation This regression was caused by the renaming of plugin-sdp into plugin-sdpelem. The doc reference needed an update. Also, add the old xml to the cruft file list. https://bugzilla.gnome.org/show_bug.cgi?id=779344 2017-03-05 15:27:11 -0500 Nicolas Dufresne * ext/dash/Makefile.am: * ext/smoothstreaming/Makefile.am: dash/smoothstreaming: Use GST_PLUGIN_LIBTOOLFLAGS Use the flags defined by configure script instead of always disabling static plugins. 2017-03-04 11:03:53 -0500 Nicolas Dufresne * docs/plugins/inspect/plugin-gtk.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * ext/fluidsynth/meson.build: * ext/gtk/Makefile.am: * ext/gtk/gstplugin.c: * ext/teletextdec/Makefile.am: * gst/camerabin2/Makefile.am: * gst/camerabin2/meson.build: * gst/onvif/meson.build: * gst/sdp/gstsdpelem.c: * gst/siren/gstsiren.c: * sys/kms/Makefile.am: * sys/kms/meson.build: Rename plugin filesnames to match plugin names - libgstgtksink.so -> libgstgtk.so - libgstteletextdec.so -> libgstteletex.so - libgstcamerabin2.so -> libgstcamerabin.so - libgstonvif.so -> libgstrtponvif.so (meson only) - sdp -> sdpelem (avoid clash with libgstsdp) - gstsiren -> siren - libgstkmssink.so -> libgstkms.so https://bugzilla.gnome.org/show_bug.cgi?id=779344 2017-03-08 15:52:43 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Only unref daily jam if not NULL 2017-03-08 15:48:19 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Unref daily jam after usage 2017-03-08 14:16:43 +0100 Nick Kallen * ext/gl/Makefile.am: * sys/applemedia/avfvideosrc.m: applemedia/gl: Fix compile issues for OSX https://bugzilla.gnome.org/show_bug.cgi?id=778333 2017-03-08 15:13:45 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/Makefile.am: gl/eagl: It's -fobjc-arc not -fobj-arc 2017-03-08 14:22:52 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: frame->buffer can't be NULL in pre_push_frame() CID 1402118 2017-03-08 17:11:17 +0900 Hyunjun Ko * tests/check/elements/h264parse.c: * tests/check/elements/parser.c: * tests/check/elements/parser.h: tests: h264parse: fix failures due to insertion of au delimiter Since insertion of aud landed, we need to change some testcases accroding to the change. Note that counting frames are changed in parser.c, due to generated frames, AUD. https://bugzilla.gnome.org/show_bug.cgi?id=736213 2017-03-08 17:09:28 +0900 Hyunjun Ko * gst/videoparsers/gsth264parse.c: h264parse: fix some failures in testcases Move logic of judgement whether or not to insert AU Delimiter before draining. Besides, aud_needed flag is reset to TRUE when skip. https://bugzilla.gnome.org/show_bug.cgi?id=736213 2017-02-08 12:23:09 +0100 Nick Kallen * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc supports position, device-type, and orientation Avfvideosrc represents an iphone camera or, on mac, a screencapture session. The old API allowed you to select an input device by device index only. The new API adds the ability to select the position (front or back facing) and device-type (wide angle, telephoto, etc.). Furthermore, you can now specify the orientation (portrait, landscape, etc.) of the videostream. https://bugzilla.gnome.org/show_bug.cgi?id=778333 2017-02-03 14:46:39 +0100 Nick Kallen * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * sys/applemedia/Makefile.am: * sys/applemedia/avfassetsrc.h: * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: * sys/applemedia/avsamplevideosink.h: * sys/applemedia/avsamplevideosink.m: * sys/applemedia/iosassetsrc.h: * sys/applemedia/iosassetsrc.m: * sys/applemedia/plugin.m: * sys/applemedia/videotexturecache.m: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: applemedia/gl: Update code to use ARC All code interacting with Objective-C objects should now use Automated Reference Counting rather than manual memory management or Garbage Collection. Because ARC prohibits C-structs from containing references to Objective-C objects, all such fields are now typed 'gpointer'. Setting and gettings Objective-C fields on such a struct now uses explicit __bridge_* calls to tell ARC about object lifetimes. https://bugzilla.gnome.org/show_bug.cgi?id=777847 2017-03-07 18:33:12 +0900 Hyunjun Ko * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: insert AU delimiter only in case of byte-stream Inserts AU delimeter by default if missing au delimeter from upstream. This should be done only in case of byte-stream format. Note that: We have to compensate for the new bytes added for the AU, otherwise insertion of PPS/SPS will use wrong offsets and overwrite wrong data. Also mark the AU delimiter blob const, and use frame->out_buffer for storing the output to keep baseparse assumptions valid. Original-Patch-By: Michal Lazo Helped by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=736213 2017-03-03 16:20:15 +0200 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: redo src caps negotiation if a sink pad's caps have changed in the meantime https://bugzilla.gnome.org/show_bug.cgi?id=755782 2017-03-06 17:51:32 +0530 Arun Raghavan * gst-libs/gst/gl/gstglcontext.h: gl: Missed one backwards compat define in GST_GL_TYPE_CONTEXT Continued from 296b4251e3042fe95a9cce1ad7674b708ba92599 2017-02-21 20:08:21 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Try to find type at the end of a fragment hlsdemux tries to find type if given buffer size is large enought to find type (currently the threshold is 2KB), or EOS in some cases. However, since there can be small byte fragments such as WebVTT, demux should try to find type at the end of a fragment https://bugzilla.gnome.org/show_bug.cgi?id=779011 2017-03-06 00:30:41 +0000 Tim-Philipp Müller * ext/voaacenc/gstvoaacenc.c: voaacenc: limit bitrate property to 320 kbps This appears to be the internal limit of voaacenc, higher bitrates will be ignored and 128 kbps output will be produced instead. Therefore, we might just as well limit the allowed property values, so that people who try to set higher bitrates get a big fat warning instead of silently a much lower bitrate. 2017-03-04 12:12:52 +0100 Nick Kallen * sys/applemedia/videotexturecache.m: applemedia: Fix video texture cache build issue on MacOS https://bugzilla.gnome.org/show_bug.cgi?id=779247 2017-02-26 10:24:46 +0100 Nick Kallen * sys/applemedia/videotexturecache.m: applemedia: ensure all textures are released before texturecache is released It was previously possible for videotexturecache to be finalized before all of its textures. Finalizing outstanding textures in this circumstance leads to a crash. This patch ensure resources are freed in the proper order. https://bugzilla.gnome.org/show_bug.cgi?id=779247 2017-03-04 11:47:04 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: Fixup for last commit 2017-03-04 11:15:58 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: Fix backwards compat GST_GL_TYPE_* functions/macros These have to be macros instead of inline function as they must behave more or less like an integer literal, i.e. include the function call. 2017-03-04 11:09:39 +0200 Sebastian Dröge * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl/viv-fb: Don't use deprecated symbols and make macros more consistent https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-03-03 15:17:15 +0200 Sebastian Dröge * gst/audiomixmatrix/gstaudiomixmatrix.c: audiomixmatrix: Fix negotiation in first-channels mode if downstream does not allow the same number of channels 2017-02-16 10:51:44 +0900 Dongil Park * ext/hls/gsthlsdemux-util.c: hlsdemux: Fix checking adaptation_field_control field to parse pcr The PCR_flag and PCR value is in adaptation_field, not in payload. The MSB of adaptation_field_control is used as whether adaptation_ field is exist or not. For the case(PCR in only adaptation_field without payload), we modify checking condition about adaptation_field_control field. https://bugzilla.gnome.org/show_bug.cgi?id=778731 2017-02-02 21:06:20 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: hls: Fix various leak on hlsdemux and m3u8 * default_variant should be freed, it holds ref. * GstHLSMedia holds GstM3U8 ref. * gst_m3u8_get_next_fragment() increases ref count. https://bugzilla.gnome.org/show_bug.cgi?id=778073 2017-02-02 21:04:36 +0900 Seungha Yang * tests/check/elements/hlsdemux_m3u8.c: tests: hls: Fix leak on test code https://bugzilla.gnome.org/show_bug.cgi?id=778073 2016-04-01 17:42:32 +0100 Wojciech Przybyl * ext/dash/gstdashdemux.c: dashdemux: fix default suggestedPresentationDelay When MPD@suggestedPresentationDelay is not present in the MPD, dashdemux can provide default suggestedPresentationDelay. However when applying default value of suggestedPresentationDelay, the value should be subtracted from current time, not added to it. When streams setup is performed and live point is calculated, we have to go to the wall clock (current time) minus suggestedPresentationDelay, if we tried to start with current time plus suggestedPresentationDelay, we would be asking for future stream, which has not yet been recorded. Also the value needs to be converted from ms to us. https://bugzilla.gnome.org/show_bug.cgi?id=764726 2016-02-05 12:44:23 +0000 Alex Ashley * ext/dash/gstmpdparser.c: * ext/hls/m3u8.c: * ext/smoothstreaming/gstmssmanifest.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * tests/check/elements/hlsdemux_m3u8.c: adaptivedemux: answer duration queries for live streams For duration queries on live streams, adaptivedemux ignores the query. The problem then is that the query is answered by the downstream qtdemux element, with the duration of the currently passing fragment. This commit changes the behaviour of adaptivedemux to answer the duration queries for live streams, returning GST_CLOCK_TIME_NONE. https://bugzilla.gnome.org/show_bug.cgi?id=753879 2017-02-01 19:55:22 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Implement adaptivedemux's _stream_seek() _stream_seek() can be called by adaptivedemux when "restart download" condition. It's mostly caused by track switching. https://bugzilla.gnome.org/show_bug.cgi?id=776997 2017-02-01 19:15:31 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Simplify seeking code by using macro Import an adaptivedemux's macro to minimize code. Also, this patch considers KEY_UNIT and TRICKMODE_KEY_UNITS as snap seek. https://bugzilla.gnome.org/show_bug.cgi?id=776997 2017-02-01 17:44:25 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Early terminate seeking if we don't need to do Some codes are imported from dashdemux https://bugzilla.gnome.org/show_bug.cgi?id=776997 2016-10-10 16:41:15 -0600 Thomas Bluemel * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Add support for EXT-X-DISCONTINUITY-SEQUENCE https://bugzilla.gnome.org/show_bug.cgi?id=772811 2017-02-27 14:54:43 -0700 Thomas Bluemel * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivemutex: Fix double mutex unlock https://bugzilla.gnome.org/show_bug.cgi?id=779480 2017-03-01 15:29:42 +0200 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Also catch other exceptions by reference instead of by value It would have to be copied otherwise, and is quite big. CID 1373419 2017-03-01 12:08:58 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Don't error out if displaying the preroll frame fails This seems to happen sometimes on some hardware, and is not really critical as long as the scheduling of the normal frames works fine. Only post a warning message for this case. 2017-02-28 15:56:02 +0200 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Catch exception by reference instead of by value It would have to be copied otherwise, and is quite big. CID 1373419 2017-02-28 15:53:10 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix potential NULL pointer dereference CID 1399700 2017-02-28 15:31:53 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Compare media type of the correct variable that is actually set CID 1364752 2017-02-28 15:22:43 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: gltestsrc: Fix potential NULL pointer dereference if we fail without GError Which can happen here if we just propagate an error that happened elsewhere, e.g. FBO failed. CID 1364604 2017-02-28 13:06:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: glvideomixer/compositor: Correctly error out if calculating DAR fails CID 1320700 2017-02-28 12:53:11 +0200 Sebastian Dröge * ext/opencv/MotionCells.cpp: motioncells: Initialize m_changed_datafile class field CID 1197704 2017-02-28 12:46:42 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Remove useless comparison of unsigned integer with < 0 CID 206187 2017-02-28 12:34:30 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Check return value of gst_gl_context_check_framebuffer_status() CID 1401588 2017-02-28 12:31:54 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Add viv-fb to DIST_SUBDIRS to fix "make distcheck" 2017-02-28 10:53:04 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * ext/gl/gstglvideomixer.c: gl: Rename gst_gl_get_affine_transformation_meta_as_ndc_ext() to prevent symbol conflict The same symbol also exists in libgstgl, although marked as private and internal. This has no effect when doing static linking and there's a symbol conflict. 2017-02-28 10:50:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglutils_private.h: glutils: Mark private functions as G_GNUC_INTERNAL 2017-02-28 09:26:25 +0100 Edward Hervey * gst/mpegtsdemux/pesparse.c: mpegtsdemux: Fix wrong usage of '<<' operator Detected by GCC 7. Add comments for clarity https://bugzilla.gnome.org/show_bug.cgi?id=779333 2017-02-27 21:22:30 -0500 Nicolas Dufresne * gst/audiomixmatrix/meson.build: audiomixmatric: Add missing libm deps for meson 2017-02-27 10:32:45 -0300 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Include `interlace-mode` in caps Those are the rules: In the SPS: * if frame_mbs_only_flag=1 => all frame progressive * if frame_mbs_only_flag=0 => field_pic_flag defines if each frame is progressive or interlaced, thus the mode is 'mixed' in GStreamer terms. https://bugzilla.gnome.org/show_bug.cgi?id=779309 2017-02-14 11:09:46 -0300 Thibault Saunier * ext/iqa/iqa.c: iqa: Plug a leak allocating twice the same data 2017-02-27 19:13:11 +0200 Sebastian Dröge * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: pkg-config: Add both srcdir and builddir to the include path Just the build dir is not going to work for srcdir!=builddir. 2017-02-27 23:47:25 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtsparse.c: tsparse: Convert PCR values immediately Doing lazy conversion of PCR values doesn't work right when a PCR discont is encountered. Instead, convert PCR values to the continuous timestamp domain as soon as we encounter them and store that instead. 2017-02-22 14:55:58 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglupload.c: glupload: Add support for Vivante DirectTexture uploads Together with the upcoming gstreamer-imx patch, this allows zerocopy between imxvpudec and other elements and glimagesink. This is losely based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779067 2017-02-17 19:26:41 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/badallocators.h: * gst-libs/gst/allocators/gstphysmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-bad-allocators.pc.in: allocators: Add GstPhysMemoryAllocator abstraction This can be used in a generic way as common interface by all platforms that, in one way or another, pass around physical memory addresses. https://bugzilla.gnome.org/show_bug.cgi?id=779067 2017-02-17 14:37:08 +0200 Sebastian Dröge * configure.ac: * ext/qt/gstqtglutility.cc: qml: Add support for Vivante EGL FS windowing system https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-02-17 12:24:58 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl: Add support for Vivante EGL FB windowing system This is very similar to how dispmanx on the Raspberry Pi works. Based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/tree/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-02-25 21:47:47 -0300 Edgard Lima * docs/plugins/inspect/plugin-neon.xml: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: * ext/voamrwbenc/gstvoamrwb.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/voamrwbenc/gstvoamrwbenc.h: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.h: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.h: Update Edgard Lima's email https://bugzilla.gnome.org/show_bug.cgi?id=779230 2017-02-25 14:43:55 +0200 Sebastian Dröge * Makefile.am: * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedaudioparse.h: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstunalignedvideoparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/meson.build: * gst/rawparse/plugin.c: * gst/rawparse/unalignedaudio.h: * gst/rawparse/unalignedvideo.h: * tests/check/Makefile.am: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Move to gst-plugins-base and keep legacy audioparse/videoparse here https://bugzilla.gnome.org/show_bug.cgi?id=774544 2017-02-24 15:59:44 +0200 Sebastian Dröge * meson.build: meson: Update version 2017-02-24 15:37:40 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.11.2 === 2017-02-24 15:07:38 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.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-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-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: Release 1.11.2 2017-02-24 12:53:00 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-02-24 12:46:06 +0200 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2017-02-24 01:28:35 +0200 Vivia Nikolaidou * gst/audiomixmatrix/meson.build: * gst/meson.build: * gst/timecode/meson.build: meson: Added meson.build for audiomixmatrix and timecode https://bugzilla.gnome.org/show_bug.cgi?id=779154 2017-02-22 14:09:45 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/gstglmemory.c: glmemory: Use glBlitFramebuffer() instead of glCopyTexImage2D() if available glBlitFramebuffer() is new GLES3/GL3 API. They are probably often implemented in terms of each other, and glBlitFramebuffer() can potentially be implemented more flexible. Let's use it if available. Also it actually works on imx6 with DirectVIV textures. Based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779070 2017-01-16 19:36:07 +0200 Vivia Nikolaidou * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/audiomixmatrix/Makefile.am: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiomixmatrix/gstaudiomixmatrix.h: * tests/examples/Makefile.am: * tests/examples/audiomixmatrix/Makefile.am: * tests/examples/audiomixmatrix/test-audiomixmatrix.c: audiomixmatrix: New element that mixes audio channels This element transforms a given number of input channels into a given number of output channels according to a given transformation matrix. The matrix coefficients must be between -1 and 1. In the auto mode, input/output channels are automatically negotiated and the transformation matrix is a truncated or zero-padded identity matrix. https://bugzilla.gnome.org/show_bug.cgi?id=777376 2017-02-22 22:31:17 +0100 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Remove clock-source property Remove clock-source property, because the GST clock usually starts at some random value and is thus uselsess for creating a timecode from it. https://bugzilla.gnome.org/show_bug.cgi?id=778703 2017-02-22 22:30:17 +0100 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: First timecode from current system time Add a new flag which automatically sets this first timecode to the current system time in local time zone. https://bugzilla.gnome.org/show_bug.cgi?id=778703 2017-02-22 22:26:57 +0100 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: First timecode property Add an new property to start from a given timecode instead of zero. https://bugzilla.gnome.org/show_bug.cgi?id=778703 2017-02-22 02:17:35 +0100 Mathieu Duponchelle * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: expose new properties. This gives the user more control over the gain control and experimental gain control behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=779103 2017-02-17 16:09:53 +0530 Arun Raghavan * sys/bluez/gstavdtpsrc.c: bluez: Chain up to basesrc query instead of override pad query function Overriding the pad query function completely overrides all the default query handling implemented in basesrc, including caps etc. The correct thing to do is just override the basesrc query vfunc and then chain up for the queries we don't handle. 2017-02-20 18:58:11 +0200 Vivia Nikolaidou * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Add strict-buffer-size property If set to TRUE, any last audio samples too small to fill a buffer will be discarded. https://bugzilla.gnome.org/show_bug.cgi?id=779064 2017-01-30 11:04:32 +0100 Fabien Dessenne * ext/wayland/gstwaylandsink.c: waylandsink: consider buffer size when copying to wl shm pool When the sink receives a buffer that is neither a wl_shm one nor a dmabuf one, this buffer is copied to an internal wl_shm buffer before being sent to the display. In that case, the actual size of the received buffer (which may differ from the one negotiated in the caps) must be used. https://bugzilla.gnome.org/show_bug.cgi?id=777841 2017-02-17 21:25:21 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Fix GHashTable leak https://bugzilla.gnome.org/show_bug.cgi?id=778828 2017-02-18 20:18:50 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: * tests/check/elements/rawvideoparse.c: rawbaseparse: Drop incomplete frames at EOS See https://bugzilla.gnome.org/show_bug.cgi?id=773666 This would ideally be solved in baseparse but that requires further thought at this point, and in the meantime it would be good to have rawbaseparse not assert on this but handle it gracefully instead. 2017-02-16 20:08:35 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/meson.build: configure: Remove unused Mali EGL/fbdev_window support This existed a long time ago but there's no actual code for this anymore. 2017-02-15 19:07:32 +0000 Tim-Philipp Müller * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: pkgconfig: fix uninstalled .pc files for codecparsers + mpegts Really need to include the srcdir for codecparsers, and build dir for mpegts. 2017-02-14 23:00:06 +0000 Tim-Philipp Müller * Makefile.am: * win32/MANIFEST: Fix distcheck Don't use wildcards in Makefile.am, buildbot doesn't seem to like them. 2017-02-14 20:23:12 +0000 Tim-Philipp Müller * win32/common/photography-enumtypes.c: * win32/common/photography-enumtypes.h: win32: remove disted enumtypes files which are no longer used 2017-02-14 20:19:44 +0000 Tim-Philipp Müller * Makefile.am: * gst/mxf/meson.build: meson: dist meson build files Ship meson build files in tarballs, so people who use tarballs in their builds can start playing with meson already. 2017-02-14 13:04:01 +0100 Nick Kallen * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/videotexturecache.m: Builds for MacOS https://bugzilla.gnome.org/show_bug.cgi?id=778434 2017-02-10 11:32:23 +0100 Nick Kallen * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/videotexturecache.m: applemedia: free videotexturecache texture in gl thread The cached texture was treated as user_data passed to GstGLBaseMemory and freed with a GDestroyNotify function. However, this data must be treated specially: it must be destroyed in the GL thread. https://bugzilla.gnome.org/show_bug.cgi?id=778434 2017-02-10 10:29:49 -0300 Juan Pablo Ugarte * ext/gl/gstglsinkbin.c: GstGLSinkBin: fixed sink property leak No need to keep an extra reference to sink since an indirect one is added by gst_bin_add() https://bugzilla.gnome.org/show_bug.cgi?id=778452 2017-02-13 13:32:14 +0200 Sebastian Dröge * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: Change example pipelines to something that actually works Enforce exactly the same raw video format on both sides, include a videoconvert and queue before the video sink and make the shm area a little bit bigger so that things don't get stuck. 2017-02-09 01:12:56 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Convert premature EOS on non-exposed pads to ERROR If we need to send EOS on a pad that hasn't prerolled, generate an error on the bus instead, otherwise the app will have no idea. Fixes the HLS testFragmentNotFound test, which is waiting for either EOS or an error. 2017-02-09 00:54:07 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle errors from prepared_streams too Check both active and prepared_streams when we receive an error on the bus, so we post errors for streams that are still pre-rolling 2017-02-09 00:16:33 +1100 Jan Schmidt * tests/check/elements/adaptive_demux_engine.c: adaptivedemux: Allow that 2017-02-08 22:59:49 +1100 Jan Schmidt * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: adaptivedemux: Fix tests for delayed pad exposure. Make the unit tests handle the fact that pads don't appear immediately. Before, the test assumed pads are exposed before the internal source element is created, which is no longer true. 2017-02-07 19:44:54 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Encoder output is generally not properly parsed Don't claim it is and let h264parse and other parsers do their job. https://bugzilla.gnome.org/show_bug.cgi?id=774772 2017-02-07 19:42:47 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Set timestamps on header buffers too https://bugzilla.gnome.org/show_bug.cgi?id=774772 2017-02-07 19:42:00 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Encoded H264 is generally not AU aligned Claiming that it is, can cause h264parse to skip some parsing steps and the output stays unaligned. https://bugzilla.gnome.org/show_bug.cgi?id=774772 2017-01-13 23:10:52 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix bitrate printed in debug The download bitrate is already in bits per second, no need to multiply it by 8 again when printing it for debug. 2017-01-11 12:34:58 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Redo typefind after stripping tags When stripping the ID3 header, redo typefinding so we set audio caps instead of still setting id3 caps and plugging a useless id3demux 2017-01-07 12:12:05 +0900 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Preroll streams before exposing them To ensure that pads have caps when they are exposed, do the exposing when all pending streams have prerolled an output buffer, and only then EOS and remove any old pads. Improves the switching sequence by making caps available as soon as a pad appears. With fixes from Seungha Yang https://bugzilla.gnome.org/show_bug.cgi?id=758257 2017-02-03 15:35:15 +0100 Nicola Murino * configure.ac: opencv: allow compilation against 3.2.0 https://bugzilla.gnome.org/show_bug.cgi?id=778142 2017-02-02 16:47:52 +0100 Fabien Dessenne * ext/wayland/wlwindow.c: waylandsink: set video surface opaque Unless the video format has an alpha component (ARGB, ...), set the video_surface opaque. In the usual case where the black area_surface has the same size as the video_surface (eg: run gst-play-1.0 video.mp4), this makes the black surface totally occluded which makes weston compositor's life easier since it can ignore that surface. Also unconditionally set the black area_surface opaque. https://bugzilla.gnome.org/show_bug.cgi?id=778078 2017-02-02 15:25:09 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Fix potential deadlock when flushing / shutting down audio The mutex must be unlocked in the error case https://bugzilla.gnome.org/show_bug.cgi?id=778076 2017-02-01 17:11:37 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Show video frames synchronously in PAUSED Otherwise we will only show the preroll frame once PLAYING is reached, which is rather suboptimal for e.g. seeking in PAUSED. 2017-02-01 16:45:53 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Do nothing if set_caps() is called with basically the same caps again and error out here already otherwise. We currently don't support reconfiguration here and it can't happen really either unless the auto mode is selected. 2017-02-01 15:13:32 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix get_caps returning EMPTY If get_caps is called before negotiation, channels_found will be 0 and therefore won't intersect with the template caps. https://bugzilla.gnome.org/show_bug.cgi?id=778028 2017-02-01 13:44:37 +0200 Sebastian Dröge * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdewarp.h: dewarp: Store C++ types as pointers in C structs Otherwise the destructor will never be called, and we would have to call the constructors manually at some point... which we never did, so calling release() on it before it got otherwise initialized caused a crash. For example when running gst-inspect-1.0. 2017-02-01 16:05:23 +1100 Matthew Waters * ext/vulkan/vkwindow.c: vkwindow: fix build error on i386 Vulkan handles are either pointers (64-bit) or 64-bit integer handles (32-bit). Cast the type in failure cases. vkwindow.c:229:561: error: return makes integer from pointer without a cast [-Werror=int-conversion] vkwindow.c:231:194: error: return makes integer from pointer without a cast [-Werror=int-conversion] https://bugzilla.gnome.org/show_bug.cgi?id=777979 2017-02-01 14:44:32 +1100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Add stream-format to the H.264 caps. H.264 in MPEG-PS is always byte-stream 2017-02-01 14:37:29 +1100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Add extra length checks to TS scanning. Add some missing size checks to the timestamp scanning fast path. 2017-02-01 14:25:32 +1100 Jan Schmidt * gst/mpegdemux/Makefile.am: * gst/mpegdemux/gstmpegdemux.c: psdemux: Rewrite PSM parsing using GstByteReader Avoid possible buffer overflows and ignore invalid PSM packets better by using GstByteReader. https://bugzilla.gnome.org/show_bug.cgi?id=777957 2017-01-27 19:26:06 +0200 Sebastian Dröge * sys/decklink/meson.build: decklink: Add to the meson Windows build 2017-01-27 19:24:03 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix indentation 2017-01-27 19:23:48 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compilation on Windows by properly using COM strings there 2017-01-27 19:15:28 +0200 Axel Menzel * sys/decklink/gstdecklink.cpp: decklink: Fix compilation with MSVC 2017-01-27 19:11:02 +0200 Sebastian Dröge * sys/decklink/gstdecklink.h: decklink: Include stdint.h for int32_t, etc as needed by the Decklink headers 2017-01-27 19:09:13 +0200 Sebastian Dröge * sys/decklink/win/DeckLinkAPI.h: decklink: Add "extern C" forward declaration for CreateDeckLinkIteratorInstance() 2017-01-27 19:03:33 +0200 Axel Menzel * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPIDispatch.cpp: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Update Windows SDK to a newer version 2017-01-01 14:06:28 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle SEEK event only once send_event() of parent class (i.e., GstBinClass) iterates srcpads to send SEEK event. And performing it per srcpad is inefficient. So, let's drop duplicated SEEK event by checking seqnum https://bugzilla.gnome.org/show_bug.cgi?id=776612 2017-01-27 08:38:28 +0900 Seungha Yang * tests/check/elements/hlsdemux_m3u8.c: tests: hlsdemux: Fix live startup sequence and seek range To satisfy follwing restriction of HLS spec 6.3.3, select startup fragment sequence to 4th from end of playlist. Also, seek range should exclude last three fragment in playlist. "the client SHOULD NOT choose a segment which starts less than three target durations from the end of the Playlist file." https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-27 08:50:10 +0900 Seungha Yang * ext/hls/m3u8.c: hls: m3u8: Set sequence position for live hls live starts playback from the allowed latest fragment, but its "sequence position" is set to zero, and so stream time is also set to zero. This does not make sense, because hls live allows seeking to past position, and it's negative stream time from downstream element's point of view. Note that, allowed seekable range (and seeking query) is from the first fragment of playlist to the allowed latest fragment. https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-24 21:32:13 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: hls: Exclusion of last three fragment in case of live playback HLS spec 6.3.3 is saying that "the client SHOULD NOT choose a segment which starts less than three target durations from the end of the Playlist file." To ensure above statement, the third fragment from the end of playlist should be excluded from seekable range and also from available starting fragment. (i.e., the fourth fragment from end of playlist is the starting fragment). https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-24 20:21:19 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Consider timestamp of the first fragment in playlist when live seeking During live playback, the first fragment in a updated playlist can be advanced from that of startup playlist. Meanwhile, since hlsdemux finds target seek position by just accumulating fragment's duration, the base should be adjusted to the updated first fragment's timestamp. https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-30 11:17:53 +0100 Nicola Murino * ext/opencv/gstmotioncells.cpp: motioncells: fix mingw build https://bugzilla.gnome.org/show_bug.cgi?id=777930 2017-01-27 18:11:15 +0200 Sebastian Dröge * sys/applemedia/plugin.m: * sys/applemedia/vtenc.c: applemedia: Fix some compiler warnings on iOS 2017-01-27 17:24:20 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix compilation on OSX 15:18:47 gstdecklinkaudiosrc.cpp:745:45: error: cannot initialize a parameter of type 'int64_t *' (aka 'long long *') with an rvalue of type 'gint64 *' (aka 'long *') 15:18:47 (BMDDeckLinkMaximumAudioChannels, &self->channels_found); 15:18:47 ^~~~~~~~~~~~~~~~~~~~~ 15:18:47 ./linux/DeckLinkAPI.h:970:87: note: passing argument to parameter 'value' here 15:18:47 virtual HRESULT GetInt (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ int64_t *value) = 0; 15:18:47 ^ 2017-01-25 13:06:28 +0200 Vivia Nikolaidou * gst/timecode/Makefile.am: * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: * gst/timecode/plugin.c: avwait: Rename timecodewait to avwait, add modes Renamed timecodewait to avwait. Added running-time and video-first modes. Default mode is timecode (the previous behaviour). https://bugzilla.gnome.org/show_bug.cgi?id=777741 2017-01-18 17:53:00 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Option to use max channels supported by device Query the device for the maximum number of channels supported and have an option to use that. Default is still 2. https://bugzilla.gnome.org/show_bug.cgi?id=777458 2017-01-26 15:35:11 +0200 Sebastian Dröge * sys/applemedia/glcontexthelper.c: applemedia: Fail cleanly instead of crashing if obtaining a GL display failed https://bugzilla.gnome.org/show_bug.cgi?id=777742 2017-01-26 19:52:07 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vkimagememory: use the correct enum for RGB16/BGR16 formats vkimagememory.c:64:14: warning: implicit conversion from enumeration type 'GstVideoGLTextureType' to different enumeration type 'VkFormat' (aka 'enum VkFormat') [-Wenum-conversion] return GST_VIDEO_GL_TEXTURE_TYPE_RGB16; https://bugzilla.gnome.org/show_bug.cgi?id=777760 2017-01-25 20:54:35 +0200 Sebastian Dröge * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Fix compiler warning with clang gstmpeg2enc.cc:224:5: warning: variable 'n' is incremented both in the loop header and in the loop body [-Wfor-loop-analysis] n++; ^ gstmpeg2enc.cc:221:29: note: incremented here for (n = 0; fpss[n] != 0; n++) { ^ 2017-01-25 20:48:58 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compiler warning with clang gstdecklink.cpp:821:11: warning: variable 'dtc' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized] if (m_input->videosrc) { ^~~~~~~~~~~~~~~~~ gstdecklink.cpp:837:41: note: uninitialized use occurs here stream_time, stream_duration, dtc, no_signal); ^~~ gstdecklink.cpp:821:7: note: remove the 'if' if its condition is always true if (m_input->videosrc) { ^~~~~~~~~~~~~~~~~~~~~~~ gstdecklink.cpp:810:29: note: initialize the variable 'dtc' to silence this warning IDeckLinkTimecode *dtc; ^ = NULL 2017-01-25 19:21:03 +0200 Sebastian Dröge * ext/qt/Makefile.am: qt: The code requires at least C++11 ... and clang requires this to be specified on the commandline while gcc nowadays defaults to C++11 or even newer. 2017-01-24 23:10:19 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Set caps/tags in the GstStream object before pushing the stream-start event Otherwise downstream will get a more or less empty GstStream although we already know a lot about it at this point. 2017-01-24 14:39:35 +0000 Tim-Philipp Müller * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264: add "qp-min" and "qp-max" properties 2017-01-20 07:45:43 +0100 Lars Wendler * configure.ac: iqa: Move AM_CONDITIONAL(HAVE_DSSIM) outside of the iqa check block or else configure fails with error: conditional "HAVE_DSSIM" was never defined. when iqa is not installed. https://bugzilla.gnome.org/show_bug.cgi?id=777652 2017-01-23 12:12:06 -0300 Thibault Saunier * gst-libs/gst/gl/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/player/meson.build: * meson.build: * meson_options.txt: meson: Build GIR files 2017-01-23 15:10:40 +0200 Sebastian Dröge * pkgconfig/gstreamer-bad-audio.pc.in: * pkgconfig/gstreamer-bad-base.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: pkg-config: Directly link the library with -l instead of the .la file Which might not exist, like on most modern Linux distributions. 2017-01-20 11:11:50 -0800 Scott D Phillips * sys/msdk/gstmsdkdec.c: msdk: Propagate GstFlowReturn values In some places a GST_FLOW_FLUSHING result was return as a FALSE gboolean and then returned from a parent function as GST_FLOW_ERROR. This prevented seeking from working. https://bugzilla.gnome.org/show_bug.cgi?id=776360 2017-01-20 16:44:42 +0100 Stefan Sauer * configure.ac: * docs/plugins/scanobj-build.stamp: * ext/fdkaac/gstfdkaacenc.c: fdk-aac: fix version number As pointed out on irc, the version was menat to be 0.1.4. 2017-01-20 14:34:10 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't leak pad name and template for Opus It's set again (the same way) further below, overwriting the previously allocated memory without freeing. https://bugzilla.gnome.org/show_bug.cgi?id=777533 2017-01-20 07:51:09 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Set stream tags to NULL after unreffing Otherwise we might try to unref them a second time a little bit later. https://bugzilla.gnome.org/show_bug.cgi?id=777503 2017-01-05 19:10:52 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Detect media sequence number inconsistencies and fail Without failing, we would play back random parts of the stream which is arguably a worse user experience, and failing is also recommended by the spec here. And also handle live streams without any media sequence numbers at all properly, that is, make sure the sequence numbers are increasing instead of starting again at 0 every time. https://bugzilla.gnome.org/show_bug.cgi?id=775665 2017-01-17 22:27:46 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Do pending seek when SIDX is found Parsing SIDX box was allowed even if "indexRange" attribute does not appear for On-Demand profile. However, actual seeking using SIDX index did not happen since download loop keep working on. To use SIDX index in that case, demux should try it in the next download loop. https://bugzilla.gnome.org/show_bug.cgi?id=777394 2017-01-17 10:33:03 +0800 WeiChungChang * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Fix issue when manifest update sets slow start without passing necessary header & caps changes downstream https://bugzilla.gnome.org/show_bug.cgi?id=777206 2017-01-18 15:03:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: ensure caps are writable after intersection gst_caps_intersect () may return an increased reference of one of the input caps. Fixes critical in the simple-launch-lines test: Unexpected critical/warning: gst_caps_set_features: assertion 'IS_WRITABLE (caps)' failed 2017-01-18 11:05:21 +1100 Jan Schmidt * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: Handle vob display rect starting on an odd line DVDs always have subpictures that start on an even Y coordinate, but gstspu does more generic vobsubs these days, so handle ones that start on an odd vertical position. https://bugzilla.gnome.org/show_bug.cgi?id=777400 2016-12-27 17:13:58 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * win32/common/libgstplayer.def: player: Add support for selecting a specific video sink - Add overlay video renderer "video-sink" property, so that can be set - In create_video_sink, it returns video sink instead of always NULL - Add new renderer_new_with_sink() API to set video sink https://bugzilla.gnome.org/show_bug.cgi?id=776490 2017-01-17 13:07:57 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer-media-info.c: player: Add missing documentation for deprecated functions 2017-01-10 16:38:21 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * win32/common/libgstplayer.def: player: Add get video snapshot API Add get video snapshot API: gst_player_get_video_snapshot() https://bugzilla.gnome.org/show_bug.cgi?id=773709 2017-01-12 16:14:57 +0100 Edward Hervey * ext/dash/gstmpdparser.c: mpdparser: Fix compilation with GST_DISABLE_GST_DEBUG 2017-01-13 14:46:12 +0100 Edward Hervey * sys/androidmedia/gstamcvideodec.c: androidmedia: Use proper instance name 2017-01-13 12:39:21 +0000 Tim-Philipp Müller * meson.build: meson: bump version 2017-01-13 21:17:33 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: fix build error from change in libgstgl gstamcvideodec.c: In function 'gst_amc_video_dec_src_query': gstamcvideodec.c:2412:55: error: 'self' undeclared (first use in this function) if (gst_gl_handle_context_query ((GstElement *) self, query, 2017-01-13 12:49:37 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/Makefile.am: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/glcontexthelper.c: gl: update sys dependants for function removals 4315a4b54d9 forgot to change the androidmedia/videotoolbox/caopengllayer sources as required. 2017-01-11 10:37:34 -0300 Juan Pablo Ugarte * gst-libs/gst/gl/gstglslstage.c: glslstage: define GL constants if needed instead of using #ifdef https://bugzilla.gnome.org/show_bug.cgi?id=777144 2017-01-11 10:32:23 -0300 Juan Pablo Ugarte * tests/examples/gtk/glliveshader.c: gl/examples/gtk: fixed compilation on systems without GL_GEOMETRY_SHADER https://bugzilla.gnome.org/show_bug.cgi?id=777143 2017-01-13 11:08:10 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglutils.c: glutils: document functions 2017-01-13 11:06:39 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glutils: privatise matrix multiplication/videoaffinetransformation retrieval 2017-01-12 21:35:25 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglutils.h: * ext/gtk/gstgtkglsink.c: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsrc.cc: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: gl/utils: also take care of the local GL context in query functions Simplifies a deduplicates a lot of code in elements retrieving/setting the local OpenGL context. 2017-01-12 01:57:29 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: remove trivial helper function gst_gl_caps_replace_all_caps_features() is only used in two places and can be trivially reproduced. 2017-01-11 16:09:31 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/docs: add symbols from -unused.txt 2017-01-11 16:09:03 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: gl/docs: some type fixes of type names 2017-01-12 16:32:49 +0200 Sebastian Dröge * configure.ac: Back to development 2017-01-12 15:55:52 +0200 Sebastian Dröge * configure.ac: * ext/opencv/meson.build: opencv: Fix build with OpenCV < 3 We only need the opencv2/bgsegm.hpp header for OpenCV >= 3 and have compat code for older versions. 2017-01-12 15:38:18 +0200 Sebastian Dröge * ext/ttml/Makefile.am: ttml: Link with -lm for round() === release 1.11.1 === 2017-01-12 15:39:06 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.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-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-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.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-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: Release 1.11.1 2017-01-12 14:42:29 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-01-12 14:36:46 +0200 Sebastian Dröge * po/da.po: * po/de.po: * po/fr.po: * po/hr.po: * po/id.po: * po/ky.po: * po/nb.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2017-01-10 15:45:26 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/nalutils.c: codecparsers: remove problematic 'extern inline' 'extern inline' was added in 2fb76c89 for MSVC (it was just 'inline' before), but all of this doesn't really make sense, the functions are not going to be inlined anyway, and what 'extern inline' means exactly also appears to depend on the Cxx standard targetted. Let's just remove the 'extern inline' entirely. At least gcc6 still emits the exact same code as before anyway. Fixes compilation/linking with gcc 4.8 as used on L4T on the TK1. 2017-01-10 08:26:04 -0700 Matt Staples * gst/jpegformat/gstjpegparse.c: jpegparse: Chain up to parent class' sink event handler Call base class's sink_event handler after handling GST_EVENT_FLUSH_STOP event, so that base class doesn't get stuck in a 'flushing' state https://bugzilla.gnome.org/show_bug.cgi?id=777097 2017-01-10 16:27:28 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Use a simple queue instead of queue2 The reason we previously used queue2 was to calculate the download rate, but that wasn't entirely correct and we therefore calculate it before queue2. We therefore now just need a simple queue. 2016-11-11 08:44:59 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Remove unneeded variables We now have properly non-blocking download time calculation 2017-01-10 16:54:48 +0800 Haihua Hu * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: qmlglsrc: use glBlitFramebuffer to copy texture for GLES3.0 If support glBlitFrameBuffer, use it for texture copy instead of glCopyTexImage2D https://bugzilla.gnome.org/show_bug.cgi?id=777078 2017-01-10 20:07:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: use the same parameter names between vfuncs and functions of the same name Silences GI warnings about symbol's not being used from source code comment block 2017-01-10 20:06:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.h: glbasememory: type fix for GstGLBaseMemoryAllocatorAllocFunction 2017-01-10 20:05:42 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: add missing transfer annotations 2017-01-10 20:04:30 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglquery.c: gl: add skip annotations to non-GI possible struct constructors 2017-01-10 20:03:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.h: glbasememory: remove unused and #if 0'ed function definitions 2017-01-10 19:58:48 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add necessary get_type() functions for allocation params structures All using the existing GstGLAllocationParams infrastructure 2017-01-10 19:55:43 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: gl/docs/sections.txt: remove non-existant symbols 2017-01-10 15:35:52 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: some annotation updates/typo fixes 2017-01-10 14:29:46 +1100 Matthew Waters * gst-libs/gst/gl/gl.h: gl: remove reference to non-existant header ../../../../gst-libs/gst/gl/gl.h:57:45: fatal error: gst/gl/gstglcontrolbindingproxy.h: No such file or directory #include ^ 2017-01-10 12:51:51 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsinkbin.c: * ext/gl/gstglvideomixer.c: * ext/gl/meson.build: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglcontrolbindingproxy.c: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: * gst-libs/gst/gl/meson.build: gl: remove custom control binding proxy Use the existing GstProxyControlBinding instead. 2016-11-17 17:15:55 +1100 Matthew Waters * configure.ac: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/meson.build: gl/pkg-config: add the configured platform/api/winsys Allows users to query this from pkg-config instead of requiring them to compile mini programs checking defines in gstglconfig.h 2016-11-18 01:06:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.h: gl: remove unneeded gst_gl_buffer_alloc from header file There's no implementation anymore! 2016-11-17 18:00:39 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: gl/egl: remove use of texture orientation 2016-11-17 17:51:54 +1100 Matthew Waters * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: gl/pkg-config: don't advertise all our dependent libraries as deps If an application/library explicitly needs a library, it needs to link against it itself. 2017-01-09 17:53:38 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Post element message with current timecode timecodestamper will post an element message which contains the current timecode it just stamped. If a timecode was already found and not replaced, it will still post it in a message. https://bugzilla.gnome.org/show_bug.cgi?id=777048 2017-01-05 15:41:06 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Do not append a zero timecode if none is found on the source If the source doesn't give us timecode information, do not append a zero timecode to the frames. https://bugzilla.gnome.org/show_bug.cgi?id=776900 2017-01-10 01:00:12 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext/egl: don't overwrite set GError Doing so is an error and will cause a glib warning to be printed. https://bugzilla.gnome.org/show_bug.cgi?id=776722 2017-01-05 20:45:15 +0000 Tim-Philipp Müller * sys/decklink/meson.build: meson: decklink: fix plugin filename 2017-01-05 20:34:14 +0000 Tim-Philipp Müller * meson.build: * sys/decklink/meson.build: * sys/meson.build: meson: build decklink plugin 2017-01-05 12:34:39 -0300 Thibault Saunier * pkgconfig/meson.build: meson: Do not use gstwayland variable when not set 2017-01-05 12:31:14 -0300 Thibault Saunier * pkgconfig/meson.build: meson: Generate the wayland pc file when needed 2017-01-05 11:25:13 -0300 Thibault Saunier * pkgconfig/meson.build: meson: Do not try to use unset gstgl if gstgl is not built 2017-01-05 15:05:07 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcaudiodec.c: androidmedia: Add support for Opus in the decoder 2017-01-05 15:00:21 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Silently skip COLOR_FormatAndroidOpaque when converting to caps This is special and handled in the decoder when doing rendering to a surface. Printing a warning for this is just unnecessary noise 2017-01-04 16:51:10 +0100 Guillaume Desmottes * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: * pkgconfig/meson.build: meson: generate pkg-config -uninstalled pc files Generating those files is useful for users building the GStreamer stack using meson and having to link it to another project which is still using the autotools. While doing so, fix some -uninstalled pc files which were using a suspicious 'pcfiledir' which was never replaced or defined. https://bugzilla.gnome.org/show_bug.cgi?id=776810 2016-12-09 17:48:52 -0300 Thibault Saunier * meson.build: meson: Support building without Gst debug 2017-01-04 20:59:39 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Add support for VP9 2017-01-03 18:53:39 +0200 Sebastian Dröge * sys/androidmedia/gstjniutils.c: androidmedia: Actively request the Java VM from the application This is more consistent with how we already request the application class loader and other application resources elsewhere. 2017-01-03 17:31:03 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix indentation 2017-01-03 17:30:07 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Add support for 8/16 channels via property These are unpositioned channel layouts. 2017-01-03 09:02:36 +0530 Garima Gaur * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcvsmooth.cpp: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rsrc.c: * sys/applemedia/vtenc.c: * sys/vdpau/gstvdpvideopostprocess.c: Fix some caps leaks in pad template creation code gst_pad_template_new() does not take ownership of the caps passed to it, so we need to unref the caps. https://bugzilla.gnome.org/show_bug.cgi?id=776790 https://bugzilla.gnome.org/show_bug.cgi?id=776787 2016-12-08 10:22:23 +0100 Fabien Dessenne * ext/wayland/gstwaylandsink.c: waylandsink: fix display re-connection (redraw pending) Reset redraw_pending at display disconnection, so we can re-connect later from a clean state (avoid endless buffer drops). Add a log to inform of dropped buffers. https://bugzilla.gnome.org/show_bug.cgi?id=775791 2016-12-14 10:37:14 +0100 Nicola Murino * ext/opencv/Makefile.am: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdewarp.h: * ext/opencv/gstopencv.cpp: * ext/opencv/meson.build: opencv: add dewarp plugin new plugin that dewarp fisheye images https://bugzilla.gnome.org/show_bug.cgi?id=776047 2017-01-02 21:05:55 +0100 Fabrice Bellet * ext/x265/gstx265enc.c: x265: fix a minor string leak https://bugzilla.gnome.org/show_bug.cgi?id=776727 2016-12-31 20:57:54 +0100 Fabrice Bellet * gst/autoconvert/gstautoconvert.c: autoconvert: fix a reconfigure event leak https://bugzilla.gnome.org/show_bug.cgi?id=776726 2017-01-02 19:56:40 +0530 Arun Raghavan * config.h.meson: * sys/meson.build: * sys/uvch264/meson.build: uvch264src: Add meson build support 2017-01-02 19:55:34 +0530 Arun Raghavan * sys/uvch264/gstuvch264_src.c: uvch264src: Fix wrong argument order to force-key-unit event CID 1373421 2017-01-02 14:52:29 +0100 Edward Hervey * tests/check/elements/h264parse.c: * tests/check/elements/rtponvifparse.c: * tests/check/libs/player.c: check: Use gst_check_run_suite Ensures that xunit reports get generated when requested 2017-01-02 17:50:02 +0530 Arun Raghavan * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: Fix minor use after free reference Just a matter of reordering a g_free() /after/ cleaning out all the members. CID 1396746 2015-03-11 21:54:01 +0100 Nicola Murino * gst/videosignal/gstvideoanalyse.c: videoanalyse: update docs https://bugzilla.gnome.org/show_bug.cgi?id=746018 2016-12-29 18:56:43 +0000 Ursula Maplehurst * sys/androidmedia/Makefile.am: androidmedia: some files are missing in the release tarball https://bugzilla.gnome.org/show_bug.cgi?id=776591 2016-12-28 13:52:50 +0100 Mark Nauwelaerts * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: determine intra of frame at frame parse time ... rather than when determining when to end the frame. The opportunity to do so might not come when forced to drain, and it seems nicer anyway to do so at parse wrapup time. 2016-12-24 08:42:51 +0200 Sebastian Dröge * tests/check/elements/dash_isoff.c: dash: Define debug category used in the isoff code for the test too now 2016-12-24 14:31:12 +0900 Seungha Yang * ext/dash/gstisoff.c: dash: Include debug of gstisoff on dashdemux category Move debug category of gstisoff from default to dashdemux https://bugzilla.gnome.org/show_bug.cgi?id=776461 2016-12-23 13:27:42 +0200 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Don't try to output anything if samples_per_buffer == 0 This happens if we had no CAPS event yet but e.g. got an EOS event. We would then try to output a 0-sized buffer, but getting that from the adapter will give an assertion, return NULL and then crash. 2016-12-23 15:41:57 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Add first_offset of sidx box to base offset sidx has "first_offset" syntax which represents the distance in bytes from anchor point to media fragment. If present, we should adjust sidx_base_offset. https://bugzilla.gnome.org/show_bug.cgi?id=776431 2016-12-23 15:31:34 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Ensure sidx parsing when updating fragment info Fix seek fail with On-Demand profile mpd which has no indexRange attribute https://bugzilla.gnome.org/show_bug.cgi?id=776431 2016-12-22 11:48:05 -0500 Stepan Salenikovich * configure.ac: configure: improve QPA check for cross compilation Prefix the $QPA_INCLUDE_PATH with $PKG_CONFIG_SYSROOT_DIR just like when checking for opencv dir. https://bugzilla.gnome.org/show_bug.cgi?id=776399 2016-12-22 16:08:30 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: dvb: move adapter number set-up by way of environment to dvbsrc This logic did not belong to the channel configuration parser (only used by dvbbasebin) but to dvbsrc, which is the element directly using this value and honoring the "adapter" property. Allows previously non-working cases like this to work: GST_DVB_ADAPTER=1 gst-launch-1.0 dvbsrc delsys=11 modulation=7 frequency=689000000 ! fakesink 2016-12-22 13:42:59 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb: parsechannels: replace missleadign error message Possible failure cases also include not finding the requested channel. 2016-12-12 17:05:53 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add DTV_STREAM_ID to the >= v8 (minor) group Drop redundant comment while at it. 2016-12-21 23:24:48 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Drain remaining buffer in adapter Previous patch allows sidx box parsing from incoming buffers. Since the incoming buffer boundary might be over sidx box, there can be remaining buffer in isobmff parser adapter. https://bugzilla.gnome.org/show_bug.cgi?id=776352 2016-12-21 13:31:18 +0200 Sebastian Dröge * configure.ac: configure: Remove left-over file 2016-12-21 12:05:35 +0100 Edward Hervey * tests/check/libs/player.c: check: Use non-deprecated API 2016-12-21 11:38:11 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * win32/common/libgstplayer.def: player: Add deprecated compatibility functions for the audio/video/subtitle stream getters 2016-12-21 11:32:52 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer.c: * win32/common/libgstplayer.def: player: Move audio/video/subtitle stream list getters into the correct namespace 2016-12-20 18:20:02 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * win32/common/libgstplayer.def: player: Add get track number media info API https://bugzilla.gnome.org/show_bug.cgi?id=773570 2016-12-21 11:00:47 +0200 Sebastian Dröge * config.h.meson: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.signals: * ext/Makefile.am: * ext/apexsink/LGPL-3.0.txt: * ext/apexsink/Makefile.am: * ext/apexsink/gstapexplugin.c: * ext/apexsink/gstapexraop.c: * ext/apexsink/gstapexraop.h: * ext/apexsink/gstapexsink.c: * ext/apexsink/gstapexsink.h: * ext/libvisual/Makefile.am: * ext/libvisual/visual-gl.c: * ext/meson.build: * ext/nas/Makefile.am: * ext/nas/nassink.c: * ext/nas/nassink.h: * ext/sdl/Makefile.am: * ext/sdl/gstsdl.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.c: * ext/sdl/sdlvideosink.h: * ext/sndio/Makefile.am: * ext/sndio/gstsndio.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosink.h: * ext/sndio/sndiosrc.c: * ext/sndio/sndiosrc.h: * ext/timidity/gsttimidity.c: * ext/timidity/gsttimidity.h: * ext/wildmidi/Makefile.am: * ext/wildmidi/README: * ext/wildmidi/gstwildmidi.c: * ext/wildmidi/gstwildmidi.h: * ext/xvid/Makefile.am: * ext/xvid/gstxvid.c: * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: * ext/xvid/gstxvidenc.h: * gst/audiobuffer/Makefile.am: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiobuffer/meson.build: * gst/cdxaparse/Makefile.am: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstvcdparse.c: * gst/cdxaparse/gstvcdparse.h: * gst/cdxaparse/meson.build: * gst/dccp/Makefile.am: * gst/dccp/gstdccp.c: * gst/dccp/gstdccp.h: * gst/dccp/gstdccp_common.h: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsink.h: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpclientsrc.h: * gst/dccp/gstdccpplugin.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: * gst/dccp/gstdccpserversrc.c: * gst/dccp/gstdccpserversrc.h: * gst/dccp/meson.build: * gst/faceoverlay/Makefile.am: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: * gst/faceoverlay/meson.build: * gst/games/Makefile.am: * gst/games/gstpuzzle.c: * gst/games/gstvideoimage.c: * gst/games/gstvideoimage.h: * gst/games/meson.build: * gst/hdvparse/Makefile.am: * gst/hdvparse/gsthdvparse.c: * gst/hdvparse/gsthdvparse.h: * gst/hdvparse/meson.build: * gst/meson.build: * gst/mixmatrix/Makefile.am: * gst/mixmatrix/meson.build: * gst/mixmatrix/mixmatrix.c: * gst/mve/Makefile.am: * gst/mve/TODO: * gst/mve/gstmve.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvedemux.h: * gst/mve/gstmvemux.c: * gst/mve/gstmvemux.h: * gst/mve/meson.build: * gst/mve/mve.h: * gst/mve/mveaudiodec.c: * gst/mve/mveaudioenc.c: * gst/mve/mvevideodec16.c: * gst/mve/mvevideodec8.c: * gst/mve/mvevideoenc16.c: * gst/mve/mvevideoenc8.c: * gst/nuvdemux/Makefile.am: * gst/nuvdemux/gstnuvdemux.c: * gst/nuvdemux/gstnuvdemux.h: * gst/nuvdemux/meson.build: * gst/overlay/Makefile.am: * gst/overlay/gstoverlay.c: * gst/overlay/gstoverlay.h: * gst/overlay/meson.build: * gst/patchdetect/Makefile.am: * gst/patchdetect/gstpatchdetect.c: * gst/patchdetect/gstpatchdetect.h: * gst/patchdetect/meson.build: * gst/rtjpeg/.gitignore: * gst/rtjpeg/Makefile.am: * gst/rtjpeg/README: * gst/rtjpeg/RTjpeg.c: * gst/rtjpeg/RTjpeg.h: * gst/rtjpeg/gstrtjpeg.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.c: * gst/rtjpeg/gstrtjpegenc.h: * gst/rtjpeg/meson.build: * gst/sdi/Makefile.am: * gst/sdi/gstsdi.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdidemux.h: * gst/sdi/gstsdimux.c: * gst/sdi/gstsdimux.h: * gst/sdi/meson.build: * gst/tta/Makefile.am: * gst/tta/crc32.h: * gst/tta/filters.h: * gst/tta/gsttta.c: * gst/tta/gstttadec.c: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.c: * gst/tta/gstttaparse.h: * gst/tta/meson.build: * gst/tta/ttadec.h: * gst/vbidec/Makefile.am: * gst/vbidec/gstvbidec.c: * gst/vbidec/gstvbidec.h: * gst/vbidec/meson.build: * gst/vbidec/vbidata.c: * gst/vbidec/vbidata.h: * gst/vbidec/vbiscreen.c: * gst/vbidec/vbiscreen.h: * meson.build: * po/POTFILES.in: * po/POTFILES.skip: * sys/Makefile.am: * sys/avc/Makefile.am: * sys/avc/gstavcplugin.cpp: * sys/avc/gstavcsrc.cpp: * sys/avc/gstavcsrc.h: * sys/dxr3/.gitignore: * sys/dxr3/Makefile.am: * sys/dxr3/ac3_padder.c: * sys/dxr3/ac3_padder.h: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3common.h: * sys/dxr3/dxr3init.c: * sys/dxr3/dxr3marshal.list: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.c: * sys/dxr3/dxr3videosink.h: * sys/linsys/Makefile.am: * sys/linsys/gstlinsys.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisink.h: * sys/linsys/gstlinsyssdisrc.c: * sys/linsys/gstlinsyssdisrc.h: * sys/linsys/include/asi.h: * sys/linsys/include/master.h: * sys/linsys/include/sdi.h: * sys/linsys/include/sdiaudio.h: * sys/linsys/include/sdivideo.h: * sys/meson.build: * sys/pvr2d/Makefile.am: * sys/pvr2d/gstpvr.c: * sys/pvr2d/gstpvr.h: * sys/pvr2d/gstpvrbufferpool.c: * sys/pvr2d/gstpvrbufferpool.h: * sys/pvr2d/gstpvrvideosink.c: * sys/pvr2d/gstpvrvideosink.h: * sys/pvr2d/pvr_includes/dri2_ws.h: * sys/pvr2d/pvr_includes/img_defs.h: * sys/pvr2d/pvr_includes/img_types.h: * sys/pvr2d/pvr_includes/pvr2d.h: * sys/pvr2d/pvr_includes/services.h: * sys/pvr2d/pvr_includes/servicesext.h: * sys/pvr2d/pvr_includes/wsegl.h: * sys/qcam/Makefile.am: * sys/qcam/dark.c: * sys/qcam/exposure.c: * sys/qcam/gstqcamsrc.c: * sys/qcam/gstqcamsrc.h: * sys/qcam/qcam-Linux.c: * sys/qcam/qcam-Linux.h: * sys/qcam/qcam-lib.c: * sys/qcam/qcam-os.c: * sys/qcam/qcam-os.h: * sys/qcam/qcam.h: * sys/qcam/qcamip.h: * sys/wininet/Makefile.am: * sys/wininet/gstwininetsrc.c: * sys/wininet/gstwininetsrc.h: * tests/check/Makefile.am: * tests/check/elements/timidity.c: * tests/icles/dccp/README: * tests/icles/dccp/call/DCCPClient.c: * tests/icles/dccp/call/DCCPServer.c: * tests/icles/dccp/call/README: * tests/icles/dccp/file/DCCPClientSaveFile.c: * tests/icles/dccp/file/DCCPServerSendFile.c: * tests/icles/dccp/mic/DCCPClientPlayMic.c: * tests/icles/dccp/mic/DCCPServerMic.c: * tests/icles/dccp/mp3/DCCPClientPlayMP3.c: * tests/icles/dccp/mp3/DCCPServerSendMP3.c: * tests/icles/dccp/mp3Speex/DCCPClientPlaySpeexMP3.c: * tests/icles/dccp/mp3Speex/DCCPServerSendSpeexMP3.c: * tests/icles/dccp/mp3Stream/DCCPClientPlayMP3Stream.c: * tests/icles/dccp/mp3Stream/DCCPServerSendMP3Stream.c: Remove various unported plugins If they were not ported after 4+ years it seems unlikely that anybody is ever going to need them again. They're still in the GIT history if needed. https://bugzilla.gnome.org/show_bug.cgi?id=774530 2016-12-21 13:41:16 +0530 Garima Gaur * gst/sdp/gstsdpdemux.c: * sys/dvb/dvbbasebin.c: gst: Fix memory leaks in usage of gst_element_get_request_pad() API The return value has to be unreffed at some point. https://bugzilla.gnome.org/show_bug.cgi?id=776334 2016-12-20 15:45:12 -0600 Daniel Garbanzo * tools/Makefile.am: tools: dist gst-project-maker script https://bugzilla.gnome.org/show_bug.cgi?id=776317 2016-12-20 11:16:11 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Always parsing sidx for On-Demand profile The indexRange attribute is optional and if it's not present, we should extract the sidx box from incoming buffers. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2016-12-17 15:56:07 +0900 Seungha Yang * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dash: Split gst_isoff_sidx_parser_add_buffer() function To parsing sidx box itself with isobmff parser, split gst_isoff_sidx_parser_add_buffer() into two parts. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2016-12-19 11:40:28 +0200 Sebastian Dröge * ext/hls/gsthlsdemux-util.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Extract ID3 tags, strip them from the output and provide them as tags They often don't only contain the PCR information but also other metadata, like title. Give this information to the pipeline. Also strip the tags from the stream as we a) already parsed them now and b) decoders don't like these tags to happen in the middle of the stream (i.e. the start of each fragment) and tagdemux only can strip them off the beginning and end. 2016-12-18 19:18:23 +0000 Graham Leggett * gst/mpegtsdemux/mpegtsbase.c: tsdemux: Don't leak a taglist if a taglist has already been created https://bugzilla.gnome.org/show_bug.cgi?id=776244 2016-12-17 13:42:34 +0000 Tim-Philipp Müller * ext/qt/gstqtsink.cc: * ext/qt/gstqtsrc.cc: qt: improve element and property descriptions a bit 2016-12-16 22:45:06 +0000 Tim-Philipp Müller * win32/MANIFEST: win32: fix distcheck 2016-12-16 19:15:36 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * win32/common/config.h: win32: remove generation of pre-made config.h for msvc builds This is no longer needed with the Meson build. 2016-12-16 17:22:29 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * gst-plugins-bad.spec.in: Remove generated .spec file Likely extremely bitrotten, and we should not ship this anyway. 2016-12-17 01:00:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: gl/format: use the unsized format for RGB on GLES2 In GLES2 GL_RGB8 doesn't exist so we cannot use it, use GL_RGB instead. https://bugzilla.gnome.org/show_bug.cgi?id=776141 2016-12-16 13:25:58 +0200 Daniel Shahaf * gst/geometrictransform/gstmirror.h: mirror: Fix documentation for the mirror mode Using the wrong enum there causes it to be randomly mixed with the docs of the other enums. https://bugs.debian.org/848297 2016-12-16 00:22:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: remove unused priv variable https://ci.gstreamer.net/job/GStreamer-master/7989/console 2016-12-15 00:59:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/window: remove use of main_context_push/pop_thread_default() No-one's using/depending on it (it would have criticalled and not worked) and it's causing more problems than it's solving. Store the GMainContext in the public struct instead for subclasses to optionally use instead of relying on the push/pop state to be correct. https://bugzilla.gnome.org/show_bug.cgi?id=775970 2016-12-07 16:51:27 +0800 Haihua Hu * ext/gl/gstgleffects.c: gl/effects: use non-PBO GLMemory for internal textures middle textures in gleffects do not need to use GstGLMemoryPBO as they aren't transfering data to/from the GPU. This will cost too much DMA memory and cause performance issue. Change the allocator to use non-PBO GstGLMemory. https://bugzilla.gnome.org/show_bug.cgi?id=776072 2016-12-15 14:05:09 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: amcaudiodec: Set "is-adts" to 1 for ADTS AAC Otherwise it fails to decode. https://bugzilla.gnome.org/show_bug.cgi?id=740101 2016-12-14 15:53:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Reject multiview video glvideomixer does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-14 15:36:14 +0200 Sebastian Dröge * gst/compositor/compositor.c: compositor: Reject multiview video Compositor does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-14 15:35:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove unlock() if set_info() fails There is not mutex locked here that needs to be unlocked. 2016-12-14 13:10:18 +0530 Garima Gaur * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/vdpau/gstvdpdecoder.c: sys: Fix caps memory leak from pad template creation https://bugzilla.gnome.org/show_bug.cgi?id=776076 2016-12-14 13:10:46 +1100 Jan Schmidt * ext/gme/gstgme.c: gme: Forward other non-EOS events downstream Allow most events through as-is so at least we don't warn about missing stream-start. Drop segment and caps, as those are sent internally. 2016-12-13 22:39:01 +0200 Sebastian Dröge * ext/gl/gltestsrc.c: * ext/libde265/libde265-dec.c: * ext/opencv/MotionCells.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglupload.c: * sys/msdk/msdk.c: * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/compositor.c: * tests/check/elements/dash_demux.c: * tests/check/elements/dash_mpd.c: * tests/check/elements/hls_demux.c: * tests/check/elements/mssdemux.c: * tests/check/elements/test_http_src.c: gst: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-13 22:21:25 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-13 20:42:44 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Free decoder instance when going from PAUSED to READY We only ever cleaned it up before on errors. 2016-11-22 13:55:00 -0800 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegdec.h: * sys/msdk/meson.build: msdk: add mjpeg decoder https://bugzilla.gnome.org/show_bug.cgi?id=774793 2016-10-05 15:32:43 -0700 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkmjpegenc.h: * sys/msdk/meson.build: msdk: add mjpeg encoder https://bugzilla.gnome.org/show_bug.cgi?id=774793 2016-11-28 19:14:20 -0800 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265dec.h: * sys/msdk/meson.build: msdk: Add H.265 decoder https://bugzilla.gnome.org/show_bug.cgi?id=775726 2016-11-07 12:32:38 -0800 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh264dec.h: * sys/msdk/meson.build: msdk: Add H.264 decoder The decoder only supports system memory output presently. https://bugzilla.gnome.org/show_bug.cgi?id=774587 2016-12-12 15:09:36 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Avoid using unset GError gst_uri_handler_set_uri() doesn't guarantee the GError will be set if it returns FALSE. 2016-12-12 10:43:43 +0900 Seungha Yang * ext/ttml/gstttmlrender.c: ttmlrender: Fix segfault on _render_text_region() Fix invalid memory access https://bugzilla.gnome.org/show_bug.cgi?id=775965 2016-12-12 14:42:39 +0900 Seungha Yang * ext/ttml/gstttmlparse.c: ttmlparse: Transform caps event For autoplugging, decodebin/parsebin refers to the caps event. https://bugzilla.gnome.org/show_bug.cgi?id=775967 2016-12-08 12:37:25 +0300 Sergey Borovkov * ext/qt/gstqtglutility.cc: qml: Fix egl being deinitialized on display cleanup Use the with_egl_display() variant in order to not destroy the EGLDisplay on destruction. https://bugzilla.gnome.org/show_bug.cgi?id=775793 2016-12-08 12:07:31 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix unconditional use of FEC 2/5 It is not defined for < v5 minor 7 2016-12-06 15:40:38 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add delivery system to missing modulation check message A tuning operation can spawn multiple checks. Being able to differentiate between them makes debugging easier. 2016-12-05 16:51:10 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: * sys/dvb/parsechannels.h: dvb/parsechannels: drop trailing whitespace 2016-12-08 11:22:38 +0530 Arun Raghavan * gst-libs/gst/player/gstplayer.c: player: Don't try to cache the GQuark for GST_PLAYER_ERROR This is potentially racy (in the unlikely scenario that we get two first-time calls to gst_player_error_quark() at the same time). This should not impact anything in terms of performance since it's only on the error path. The call itself could just be inlined by making GST_PLAYER_ERROR be defined to the g_quark_from_static_string() call, but this feels ugly from an API perspective. 2016-12-07 16:06:48 +0100 Stefan Sauer * configure.ac: * ext/fdkaac/gstfdkaacenc.c: fdkaac: fix the build for older fdkaac versions Support for 7.1 was added in 0.1.14. 2016-12-07 22:55:46 +1100 Matthew Waters * ext/qt/qtitem.cc: qml/item: also unref the display on destruction Leaking objects (and a thread!) is never a good idea. https://bugzilla.gnome.org/show_bug.cgi?id=775746 2016-12-07 22:58:29 +1100 Matthew Waters * tests/examples/qt/qmlsink/main.cpp: tests/examples/qmlsink: scope QApplication/Engine So they are destroyed before gst_deinit() is run and the leaks tracer doesn't show false-positives. https://bugzilla.gnome.org/show_bug.cgi?id=775746 2016-12-07 10:26:59 +0200 Sebastian Dröge * ext/chromaprint/gstchromaprint.c: chromaprint: Fix compilation with chromaprint 1.4 It takes const int16_t * as argument now, while before it was void *. To make this work with both versions without #ifdef, we omit the const. 2016-12-05 23:38:53 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop needless wrapper around DVB API's dvb_diseqc_master_cmd Its only purpose was to hold a wait time that was always 0 2016-12-05 23:18:38 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop supperfluous wait in diseqc_send_msg() It is always zero. 2016-12-06 07:58:25 +0200 Sebastian Dröge * gst/vmnc/vmncdec.c: vmncdec: Sanity-check rectangle sizes a bit more thorough The x/y coordinates could already be bigger than the configured width/height, and adding the rectangle width/height could cause an overflow. 2016-12-05 15:56:36 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix unconditional use of SYS_DVBC_ANNEX_C It is not defined for < v5 minor 6 2016-12-05 15:53:10 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix value for DVB-C annex B field in adapter structure 2016-12-05 18:17:30 +0000 Tim-Philipp Müller * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typos in property description 2016-11-28 15:57:33 -0800 Scott D Phillips * ext/dtls/gstdtlsagent.c: dtls: Set openssl's threadid the 1.0.x way For pre-1.1.x openssl, a callback to set the thread id needs to be provided to openssl. In 0.9.x the thread id was an unsigned long. In 1.0.x it was expanded to be able to hold a void*. Here we change to use the 1.0.x API so that the thread id can always hold a GThread*, even on platforms like msvc x64 where unsigned long is only 32 bits. All of this is still #ifdef'd out of existence when building with openssl 1.1.x or later which changed the thread API again, and does not need a thread id callback. https://bugzilla.gnome.org/show_bug.cgi?id=775292 2016-12-04 14:42:47 -0500 Nicolas Dufresne * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: segmentation: Port to GstOpencvVideoFilter base class 2016-12-03 22:40:11 -0500 Nicolas Dufresne * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: grabcut: Port to GstOpencvVideoFilter base class 2016-12-03 22:02:23 -0500 Nicolas Dufresne * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: retinex: Port to GstOpencvVideoFilter base class This allow reducing slightly the code. It also fixes a bug caused by in-place buffer being mapped and never unmapped. 2016-12-03 08:19:37 +0100 Edward Hervey * README: * common: Automatic update of common submodule From d015674 to 39ac2f5 2016-12-01 22:02:51 -0500 Nicolas Dufresne * ext/opencv/meson.build: opencv/meson: check presence of required opencv_contrib headers https://bugzilla.gnome.org/show_bug.cgi?id=772822 2016-12-01 21:55:04 -0500 Nicolas Dufresne * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: edgedetect: Avoid extra copy of the output image Simply produce the result into the output image provided by the base class. This avoid useless copy. This also removes unchecked buffer map and ensure that GstVideoMeta is respected (for stride mostly). https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:51:31 -0500 Nicolas Dufresne * ext/opencv/gstedgedetect.cpp: edgedetect: Remove redundant CAPS event handler There is already a cv_set_caps() implemented, so just do the entire work there. https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:45:53 -0500 Nicolas Dufresne * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: cvlaplace: Avoid extra copy of the output image Simply produce the result into the output image provided by the base class. This avoid useless copy. This also removes unchecked buffer map and ensure that GstVideoMeta is respected (for stride mostly). https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:43:04 -0500 Nicolas Dufresne * ext/opencv/gstcvlaplace.cpp: cvlaplace: Remove redundant CAPS event handler There is already a cv_set_caps() implemented, so just do the entire work there. https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:36:13 -0500 Nicolas Dufresne * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: cvsobel: Avoid extra copy of the output image Simply produce the result into the output image provided by the base class. This avoid useless copy. This also removes unchecked buffer map and ensure that GstVideoMeta is respected (for stride mostly). https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:28:31 -0500 Nicolas Dufresne * ext/opencv/gstcvsobel.cpp: cvsobel: Remove redundant CAPS event handler There is already a cv_set_caps() implemented, so just do the entire work there. https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:13:23 -0500 Nicolas Dufresne * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstmotioncells.cpp: opencv: Remove uneeded buffer writability check When set to in_place, the BaseTransform class will guaranty that buffers passed to transform_ip() function are writable. https://bugzilla.gnome.org/show_bug.cgi?id=775378 2016-12-01 09:24:18 +0000 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gstglupload: relax EGL context check Check for GST_GL_PLATFORM_EGL enum instead of type GstGLContextEGL. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-30 09:22:17 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gstglcontext: is_shared should return FALSE if no group If a sub class of GstGLContext does not create a group then it currently crashes: 0 g_atomic_int_get (&share->refcount) 1 _context_share_group_is_shared (context->priv->sharegroup) 2 gst_gl_context_is_shared 3 _default_set_sync_gl https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-30 22:40:45 -0500 Nicolas Dufresne * ext/ttml/meson.build: meson/ttml: Add missing math library dependency This code call 'round' which may require linking against the math library on some compilers. 2016-11-30 19:53:30 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: post error message if start() fails It is expected to post an error message in the bus if the device cannot be started. 2016-10-20 12:37:48 +0200 Michael Tretter * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: configure display mode during set_caps Configure the display mode when setting the negotiated caps instead of during showing the first frame. A framebuffer is required to set the mode. Allocate a buffer object according to the negotiated caps and use it to set the mode. This buffer object cannot be freed until another page flip happened on the crtc (i.e., until the first frame is rendered). https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Manuel Jáquez Leal 2016-10-18 14:57:25 +0200 Michael Tretter * sys/kms/gstkmssink.c: kmssink: add parameter force-modesetting The force-modesetting parameter forces the kmssink to ignore already configured display modes, to configure the display mode itself and use the base plane for output. https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-11-08 15:27:51 +0100 Michael Tretter * sys/kms/gstkmssink.c: kmssink: allow only supported resolutions If the input buffers have a different size than the display, the frames would have to be scaled or positioned on the display. The kmssink cannot decide which behaviour would be appropriate for which use case. In order to avoid scaling or positioning of the input stream, allow only the supported connector resolutions in the sink caps. https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Manuel Jáquez Leal 2016-11-08 15:26:40 +0100 Michael Tretter * sys/kms/gstkmssink.c: kmssink: set mode based on framebuffer configuration Displays usually support multiple modes. Therefore, the kmssink should not only support the preferred mode, but any mode that is supported by the display. https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-10-14 16:03:08 +0200 Michael Tretter * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add mode setting and base plane rendering The kmssink assumed that the mode was already set by another application and used an overlay plane for displaying the frames. Use the preferred mode of the monitor and render to the base plane if the crtc does not have a valid mode. https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Manuel Jáquez Leal 2016-11-30 17:22:21 +0200 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Writing field-order into the src caps Writing top-field-first vs bottom-field-first into the src caps https://bugzilla.gnome.org/show_bug.cgi?id=775409 2016-11-30 09:35:27 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs.types: docs: add aggregator _get_type functions for signals + properties https://bugzilla.gnome.org/show_bug.cgi?id=775379 2016-11-30 19:26:51 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: glmemoryegl: remove spurious #if GST_GL_HAVE_DMABUF conditions 8c2118823b3d42840cc6f48cbdc0e1b342f90b80 had some incorrect preprocessor conditions that aren't actually needed. Remove them. https://bugzilla.gnome.org/show_bug.cgi?id=775248 2016-11-30 10:40:42 +0530 Garima Gaur * gst/mpegpsmux/mpegpsmux.c: * tests/examples/directfb/gstdfb.c: gst: Fix caps leak https://bugzilla.gnome.org/show_bug.cgi?id=775072 2016-11-23 18:30:40 +0100 Philippe Renon * configure.ac: opencv: check presence of required opencv_contrib headers https://bugzilla.gnome.org/show_bug.cgi?id=772822 2016-11-26 16:53:24 +0100 Philippe Renon * gst-libs/gst/opencv/gstopencvutils.cpp: opencv: add opencv image format documentation https://bugzilla.gnome.org/show_bug.cgi?id=774576 2016-11-26 13:34:26 +0100 Philippe Renon * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: opencv: account for sparse/padded formats when converting caps to cv image type https://bugzilla.gnome.org/show_bug.cgi?id=774576 2016-11-29 21:09:14 -0500 Nicolas Dufresne * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: opencvvideofilter: Don't parse the caps twice The GstVideoFilter already provide caps parsed into GstVideoInfo. Avoid doing that twice by splitting the helper. https://bugzilla.gnome.org/show_bug.cgi?id=775288 2016-11-28 21:54:57 -0500 Nicolas Dufresne * gst-libs/gst/opencv/gstopencvvideofilter.cpp: opencvfilter: Properly port to GstVideoFilter This is a subblass of VideoFilter but yet does not use any of it's features. This also fixes issue in case the incoming images have custom strides as the VideoMeta is no longer ignored. https://bugzilla.gnome.org/show_bug.cgi?id=775288 2016-11-29 15:18:43 +0100 Philippe Normand * ext/smoothstreaming/meson.build: mssdemux: fix meson build Follow-up of 73721ad4e9e2d32e1c8b6a3b4aaa98401530e58a. Forgot to add the fragment parser in the meson build file. 2016-11-29 14:43:41 +0100 Philippe Normand * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssfragmentparser.c: * ext/smoothstreaming/gstmssfragmentparser.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: mssdemux: improved live playback support When a MSS server hosts a live stream the fragments listed in the manifest usually don't have accurate timestamps and duration, except for the first fragment, which additionally stores timing information for the few upcoming fragments. In this scenario it is useless to periodically fetch and update the manifest and the fragments list can be incrementally built by parsing the first/current fragment. https://bugzilla.gnome.org/show_bug.cgi?id=755036 2016-11-29 15:35:09 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compiler warning gstdecklink.cpp: In member function ‘virtual HRESULT GStreamerDecklinkInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)’: gstdecklink.cpp:766:34: error: ‘base_time’ may be used uninitialized in this function [-Werror=maybe-uninitialized] capture_time -= base_time; ^ 2016-11-29 11:08:14 +0100 Anton Eliasson * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264parse: improve documentation commentary https://bugzilla.gnome.org/show_bug.cgi?id=775306 2016-11-29 11:06:43 +0100 Anton Eliasson * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264parse: docs spellcheck Spell checks, correct capitalization and some rewording to better fit the terms used in the H.264 spec. https://bugzilla.gnome.org/show_bug.cgi?id=775306 2016-11-28 16:02:03 -0800 Scott D Phillips * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: schro: #include math.h before schroedinger headers The schroedinger headers unconditionally #define over C99's rint when compiling with msvc which messes up the later inclusion of math.h. Including math.h before schroedinger headers avoids getting syntax errors in math.h https://bugzilla.gnome.org/show_bug.cgi?id=775293 2016-11-29 01:41:28 +0530 Nirbheek Chauhan * ext/opencv/meson.build: * meson.build: meson: Rework opencv plugin checks a) Use get_pkgconfig_variable() to get the opencv prefix b) Place an upper limit on the opencv version c) Ensure that headers are available (b) and (c) just copy what the configure.ac checks do. 2016-11-28 20:05:02 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Fix off-by-one in PMT parsing 2016-11-28 19:52:24 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Don't assert if the given section length is longer than the PMT actually is Instead error out cleanly and just assert that we didn't read more than the available data. 2016-11-28 17:17:43 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Correctly set top-field-first/bottom-field-first First of all, all the HD and UHD modes should be top-field-first, as also returned by the Decklink mode iterator API. Then we should include the caps field "field-order" in the caps of the source (not the sink due to negotiation problems with optional fields). And finally we should set the TFF flag on interlaced buffers that are top-field-first. 2016-11-25 15:03:08 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Add property to drop frames that are marked as having no input signal https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-25 14:57:15 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Add property to skip the first N seconds of capture On some hardware the first few frames are bogus and not very useful. Their timestamps are off, they have no timecodes, or there are spurious black frames / no-signal frames. After a few frames this stabilizes though. https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-25 14:36:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinksrc: Set GAP flag on buffers that are captured without signal https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-24 19:19:36 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Keep track of a window of capture/stream time mappings and calculate relationship Based on this we calculate the actual capture time, which should get us rid of any capturing jitter by averaging it out. Also add a output-stream-time property which forces the elements to output the stream time directly instead of doing any conversion to the pipeline clock. Use with care. https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-22 19:30:27 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Stop using the "hardware" timestamps and directly use the pipeline clock The hardware timestamps have no relation to when frames were produced, only when frames arrived somewhere in the hardware. Especially there is no guarantee that audio and video will have the same hardware timestamps although they belong together, and even more important: the rate with which the hardware timestamps increase is completely unrelated to the rate with which the frames are captured! As such we can as well use the pipeline clock directly and stop doing complicated calculations. Also as a side effect this allows now running without any pipeline clock, by directly making use of the stream times as reported by the driver. https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-28 14:25:49 +0200 Sebastian Dröge * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: rawparse: Whitespace cleanup 2016-11-28 11:26:50 +0000 Tim-Philipp Müller * Makefile.am: * 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/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-dataurisrc.xml: * gst-plugins-bad.spec.in: * gst/dataurisrc/Makefile.am: * gst/dataurisrc/gstdataurisrc.c: * gst/dataurisrc/gstdataurisrc.h: * gst/dataurisrc/meson.build: * gst/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dataurisrc.c: dataurisrc: remove plugin, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=774527 2016-11-28 10:49:23 +0200 Sebastian Dröge * ext/hls/m3u8.c: m3u8: Mark uri_join() function as static We don't really want to export this, especially not without any namespacing. This can cause problems for static builds. 2016-11-28 10:27:56 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Post an error message on the bus if we activated a program without pads Otherwise decodebin and applications are going to wait forever for pads to appear, which is never going to happen. Happens on this stream, which probably just need support for it added: https://samples.mplayerhq.hu/3D/AVC_codec_in_m2ts_not_recognized/AVC_codec_not_recognized_right_video_sample.m2ts 2016-11-28 14:22:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: move g_main_context_push/pop_thread_default() to run() Calling g_main_context_push_thread and then g_main_context_invoke() (used by gst_gl_window_send_message_async()) in the same thread will cause the invoked function to run immediately instead of being delayed. This had implications for the creation of the OpenGL context not waiting until the main loop had completely started up and as a result would sometimes deadlock in short create/destroy scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=775171 2016-11-28 14:19:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix race between creation/shutdown 626bcccff96f624f59c5212b3e21e472240171fd removed some locks that allowed the main loop quit to occur before the context was fully created. 2776cef25d2a98668b73272aecfe77e684e6627e attempted to readd them but missed the scop of the quit() call. Also remove the use of g_thread_join() as that's not safe to use when it's possible to lose the last reference from the GL thread. https://bugzilla.gnome.org/show_bug.cgi?id=775171 2016-11-27 12:40:53 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: rawbaseparse: Fix output buffer size trimming For frame->buffer, baseparse is doing that automatically for us. For frame->output_buffer it doesn't and assumes that the subclass is already doing that. Consistency! 2016-11-27 12:20:11 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dash: Fix stripping of space at the beginning/end of durations The way how strchr() was called here, it could easily read after the end of the string. Use g_ascii_isspace() instead. Detected by asan in the unit test. 2016-11-27 11:56:18 +0200 Sebastian Dröge * ext/opencv/meson.build: opencv: Make the OpenCV plugin optional in the meson build 2016-11-27 11:44:14 +0200 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: rawparse: Properly align raw audio/video output buffers That is, aligned to the basic type for audio and to 32 bytes for video. Fixes crashes if the raw buffers are passed to SIMD processing functions. https://bugzilla.gnome.org/show_bug.cgi?id=774428 2016-11-15 16:57:20 +0000 Luis de Bethencourt * ext/meson.build: * ext/opencv/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/opencv/meson.build: opencv: Enable in meson build https://bugzilla.gnome.org/show_bug.cgi?id=774223 2016-11-26 11:20:51 +0000 Tim-Philipp Müller * .gitmodules: common: use https protocol for common submodule https://bugzilla.gnome.org/show_bug.cgi?id=775110 2016-11-26 12:28:57 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Post an error message if we got EOS before having any source pads Otherwise, sending an EOS event has no effect and the application waits forever for something to happen. 2016-11-26 12:16:39 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Fix indentation 2016-11-26 12:16:18 +0200 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Fix assertion when encountering an invalid NALU Error out properly instead. https://bugzilla.gnome.org/show_bug.cgi?id=775130 2016-11-26 12:15:50 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Fix assertion when encountering an invalid NALU Error out properly instead. https://bugzilla.gnome.org/show_bug.cgi?id=775130 2016-11-26 10:44:43 +0100 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Add more section size checks The smallest section ever needs to be at least 3 bytes (i.e. just the short header). Non-short headers need to be at least 11 bytes long (3 for the minimum header, 5 for the non-short header, and 4 for the CRC). https://bugzilla.gnome.org/show_bug.cgi?id=775048 2016-11-26 10:23:01 +0100 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Fix PAT parsing Use the estimated number of programs for parsing. Avoids over-reading. https://bugzilla.gnome.org/show_bug.cgi?id=775120 2016-11-26 09:26:36 +0100 Edward Hervey * ext/hls/gsthlsdemux.c: hlsdemux: Handle GST_SEEK_TYPE_NONE seek When one is only updating the "stop" position (i.e. non-flushing seek, with GST_SEEK_TYPE_NONE on the "start" (or stop in reverse) position), we only need to store those values instead of moving the current position. https://bugzilla.gnome.org/show_bug.cgi?id=775127 2016-11-25 23:47:15 +0200 Sebastian Dröge * ext/opencv/gstsegmentation.cpp: * ext/wayland/wldisplay.c: ext: Fix various compiler warnings with clang wldisplay.c:179:15: error: comparison of unsigned enum expression < 0 is always false [-Werror,-Wtautological-compare] if (shm_fmt < 0) ~~~~~~~ ^ ~ gstsegmentation.cpp:419:40: error: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Werror,-Wconstant-conversion] filter->cvFG->imageData[j] = 255; ~ ^~~ https://bugzilla.gnome.org/show_bug.cgi?id=775112 2016-11-25 23:44:25 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Remove unused static function 2016-11-25 16:46:45 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxftypes.c: mxfdemux: Fix up another size check and prevent allocating too much memory 2016-11-25 15:59:44 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: * gst/mxf/mxftypes.c: * gst/mxf/mxful.c: mxfdemux: Handle zero-sized KLV items better and don't assert on them 2016-11-25 15:53:50 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix various logic errors in error handling of footer partition parsing 2016-11-25 15:53:36 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't try parsing empty metadata items 2016-11-25 01:06:45 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Add missing NULL check 2016-11-22 18:06:52 +0100 Florent Thiéry * ext/gl/gstgldownloadelement.c: gldownload: fix element description (was "OpenGL uploader") 2016-11-24 19:45:10 +0200 Sebastian Dröge * gst/mxf/Makefile.am: * gst/mxf/mxf.c: mxf: Remove mxfdms1.[ch] from the build for now It's completely unused currently but might be used in the future. 2016-11-24 23:36:22 +0200 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxftypes.c: * gst/mxf/mxful.c: mxfdemux: Add various missing bounds checks, NULL checks and integer overflow protection for error cases 2016-11-24 14:48:35 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Free timecodes when done with a frame 2016-11-24 14:41:59 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Remove all existing timecode metas if requested to override existing 2016-11-24 11:12:23 +0100 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Don't free empty streams Also avoids a useless assertion 2016-11-24 11:11:35 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Don't add existing values to group If the last value is already identical, there is no need in adding it yet-another-time 2016-11-23 20:13:59 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmsallocator.c: kmssink: include drm.h after stdlib.h As drm.h is internal to libdrm, it expects to have already included stdlib.h. 2016-11-23 19:41:43 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmsallocator.c: kms: include stdlib.h drm.h does not include all what it needs to compile, in particular stdlib.h which defines size_t 2016-11-23 19:01:04 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Don't set variable just to overwrite it again later We set it to TRUE here, but later we set it to TRUE again anyway if the parsing actually succeeded at this point. Let's keep the second one. CID 1374360. 2016-11-23 18:45:42 +0200 Sebastian Dröge * ext/wayland/wldisplay.c: wldisplay: Don't compare a guint with < 0 -1 is the "invalid" value, compare to it directly. CID 1394490. 2016-11-18 21:00:03 +0200 Sebastian Dröge * configure.ac: * gst/audiobuffersplit/Makefile.am: * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: * gst/audiobuffersplit/meson.build: * gst/meson.build: audiobuffersplit: New element that splits raw audio buffers into equal-sized buffers This is useful e.g. if audio buffers should be exactly the duration of a video frame, or if a audio buffers should never be too large because of latency constraints. The element is taking a fractional buffer duration, to allow working with e.g. 1001/30000 as output duration and it accumulates rounding errors in the buffer durations and compensates for them by making some buffers one sample larger than the others. https://bugzilla.gnome.org/show_bug.cgi?id=774689 2016-10-19 12:39:36 +0200 Michael Tretter * configure.ac: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmsutils.c: * sys/kms/gstkmsutils.h: * sys/kms/meson.build: kmssink: remove dependency on libkms libkms should not be used, because it imposes limitations on the DRM API, especially regarding bpp and stride. Instead the DRM IOCTL should be used directly. Switch from libkms to the IOCTL interface. Set bpp and height for framebuffer allocation to properly handle planar video formats. https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Jáquez 2016-11-23 10:31:29 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-mimic.xml: * ext/Makefile.am: * ext/meson.build: * ext/mimic/Makefile.am: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: * tests/check/pipelines/mimic.c: mimic: remove ancient codec This was used by MSN messenger in prehistoric times, it's safe to say no one needs or wants this any more these days. For decoding old recordings there's still a decoder in ffmpeg. https://bugzilla.gnome.org/show_bug.cgi?id=597616 2016-11-23 10:52:05 +0200 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Ensure codec_data has the required size when reading number of NAL arrays https://bugzilla.gnome.org/show_bug.cgi?id=774896 2016-11-23 10:51:17 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Ensure codec_data has the required size when reading number of SPS https://bugzilla.gnome.org/show_bug.cgi?id=774896 2016-11-23 17:04:34 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl/contextglx: error out on more invalid display/window combinations https://bugzilla.gnome.org/show_bug.cgi?id=774851 2016-11-23 15:57:05 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglupload.c: gl: add necessary context_egl.h #includes to the source files 2016-11-23 13:32:38 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.h: gl/memoryegl: remove access to private header gstglcontext_egl.h It's been removed and thus compiling anything against GstGLMemoryEGL would error with: In file included from gstomxvideodec.c:41:0: usr/include/gstreamer-1.0/gst/gl/egl/gstglmemoryegl.h:32:41: fatal error: gst/gl/egl/gstglcontext_egl.h: No such file or directory #include ^ https://bugzilla.gnome.org/show_bug.cgi?id=774886 2016-11-22 12:58:44 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Reset values before parsing each section 2016-11-22 12:42:45 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Make sure in all cases that we have enough data left for reading a section start In some cases we ended up parsing sections without. 2016-11-21 17:19:46 +0100 Philippe Renon * ext/opencv/gstcvdilateerode.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: forward declare opencv types Forward declare opencv types to avoid exposing them in the API. https://bugzilla.gnome.org/show_bug.cgi?id=774223 2016-11-21 10:52:39 +0000 Tim-Philipp Müller * gst-libs/gst/interfaces/photography.h: interfaces: photography: clean up header indentation 2016-11-20 15:10:42 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Modify return of the function for loading external resources to void gst_mpd_client_fetch_on_load_external_resources() never ever return FALSE due to modified external xml loading functions. https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-19 23:04:04 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Handle invalid external xml link for SegmentList element Ignore invalid xml link for SegmentList likewise external Period without error. https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-19 22:38:20 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Handle invalid external xml link for AdaptationSet element Ignore invalid xml link for AdaptationSet likewise external Period without error. https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-19 18:37:54 +0900 Seungha Yang * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Handle invalid external xml link for Period element Section 5.3.3 in ISO/IEC 23009-1:2014 defines that invalid references (e.g., invalide URI or cannot be resolved) specified by "@xlink:href" attribute shall be removed. That means, we should play it without error, and just ignore the corresponding element. It's similar to "urn:mpeg:dash:resolve-to-zero:2013". https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-17 15:41:00 +0000 David Evans * gst-libs/gst/gl/Makefile.am: gl: add gstreamer-video to pkg-config path https://bugzilla.gnome.org/show_bug.cgi?id=774624 2016-11-20 12:40:07 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix lib and cflags order in Makefile.am pnm: add misssing continuation slash at end of line vp8parser: no need to link codecparsers twice dash_demux, mssdemux, hlsdemux: fix lib/flags ordering - local libs and flags must come first, then base before core before rest 2016-11-19 16:12:06 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Fix leak in gst_dash_demux_stream_free Free parsed moof and sync samples with _stream_free(). https://bugzilla.gnome.org/show_bug.cgi?id=774702 2016-11-17 11:19:54 -0800 Reynaldo H. Verdejo Pinochet * configure.ac: * ext/vulkan/wayland/Makefile.am: * ext/wayland/Makefile.am: wayland: avoid prefix clash in combined pkg-config check Adittionally, remove leftover WAYLAND_DRM_ include flags var Fixes building of ext/wayland/* broken by dfd86de67a8c04f6d1 Related to: https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-17 20:21:17 +0200 Sebastian Dröge * gst/videoparsers/gstvc1parse.c: vc1parse: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:20:52 +0200 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:20:15 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:19:44 +0200 Sebastian Dröge * ext/ttml/gstttmlrender.c: ttmlrender: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:16:49 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Mark pad as needing reconfiguration again if reconfiguration failed Also return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-18 12:21:22 +0200 Sebastian Dröge * ext/Makefile.am: iqa: Add to DIST_SUBDIRS 2016-11-17 17:17:22 -0800 Scott D Phillips * meson.build: meson: add_global_arguments -> add_project_arguments https://bugzilla.gnome.org/show_bug.cgi?id=774656 2016-11-17 10:54:45 -0800 Scott D Phillips * gst-libs/gst/wayland/meson.build: meson: wayland: wl_scanner is required: false https://bugzilla.gnome.org/show_bug.cgi?id=774637 2016-11-17 15:11:20 -0300 Thibault Saunier * po/POTFILES.in: po: Remove remaining reference to videomeasure 2016-11-17 18:23:04 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Issue "no signal" warnings When a frame is found to not have an associated input source (cable unplugged, wrong mode selected), an element warning will be issued. When the next frame in the stream is found to have an input source selected (e.g. cable replugged), an element info will be issued. https://bugzilla.gnome.org/show_bug.cgi?id=774629 2016-11-16 18:01:19 -0300 Thibault Saunier * configure.ac: * gst/meson.build: * gst/videomeasure/Makefile.am: * gst/videomeasure/gstvideomeasure.c: * gst/videomeasure/gstvideomeasure.h: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_collector.h: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videomeasure/gstvideomeasure_ssim.h: * gst/videomeasure/meson.build: videomeasure: Remove old unported videomeasure plugin as it is now replaced by IQA 2016-11-16 16:30:50 -0300 Thibault Saunier * ext/iqa/iqa.c: iqa: Error out when trying to compare video stream with different sizes We do not handle it yet and we should let the user know. 2016-11-16 14:46:24 -0300 Thibault Saunier * ext/iqa/meson.build: * ext/meson.build: iqa: Add meson build support 2016-11-16 13:18:53 -0300 Mathieu Duponchelle * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/Makefile.am: * ext/iqa/Makefile.am: * ext/iqa/iqa.c: * ext/iqa/iqa.h: Adds a new Image Quality Assessment plugin. It only offers one metric for now, "dssim", available if https://github.com/pornel/dssim was installed on the system at the time the plugin was compiled. The spearman correlation for dssim against the TID2008 dataset is 0.81, against 0.70 for the old ssim implementation, and it runs 15 times faster. https://bugzilla.gnome.org/show_bug.cgi?id=751324 2016-11-17 14:35:26 +1100 Matthew Waters * tests/check/elements/glimagesink.c: gl/tests: fix glimagesink element test on OSX It was suffering a race starting up the thread that could cause the main loop to quit before the main loop had started. 2016-11-17 14:21:23 +1100 Matthew Waters * sys/applemedia/avfassetsrc.m: applemedia: error out if the uri property is not set Fixes: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** +[NSString stringWithUTF8String:]: NULL cString in the state change test. 2016-11-17 15:15:18 +1100 Matthew Waters * gst-libs/gst/meson.build: * gst-libs/gst/wayland/meson.build: * meson.build: meson: wayland: move dep checks to the lib Moves them closer to where they are used. We don't want every check in the main meson.build file. 2016-11-17 14:32:10 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl/egl: add missing source file d42145e8c1ba3bc0445506b92bb7ac04ae98f4dd didn't add the necessary meson build changes. 2016-11-17 02:41:14 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl: remove EGLImage functions from egl context By adding the necessary GstEGLImage entry points to create a GstEGLImage from a GstGLMemory. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-17 01:45:38 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext: add vfunc to retrieve the OpenGL platform version i.e. the version of EGL, GLX, etc implemented. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-17 01:38:32 +1100 Matthew Waters * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/egl: move get_error_string() into gstegl So others can use it without #include-ing a private header https://bugzilla.gnome.org/show_bug.cgi?id=774518 2014-11-27 15:50:04 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: display/egl: implement getting the EGLDisplay of a specific platform https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-16 13:05:11 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/egl: check the feature in the extensions list https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-16 20:41:39 +0200 Sebastian Dröge * gst/vmnc/vmncdec.c: vmncdec: Sanity-check width/height before using it We will allocate a screen area of width*height*bpp bytes, however this calculation can easily overflow if too high width or height are given inside the stream. Nonetheless we would just assume that enough memory was allocated, try to fill it and overwrite as much memory as wanted. Also allocate the screen area filled with zeroes to ensure that we start with full-black and not any random (or not so random) data. https://scarybeastsecurity.blogspot.gr/2016/11/0day-poc-risky-design-decisions-in.html Ideally we should just remove this plugin in favour of the one in gst-libav, which generally seems to be of better code quality. https://bugzilla.gnome.org/show_bug.cgi?id=774533 2016-11-16 18:50:53 +0200 Sebastian Dröge * configure.ac: ttml: Hide behind --enable-experimental The elements are autoplugged and currently assert on invalid streams. 2016-11-16 16:45:27 +0200 Sebastian Dröge * gst/smoothwave/.gitignore: smoothwave: Remove empty directory 2016-11-16 16:33:41 +0200 Sebastian Dröge * gst/meson.build: * gst/real/meson.build: real: Remove empty directory 2016-11-16 16:15:34 +0200 Sebastian Dröge * gst/meson.build: * gst/mpeg1sys/meson.build: mpeg1sys: Remove obsolete, empty directory that only contains a meson.build 2016-11-15 16:20:10 +0100 Imre Eörs * ext/curl/gstcurlbasesink.c: curl: transfer hangs in case connection was cut between client and server https://bugzilla.gnome.org/show_bug.cgi?id=774485 2016-11-16 17:30:54 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/tests: don't use the default framebuffer Create our own instead as the default framebuffer may require special fiddling (like having a visible window) to correctly display/be renderable. Fixes the remaining GL library tests on OS X 2016-11-16 13:39:32 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: implement empty swap_buffers Fixes some GL tests on OS X. 2016-11-16 16:41:59 +1100 Matthew Waters * ext/gl/BUGS: gl: remove empty BUGS file We use bugzilla for bug tracking 2016-11-15 17:46:17 -0300 Thibault Saunier * ext/meson.build: * ext/wayland/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/wayland/meson.build: * meson.build: meson: Build waylandsink https://bugzilla.gnome.org/show_bug.cgi?id=774493 2016-11-15 17:48:15 +0000 Luis de Bethencourt * configure.ac: configure: fix build if wayland-client is not available Simplify the PKG_CHECK_MODULES related to Wayland to avoid the confusion of NOT_FOUND cases when there are 3 nested checks. Group those 3 checks together since there are no conditions specific to each one. Thanks to https://ci.gstreamer.net/ for alerting of the problem. https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-15 11:59:45 +0000 Luis de Bethencourt * configure.ac: configure: fix build if libdrm is not available If the NOT_FOUND part of the check PKG_CHECK_MODULES is not written, it defaults to error. Addind the else clause of this check as HAVE_WAYLAND="no" https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-16 00:01:00 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: remove unneeded window code in NSWindow This is all taken care of by GstGLWindowCocoa/GstGLNSView now. 2016-11-15 22:56:25 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: remove our view from the parent when closing Otherwise, when the application reuses the same UIView, we were getting draw notifications on the previous view/layer's which weren't valid anymore and were referencing pointers that had been freed. https://bugzilla.gnome.org/show_bug.cgi?id=753003 2016-11-15 21:43:59 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: add a debug category 2016-11-15 14:36:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: introduce check for GLMemory allocators The last missing piece of EGLImage support has been pushed. 2016-11-14 17:02:54 -0800 Scott D Phillips * gst-libs/gst/codecparsers/gstjpegparser.c: * gst/frei0r/gstfrei0r.c: * gst/id3tag/id3tag.c: Fix some MSVC warnings about const-ness Some miscellaneous warnings about const-ness, either casting away const where we know it's safe or removing const where it's not correct. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-14 16:59:48 -0800 Scott D Phillips * gst-libs/gst/codecparsers/gstmpegvideometa.c: Cast away const from GstMetaInfo in *_get_meta_info() functions MSVC warns about the const in the implicit argument conversion in the calls to g_once_init_{enter,leave}. It's OK so explicitly cast it. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-10 23:07:50 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix startup SEGMENT seeking and setting for live Because fragment.timestamp is relative value to period_start, startup SEGMENT seeking should be pointed to "fragment.timestamp + period_start" https://bugzilla.gnome.org/show_bug.cgi?id=774196 2016-11-14 12:23:37 +0100 Philippe Renon * sys/winscreencap/gstgdiscreencapsrc.c: gdiscreencapsrc: remove empty gst_gdiscreencapsrc_stop vfunc https://bugzilla.gnome.org/show_bug.cgi?id=774400 2016-11-10 18:42:29 +0100 Philippe Renon * configure.ac: * ext/opencv/Makefile.am: * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcvdilateerode.h: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.h: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.h: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.h: * ext/opencv/gstretinex.h: * ext/opencv/gstskindetect.h: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/opencv/Makefile.am: * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: move base opencv filter class and utilities to gst-libs https://bugzilla.gnome.org/show_bug.cgi?id=774223 2016-11-14 23:15:05 +0530 Arun Raghavan * sys/fbdev/meson.build: * sys/meson.build: fbdevsink: Add to meson build 2016-11-14 23:11:11 +0530 Arun Raghavan * sys/kms/meson.build: kmssink: Trivial naming fix in meson for consistency 2016-11-14 21:03:20 +0530 Arun Raghavan * sys/kms/meson.build: * sys/meson.build: kmssink: Enable in meson build 2016-11-14 17:00:21 +0200 Sebastian Dröge * tests/check/elements/dash_mpd.c: dash: Fix breakage in unit test caused by gst-indent 2016-11-14 23:31:37 +0900 Seungha Yang * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/Makefile.am: * tests/check/elements/dash_mpd.c: * tests/check/elements/dash_mpd_data/xlink_double_period.period: * tests/check/elements/dash_mpd_data/xlink_single_period.period: mpdparser: Support multiple Period elements in external xml External xml could have empty, one or multiple top-level "Period" elements. Because xml parser cannot parse the multiple top-level elements (i.e., no root element), we need to wrap a xml in order to make root element. See also ISO/IEC 23009-1:2014 5.3.2.2 https://bugzilla.gnome.org/show_bug.cgi?id=774357 2016-11-03 10:47:00 -0700 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdkenc.c: * sys/msdk/meson.build: * sys/msdk/msdk.c: * sys/msdk/msdk.h: * sys/msdk/msdk_d3d.c: * sys/msdk/msdk_libva.c: msdk: Initial windows build support https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-10-13 14:30:43 -0700 Scott D Phillips * sys/meson.build: * sys/msdk/meson.build: meson: add build files for msdk https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-09-27 14:21:34 -0700 Scott D Phillips * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp8enc.c: msdk: load plugins in h265 and vp8 init https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-09-27 14:17:49 -0700 Scott D Phillips * sys/msdk/gstmsdkenc.c: msdk: Width and Height need to be integer multiples of 32 https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-09-09 15:43:25 -0700 Scott D Phillips * configure.ac: * sys/Makefile.am: * sys/msdk/Makefile.am: msdk: add to build https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-04-01 19:25:25 +0200 Josep Torra * sys/msdk/README: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkmpeg2enc.h: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/gstmsdkvp8enc.h: * sys/msdk/msdk.h: * sys/msdk/msdk_libva.c: msdk: Create plugin for Intel's Media SDK [scott.d.phillips@intel.com: gst-indent *.c *.h] [scott.d.phillips@intel.com: link with libva at build time] [scott.d.phillips@intel.com: remove unused includes] [scott.d.phillips@intel.com: Update README] https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-11-14 11:08:24 +0100 Philippe Normand * ext/dash/gstmpdparser.c: * tests/check/elements/dash_demux.c: mpdparser: wrap unmodified data in protection event PlayReady being the one of the few DRM formats encoding its data with base64 it was not consistent to have a special case for this. So the base64 decoding operation now needs to be done by the protection event consumer, if needed. https://bugzilla.gnome.org/show_bug.cgi?id=774112 2016-11-14 11:06:00 +0100 Philippe Normand * ext/smoothstreaming/gstmssdemux.c: mssdemux: wrap unmodified data in protection event PlayReady being the one of the few DRM formats encoding its data with base64 it was not consistent to have a special case for this. So the base64 decoding operation now needs to be done by the protection event consumer, if needed. https://bugzilla.gnome.org/show_bug.cgi?id=774112 2016-11-14 11:32:17 +0200 Sebastian Dröge * ext/dtls/gstdtlscertificate.c: dtlscertificate: Fix error checking in RSA_generate_key_ex() usage Was broken during the port for OpenSSL 1.1. https://bugzilla.gnome.org/show_bug.cgi?id=774328 2016-11-11 10:55:57 -0800 Scott D Phillips * sys/winks/kshelpers.c: winks: undef windows SDK macros before redefining them Redefining an already defined macro causes a warning from the msvc preprocessor https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-11 10:54:52 -0800 Scott D Phillips * sys/d3dvideosink/d3dhelpers.c: Remove 'return' from `void` functions https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-11 10:51:49 -0800 Scott D Phillips * gst/mpegtsdemux/gstmpegdefs.h: mpegtsdemux: fix operator precedence in SAFE_FOURCC_ARGS Type cast has higher precedence than bitwise shift, so the third argument will truncate to 8 bits and then shift right by 8 bits resulting in constant zero. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-12 10:38:04 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Fix NULL pointer dereference when checking if there is a next fragment Thanks to Aleksandr for reporting and suggesting the fix. https://bugzilla.gnome.org/show_bug.cgi?id=774287 2016-10-26 22:36:17 -0700 Scott D Phillips * meson.build: meson: don't add_global_arguments when being built as a subproject https://bugzilla.gnome.org/show_bug.cgi?id=773568 2016-11-11 01:05:55 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: gl: x11-xcb is not a required dependency Don't fail if it's not found.. 2016-10-19 14:54:44 +0200 Philipp Zabel * sys/kms/gstkmsallocator.c: kmssink: do not get kms bo pitch for planar formats The API is ill defined for planar formats in case of dumb BOs, do not use the reported stride in those cases. https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-10-18 09:19:09 +0200 Michael Tretter * sys/kms/gstkmssink.c: kmssink: remove custom gst_kms_sink_get_times The default get_times() function of the base sink is just fine. Remove the custom get_times() function, because the default function already reads the timestamps from the buffers. Signed-off-by: Michael Tretter https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-11-10 17:20:27 +1100 Matthew Waters * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: use the duration from the list of fragments if not present in the manifest Provides a more accurate duration for live streams that may be minutes or hours in front of the earliest fragment. https://bugzilla.gnome.org/show_bug.cgi?id=774178 2016-11-10 17:18:36 +1100 Matthew Waters * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: smoothstreaming: implement adaptivedemux's get_live_seek_range() Allows seeking through the available fragments that are still available on the server as specified by the DVRWindowLength attribute in the manifest. https://bugzilla.gnome.org/show_bug.cgi?id=774178 2016-11-09 21:20:21 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: reset the manifest failure count after a successful retrieval This changes the failure case to require a consecutive number of failures rather than being spread out over the entire stream. Fixes the case where fetching the manifest was intermittent. https://bugzilla.gnome.org/show_bug.cgi?id=774177 2016-11-09 21:18:06 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: call the subclass for duration queries for live sources Otherwise, the duration query was failing for live sources https://bugzilla.gnome.org/show_bug.cgi?id=774177 2016-11-09 21:15:29 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: restart the manifest update task after a seek For formats that need to update the manifest to know about new fragments as they're being written by the server would never receive an updated fragment list after a seek event https://bugzilla.gnome.org/show_bug.cgi?id=774177 2016-11-09 17:10:21 +0900 Dongil Park * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: fix typo in GstMpegtsDescriptor https://bugzilla.gnome.org/show_bug.cgi?id=774132 2016-11-10 20:34:53 +1100 Matthew Waters * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: gl/build: add missing build files 3f7b54988186de17ec4e5b5566074cfaa392819a was incomplete :( 2016-11-10 19:14:24 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * ext/gl/meson.build: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: gl/utils: move gen_shader() to the plugin and remove del_shader() gst_gl_context_del_shader() can be replaced by a g_object_unref(). gst_gl_context_gen_shader() should be replaced by using GstGLSLStage. 2016-10-26 16:53:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: remove unused field in public struct 2016-10-26 16:30:43 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove is_running() function It isn't necessary in correctly written programs. 2016-11-08 17:50:51 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson/gl: XCB changes also need x11-xcb as a dependency https://ci.gstreamer.net/job/GStreamer-master-meson/380/console [...] gst-libs/gst/gl/x11/xcb_event_source.c:98: undefined reference to `xcb_get_file_descriptor' 2016-11-07 12:30:20 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Allow registering codecs, camera or sensors if any of the others failed https://bugzilla.gnome.org/show_bug.cgi?id=774048 2016-11-07 12:24:59 +0200 Sebastian Dröge * sys/androidmedia/gst-android-hardware-sensor.c: ahs: Don't assert on deinit if initialization failed before Initialization failure is handled correctly by just not registering the ahssrc element. https://bugzilla.gnome.org/show_bug.cgi?id=774048 2016-11-08 09:52:48 +0100 Philippe Normand * gst-libs/gst/gl/meson.build: gl/x11: fix meson build The x11_event_source.[ch] files were renamed in 4f6c226bd24ae3ef66bd8f4c17b001444c9b0bf1. 2016-11-08 15:04:29 +1100 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: examples/gl/qt: fix the examples for the use of newer API gstgl doesn't undo/overwrite what GL state the examples are changing anymore. As such, the examples need to reset the GL state themselves to be able to play nice with libgstgl 2016-11-08 13:35:33 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glfiltershader: expand the docs slightly Add an example OpenGL shader 2016-07-01 00:31:07 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: remove the navigation thread This functionality can now effectively be implemented with the display event thread. 2016-07-01 00:07:23 +1000 Matthew Waters * configure.ac: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/xcb_event_source.c: * gst-libs/gst/gl/x11/xcb_event_source.h: gl/x11: use xcb instead of libX11 - xcb is supposedly thread-safe! videotestsrc ! glimagesink now doesn't spuriously result in a 'call XInitThreads()' error however if anybody else is using X11, then XInitThreads() still needs to be called and multiple glimagesink's still need XInitThreads(). Everything still takes libX11 handles as they are compatible with the xcb variants. Unfortunately we cannot move fully over to xcb due to GLX being entirely based on Xlib. It's also impossible to transform a xcb_connection to a Display which means we require X11 handles. 2016-06-30 23:12:33 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add a list of glwindow's With the event thread on the display, for a particular winsys event we need to be able to retreive the window that the event matches. 2016-06-30 23:04:16 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add a dedicated event thread Will take the place of the navigation event thread for dealing with winsys events. 2016-11-08 12:44:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.h: gl: don't expose OpenGL prototypes We roll our own to avoid depending a certain OpenGL header version 2016-11-08 02:56:44 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: don't install the gstglcontext_cocoa.h header It's not needed to be exposed 2016-11-08 02:52:37 +1100 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: gl/android: don't install the android window header It's not needed 2016-11-08 02:50:41 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: gl: add padding to all exposed winsys/platform-specific structs 2016-11-08 02:47:36 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/Makefile.am: gl/wayland: install the gstgldisplay_wayland.h header As it is used by other OpenGL sinks (gtkglsink, qmlglsink) 2016-11-08 02:44:30 +1100 Matthew Waters * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/meson.build: gl/egl: don't install the gstglcontext_egl.h header It's not needed to be exposed and there are no users of the API. 2016-11-08 02:21:20 +1100 Matthew Waters * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: remove display_init/reset They are mirrors of GstGLBaseFilter's gl_start() and gl_stop() virtual methods so use them instead. 2016-11-07 14:47:22 +0800 Haihua Hu * ext/qt/gstqtsrc.cc: * ext/qt/gstqtsrc.h: * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: qmlglsrc: some enhancements for qmlglsrc 1. Need set use-default-fbo to qquickwindow during set property to support change render target on the fly. 2. Calculate qmlglsrc refresh frame rate in qtglwindow https://bugzilla.gnome.org/show_bug.cgi?id=774035 2016-11-04 11:56:13 +0530 Gaurav Gupta * sys/vdpau/gstvdpsink.c: vdpsink: fix Memory leak due to Xlib API usage https://bugzilla.gnome.org/show_bug.cgi?id=773932 2016-11-04 09:56:33 +0100 Philippe Normand * ext/dash/gstmpdparser.c: * tests/check/elements/dash_demux.c: * tests/check/elements/dash_mpd.c: mpdparser: MS PlayReady ContentProtection parsing The "pro" (PlayReady Object) element contents are now base64-decoded and properly stored in Protection events. https://bugzilla.gnome.org/show_bug.cgi?id=773936 2016-11-04 16:26:50 +0200 Sebastian Dröge * gst/yadif/gstyadif.c: * tests/check/elements/compositor.c: gst: Fix more mentions of interlaced-mode to say interlace-mode 2016-11-04 13:43:08 +0000 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: only use libdrm headers, don't link to the lib https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-04 09:26:48 +0000 Tim-Philipp Müller * configure.ac: * sys/kms/Makefile.am: kms: rename variable used Since this includes kms. 2016-11-04 00:52:41 +0000 Tim-Philipp Müller * configure.ac: * ext/wayland/Makefile.am: * ext/wayland/wlvideoformat.h: wayland: include drm_fourcc.h properly and fix build 2016-11-04 00:44:32 +0000 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: fix cflags/libs order 2016-11-04 09:51:36 +0530 Arun Raghavan * ext/vulkan/meson.build: vulkan: Add missing files to meson build 2016-09-29 16:30:33 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wllinuxdmabuf.c: * ext/wayland/wlshmallocator.c: waylandsink: Rework dmabuf support Simplify and fix some of the show_frame logic. https://bugzilla.gnome.org/show_bug.cgi?id=711155 2016-09-22 11:10:47 +0200 Fabien Dessenne * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wllinuxdmabuf.c: * ext/wayland/wllinuxdmabuf.h: * ext/wayland/wlshmallocator.c: * ext/wayland/wlvideoformat.c: * ext/wayland/wlvideoformat.h: waylandsink: support linux dmabuf protocol Support the wayland zwp_linux_dmabuf_unstable_v1 protocol. SHM formats and DMABuf formats are exposed differently in caps: the DMABuf formats are flagged with GST_CAPS_FEATURE_MEMORY_DMABUF. No buffer pool is proposed for DMABuf buffers, it is the upstream element responsibility to provide with such buffers. https://bugzilla.gnome.org/show_bug.cgi?id=711155 2016-09-29 14:34:18 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlshmallocator.c: waylandsink: Allow any kind of FD for shm memory https://bugzilla.gnome.org/show_bug.cgi?id=711155 2016-11-03 17:34:54 +0000 Luis de Bethencourt * configure.ac: * ext/ttml/meson.build: ttml: bump needed libxml2 version ttml was recently added but it won't compile unless libxml2 version 2.9.2 or later is available. In that version the first parameter of xmlGetProp switched to being a const. In previous versions the compiler complains about passing a const value to a non const argument. 2016-11-03 08:31:36 +0100 Edward Hervey * tests/check/elements/.gitignore: check: Add new test to .gitignore 2016-11-03 18:19:58 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Fix inverted precondition A GError argument must either be null or point to a NULL GError. https://developer.gnome.org/glib/stable/glib-Error-Reporting.html 2016-09-01 20:04:08 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: Use the trash list to free resources after they've been used This allows further parallelism and removes a device wait from the end of the render code. 2016-09-01 19:52:40 +1000 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vktrash.c: * ext/vulkan/vktrash.h: vulkan: add a trash object This allows pushing the destruction of vulkan resources after the signalling of an vulkan event. The event facilitates knowing when a specific point in the vulkan queue has been reached. Only after the event has been signaled can vulkan resources be freed and/or reused. 2016-09-01 19:51:11 +1000 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vkfence.c: * ext/vulkan/vkfence.h: vulkan: add a simple refcountable fence wrapper 2016-11-03 16:14:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglwindow.c: gl/gi: some annotation updates for called functions With scope, closure, destroy annotations 2016-11-03 16:12:32 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl/gi: also include GstVideo Removes all the unknown type GstVideo* warnings while building the GIR file. 2016-10-27 16:19:04 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfeature_private.h: glfeature: move internal functions into a private header Don't expose them to the outside world 2016-10-05 12:19:12 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/caopengllayersink.m: * ext/gl/gstglbasemixer.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglvideomixer.c: * ext/gtk/gstgtkglsink.c: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsrc.cc: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/glcontexthelper.c: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: gl: GST_GL_TYPE -> GST_TYPE_GL Some deprecated symbols are kept for backwards compatibility 2016-11-03 12:03:24 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: gl/docs: massive update - add Since: markers where necessary. - document structs - add documentation headers for each module (short_description, see_also, etc) - reduce the number of warnings gtk-doc outputs - fix spelling mistakes 2016-11-02 21:21:33 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: gl/docs: document new API added in 1.10 GstGLRenderbuffer GstGLFramebuffer GstGLQuery GstEGLImage GstGLMemoryEGL 2016-11-01 16:13:21 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: gl/docs: update lists of included symbols in the sections and types files. Also remove some unneeded types from the documentation as they aren't exposed as public API 2016-11-01 17:30:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglsl.c: * tests/check/libs/gstglsl.c: glsl: fix #version 150 not working with profiles The spec allows the core/compatibility profiles to be used with #version 150. Also tighten up the tests to check for default profiles being chosen correctly. 2016-11-02 20:14:39 +0200 Sebastian Dröge * ext/meson.build: * ext/ttml/meson.build: ttml: Add meson.build 2016-11-02 20:14:23 +0200 Sebastian Dröge * ext/fdkaac/meson.build: * ext/meson.build: fdkaac: Add meson.build 2016-11-02 16:12:42 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Also stop scheduled playback when gst_element_lost_state() is called Unfortunately this does not go through the normal state change machinery, so we don't get notified about this in change_state(). However we need to stop scheduled playback, so that once PLAYING is reached again we can start scheduled playback with the correct time. Without this, flushing seeks in PLAYING will not work correctly: decklinkvideosink will wait before showing the new frames for the amount of time the pipeline was in PLAYING before. 2016-11-02 15:00:36 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Use gst_clock_adjust_with_calibration() and unadjust_with_calibration() Instead of hand-crafted versions of the same calculation. These calculations are still too complicated though. 2016-11-02 14:04:19 +0200 Sebastian Dröge * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlssrtpdec.c: dtls: Fix compiler warnings with openssl 1.1 or newer - DTLSv1_method() is deprecated, and since 1.0.2 replaced by DTLS_method(). - CRYPTO_set_locking_callback() and CRYPTO_set_id_callback() are no-ops (empty macros) since 1.1 and are not supposed to be used anymore. gstdtlsagent.c: In function ‘gst_dtls_agent_init’: gstdtlsagent.c:173:3: error: ‘DTLSv1_method’ is deprecated [-Werror=deprecated-declarations] priv->ssl_context = SSL_CTX_new (DTLSv1_method ()); ^~~~ In file included from /usr/include/openssl/ct.h:13:0, from /usr/include/openssl/ssl.h:61, from gstdtlsagent.c:40: /usr/include/openssl/ssl.h:1614:1: note: declared here DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_method(void)) /* DTLSv1.0 */ ^ At top level: gstdtlsagent.c:103:1: error: ‘ssl_thread_id_function’ defined but not used [-Werror=unused-function] ssl_thread_id_function (void) ^~~~~~~~~~~~~~~~~~~~~~ gstdtlsagent.c:73:1: error: ‘ssl_locking_function’ defined but not used [-Werror=unused-function] ssl_locking_function (gint mode, gint lock_num, const gchar * file, gint line) ^~~~~~~~~~~~~~~~~~~~ 2016-11-02 11:21:36 +0200 Sebastian Dröge * win32/common/libgstplayer.def: win32: Update for new GstPlayer API 2016-01-05 18:50:45 +0100 Florian Zwoch * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstdx9screencapsrc.h: dx9screencapsrc: add "cursor" option to draw the cursor Drawing is done via the GDI drawing functions. The cursor is converted to a monochrome version before drawing. This is because the GDI drawing functions seem to have undefined behavior with cursor images including an alpha channel. I could not find any other reliable way to draw these alpha channel cursors without producing unwanted artifacts. These type of cursors were introduced with Window Vista when run with it's Aero theme. Also adjust the cursor coordinates when capturing non-primary screens via the "monitor" option. https://bugzilla.gnome.org/show_bug.cgi?id=760172 2016-11-02 09:36:04 +0200 Sebastian Dröge * tests/check/elements/rawvideoparse.c: Revert "tests: rawvideoparse: add test for flow error handling" This reverts commit 280b4ac2ffc63908a74944f50589b2630be16232. https://bugzilla.gnome.org/show_bug.cgi?id=773666 2016-10-28 16:39:13 -0400 Olivier Crête * ext/dtls/gstdtlsagent.c: dtls: Downgrade locking debug 2016-06-29 09:58:38 +0100 Chris Bass * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-ttmlsubs.xml: * ext/Makefile.am: * ext/ttml/Makefile.am: * ext/ttml/gstttmlparse.c: * ext/ttml/gstttmlparse.h: * ext/ttml/gstttmlplugin.c: * ext/ttml/gstttmlrender.c: * ext/ttml/gstttmlrender.h: * ext/ttml/subtitle.c: * ext/ttml/subtitle.h: * ext/ttml/subtitlemeta.c: * ext/ttml/subtitlemeta.h: * ext/ttml/ttmlparse.c: * ext/ttml/ttmlparse.h: ttml: Add plugin that supports TTML subtitles Add a parser (ttmlparse) and renderer (ttmlrender) element that handle subtitles that use the EBU-TT-D profile of TTML1. https://bugzilla.gnome.org/show_bug.cgi?id=758232 2016-10-29 11:33:18 +0100 Tim-Philipp Müller * tests/check/elements/rawvideoparse.c: tests: rawvideoparse: add test for flow error handling Also needs fixes in baseparse: https://bugzilla.gnome.org/show_bug.cgi?id=773666 2016-11-01 18:10:23 +0000 Tim-Philipp Müller * meson.build: meson: update version 2016-10-26 16:28:10 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * win32/common/libgstplayer.def: player: Add configuration for enabling accurate seeks https://bugzilla.gnome.org/show_bug.cgi?id=773521 2016-10-21 14:01:11 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Ignore channel-mask when checking set_caps compatibility channel-mask doesn't matter in decklinkaudiosrc, and differences in it can cause caps negotiations to fail without a real reason. https://bugzilla.gnome.org/show_bug.cgi?id=773313 2016-10-04 16:59:09 +0100 Vincent Penquerc'h * tests/check/Makefile.am: * tests/check/elements/srtp.c: tests: add a test for srtp elements https://bugzilla.gnome.org/show_bug.cgi?id=772357 2016-10-03 09:52:07 +0100 Vincent Penquerc'h * ext/srtp/gstsrtpdec.c: srtpdec: add stats readonly property, similar to srtpenc https://bugzilla.gnome.org/show_bug.cgi?id=772357 2016-09-26 18:01:30 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Cache duration and return cached duration https://bugzilla.gnome.org/show_bug.cgi?id=771992 2016-01-08 21:41:56 +0000 Tim-Philipp Müller * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: bayer: fix stride inconsistencies for odd widths Consistently use GST_ROUND_UP_4(width) as stride for bayer buffers. Bayer data will usually come in widths that are multiples of 4 anyway, so hopefully this should not have any adverse impact on anyone in practice. Before, bayer2rgb required input buffers to are sized accordingly, but then didn't actually round up when calculating row offsets. rgb2bayer didn't use a rounded stride nor buffer size. https://bugzilla.gnome.org/show_bug.cgi?id=752014 === release 1.11.0 === 2016-11-01 18:53:15 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.10.0 === 2016-11-01 17:58:20 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.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-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-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.10.0 2016-11-01 17:51:03 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-11-01 17:42:37 +0200 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2016-10-31 19:26:31 +0600 Artem Martynovich * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Correctly cast mixer to uintptr https://bugzilla.gnome.org/show_bug.cgi?id=773720 2016-10-28 10:05:20 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: don't try to access non-existant iframe variant If the playlist does not contain any iframe variants then demux->master->iframe_variants is NULL. If the previous variant is an iframe variant then there is at least one iframe variant and demux->master->iframe_variants->data can be safely used. https://bugzilla.gnome.org/show_bug.cgi?id=773635 2016-10-23 12:02:00 +0300 sezero * ext/timidity/gsttimidity.c: timidity: add support for libtimidity-0.2.x mid_istream_open_mem() doesn't accept an autofree argument as of libtimidity >= 0.2.0 https://bugzilla.gnome.org/show_bug.cgi?id=772503 2016-10-26 14:51:01 +0200 Daiki Ueno * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlsconnection.c: dtls: port to OpenSSL 1.1.0 Changes are: - Use the wrapper functions to access opaque data types. To preserve backward compatibility, define fallback definitions - Remove the use of idiom "pqueue_size(ssl->d1->sent_messages)", since there is no replacement - Use RSA_generate_key_ex instead of the deprecated RSA_generate_key https://bugzilla.gnome.org/show_bug.cgi?id=773540 2016-10-29 11:31:28 +0100 Tim-Philipp Müller * gst/rawparse/gstrawbaseparse.c: rawparse: pass flow returns upstream rawvideoparse wouldn't error out on not-negotiated, but would just keep on going, because it didn't pass the flow return value back to the parent class and thus upstream, so the source wouldnt' stop streaming. 2016-10-28 07:17:56 +0530 Nirbheek Chauhan * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: build: Also need to define GST_EXPORTS for Autotools The change to use GST_EXPORT for symbols under Windows requires GST_EXPORTS for internal use, and that is also needed under Autotools. The same thing is done for gstreamer-1.0.dll in -core. 2016-10-28 06:23:02 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl_private.h: gstgl: Re-enable WINAPI on _MSC_VER The calling convention may be deprecated, but we still need it for OpenGL. The build issue was caused by an incorrect syntax being used for the WINAPI (__stdcall) prototype in function pointers which was accepted by GCC but is rejected by MSVC. 2016-10-27 23:09:38 +0530 Nirbheek Chauhan * win32/common/libgstgl.def: Just remove win32/common/libgstgl.def It was always wrong since the symbols being exported in gstgl-1.0.dll are platform-specific, and the check we do in dist checks it on all platforms (which usually means Linux) and the list is instead Linux-specific right now. Even if we fix that, it can still never be right because it depends on your configuration even on a specific platform. For instance, when we start building EGL support on Windows using ANGLE, the symbol list will change depending on whether that is enabled or not. We also don't need this anymore since we use GST_EXPORT for all functions exported on Windows now. 2016-10-27 09:25:20 +0530 Nirbheek Chauhan * ext/gl/gstglstereosplit.c: * ext/openh264/gstopenh264enc.cpp: * gst/videoparsers/gsth264parse.c: plugins: Use explicit type conversion from enums MSVC warns about this because it's a C++ compiler, and this actually results in useful things such as the incorrect 'gboolean' return value for functions that return GstFlowReturn, so let's do explicit conversions to reduce the noise and increase its efficacy. 2016-10-27 09:11:26 +0530 Nirbheek Chauhan * ext/dash/gstdashdemux.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstgaussblur.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: Explicitly define float constants as float With MSVC, this gives the following warning: warning C4305: 'function': truncation from 'double' to 'gfloat' Apparently, MSVC does not figure out what type to use for constants based on the assignment. This warning is very spammy, so let's try to fix it. 2016-10-27 09:08:41 +0530 Nirbheek Chauhan * ext/dts/gstdtsdec.c: * ext/faad/gstfaad.c: * ext/gl/gstglviewconvert.c: * ext/schroedinger/gstschrodec.c: * gst-libs/gst/audio/gstaudioaggregator.c: Fix incorrect return type in several functions All these should return GstFlowReturn, not gboolean 2016-10-27 09:06:33 +0530 Nirbheek Chauhan * meson.build: meson: Don't warn about C4146 with MSVC The error is: unary minus operator applied to unsigned type, result still unsigned This is a commonly-done operation in gstreamer and it's done on purpose. It's just noise. 2016-10-27 08:17:58 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: gstgl: Add GST_EXPORT to all symbols used on Windows This is a requirement for those symbols to be exported in gstgl-1.0.dll when building with the MSVC compiler 2016-10-27 07:29:36 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: Add support for building WGL on Windows Currently only tested with MSVC. 2016-10-27 09:10:03 +0530 Nirbheek Chauhan * ext/gl/gstgloverlay.c: ext/gl: Don't define boolean on Windows with MSVC The headers we include already define boolean on Windows with MSVC, and it leads to a typedef redefinition error with jpeglib.h which tries to redefine it in jmorecfg.h 2016-10-27 07:30:19 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: gstgl: Porting fixes for MSVC with Meson GL/gl.h needs windows.h on MSVC WINAPI should not be used with MSVC. It also causes a build error. 2016-10-23 22:13:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: collapse notes on channel_name encoding conflict 2016-10-23 22:00:30 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: rename ZAP parser for clarity This function only does ZAP parsing. Additionally, remove redundant comment while at it. 2016-10-23 21:37:46 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: dvb: fix gtk-doc syntax for wrongly formatted comments 2016-10-21 00:37:03 -0700 Scott D Phillips * ext/hls/meson.build: meson: hls: Only build when any crypto_dep is found https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-21 00:39:32 -0700 Scott D Phillips * sys/directsound/meson.build: meson: directsound: Add ole32 library dependency https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-17 09:35:41 -0700 Scott D Phillips * sys/winscreencap/meson.build: meson: winscreencap depends on gstvideo https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-21 00:35:09 -0700 Scott D Phillips * meson.build: meson: Remove gstreamer-check-1.0 dependency It will later be added under tests/check https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-21 13:10:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: don't glFinish() everytime a sync point is set At minimum, we only need to glFlush() if we are in a shared GL context environment. Move the glFinish() to when the actual wait is requested which may be never. Improves the throughput on older GL systems without GL3/GLES3 and/or fence sync objects. 2016-07-16 15:29:42 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: do not use invalid stream duration If it is is unknown, consider it infinite https://bugzilla.gnome.org/show_bug.cgi?id=768460 2016-07-16 15:15:21 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: properly inherit segmentlist from period Representation can inherit SegmentList from Period if none is available from the AdaptationSet https://bugzilla.gnome.org/show_bug.cgi?id=768460 2016-10-19 16:11:58 +1100 Matthew Waters * ext/gl/gstopengl.c: * ext/gl/meson.build: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/meson.build: * meson_options.txt: meson: gl: add support for building with dispmanx on the rpi 2016-10-18 22:29:19 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/eglimage: Fix passing the destroy function to gst_egl_image_new_wrapped The function pointer and the user data arguments were swapped in both uses. https://bugzilla.gnome.org/show_bug.cgi?id=769382 2016-10-18 13:01:04 +0530 Nirbheek Chauhan * gst/segmentclip/meson.build: meson: Add missing gstvideo dep to segmentclip In file included from ../subprojects/gst-plugins-base/gst-libs/gst/video/video.h:27:0, from ../subprojects/gst-plugins-bad/gst/segmentclip/gstvideosegmentclip.c:25: ../subprojects/gst-plugins-base/gst-libs/gst/video/video-format.h:27:39: fatal error: gst/video/video-enumtypes.h: No such file or directory #include ^ compilation terminated. https://ci.gstreamer.net/job/GStreamer-master-meson/269/console 2016-10-11 17:06:23 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: Implemented gst_video_overlay_set_window_handle() https://bugzilla.gnome.org/show_bug.cgi?id=772608 2016-10-18 14:11:26 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl: fix detection of glx without gl We need to check for libGL if we may use desktop OpenGL *or* GLX. 2016-10-18 14:10:32 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl: fix incorrect error string Use the winsys variable for an incorrect winsys provided 2016-10-16 12:40:22 +0200 Sergey Borovkov * ext/qt/qtwindow.cc: qt: Fix failing build on RPI https://bugzilla.gnome.org/show_bug.cgi?id=773026 2016-10-11 16:58:48 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: egl_show should resize the window only if there is no render rectangle set https://bugzilla.gnome.org/show_bug.cgi?id=772699 2016-10-11 16:55:17 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: Fix set_render_rectangle typo https://bugzilla.gnome.org/show_bug.cgi?id=772698 2016-03-18 14:09:37 +0000 Vincent Penquerc'h * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: fix buffer size mismatch in M2TS mode In M2TS mode, we need an extra 4 bytes in the buffer, so need to ensure the buffer can contain these. The allocation site does not know the mode, so this is done in all cases. 2016-10-15 22:19:02 +0530 Nirbheek Chauhan * meson.build: meson: Don't set c_std to gnu99 Use the default for each compiler on every platform instead. This improves our compatibility with compilers that don't have gnu99 as a c_std. 2016-10-14 14:41:42 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix 'delivery system'-related messages * Rephrase tune error to be delsys-neutral * Refer to the actual check in the 'missing sanity check' warnings * Use "Delivery system" instead of 'delsys'. The latter is OK as a shorthand in the code but not even a real word 2016-10-11 18:48:06 +0200 Joan Pau Beltran * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: bayer: fix _transform_caps method to preserve fields in given caps https://bugzilla.gnome.org/show_bug.cgi?id=758717 2016-09-29 12:49:39 -0400 Arun Raghavan * ext/wayland/gstwaylandsink.c: waylandsink: Properly configure internal pool There was a small omission in the code. It still worked, but the pool configuration may not have been optimimal. 2016-10-12 18:20:27 +0100 Tim-Philipp Müller * common: common: sync to latest revision Fixes accidental common change when commit patch. 2016-10-11 11:11:16 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Implement efficient program updates If the parent bin can handle it, only add/remove the new/gone stream instead of re-adding/re-moving everything https://bugzilla.gnome.org/show_bug.cgi?id=772742 2016-10-12 14:35:21 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: Ensure we always get an upstream stream-id This was a regression. We only have a upstream-id via STREAM_START if we were in push-mode. In pull-mode we need to create one. Note: It would be good to eventually have that method (copied from gst_pad_get_stream_id_internal()) public in the future 2016-10-11 16:47:37 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Fix issues with GST_DISABLE_GST_DEBUG Some variables were hidden or unused 2015-07-29 15:52:05 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Switch to using GstStream/GstStreamCollection For each MpegTSBaseStream, we have a GstStream object which subclasses can extend with information. For each program a GstStreamCollection is created with all GstStream from each stream. 2016-10-11 10:50:17 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Remove duplicated code Just have one function to check for private section streams 2016-10-10 17:00:39 +0200 Arnaud Vrac * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix buffer size print format https://bugzilla.gnome.org/show_bug.cgi?id=772706 2016-10-10 16:52:58 +0200 Arnaud Vrac * common: * ext/hls/gsthlsdemux.h: hlsdemux: fix hls demux stream type inheritance GstHLSDemuxStream inherits GstAdaptiveDemuxStream, not GstAdaptiveDemux. Fixes memory corruption issues. https://bugzilla.gnome.org/show_bug.cgi?id=772704 2016-10-09 06:42:30 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: parse guard interval as a fraction Fixes wrong default failover when parsing libdvbv5 formatted channel configuration files. 2016-10-09 03:23:19 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: add prototypes and reorganize for clarity 2016-10-08 07:18:15 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: Update my email address 2016-10-08 05:33:34 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/cam.h: * sys/dvb/camapplication.h: * sys/dvb/camapplicationinfo.h: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.h: * sys/dvb/camresourcemanager.h: * sys/dvb/camsession.h: * sys/dvb/camswclient.h: * sys/dvb/camtransport.h: * sys/dvb/camutils.h: dvb: drop trailing whitespace and c&p leftovers 2016-10-08 05:20:47 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: parse DVB-T hierarchy from v5 config file Avoids relying on the H/W default when the information can be extracted from the configuration file. 2016-10-08 04:55:20 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: parse DVB-T lp and hp code rates 2016-10-08 14:08:06 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegts: Also clear packetizer on TIME DISCONT When dealing with TIME-based input, the incoming stream could have potentially changed completely. In order to check whether it did or not, we need to re-check all sections (PAT, PMT...). If it didn't, we will keep using the existing streams/pad, and if it did we will act as if there was a program switch. Fixes HLS streaming with decodebin3/playbin3 2016-10-02 09:34:51 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Calculate values before queue2 In order to calculate the *actual* bitrate for downloading a fragment we need to take into account the time since we requested the fragment. Without this, the bitrate calculations (previously reported by queue2) would be biased since they wouldn't take into account the request latency (that is the time between the moment we request a specific URI and the moment we receive the first byte of that request). Such examples were it would be biased would be high-bandwith but high-latency networks. If you download 5MB in 500ms, but it takes 200ms to get the first byte, queue2 would report 80Mbit/s (5Mb in 500ms) , but taking the request into account it is only 57Mbit/s (5Mb in 700ms). While this would not cause too much issues if the above fragment represented a much longer duration (5s of content), it would cause issues with short ones (say 1s, or when doing keyframe-only requests which are even shorter) where the code would expect to be able to download up to 80Mbit/s ... whereas if we take the request time into account it's much lower (and we would therefore end up doing late requests). Also calculate the request latency for debugging purposes and further usage (it could allow us to figure out the maximum request rate for example). https://bugzilla.gnome.org/show_bug.cgi?id=733959 https://bugzilla.gnome.org/show_bug.cgi?id=772330 2016-10-06 15:54:00 +0900 Jimmy Ohn * ext/opencv/gstopencvutils.cpp: opencv: Fix memory leak by gst_caps_to_string gst_caps_to_string function returned allocated memory. So, It should be freed using g_free function. https://bugzilla.gnome.org/show_bug.cgi?id=772499 2016-10-05 18:32:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: don't use g_thread_join() to join the navigation thread Using g_thread_join() in _finalize() handlers may result in a deadlock joining the current thread when the last reference is held by a signal handler. e.g.: error 'Resource deadlock avoided' during 'pthread_join (pt->system_thread, NULL)' The backtrace looks like this: [...] g_thread_join () gst_gl_window_finalize () gst_gl_window_x11_finalize () g_object_unref () g_value_unset () g_signal_emit_valist () g_signal_emit () gst_gl_window_send_mouse_event () gst_gl_window_mouse_event_cb () g_main_dispatch () [..] g_main_loop_run () gst_gl_window_navigation_thread () g_thread_proxy () start_thread () clone () 2016-10-05 18:28:48 +1100 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: fix leak of upload library object When only linking the element, the upload object will be created from _transform_caps() but will never be unreffed as the only case is in _stop(). Add an unref if non-NULL to a new finalize handler for this case. 2016-10-05 12:11:19 +1100 Matthew Waters * ext/vulkan/vkdisplay.c: vkdisplay: hold a weakref on the list of windows It's possible that the window may have been destroyed when a winsys event comes in for it. Fixes an assertion in make -C tests/check generic/states.check 2016-10-05 11:37:04 +1100 Matthew Waters * ext/vulkan/vkdevice.c: vkdevice: only unref the gstcontext query if non-NULL Fixes an assertion in make -C tests/check generic/states.check 2016-09-29 11:45:57 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglupload.c: tests/gl: make sure all GL commands are executed on the GL thread e.g. the final glGetError() must also be completed on the GL thread 2016-09-28 18:04:21 +1000 Matthew Waters * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: gl/win32: remove egl implementation It hasn't been used in ages and is dead code. 2016-09-13 22:07:05 +0900 Wonchul Lee * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add conditions to identify ATSC EAC3 https://bugzilla.gnome.org/show_bug.cgi?id=770528 2016-09-26 15:23:52 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: make parsing errors delsys-neutral DVB is a group of delivery standards but we support several others. While at this, make message formating more congruent. 2016-09-30 11:35:41 -0300 Thibault Saunier * hooks/pre-commit.hook: * meson.build: meson: Setup pre-commit hooks when configuring 2016-09-30 11:41:34 +0100 Tim-Philipp Müller * meson.build: meson: update version 2016-09-30 13:42:06 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Remove Return documentation for function returning void === release 1.9.90 === 2016-09-30 13:02:55 +0300 Sebastian Dröge * ChangeLog: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.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-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-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.9.90 2016-09-30 12:19:32 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-09-30 11:44:47 +0300 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2016-09-29 21:42:24 +0530 Arun Raghavan * ext/wayland/gstwaylandsink.c: waylandsink: Actually use buffer pool config after setting it up CID: 1373420 2016-09-29 13:36:11 +0300 Sergey Mamonov * ext/lv2/gstlv2filter.c: fix for https://bugzilla.gnome.org/show_bug.cgi?id=771871 2016-09-29 21:45:50 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: a2dpsink: Drop some dead-code Left over from the last cleanup. CID: 1373418 2016-09-29 14:32:15 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: fdkaacenc: fix accessing freed memory The buffer data is not always copied in _Fill, and will be read in _DecodeFrame. We unmap at the end of the function, whether we get there via failure or early out, and keep a ref to the buffer to ensure we can use it to unmap the memory even after _finish_frame is called, as it unrefs the buffer. Note that there is an access beyond the allocated buffer, which is only apparent when playing from souphttpsrc (ie, not from filesrc). This appears to be a bug in the bit reading code in libfdkaac AFAICT. https://bugzilla.gnome.org/show_bug.cgi?id=772186 2016-09-29 14:31:37 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: fdkaacdec: avoid memory corruption on decoding error The buffer size is expected to be in multiples of the sample size, not in bytes. https://bugzilla.gnome.org/show_bug.cgi?id=772186 2016-09-29 14:29:46 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: fdkaacenc: fix buffer leak https://bugzilla.gnome.org/show_bug.cgi?id=772186 2016-09-28 09:44:58 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: set framed=true on src caps This fixes muxing in MPEG TS. https://bugzilla.gnome.org/show_bug.cgi?id=772108 2016-05-05 15:53:57 +0900 Gwang Yoon Hwang * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: gl/dispmanx: Implements set_render_rectangle to adjust the position of window We cannot set the x, y coordinate of the video frame at the dispmanx at this point. We need to teach dispmanx backend to understand about set_render_rectangle API to draw a video with other UI. This patch keeps the current behavior which places video frame at the center of the display if there is no set_render_rectangle call to the dispmanx window. https://bugzilla.gnome.org/show_bug.cgi?id=766018 2016-09-28 15:20:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglviewconvert.h: gl: add necessary padding bytes to all public structs 2016-09-27 16:17:00 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: set transmux on the fdkaac lib Not doing so will fail to decode in a simple fdkaacenc ! fdkaacdec pipeline, though would work if this goes through a file. https://bugzilla.gnome.org/show_bug.cgi?id=772067 2016-09-27 16:15:44 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: do not error out of out of sync return The docs say we should continue feeding in data and decoding https://bugzilla.gnome.org/show_bug.cgi?id=772067 2016-09-27 09:08:51 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacenc.c: fdkaac: fix error with AOT_MP2_AAC_LC removed from libfdkaac API AOT_MP2_AAC_LC is a "pseudo AOT" which got removed after 0.1.4, and maps to AOT_AAC_LC. Remove mpegversion 2 from th caps to match. https://bugzilla.gnome.org/show_bug.cgi?id=772067 2016-09-26 16:30:02 +0100 Tim-Philipp Müller * sys/bluez/meson.build: meson: bluez: fix build 2016-09-26 16:38:04 +0300 Sebastian Dröge * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIConfiguration.h: * sys/decklink/linux/DeckLinkAPIDeckControl.h: * sys/decklink/linux/DeckLinkAPIDiscovery.h: * sys/decklink/linux/DeckLinkAPIModes.h: * sys/decklink/linux/DeckLinkAPITypes.h: * sys/decklink/linux/DeckLinkAPIVersion.h: * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: decklink: Update to SDK 10.8 OSX and Linux only, Windows needs someone on Windows to convert the .idl files to C source code. 2016-09-26 11:41:42 +0100 Olivier Crête * ext/fdkaac/gstfdkaacdec.c: fdkaac: fix mixup setting interleaved output https://bugzilla.gnome.org/show_bug.cgi?id=770455 2016-09-26 13:26:36 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Only report the initial duration if the query was successful 2016-09-26 11:15:25 +0900 Kyungyong Kim * gst/videoparsers/gsth265parse.c: h265parse: Fix parsing of multiple NALs in the hvcC box https://bugzilla.gnome.org/show_bug.cgi?id=771970 2016-09-25 17:38:15 +0100 Tim-Philipp Müller * sys/bluez/Makefile.am: bluez: dist new header file Fixes distcheck. 2016-09-24 22:39:38 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: a2dpsink: Don't try to set device caps on avdtpsink We can't actually configure the transport, so we should only be working with whatever we get. 2016-09-23 16:31:50 +0530 Arun Raghavan * sys/bluez/gstavdtpsink.c: avdtpsink: Chain event handling up to basesink 2016-09-23 16:04:43 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Clean up and make a2dpsink functional again Was crashing, and had a lot of cruft (like a capsfilter and a fakesink) that was no longer required. 2016-09-15 17:49:15 +0530 Arun Raghavan * sys/bluez/Makefile.am: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtpsrc.h: * sys/bluez/gstavrcputil.c: * sys/bluez/gstavrcputil.h: * sys/bluez/org.bluez.xml: avdtpsrc: Add support for AVRCP metadata Metadata from AVRCP is emitted as tags, and the duration from AVRCP is used in queries by avdtpsrc. 2016-09-24 10:49:10 -0400 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Properly offset and shift for all formats when converting And while at it, also clean up some code. 2016-09-24 10:05:16 -0400 Sebastian Dröge * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: Don't pass NULL strings to the colorspace / sampling parsing functions They assert on NULL. 2016-09-23 15:49:21 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Don't leak GValues in getcaps 2016-09-22 18:55:23 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Update our window size on configure event This is specific to when the waylandsink is not being embedded. In this patch we pass the render lock to the window so it can safely call gst_wl_window_set_render_rectangle() with the new size. https://bugzilla.gnome.org/show_bug.cgi?id=722343 2016-09-22 18:53:22 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Remove atomic operation We already take the render lock from the wlqueue thread in some other place which indicates that there is no use of this atomic instead of a proper locking mechanism. 2016-09-22 15:37:41 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Do not pre-configure proposed pool Upstream must configure the pool before using it. Pre-configuring the proposed pool could hide bugs in upstream elements. 2016-09-22 15:35:44 -0400 Nicolas Dufresne * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Properly draw black border in absence of viewporter When we don't have a viewporter (scaling support), we can't use the 1x1 scaleup image trick. Instead, we need to allocate a buffer with the same size as the area that need to have black background. 2016-09-22 10:55:03 +0200 Florian Zwoch * sys/winscreencap/gstdx9screencapsrc.c: dx9screencapsrc: throw error for invalid screen index Currently dx9screencapsrc prints a verbose warning in case the screen index is out of range for the current number of detected monitors. This value is then dropped. However there is no initial indication (beside the console print) if it worked or not. This may result in capturing an unwanted screen as it would capture the last set index that was not rejected. This patch sets the index regardless. Instead, the element throws an error when it tries to run or getting caps for an invalid index. https://bugzilla.gnome.org/show_bug.cgi?id=771817 2016-09-22 18:19:36 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: also free the GWeakRef when removing dead contexts Otherwise we leak GWeakRef's. Found with make -C tests/check libs/gstglcontext.valgrind 2016-09-21 15:51:52 -0700 Martin Kelly * gst-libs/gst/wayland/Makefile.am: wayland/Makefile.am: add missing libs libgstwayland is missing a dependency on $(GST_PLUGINS_BASE_LIBS), so add it. https://bugzilla.gnome.org/show_bug.cgi?id=771794 2016-09-21 15:07:50 -0400 Nicolas Dufresne * ext/wayland/wldisplay.c: waylandsink: Destroy viewporter when done https://bugzilla.gnome.org/show_bug.cgi?id=738079 2016-09-21 11:33:18 -0700 Martin Kelly * tests/check/Makefile.am: build: add missing $(GST_PLUGINS_BASE_LIBS) The linker flags for several plugins (dashdemux, mssdemux, hlsdemux) are missing $(GST_PLUGINS_BASE_LIBS), so add them so they can find -lgsttag and -lgstapp. https://bugzilla.gnome.org/show_bug.cgi?id=771780 2016-09-19 12:11:59 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Port to vmeta and GstVideoFrame This add support for non-standard strides to be used. Note that some extra work is needed for multi-plane format which may have a different GstMemory object per plane. This is not currently a problem since SHM interface is limited to 1 memory. 2016-09-19 12:08:20 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Don't propose multiple time the same buffer pool The buffer pool API does not allow multiple of owner. This otherwise lead to error when renegotiation take place. Aso consider the allocation query "need_pool" boolean. 2016-09-19 12:06:17 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Promote debug trace into error trace Otherwise those error may go unseen making debugging much harder. 2016-09-19 12:04:52 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Factor-out the pool creation 2016-09-16 15:41:11 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylansink: Implement _show_frame() This fixes the property show-preroll-frame expose by the VideoSink base class and removes redundant code. 2016-09-21 15:09:26 +0200 Joakim Johansson * tests/check/elements/rtponviftimestamp.c: rtponviftimestamp: Update unit tests after changing default value of D-bit The D bit shall always be set to true for the first buffer. https://bugzilla.gnome.org/show_bug.cgi?id=770221 2016-09-21 09:31:23 -0400 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Print the Decklink API error return values in debug output in all places 2016-09-20 18:28:29 +0100 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: fix distcheck some more 2016-09-13 11:18:27 +0200 Joakim Johansson * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: Change default value of D-bit The default value of D-bit is changed to TRUE so discontinuity is set for initial request and seek request as well. Only set the e_bit flag for the CUSTOM_DOWNSTREAM event if a cached buffer exists. https://bugzilla.gnome.org/show_bug.cgi?id=770221 2016-09-19 10:18:22 +0100 Tim-Philipp Müller * configure.ac: configure: fix --disable-external conditional "USE_VULKAN" was never defined 2016-09-19 16:54:43 +1000 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: reconfigure on passthrough changes Fixes an assertion when moving from passthrough to non-passthrough Without an explicit reconfigure, glfiter won't have created the GL resources such as the FBO, GL bufferpool, etc and basetransform will allocate sysmem buffers instead. 2016-09-16 13:43:50 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Remove some leftovers from external GstPlayer 2016-09-17 14:12:44 +0100 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: fix distcheck when wayland-scanner is not installed 2016-09-15 14:10:02 -0400 Nicolas Dufresne * ext/wayland/wldisplay.c: * ext/wayland/wlwindow.c: waylandsink: Make wl_viewporter optional This makes the viewporter interface optional. The end result is obviously far from optimal, though it greatly helps testing on older compostitors or gnome-wayland. We can make it strictly needed later when this new interface get widely adopted. 2016-06-14 16:34:35 -0700 Scott D Phillips * configure.ac: * ext/wayland/Makefile.am: * ext/wayland/scaler.xml: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: wayland: Update from scaler to viewporter protocol Signed-off-by: Scott D Phillips https://bugzilla.gnome.org/show_bug.cgi?id=767671 2016-09-15 14:58:35 +0200 Sebastian Dröge * tests/check/libs/player.c: player: Fix unit test for minor API change 2016-09-15 13:15:22 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Remove boolean return from set_subtitle_uri() It can't fail synchronously and is inconsistent with set_uri(). 2016-09-14 18:07:55 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't change state to PLAYING immediately if a seek is pending We first have to finish the seek (in PAUSED) and move to PLAYING once the seek is actually finished (unless a new one is pending then). 2016-09-14 11:30:48 +0200 Sebastian Dröge * configure.ac: configure: Depend on gstreamer 1.9.2.1 2016-09-08 11:57:52 +0900 Hyunjun Ko * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: map with READWRITE for overlay blend Just as in basetextoverlay [1], the frame to blend with the subtitles overlay should be mapped with flags GST_MAP_READWRITE, because gst_video_overlay_composition_blend() does both operations. 1. https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=1396f804 Signed-off-by: Víctor Manuel Jáquez Leal https://bugzilla.gnome.org/show_bug.cgi?id=771382 2016-09-13 20:08:19 +0200 Víctor Manuel Jáquez Leal * configure.ac: kmssink: update libdrm dependency to 2.4.55 The latest libdrm feature supported by kmssink is the universal plane, which was added in 2.4.55. Let's update the dependency to that version. https://bugzilla.gnome.org/show_bug.cgi?id=770146 2016-09-11 00:06:52 +0000 Graham Leggett * gst/mpegtsdemux/mpegtsbase.c: tsdemux: handle a NULL name in DVB short event descriptor Resolves the warning: GStreamer-WARNING **: Trying to set NULL string on field 'title' on taglist. https://bugzilla.gnome.org/show_bug.cgi?id=771198 2016-09-12 18:38:36 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also never have the SINK flag set on adaptivedemux 2016-09-12 12:19:50 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: Revert "decklinkvideosink: Scale down scheduled frame times to milliseconds" This reverts commit 3b7e0d7de32f0728259d601daa13b9eeec3dd3ce. It was a bug in the driver and is supposed to be fixed with 10.8 and newer. 2016-09-10 16:41:28 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix typo in new API Fixes supressed -> suppressed typo in previous commit https://bugzilla.gnome.org/show_bug.cgi?id=770627 2016-09-05 10:31:40 +0900 Wonchul Lee * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: prevent to propagate source flag to itself https://bugzilla.gnome.org/show_bug.cgi?id=770627 2016-09-10 20:51:27 +1000 Jan Schmidt * autogen.sh: * common: Automatic update of common submodule From b18d820 to f980fd9 2016-09-10 09:54:09 +1000 Jan Schmidt * autogen.sh: * common: Automatic update of common submodule From 2c31690 to b18d820 2016-09-09 23:24:01 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: meson/gl: use separate deps for gl and glx e.g. passing with_gl_api=gles2 would still build the glx code but not be linking against the libGL library which is where the glX* functions are located and would result in a linker error. Solved by checking for the libGL library if either opengl or glx may be needed and then disabling the corresponding deps as requested. 2016-09-09 16:55:23 +1000 Matthew Waters * ext/meson.build: * ext/vulkan/meson.build: * ext/vulkan/vkconfig.h.meson: meson: add build files for vulkan 2016-09-09 16:36:03 +1000 Matthew Waters * ext/gtk/meson.build: * ext/meson.build: meson: add build files for the gtk plugin 2016-09-09 11:08:53 +1000 Matthew Waters * ext/gl/meson.build: * ext/meson.build: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: * gst-libs/gst/meson.build: * meson_options.txt: * pkgconfig/meson.build: meson: add some starting build files for GL Currently only works on linux with egl/glx + wayland/x11 but the general principals have been layed out for adding the other GL platforms/winsys'. 2016-09-08 11:23:57 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Scale up to the screen dimension In most display sink, the logic is to use as much as possible of the given window. In this case, the window is the screen, hence it's logical to scale up. https://bugzilla.gnome.org/show_bug.cgi?id=767422 2016-09-08 11:21:09 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix selection of source region The source region was scaled for display before being passed to drmModeSetPlane, which resulted in a portion of the video being cropped. While when crop meta was present, the rectangle was not centered since we where using unscaled width/height. https://bugzilla.gnome.org/show_bug.cgi?id=767422 2016-09-08 08:40:59 +0100 Julien Isorce * gst-libs/gst/player/gstplayer.h: gstplayer: remove leftover update_interval api old: gst_player_set_position_update_interval new: gst_player_config_set_position_update_interval https://bugzilla.gnome.org/show_bug.cgi?id=769144 2016-09-01 19:46:31 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: add video/x-raw to the VulkanBuffer uploader Allows upstream elements that use our memory to passthrough without copying. 2016-09-01 19:43:59 +1000 Matthew Waters * ext/vulkan/vkutils.c: vkutils: set the last element of the layer array to NULL g_strv* functions require this to not read off the end of the array. 2016-09-07 20:11:55 +0100 Alistair Buxton * tests/examples/gl/clutter/Makefile.am: gl/examples: Really remove references to $(GST_PLUGINS_GL_*). These seem to have been missed in the previous commit to this file. https://bugzilla.gnome.org/show_bug.cgi?id=771023 2016-09-07 20:07:26 +0100 Alistair Buxton * gst-libs/gst/gl/Makefile.am: gl: Remove duplicate GL_CFLAGS in Makefile.am. https://bugzilla.gnome.org/show_bug.cgi?id=771021 2016-08-05 18:17:32 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmsallocator.c: kmssink: override stride if defined in driver Some kms drivers demands specific pitches over the ones calculated by GstVideoInfo. For example, intel driver demands strides round up 64. This patch queries the driver for the prefered pitch and overwrites it in the pool's GstVideoInfo structure. https://bugzilla.gnome.org/show_bug.cgi?id=768446 2016-09-06 16:05:53 -0300 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Use the event_full function for GstAggregatorPads Allowing us to tell GstPad why we are failing an event, which might be because we are 'flushing' even if the sinkpad is not in flush state at that point. 2016-09-06 13:13:39 +0800 Haihua Hu * ext/qt/gstqsgtexture.cc: qmlglsink: check qt_context_ first in GstQSGTexture::bind() When start qmlglsink app, it will set NULL buffer to GstQSGTexture in which case that qt_context_ will be a random value and cause gst_gl_context_activate() fail. https://bugzilla.gnome.org/show_bug.cgi?id=770925 2016-09-06 20:00:07 +1000 Matthew Waters * configure.ac: build/vulkan: fix winsys detection based on the previously set variables The X11/Wayland winsys checks weren't being used to enable the vulkan element. Use them. 2016-09-06 11:02:06 +0200 Philippe Normand * ext/srtp/gstsrtpenc.c: srtpenc: prevent deadlock in create_session Temporarily release the object lock which is needed to post error messages on the bus. https://bugzilla.gnome.org/show_bug.cgi?id=770933 2016-09-05 22:30:01 -0300 Thibault Saunier * meson.build: meson: Fix building with meson 0.34 when using subprojects When using subproject meson.source_root() returns the root directory of the toplevel project which break build. Upstream meson bug: https://github.com/mesonbuild/meson/issues/722 2016-09-05 12:22:17 -0300 Thibault Saunier * meson.build: meson: Bump version to 1.9.2 2016-09-05 14:44:24 +1000 Alessandro Decina * ext/gl/gstgluploadelement.c: glupload: create the GstGLUpload object in ::transform_caps Previously it was created in the init function and destroyed in ::stop, which lead to segfaults when reusing the element. Now the upload object is created in ::transform_caps if it is NULL, which is the earliest we need it. The other vfuncs already bail out if the upload object is NULL, which means that negotiation wasn't done. 2016-08-29 11:40:54 +0900 Wonchul Lee * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Support ATSC EAC3 EAC3 bit streams shall be identified with a stream_type value of 0x87 when transmitted as PES streams conforming to ATSC-published standards. It is specified in ATSC Standard A/52. https://bugzilla.gnome.org/show_bug.cgi?id=770528 2016-09-01 14:25:58 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix-up last commit that was not meant to be pushed yet 2016-09-01 14:18:33 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix indentation 2016-09-01 14:17:48 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Require a clock when going from PAUSED_TO_PLAYING and don't crash if there is none Also when going from PLAYING_TO_PAUSED, the clock might've been unset in the meantime, e.g. because the element was removed from its surrounding bin. 2016-09-01 12:28:22 +0300 Sebastian Dröge * configure.ac: Back to development === release 1.9.2 === 2016-09-01 12:27:59 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * 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-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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.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-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-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.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: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.9.2 2016-09-01 11:24:37 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-08-30 16:21:25 +0300 Sebastian Dröge * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: Conditionally compile qtkitvideosrc The API was deprecated in 10.9 and apparently does not exist in the SDK for macOS Sierra anymore. https://bugzilla.gnome.org/show_bug.cgi?id=770587 2016-08-31 04:26:43 +1000 Jan Schmidt * gst-libs/gst/gl/gstglframebuffer.h: gl: Remove extra duplicate typedef of GstGLFramebuffer It's triggering a warning building git master on OSX 2016-08-29 16:57:42 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests/glupload: support opengl3 properly instead of spewing GL errors 2016-08-29 16:52:44 +1000 Matthew Waters * pkgconfig/gstreamer-gl.pc.in: gl/pkgconfig: add the lib include dir to the list of includes 714d8aa in core removed this include dir from it's pkgconfig file. https://bugzilla.gnome.org/show_bug.cgi?id=770523 2016-08-29 15:43:10 +1000 Alessandro Decina * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglupload.c: glupload: fix tests and check for the new RECONFIGURE behaviour The tests were broken since 91fea30, which changed glupload to return GST_GL_UPLOAD_RECONFIGURE if the texture target in the input buffers doesn't match the texture-target configured in the output caps. This commit fixes that and adds more checks for the new behaviour. 2016-08-19 11:12:10 -0700 Thibault Saunier * ext/gme/gstgme.c: * ext/sndfile/gstsfsink.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst/aiff/aiffparse.c: * gst/midi/midiparse.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mxf/mxfdemux.c: * gst/nuvdemux/gstnuvdemux.c: * gst/tta/gstttaparse.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: * sys/applemedia/avfassetsrc.m: Use the new API to post flow ERROR messages on the bus https://bugzilla.gnome.org/show_bug.cgi?id=770158 2016-08-26 20:12:21 +0300 Sebastian Dröge * tests/check/elements/dash_mpd.c: dash: Fix build of unit test 2016-08-25 20:50:11 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Add properties to select maximum allowed width/height and framerate https://bugzilla.gnome.org/show_bug.cgi?id=770408 2016-08-26 16:04:27 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Fix compiler warning on OS X While gint64 and int64_t are always the same, clang does not agree with that. /Applications/Xcode.app/Contents/Developer/usr/bin/make -C decklink CXX libgstdecklink_la-gstdecklinkaudiosink.lo gstdecklinkaudiosink.cpp:675:79: error: cannot initialize a parameter of type 'int64_t *' (aka 'long long *') with an rvalue of type 'gint64 *' (aka 'long *') ret = buf->output->attributes->GetInt (BMDDeckLinkMaximumAudioChannels, &max_channels); ^~~~~~~~~~~~~ ./linux/DeckLinkAPI.h:692:87: note: passing argument to parameter 'value' here virtual HRESULT GetInt (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ int64_t *value) = 0; ^ 2016-08-26 22:51:48 +1000 Alessandro Decina * sys/applemedia/corevideomemory.c: applemedia: fix compiler warning 2016-08-26 15:48:36 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Scale down scheduled frame times to milliseconds Scale down to milliseconds, otherwise at least some hardware has problems scheduling the frames (or schedules them too slow) and we run out of available frames. https://bugzilla.gnome.org/show_bug.cgi?id=770282 2016-08-26 14:08:11 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Add support for 8 and 16 channels 2016-08-26 17:37:54 +1000 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.m: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/corevideomemory.c: * sys/applemedia/corevideomemory.h: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/iosurfacememory.c: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: changes to make GL memory mappable on CPU on iOS This commit introduces IOSGLMemory which is a GLMemory that falls back to GstAppleCoreVideoMemory for CPU access. This is a temporary solution until IOSurface gets exposed as a public framework on iOS and so we can use IOSurfaceMemory on both MacOS and iOS. https://bugzilla.gnome.org/show_bug.cgi?id=769210 2016-08-22 17:18:27 +1000 Alessandro Decina * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gstglupload: make the GLMemoryUpload method output the correct texture-target Now when used with video/x-raw as input, the GLMemoryUpload method checks for ->tex_target in input GLMemory(es) and sets the output texture-target accordingly. Fixes video corruption with a pipeline like avfvideosrc ! video/x-raw ! glimagesink where on macos avfvideosrc pushes RECTANGLE textures but glupload was configuring texture-target=2D as output. 2016-08-24 09:41:08 -0300 Thibault Saunier * gst-libs/gst/mpegts/mpegts_enum.py: * gst/mpegtsdemux/meson.build: * meson.build: meson: Make mpegts lib build when using subprojects The headers passed as parametter are relative to the build dir basically "../subproject/gst-plugins-bad/gst-libs/gst/mpegts/XXX.h" but that does not match what is needed at build time when building as subproject, also we always add current dir as include_dir so we are safe including directly. And link mpegtsdemux against the 'math' library as it is needed. 2016-08-26 03:46:39 +1000 Jan Schmidt * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: Expose the opengl plugin and element docs 2016-08-26 02:20:11 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Handle if update_caps() returns EMPTY Don't assume the returned caps from update_caps() is non-empty. 2016-08-26 02:07:27 +1000 Jan Schmidt * ext/gl/gstglvideomixer.c: gl: Update glvideomixer doc 2016-08-26 02:06:00 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglviewconvert.c: gl: Add/update docs for glviewconvert, glstereomix Add some example pipelines for glstereomix, and fix up the example pipelines for glviewconvert 2016-08-26 00:29:34 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: glstereomix: Fix caps negotiation The videoaggregator negotiation sequence changed some time back and broke glstereomix. Instead of doing nego incorrectly in the find_best_format() vfunc, do it directly in the update_caps() method. 2016-08-25 15:26:49 +1000 Jan Schmidt * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix texture target fixation Don't set the chosen texture-target into the wrong structure. The input caps may not be writable, and in any case - the intention was to configure the othercaps. Also, remove an extra unref - the othercaps ref is consumed by gst_caps_make_writable already. 2016-08-25 19:35:13 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Enable bitrate selection for trick mode streaming again And scale the bitrate with the absolute rate (if it's bigger than 1.0) to get to the real bitrate due to faster playback. This allowed in my tests to play a stream with 10x speed without buffering as the lowest bitrate is chosen, instead of staying/selecting the highest bitrate and then buffering all the time. It was previously disabled for not very well specified reasons, which seem to be not valid anymore nowadays. 2016-08-25 16:33:17 +0200 Josep Torra * tests/check/elements/.gitignore: gitignore: add missing dash_isoff file 2016-08-25 12:45:33 +0200 Josep Torra * tests/check/Makefile.am: build: fix gst-uninstalled build in osx Fixes clang: error: argument unused during compilation: '-pthread' when building the test programs. 2016-08-25 14:35:59 +0200 Josep Torra * configure.ac: * tests/check/Makefile.am: build: unconditionally check for video, audio and pbutils modules Check for modules in configure and use GST_*_LIBS vars to link with the libraries instead of hardcoding them. 2016-07-26 19:55:13 +0200 Xabier Rodriguez Calvar * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: implement GstVideoDirection interface It implements now this interface with its video-direction property. Values are changed to GstVideoOrientationMethod but they have the same value than the originals. https://bugzilla.gnome.org/show_bug.cgi?id=768687 2016-08-24 19:43:55 +0300 Sebastian Dröge * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Implement some automatic bitrate selection Based on sample rate and channel count, see http://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC#Recommended_Sampling_Rate_and_Bitrate_Combinations 2016-08-24 14:15:09 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: On redirects, remember the redirect URI separately and don't consider this an URI property change The application does not know anything about the redirect, and changing its URI internally will cause confusion. Also don't reset the subtitle URI. 2016-08-24 14:10:41 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't report spurious STOPPED state changes when doing transient changes there 2016-08-24 13:01:46 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Ensure that rate is initialized to 1.0 2016-08-24 10:16:00 +0000 Fredrik Fornwall * sys/opensles/Makefile.am: opensles: Add opensles.h to noinst_HEADERS https://bugzilla.gnome.org/show_bug.cgi?id=770326 2016-08-23 14:37:17 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: De-duplicate rate setting code and always use the property 2016-08-23 14:33:11 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Protect setter/getter for the configuration with a mutex 2016-08-23 14:32:24 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Move subtitle URI setter next to the uri setter It's confusing to have them a couple of hundred lines apart. 2016-08-17 19:59:17 +0200 Matej Knopp * sys/applemedia/vtdec.c: vtdec: fix MPEG-2 video caps Add systemstream=false to caps, otherwise the decoder may be picked for MPEG-PS files. Also parsed=true, as video toolbox expects entire frame in VTDecompressionSessionDecodeFrame. https://bugzilla.gnome.org/show_bug.cgi?id=770049 2016-08-23 02:13:19 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c.rej: * gst-libs/gst/adaptivedemux/set_state_keep.patch: adaptivedemux: Fix the previous commit Remove extra files that were not meant to be added to the commit 2016-08-23 01:57:55 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c.rej: * gst-libs/gst/adaptivedemux/set_state_keep.patch: adaptivedemux: Fix broken updates loop on live streams Prevent the manifest update loop from looping endlessly after a seek event, by clearing the variable that tells the task function not to immediately exit. 2016-08-18 10:06:27 +0200 Michael Olbrich * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix stream exposure condition The new streams should not be exposed until all streams are done with the current fragment. The old code is incorrect and actually only checked the current stream. Fix this by properly checking all streams. Also, ignore the current stream. The code is only reached when the current stream finished downloading and since 07f49f15b1196cc9fa0d45af91149a35fce123b9 ("adaptivedemux: On EOS, handle it before waking download loop") download_finished is set after gst_adaptive_demux_stream_advance_fragment_unlocked() is called. Without this HLS playback with multiple streams is broken, because the new streams are never exposed. https://bugzilla.gnome.org/show_bug.cgi?id=770075 2016-08-21 16:21:07 +0100 Tim-Philipp Müller * ext/mpg123/meson.build: meson: remove unused mpg123 build file mpg123 was moved to ugly. 2016-08-12 21:21:45 +0530 Nirbheek Chauhan * .gitignore: * config.h.meson: * ext/assrender/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/flite/meson.build: * ext/fluidsynth/meson.build: * ext/hls/meson.build: * ext/kate/meson.build: * ext/libde265/meson.build: * ext/libmms/meson.build: * ext/meson.build: * ext/mpg123/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/schroedinger/meson.build: * ext/smoothstreaming/meson.build: * ext/soundtouch/meson.build: * ext/spandsp/meson.build: * ext/srtp/meson.build: * ext/srtp/srtp_mkenum.py: * ext/voaacenc/meson.build: * ext/webp/meson.build: * ext/x265/meson.build: * ext/zbar/meson.build: * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/base/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts_enum.py: * gst-libs/gst/player/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/video/meson.build: * gst-libs/meson.build: * gst/accurip/meson.build: * gst/adpcmdec/meson.build: * gst/adpcmenc/meson.build: * gst/aiff/meson.build: * gst/asfmux/meson.build: * gst/audiobuffer/meson.build: * gst/audiofxbad/meson.build: * gst/audiomixer/meson.build: * gst/audiovisualizers/meson.build: * gst/autoconvert/meson.build: * gst/bayer/meson.build: * gst/camerabin2/meson.build: * gst/cdxaparse/meson.build: * gst/coloreffects/meson.build: * gst/compositor/meson.build: * gst/dataurisrc/meson.build: * gst/dccp/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/games/meson.build: * gst/gaudieffects/meson.build: * gst/gdp/meson.build: * gst/geometrictransform/meson.build: * gst/hdvparse/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/meson.build: * gst/midi/meson.build: * gst/mixmatrix/meson.build: * gst/mpeg1sys/meson.build: * gst/mpegdemux/meson.build: * gst/mpegpsmux/meson.build: * gst/mpegtsdemux/meson.build: * gst/mpegtsmux/meson.build: * gst/mve/meson.build: * gst/mxf/meson.build: * gst/nuvdemux/meson.build: * gst/onvif/meson.build: * gst/overlay/meson.build: * gst/patchdetect/meson.build: * gst/pcapparse/meson.build: * gst/pnm/meson.build: * gst/rawparse/meson.build: * gst/real/meson.build: * gst/removesilence/meson.build: * gst/rtjpeg/meson.build: * gst/sdi/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/tta/meson.build: * gst/vbidec/meson.build: * gst/videofilters/meson.build: * gst/videoframe_audiolevel/meson.build: * gst/videomeasure/meson.build: * gst/videoparsers/meson.build: * gst/videosignal/meson.build: * gst/vmnc/meson.build: * gst/y4m/meson.build: * gst/yadif/meson.build: * meson.build: * meson_options.txt: * pkgconfig/meson.build: * sys/bluez/meson.build: * sys/d3dvideosink/meson.build: * sys/directsound/meson.build: * sys/dvb/meson.build: * sys/meson.build: * sys/wasapi/meson.build: * sys/winks/meson.build: * sys/winscreencap/meson.build: Add support for Meson as alternative/parallel build system https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller Matej Knopp Jussi Pakkanen (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. 2016-08-18 17:46:19 +0530 Nirbheek Chauhan * ext/dts/gstdtsdec.c: * ext/resindvd/resindvdsrc.h: * gst/bayer/gstbayer2rgb.c: * gst/dccp/gstdccp_common.h: * gst/librfb/d3des.c: * sys/fbdev/gstfbdevsink.c: plugins: Use stdint.h instead of _stdint.h _stdint.h is generated by Autotools and we don't really need it. All supported platforms now ship with stdint.h. The only stickler was MSVC, and since Visual Studio 2015 it also ships stdint.h now. 2016-08-12 21:51:17 +0530 Nirbheek Chauhan * win32/common/libgstgl.def: win32: Update libgstgl.def 2016-03-02 00:53:44 +0530 Nirbheek Chauhan * gst-libs/gst/codecparsers/nalutils.c: codecparsers: Explicitly export functions marked inline On MSVC, inline functions are not available outside of a file unless explicitly exported 2016-08-19 12:24:58 +0100 Luis de Bethencourt * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typo in comment Small typo in the comment explaining the code fixed by the previous commit. Fixing it. 2016-08-19 14:19:38 +0300 Sebastian Dröge * gst/rawparse/gstrawvideoparse.c: rawvideoparse: Revert last commit and actually remember the physically last plane Instead of just always taking the last one as before. 2016-08-19 11:57:33 +0100 Luis de Bethencourt * gst/rawparse/gstrawvideoparse.c: rawvideoparse: remove unused assignment Value in last_plane will be overwritten before used, remove unused asignment. Fixes commit 91cf5ac69f9c99fe41d60f42b4174915dd135e7b CID 1371462 2016-08-18 18:55:41 +0200 Philippe Renon * ext/daala/gstdaaladec.c: daala: fix typo related compilation error https://bugzilla.gnome.org/show_bug.cgi?id=770102 2016-08-19 11:02:46 +0100 Tim-Philipp Müller * configure.ac: * sys/Makefile.am: * sys/applemedia-nonpublic/Makefile.am: * sys/applemedia-nonpublic/bufferfactory.h: * sys/applemedia-nonpublic/bufferfactory.m: * sys/applemedia-nonpublic/celapi.c: * sys/applemedia-nonpublic/celapi.h: * sys/applemedia-nonpublic/celvideosrc.c: * sys/applemedia-nonpublic/celvideosrc.h: * sys/applemedia-nonpublic/cmapi.c: * sys/applemedia-nonpublic/cmapi.h: * sys/applemedia-nonpublic/coremediabuffer.c: * sys/applemedia-nonpublic/coremediabuffer.h: * sys/applemedia-nonpublic/coremediactx.c: * sys/applemedia-nonpublic/coremediactx.h: * sys/applemedia-nonpublic/corevideobuffer.c: * sys/applemedia-nonpublic/corevideobuffer.h: * sys/applemedia-nonpublic/cvapi.c: * sys/applemedia-nonpublic/cvapi.h: * sys/applemedia-nonpublic/dynapi-internal.h: * sys/applemedia-nonpublic/dynapi.c: * sys/applemedia-nonpublic/dynapi.h: * sys/applemedia-nonpublic/mioapi.c: * sys/applemedia-nonpublic/mioapi.h: * sys/applemedia-nonpublic/miovideodevice.c: * sys/applemedia-nonpublic/miovideodevice.h: * sys/applemedia-nonpublic/miovideosrc.c: * sys/applemedia-nonpublic/miovideosrc.h: * sys/applemedia-nonpublic/mtapi.c: * sys/applemedia-nonpublic/mtapi.h: * sys/applemedia-nonpublic/plugin.m: applemedia-nonpublic: remove bitrotten plugin that's no longer needed 2016-08-19 19:46:24 +1000 Florian Zwoch * sys/applemedia/avfvideosrc.m: avfvideosrc: account for retina displays when capturing screens Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=770030 2016-08-19 17:11:13 +1000 Matthew Waters * configure.ac: build: bump graphene requirement to 1.4 2016-08-19 15:35:49 +1000 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: rewrite the inverse transformation logic It now returns the correct values for both orthographic and perspective projections and takes into account the aspect ratio of the video, handles the Y-flipping in GL and by us and uses some more helpers from graphene. 2016-07-01 16:18:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: marshal gst_gl_window_resize through the window loop saves having every caller do it themselves. 2016-06-30 23:06:43 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: use multi-threaded safe event wayland API Multiple threads may be accessing the wayland fd at the same time which requires the use of special wayland API to deal with to ensure nobody will steal reads and cause a stall for anyone else. 2016-07-01 00:15:55 +1000 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: gl/examples/fxtest: fix up for wayland support - Pass the wayland display to gst - Redrawing on resize is no longer needed. 2016-08-17 16:21:34 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: warn on ignored key/value pairs Otherwise at runtine, users get the misleading parsing-OK message with no info on, for example, properties that failed to map because of a typo. 2016-08-16 15:35:39 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: handle problems parsing dvbv5 config keys 2016-08-18 15:28:33 +0300 Sebastian Dröge * ext/mplex/gstmplex.cc: mplex: Don't start task (yet/again) on pad release if we're in READY or NULL Fixes spurious segfault in unit test, where the task was started again during shutdown when all pads were removed... and was then still running while the element was finalized. 2016-08-18 13:21:54 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: In KEY_UNITS trick mode, download all I-frames and not only IDR 2016-08-08 17:54:46 +0200 Carlos Rafael Giani * tests/check/elements/.gitignore: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Fix and extend unit tests * Add caps change test to unit tests * Cleanup leftover buffers after each unit test * Add missing rawvideoparse entry in .gitignore https://bugzilla.gnome.org/show_bug.cgi?id=769637 2016-08-16 09:31:40 +0200 Carlos Rafael Giani * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * tests/check/elements/rawvideoparse.c: rawvideoparse: Compute plane offsets & strides if no custom ones are set This is useful to ensure that the offsets and strides are computed if only width, height, format etc. in the property config are set. https://bugzilla.gnome.org/show_bug.cgi?id=769797 2016-08-16 18:46:49 +0300 Sergei Saveliev * sys/applemedia/avfassetsrc.m: avfassetsrc: Don't escape the URI another time in another location too One location was forgotten in a913a0b9679dd58945ad105d240db45595fdaba6 https://bugzilla.gnome.org/show_bug.cgi?id=767492 2016-08-16 20:33:21 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstegl.h: gl/egl: fix inverted typedef 2b6841d had an inverted typedef defining ginptr and EGLAttrib. Fix that. 2016-08-16 10:37:28 +0300 Sebastian Dröge * ext/timidity/gstwildmidi.c: wildmidi: Fix compilation with wildmidi 0.4 Old versions used char* for the data, new versions use int8_t*. They're often not the same and differ in signedness. 2016-08-16 16:51:02 +1000 Matthew Waters * configure.ac: * gst-libs/gst/gl/egl/gstegl.h: gl/build: add configure check for possibly missing EGLAttrib Fixes the build on older android targets. 2016-07-13 17:15:44 +0800 Song Bing * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl/dmabuf: Wrong attribute list type for EGL 1.5 For EGL 1.5 spec, the attribute list type should be EGLAttrib. https://bugzilla.gnome.org/show_bug.cgi?id=768602 2016-08-15 16:14:25 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstglcontext.c: glcontext: fix race joining thread on finalize https://bugzilla.gnome.org/show_bug.cgi?id=769939 2016-08-16 00:40:53 +1000 Jan Schmidt * ext/qt/gstqtglutility.cc: qt: Use wglShareLists() workaround unconditionally. Sometimes wglCreateContextAttribsARB() exists, but isn't functional (some Intel drivers), so it's easiest to do the workaround unconditionally. 2016-08-15 16:37:44 +1000 Jan Schmidt * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: winks: Fix RGB frame flipping and postprocessing Uncompressed RGB frames can be (usually are) bottom-up layout in DirectShow, and the code to flip them wasn't properly ported from 0.10. Fix it. Fix post-processing of RGB buffers. We need a writable buffer, but the requests pool is holding an extra ref. This could use more fixing to use a buffer pool 2016-08-12 22:17:25 +1000 Jan Schmidt * sys/winks/gstksvideosrc.c: winks: Give the ksvideosrc PRIMARY rank It's the primary video source on Windows, so give it a rank for autoplugging by camerabin and friends 2016-08-12 22:16:33 +1000 Jan Schmidt * sys/winks/ksvideohelpers.c: winks: Fix swapped RGBx/RGB caps mapping, and endianness. The RGBx and RGB format mappings were reversed. What Windows calls RGB are laid out as BGR in our parlance, so switch that too 2016-08-08 13:41:14 +1000 Jan Schmidt * ext/qt/gstqtglutility.cc: qt: Move debug statement to after the category init Don't output debug to an uninitialised debug category. 2016-08-11 12:19:59 +0200 Sebastian Dröge * tests/check/Makefile.am: dashdemux: Disable unit test for the time being It uses random data streams but dashdemux nowadays actually looks into the streams and doesn't like randomness very much. The tests should probably just become validate tests on real streams. https://bugzilla.gnome.org/show_bug.cgi?id=769553 2016-08-11 12:11:22 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: Revert "Revert "dashdemux: When doing SIDX seeking, return instead of overriding the timestamp with 0 from the MPD seeking method"" This reverts commit aea2c13fc1672a7260679d706d0a084a34ba7531. 2016-08-04 14:47:41 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: When doing chunked downloading on SIDX, clip requests on the SIDX entry boundaries https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-08-02 08:47:55 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Collect average moof and first sync sample sizes And always request those in the beginning so that ideally we get the moof and the first sync sample all together with the first HTTP request. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-08-02 08:35:26 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Download any sync-sample following the moof directly in key-units only mode We don't have to do yet another additional request but can just download the data directly. Also unify the key-unit only mode buffer pushing and extract it into its own function now that it became more complicated. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-29 12:50:58 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: If a fragment contains no sync samples, disable key-unit mode https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-29 12:32:50 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Remember if for a stream we could do key-units only mode This makes sure we don't even try going into that mode if we previously saw that the stream does not have the suitable metadata. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-29 11:54:21 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Also allow key-unit only mode if (some) sample flags are given by trex but we can still find sync frames https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-12 20:09:52 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Use chunked downloading for the moof in KEY_UNITS mode Allows us to reuse the HTTP connection and reduce latencies a lot. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-12 10:22:43 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add API for allowing subclasses to download URLs in chunks This allows to gradually download part of a fragment when the final size is not known and only a part of it should be downloaded. For example when only the moof should be parsed and/or a single keyframe should be downloaded. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-06-01 14:02:11 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Mark every first buffer of moov, sidx, moof and mdat as DISCONT in keyframe-only mode We need to mark every first buffer of a key unit as discont, and also every first buffer of a moov and moof. This ensures that qtdemux takes note of our buffer offsets for each of those buffers instead of keeping track of them itself from the first buffer. We need offsets to be consistent between moof and mdat https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-28 10:53:49 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Only enable key-unit trick mode for video streams https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-31 15:12:49 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Only do keyframe-only playback if the corresponding seek flag is given https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-30 12:09:34 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Implement downloading of only sync samples https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-30 11:15:03 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Store parsed moof and extract offsets of sync samples in it https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-02 17:11:31 +0300 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/dash_isoff.c: * tests/check/elements/dash_isoff.h: dash: Add test for parsing a moof box https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-02 16:03:56 +0300 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/dash_isoff.c: dash: Add unit test for ISOBFF box header parsing https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-04-07 21:33:51 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dashdemux: Implement parsing of moof box https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-04-07 13:34:57 +0300 Sebastian Dröge * ext/dash/gstisoff.c: dashdemux: Move code around to keep all sidx related functions together https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-04-07 12:57:13 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dashdemux: Store box fourccs in the header at a central place https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-03-28 13:45:36 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Implement parsing of ISOBMFF boxes https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-03-16 13:48:09 +0200 Sebastian Dröge * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dash: Add helper for parsing box headers https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-08-10 22:50:12 +0000 xlazom00 * ext/x265/gstx265enc.c: x265enc: Enable aspect ratio x265 encoder need aspectRatioIdc == X265_EXTENDED_SAR if we want to use sarWidth/sarHeight https://bugzilla.gnome.org/show_bug.cgi?id=769716 2016-08-08 13:10:12 +0200 Josep Torra * ext/openjpeg/gstopenjpegenc.c: openjpegenc: use the corrent enumeration Fixes the following error when building in osx. error: implicit conversion from enumeration type 'GstJPEG2000Colorspace' to different enumeration type 'GstJPEG2000Sampling' 2016-08-08 11:28:44 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Fix call to realloc() to allocate the correct size of items 2016-08-07 20:53:30 +0100 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: fdkaac: actually build and dist 2016-08-06 23:31:23 +0000 xlazom00 * ext/hls/Makefile.am: * gst/timecode/Makefile.am: hls, timecode: fix linking https://bugzilla.gnome.org//show_bug.cgi?id=769587 2016-08-07 12:20:16 +0300 Sebastian Dröge * ext/fdkaac/Makefile.am: * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: * ext/fdkaac/plugin.c: fdkaac: Add FDK AAC based decoder element Missing is support for error concealment, etc. 2016-08-07 11:39:07 +0300 Sebastian Dröge * ext/fdkaac/Makefile.am: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: * ext/fdkaac/plugin.c: fdkaac: Add FDK AAC based encoder element This currently only handles LC profile and exposes a bitrate property, but handles up to 7.1 channels. See TODO list for missing features. 2016-08-07 08:51:06 +0300 Sebastian Dröge * configure.ac: * ext/fdkaac/Makefile.am: * ext/fdkaac/plugin.c: fdkaac: Initial plugin skeleton 2016-08-01 11:45:30 +0200 Bernhard Miller * gst/aiff/aiffparse.c: aiffparse: keep end_offset when seeking After seeking in aiff files the information about the data end offset is discarded, leading to audio artifacts with metadata chunks at the end of a file. This patch retains the end offset information after a seek event. https://bugzilla.gnome.org//show_bug.cgi?id=769376 2016-08-06 16:15:33 +0100 Tim-Philipp Müller * gst/dvdspu/gstdvdspu.c: dvdspu: don't crash if video frame could not be mapped As might happen with e.g. vaapi and the test file from https://bugzilla.gnome.org/show_bug.cgi?id=736227 2016-08-05 09:16:58 +0200 Edward Hervey * ext/dash/gstdashdemux.c: Revert "dashdemux: When doing SIDX seeking, return instead of overriding the timestamp with 0 from the MPD seeking method" This reverts commit 947656cfd22b75f914d5abe0af82396787f67564. This makes all dash seeking tests fail. Needs more testing to fully understand what's going wrong. Revert ok'd by Sebastian 2016-05-31 19:21:17 +0300 Vivia Nikolaidou * gst/timecode/Makefile.am: * gst/timecode/gsttimecodewait.c: * gst/timecode/gsttimecodewait.h: * gst/timecode/plugin.c: timecodewait: New element to wait for a specific timecode timecodewait receives a timecode as an argument (either as string or as GstVideoTimeCode - one is gst-launch-friendly and the other is code-friendly), and it will drop all audio and video buffers until that timecode has been reached. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-20 18:17:52 +0300 Vivia Nikolaidou * configure.ac: * gst/timecode/Makefile.am: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: * gst/timecode/plugin.c: timecodestamper: New element to attach SMPTE timecode to buffers The timecodestamper element attaches a SMPTE timecode to each video buffer. This timecode corresponds to the current stream time. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-15 17:25:44 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Add support for GstVideoTimeCode The timecode will be fetched from the video buffer and outputted on the decklink video sink. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-15 16:04:14 +0300 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Add support for GstVideoTimeCode The timecode will be fetched from the decklink source and attached to the video buffer. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-08-04 23:14:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: add missing rgb16 and bgr16 video formats in switch Fixes an assertion that code should not be reached https://bugzilla.gnome.org/show_bug.cgi?id=769462 2016-08-04 22:28:13 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hls: Avoid potential NULL pointer dereference. Fixes CID 1364753 2016-08-04 22:21:16 +1000 Jan Schmidt * ext/hls/m3u8.c: hls: Avoid coverity warning about access off the end of an array. Fixes CID 1364755 2016-08-04 14:42:34 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: When doing SIDX seeking, return instead of overriding the timestamp with 0 from the MPD seeking method We don't need to call the latter at all as we're definitely in this period and the segment is selected via the SIDX. This is especially important when doing SNAP seeks, as otherwise we would always start from the beginning of the period (usually 0) again. 2016-08-04 11:08:30 +0100 Luis de Bethencourt * ext/hls/m3u8.c: hls: m3u8: remove impossible condition After the check in line 1,111, media->uri can't be NULL. So the two checks for GST_HLS_MEDIA_TYPE_CLOSED_CAPTIONS are the same, removing the redundant one which goes to cc_unsupported. CID 1364752 2016-08-04 04:53:50 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Don't output pending data after error If the last_ret status is not OK, skip output of any pending PCR scan buffer, similarly to how the pending decryption buffer is handled above. 2016-08-04 04:29:38 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: On EOS, handle it before waking download loop Otherwise, if the download loop wakes too quickly, it might miss the last_ret value update from the processing thread and loop again. 2016-08-04 01:51:37 +1000 Jan Schmidt * ext/hls/gsthlsdemux-util.c: hlsdemux: Include config.h and add header in utils In gsthlsdemux-util.c, include config.h before any other headers, and add a copyright / license header. 2016-07-13 11:02:23 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix draining on wrong programs When draining a program, we might send a newsegment event on the pads that are going to be removed (and then the pending data). In order to do that, calculate_and_push_newsegment() needs to know what list of streams it should take into account (instead of blindly using the current one). All callers to calculate_and_push_newsegment() and push_pending_data() can now specify the program on which to act (or NULL for the default one). 2016-07-12 15:58:40 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix GAP synchronization without a valid PCR PID For streams that don't have a valid PCR PID, we just use the latest PTS from any given stream. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2016-05-31 13:09:43 +0200 Michael Olbrich * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: handle pcr_pid == 0x1fff Streams without PCR make senses in HLS, where the playlist timestamps can be used to seek or calculate the duration. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2015-05-10 20:10:49 +0200 Arnaud Vrac * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: do not abort playback when no PCR were found during initial scan Seeking will not be possible in those streams but at least the can be played. Note scanning is only done when tsdemux is configured in pull mode. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2015-05-09 15:52:22 +0200 Arnaud Vrac * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: only wait for PCR when PCR pid is set Streams without PCR make senses in HLS, where the playlist timestamps can be used to seek or calculate the duration. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2016-08-03 04:18:18 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hls: Fix compiler warning for possibly uninit variable 2016-07-28 14:22:02 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: seek all streams 2016-05-25 11:23:59 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: simplify gst_hls_demux_seek() Don't initialize current_sequence. It is always overwritten in the walk loop. 2016-05-24 15:23:12 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: don't download the last fragment when seeking beyond the end of the track It's not used anyways. 2016-07-12 23:05:55 +1000 Jan Schmidt * ext/hls/gsthlsdemux-util.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Add support for ID3 tag parsing Parse start PTS out of the ID3 tags in audio fragments. Informational only for now. 2016-02-24 16:57:16 +1100 Jan Schmidt * ext/hls/Makefile.am: * ext/hls/gsthlsdemux-util.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Do some reading and dumping of PCRs Read PCRs out of the MPEG-TS stream in a basic way and (for now) just log them 2016-03-05 03:08:55 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Only use the primary stream for bitrate selection. When playing alternate rendition auxilliary streams, ignore them in bitrate measurement (for now). 2016-07-15 16:24:17 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Only select video and audio streams by default Ignore subtitle streams for now, because the different fragment duration causes problems switching bitrates w/ decodebin2 group draining. 2016-02-25 01:58:25 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Publish all media for alternate renditions. Create an output stream for each media when alternate renditions are present. Update the manifests for all those streams, and make sure that typefinding is still done for files smaller than 2KB such as small WebVTT files. 2016-03-08 01:24:20 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Adjust downstream buffer offsets When fetching a byte-region from a server resource, adjust the downstream buffer offsets so that downstream doesn't know. This is because id3demux insists on the first offset being 0. Later we might strip ID3 headers entirely and this will be unneeded. 2016-03-09 03:07:22 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Choose the default variant and track it when updating Modify playlist updating to track information across updates better, although still hackish. When connection_speed == 0, choose the default variant not the first one in the (now sorted) variant list, as that will have the lowest bitrate. 2015-12-05 11:12:33 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: move variant list handling over to new master playlist code Adapt hlsdemux for the m3u8 playlist changes. 2015-11-27 19:26:02 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: Rework m3u8 parsing and storage. Make M3U8 and GstM3U8MediaFile refcounted. The contents of it and GstM3U8MediaFile are pretty much immutable already, but if we make it refcounted we can just return a ref to the media file from _get_next_fragment() instead of copying over all fields one-by-one, and then copying them all into the adaptive stream structure fields again. Move state from client into m3u8 structure. This will be useful later when we'll have multiple media playlists being streamed at the same time, as will be the case with alternative renditions. This has the downside that we need to copy over some state when we switch between variant streams. The GstM3U8Client structure is gone, and main/current lists are not directly in hlsdemux. hlsdemux had as many CLIENT_LOCK/UNLOCK as the m3u8 code anyway... 2016-07-27 09:28:23 +0800 Haihua Hu * tests/examples/qt/qmlsink/.gitignore: * tests/examples/qt/qmlsink/main.cpp: * tests/examples/qt/qmlsink/main.qml: * tests/examples/qt/qmlsink/play.pro: * tests/examples/qt/qmlsink/qml.qrc: * tests/examples/qt/qmlsrc/.gitignore: * tests/examples/qt/qmlsrc/grabqml.pro: * tests/examples/qt/qmlsrc/main.cpp: * tests/examples/qt/qmlsrc/main.qml: * tests/examples/qt/qmlsrc/qml.qrc: qmlglsrc: Add qmlglsrc unit test example https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-07-27 08:16:47 +0800 Haihua Hu * ext/qt/Makefile.am: * ext/qt/gstplugin.cc: * ext/qt/gstqtglutility.cc: * ext/qt/gstqtglutility.h: * ext/qt/gstqtsrc.cc: * ext/qt/gstqtsrc.h: * ext/qt/qtitem.cc: * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: qt: implement qmlglsrc for qml view grab [Matthew Waters]: gst-indent sources https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-07-27 10:55:01 +0800 Haihua Hu * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: Fix glimagesink cannot show frame when connect to qmlglsrc When connect to qmlglsrc, x11 event loop will be replace by qt event loop which will cause the window cannot receive event from xserver, such as resize https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-08-02 17:21:20 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglupload.c: glupload: Use bufferpool to allocate new buffer in GLTextureUploadMeta To improve performace of upload with GLTextureUploadMeta, use bufferpool instead of allocating new buffer every time. https://bugzilla.gnome.org/show_bug.cgi?id=769293 2016-07-27 14:48:50 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: move unsetting queue_resize to _resize() instead of _draw() Makes infinitely more sense and implementation were expecting that behaviour anyway and would enter a resize, draw, resize, draw, ... cycle instead of only resizing once. 2016-08-03 09:14:07 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Never ever hold the manifest lock while changing the source element state Otherwise we will deadlock in various situations that take the manifest lock from the streaming thread or when shutting down or ... 2016-08-02 17:07:37 +0300 Sebastian Dröge * tests/check/elements/aiffparse.c: aiffparse: In PUSH mode we will never get the ID3 tags as they are at the end of the file This previously did not fail as before we didn't get any tags at all in PUSH mode, now we get the bitrates. 2016-08-02 13:48:43 +0200 Carlos Rafael Giani * gst/aiff/Makefile.am: * gst/aiff/aiffparse.c: aiffparse: Add tags for container format and bitrate The bitrate is added to help downstream elements (like uridecodebin) figure out a proper network buffer size https://bugzilla.gnome.org/show_bug.cgi?id=769389 2016-01-20 16:42:24 +0000 Alex Ashley * tests/check/elements/dash_mpd.c: tests: dashdemux: add test for gst_mpd_client_get_maximum_segment_duration Add a test of the gst_mpd_client_get_maximum_segment_duration() function to check that it first checks the MPD@maxSegmentDuration and then falls back to checking all of the segment durations. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-02-24 15:54:54 +0000 Alex Ashley * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: include segment duration when calculating seek range The gst_dash_demux_get_live_seek_range () function returns a stop value that is beyond the available range. The functions gst_mpd_client_check_time_position() and gst_mpd_client_get_next_segment_availability_end_time() in gstmpdparser.c include the segment duration when checking if a segment is available. The gst_dash_demux_get_live_seek_range() function in gstdashdemux.c ignores the segment duration. According to the DASH specification, if maxSegmentDuration is not present, then the maximum Segment duration is the maximum duration of any Segment documented in the MPD. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-02-24 15:52:41 +0000 Vincent Penquerc'h * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: retry once on 4xx/5xx in certain conditions This helps catch those 404 server errors in live streams when seeking to the very beginning, as the server will handle a request with some delay, which can cause it to drop the fragment before sending it. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-02-24 15:47:09 +0000 Alex Ashley * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: expose HTTP status To allow adaptivedemux to make retry decisions, it needs to know what sort of HTTP error has occurred. For example, the retry logic for a 410 error is different from a 504 error. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-03-07 17:04:33 +0000 Vincent Penquerc'h * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: allow seeking before start in live streams Some derived classes (at least dashdemux) expose a seeking range based on wall clock. This means that a subsequent seek to the start of this range will be before the allowed range. To solve this, seeks without the ACCURATE flag are allowed to seek before the start for live streams, in which case the segment is shifted to start at the start of the new seek range. If there is an end position, is is shifted too, to keep the duration constant. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-08-01 14:12:35 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: Fix horizontal/vertical flip matrizes They were swapped. https://bugzilla.gnome.org/show_bug.cgi?id=769371 2016-07-29 16:32:22 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: videoparsers: h264: Add more scalable profiles to the profile list Adding Scalable Constrained High (G.10.1.2.1) and Scalable High Intra(G.10.1.3) profiles to the profile list https://bugzilla.gnome.org/show_bug.cgi?id=769303 2016-08-01 10:30:29 +0300 Sebastian Dröge * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-sensor.c: * sys/androidmedia/gstahssrc.c: androidmedia: Run gst-indent over everything once again 2016-08-01 10:28:26 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: If we find multiple codecs with the same name, just merge them On the ODroid C1+ the H265 and H264 have the same name but are listed as two different codecs. We have to handle them as the same one that supports both, as otherwise we will register the same GType name twice which fails and we then only have H265 support and not H264 support. 2016-08-01 10:15:04 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Use a GQueue for O(1) append instead of a GList 2016-07-29 12:31:38 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also call reset() in READY->PAUSED This allows subclasses to have initialization code in a single place. 2016-07-29 10:49:26 +0300 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: rawaudioparse: Use G_GINT64_MODIFIER for portability https://bugzilla.gnome.org/show_bug.cgi?id=769295 2016-07-29 10:07:23 +0300 Sebastian Dröge * gst/rawparse/gstunalignedaudioparse.c: unalignedaudioparse: Fix element factory name of inner parser 2016-07-29 08:54:00 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Print generated raw/encoded caps in debug logs 2016-07-28 11:27:29 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Skip audio streams if TRICKMODE_NO_AUDIO is given in the seek event We just don't expose pads for audio streams, or even download them. 2016-07-28 11:16:24 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Reset number of subtitle streams counter on reset() too Otherwise we will continue increasing forever the number of subtitle streams when reusing the element for another DASH manifest. 2016-07-26 17:01:55 +0100 Vincent Penquerc'h * tests/check/pipelines/simple-launch-lines.c: tests: fix simple-launch-lines when jpeg lib isn't present JPEG detection in configure.ac defines HAVE_JPEG to 0 if the jpeg lib isn't found, rather then not defining it. https://bugzilla.gnome.org/show_bug.cgi?id=769197 2016-07-25 17:55:24 +0200 Carlos Rafael Giani * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-rawparse.xml: docs: Update rawparser documentation Signed-off-by: Carlos Rafael Giani https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-25 17:54:09 +0200 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: rawparse: Remove old parser code and wrap new parsers in old elements https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-25 13:45:40 +0200 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstunalignedvideoparse.h: * gst/rawparse/plugin.c: * gst/rawparse/unalignedvideo.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Add new raw audio and video parser elements The new rawaudioparse and rawvideoparse elements are based on GstBaseParse and completely replace audioparse and videoparse https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-26 16:01:19 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: remove unused to_quit variable It was always 0 and never set to anything meaningful. 2016-07-26 15:57:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: add compatibility definition for GL_DEPTH_STENCIL_ATTACHMENT GLES2 doesn't have it defined... 2016-07-15 13:39:54 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglpixelformat.c: * gst-libs/gst/gl/gstglutils.h: glfilter: rewrite subclasses for filter_texture() occuring on GL thread There's no need for the jump to an extra thread in most cases, especially when relying solely on a shader to render. We can use the provided render_to_target() functions to simplify filter writing. 2016-07-12 15:34:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.h: glutils: remove unused GstGLDisplayProjection 2016-07-12 15:29:29 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glcontext: remove not thread-safe get/set_error() Use GError's instead if necessary. 2016-07-12 12:59:57 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * tests/check/libs/gstglcontext.c: glframebuffer: rewrite for a more consistent API Facilities are given to create fbo's and attach GL memory (renderbuffers or textures). It also keeps track of the renderable size for use with effective use with glViewport(). 2016-07-12 00:30:22 +1000 Matthew Waters * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: use GLMemory for accessing textures everywhere This simplifies and consolidates a lot of duplicated code creating and modifying textures. 2016-07-11 22:44:16 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: rename draw_texture to draw_fullscreen_quad And remove unused arguments. 2016-07-11 22:31:04 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add memory type for renderbuffer's Soon to be used for framebuffers for e.g. depth buffers or throwaway color buffers. 2016-07-11 22:28:42 +1000 Matthew Waters * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: glformat: define our own set of formats from the GL defines also add some depth/stencil formats 2016-07-11 22:24:43 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: fix xray to use the correct function Instead of duplicating the sin effect 2016-07-11 21:29:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: assert for a valid allocator instead of segfaulting 2016-04-29 14:42:34 +0200 Michael Olbrich * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: add support for LPCM with stream_type = 0x83 https://bugzilla.gnome.org/show_bug.cgi?id=765807 2016-07-25 13:06:46 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Add some 'const' to config getters 2016-07-25 13:06:36 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: G-I annotation fixes 2016-07-25 10:30:26 +0200 Guillaume Desmottes * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * tests/check/libs/player.c: * win32/common/libgstplayer.def: player: move 'position-update-interval' setting to the config struct https://bugzilla.gnome.org/show_bug.cgi?id=769144 2016-07-19 14:36:25 +0200 Guillaume Desmottes * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * tests/check/libs/player.c: * win32/common/libgstplayer.def: player: add API to change http user agent Introducing a new 'config' API similar to GstBufferPoolConfig. https://bugzilla.gnome.org/show_bug.cgi?id=765314 2016-07-25 10:54:32 +0100 Tim-Philipp Müller * common: Update common submodule For 'make update-exports' changes 2016-07-22 17:00:14 +0300 Sebastian Dröge * tests/examples/qt/qml/main.cpp: qml: Don't forget to unref the actual sink element after setting it on glsinkbin 2016-07-22 16:57:45 +0300 Sebastian Dröge * tests/examples/qt/qml/main.cpp: qml: Use glsinkbin instead of glupload directly 2016-07-18 18:36:42 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264: fix up for API changes in v1.6.0 Update for API changes in v1.6.0. https://bugzilla.gnome.org/show_bug.cgi?id=768771 2016-07-18 17:43:23 +0100 Tim-Philipp Müller * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl: wayland: improve debug message when connecting to display And another copy'n'paste-o. https://bugzilla.gnome.org/show_bug.cgi?id=768929 2016-07-19 02:11:54 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Fix clearing of decryption state Don't clear decryption state immediately after initialising it in the start_fragment. Don't clear the state of all streams when we want to only clear the current stream. https://bugzilla.gnome.org//show_bug.cgi?id=768757 2016-07-15 10:31:35 +0200 Guillaume Desmottes * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/audiomixer.c: * tests/check/elements/autovideoconvert.c: * tests/check/elements/camerabin.c: tests: fix bus leak gst_bus_remove_signal_watch() has to be called to release the ref taken by gst_bus_add_signal_watch(). https://bugzilla.gnome.org/show_bug.cgi?id=768843 2016-07-15 11:48:25 +0200 Guillaume Desmottes * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabinpreview: fix bus leak We were never removing the watch introduced in gst_camerabin_create_preview_pipeline() so its extra ref on the bus was never released. https://bugzilla.gnome.org/show_bug.cgi?id=768838 2016-07-13 23:02:10 +1000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: make decryption key handling per-stream Add demuxer instance-wide decryption key cache. The current and last key url are per-stream, so make a shared cache. Move the decryption handling into the stream object, and use the shared cache for the keys. 2016-07-13 23:02:10 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: add hlsdemux-specific AdaptiveDemuxStream subclass Prepare hlsdemux for more than one single stream. Currently hlsdemux assumes there'll only ever be one stream and most of the stream-specific state is actually in the hlsdemux structure. Add a stream subclass instead and move some stream-specific members there instead. 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add more safeguards around state changes. Make state changes of internal elements more reliable by locking their state, and ensuring that they aren't blocked pushing data downstream before trying to set their state. Add a boolean to avoid starting tasks when the main thread is busy trying to shut the element down. 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Add debug code to change bitrate. Add some disabled-by-default debugging code that forces bitrate changes by modulating the measured bitrate every few fragments 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: More locking/switching fixes Try harder to make switching pads work better by making sure concurrent downloads are finished before exposing a new set of pads. Release the manifest lock when signalling no-more-pads, as that can call back into adaptivedemux again 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't switch streams and expose pads while downloading. If other stream fragments are still downloading but new streams have been scheduled, don't expose them yet - wait until the last one finishes. Otherwise, we can cancel a partially downloaded auxilliary stream and cause a gap. 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Drop the manifest lock during outbound actions Drop the manifest lock when performing actions that might call back into adaptivedemux and trigger deadlocks, such as adding/removing pads or sending in-band events (EOS). Unlock the manifest lock when changing the child bin state to NULL, as it might call back to acquire the manifest lock when shutting down pads. Drop the manifest lock while pushing events. 2016-07-12 14:51:47 -0700 Martin Kelly * sys/androidmedia/Makefile.am: * sys/androidmedia/gst-android-hardware-sensor.c: * sys/androidmedia/gst-android-hardware-sensor.h: * sys/androidmedia/gstahssrc.c: * sys/androidmedia/gstahssrc.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstsensors.h: * sys/androidmedia/org/freedesktop/gstreamer/androidmedia/GstAhsCallback.java: new plugin: Android hardware sensor source ahssrc is a new plugin that enables Gstreamer to read from the android.hardware.Sensor Android sensors. These sensors are treated as buffers and can be passed through and manipulated by the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=768110 2016-07-14 19:38:26 +0200 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: make it build with older lilv Implementing the removal of presets is unfortunately not feasibla with versions < 0.22. Fixes #768595 2016-07-13 23:00:51 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: webrtcdsp: Add delay-agnostic property In this mode, we let WebRTC Audio Processing figure-out the delay. This is useful when the latency reported by the stack cannot be trusted. Note that in this mode, the leaking of echo during packet lost is much worst. It is recommanded to use PLC (e.g. spanplc, or opus built-in plc). In this mode, we don't do any synchronization. Instead, we simply process all the available reverse stream data as it comes. 2016-07-12 00:02:53 +0300 Sebastian Dröge * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: Use correct enum type GST_JPEG2000_SAMPLING_RGB instead of GST_JPEG2000_COLORSPACE_RGB https://bugzilla.gnome.org/show_bug.cgi?id=768696 2016-07-11 21:13:58 +0200 Stefan Sauer * common: Automatic update of common submodule From f363b32 to f49c55e 2016-07-11 11:58:12 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmssink.c: kmssink: Fix offsets handling The calculation of the offset table was done base on a plane size estimation. This does not always work. Instead, use memory offset the same we as it's implement in GstVideoMeta map functions. 2016-07-11 19:21:11 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: * gst/siren/gstsirendec.c: Fix various gboolean vs GstFlowReturn problems Caught by building with MSVC which gave warnings for these 2016-07-08 19:03:06 +1000 Matthew Waters * configure.ac: gl/build: fix configure when --enable-cocoa is passed on OS X https://bugzilla.gnome.org/show_bug.cgi?id=768553 2016-07-10 20:43:17 +0200 Stefan Sauer * ext/lv2/README: lv2: planning update 2016-07-10 20:42:42 +0200 Stefan Sauer * configure.ac: * ext/lv2/gstlv2utils.c: lv2: keep working with older versions Provide a fallback impl. for the only new function we were using from 0.22. Fixes #768595 2016-07-08 14:42:18 +0100 Tim-Philipp Müller * gst/camerabin2/gstcamerabin2.c: camerabin: update docs section 2016-07-07 13:22:02 -0400 Nicolas Dufresne * configure.ac: configure.ac: Cleanup unused variable We only check for a header, no need for overriding LDFLAGS. 2016-07-07 17:24:32 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.h: gaudi: fix documentation warning in GstGaussianBlur Fixing the following warning when generating documentation: xml/element-gaussianblur.xml:72: element refsect2: validity error : ID GstGaussianBlur already defined ^ Warning: multiple "IDs" for constraint linkend: GstGaussianBlur. DOC Fixing cross-references 2016-07-07 17:16:47 +0100 Luis de Bethencourt * gst/gaudieffects/gstchromium.h: gaudi: fix documentation warning in GstChromium Fixing the following warning when generating documentation: xml/element-chromium.xml:74: element refsect2: validity error : ID GstChromium already defined ^ Warning: multiple "IDs" for constraint linkend: GstChromium. DOC Fixing cross-references 2016-07-07 12:31:20 -0400 Nicolas Dufresne * configure.ac: webrtcdsp: Relax C++11 check The library does not require any STL C++11 specific headers. This fixes our OSX build as we target a SDK version that does not support C++11 STL. 2016-07-07 12:31:03 -0400 Nicolas Dufresne * configure.ac: webrtcdsp: Add Android GNUSTL support 2016-07-07 12:20:45 -0400 Nicolas Dufresne * configure.ac: webrtcdsp: Set USE_WEBRTCDSP when disabled 2016-07-07 17:20:58 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also consider more seek flags as "snap" seeks In the case of KEY_UNIT and TRICKMODE_KEY_UNITS seeks, we want to "snap" to the closest fragment. Without this, we end up pushing out a segment which does not match the first fragment timestamp being pushed out, resulting in one or more buffers being eventually dropped because they are out of segment. 2016-07-06 14:29:04 +0300 Sebastian Dröge * configure.ac: webrtcdsp: Also allow webrtc-audio-processing 0.3 It seems to work and is the version available in Debian. 2016-07-06 12:12:41 +0100 Luis de Bethencourt * ext/musepack/gstmusepackdec.c: musepackdeck: unsigned can't be less than zero Less-than-zero comparison of an unsigned value, guint64, is never true CID 1363334 2016-07-06 13:51:06 +0300 Sebastian Dröge * configure.ac: Back to development === release 1.9.1 === 2016-07-06 13:07:21 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * 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-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-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-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.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-fbdevsink.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-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.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-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-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.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-opengl.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-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-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-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.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-waylandsink.xml: * docs/plugins/inspect/plugin-webp.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: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.9.1 2016-07-06 11:52:11 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-07-06 10:19:24 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-07-05 09:21:58 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Workaround GCC/MingW 4.7 limitations It refuses to initialize a classes using brackets notation. This is to allow building using our mingw version. 2016-07-04 14:57:11 -0400 Nicolas Dufresne * configure.ac: configure.ac: Add missing double quotes That affectation was ignored. This worked on recent GCC as C++11 is enabled by default now. 2016-07-02 10:24:51 +0200 Stefan Sauer * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: add support for saving presets Plugns supporting the state interface can now save their presets under '.lv2'. 2016-06-15 22:22:58 +0200 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: support for loading presets Detect if plugins can do presets. Lazily read a list of presets and add support for loading. 2016-07-04 16:54:53 +0200 Wim Taymans * configure.ac: * ext/musepack/gstmusepackdec.c: * ext/musepack/gstmusepackreader.c: musepackdec: port to 1.0 2016-07-04 12:19:36 +0200 Marcin Lewandowski * sys/shm/gstshmsrc.c: shmsrc: Do not call gst_poll_remove_fd upon stop if reading was never started https://bugzilla.gnome.org/show_bug.cgi?id=768365 2016-07-01 14:50:27 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: improve parsing-success message * Fix typo * Give information on what was actually parsed 2016-07-01 14:37:37 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: don't use default conf filename for messages The file name can be user-defined. 2016-07-01 19:22:32 +0100 Tim-Philipp Müller * configure.ac: * ext/qt/Makefile.am: qt: fix build some more when QPA is not available Compiler would complain about include directory that didn't exist because QPA_INCLUDE_PATH gets subst-ed regardless (and if it didn't we'd have just an empty -I argument). https://bugzilla.gnome.org/show_bug.cgi?id=767553 2016-07-01 14:05:49 +0100 Luis de Bethencourt * gst/videoparsers/gstjpeg2000parse.c: gstjpeg2000parse: no need for else after a goto else clause is redundant when the end of the if statement is a jump. If we haven't gone to the beach, we are in the false branch. 2016-06-30 07:47:50 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: gstjpeg2000parse: improved parsing of jpc magic and j2c box https://bugzilla.gnome.org/show_bug.cgi?id=767512 2016-05-25 16:01:24 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add custom flow return for allowing subclasses to specify when a fragment is finished If it is finished before upstream going EOS. https://bugzilla.gnome.org/show_bug.cgi?id=767365 2016-05-27 16:08:09 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Implement SIDX tracking based on buffer offset This simplifies the code but also removes a bug with tracking of the remaining size for the initial subfragment: we were not considering the size between the index and the start of the first moof here. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-31 13:39:59 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Properly keep track of current offset GstAdapter does not guarantee to pass through all the offsets, we have to keep track of it ourselves. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-31 13:39:59 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Properly keep track of current offset GstAdapter does not guarantee to pass through all the offsets, we have to keep track of it ourselves. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-31 13:01:00 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Clear pending data when needed When switching fragments we don't want to keep any data around from the last one, and also forget about all data when doing flushing seeks or selecting new bitrates. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-28 13:45:36 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Get rid of internal stream adapter and let subclasses handle this directly This allows subclasses to have more control and especially ensure that they push data downstream with the correct offsets. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-07-01 12:20:14 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: codecparsers: jpeg2000: don't allow 0 value for array access with i-1 2016-07-01 12:15:28 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: codecparsers: jpeg2000: fix possible out-of-bounds array access sizeof(array) != G_N_ELEMENTS(array). CID 1362900 2016-06-30 23:38:26 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Set frame timestamps before sending to the encoder 2016-06-30 23:35:33 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Fix initial time-per-frame calculation 2016-06-30 23:33:38 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264enc: Remove meaningless drop bitrate handling This doesn't even have a property. 2016-06-30 23:29:13 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264enc: Expose maximum bitrate setting 2016-06-30 23:19:26 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Actually hook up the rate-control property 2016-06-30 23:06:29 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Use a constant SPS/PPS ID no matter if openh264 older or newer than 1.4 is used 2016-06-30 23:02:49 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Make slice settings more explicit and don't set any number if not a fixed number of slices is selected 2016-06-29 15:56:47 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: webrtcdsp: Rewrite echo data synchronization The previous code would run out of sync if there was packet lost or clock skews. When that happened, the echo cancellation feature would completely stop working. As this is crucial for audio calls, this patch re-implement synchronization completely. Instead of letting it drift until next discont, we now synchronize against the record data at every iteration. This way we simply never let the stream drift for longer then 10ms period. We also shorter the delay by using the latency up the probe (basically excluding the sink latency. This is a decent delay to avoid starving in the probe queue. https://bugzilla.gnome.org/show_bug.cgi?id=768009 2016-06-29 15:55:19 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: We now fail if there is no echo probe When echo cancel is enabled, we now fail the pipeline if there is not echo probe. For this reason there is no need to check if probe pointer is set anymore. 2016-06-30 21:50:12 +1000 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix transformation matrix usage Calling glUniformMatrix before the shader is bound is invalid and would result in errors like: GL_INVALID_OPERATION in glUniformMatrix(program not linked) Move glUniformMatrix() to after the gst_gl_shader_use() call. 2016-06-28 16:07:43 -0400 Javier Martinez Canillas * sys/kms/gstkmssink.c: kmssink: fallback to universal planes if no overlay plane is found Without setting the DRM_CLIENT_CAP_UNIVERSAL_PLANES capability bit, only overlay planes are made available for compatibility with legacy clients. But if a CRTC doesn't have an overlay plane associated, then kmssink is not able to find a plane for the CRTC and the pipeline will fail, i.e: ERROR kmssink gstkmssink.c:482:gst_kms_sink_start: Could not find a plane for crtc If no overlay planes were found for a given CRTC, fallback to universal planes so DRM will also return primary planes that can be used instead. https://bugzilla.gnome.org/show_bug.cgi?id=768183 Signed-off-by: Javier Martinez Canillas 2016-06-28 20:51:56 -0400 Javier Martinez Canillas * docs/plugins/gst-plugins-bad-plugins.args: * sys/kms/gstkmssink.c: kmssink: add a plane-id property Without setting the DRM_CLIENT_CAP_UNIVERSAL_PLANES capability bit, only overlay planes are made available for compatibility with legacy clients. But if a CRTC doesn't have an overlay plane associated, then kmssink is not able to find a plane for the CRTC and the pipeline will fail, i.e: ERROR kmssink gstkmssink.c:482:gst_kms_sink_start: Could not find a plane for crtc This patch adds a plane-id property to the kmssink element so a specific plane can be used in case that a CRTC has only a primary plane associated. https://bugzilla.gnome.org/show_bug.cgi?id=768183 2016-06-30 10:33:30 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Remove broken byte-stream to avc conversion and just output byte-stream as generated by the encoder The byte-stream to avc conversion did not consider NAL sizes bigger than 2^16, multiple layers, multiple NALs per layer, and various other things. This caused corrupted streams in higher bitrates and other circumstances. Let's just forward byte-stream as generated by the encoder and let h264parse handle conversion to avc if needed. That way we only have to keep around one version of the conversion and don't have to fix it in multiple places. 2016-06-29 18:36:56 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Drop filler data When skipping data, check if they are filler bytes. If so, drop the data instead of skipping. We don't want to output filler bytes, but they shouldn't cause a discontinuity. https://bugzilla.gnome.org/show_bug.cgi?id=768125 2016-06-30 08:31:20 +0200 Sebastian Dröge * sys/dvb/dvbbasebin.c: dvbbasebin: Use a non-timer GstPoll set_flushing() causes inconsistent states on timer polls and also signals a g_critical() nowadays because of that. 2016-06-30 14:04:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: fix raw data uploader with addition of GstVideoGLTextureType Fixes regression from 989200820d43c78fb179d7984827800d83787390 https://bugzilla.gnome.org/show_bug.cgi?id=768217 2016-06-29 23:55:18 -0400 Olivier Crête * gst-libs/gst/gl/gstglcolorconvert.c: glvideoconvert: RG/LA is available in OpenGL ES 3, so let that through 2016-06-29 18:35:17 +1000 Matthew Waters * sys/applemedia/videotexturecache.m: vtdec: use L/LA textures on GLES2 as well 2016-06-24 13:41:11 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "Revert "gl/eagl: try getting a gles3 context"" This reverts commit eb142736318463e6e553c21707ba0d716f85a46f. vtdec now successfully outputs textures that can be converted by glcolorconvert in GLES3 contexts. 2016-06-25 00:05:37 +1000 Matthew Waters * sys/applemedia/videotexturecache.m: vtdec: add support for zerocopy decoding with GLES 3.x It seems that Red/RG textures aren't supported anymore for zerocopy decoding with GLES 3.x. Instead use Luminance/Luminance Alpha textures which are. 2016-06-28 13:51:22 +1000 Matthew Waters * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/iosurfacememory.c: * sys/applemedia/iosurfacememory.h: * sys/applemedia/videotexturecache.m: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glmemory: add the texture type to allocate to parameters Rather than assuming something. e.g. zerocopy on iOS with GLES3 requires the use of Luminance/Luminance Alpha formats and does not work with Red/RG textures. 2016-06-28 13:09:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't assume Red/RG textures will be used Take the used texture type from the memory instead. Fixes conversion from multi-planar YUV formats with two components per plane (NV12, NV21, YUY2, UYVY, GRAY16_*, etc) with Luminance Alpha input textures. This is also needed for zerocopy decoding on iOS with GLES 3.x. 2016-06-28 13:02:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: correct precondition for get_gl_version The intention was to assert if both maj and min were NULL (as there would be no point calling the function). Instead if either maj or min were NULL, the assert would occur. Fix that. 2016-06-28 19:26:29 +0300 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Replace some more gst_caps_to_string() with GST_PTR_FORMAT https://bugzilla.gnome.org/show_bug.cgi?id=768146 2016-06-28 11:50:59 -0400 Jonathan Roy * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: leak on caps string https://bugzilla.gnome.org/show_bug.cgi?id=768146 2016-06-28 11:08:22 +0100 Luis de Bethencourt * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: jpeg2000parse: fix typo in sampling check Fixing small typo that changes the value of the return. 2016-06-27 21:36:50 -0400 Olivier Crête * tests/check/Makefile.am: tests: Ignore kmssink for state change test It can only be put to READY if the DRM stuff is available. 2016-06-27 18:15:08 +0800 Haihua Hu * configure.ac: * ext/qt/qtitem.cc: qmlglsink: Fix build error when don't have QPA installed. Check header file existance and wrap the header file include in the necessary #ifdef to avoid build error. https://bugzilla.gnome.org/show_bug.cgi?id=767553 2016-06-24 18:14:06 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: dvbbasebin: make sure we have an error in case of parsing failure Drop a redundant comment and rellocate another one while at it. 2016-06-22 16:14:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: implement channels.conf format autodetection Simple autodetection avoids having to call the parsers one after the other. 2016-06-21 16:08:57 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: rename v5/zap parsers for congruency Add function prototypes while at it. 2016-04-12 21:04:25 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: fix modulation names Some names were incorrect. Authoritative source for the dvbv5 format taken from v4l-utils' lib/libdvbv5/dvb-v5.c Aditionally, add the missing setter mapping for the modulation param. This change makes ATSC work. https://bugzilla.gnome.org/show_bug.cgi?id=764957 2016-02-24 21:44:40 -0300 Thiago Santos * sys/dvb/parsechannels.c: dvbbasebin: also accept DVBv5 channels.conf format Confirmed working with ISDB-T & ATSC conf files. https://bugzilla.gnome.org/show_bug.cgi?id=764957 2016-06-21 11:48:36 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix ISDB-T property descriptions Drop some stale trailing whitespace while at it. 2016-06-21 11:32:07 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix misplaced space on doc block 2016-05-10 03:32:59 +1000 Jan Schmidt * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: When input alignment=AU, always drain each packet. If the input alignment claims AU alignment, each received buffer should contain a complete video frame, so never hold over parts of buffers for later processing. Also reduces latency, as packets are parsed/converted and output immediately instead of 1 buffer later. Fixes a problem where an (arguably disallowed) padding byte on the end of a buffer is detected as an extra byte in the following start code, and messes up the timestamping that should apply to that start code. 2016-06-24 13:05:24 +0100 Tim-Philipp Müller * win32/common/libgstcodecparsers.def: win32: update codecparsers .def file for new symbols 2016-06-24 09:41:18 +0100 Tim-Philipp Müller * ext/openjpeg/Makefile.am: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: openjpeg: fix more broken includes 2016-06-24 09:39:00 +0100 Tim-Philipp Müller * gst/videoparsers/gstjpeg2000parse.h: videoparsers: fix broken include 2016-06-21 12:41:46 -0400 Aaron Boxer * ext/openjpeg/Makefile.am: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: * gst/videoparsers/gstjpeg2000sampling.h: jpeg2000parse: use enums for colorspace and sampling, rather than strings Also, move gstjpeg2000sampling to codecparsers project https://bugzilla.gnome.org/show_bug.cgi?id=767908 2016-06-24 01:57:13 +0530 Nirbheek Chauhan * configure.ac: configure: Need to add -DGST_STATIC_COMPILATION when building only statically https://bugzilla.gnome.org/show_bug.cgi?id=767463 2016-06-23 15:57:58 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Only register debug category if dmabuf support is enabled It's not used otherwise currently and causes compiler warnings. 2016-06-22 22:28:03 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Offset timestamp with duration The saved timestamp is used to compute the delay of the probe data. As it's used at the following incoming buffer, it needs to be offset with the duration of the buffer to represent the end position. Also, properly initialize the saved timestamp and protect against TIME_NONE. 2016-06-22 21:54:13 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Synchronize with delays Until now, we were synchronizing both DSP and Probe adapter by waiting and clipping the probe adapter data. This increases the CPU usage, can cause copies if the audio is not 10ms aligned and the worst is that it prevents the processing from compensating for inaccurate latency. This is also a step forward toward supporting playback filters. 2016-06-22 21:45:08 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtdsp: Remove restriction on channels number Unlike 0.1, in 0.2 the reverse stream can have different number of channels. Remove the check that restrict it. 2016-06-22 21:44:35 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Style fix 2016-06-16 14:18:18 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: minimize renegotiation to make hw decoding more reliable The hardware decoder can become (temporarily) unavailable across VTDecompressionSessionCreate/Destroy calls. During negotiation if the currently configured caps are still accepted by downstream we keep using them so we don't have to destroy and recreate the decoding session. This indirectly fixes https://bugzilla.gnome.org/show_bug.cgi?id=767429, by making vtdec stick to GLMemory. 2016-06-16 15:13:02 +1000 Matthew Waters * ext/qt/qtitem.cc: * ext/qt/qtplugin.pro: qmlglsink: add win32 support The current state of c++ ABI's on Window's and Gst's/Qt's conflicting mingw builds means that we cannot use mingw for building the qt plugin. Instead, a qmake .pro file is provided that is expected to be used with the msvc binaries provided by Qt like so: (with the PATH environment variable containing the path to the qt biniaries and PKG_CONFIG_PATH containing the path to GStreamer modules) cd /path/to/sources/gst-plugins-bad/ext/qt qmake -tp vc Then open the resulting VS project and build the library. Then cp debug/libgstqtsink.dll /path/to/prefix/lib/gstreamer-1.0/libgstqtsink.cll https://bugzilla.gnome.org/show_bug.cgi?id=761260 2016-06-21 11:40:22 -0400 Nicolas Dufresne * .gitignore: Add missing file to gitignore 2016-06-20 18:52:00 -0400 Nicolas Dufresne * 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/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-androidcamera.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-teletext.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-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst/pnm/gstpnmenc.c: doc: Automatic update This is an automatic update with manual merges of running "make update" in the doc/plugins directory. This should help later maintenance of the plugins doc. A lot of plugin are not referenced yet in the doc. Will come later. 2016-06-20 16:30:19 -0400 Nicolas Dufresne * docs/plugins/Makefile.am: doc: Add .cpp files to doc parser Also, complete the list of directory that need to be visited. 2016-06-06 15:10:05 -0400 Nicolas Dufresne * configure.ac: * ext/Makefile.am: * ext/webrtcdsp/Makefile.am: * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcdsp.h: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: webrtcdsp: Add WebRTC Audio Processing support This DSP library can be used to enhance voice signal for real time communication call. In implements multiple filters like noise reduction, high pass filter, echo cancellation, automatic gain control, etc. The webrtcdsp element can be used along, or with the help of the webrtcechoprobe if echo cancellation is enabled. The echo probe should be placed as close as possible to the audio sink, while the DSP is generally place close to the audio capture. For local testing, one can use an echo loop pipeline like the following: autoaudiosrc ! webrtcdsp ! webrtcechoprobe ! autoaudiosink This pipeline should produce a single echo rather then repeated echo. Those elements works if they are placed in the same top level pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=767800 2016-06-21 11:46:44 -0400 Nicolas Dufresne * common: Automatic update of common submodule From ac2f647 to f363b32 2016-03-22 16:51:53 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/win32/gstglcontext_wgl.c: glcontext/wgl: try wglCreateContextAttribsARB even not gl3 core profile https://bugzilla.gnome.org/show_bug.cgi?id=764018 2016-06-21 18:28:46 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix get_current_gl_api() on win32 Another case of incorrect calling conventions. Using this function on win32 would corrupt the stack pointer and end in massive hilarity. 2016-06-15 12:47:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glsl: fixup external-oes shaders by mangling the required extension Newer devices require using a different GLSL extension for accessing external-oes textures in a shader using the texture() functions. While the GL_OES_EGL_image_external_essl3 should supposedly be supported on a any GLES3 android device, the extension was defined after a lot of the older drivers were built so they will not know about it. Thus there are two possible interpretations of which of texture[2D]() should be supported for external-oes textures. Strict adherence to the GL_OES_EGL_image_external extension spec which uses texture2D() or following GLES3's pattern, also allowing texture() as a function for accessing external-oes textures This adds another mangling pass to convert #extension GL_OES_EGL_image_external : ... into #extension GL_OES_EGL_image_external_essl3 : ... on GLES3 and when the GL_OES_EGL_image_external_essl3 extension is supported. Only uses texture() when the GLES3 and the GL_OES_EGL_image_external_essl3 extension is supported for external-oes textures. Uses GLES2 + texture2D() + GL_OES_EGL_image_external in all other external-oes cases. https://bugzilla.gnome.org/show_bug.cgi?id=766993 2016-05-24 16:26:24 +0530 Nirbheek Chauhan * sys/winks/ksdeviceprovider.c: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: winks: Port to MSVC and pretend to be Windows XP strcasecmp is not defined on MSVC, so just use the glib wrapper. Also pretend to be Windows XP explicitly since the API we use was deprecated and removed (ifdef-ed) from the SDK after this version of Windows. This will be especially relevant once we stop supporting Windows XP soon: https://bugzilla.gnome.org/show_bug.cgi?id=756866 2016-03-02 02:17:54 +0530 Nirbheek Chauhan * win32/common/libgstadaptivedemux.def: * win32/common/libgstbadaudio.def: * win32/common/libgstbadbase.def: * win32/common/libgstbadvideo.def: * win32/common/libgstbasecamerabinsrc.def: * win32/common/libgstinsertbin.def: * win32/common/libgstmpegts.def: * win32/common/libgsturidownloader.def: win32: Add missing def files for libraries 2016-03-02 00:55:15 +0530 Nirbheek Chauhan * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: build: Factor out endian-order RGB formats MSVC seems to ignore preprocessor conditionals inside static pad templates 2016-06-13 22:29:39 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: openjpegdec: use sampling field to determine RGB channel https://bugzilla.gnome.org/show_bug.cgi?id=767402 2016-06-02 13:53:38 +0200 Guillaume Desmottes * tests/check/elements/templatematch.c: templatematch: fix buffer leak in test Need to call gst_check_drop_buffers() to unref the buffers exchanged during the test. https://bugzilla.gnome.org/show_bug.cgi?id=767159 2016-05-19 13:31:56 +0300 Guillaume Desmottes * tests/check/elements/glimagesink.c: glimagesink: fix query leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 13:29:15 +0300 Guillaume Desmottes * tests/check/elements/glimagesink.c: glimagesink: properly setup/teardown tests tcase_add_checked_fixture() is suppose to call the setup and teardown functions so the tests don't have to do it manually. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 13:09:41 +0300 Guillaume Desmottes * tests/check/libs/gstglupload.c: glupload: fix shader leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 12:51:17 +0300 Guillaume Desmottes * tests/check/elements/uvch264demux.c: uvch264demux: fix buffer leaks in test The mock chain functions aren't unreffing the buffers so the caller should do it. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 12:36:42 +0300 Guillaume Desmottes * tests/check/elements/camerabin.c: camerabin: fix element leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:57 +0300 Guillaume Desmottes * tests/check/elements/autoconvert.c: fix buffer leaks in tests gst_check_drop_buffers() release the buffers exchanged during the test. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:20 +0300 Guillaume Desmottes * tests/check/elements/audiomixer.c: * tests/check/elements/compositor.c: fix event leaks in tests The events are supposed to be unreffed when finishing the test, not reffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:01 +0300 Guillaume Desmottes * tests/check/elements/audiointerleave.c: audiointerleave: fix message leaks by flushing the bus https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:16:37 +0300 Guillaume Desmottes * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix buffer leak If the pad was still owning a buffer when being destroyed it was leaked. Fix a leak with the test_flush_start_flush_stop test. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-18 16:58:44 +0300 Guillaume Desmottes * tests/check/elements/autoconvert.c: autoconvert: fix factories leak in test The factories returned by gst_registry_find_feature() have to be unreffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-06-17 14:58:44 +0200 Michael Olbrich * gst-libs/gst/codecparsers/gsth264parser.c: h264parse: fix default time_offset_length The default value for time_offset_length should be 24, see section E2.2 of the H264 spec. https://bugzilla.gnome.org/show_bug.cgi?id=767792 2016-06-17 14:31:42 +0200 Joan Pau Beltran * ext/dc1394/gstdc1394src.c: dc1394src: check for disabled transmission in _stop_cam For symetry with _start_cam, check that the transmission is effectively disabled in _stop_cam. https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-17 15:32:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: do not rely on temp var for fail detection Use errno instead as local var might be overwritten before the check. 2016-06-14 15:29:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: rework set_pids() - Reflow to avoid unneeded nesting - Free aux pids array earlier - Adjust debug output to deliver more meaningful information 2016-06-14 14:24:35 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop pointless debug msg 2016-06-09 16:05:39 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: drop all otherwizes 2016-06-12 13:53:18 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: jpeg2000parse: support j2c format https://bugzilla.gnome.org/show_bug.cgi?id=767512 2016-06-16 01:54:16 +1000 Matthew Waters * tests/check/Makefile.am: tests/glcontext: link against gstvideo for gst_video_info_* fixes make distcheck complaining about it. 2016-04-14 18:14:32 +0300 Sergey Borovkov * configure.ac: * ext/qt/qtitem.cc: * gst-libs/gst/gl/egl/gstegl.h: qml: Enable qmlglsink for eglfs https://bugzilla.gnome.org/show_bug.cgi?id=763044 2016-06-16 00:44:48 +1000 Matthew Waters * ext/qt/qtitem.cc: qmlglsink: propagate GL context creation failure upwards Otherwise an application cannot know if the qmlglsink will be displaying frames incorrectly/at all. 2016-06-16 00:44:16 +1000 Matthew Waters * ext/qt/qtitem.cc: qmlglsink: also allow wayland-egl as a platform name 2016-06-12 15:35:28 +0800 Haihua Hu * configure.ac: * ext/qt/Makefile.am: * ext/qt/qtitem.cc: qmlglsink: Add Wayland support Don't use gstgldisplay to get wayland display. Should use QPA on wayland to get wayland display for QT. https://bugzilla.gnome.org/show_bug.cgi?id=767553 2016-06-16 00:46:57 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: tests/glcontext: update test for gen,del_texture removal 2016-06-14 22:12:18 +0200 Stefan Sauer * ext/ladspa/gstladspa.c: ladspa: simplify registry cache structure creation Create and fill structure in one go. 2016-06-14 13:48:09 +0800 Haihua Hu * ext/gl/effects/gstgleffectssources.c: gleffects: fix little rectangle that appears at the center of squeeze and tunnel effects These two shader will calculate the vector length and use it as denominator. But length could be zero which will cause undefine behaviour. Add protection for this condition https://bugzilla.gnome.org/show_bug.cgi?id=767635 2016-06-15 18:10:59 +1000 Matthew Waters * gst-libs/gst/gl/gstglsl.c: glsl: add some debugging 2016-06-15 16:08:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: remove unused functions for texture creation/deletion Everyone uses GstGLMemory now and any future code should as well. 2016-06-15 15:47:47 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.h: glfilter: remove unused class fields in/out_tex_id The functionality is not used by any subclass nor are the values set anywhere. 2016-06-15 15:08:39 +1000 Matthew Waters * ext/gl/gstgldeinterlace.c: gldeinterlace: remove dead code accessing filter->in_tex_id It's not set by anyone or anything and gldeinterlace is the only user of it now. 2016-06-15 14:40:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload/meta: remove unneeded texture deletion The textures are managed by the GstGLMemory inside the output buffer. Freeing them prematurely may result in a use-after-free. 2016-05-30 14:10:23 +0200 Aleix Conchillo Flaqué * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtpenc: remove get-rollover-counter signal and add stats property We remove get-rollover-counter signal in favor of the "stats" property. The "stats" property is a GstStructure with caps application/x-srtp-encoder-stats that contains an array of structures with caps application/x-srtp-stream. Each stream structure contains "ssrc" and "roc" fields. https://bugzilla.gnome.org/show_bug.cgi?id=733265 2016-05-25 12:55:36 +0200 Mats Lindestam * gst/videoparsers/gsth264parse.c: h264parse: support for handling of config-interval = -1 Added support for handling of config-interval = -1. config-inteval = -1 represents resending SPS and PPS for each I-/IDR-frame. https://bugzilla.gnome.org/show_bug.cgi?id=766803 2016-05-25 12:45:17 +0200 Mats Lindestam * gst/videoparsers/gsth264parse.c: h264parse: refactored handling of SPS/PPS when pushing frames https://bugzilla.gnome.org/show_bug.cgi?id=766803 2016-05-25 11:54:55 +0200 Mats Lindestam * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: change "config-interval" property type from uint to int So we can use -1 as special value like in rtph264pay. https://bugzilla.gnome.org/show_bug.cgi?id=766803 2016-06-13 09:20:22 +0300 Sebastian Dröge * sys/applemedia/avfassetsrc.m: avfassetsrc: Don't escape the URI before passing it to NSURL The URI must already be escaped by the caller, we don't support passing around invalid (unescaped) URIs via the GstURIHandler interface. Also it will escape too much of the URI in this case, e.g. ipod-library://item/item.m4a?id=3143338395173862951 becomes ipod-library://item/item.m4a%3Fid%3D3143338395173862951 https://bugzilla.gnome.org/show_bug.cgi?id=767492 2016-06-13 09:20:02 +0300 Sebastian Dröge * sys/applemedia/iosassetsrc.m: iosassetsrc: Print the correct URI if it was rejected We were printing the previously set URI instead of the new one. 2016-06-09 01:20:36 +0200 Sebastian Rasmussen * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Lock and don't send final boundary upon error Previously GstCurlSmtpSink could cause the pipeline thread to end up waiting for a stopped thread to perform work. The scenario was that the sink could be rendering a buffer and waiting for the curl transfer thread to have sent the data. As soon as the transfer thread has copied all data to curl's data buffer in gst_curl_base_sink_transfer_read_cb() then the render call would stop waiting and return GST_FLOW_OK. While this takes place the transfer thread may suffer from an error e.g. due gst_poll_wait() timing out. This causes the transfer thread to record the error, claim (it is not really true since there was an error) that the data has been sent and that a response has been received by trying to signal the pipeline thread (but this has already stopped waiting). Finally the transfer thread stops itself. A short while later the pipeline thread may attempt to push an EOS event into GstCurlSmtpSink. Since there is no check in gst_curl_smtp_sink_event() to check if the sink has suffered from any error it may attempt to add a final boundary and ask the, now deceased, transfer thread to transfer the new data. Next the sink element would have waited for the transfer to complete (using a different mechanism than normal transfers through GstCurlBaseSink). In this case there was an error check to avoid waiting if an error had already been seen. Finally GstCurlSmtpSink would chain up to GstCurlBaseSink which would then block waiting for a response (normally this would be prevented by the transfer thread suffering the error claiming that it had been received, but GstCurlSmtpSink clobbered this flag after the fact). Now GstCurlSmtpSink avoids this by locking over the entire event handing (preventing simultaneous changes to flags by the two threads) and also by avoiding to initiate transfer of final boundary if an error has already been seen. Also add GST_FIXME() for remaining similar issue where the pipeline thread may block indefinitely waiting for transfer thread to transfer data but the transfer thread errors out and fails to notify the pipeline thread that the transfer failed. https://bugzilla.gnome.org/show_bug.cgi?id=767501 2016-06-08 11:32:28 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: * gst/videoparsers/gstjpeg2000sampling.h: jpeg2000parse: Require either colorspace or sampling field in sink caps And always set the sampling field on the src caps, if necessary guessing a correct value for it from the colorspace field. Also, did some cleanup: removed sampling enum - redundant. https://bugzilla.gnome.org/show_bug.cgi?id=766236 2016-06-10 11:32:46 +0300 Heinrich Fink * ext/opencv/gstfacedetect.cpp: facedetect: Fix compiler warning with clang 3.8 Use namespace only after it was actually defined by a header. gstfacedetect.cpp:79:17: error: using directive refers to implicitly-defined namespace 'std' [-Werror] using namespace std; ^ 2016-06-06 16:35:15 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: unify exit paths on _start() 2016-06-06 15:31:31 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: use proper acronym for PID (Packet Identifier) Drop formatting tab from message while at it. 2016-06-06 12:25:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: set common PES filter params once and reuse Avoid setting the same harcoded values over and over again. 2016-06-09 22:01:45 +0100 Tim-Philipp Müller * ext/dc1394/gstdc1394src.c: dc1394src: minor clean-up We always call _parse_caps() with non-NULL out vars. 2016-06-09 22:01:13 +0100 Tim-Philipp Müller * ext/dc1394/gstdc1394src.c: dc1394src: fix some more c99-isms 2016-06-09 21:47:05 +0100 Tim-Philipp Müller * docs/plugins/Makefile.am: docs: fix for renamed dc1394 source file https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-07 15:50:50 +0200 Joan Pau Beltran * ext/dc1394/Makefile.am: * ext/dc1394/gstdc1394src.c: * ext/dc1394/gstdc1394src.h: dc1394src: prefix and file names according to Gstreamer conventions Replace the type and function prefix to follow the conventions: - Use `GST_TYPE_DC1394_SRC` instead of `GST_TYPE_DC1394`. - Use `GstDC1394Src` and `GstDC1394SrcClass` instead of `GstDc1394` and `GstDc1394Class`. - Use `gst_dc1394_src` instead of `gst_dc1394`. https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-05-10 18:30:35 +0200 Joan Pau Beltran * configure.ac: * ext/dc1394/Makefile.am: * ext/dc1394/gstdc1394.c: * ext/dc1394/gstdc1394.h: dc1394src: port to 1.X The dc1394src is a PushSrc element for IIDC cameras based on libdc1394. The implementation from the 0.x series is deffective: caps negotiation does not work, and some video formats provided by the camera are not supported. Refactor the code to port it to 1.X and enhance the support for the full set of video options of IIDC cameras: - The IIDC specification includes a set of camera video modes (video format, frame size, and frame rates). They do not map perfectly to Gstreamer formats, but those that do not match are very rare (if used at all by any camera). In addition, although the specification includes a raw format, some cameras use mono video formats to capture in Bayer format. Map corresponding video modes to Gstreamer formats in capabilities, allowing both gray raw and Bayer video formats for mono video modes. - The specification includes scalable video modes (Format7), where the frame size and rate can be set to arbitrary values (within the limits of the camera and the bus transport). Allow the use of such mode, using the frame size and rate from the negotiatied caps, and set the camera frame rate adjusting the packet size as in: The scalable modes also allow for a custom ROI offset. Support for it can be easily added later using properties. - Camera operation using libdc1394 is as follows: 1. Enumerate cameras on the system and open the camera identified the enumeration index or by a GUID (64bit hex code). 2. Query the video formats supported by the camera. 3. Configure the camera for the desired video format. 4. Setup the capture resources for the configured video format and start the camera transmission. 5. Capture frames from the camera and release them when not used. 6. Stop the camera transmission and clear the capture resources. 7. Close the camera freeing its resources. Do steps 2 and 3 when getting and setting the caps respectively. Ideally 4 and 6 would be done when going from PAUSED to PLAYING and viceversa, but since caps might not be set yet, the video mode is not properly configured leaving the camera in a broken state. Hence, setup capture and start transmission in the set caps method, and consequently clear the capture and stop the transmission when going from PAUSED to READY (instead of PLAYING to PAUSED). Symmetrycally, open the camera when going from READY to PAUSED, allowing to probe the camera caps in the negotiation stage. Implement that using the `start` and `stop` methods of `GstBaseSrc`, instead of the `change-state` method of `GstElement`. Stop the camera before setting new caps and restarting it again to handle caps reconfiguration while in PLAYING (it has no effect if the camera is not started). - Create buffers copying the bytes of the captured frames. Alternatively, the buffers could just wrap the bytes of the frames, releasing the frame in the buffer's destroy notify function, if all buffers were destroyed before going from PLAYING to PAUSED. - No timestamp nor offset is set when creating buffers. Timestamping is delegated to the parent class BaseSrc, setting `gst_base_src_set_live` TRUE, `gst_base_src_set_format` with GST_FORMAT_TIME and `gst_base_src_set_do_timestamp`. Captured frames have a timestamp field with the system time at the completion of the transmission of the frame, but it is not sure that this comes from a monotonic clock, and it seems to be left NULL in Windows. - Use GUID and unit properties to select the camera to operate on. The camera number used in version 0.X does not uniquely identify the device (it depends on the set of cameras currently detected). Since the GUID is 64bit identifier (same as MAC address), handle it with a string property with its hexadecimal representation. For practicality, operate on the first camera available if the GUID is null (default) and match any camera unit number if unit is -1. Alternatively, the GUID could be handed with an unsigned 64 bit integer type property, using `0xffffffffffffffff` as default value to select the first camera available (it is not a valid GUID value). - Keep name `GstDc1394` and prefix `gst_dc1394` as in version 0.X, although `GstDC1394Src` and `gst_dc1394_src` are more descriptive. - Adjust build files to reenable the compilation of the plugin. Remove dc1394 from the list of unported plugins in configure.ac. Add the missing flags and libraries to Makefile. Use `$()` for variable substitution, as many plugins do, although other plugins use `@@` instead. https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-08 18:02:32 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Move SEEK handling to a separate function Just for code readability. Doesn't change behaviour 2016-06-07 21:10:04 -0400 Nicolas Dufresne * ext/webp/gstwebpdec.c: webpdec: Wait for segment event before checking it The heuristic to choose between packetise or not was changed to use the segment format. The problem is that this change is reading the segment during the caps event handling. The segment event will only be sent after. That prevented the decoder to go in packetize mode, and avoid useless parsing. https://bugzilla.gnome.org/show_bug.cgi?id=736252 2016-06-07 21:04:21 -0400 Nicolas Dufresne * gst/vmnc/vmncdec.c: vmncdec: Wait for segment event before checking it The heuristic to choose between packetise or not was changed to use the segment format. The problem is that this change is reading the segment during the caps event handling. The segment event will only be sent after. That prevented the decoder to go in packetize mode, and avoid useless parsing. https://bugzilla.gnome.org/show_bug.cgi?id=736252 2016-06-07 14:15:41 +0100 Tim-Philipp Müller * ext/openjpeg/gstopenjpegenc.c: openjpeg: fix builddir != srcdir build, and distcheck 2016-06-01 19:02:33 -0400 Aaron Boxer * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-videoparsersbad.xml: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: * gst/videoparsers/gstjpeg2000sampling.h: * gst/videoparsers/plugin.c: jpeg2000parse: Add JPEG2000 parser element https://bugzilla.gnome.org/show_bug.cgi?id=766236 2016-06-01 19:01:44 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstjpeg2000sampling.h: openjpeg: set sampling in the caps https://bugzilla.gnome.org/show_bug.cgi?id=766236 2016-05-02 17:38:50 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Set PTS on aligned buffers This was broken in 09c05df (make "alignment" property more useful for packetisation). https://bugzilla.gnome.org/show_bug.cgi?id=765926 2016-06-07 17:22:01 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: always drain in ::negotiate Move calling gst_vtdec_push_frames_if_needed from ::set_format to ::negotiate so that we always drain even when renegotiation is triggered by downstream. 2016-06-07 16:00:01 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: try to preserve downstream caps order vtdec specifies sysmem; GLMemory as template caps. When negotiating, we used to call gst_pad_peer_query_caps (..., filter) with our template caps as filter. The query does gst_caps_intersect (filter, peercaps) internally which gives precedence to the order of the filter caps. While we want to output sysmem by default, when negotiating with glimagesink which returns GLMemory; sysmem; we do want to do GL, so we now query using a NULL filter and intersect the result with our template caps giving precedence to downstream's caps. tl;dr: make sure we end up negotiating GLMemory with glimagesink 2016-06-06 14:08:43 -0400 Xavier Claessens * sys/androidmedia/gstahcsrc.c: ahcsrc: Avoid a div by 0 warning https://bugzilla.gnome.org/show_bug.cgi?id=767302 2016-06-06 12:38:45 -0400 Xavier Claessens * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Do not call gst_object_unref on GstCaps https://bugzilla.gnome.org/show_bug.cgi?id=767298 2016-05-19 11:16:50 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Set DISCONT on startup, resume and after seeks Initial buffers after STREAM_START and seeks should always have the DISCONT flag set. https://bugzilla.gnome.org/show_bug.cgi?id=766650 2015-09-23 02:51:57 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Change the pad naming scheme to include a generation ID A simple fix for the problem of creating new pads with duplicate names when switching program, easier than the alternative of trying to work out which pads might persist and manage that. See https://bugzilla.gnome.org/show_bug.cgi?id=758454 2016-06-06 11:13:00 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: pause() should not inhibit signals but work exactly like play() https://bugzilla.gnome.org/show_bug.cgi?id=766607#c23 2016-06-03 15:58:52 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve description of PIDs property 2016-06-03 07:11:33 +0200 Edward Hervey * sys/applemedia/Makefile.am: applemedia: Only use the OpenGL framework on OSX It's not available on ios (uses OpenGLES already) https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-17 17:14:49 +0300 Guillaume Desmottes * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/video/gstvideoaggregator.c: gst-libs: gl, video: use MAY_BE_LEAKED flag https://bugzilla.gnome.org/show_bug.cgi?id=767162 2016-05-18 12:48:48 +0300 Guillaume Desmottes * sys/bluez/gsta2dpsink.c: a2dpsink: unref avdtpsink if state transition failed If for some reason the avdtpsink element can't go READY then the gsta2dpsink can't either and so should release the ressources it allocates when trying to do so. Fix a leak with the generic/states test. https://bugzilla.gnome.org/show_bug.cgi?id=767161 2016-05-28 21:34:52 +0200 Havard Graff * sys/applemedia/Makefile.am: applemedia: CGLTexImageIOSurface2D needs the OpenGL framework on OSX https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 21:39:00 +0200 Havard Graff * sys/applemedia/avsamplevideosink.m: avsamplevideosink: check we are compiling for 10.1 up to 10.4 This API was deprecated in 10.4, so don't use it for 10.5 and onwards. https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-06-01 13:43:32 +0200 Heinrich Fink * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: applemedia: vtenc: Register a hardware-only vtenc_h264_hw element on OSX Similar to vtdec_hw, this commit adds a vtenc_h264_hw element that fails caps negotiation unless a hardware encoder could actually be acquired. This is useful in situations where a fallback to a software encoder other than the vtenc_h264 software encoder is desired (e.g. to x264enc). https://bugzilla.gnome.org/show_bug.cgi?id=767104 2016-06-02 16:30:02 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: make vtdec_hw fallback to software on renegotiation When renegotiating mid stream - for example with variable bitrate streams - and therefore destroying and recreating VTSessions, the hw decoder might become temporarily unavailable. To deal with this and avoid erroring out on bitrate changes, vtdec_hw now falls back to using the software decoder if the hw one was available at some point but isn't anymore. At renegotiation/bitrate change time, it will still retry to open the hardware one. 2016-06-02 13:10:51 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: fix switching from GLMemory to Sysmem When renegotiating from GLMemory to Sysmem do teardown the texture_cache. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=766190 2016-06-02 11:36:57 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: optimize renegotiation ::negotiate can be called several times before the CAPS event is sent downstream so use the currently configured output state caps instead of the pad current caps when deciding whether to recreate the VTSession or not. This leads to creating/destroying less VTSessions which makes renegotiation more reliable especially when using hw decoding. 2016-06-01 13:52:10 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: remove comment on self-explanatory code 2016-06-01 13:18:21 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: avoid out-bound write on PID filter array There's no need for an end-of-list marker in the filter PIDs array if full, as the absolute maximum number of elements (MAX_FILTERS) is known. CID #1362441 2016-05-31 20:41:14 +0100 Tim-Philipp Müller * sys/androidmedia/gstahcsrc.c: androidmedia: fix error debug message when camera doesn't exist Makes no sense to include the system error here since errno will likely not be set and then it says 'system error: success' which is confusing. https://bugzilla.gnome.org/show_bug.cgi?id=767087 2016-05-31 18:58:43 +0900 Justin Kim * sys/androidmedia/gstahcsrc.c: ahcsrc: release resources in 'finalize' function In general, 'dispose' function is used for dropping all references and 'finalize' is called for releasing instances. https://bugzilla.gnome.org/show_bug.cgi?id=763309 2016-05-25 15:01:31 +0200 Guillaume Desmottes * gst-libs/gst/player/gstplayer.c: * tests/check/libs/player.c: player: inhibit signals after gst_player_stop() has been called Also wait for the state change to STOP to have been announced before destroying the player so it won't appear as leaked by leak detector tools. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-25 12:48:13 +0200 Guillaume Desmottes * tests/check/libs/player.c: player: handle uri-loaded in test Had to adapt the existing tests because of this new callback. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-25 16:57:49 -0700 Scott D Phillips * gst/videoparsers/gsth265parse.c: h265parse: Don't assume contiguous id's in make_codec_data vps/sps/pps id's are not required to be used contiguously. https://bugzilla.gnome.org/show_bug.cgi?id=766891 2016-05-28 01:22:32 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add sample ATSC launch line 2016-05-28 21:36:04 +0200 Havard Graff * gst-libs/gst/gl/gstglquery.c: gl: glquery: cast to silence compiler warning https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 21:35:37 +0200 Havard Graff * ext/gl/gstgltestsrc.h: gltestsrc: gltestsrc.h already defines GstGLTestSrc And redefinition is not allowed. https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-27 23:24:54 +0200 Havard Graff * gst-libs/gst/player/gstplayer.c: player: use correct _NONE enum https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 10:44:04 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: maintain minimal ABI compat Because we can. https://bugzilla.gnome.org/show_bug.cgi?id=723352 2014-05-22 16:12:01 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Remove unused fps_num/fps_den fields Instead the newly added function should be used to calculate the framerate properly. https://bugzilla.gnome.org/show_bug.cgi?id=723352 2016-05-25 10:59:00 +0100 Tim-Philipp Müller * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: update fps calculation for h264 codec parser API changes Use new gst_h264_video_calculate_framerate() API instead of fps_n/fps_d fields in SPS struct which are to be removed. Apparently H264 content in MSS is always non-interlaced/progressive, so we can just pass 0 for field_pic_flag and don't need to parse any slice headers first if there's no external signalling. But even if that's not the case the new code is not worse than the existing code. https://msdn.microsoft.com/en-us/library/cc189080%28VS.95%29.aspx https://bugzilla.gnome.org/show_bug.cgi?id=723352 2016-05-26 10:28:14 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: use single marker at end of filtering PID list Avoids at least ~100 unneeded assignment operations at runtime 2016-05-23 16:31:05 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: simplify reporting of set polarity 2016-05-23 14:41:40 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix bandwidth-hz property description Bandwidth Hz is no longer a DVBT-only property 2016-05-23 14:02:10 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix usage of PES & DVR acronyms everywhere Additionally, improve message on gst_poll_new() failure 2016-05-26 20:16:07 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: always unref the context on a collision Otherwise we will leak GstGLContext's when adding the same context more than once. Fixes a regression caused by 5f9d10f6036068502ad23e1ec86a73e341801ae1 in the gstglcontext unit test that failed with: Assertion 'tmp == NULL' failed 2016-05-25 13:38:47 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: Revert "aggregator: Start the task when linked" This reverts commit 302580c3815136d29479c3a8cae611d6e2ff3709. 2016-05-20 14:34:37 -0400 Nicolas Dufresne * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: Don't cache buffer pool Pools cannot be used by the two elements at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=766611 2016-04-13 16:30:28 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Start the task when linked Until now we would start the task when the pad is activated. Part of the activiation concist of testing if the pipeline is live or not. Unfortunatly, this is often too soon, as it's likely that the pad get activated before it is fully linked in dynamic pipeline. Instead, start the task when the first serialized event arrive. This is a safe moment as we know that the upstream chain is complete and just like the pad activation, the pads are locked, hence cannot change. https://bugzilla.gnome.org/show_bug.cgi?id=757548 2016-05-25 09:09:01 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: win32: Add debug category in gstglcontext_wgl.c https://bugzilla.gnome.org/show_bug.cgi?id=766867 2016-05-16 20:02:28 +0800 Haihua Hu * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glimagesink: support video rotation using transform matrix Add "rotate-method" to glimagesink and apply transform matrix to vertex coordinate to control rotation. https://bugzilla.gnome.org/show_bug.cgi?id=765795 2016-05-24 23:39:27 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: glvideomixer: fix race retrieving the GL context from the display _get_gl_context() can be called concurrently from either propose_allocation() or decide_allocation(). If it so happens that this happens at the same time, the check for whether we already had a GL context was outside the lock. Inside the lock and loop, the first thing that happens is that we unref the current GL context (if valid) as if there was a conflict adding it to the display. If the timing was unlucky, subsequent use of the GL context would be referencing an already unreffed GL context object resulting in a critical: g_object_ref: assertion 'object->ref_count > 0' failed https://bugzilla.gnome.org/show_bug.cgi?id=766703 2016-05-24 23:38:22 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: add some debugging about retrieving GL contexts 2016-05-25 10:01:38 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Re-add accidentially removed GST_DEFINE_MINI_OBJECT_TYPE() 2016-05-23 15:24:53 +0300 Guillaume Desmottes * gst-libs/gst/player/gstplayer.c: player: fix suburi getter debug message The property is a string, not a boolean. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-25 09:53:15 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't set subtitle URI directly but dispatch to the player thread Otherwise we do state changes and everything in the application thread, which might block and more important can cause reentrant signals. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-23 20:11:17 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Ensure that the debug category is always initalized Before the initializer was only run if dmabuf support was used. https://bugzilla.gnome.org/show_bug.cgi?id=766794 2016-05-24 23:30:09 +1000 Arjen Veenhuizen * ext/gl/gstgltransformation.c: gltransformation: make the pivot-z property READWRITE Instead of just being READABLE. https://bugzilla.gnome.org/show_bug.cgi?id=766818 2016-05-23 10:40:58 +0300 Guillaume Desmottes * ext/gl/gstgltestsrc.c: gltestsrc: fix src_impl leak https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-24 00:55:11 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/player/Makefile.am: g-i: pass compiler env to g-ir-scanner It's what introspection.mak does as well. Should fix spurious build failures on gnome-continuous. 2016-05-24 07:17:22 +1000 Jan Schmidt * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: pnmdec: Fix ASCII parsing Parse gray16 properly in ascii mode, and fix some bugs around reading data in chunks when ascii values cross chunk boundaries 2016-05-19 01:28:04 +1000 Jan Schmidt * tests/check/Makefile.am: * tests/check/elements/pnm.c: pnm: Add a basic unit test Test that we can run an encode / decode cycle in various formats without errors 2016-05-19 01:04:36 +1000 Jan Schmidt * gst/pnm/gstpnmenc.c: pnmenc: Make output caps match the srcpad template Don't output 'image/pnm', which isn't even in the template caps. Instead, output a mime-type consistent with what we are encoding. 2016-05-18 17:19:40 +1000 Jan Schmidt * gst/pnm/gstpnmenc.c: pnmenc: Tidy up code, support BE/LE GRAY16 properly Remove code that dealt with odd strides separately - there's not really any overhead to just using 1 codepath for both matched and unmatched stride output. Add separate codepaths for BE vs LE GRAY16 input so they're handled properly 2016-05-16 21:22:57 +1000 Jan Schmidt * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: pnmdec: Actually output LE or BE GRAY16 as negotiated Add codepaths to output GRAY16 in little or big endian as negotiated. Move all output format negotiation into a central function and clean it up 2015-10-22 17:06:01 +0200 Dimitrios Katsaros * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmutils.c: pnmdec: Implementation of GRAY16 handling https://bugzilla.gnome.org/show_bug.cgi?id=757022 2015-10-19 17:15:30 +0200 Dimitrios Katsaros * gst/pnm/gstpnmenc.c: pnmenc: Implementation of GRAY16 handling https://bugzilla.gnome.org/show_bug.cgi?id=757022 2016-05-20 19:25:57 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmsbufferpool.c: kmsbufferpool: error only if no allocator Do not expect an allocator from the configuration, but expect to have already one set. 2016-05-15 11:52:55 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: frame copy log in performance category Log the message when the frame is going to be copy (worse case) under the performance log category. https://bugzilla.gnome.org/show_bug.cgi?id=766466 2016-05-15 11:51:22 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: use trace level for buffer render log Instead of using debug level for logging each buffer rendered, use trace level. https://bugzilla.gnome.org/show_bug.cgi?id=766466 2016-05-23 17:00:22 +0530 Arun Raghavan * gst-libs/gst/player/gstplayer-media-info.c: player: Fix documentation for gst_player_video_info_get_framerate() Document out parameters and fix function name. 2016-05-18 16:00:47 +0300 Guillaume Desmottes * tests/check/libs/player.c: player: use gst_check_init() in test Calling GST_DEBUG() in test rely on the default category to be defined, which is done in gst_check_init(). https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-20 17:28:52 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: openjpegenc: enable MCT for RGB video https://bugzilla.gnome.org/show_bug.cgi?id=766732 2016-05-20 14:08:03 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: group DVB-T2 substream-id check with its corresponding set_prop() 2016-05-20 13:57:45 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add DVB-S2 sub-stream ID check Disable if invalid (> 255) instead of blindy setting this property regardless of its actual value. 2016-05-20 13:47:06 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: clarify consequence of passing a wrong ID to the substream filter 2016-05-19 17:05:33 +0300 Guillaume Desmottes * ext/gl/gltestsrc.c: gltestsrc: fix shaders ref counting The gltestsrc element uses two shaders: color_shader and snow_shader. Those are alternatively assigned to the SrcShader->shader pointer and their reference was transferred to it. Only the SrcShader->shader was unreffed (in _src_shader_deinit()) so only one shader was properly freed, the other one was leaked. Fixed this by giving an extra ref to SrcShader->shader and unreffing the 2 shaders in _src_smpte_free(). https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-19 16:55:31 +0300 Guillaume Desmottes * ext/gl/gstglmosaic.c: glmosaic: fix shader leak gst_gl_mosaic_init_shader() is called twice with test_glmosaic so the first shader was leaked. https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-16 17:11:53 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Unparent internal window before destroying it For some reason DestroyWindow() deadlock if it's called from parent window's KeyPress event. https://bugzilla.gnome.org/show_bug.cgi?id=766533 2016-05-16 15:26:53 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Don't steal parent focus when creating internal window This fix regression introduced by 0acc18c60f6f962cc6553f6047fdb64891bab544. https://bugzilla.gnome.org/show_bug.cgi?id=766520 2016-05-14 11:56:59 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't wait if input buffer is after output If the input buffer is after the end of the output buffer, then waiting for more data won't help. We will never get an input buffer for this point. This fixes compositing of streams from rtspsrc. https://bugzilla.gnome.org/show_bug.cgi?id=766422 2016-05-19 09:25:57 -0700 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: fix potential NULL deref This bug was found via cppcheck static analysis. If android.hardware.Camera.getParameters returns NULL, then object will be NULL, and we won't allocate params. This means that the GST_DEBUG statement referencing params->object will be invalid. Fix this by exiting early if android.hardware.Camera.getParameters returns NULL. https://bugzilla.gnome.org/show_bug.cgi?id=766638 2016-05-19 11:33:52 -0700 Martin Kelly * sys/androidmedia/gstahcsrc.c: ahc: fix typo in doc blurb https://bugzilla.gnome.org/show_bug.cgi?id=766679 2016-05-18 16:55:38 +0300 Guillaume Desmottes * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix pending tags leak https://bugzilla.gnome.org/show_bug.cgi?id=766662 2016-05-18 12:30:05 +0300 Guillaume Desmottes * sys/kms/gstkmssink.c: kmssink: chain up finalize method https://bugzilla.gnome.org/show_bug.cgi?id=766597 2016-05-18 12:33:51 -0700 Martin Kelly * tests/examples/opencv/gstfacedetect_test.c: * tests/examples/opencv/gsthanddetect_test.c: examples: opencv: typo fix https://bugzilla.gnome.org/show_bug.cgi?id=766639 2016-05-18 21:29:15 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: support CVPorts CVPorts are ports that take a buffer. For now we just fill the buffers with the control value. 2016-05-18 21:26:50 -0700 Stefan Sauer * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: lv2: use _OBJECT log variants and lower log level when processing 2016-05-17 14:33:04 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: move ISDB-T bandwidth check to _is_valid_bandwidth() Allows test to be used for delivery system auto-detection. Additionally, add 0 (auto) as valid value. 2016-05-17 14:19:30 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add '0' as a valid value for bandwidth Underlying API considers this the BANDWIDTH_HZ equivalent to the old BANDWIDTH_AUTO for BANDWIDTH. 2016-05-17 13:53:54 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: factor out and reuse DVB-T/T2 bandwidth checks Use new utility function as an additional check for delivery system auto-detection. 2016-05-17 12:06:45 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: recognize additional bandwidths at zap parsing Previously ignored 1.712, 5 and 10 MHz values are also valid 2016-05-16 12:27:50 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: canonicalise function names Had to be done at some point: gst_videoaggregator_* -> gst_video_aggregator_* Also fix up some function names with typos. 2016-05-15 23:31:33 -0700 Stefan Sauer * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: lv2: cleanup the predicates Use the defines from the headers and get rid of our own namespace defines. Replace the 'role' prop with 'designation'. 2016-05-15 23:27:22 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: tweak enum logging Log more details when we find a bad scalepoint and downgrade the logging of the good enum valzes. 2016-05-15 22:05:43 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2utils.c: lv2: generate enums from scalepoints Plugins can provide a set of named values for a control port. Ideally only those values are set for the property. Check if all scalepoints are integers and if so generate an enum type. 2016-05-15 19:45:26 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: reduce log spam for property bounds Only complain about bad bounds, if the plugin actually set those. Otherwise silently adjust our defaults. 2016-05-15 17:58:51 -0700 Stefan Sauer * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: lv2: remove lv2_symbol_pred We're not actually using it. 2016-05-15 17:54:06 -0700 Stefan Sauer * ext/lv2/gstlv2source.c: lv2: remove leftover FIME 2016-05-15 00:41:12 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: special case detection when DVB-T and T2 seem valid There is no way to tell one over the other when parameters seem valid for DVB-T and DVB-T2 and the adapter supports both. Reason to go with the former here is that, from experience, most DVB-T2 channels out there seem to use parameters that are not valid for DVB-T, like QAM_256 https://bugzilla.gnome.org/show_bug.cgi?id=765731 2016-05-14 23:32:49 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add transmission mode check for DTMB 2016-05-13 01:54:56 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: use proper fe_spectral_inversion enum identifiers 2016-05-13 01:25:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: explicitly disable stream filter for invalid ids 2016-05-13 00:50:45 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: do not assume DVB-T from zap file alone DVB-T/T2 have the same number of fields so we were wrongly assuming DVB-T for DVB-T2 broadcasts. Not setting the delivery system here allows for dvbsrc to make an informed guess based on the channel parameters. 2016-05-13 00:12:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: consider transmission mode for delsys autodetection 2016-05-13 00:04:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: factor out transmission mode check against delsys 2016-05-12 16:43:09 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve delivery system autodetection 2016-05-12 14:12:09 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add modulation checks for DVB-T and T2 2016-05-15 14:46:40 -0700 Stefan Sauer * ext/ladspa/gstladspa.c: ladspa: use _OBJECT log variants for plugin_init Also trim leading whitespae. 2016-05-15 14:45:15 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: add registry caching Use the plugin_cache extra data to avoid introspecting over and over again. 2016-05-14 12:35:15 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2utils.c: lv2: implemnt the map-extension This is the most used one and at the same time easy to implement sing QGQuark. 2016-05-14 12:34:10 -0700 Stefan Sauer * ext/lv2/gstlv2.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lvs: add require_feature checks Plugins can report what host features they need. Since we start to implement host feature check which plugins we can no suuport. 2016-05-15 14:34:33 +0200 Edward Hervey * gst/compositor/compositor.c: compositor: Check if we get a valid display ratio As is done everywhere else, and avoids setting bogus values And remove useless * checks (we always provide valid values and it's an internal function). CID #1320700 2016-05-15 14:16:55 +0200 Edward Hervey * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Remove dead assignments * read is only used within the while loop * todo and bsize only need to be assigned once 2016-05-15 15:11:10 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Add uri-loaded signal that is fired whenever a new URI is actually loaded This allows knowing the "boundary" from which on all following signals are for the new URI. https://bugzilla.gnome.org/show_bug.cgi?id=766062 2016-05-14 17:05:45 +0100 Matthew Waters * ext/opencv/gstfacedetect.cpp: opencv/facedetect: fix the build with opencv 3.1.0 - add using namespace std; for std::vector - use the cpp header imgproc.hpp file for the cv::ellipse function instead of the C header - Mat no longer takes IplImage in it's constructors, use the cvarrtomat() function instead. Fixes a couple of build errors: gstfacedetect.cpp:140:30: error: ‘vector’ does not name a type structure_and_message (const vector < Rect > &rectangles, const gchar * name, ^~~~~~ gstfacedetect.cpp:140:37: error: expected ‘,’ or ‘...’ before ‘<’ token structure_and_message (const vector < Rect > &rectangles, const gchar * name, ^ gstfacedetect.cpp: In function ‘void structure_and_message(int)’: gstfacedetect.cpp:143:13: error: ‘rectangles’ was not declared in this scope Rect sr = rectangles[0]; [...] gstfacedetect.cpp: In function ‘void gst_face_detect_run_detector(GstFaceDetect*, cv::CascadeClassifier*, gint, gint, cv::Rect, std::vector >&)’: gstfacedetect.cpp:562:31: error: no matching function for call to ‘cv::Mat::Mat(IplImage*&, cv::Rect&)’ Mat roi (filter->cvGray, r); [...] gstfacedetect.cpp: In function ‘GstFlowReturn gst_face_detect_transform_ip(GstOpencvVideoFilter*, GstBuffer*, IplImage*)’: gstfacedetect.cpp:594:44: error: no matching function for call to ‘cv::Mat::Mat(cv::Mat, bool)’ Mat mtxOrg (cv::cvarrToMat (img), false); [...] gstfacedetect.cpp:734:79: error: ‘ellipse’ was not declared in this scope ellipse (mtxOrg, center, axes, 0, 0, 360, Scalar (cr, cg, cb), 3, 8, 0); 2016-05-15 11:20:21 +0100 Tim-Philipp Müller * Makefile.am: build: add removed example dir to CRUFT_DIRS 2016-05-15 13:33:53 +0300 Sebastian Dröge * 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-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: docs: Update for git master 2016-03-04 22:10:47 +0100 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedaudioparse.h: * gst/rawparse/plugin.c: * gst/rawparse/unalignedaudio.h: rawparse: Add unaligned raw audio parsing to audioparse and add new element This helps in cases where raw audio data is being delivered, but the buffers do not come in sample aligned sizes. The new unalignedaudioparse bin can be autoplugged and configures an internal audioparse element to align the data. audioparse itself gets support for audio/x-unaligned-raw input caps; the output caps then contain the same information, except that the name is changed to audio/x-raw (since audioparse aligns the data). This ensures that souphttpsrc ! audioparse still works. https://bugzilla.gnome.org/show_bug.cgi?id=689460 2016-05-15 13:14:41 +0300 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: demote no platform display debug to info Avoids confusing everyone with a warning that's not always fatal. https://bugzilla.gnome.org/show_bug.cgi?id=746933 2016-05-15 12:31:38 +0300 Matthew Waters * .gitignore: .gitignore: remove non-existent directory Partially reverts cdf91c455d4057a9d234766510bd2e8a44e1ed05 2016-05-15 19:05:48 +1000 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Handle system header when scanning for timestamps. When scanning for SCR / PTS / DTS, handle the case where the pack header is followed by the optional system header, so we can correctly collect timestamps in such cases. https://bugzilla.gnome.org/show_bug.cgi?id=623860 2016-05-15 19:04:20 +1000 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Fix backward timestamp scan on small files. When the file size is smaller than the configured 4MB scan limit for timestamps, don't underflow the guard variable when checking if it's time to stop. Limit the backward SCR scan to the same 4MB as the PTS scan. Add some comments. 2016-05-13 13:27:37 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: don't do bogus adjustments on seek if we have no first_pts Fixes bogus segment and gap events with start=GST_CLOCK_TIME_NONE if we failed to find a first_pts. https://bugzilla.gnome.org/show_bug.cgi?id=623860 2016-05-14 16:59:14 +0300 Alex-P. Natsios * configure.ac: configure: check for shm_open() in OpenBSD In OpenBSD there is no "actual" librt that programs can link with, instead the system/base libc provides the functions one would customarily find there. https://bugzilla.gnome.org/show_bug.cgi?id=766441 2016-05-14 16:32:06 +0300 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: use the affine transformation meta if available downstream We can avoid a render pass if downstream supports the affine transformation meta and increase the performance of some pipelines involving gltransformation. Implemented by checking for the affine transformation in the allocation query from downstream and combining our matrix with that of upstream's (or creating our own). 2016-05-14 16:27:26 +0300 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: gl: take the affine transformation in NDC Provide a function to get the affine matrix in the meta in terms of NDC coordinates and use as a standard opengl matrix. Also advertise support for the affine transformation meta in the allocation query. 2016-05-14 15:50:57 +0300 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: actually attempt to propose an allocation upstream We were always failing the allocation query as a flag was never being set to signal a successful negotiation. Fix by setting the required flag on a successful caps event from upstream. 2016-05-12 10:52:06 -0700 Stefan Sauer * ext/lv2/Makefile.am: * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2source.c: lv2: add a source plugin Update the readme with a working example and list what feature are supported. 2016-05-11 23:12:07 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: add support for host features Implement a log handler as the first one. 2016-05-13 15:24:35 +0300 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: check the error of the presentation for out of date allows us to resize the swapchain correctly. 2016-05-12 19:44:26 +0100 Damian Ziobro * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: remove unused variables: upstream_live and queried_latency https://bugzilla.gnome.org/show_bug.cgi?id=766343 2016-05-11 15:45:47 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve debug output from _open_frontend() * Clarify message on delsys info gathering * Combine redundant INFO/DEBUG pair 2016-05-11 15:26:24 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix invalid dereference of delsys data Use GPOINTER_TO_INT to read GINT_TO_POINTER stored data. 2016-05-11 23:48:21 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amcaudiodec: Set layout=interleaved in raw audio caps Otherwise the GAP event fallback negotiation will fail to produce complete srcpad caps, and thus fail. https://bugzilla.gnome.org/show_bug.cgi?id=766289 2016-05-11 16:42:35 +0200 Edward Hervey * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Fix previous commit The frames queue might return nothing (be empty) if we're flushing. Move the assertion to after the flushing check 2016-05-10 22:04:48 -0700 Stefan Sauer * ext/lv2/gstlv2.c: lv2: skip plugins that need host features We haven't implemented this yet and those plugin would fail when we instantiate them. 2016-05-10 21:11:41 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: add classification from metadata This helps apps to structure the element collection. 2016-04-08 07:53:44 +0200 Stefan Sauer * ext/lv2/Makefile.am: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: extract helper code into lv2utils This is a preparaton for adding lv2-sources and -sinks. 2016-05-10 12:24:03 -0700 Stefan Sauer * ext/ladspa/gstladspasource.c: * ext/ladspa/gstladspautils.c: ladspa: code cleanup Whitespace cleanup and unify codeing style. 2016-05-10 12:22:04 -0700 Stefan Sauer * ext/ladspa/gstladspautils.c: ladspa: simplify the code Remove a local var and just use the parameter value. 2016-05-10 18:14:36 +0200 Philippe Normand * sys/applemedia/corevideobuffer.c: applemedia: fix core_video_meta init registration 2016-05-10 16:46:43 +0530 Nirbheek Chauhan * .gitignore: .gitignore: Ignore tests/examples/gl/gtk generated files And another test binary. 2016-05-10 16:24:08 +0530 Nirbheek Chauhan * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: openjpeg: Port to 2.1 and require a pkg-config file for 2.0 and 2.1 The port was trivial, and according to the NEWS file nothing else has changed, but it is possible that other API was changed without proper notification. OpenJPEG upstream has shipped a pkg-config file for the past 4 years, and all distros should be shipping it by now. https://bugzilla.gnome.org/show_bug.cgi?id=766213 2016-05-10 09:40:38 +0100 Tim-Philipp Müller * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: fix use-after-free in error code path 2016-05-10 09:38:28 +0100 Tim-Philipp Müller * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: remove unnecessary checks for non-NULL frame We can't get a NULL frame here. CID 1359923 2016-05-09 15:23:32 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: abort at open frontend failure 2016-05-09 12:50:47 +0300 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Ship all headers in tarballs Some were missing from noinst_HEADERS. https://bugzilla.gnome.org/show_bug.cgi?id=766163 2016-05-04 16:32:19 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: smarten-up delsys autodetection logic When there's no explicit delivery system information for a channel in the channel configuration file and the user hasn't selected one via setting the delsys property, we *guessed* it by selecting the last supported delsys reported by the driver. This change provides the basis for smarter delsys auto detection and implements a rule for DVB-T2. Rules for other delivery systems can be added in _guess_delsys() in a similar way. Additionally: Store list of adapter-supported delivery systems instead of querying the driver each time this information is needed. Related to: https://bugzilla.gnome.org/show_bug.cgi?id=765731 2016-05-03 15:00:55 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: remove remaining polling logic from _tune_fe() No need to do any polling here. 2016-05-06 10:51:39 +0200 Carlos Garcia Campos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Take the ownership of the src element The URI downloader is creating the source element with gst_element_factory_make() that returns a floating reference that nobody is consuming. This is causing problems in WebKit, where the smart pointers used to take references of the source elment get confused and end up consuming the floating reference and then releasing the element, which usually crashes because the URI downloader still tries to use its src element. See https://bugs.webkit.org/show_bug.cgi?id=144040. This commit adds two helper functions to ensure and destroy the source element, to make the code simpler and less error prone. The ensure method takes care of checking if we can reuse the existing one or we need to create a new one, taking always its ownership. The destroy method simply avoids duplicated code to set the source to NULL state and then unref it. https://bugzilla.gnome.org/show_bug.cgi?id=766053 2016-04-29 12:31:01 +0100 Alex Ashley * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix threading issues in gst_adaptive_demux_wait_until function The gst_adaptive_demux_wait_until() function can be woken up either by its end_time being reached, or from other threads that want to interrupt the waiting thread. If the thread is interrupted, it needs to cancel its async clock callback by unscheduling the clock callback. However, the callback task might already have been activated, but is waiting for the mutex to become available. In this case, the call to unschedule does not stop the callback from executing. The solution to this second issue is to use a reference counted object that is decremented by both the gst_adaptive_demux_wait_until() function and the call to gst_clock_id_wait_async (). In this way, the GstAdaptiveDemuxTimer object is only deleted when both the gst_adaptive_demux_wait_until() function and the async callback are finished with the object. https://bugzilla.gnome.org/show_bug.cgi?id=765728 2016-03-03 15:50:49 +0900 Justin Kim * sys/androidmedia/Makefile.am: * sys/androidmedia/gst-android-graphics-surfacetexture.c: * sys/androidmedia/gst-android-graphics-surfacetexture.h: * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: * sys/androidmedia/gstamc.c: androidmeida: replace with new surfacetexture for ahcsrc GstAmcSurfaceTexture is more clear and simple than GstAGSurfaceTexture. https://bugzilla.gnome.org/show_bug.cgi?id=763099 2016-05-05 23:53:05 +1000 Matthew Waters * ext/vulkan/Makefile.am: vulkan/build: add the build directory to the list of includes Fixes out of tree builds from tarballs. https://bugzilla.gnome.org/show_bug.cgi?id=764758 2016-05-05 23:18:11 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: fix up display synchronization Use the semaphores in the correct place, before and after the submission for acquiring and presenting the swapchain buffer. Waiting on the fence that only signals the command buffer completion rather than the completion of the presentation is racy with the destruction of the vulkan buffers associated with that image. Wait on the device to be idle instead after presenting. 2016-05-05 18:00:25 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: use gst_video_sink_center_rect for positioning the video Don't try to reimplement it badly. 2016-05-05 10:44:22 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: fix description 2016-05-05 10:41:53 +0100 Tim-Philipp Müller * gst/videofilters/gstvideodiff.c: videodiff: fix supported formats in template caps 2016-05-05 10:40:37 +0100 Tim-Philipp Müller * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstvideodiff.h: videodiff: fill in FIXME metadata and docs with description https://bugzilla.gnome.org/show_bug.cgi?id=765989 2016-05-04 12:17:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: gl/egl: replace gsteglimagememory with an EGLImage wrapper That can be passed to GstGLMemoryEGL. This also ports the dmabuf uploader to GstEGLImage and GstGLMemoryEGL. 2016-01-21 22:18:17 +0900 Gwang Yoon Hwang * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglupload.c: gl: implement GstGLMemoryEGL Because current GstEGLImageMemory does not inherit GstGLMemory, GLUpload allocates additional GLMemory and upload the decoded contents from the decoder which uses EGLImage (e.g. gst-omx in RPi). This work adds GstGLMemoryEGL to avoid this overhead. Decoders allocate GstGLMemoryEGL and decode its contents to the EGLImage of GstGLMemoryEGL. And GLUpload uses this memory without allocation of additional textures and blit operations. [Matthew Waters]: gst-indent the sources and fix a critical retreiving the egl display from the memory. https://bugzilla.gnome.org/show_bug.cgi?id=760916 2016-05-04 01:16:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: glmemory: add wrapped data pointers to setup_buffer Allows creating wrapped memories with GstGLAllocationParams. The wrapped pointers will be set in the parameters before being passed to the memory allocation function. 2016-05-04 00:19:44 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: glbasememory: take a pointer as the wrapped gpu handle Allows passing arbitrary data to wrap the the specific memory implementation which is required for some memory implementations. 2016-05-04 11:30:11 +1000 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: output sysmem by default 2016-05-02 11:30:43 +0300 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Convert Windows strings to UTF8 before comparing against UTF8 strings The device name and descriptions returned are in the locale encoding, not UTF8. Our device name property is in UTF8 though, so we need to convert. https://bugzilla.gnome.org/show_bug.cgi?id=756948 2016-05-03 11:11:24 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Set blend functions in ::negotiated_caps() instead of ::fixate_caps() The latter should not change any state but just fixate the caps, while the former is always called when srcpads caps are decided. https://bugzilla.gnome.org/show_bug.cgi?id=765324 2016-04-20 15:11:44 +0300 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: decklink: Fix swapped name and nick in GEnumValues https://bugzilla.gnome.org/show_bug.cgi?id=742878 2016-04-14 18:26:33 +0300 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add initial 10bit support for YUV modes https://bugzilla.gnome.org/show_bug.cgi?id=742878 2016-05-03 15:52:38 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: decklink: Fix indentation 2016-05-03 19:58:00 +1000 Matthew Waters * configure.ac: * gst-libs/gst/gl/gstglapi.h: gl: fix gles3 header usage for older platforms Some platforms provide an old version of GLES2/gl2.h and GLES2/gl2ext.h that will fail when including GLES3/gl3.h due to missing typedef's. Seen on the RPi. 2016-04-29 23:32:03 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: avoid possible race on _output_frontend_stats() Make sure we send out our info message before we give up ownership of the structure. 2016-04-29 14:53:06 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: var rename in _output_frontend_params() Now it matches the rest of its status peers. Underscore was a leftover from previous times. 2016-04-29 14:45:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: always output known frontend status params The only mandatory frontend information for our use case is its status. Make sure we output what we know instead of choking at the first error getting SNR, BER or any of the other informational parameters. 2016-04-29 12:06:52 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: refactor signal locking loop Get rid of preliminar frontend status check. 2016-04-29 11:18:53 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop unneeded polling step on _tune_fe() Additional waiting was not needed. Specially considering it came after a successful READ_STATUS ioctl and was followed by an EINTR-resilent retry. 2016-04-29 17:19:19 -0300 Thiago Santos * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: effectively check if there is a language 'language' is an array and not a pointer. CID 1358835 2016-04-29 13:54:01 +0300 Sebastian Dröge * gst-libs/gst/player/Makefile.am: player: Add required paths via pkg-config for gstreamer-base-1.0 and gstreamer-video-1.0 for gobject-introspection The GstBase-1.0.gir and GstVideo-1.0.gir files are required by GstPlayer. Uninstalled builds fail if these files cannot be found. https://bugzilla.gnome.org/show_bug.cgi?id=765804 2016-04-08 16:47:15 +0800 Haihua Hu * ext/gl/Makefile.am: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstopengl.c: gl: enable gldeinterlace on OpenGL ES 1.Porting the exist deinterlace shader and OpenGL callback to be compatible with OpenGL ES. 2.Add a our blur vertical shader to gldeinterlace. 3.Add a property named “method” to let user choose which deinterlace function to use. Default to choose blur vertical method for better performance. [Matthew Waters]: fix name of greedyh in method property (was greedhy) and port to git master. https://bugzilla.gnome.org/show_bug.cgi?id=764873 2016-04-28 15:19:17 +0530 Barun Kumar Singh * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * win32/common/libgstplayer.def: player: Add audio-video-offset property and setter/getter API https://bugzilla.gnome.org/show_bug.cgi?id=765315 2016-04-19 19:43:03 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Port more things to GLES/GL 3 compatibility And move the shader mangling code into a single place instead of having a copy in glcolorconvert and glviewconvert. https://bugzilla.gnome.org/show_bug.cgi?id=765266 2016-04-19 19:27:33 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: GLES3 deprecates texture2D() and it does not work at all in newer versions than 3.3 Use the newer texture() function instead. This fixes glimagesink and other things on various Android devices. https://bugzilla.gnome.org/show_bug.cgi?id=765266 2016-04-19 10:27:43 -0300 Thiago Santos * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: write language descriptor when language is available Adds a new function to mpegts lib to create a iso639 language descriptor from a language and use it in mpegtsmux to add a language descriptor to audio streams that have a language set. https://bugzilla.gnome.org/show_bug.cgi?id=763647 2016-04-26 16:48:58 +0800 Song Bing * sys/pvr2d/gstpvrbufferpool.c: pvrbufferpool: fix gst_meta_register() parameters https://bugzilla.gnome.org/show_bug.cgi?id=765581 2016-04-22 10:15:39 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Check all pads for data when live When live, we still need to inspect all pads queue in order to determin if we have received the first buffer or not. https://bugzilla.gnome.org/show_bug.cgi?id=765431 2016-04-15 16:51:17 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Fix locking when using the clock This fixes a race where we check if there is a clock, then it get removed and we endup calling gst_clock_new_single_shot_id() with a NULL pointer instead of a valid clock and also calling gst_object_unref() with a NULL pointer later. https://bugzilla.gnome.org/show_bug.cgi?id=757548 2016-04-25 16:50:55 +0300 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: H265 level idc 0 is not valid Don't put level=0 into the caps, it confuses other elements. https://bugzilla.gnome.org/show_bug.cgi?id=765538 2016-04-25 16:50:18 +0300 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: H264 level idc 0 is not valid Don't put level=0 into the caps, it confuses other elements. https://bugzilla.gnome.org/show_bug.cgi?id=765538 2016-04-22 14:51:31 +0200 Jerome Laheurte * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: fix DirectShow caps negotiation and set capture pin caps Some cameras (IDS) have broken DirectShow drivers which incorrectly fill some fields in the VIDEOINFOHEADER structure; comparison between suggested and supported media types in CBaseRenderer should ignore deprecated and/or not essential fields; additionaly explicitely setting the mediatype for the capture pin before trying to connect it works around another IDS driver bug, and should have been already done anyway. https://bugzilla.gnome.org/show_bug.cgi?id=765428 2016-04-22 14:48:41 +0200 Jerome Laheurte * sys/dshowsrcwrapper/gstdshow.cpp: dshowsrcwrapper: add support for RGB32, RGB555, RGB565 and RGB8 color spaces Some cameras (IDS) only support those. https://bugzilla.gnome.org//show_bug.cgi?id=765427 2016-04-22 14:44:57 +0200 Jerome Laheurte * sys/dshowsrcwrapper/CMakeLists.txt: dshowsrcwrapper: fix include path and link error Add include path so that the cmake-generated project is able to find gstconfig.h Add /SAFESEH:NO to MSVC linker options so it can link with gstreamer libraries on Windows. https://bugzilla.gnome.org//show_bug.cgi?id=765426 2016-04-22 15:02:01 -0300 Thiago Santos * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: tests: adaptivedemux: only check for data length after seek When the test involves doing a seek, only check for data size after the seek. The final segment range after seek might be different/smaller than the threshold for doing the seek and doing the check before seeking would fail. 2016-02-16 14:26:55 +0000 Florin Apostol * tests/check/elements/test_http_src.c: * tests/check/elements/test_http_src.h: adaptivedemux: tests: use macro to define names of request and response structs Following the Don't Repeat Yourself principle, define macros for the structures that contain the request and response headers, so that the name is not repeated in multiple places in multiple files. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:26:42 +0000 Florin Apostol * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/hls_demux.c: adaptivedemux: tests: improved checks for expected data Check the size of received data for each buffer received by AppSink https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 11:37:44 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: * tests/check/elements/dash_demux.c: dashdemux: tests: added content protection test Test content protection Configure 3 content protection sources: - a uuid scheme/value pair - a non uuid scheme/value pair (dash recognises only uuid schemes) - a complex uuid scheme, with trailing spaces and capital letters in scheme uri Only the uuid scheme should be recognised. We expect to receive 2 content protection events https://bugzilla.gnome.org/show_bug.cgi?id=758064 2016-04-22 17:04:57 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: strip lead/trailing whitespace from descriptortype attributes The spec says it is xs:anyURI and leading and trailing whitespace are to be ignored https://bugzilla.gnome.org/show_bug.cgi?id=758064 2016-02-16 14:26:05 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: added test for media download error for in stream fragment Tested download error for a fragment that is not the last media fragment in the stream. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:25:45 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: added test for download errors during header download Test header download error. Let the adaptive demux download a few bytes, then instruct the GstTestHTTPSrc element to generate an error while the fragment header is still being downloaded. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:25:32 +0000 Florin Apostol * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/dash_demux.c: dashdemux: tests: refactor testFragmentDownloadError Renamed testFragmentDownloadError to testMediaDownloadErrorLastFragment. Added gst_adaptive_demux_test_unexpected_eos function. Remove unneeded testFragmentDownloadErrorCheckSizeOfDataReceived. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:25:04 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: tested latency query Updated query test to also check if dash responds correctly to a latency query. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:24:49 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: moved testQuery after testFragmentDownloadError Moved testQuery after testFragmentDownloadError so that testDownloadError and testFragmentDownloadError are grouped together. The commit just moved the testQueryCheckDataReceived and GST_START_TEST (testQuery) functions but git gets confused in matching the lines and reports a lot of changes in the patch. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:24:26 +0000 Florin Apostol * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/dash_demux.c: adaptivedemux: tests: create a GstDashDemuxTestCase class Create a GstDashDemuxTestCase class that extends from GstAdaptiveDemuxTestCase. This new class will contain all the DASH specific fields. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:24:09 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: added support to pass various parameters to http src callbacks Added support to pass various parameters to http src callbacks using GstStructure. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-03-01 14:54:01 -0800 Scott D Phillips * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchecksumsink.h: checksumsink: add "hash" property and allow more checksum types Now any GChecksumType can be used by GstChecksumSink, adding support for MD5, SHA-256 and SHA-512 in addition to SHA-1. https://bugzilla.gnome.org/show_bug.cgi?id=763006 2016-04-22 08:20:14 +0200 Edward Hervey * tests/check/Makefile.am: check: Fix LDADD/CFLAGS for player unit test It now requires libgstvideo 2016-02-16 14:44:39 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: adaptivedemux: tests: use a GstTestClock as the system clock To allow the adaptivedemux live stream tests to run in non-realtime, use a GstTestClock as the system clock. This allows the unit tests to complete more quickly than if they had to complete in real time. https://bugzilla.gnome.org/show_bug.cgi?id=762147 2016-02-16 14:44:27 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: use realtime_clock for waiting for a condition There are several places in adaptivedemux where it waits for time to pass, for example to wait until it should next download a fragment. The problem with this approach is that it means that unit tests are forced to execute in realtime. This commit replaces the use of g_cond_wait_until() with single shot GstClockID that signals the condition variable. Under normal usage, this behaves exactly as before. A unit test can replace the system clock with a GstTestClock, allowing the test to control the timing in adaptivedemux. https://bugzilla.gnome.org/show_bug.cgi?id=762147 2016-02-16 14:44:10 +0000 Florin Apostol * ext/dash/gstdashdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: use GstSystemClock to all real-time calculations A realtime clock is used in many places, such as deciding which fragment to select at start up and deciding how long to sleep before a fragment becomes available. For example dashdemux needs sample the client's estimate of UTC when selecting where to start in a live DASH stream. The problem with dashdemux calculating the client's idea of UTC is that it makes it difficult to create unit tests, because the passage of time is a factor in the test. This commit changes dashdemux and adaptivedemux to use the GstSystemClock, so that a unit test can replace the system clock when it needs to be able to control the clock. This commit makes no change to the behaviour under normal usage, as GstSystemClock is based upon the system time. https://bugzilla.gnome.org/show_bug.cgi?id=762147 2016-04-21 14:58:45 +0300 Sebastian Dröge * win32/common/libgstplayer.def: win32: Add new API to .def file 2016-04-19 10:59:46 +0530 Barun Kumar Singh * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/Makefile.am: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-player.pc.in: player: Add support for multiview settings https://bugzilla.gnome.org/show_bug.cgi?id=765302 2016-04-21 10:06:40 +0900 Hyunjun Ko * sys/applemedia/vtenc.c: applemedia: vtenc: fix build break on iOS Fix 'conflicting types' error https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 15:34:55 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add test for invalid DVB-T2 bandwidth 2016-04-20 14:47:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: warn on wrong DVB-T2 stream ID value Stream ID, used for DVB-T2/S2 and ISDB-S can not exceed 255 for the former. Change makes this explicit. 2016-04-20 21:07:28 +0900 Hyunjun Ko * sys/applemedia/vtenc.c: applemedia: vtenc: Fix a warning by weak-link symbol Fix this warning address of function 'VTCompressionSessionPrepareToEncodeFrames' will always evaluate to 'true' [-Wpointer-bool-conversion] https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 16:19:55 +0900 Hyunjun Ko * ext/gl/caopengllayersink.m: gl: caopengllayersink: fix a minor warning Fix "unused variable" warning https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 16:00:36 +0900 Hyunjun Ko * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/cocoa: Fix incompatible type warning https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-19 14:57:22 +0530 Nirbheek Chauhan * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: Don't include deprecated and unavailable d3dx9tex.h It's not needed, not on native Windows nor with mingw, and we don't use anything from it anyway https://bugzilla.gnome.org/show_bug.cgi?id=765250 2016-04-14 12:46:58 +0200 Philipp Zabel * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add sync support for secondary pipes The vblank event request must specify the crtc for which to request the event. This fixes kmssink synchronisation for crtcs other than the first. https://bugzilla.gnome.org/show_bug.cgi?id=765064 2016-04-19 09:30:39 +0300 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Fix indentation 2016-04-19 10:51:14 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: need to clean window_id when state change form READY to NULL When application change pipeline state NULL->READY and then READY->NULL, glimagesink will not clear glsink->window_id. After that, when application change state NULL->READY, the new_window_id is equal to window_id, glimagesink will not set window handle. It will use the internal window but not the window create by application. https://bugzilla.gnome.org/show_bug.cgi?id=765241 2016-04-18 13:46:55 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: plug caps leak It was losing ref of the original 'ret' caps that would be returned or returning it with 2 references to it. 2016-03-28 15:44:27 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: properly handle interlace-mode restrictions videoaggregator can't handle interlace-mode changes so it must always restrict itself to the first interlacing mode it receives. Tests included https://bugzilla.gnome.org/show_bug.cgi?id=754495 2016-01-22 16:49:57 +0000 Raffaele Rossi * ext/dtls/README: dtsl: add some documentation https://bugzilla.gnome.org/show_bug.cgi?id=760994 2016-04-17 15:45:41 +0100 Heinrich Fink * ext/gl/caopengllayersink.m: gl/caopengllayersink: Actually unset caps_change flag after resize Otherwise, the sink would execute "on_resize" for each frame. https://bugzilla.gnome.org/show_bug.cgi?id=765194 2016-04-17 15:43:20 +0100 Heinrich Fink * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: Apply layer.contentsScale to viewport dims Fixes blurry content on HiDPI screens https://bugzilla.gnome.org/show_bug.cgi?id=765194 2016-04-16 22:33:48 +1000 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Remove an unnecessary check for NULL before g_free 2016-04-15 13:22:51 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst/compositor/compositor.c: Drop usage of 'overlayed' to mean 'overlaid' 2016-04-15 13:10:41 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: show invalid delsys/mod combination if found 2016-04-15 11:29:48 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add modulation check for ATSC 2016-04-11 23:45:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: do not autodetect delsys twice The process is dealt with the first time the adapter is opened, there is no need to do this again. 2016-04-14 22:32:05 -0700 Aleix Conchillo Flaqué * ext/srtp/gstsrtpdec.c: srtpdec: also check for "roc" in caps Currently, gst_srtp_dec_sink_setcaps is happy if the "roc" field is not provided in the caps. If it is not provided the stream will be properly inserted in the hash table with a default "roc". Then, when the first buffer arrives validate_buffer will find an existing stream in the hash table and will not signal request-key, not allowing the user to provide a "roc". This patch expects "roc" in gst_srtp_dec_sink_setcaps, if not found a request-key will be signaled and the user will be able to provide all the srtp fields, including "roc". https://bugzilla.gnome.org/show_bug.cgi?id=765079 2014-07-28 12:14:02 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Parse more slice header fields https://bugzilla.gnome.org/show_bug.cgi?id=733872 2014-07-28 11:17:05 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Add vbv_delay field to PictureHeader https://bugzilla.gnome.org/show_bug.cgi?id=733872 2014-07-28 11:14:22 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Add more fields to the GstMpegVideoSequenceHdr Added the fields load_non_intra_quantiser_matrix and load_chroma_intra_quantiser_matrix to the sequence header structure. https://bugzilla.gnome.org/show_bug.cgi?id=733872 2016-04-14 10:02:32 +0100 Julien Isorce * README: * common: Automatic update of common submodule From 6f2d209 to ac2f647 2016-04-13 18:12:25 +0100 Damian Ziobro * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: free pad_data->language before g_strdup in order to avoid memory leak https://bugzilla.gnome.org/show_bug.cgi?id=765005 2016-04-13 13:10:12 +0300 Sebastian Dröge * sys/applemedia/corevideobuffer.c: applemedia: GstCoreVideoMeta in the plugin using only public API has no ctx member 2016-04-13 13:09:05 +0300 Sebastian Dröge * sys/applemedia/coremediabuffer.c: applemedia: GstCoreMediaMeta in the plugin using only public API has no ctx member 2016-04-13 10:25:32 +0300 Sebastian Dröge * ext/directfb/dfbvideosink.c: * sys/pvr2d/gstpvrbufferpool.c: meta: Initialize all remaining metas in their init function https://bugzilla.gnome.org/show_bug.cgi?id=764902 2016-04-13 10:17:24 +0300 Sebastian Dröge * gst-libs/gst/codecparsers/gstmpegvideometa.c: * sys/applemedia-nonpublic/coremediabuffer.c: * sys/applemedia-nonpublic/corevideobuffer.c: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: meta: Initialize all GstMeta fields During allocation they are not initialized to all zeroes. https://bugzilla.gnome.org/show_bug.cgi?id=764902 2016-04-11 22:08:03 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: avoid redundant delsys querying There is no need to query the frontend for the list of supported delivery systems if we are selecting one from the list of autodetected ones. 2016-04-10 18:58:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: add information to file not found error Adds useful failure info (like filename) comming from g_file_get_contents() as done for every other error in this block. 2016-04-13 00:43:18 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/cocoa/eagl: don't leak GThread's when dispatching messages gst_gl_context_get_thread() returns a refed pointer, we need to unref it. 2016-04-12 11:14:22 +0100 Luis de Bethencourt * ext/gl/gstgltestsrc.c: gltestsrc: don't dereference null pointer funcs can be NULL, it is one of the two conditions of the OR statement above, so confirm it isn't before dereferencing with funcs->free. CID 1358388 2016-04-12 04:16:55 +1000 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Fix when applying new PMT with same program number When the sub-class is delaying deactivation of the old program, but it has the same program number as the new program, don't overwrite the old program in the hash table and then steal the new program back out of it. Instead, add the new program to the hash table after handling removal of the old one. 2016-04-06 04:15:40 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: keep the parent buffer around when converting EGLImage to 2D textures e.g. receiving and releasing a buffer from OMX too early will potentially cause textures to be overwritten while/before they are displayed. 2016-04-11 16:43:45 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: glbasemixer: chain up to the parent implementation 2016-04-11 18:06:25 +1000 Matthew Waters * ext/vulkan/vkdevice.c: vulkan: prettify the various versions in the debug output output human readable numbers. 2016-04-11 20:23:45 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: openh264dec: minor clean-ups Remove unused property getters, setters; outdated comment. 2016-04-11 20:11:53 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264dec.h: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264: remove unnecessary instance private structures Element instance structures are not public API, so no need for the extra indirection to hide the data. 2016-04-11 20:04:00 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: openh264: fix indentation 2016-02-12 14:21:27 +0100 Philipp Zabel * sys/kms/gstkmsutils.c: kmssink: enable UYVY, YUY2, and YVYU (interleaved YUV 4:2:2) formats https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-12 14:17:32 +0100 Philipp Zabel * sys/kms/gstkmsutils.c: kmssink: enable NV16 (chroma-interleaved YUV 4:2:2) format https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-12 14:17:13 +0100 Philipp Zabel * sys/kms/gstkmsutils.c: kmssink: enable Y42B (planar YUV 4:2:2) format https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-03-04 16:53:58 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: keep last rendered buffer in memory https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-20 23:13:54 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: wait for page flip or vblank This patch requests for drmModePageFlip() for the used CRTC, if the kernel module suppports async page flip. If it does not, the element requests for a vblank event. A GstPoll waits for the event to happen. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-10 20:43:47 +0100 Víctor Manuel Jáquez Leal * configure.ac: * sys/kms/Makefile.am: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add dmabuf support This patch will enable the import of dmabufs into a KMS buffer using the PRIME kernel interface. If the driver does not support prime import, the method is skipped. It has been tested with a Freescale I.MX6 board. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-01-31 13:12:34 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: * sys/kms/gstkmsutils.c: * sys/kms/gstkmsutils.h: kmssink: calculate display ratio Get the aspect ratio given the information provided by libdrm, and with it calculate the display ratio. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-01-20 12:00:51 +0100 Víctor Manuel Jáquez Leal * configure.ac: * sys/Makefile.am: * sys/kms/Makefile.am: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmsbufferpool.c: * sys/kms/gstkmsbufferpool.h: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: * sys/kms/gstkmsutils.c: * sys/kms/gstkmsutils.h: kmssink: add plugin and sink element This is simple video sink that use libdrm/libkms API to render frames. The element uses planes to render through drmModeSetPlane(). It has been tested in an Exynos4412 board and in a Freescale I.MX6 board. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-04-10 17:46:15 +1000 Matthew Waters * configure.ac: * ext/vulkan/Makefile.am: * ext/vulkan/vkapi.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkwindow.c: * ext/vulkan/wayland/Makefile.am: * ext/vulkan/wayland/vkdisplay_wayland.c: * ext/vulkan/wayland/vkdisplay_wayland.h: * ext/vulkan/wayland/vkwindow_wayland.c: * ext/vulkan/wayland/vkwindow_wayland.h: * ext/vulkan/wayland/wayland_event_source.c: * ext/vulkan/wayland/wayland_event_source.h: vulkan: add a wayland winsys implementation 2016-04-10 17:43:39 +1000 Matthew Waters * ext/vulkan/xcb/vkwindow_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.h: vulkan/xcb: getProcAddress winsys functions There's no guarantee that they will always be exposed by the vulkan loader. 2016-04-09 17:52:28 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: copy necessary buffer metadata timestamps, flags, etc 2016-04-11 08:34:00 +1000 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: cocoa, eagl: use libdispatch to schedule GL calls Use libdispatch instead of GMainLoop to dispatch GL calls. libdispatch is more optimized and cuts a lot of poll()/pthread_* overhead. 2016-04-11 08:02:45 +1000 Alessandro Decina * gst-libs/gst/gl/gstglwindow.c: glwindow: reduce the number of GMutexes and GConds in send_message() Don't create many short lived locks/conds in gst_gl_window_send_message. This is a micro optimization to save a bunch of pthread_* calls which are expensive on OSX/iOS and possibly other platforms. 2016-04-10 22:18:38 +0100 Tim-Philipp Müller * win32/common/libgstgl.def: win32: update .def file for new gl api 2016-04-08 18:34:45 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: add necessary wait stages to the submission info 2016-04-08 18:32:41 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: add srgb formats to our list of formats intel returns them for their surface formats. 2016-04-08 18:09:53 +1000 Matthew Waters * ext/vulkan/vkimagememory.c: vulkan: silence a validation warning filling out the image barrier 2016-04-08 18:09:06 +1000 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: vulkan: use the correct validation layer name The threading validation layer has changed names. 2016-04-08 14:07:55 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Initialize capture_time to NONE so it can be used if no video frame is provided but audio is CID 1358390 2016-04-08 17:56:50 +1000 Matthew Waters * ext/vulkan/vkutils.c: * ext/vulkan/vkutils_private.h: vulkan: only warn on not found layers don't error out completely https://bugzilla.gnome.org/show_bug.cgi?id=764545 2016-04-08 17:41:07 +1000 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: vulkan: don't g_error when failing to find validation layers Aborting the application is never a good thing to do for recoverable errors. Just warn and error out instead. https://bugzilla.gnome.org/show_bug.cgi?id=764545 2016-04-08 14:51:44 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: nvenc: add some rate control modes/properties Supported modes are constant quantizer, cbr, vbr and vbr with a minimum quantizer. 2016-04-07 23:24:47 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvh264enc.c: nvenc: move codec config initialization from the implementation to the base class Supports a better separation of configuration parameters 2016-04-07 22:46:08 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvenc.c: * sys/nvenc/gstnvh264enc.c: nvenc: add preset selection Some presets are not always supported on all devices and will cause an error if used. Specifically, the LOSSLESS presets are known to not work everywhere. 2014-07-16 02:44:42 +0200 Marcin Kolny * ext/chromaprint/gstchromaprint.c: chromaprint: emit notify::fingerprint signal when fingerprint is ready In addition to adding the fingerprint to the tags. https://bugzilla.gnome.org/show_bug.cgi?id=733233 2016-04-04 20:55:51 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: repect the result of find_best_format in the default update_caps We weren't using the result of find_best_format at all. Also, move the find_best_format usage to the default update_caps() to make sure that it is also overridable. https://bugzilla.gnome.org/show_bug.cgi?id=764363 2016-04-05 21:40:58 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Fix fallback to GstVideoBufferPool The replacement pool need to be added to the query, otherwise the baseclass won't see it. We also need to properly remove the rejected pools. https://bugzilla.gnome.org/show_bug.cgi?id=763441 2016-04-05 21:07:32 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: rfbsrc: Implement decide_allocation virtual This way we can use the base class for buffer allocation, hence use fill() instead of create() virtual. This also adds a strict check on the select pool buffer size as we don't support strides and padding. This is based on initial patch proposed by Sebastien Dröge, from which I also fixed a buffer pool leak. https://bugzilla.gnome.org/show_bug.cgi?id=763441 2016-04-05 15:31:49 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Fix caps negotiation As we currently only use the server reported "natural" format, caps negotiation should simply be limited to telling the base class which format to use. Fix the negotiation by moving the associated code into negotiate() virtual function. Also, use gst_base_src_set_caps() rather then setting it on the pad directly. Also protect against this method being called multiple time (we can't renegotiate for now). This change also moves some network code that was being run during the application state change call, to be run on the streaming thread. https://bugzilla.gnome.org/show_bug.cgi?id=739598 2016-03-26 13:36:34 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Implement unlock() method This prevent stalls when we try to stop the source while waiting for the server to send more updates. 2016-03-24 18:27:54 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Check for connection being closed Although it's not very well documented, g_input_stream_read_all() will set the number of bytes read to 0 if the connection is closed rather then returning an error. 2016-03-24 18:26:46 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Check for read/write error Check for read/write error. This prevent undefined behaviour that rely on unitialized buffer. 2016-03-24 18:14:17 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: Add a internal method to disconnect This also removes the disconnected boolean hack. 2016-03-24 18:14:37 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Don't ignore errors This prevents recursion on error. This used to happen as we don't change the state when something fails. We end up running and failing in the same state forever. 2016-03-24 16:46:49 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: Serialize write operations Currently we send key events from seperate threads. IOStream does not allow concurrent write operations, so protect this operation using a mutex. 2016-03-17 15:24:52 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Add 3.7/3.8 security type negotiation 2016-03-16 18:48:49 -0400 Nicolas Dufresne * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: Port to GSocketClient Using GSocketClient we can simplify a lot the read/write operation. This also provide an GSocketConnection (a GIOStream) which can then be used with the GTlsClientConnection for secure connections. Note that we use _write_all() to ensure all bytes have been read. This is to follow the fact the none of the _send() calls check the return value. 2016-03-16 16:49:29 -0400 Nicolas Dufresne * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.h: * gst/librfb/rfb.h: * gst/librfb/rfbdecoder.c: rfbsrc: Remove useless library wrapping We use a sinlge .c file, simplify everything by removing that static library. 2016-03-16 16:49:09 -0400 Nicolas Dufresne * gst/librfb/Makefile.am: * gst/librfb/rfb.c: * gst/librfb/rfb.h: * gst/librfb/rfbbuffer.c: * gst/librfb/rfbbuffer.h: * gst/librfb/rfbcontext.h: * gst/librfb/rfbdecoder.h: * gst/librfb/rfbutil.h: rfbsrc: Cleanup dead code Remove all the unused stuff, the include header, definition and C code that don't contribute anything to this element. 2016-03-14 15:08:13 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Properly fallback to 3.3 If the major version is not 3, then the minor version provided should be ignored, as it is meaningless for our fallback. 2016-03-14 15:05:45 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Cleanly handle security negotiation failure When the security cannot be negotiated, the server returns security type of 0 (failure). In that case, the next step is to read the error reason string. 2016-04-01 14:36:15 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: clamp segment durations to each other and period end 5.3.2.1 in the spec. https://bugzilla.gnome.org/show_bug.cgi?id=751792 2015-09-10 13:22:58 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: unit testing reproducing segment duration overflow unit test reproducing https://bugzilla.gnome.org/show_bug.cgi?id=751792 With minor changes by Vincent Penquerc'h. 2016-04-05 14:49:51 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't accept packets without timestamps after a discont We have no idea which timestamps they are supposed to have so the only thing we can do at this point is to drop them. Packets without timestamps happen if audio was captured but no corresponding video, which shouldn't happen under normal circumstances. https://bugzilla.gnome.org/show_bug.cgi?id=747633 2016-04-04 22:21:30 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't crash when receiving video frames but no audio And mark these events as disconts to reset time tracking in the audio source. https://bugzilla.gnome.org/show_bug.cgi?id=747633 2015-08-08 15:17:54 +0100 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: decklinkvideosrc: don't crash if we get NULL video frames in the callback For some reason we seem to sometimes get NULL video_frames in the ::VideoInputFrameArrived() callback, observed on Intensity Pro cards. https://bugzilla.gnome.org/show_bug.cgi?id=747633 2016-03-23 03:16:11 +0000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: add support for the affine transformation meta 2016-03-23 03:14:40 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: support the affine transformation meta for any texture target 2016-04-05 16:22:49 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: set the current texture to 0 before mapping If we fail mapping, we don't want to use undefined video data in the subclass. 2015-09-08 14:37:57 +0200 Patricia Muscalu * ext/curl/gstcurlbasesink.c: curlsink: catch an unknown error In this case the socket callback has not been called by libcurl and the curlsink has not been notified about any connection problems by libcurl. This indicates that it's a bug in libcurl so catch it as an unknown error. https://bugzilla.gnome.org/show_bug.cgi?id=754432 2016-04-04 13:43:30 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: proxy the start-time-* properties from aggregator 2016-04-04 11:28:35 +0200 Santiago Carot-Nemesio * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: dtls: Use unique names for internal elements to ease debugging https://bugzilla.gnome.org/show_bug.cgi?id=748651 2016-04-03 17:56:06 +0200 Aurélien Zanelli * gst-libs/gst/base/gstaggregator.c: aggregator: remove duplicated test of flow_return in pad_chain_internal https://bugzilla.gnome.org/show_bug.cgi?id=764549 2016-04-03 18:06:20 +0900 Kouhei Sutou * sys/directsound/Makefile.am: directsoundsrc: add missing -lole32 CLSIDFromString() requires ole32.dll. See https://msdn.microsoft.com/en-us/library/windows/desktop/ms680589%28v=vs.85%29.aspx CLSIDFromString() is introduced at f9464ce3549c2b3948a582464631ba4f8dd0d5e7 . https://bugzilla.gnome.org/show_bug.cgi?id=764523 2016-03-31 11:21:35 +0200 Christoffer Stengren * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: gdpdepay: Query for buffer allocator before using default https://bugzilla.gnome.org/show_bug.cgi?id=764361 2016-03-22 19:27:39 +0200 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Allow interlaced sink caps, do passthrough Allow interlace to receive already interlaced content, if compatible with its configuration. In that case, it will just do passthrough. https://bugzilla.gnome.org/show_bug.cgi?id=764036 2016-04-01 21:24:34 +0200 Stefan Sauer * ext/lv2/README: README: update to 1.0 and lilv 2016-04-01 18:33:13 +0200 Stefan Sauer * ext/lv2/gstlv2filter.c: lv2filter: remove the variable for the registry klass tag Just pass the string when registering. 2016-04-01 18:31:36 +0200 Stefan Sauer * ext/lv2/gstlv2filter.c: lv2filter: remove copy and paste of doc blob This doc block is already in gstlv2.c. 2016-04-01 12:59:19 +0200 Vanessa Chipirras Navalon * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: opencv: segmentation: Ported to OpenCV version 3.1 Add namespace bgsegm, replacement functions and Template class for new OpenCV versions because these functions have been removed. cvarrToMat() is added because it is compatible with all versions of OpenCV and the use of class Mat constructor is eliminated, it is also deprecated in 3.X versions. Use the namespace cv because some functions are called many times. This patch keeps compatibility with 2.4 https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-04-01 14:12:08 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: codecparser: vp9: move persistent fields from GstVp9FrameHdr to GstVp9Parser The subsampling_x, subsampling_y, bit_depth, color_space and color_range fileds are moved from GstVp9FrameHdr to the global GstVp9Parser structure. These fields are only present in keyframe or intra-only frame, no need to duplicate them for inter-frames. This is an ABI change. https://bugzilla.gnome.org/show_bug.cgi?id=764370 2016-04-01 12:08:53 +0200 Vanessa Chipirras Navalon * ext/opencv/gsttextoverlay.h: opencv: textoverlay: Ported to OpenCV version 3.1 imgproc_c.h is added because CvFont struct needs it in any 3.x version. We use this structure in GstOpencvTextOverlay. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-04-01 11:56:20 +0300 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: constrained-baseline is a subset of baseline We get into this code path if the profile is already constrained-baseline and downstream does not support constrained-baseline. So we should try baseline and the other compatible profiles. https://bugzilla.gnome.org/show_bug.cgi?id=764448 2016-03-22 07:19:03 +0000 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimage: perform eglCreateImage in the gl thread while calling eglCreateImage without a GL context current in the executing thread works on the RPi, some other implementations will return errors. Marshall the eglCreateImage to the GL thread to appease these implementations. 2016-04-01 14:58:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: support outputting to multiple draw buffers on GLES3 A similar change that was done to glcolorconvert adding the necessary shader mangling. 2016-03-31 19:50:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: implement multiple render targets for GLES3 There are numerous slight differences required between Desktop GL and GLES3 for multiple render targets. 1. gl_FragData doesn't exist at all and one is required to use 'layout (location = ?) out ...' instead. 2. gl_FragColor doesn't exist, same as 1 3. texture2D() has been deprecated Fortunately most of these have been taken care of with GL3 and the shader mangling already exists so just expand the conditions they are used in. The gl_FragData issue requires a new mangle pass though. We also use this new pass on desktop GL for consistency. 2016-03-31 18:23:22 -0300 Thiago Santos * tests/check/elements/mssdemux.c: tests: mssdemux: do not use gst_object_unref for pure GObject* Deallocate GObject* with g_object_unref instead of gst_object_unref. Even if it works now, it is confusing and in the future it might not work if any GstObject specifics are added. https://bugzilla.gnome.org/show_bug.cgi?id=762142 2016-02-16 13:55:54 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: use g_object_unref for test data The GstDashDemuxTestCase object is allocated using g_object_newv but in many places was being deallocated using gst_object_unref. This was caused by commit ae3ed25025e34ea9b09df59d22d7ebd7294560bc. https://bugzilla.gnome.org/show_bug.cgi?id=762142 2016-03-31 16:08:12 +0100 Luis de Bethencourt * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: motioncells: fully construct MotionCells Some members of MotionCells were not being initialized in the constructor. Protect from potential garbage memory usage by fully initializing it. Moving m_frameSize out of the class because it is only used in performDetectionMotionCells(). CID 1197704 2016-04-01 00:23:25 +1100 Matthew Waters * ext/gl/Makefile.am: gl/build: add missing '\' at the end of the line in MakeFile.am Otherwise the following elements aren't included in the correct variable. Fixes error in 'make distcheck' failing to find gstgltestsrc.h 2016-03-31 23:07:17 +1100 Matthew Waters * tests/check/Makefile.am: gl/tests/pipelines: add custom _CFLAGS and LDADD As is done everywhere else. From what I can gather from make -C tests/check V=1 $(GST_PLUGINS_BAD_CFLAGS) is required in order to find in-tree headers as well as srcdir != builddir configurations. 2016-03-31 22:20:01 +1100 Matthew Waters * tests/check/Makefile.am: gl/tests: only build the simple-launch-lines test if we have GL 2016-03-31 20:00:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't use the predefined variable name sample Using 'sample' as a variable name is an error in GLES3 2016-03-22 23:10:24 +1100 Matthew Waters * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: gl/examples: fix switchvideooverlay for wayland and call XInitThreads() for X11 2016-03-21 15:25:21 +1100 Matthew Waters * configure.ac: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/.gitignore: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/gtkvideooverlay.vcproj: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: gl/examples: remove duplicated videooverlay example filtervideooverlay proved the exact same example (only with a extra glfiltercube). 2016-03-21 15:23:41 +1100 Matthew Waters * tests/examples/gl/gtk/3dvideo/main.cpp: gl/examples/3d: additions for wayland support 2016-03-17 23:51:44 +1100 Matthew Waters * tests/check/Makefile.am: * tests/check/pipelines/simple-launch-lines.c: gl/tests: add missing test to the build system Also update it for the current api 2016-03-17 23:50:00 +1100 Matthew Waters * ext/gl/effects/gstgleffectssources.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: gldifferencematte: port to gl3/gles2 2016-02-26 20:55:47 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstopengl.c: gltestsrc: port to gles2/gl3 This makes gltestsrc work everywhere \o/ - workaround RPi returning invalid values for positive coords in the checker shader - reduce the number of iterations in the mandelbrot shader for gles2 https://bugzilla.gnome.org/show_bug.cgi?id=751540 2016-02-26 16:57:47 +1100 Matthew Waters * ext/gl/gltestsrc.c: gltestsrc: port smpte pattern to shaders Loosely based on patch by Lubosz Sarnecki https://bugzilla.gnome.org/show_bug.cgi?id=751540 2016-02-26 12:02:15 +1100 Matthew Waters * ext/gl/gltestsrc.c: gltestsrc: implement the circular method https://bugzilla.gnome.org/show_bug.cgi?id=759801 2016-02-25 21:18:31 +1100 Matthew Waters * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: add a generic src framework Any unsupported pattern (circular) results in an error 2016-02-29 20:15:24 +1100 Matthew Waters * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: glsterosplit: remove internal glupload/glcolorconvert They are provided separately as elements and no other element contains the internal references to glupload/glcolorconvert. 2016-03-31 19:43:04 +1100 Matthew Waters * configure.ac: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: gl: add support for building against GLES3 headers with a fallback to GLES2 headers if available. 2016-03-31 19:38:12 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add checking the read implementation format/type on gles2 platforms By default, reading GL_RED or GL_RG us unsupported by glReadPixels unless exposed through GL_COLOR_READ_IMPLEMENTATION_FORMAT/TYPE. This allows downloading multiple-planar video frames where possible. 2016-03-31 19:35:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: rollback map state when subclass map fails Otherwise our state doesn't reflect reality. 2016-03-31 19:31:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: unmap pbo memory on pbo read error Otherwise we are returning failure with a dangling map! Also only unset the NEED_DOWNLOAD flag in download_transfer() if the read actually succeeds. 2016-03-31 19:25:32 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: add glBindFragDataLocation There are some cases where it's needed for binding in/out variables in shaders. e.g. glsl 150 (gl 3.2) doesn't support the 'layout (location = ?)' specifiers in the shader source so we have to bind them ourselves. 2016-03-31 12:20:30 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle find_stream_for_pad() without g_assert_not_reached() if no pad is found Happens e.g. if a RECONFIGURE event is sent from downstream while we're switching pads at this very moment. The old pad is gone and the stream has a new pad. https://bugzilla.gnome.org/show_bug.cgi?id=764404 2016-03-31 01:21:42 +1100 Matthew Waters * sys/nvenc/gstnvbaseenc.c: nvenc: add support for building against version 6 of the SDK While mostly API compatible, the ABI has changed so binaries will not work across header versions (and ultimately nvidia driver releases). https://bugzilla.gnome.org/show_bug.cgi?id=763324 2016-03-30 22:34:59 +0100 Vanessa Chipirras Navalon * 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/inspect/plugin-opencv.xml: * ext/opencv/Makefile.am: * ext/opencv/gstopencv.cpp: * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstpyramidsegment.h: opencv: pyramidsegment: delete element cvPyrSegmentation() has been deprecated in OpenCV 3.0, and there isn't any function to replace it. Deleting this element so we can support OpenCV 3.1 without build issues. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-26 16:52:37 +0100 Vanessa Chipirras Navalon * ext/opencv/gstcvsmooth.cpp: opencv: gstcvsmooth: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and the use the class constructor Mat is eliminated because is deprecated in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 10:05:13 +0100 Vanessa Chipirras Navalon * ext/opencv/gstgrabcut.cpp: opencv: grabcut: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and using the class Mat constructor is eliminated, because is deprecated in 3.X versions. The use the using namespace cv because is called some functions many times. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 15:37:39 +0100 Vanessa Chipirras Navalon * ext/opencv/gstfaceblur.cpp: opencv: faceblur: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and the use of the class constructor Mat is eliminated because is deprecated in 3.X versions. Included 'using namespace std' because it is needed for the Vector class in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 15:51:37 +0100 Vanessa Chipirras Navalon * ext/opencv/gsthanddetect.cpp: opencv: handdetect: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and the use of the class constructor Mat is eliminated because is deprecated in 3.X versions. Included 'using namespace std' because it is needed for the vector class in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 16:51:13 +0100 Vanessa Chipirras Navalon * ext/opencv/gstretinex.cpp: opencv: retinex: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and using the class constructor Mat is eliminated because is deprecated in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-28 16:19:46 +0100 Vanessa Chipirras Navalon * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: opencv: disparity: Ported to OpenCV version 3.1 'METHOD_VAR', 'METHOD_GC' is removed because there aren't equivalent functions in new OpenCV versions. 'img_right_as_cvMat_rgb', 'img_left_as_cvMat_rgb' and 'depth_map_as_cvMat2' variables is removed because these aren't used. cvarrToMat() is added because it is compatible with all versions of Opencv and using the class Mat constructor is eliminated, because is deprecated in 3.X versions. The use 'using namespace cv' because is called some functions many times. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-02-01 13:58:49 +0100 Vanessa Chipirras Navalon * ext/opencv/gstskindetect.cpp: opencv: skindetect: Ported to OpenCV version 3.1 cvCVPixToPlane() has been deprecated in OpenCV 3.0, and there is function to replace it cvSplit(). The include compat.hpp is deleted because in 3.X versions doen't exist and it isn't necessary for 2.4.X versions in this element. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-28 17:40:51 +0100 Vanessa Chipirras Navalon * configure.ac: * ext/opencv/gstopencvutils.cpp: opencv: Ported to OpenCV version 3.1 OpenCV configure.ac was changed to work with new versions of OpenCV 3.X. A new include is added gstopencvutils.cpp because it contains the previous. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-03-30 10:34:07 +0300 Sebastian Dröge * sys/androidmedia/gstahcsrc.c: ahcsrc: There's no point in read-only CONSTRUCT properties And creating one is causing assertions. Also get rid of the other CONSTRUCT property as it's a) unneeded for default initialization and b) you're not supposed to use constructor properties when creating element instances and the GStreamer API doesn't provide direct ways for doing so. https://bugzilla.gnome.org/show_bug.cgi?id=764339 2016-03-07 14:57:35 +0100 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletexdec: Simplify negotiation code No need to use a while() loop if we're going only going to use the first structure of the caps ... CID #1341748 2016-03-28 13:52:07 +0300 Sebastian Dröge * tests/check/libs/aggregator.c: aggregator: Fix leak in unit test GST_PAD_PROBE_HANDLED means that we should've unreffed the probe data, it was handled by us in one way or another. 2016-03-28 08:46:10 +0530 Nirbheek Chauhan * .gitignore: .gitignore: Ignore some more test temporary files 2016-03-28 08:45:45 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: tests/compositor: Add test for aggregator pad numbering Tests that the behaviour in 7a5cb5a473 is being conformed to. 2016-03-27 19:06:50 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Fix strcmp test for sink template 2016-03-27 18:41:30 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Don't try to be too smart while allocating pad names Previously, while allocating the pad number for a new pad, aggregator was maintaining an interesting relationship between the pad count and the pad number. If you requested a sink pad called "sink_6", padcount (which is badly named and actually means number-of-pads-minus-one) would be set to 6. Which means that if you then requested a sink pad called "sink_0", it would be assigned the name "sink_6" again, which fails the non-uniqueness test inside gstelement.c. This can be fixed by instead setting padcount to be 7 in that case, but this breaks manual management of pad names by the application since it then becomes impossible to request a pad called "sink_2". Instead, we fix this by always directly using the requested name as the sink pad name. Uniqueness of the pad name is tested separately inside gstreamer core. If no name is requested, we use the next available pad number. Note that this is important since the sinkpad numbering in aggregator is not meaningless. Videoaggregator uses it to decide the Z-order of video frames. 2016-02-23 15:11:36 +0100 Thibault Saunier * configure.ac: * ext/lv2/Makefile.am: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: lv2: Port filters to GStreamer 1.0 and use lilv instead of slv2 Properly separate files as we will not have only one single base class for all elements as we used to with 0.10, but the same way it is done with ladspa, we subclass GstAudioFilter, GstBaseSource etc... https://bugzilla.gnome.org/show_bug.cgi?id=678207 2016-03-27 14:29:58 +0530 Nirbheek Chauhan * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstbasewidget.c: gtk: Fix logging in base widget and fix desc of GL sink Set a default category for gtkgstbasewidget lest the logging go to the 'default' category where it can't be found easily 2016-03-27 03:11:45 +0200 Yann Jouanin * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: rtmpsrc plugin : add timeout option https://bugzilla.gnome.org/show_bug.cgi?id=764251 2016-03-18 13:35:37 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Instead of releasing request pads on stop(), clear them only Request pads are requested by applications and as such should only be released by them again. Instead of releasing them when stopping the muxer, just clear their state so that they can be used again when starting the muxer again. https://bugzilla.gnome.org/show_bug.cgi?id=763862 2016-03-05 09:47:27 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-media-info-private.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer.c: * win32/common/libgstplayer.def: player: Add is_live flag to the GstPlayerMediaInfo https://bugzilla.gnome.org/show_bug.cgi?id=763126 2016-02-29 11:39:54 +0200 Sebastian Dröge * gst/sdp/Makefile.am: * gst/sdp/gstsdpelem.c: * gst/sdp/gstsdpsrc.c: * gst/sdp/gstsdpsrc.h: sdp: Add new sdpsrc element This can read from an SDP file or get the SDP data via property. Works around the problem that sdpdemux inside decodebin fails because the GST_STATE_CHANGE_NO_PREROLL is not observed by the pipeline. See https://bugzilla.gnome.org/show_bug.cgi?id=702495 https://bugzilla.gnome.org/show_bug.cgi?id=762860 2016-03-25 17:49:14 +1100 Matthew Waters * ext/gtk/gtkgstglwidget.c: gtk/gl: don't assert when gdk doesn't provide a GL context Allows the application to check whether gtkglsink is supported by setting the element to READY. https://bugzilla.gnome.org/show_bug.cgi?id=764148 2016-03-07 19:41:19 -0300 Thiago Santos * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: plug EIT string leak 2016-03-07 19:06:19 -0300 Thiago Santos * sys/dvb/dvbbasebin.c: dvbbasebin: unref pat table after usage Remember to unref the GPtrArray of the PAT table after use 2016-03-04 20:05:38 -0300 Thiago Santos * sys/dvb/dvbbasebin.c: dvbbasebin: plug some leaks Plug various leaks in dvbbasebin. 2016-03-03 11:31:01 -0300 Thiago Santos * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: simplify variable reset Just set it directly to 0, instead of checking and reseting 2016-03-01 18:21:12 -0300 Thiago Santos * sys/dvb/gstdvbsrc.c: dvbsrc: print time in same format Makes it easier to compare 2016-03-15 16:22:59 -0700 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gstahcsrc.c: ahc: use g_slice_new instead of g_slice_new0 In many cases, we use g_slice_new0 and then immediately overwrite the allocated memory. This is inefficient. Since we're going to immediately overwrite it, we might as well use plain g_slice_new. https://bugzilla.gnome.org/show_bug.cgi?id=763998 2016-03-10 08:50:28 +0900 Vineeth TM * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: post message to application for unhandled keyboard/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=763403 2016-03-10 08:49:01 +0900 Vineeth TM * ext/directfb/dfbvideosink.c: dfbvideosink: post message to application for unhandled keyboard/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=763403 2016-03-10 08:44:57 +0900 Vineeth TM * ext/gtk/gstgtkbasesink.c: gtkbasesink: post message to application for unhandled keyboard/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=763403 2016-03-03 20:10:16 +0900 Justin Kim * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: ahcsrc: remove probe_properties It's a residue of 0.10. https://bugzilla.gnome.org/show_bug.cgi?id=763100 2016-03-04 15:50:26 +0900 Vineeth TM * ext/apexsink/gstapexsink.c: * ext/assrender/gstassrender.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/curl/gstcurlbasesink.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: * ext/dash/gstdashdemux.c: * ext/directfb/dfbvideosink.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdemux.c: * ext/dtls/gstdtlssrtpenc.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/fluidsynth/gstfluiddec.c: * ext/gl/caopengllayersink.m: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgldownloadelement.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsrcbin.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgluploadelement.c: * ext/gl/gstglvideoflip.c: * ext/gme/gstgme.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlssink.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetiger.c: * ext/libde265/libde265-dec.c: * ext/libmms/gstmms.c: * ext/libvisual/visual-gl.c: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttextoverlay.cpp: * ext/openexr/gstopenexrdec.cpp: * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * ext/openni2/gstopenni2src.cpp: * ext/opus/gstopusparse.c: * ext/qt/gstqtsink.cc: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsninputselector.c: * ext/resindvd/rsnparsetter.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/sdl/sdlaudiosink.c: * ext/smoothstreaming/gstmssdemux.c: * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosrc.c: * ext/soundtouch/gstpitch.cc: * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gstspanplc.c: * ext/spandsp/gsttonegeneratesrc.c: * ext/spc/gstspc.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vulkan/vksink.c: * ext/wayland/gstwaylandsink.c: * ext/webp/gstwebpdec.c: * ext/webp/gstwebpenc.c: * ext/x265/gstx265enc.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/insertbin/gstinsertbin.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautovideoconvert.c: * gst/bayer/gstrgb2bayer.c: * gst/camerabin2/gstdigitalzoom.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstvcdparse.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/compositor/compositor.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gsterrorignore.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/hdvparse/gsthdvparse.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/gstrfbsrc.c: * gst/midi/midiparse.c: * gst/mixmatrix/mixmatrix.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmvemux.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/netsim/gstnetsim.c: * gst/nuvdemux/gstnuvdemux.c: * gst/onvif/gstrtponvifparse.c: * gst/onvif/gstrtponviftimestamp.c: * gst/overlay/gstoverlay.c: * gst/patchdetect/gstpatchdetect.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstrawparse.c: * gst/removesilence/gstremovesilence.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: * gst/sdp/gstsdpdemux.c: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/vbidec/gstvbidec.c: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstvc1parse.c: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * gst/yadif/gstyadif.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/androidmedia/gstahcsrc.c: * sys/applemedia-nonpublic/celvideosrc.c: * sys/applemedia-nonpublic/miovideosrc.c: * sys/applemedia/atdec.c: * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.m: * sys/applemedia/avsamplevideosink.m: * sys/applemedia/iosassetsrc.m: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtdec.c: * sys/avc/gstavcsrc.cpp: * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsrc.c: * sys/d3dvideosink/d3dvideosink.c: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvh264enc.c: * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: * sys/pvr2d/gstpvrvideosink.c: * sys/qcam/gstqcamsrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/tinyalsa/tinyalsasink.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * sys/vcd/vcdsrc.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wininet/gstwininetsrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tests/check/elements/autoconvert.c: * tests/check/elements/camerabin.c: * tests/check/elements/test_http_src.c: * tests/check/libs/aggregator.c: * tools/element-templates/sinkpad: * tools/element-templates/sinkpad-audio: * tools/element-templates/sinkpad-simple: * tools/element-templates/sinkpad-template: * tools/element-templates/srcpad: * tools/element-templates/srcpad-audio: * tools/element-templates/srcpad-simple: * tools/element-templates/srcpad-template: bad: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763081 2016-03-07 17:23:23 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: eliminate AHC*_CALL macros Currently, we use AHC*_CALL macros to call many of the Camera functions. However, we already have helper classes to call the Camera functions, so eliminate the macros. As a nice side-benefit, we also get improved error handling and reporting when something goes wrong calling these functions, because a GError gets populated, and we log a GST_ERROR when something fails. This was harder to do using macros, as all error handling was hidden from the caller. https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 11:29:06 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: use gst unref functions https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 14:08:13 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: use gst new object functions https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-03-17 13:44:13 +0000 Vincent Penquerc'h * gst/interlace/gstinterlace.c: interlace: fix negotiation with fixed framerate downstream https://bugzilla.gnome.org/show_bug.cgi?id=762924 2016-03-24 14:08:46 +0200 Sebastian Dröge * tests/examples/gl/gtk/fxtest/fxtest.c: gl/gtk: Fix compiler warning in example fxtest.c: In function ‘main’: fxtest.c:190:3: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] GtkWidget *window; ^~~~~~~~~ 2016-03-24 13:33:12 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.8.0 === 2016-03-24 12:33:19 +0200 Sebastian Dröge * ChangeLog: * 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-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.8.0 2016-03-24 12:05:23 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-03-23 13:43:46 +0100 Thibault Saunier * ext/vulkan/vkinstance.c: vulkan: Minor string fix 2016-03-23 22:13:47 +1100 Matthew Waters * ext/vulkan/vkinstance.c: vulkan: VK_API_VERSION has been removed In a stable release too, naughty. Use VK_API_VERSION_1_0 instead https://bugzilla.gnome.org/show_bug.cgi?id=764066 2016-03-22 07:20:59 +0000 Matthew Waters * gst-libs/gst/gl/glprototypes/sync.h: gl/proto: sync operations are available on GLES 3.0 Without the GST_GL_API_GLES2 bit set, we will not even attempt to look for the function pointers in the core library and will fallback to glFlush/glFinish. 2016-03-22 07:16:34 +0000 Matthew Waters * configure.ac: gl/build: add GST_GL_HAVE_DMABUF to gstglconfig.h it's exposed in public API so hiding it in an AC_DEFINE for config.h only works when building libgstgl itself. Attempting to use libgstgl (especially on egl platforms) will throw a compilation error. 2016-03-21 15:22:15 +0900 Jimmy Ohn * gst/mxf/mxfdemux.c: mxfdemux: Fix query memory leak Peer query isn't being freed in case of GST_QUERY_SEEKING. https://bugzilla.gnome.org/show_bug.cgi?id=763974 2016-03-18 19:45:09 +0200 Sebastian Dröge * ext/vulkan/Makefile.am: vulkan: Ship missing headers with tarballs https://bugzilla.gnome.org/show_bug.cgi?id=763877 2016-03-17 19:24:32 +0000 Aleksander Wabik * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264parse, h265parse: fix handling of downstream force-key-unit events The parser handles the downstream force-key-unit event incorrectly, it tries to parse it as an upstream force-key-unit event, does not check the return value, and then uses uninitialized memory in "all_headers" boolean variable. https://bugzilla.gnome.org/show_bug.cgi?id=763793 2016-03-17 22:43:12 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: unset GL_UNPACK_ROW_LENGTH in opengl3 If the user uploads their own texture without setting the unpack length, then then the result will have the appearance of stride mismanagement due to an incorrect row length. 2016-03-17 16:34:42 +1100 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwtextureshare/main.cpp: gl/examples/qt: restrict the GL API to opengl where needed Until the examples are ported to opengl3/gles2, they will not work with any other GL api. 2016-03-17 16:31:52 +1100 Matthew Waters * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: gl/examples/gtk: call XInitThreads Fixes some sporadic X11 threading assertions. 2016-03-17 03:06:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: remove custom code for setting caps features Just use gst_caps_set_features() instead. 2016-03-17 01:52:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: only allow the same src/sink caps when we are in passthrough mode If we are given caps with extra features (like the overlay composition features), we can only deal with that when we are in passthrough mode. Previously we were bailing entirely and not allowing passthrough filter elements with things like textoverlay. Fixes the following pipeline (assuming glfilter supports passthrough): gl ! textoverlay ! glfilter ! ... ! glimagesinkelement https://bugzilla.gnome.org/show_bug.cgi?id=763756 2016-03-16 22:48:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: deal with the ANY caps feature correctly When transforming, xplode it out into the necessary caps features both with and without the passthough features. Fixes negotiation in the following class of pipelines: gl ! textoverlay ! glupload ! glimagesinkelement https://bugzilla.gnome.org/show_bug.cgi?id=763756 2016-03-16 22:19:25 +1100 Matthew Waters * ext/wayland/wldisplay.c: wayland: fix null pointer dereference on error gnome-shell doesn't the support wl_scaler interface which makes creating a wayland display fail creation. Found in the generic state changes test 2016-03-16 22:16:34 +1100 Matthew Waters * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: glstereo{mix,split}: allow running on GLES 2/3 It's mostly supported for GLES 2.x, fully supported on GLES 3.x 2016-03-16 12:03:53 +0200 Sebastian Dröge * sys/opensles/openslesringbuffer.c: openslesringbuffer: Warn if the position reported by OpenSL is higher than what we queued up so far This would hint at wrong position reporting, and apparently sometimes happens after a seek. 2016-03-16 11:34:46 +0200 Sebastian Dröge * gst/mxf/mxfjpeg2000.c: mxfmux: Fix typo in JPEG2000 colorspace sRGC -> sRGB === release 1.7.91 === 2016-03-15 12:13:17 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.7.91 2016-03-15 11:56:59 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-03-12 15:44:54 +0000 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: tsdemux: add video/x-h265 to template caps 2016-03-12 03:00:14 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegts: Don't leave freed programs in the hash table When the sub-class claims a program for later freeing, make sure it's not left in the hash table, or it can cause crashes on shutdown. Make sure tsdemux frees any program it has kept around at shutdown if it wasn't freed already. https://bugzilla.gnome.org/show_bug.cgi?id=763503 2016-03-11 17:34:03 +0200 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: videoparsers: h265: Fix segfault while transforming hevc to nal aligned bytestream Create temporary ParseFrame and copy the nal size buffer region for each nal unit like we did for h264. https://bugzilla.gnome.org/show_bug.cgi?id=763494 2016-03-11 10:08:28 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: amc: Correctly handle NULL input buffers https://bugzilla.gnome.org/show_bug.cgi?id=763401 2016-03-11 10:00:39 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstjniutils.c: amcvideodec: getOutputBuffers() returns a NULL array when a surface was configured So don't error out if it does. https://bugzilla.gnome.org/show_bug.cgi?id=763401 2016-03-11 01:40:39 +1100 Matthew Waters * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: gleffects; give each effect a unique long name and description Gives applications that scrape the factory details more detailed and unique details on the exact element. https://bugzilla.gnome.org/show_bug.cgi?id=760566 2016-03-10 17:46:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: glshader: some compatibility changes for GL 1.4 GL 1.4 (with GL_ARB_shader_objects) doesn't have glIsProgram or glIsShader equivalents. As they are simply assertions, skip them when there isn't a valid function pointer. 2016-03-10 00:29:41 +1100 Matthew Waters * ext/gl/gstglfilterapp.c: glfilterapp: update for the use of shaders Fixes black output when placed in pipelines (using the default drawing). https://bugzilla.gnome.org/show_bug.cgi?id=763365 2016-03-10 00:27:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: retrieve the shader attributes from the GL thread Otherwise we will receive bogus values https://bugzilla.gnome.org/show_bug.cgi?id=763365 2016-03-10 00:24:48 +1100 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: gl/examples/cube*: choose opengl by default The examples don't work with any other GL API. Also fix the yuv example to not translate the cube out of the clipping area. 2016-03-10 00:23:14 +1100 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: gl/examples/fxtest: add needed glupload to the pipeline Fixes a negotiation failure in the example 2016-03-07 13:04:08 +0100 Edward Hervey * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparser: Handle non-hierarchical profiles again This is a regression from since mpegvideoparser was switched to use the codecparsing library. The problem is that the high bit of the profile_and_level is used to specify non-hierarchical profiles and levels. Unfortunately we were discarding that information. Expose that escape bit, and use it in the element https://bugzilla.gnome.org/show_bug.cgi?id=763220 2016-03-09 11:58:43 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: Fix window memory leak https://bugzilla.gnome.org/show_bug.cgi?id=763356 2016-03-08 11:41:49 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't reset/recalculate segments with accurate seeks When dealing with accurate seeks, we must send out a segment which is exactly what is requested. https://bugzilla.gnome.org/show_bug.cgi?id=763262 2016-03-08 02:06:46 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: signal continuation in reset We want to iterate over all the pads, not just the first one. Fix by returning TRUE in the GstAggregatorPadForeachFunc. Removes a GST_IS_GL_CONTEXT() assertion on shutdown with >2 inputs using gst-launch. 2016-03-08 00:35:22 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * tests/check/libs/gstglcontext.c: gldisplay: make readding the same context a no-op With e38af2304427db908a16bbae0e60aa68be1ba5b5 returning the correct contexts, gst_gl_display_add_context() was susceptible to causing infinte loops when adding the same GstGLContext more than once. Fix and add a test for gst_gl_display_add_context(). Fixes glvideomixer gst-validate tests. 2016-03-07 08:52:54 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: Revert "libgstgl: cocoa, eagl: don't marshal GL calls to the context thread" This reverts commit 797d6415dfd6e111efb2cab544958a67cbf22b17. We're frozen for 1.8.0 release and this change might have bigger impact. 2016-03-07 16:03:25 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: cocoa, eagl: don't marshal GL calls to the context thread Execute GL calls without marshalling them to the context thread. In the cocoa and eagl backends calling gst_gl_context_activate is cheap and therefore calling it on the current thread and serializing GL calls with a per-context lock is more efficient (faster and has less overhead) than marshalling everything to the context thread. This optimization cuts a large overhead in g_poll (continuously waking up the context thread) and in g_mutex_*/g_cond_* (waiting for results from the context thread). 2016-03-05 17:16:24 +0100 Mark Nauwelaerts * gst-libs/gst/gl/gstgldisplay.c: gldisplay: really retrieve glcontext for a specific thread When requesting a glcontext (regardless of thread), the result was correct. However, when requesting current glcontext on a specific thread, it could come up with a glcontext active on another thread. https://bugzilla.gnome.org/show_bug.cgi?id=763168 2016-03-06 19:35:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: misc docs fixes/additions 2016-03-06 19:32:21 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: gl*memory: document new functionality and objects 2016-03-06 19:23:06 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs.types: docs: add new GL api to .types file for type/signal introspection 2016-03-06 19:22:31 +1100 Matthew Waters * docs/libs/Makefile.am: docs: ignore some private GL headers 2016-03-06 19:18:54 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: docs/gl: add gl functions/structs from -unused into the docs 2016-03-05 19:48:45 +0100 Mark Nauwelaerts * gst-libs/gst/gl/gstglfilter.c: glfilter: handle some more unfixed fields when fixating caps 2016-03-05 11:38:46 +0200 Sebastian Dröge * tests/examples/gtk/Makefile.am: gtk: examples: #define GST_USE_UNSTABLE_API and link with X11_LIBS X11_LIBS is needed for XInitThreads() and without the #define we get warnings about the GL API being still unstable. 2016-03-02 19:32:13 +0900 Justin Kim * sys/androidmedia/gst-androidcamera.c: androidmedia: Remove unused file ahcsrc is registered by gstamc.c https://bugzilla.gnome.org/show_bug.cgi?id=763098 2016-02-17 09:36:15 -0800 Martin Kelly * sys/androidmedia/gstamc.c: amc: properly deinit when ahcsrc register fails In the androidmedia plugin_init, we initialize various resources on the Android device. If anything fails during this series of initializations, we need to deinitialize any initializations that already occurred. However, we don't do so if we fail to register the ahcsrc element. Fix this. https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 11:00:50 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: correct error message The error message is specific to only one of the failure cases and is misleading in the others. Correct it to be more generic and cover all the failure cases. https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-16 11:45:01 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: remove unneeded #include https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 16:00:18 -0800 Martin Kelly * sys/androidmedia/gstahcsrc.c: ahc: typo fix https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-03-03 22:15:07 -0500 Joe Gorse * ext/hls/Makefile.am: hls: Add OPENSSL_CFLAGS to CFLAGS https://bugzilla.gnome.org/show_bug.cgi?id=763079 2016-03-03 19:45:43 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbasememory.c: glbasememory: Don't change maxsize at run-time Maxsize is initialized once and should never change. Allocating data should have no impact on the selected max size for this memory. This causing memory map failure as the maxsize would become smaller then size. This happened when using direct rendering in avviddec on GL that does not support PBO transfer. https://bugzilla.gnome.org/show_bug.cgi?id=763045 2016-03-01 18:22:37 +0300 Sergey Borovkov * ext/qt/qtitem.cc: qml: Fix leak of the OpenGL contexts [Matthew Waters]: add NULL checks before unreffing https://bugzilla.gnome.org/show_bug.cgi?id=762999 2016-02-29 14:24:46 -0800 Reynaldo H. Verdejo Pinochet * ext/vulkan/vksink.c: vksink: fix spelling on failed _ensure_data() error message 2016-03-02 21:46:44 +0200 Vivia Nikolaidou * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Provide format as a string instead of a char to gst_structure_new The format was provided as 'I420' instead of "I420", causing a crash. 2015-01-20 16:20:10 +0100 Aurélien Zanelli * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: handle early PTS conversion when a group has been found In some cases, the PTS might be smaller than the first observed PCR value which causes element to apply wraparound leading to bogus timestamp. To solve this, we only apply it if the PTS-PCR difference is greater that 1 second to be sure that it's a real wraparound. Moreover, using unsigned 32 bits values to handle wrapover could end up with bogus value, so it use pts value to handle it. Also, convert pcr time to gst time before comparing it to pts. Since refpcr is expressed in PCR time base while pts is expressed in GStreamer time. https://bugzilla.gnome.org/show_bug.cgi?id=743259 2016-03-02 10:41:17 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix REMOVE_SNAP_FLAGS() macro !(flag1 | flag2 | flag3) is always evaluation to 0. ~ was meant here instead of !. CID 1352032. === release 1.7.90 === 2016-03-01 18:23:36 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.7.90 2016-03-01 17:10:28 +0200 Sebastian Dröge * po/af.po: * po/az.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/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/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: Upd