X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ChangeLog;h=a91a9480777c4d4642044db620efb8c4f49bc53c;hb=11f30181702985544457faa34b764d194f191298;hp=5cc2e652dea6828d3d8d62b8e2fdf512083955d3;hpb=14f45c7bea0d22726e273d2a7483f7abc0137df3;p=platform%2Fupstream%2Fgst-plugins-good.git diff --git a/ChangeLog b/ChangeLog index 5cc2e65..a91a948 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,4709 @@ +=== release 1.15.2 === + +2019-02-26 11:47:29 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-plugins-good.doap: + * meson.build: + Release 1.15.2 + +2019-02-26 11:47:29 +0000 Tim-Philipp Müller + + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/inspect/plugin-1394.xml: + * docs/plugins/inspect/plugin-aasink.xml: + * docs/plugins/inspect/plugin-alaw.xml: + * docs/plugins/inspect/plugin-alpha.xml: + * docs/plugins/inspect/plugin-alphacolor.xml: + * docs/plugins/inspect/plugin-apetag.xml: + * docs/plugins/inspect/plugin-audiofx.xml: + * docs/plugins/inspect/plugin-audioparsers.xml: + * docs/plugins/inspect/plugin-auparse.xml: + * docs/plugins/inspect/plugin-autodetect.xml: + * docs/plugins/inspect/plugin-avi.xml: + * docs/plugins/inspect/plugin-cacasink.xml: + * docs/plugins/inspect/plugin-cairo.xml: + * docs/plugins/inspect/plugin-cutter.xml: + * docs/plugins/inspect/plugin-debug.xml: + * docs/plugins/inspect/plugin-deinterlace.xml: + * docs/plugins/inspect/plugin-dtmf.xml: + * docs/plugins/inspect/plugin-dv.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-equalizer.xml: + * docs/plugins/inspect/plugin-flac.xml: + * docs/plugins/inspect/plugin-flv.xml: + * docs/plugins/inspect/plugin-flxdec.xml: + * docs/plugins/inspect/plugin-gdkpixbuf.xml: + * docs/plugins/inspect/plugin-goom.xml: + * docs/plugins/inspect/plugin-goom2k1.xml: + * docs/plugins/inspect/plugin-gtk.xml: + * docs/plugins/inspect/plugin-icydemux.xml: + * docs/plugins/inspect/plugin-id3demux.xml: + * docs/plugins/inspect/plugin-imagefreeze.xml: + * docs/plugins/inspect/plugin-interleave.xml: + * docs/plugins/inspect/plugin-isomp4.xml: + * docs/plugins/inspect/plugin-jack.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-level.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-mpg123.xml: + * docs/plugins/inspect/plugin-mulaw.xml: + * docs/plugins/inspect/plugin-multifile.xml: + * docs/plugins/inspect/plugin-multipart.xml: + * docs/plugins/inspect/plugin-navigationtest.xml: + * docs/plugins/inspect/plugin-oss4.xml: + * docs/plugins/inspect/plugin-ossaudio.xml: + * docs/plugins/inspect/plugin-png.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-qmlgl.xml: + * docs/plugins/inspect/plugin-replaygain.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-rtpmanager.xml: + * docs/plugins/inspect/plugin-rtsp.xml: + * docs/plugins/inspect/plugin-shapewipe.xml: + * docs/plugins/inspect/plugin-shout2.xml: + * docs/plugins/inspect/plugin-smpte.xml: + * docs/plugins/inspect/plugin-soup.xml: + * docs/plugins/inspect/plugin-spectrum.xml: + * docs/plugins/inspect/plugin-speex.xml: + * docs/plugins/inspect/plugin-taglib.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-udp.xml: + * docs/plugins/inspect/plugin-video4linux2.xml: + * docs/plugins/inspect/plugin-videobox.xml: + * docs/plugins/inspect/plugin-videocrop.xml: + * docs/plugins/inspect/plugin-videofilter.xml: + * docs/plugins/inspect/plugin-videomixer.xml: + * docs/plugins/inspect/plugin-vpx.xml: + * docs/plugins/inspect/plugin-wavenc.xml: + * docs/plugins/inspect/plugin-wavpack.xml: + * docs/plugins/inspect/plugin-wavparse.xml: + * docs/plugins/inspect/plugin-ximagesrc.xml: + * docs/plugins/inspect/plugin-y4menc.xml: + Update docs + +2019-02-26 11:47:25 +0000 Tim-Philipp Müller + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/lv.po: + * po/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/zh_HK.po: + * po/zh_TW.po: + Update translations + +2019-02-25 19:08:08 +1100 Matthew Waters + + * sys/v4l2/gstv4l2videodec.c: + v4l2dec: also remove the colorimetry and chroma-site fields + If a different format is chosen, then these values are incorrect. + +2019-02-22 16:02:12 -0500 Nicolas Dufresne + + * gst/rtpmanager/gstrtpsession.c: + rtpsession: Fix EOS forwarding + So far we assumed that if all sources are bye, this meant we needed to + send an EOS on the RTCP sink. The problem is that this case may happens + if we only had one internal source and it detected a collision. + So now we limit the EOS forwarding to when there is a send_rtp_sink pad + and that this pad has received EOS. We don'tcheck the recv_rtp_sink + since the code does not wait for the bye to be send before sending EOS + to the RTCP src pad. + +2019-02-25 01:12:56 +1100 Jan Schmidt + + * gst/wavparse/gstwavparse.c: + wavparse: Declare support for RF64 + RF64 encode support was added to wavenc quite some time + ago, but not declared in wavparse. It seems wavparse can + decode it though, so add it to the sink pad. + The RF64 support was added in + https://bugzilla.gnome.org/show_bug.cgi?id=735627 + +2019-02-12 18:28:40 -0500 Nicolas Dufresne + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsource.c: + * gst/rtpmanager/rtpsource.h: + rtp: Add property to disable RTCP reports per internal rtpsource + This is useful when implementing custom retransmission mechanism like + RIST to prevent RTCP from being produces for the retransmitted SSRC. + This would also be used in general for various purpose when customizing + an RTP base pipeline. + +2019-02-12 18:26:21 -0500 Olivier Crête + + * gst/rtpmanager/rtpsession.c: + rtpsession: Emit on-new-sender-ssrc for RTX ssrc also + +2019-01-15 18:04:09 -0500 Olivier Crête + + * tests/check/elements/rtpjitterbuffer.c: + rtp jitterbuffer test: Test for queue filling + +2019-01-11 17:53:43 -0500 Olivier Crête + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + rtpjitterbuffer: Limit size to 2^15 packets + If it goes over 2^15 packets, it will think it has rolled over + and start dropping all packets. So make sure the seqnum distance is not too big. + But let's not limit it to a number that is too small to avoid emptying it + needlessly if there is a spurious huge sequence number, let's allow at + least 10k packets in any case. + +2019-02-11 11:33:32 -0500 Olivier Crête + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: There is no automatic reorder threshold + +2019-01-30 10:47:49 -0300 Thibault Saunier + + * ext/pulse/pulsedeviceprovider.c: + pulse: Post DEVICE_CHANGED on modification + +2018-11-26 13:48:56 -0300 Thibault Saunier + + * ext/pulse/pulsedeviceprovider.c: + * ext/pulse/pulsedeviceprovider.h: + pulse: Mark default devices as "default" + +2019-02-08 16:10:25 +0000 Ilya Smelykh + + * gst/flv/gstflvmux.c: + flvmux: Use 8kHz sample rate for alaw/mulaw audio + +2019-02-07 09:54:31 +0000 Ilya Smelykh + + * gst/flv/gstflvdemux.c: + flvdemux: set sample rate to 8KHz for G.711 audio + +2019-02-08 13:59:19 +0200 Vivia Nikolaidou + + * gst/isomp4/gstqtmux.c: + qtmux: Only write timecode trak for video + Recent changes in ccextractor were attaching timecode meta to the closed + caption track. We shouldn't write timecode information for the closed + caption trak. + +2019-02-05 22:14:18 +0100 Jan Alexander Steffens (heftig) + + * configure.ac: + * ext/vpx/gstvpxdec.c: + * ext/vpx/meson.build: + vpx: Fix build against libvpx 1.8 + The deprecated debug visualizer was removed. + +2019-02-05 19:41:51 +0530 Nirbheek Chauhan + + * tests/check/elements/rtph264.c: + * tests/check/elements/rtph265.c: + * tests/check/elements/rtpulpfec.c: + misc: Fix warnings on Cerbero's mingw (gcc 4.7) + error: this decimal constant is unsigned only in ISO C90 [-Werror] + +2019-02-06 14:43:18 +0530 Arun Raghavan + + * ext/pulse/pulsesink.c: + pulsesink: Deal with not being able to convert a format to caps + It is possible that PulseAudio adds formats that are not yet supported + in pulsesink, and in those cases, we want to gracefully skip them rather + than cause an assert on a NULL caps. + +2019-01-17 09:22:18 +0100 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Remove trailing '\n' in debug + +2019-02-05 15:27:49 +1100 Matthew Waters + + * ext/qt/gstqtgl.h: + qmlgl: Fix opengl header guard changes again + Reapply 3d708a5bfa8961cc37671bc3226976dfc9ba50ad in the correct place + after the iOS additions. + +2019-02-02 02:29:10 +0100 Mathieu Duponchelle + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: use the correct segment seqnum + +2019-02-02 02:26:47 +0100 Mathieu Duponchelle + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: use the correct segment seqnum + +2019-02-02 02:24:01 +0100 Mathieu Duponchelle + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/gstrtpsession.h: + rtpsession: use the correct segment seqnum + +2019-01-26 10:35:31 -0300 Thibault Saunier + + * gst/flv/gstflvdemux.c: + flvdemux: Do not error out if the first added and chained pad is not linked + And let it the oportunity to get its other pad linked + Example: + ``` + $ gst-launch-1.0 uridecodebin uri=file:///home/thiblahute/gst-validate.save/gst-integration-testsuites/testsuites/../medias/defaults/flv/819290236.flv caps=audio/x-raw expose-all-streams=FALSE ! fakesink + Setting pipeline to PAUSED ... + Pipeline is PREROLLING ... + ERROR: from element /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFlvDemux:flvdemux0: Internal data stream error. + Additional debug info: + ../subprojects/gst-plugins-good/gst/flv/gstflvdemux.c(2760): gst_flv_demux_loop (): /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFlvDemux:flvdemux0: + streaming stopped, reason not-linked (-1) + ERROR: pipeline doesn't want to preroll. + Setting pipeline to NULL ... + Freeing pipeline ... + ``` + +2019-01-16 23:54:25 -0800 Christopher Snowhill + + * gst/matroska/webm-mux.c: + webmmux: allow resolutions above 4096 + Modify the caps string to allow width and height greater than 4096. + There is no need to restrict it since the matroska format allows the + width and height values to be up to eight bytes long, and this also + applies to the webm subset of the format. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/550 + +2019-02-01 14:27:11 +0530 Nirbheek Chauhan + + * ext/qt/meson.build: + meson: qmlgl plugin iOS definitions + Tested with cross-ios-arm64 and cross-ios-x86, since those two are the + only archs shipped with the official Qt binaries. + +2019-02-01 14:27:11 +0530 Nirbheek Chauhan + + * ext/qt/gstqtgl.h: + qt: Don't define GLsync inside gstglfuncs.h + This was originally added for fixing conflicting definitions between + Android and Qt, but times have changed and now this breaks the build + on iOS: + [...]/OpenGLES.framework/Headers/ES3/gl.h:1006:48: error: unknown type name 'gst_qt_GLsync' + GL_API void GL_APIENTRY glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values) OPENGLES_DEPRECATED(ios(7.0, 12.0), tvos(9.0, 12.0)); + ^ + ../ext/qt/gstqtgl.h:49:16: note: expanded from macro 'GLsync' + #define GLsync gst_qt_GLsync + ^ + 6 errors generated. + Instead, we simply avoid defining GLsync ourselves if we're using Qt. + +2019-02-01 14:27:11 +0530 Nirbheek Chauhan + + * ext/qt/meson.build: + meson: Fix indentation in qt plugin and add a FIXME comment + +2019-01-26 21:02:27 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph265depay.c: + rtph265depay; Fix handling of marker on aggregated packet + When multiple nals are aggrgated, the marker bit should be associated only + with the last NAL of the packet. Otherwise we may break rendering in with + AU alignment. + +2019-01-26 21:01:08 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph264depay.c: + rtph264depay: Fix handling or marker on STAP-A + Only forward the marker for the last NAL of the STAP-A. Otherwise each NAL + endup being assumed to be a full frame which may break rendering. + Fixes 557 + +2019-01-27 09:19:00 -0500 Nicolas Dufresne + + * tests/check/elements/rtph265.c: + test: h265depay: Add todo for testing aggregate packets with marker + We are missing a sample to test this, but a fix has been made, so add a + todo. + +2019-01-26 20:42:40 -0500 Nicolas Dufresne + + * tests/check/elements/rtph264.c: + test: rtph264depay: Check handling of STAP-A marker + Related to #557 + +2019-01-31 15:23:43 +0530 Nirbheek Chauhan + + * tests/check/meson.build: + meson: orc-test is not required + This is especially never available on iOS. + +2019-01-30 19:44:01 +0900 Seungha Yang + + * meson.build: + * tests/check/meson.build: + meson: Add support orc fallback + Allow fallback to orc subproject if any. + Additionally 'dependencies' keyword is removed from find_library, + because it's invalid keyword for find_library. + +2019-01-17 21:06:54 +0100 Mathieu Duponchelle + + * ext/gdk_pixbuf/gstgdkpixbufdec.c: + gdkpixbufdec: always output a TIME segment + It makes no sense for a decoder to output a BYTES segment, and + many elements one would plug downstream of a video decoder assume + the segments they receive are in TIME format, for example this fixes: + gst-validate-1.0 filesrc location=opacity01.svg ! gdkpixbufdec ! \ + videobalance ! videoconvert ! fakesink + In that case, videobalance was emitting an assertion when trying to + call gst_object_sync_values() + +2019-01-29 12:12:51 +0530 Nirbheek Chauhan + + * ext/qt/meson.build: + meson: Add macOS definitions for qmlgl plugin + Tested with Cerbero. + +2019-01-29 12:12:51 +0530 Nirbheek Chauhan + + * ext/qt/meson.build: + meson: Fix building of qmlgl plugin on Android + Needs gnustl for C++ STL support, which is the GNU STL on Android API + 19 and older, and is a wrapper for the llvm-libc++ STL on newer APIs. + QtGui C++ templates use GL functions, so GLESv2 is needed at link time + +2019-01-24 16:21:12 -0500 Vincent Penquerc'h + + * gst/interleave/deinterleave.c: + deinterleave: Allow switching between 1 channel configs + regardless of whether they're positioned, since positioning + with a 1 channel stream doesn't change anything. + +2019-01-22 11:45:49 +0530 Nirbheek Chauhan + + * configure.ac: + configure.ac: Fix Qt Android integration + The Qt Android integration is now signalled with HAVE_QT_ANDROID + See: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/86 + +2018-12-18 14:46:25 -0500 Xavier Claessens + + * ext/soup/meson.build: + Meson: fallback to libsoup subproject + +2019-01-22 12:52:25 +0000 Tim-Philipp Müller + + * meson.build: + meson: detect opengl api from -base .pc files correctly + There was a mismatch between the .pc files generated by + autotools and by meson that would lead to meson not detecting + that opengl api is available even though it is, if -base was + built with autotools. The mismatch has now been rectified in + -base, so we need to update for that. + This is mostly for consistency, this problem didn't seem + to affect anything in -good. + See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/871 + +2019-01-22 09:51:33 +0000 Tim-Philipp Müller + + * sys/ximage/meson.build: + meson: ximage: check for XShmAttach() + Fixes FIXME. + +2019-01-22 09:32:31 +0000 Tim-Philipp Müller + + * meson_options.txt: + * sys/ximage/meson.build: + meson: add options for ximagesrc xshm, xfixes, xdamage checks + And rename x11 option to ximagesrc. + Fixes #553 + +2019-01-21 11:53:53 +0200 George Kiagiadakis + + * ext/qt/README.md: + qmlgl: add README.md with information on building for non-linux platforms with qmake + +2019-01-19 15:46:41 +0100 George Kiagiadakis + + * ext/qt/meson.build: + qmlgl: meson: fix theoretical support for building for android + The android code path is slightly different than the EGLFS one, + so I added previously a HAVE_QT_ANDROID define for use with qmake. + Here I also add it in meson, although I expect nobody will ever use + meson to build this, as it's complicated. + +2019-01-19 15:37:45 +0100 George Kiagiadakis + + * ext/qt/qtplugin.pro: + qmlgl: qmake: add support for MacOS target + +2019-01-19 15:21:43 +0100 George Kiagiadakis + + * ext/qt/qtplugin.pro: + qmlgl: qmake: remove cerbero's include dir from the include path + pkg-config should do it's job here, this is unnecessary and implies using cerbero + +2019-01-19 15:19:26 +0100 George Kiagiadakis + + * ext/qt/gstqtgl.h: + * ext/qt/qtplugin.pro: + qmlgl: qualify Qt includes with their module and remove module include dir from the .pro file + it is perfectly legal to use the style of includes with Qt + and it avoids the need for having the module's include dir in the include path + +2019-01-19 15:10:09 +0100 George Kiagiadakis + + * ext/qt/qtplugin.pro: + qmlgl: qmake: don't link against QtWidgets, it's not used + +2019-01-19 15:07:44 +0100 George Kiagiadakis + + * ext/qt/gstqtglutility.cc: + * ext/qt/qtplugin.pro: + qmlgl: qmake: fix building for android + +2019-01-19 02:39:32 +0530 Nirbheek Chauhan + + * ext/qt/meson.build: + meson: Generate pkg-config file for qmlgl plugin + +2019-01-17 16:26:56 +0100 Victor Toso + + * tests/check/elements/rtp-payloading.c: + tests: rtp-payloading avoid -Wmaybe-uninitialized + More false positives as both of them are initialized in the line + before they are used, wrapped with fail_unless() check. + +2019-01-17 16:19:40 +0100 Victor Toso + + * tests/check/elements/matroskamux.c: + tests: matroskamux avoid -Wmaybe-uninitialized + False positive for the three variables but some warnings like: + ../tests/check/elements/matroskamux.c:875:10: + warning: 'chapters_offset' may be used uninitialized in this function [-Wmaybe-uninitialized] + *index = chapters_offset; + ~~~~~~~^~~~~~~~~~~~~~~~~ + The above is false positive as there is a gboolean to check if it was + initialized or not (found_chapters_declaration). + +2018-05-28 14:39:53 +0530 Arun Raghavan + + * ext/pulse/pulseutil.c: + pulse: Fix format info to caps conversion for PCM + +2019-01-18 12:27:34 +0530 Arun Raghavan + + * ext/pulse/pulsesink.c: + * ext/pulse/pulsesrc.c: + * ext/pulse/pulsesrc.h: + * ext/pulse/pulseutil.c: + * ext/pulse/pulseutil.h: + Revert "pulsesrc: Move to extended stream API" + This reverts commit 4d67d1bd16bcf25acf89d8acd952badcd5b9a657. + Using the extended API for the capture path depends on a fix in + PulseAudio + (https://gitlab.freedesktop.org/pulseaudio/pulseaudio/merge_requests/49). + Until then, let's go back to the standard API. + Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/552 + +2019-01-18 14:41:14 +0530 Nirbheek Chauhan + + * ext/qt/meson.build: + meson: Search for qmake-qt5 before qmake + The canonical name for the binary is qmake-qt5, and qmake is the + generic name that can also be a qt4 qmake. + +2019-01-17 15:30:25 +0100 Guillaume Desmottes + + * sys/v4l2/gstv4l2.c: + v4l2: mark caps from probe as MAY_BE_LEAKED + +2019-01-15 18:06:11 +0100 Guillaume Desmottes + + * sys/v4l2/gstv4l2transform.c: + v4l2transform: fix cdata caps leaks + The cdata structure was freed but not its caps. + It was already done in gst_v4l2_video_dec_subclass_init() and + gst_v4l2_video_enc_subclass_init(). + +=== release 1.15.1 === + +2019-01-17 01:59:28 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-plugins-good.doap: + * meson.build: + Release 1.15.1 + +2019-01-17 01:59:28 +0000 Tim-Philipp Müller + + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.hierarchy: + * docs/plugins/gst-plugins-good-plugins.signals: + * docs/plugins/inspect/plugin-1394.xml: + * docs/plugins/inspect/plugin-aasink.xml: + * docs/plugins/inspect/plugin-alaw.xml: + * docs/plugins/inspect/plugin-alpha.xml: + * docs/plugins/inspect/plugin-alphacolor.xml: + * docs/plugins/inspect/plugin-apetag.xml: + * docs/plugins/inspect/plugin-audiofx.xml: + * docs/plugins/inspect/plugin-audioparsers.xml: + * docs/plugins/inspect/plugin-auparse.xml: + * docs/plugins/inspect/plugin-autodetect.xml: + * docs/plugins/inspect/plugin-avi.xml: + * docs/plugins/inspect/plugin-cacasink.xml: + * docs/plugins/inspect/plugin-cairo.xml: + * docs/plugins/inspect/plugin-cutter.xml: + * docs/plugins/inspect/plugin-debug.xml: + * docs/plugins/inspect/plugin-deinterlace.xml: + * docs/plugins/inspect/plugin-dtmf.xml: + * docs/plugins/inspect/plugin-dv.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-equalizer.xml: + * docs/plugins/inspect/plugin-flac.xml: + * docs/plugins/inspect/plugin-flv.xml: + * docs/plugins/inspect/plugin-flxdec.xml: + * docs/plugins/inspect/plugin-gdkpixbuf.xml: + * docs/plugins/inspect/plugin-goom.xml: + * docs/plugins/inspect/plugin-goom2k1.xml: + * docs/plugins/inspect/plugin-gtk.xml: + * docs/plugins/inspect/plugin-icydemux.xml: + * docs/plugins/inspect/plugin-id3demux.xml: + * docs/plugins/inspect/plugin-imagefreeze.xml: + * docs/plugins/inspect/plugin-interleave.xml: + * docs/plugins/inspect/plugin-isomp4.xml: + * docs/plugins/inspect/plugin-jack.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-level.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-mpg123.xml: + * docs/plugins/inspect/plugin-mulaw.xml: + * docs/plugins/inspect/plugin-multifile.xml: + * docs/plugins/inspect/plugin-multipart.xml: + * docs/plugins/inspect/plugin-navigationtest.xml: + * docs/plugins/inspect/plugin-oss4.xml: + * docs/plugins/inspect/plugin-ossaudio.xml: + * docs/plugins/inspect/plugin-png.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-qmlgl.xml: + * docs/plugins/inspect/plugin-replaygain.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-rtpmanager.xml: + * docs/plugins/inspect/plugin-rtsp.xml: + * docs/plugins/inspect/plugin-shapewipe.xml: + * docs/plugins/inspect/plugin-shout2.xml: + * docs/plugins/inspect/plugin-smpte.xml: + * docs/plugins/inspect/plugin-soup.xml: + * docs/plugins/inspect/plugin-spectrum.xml: + * docs/plugins/inspect/plugin-speex.xml: + * docs/plugins/inspect/plugin-taglib.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-udp.xml: + * docs/plugins/inspect/plugin-video4linux2.xml: + * docs/plugins/inspect/plugin-videobox.xml: + * docs/plugins/inspect/plugin-videocrop.xml: + * docs/plugins/inspect/plugin-videofilter.xml: + * docs/plugins/inspect/plugin-videomixer.xml: + * docs/plugins/inspect/plugin-vpx.xml: + * docs/plugins/inspect/plugin-wavenc.xml: + * docs/plugins/inspect/plugin-wavpack.xml: + * docs/plugins/inspect/plugin-wavparse.xml: + * docs/plugins/inspect/plugin-ximagesrc.xml: + * docs/plugins/inspect/plugin-y4menc.xml: + Update docs + +2019-01-17 01:59:18 +0000 Tim-Philipp Müller + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/fur.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/lv.po: + * po/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/zh_HK.po: + * po/zh_TW.po: + Update translations + +2019-01-16 14:11:44 +0200 Sebastian Dröge + + * ext/gtk/gtkgstglwidget.c: + gtk/gl: Only unbind buffers/vertex attrib arrays if we can't directly bind the vertex array to 0 + Binding the vertex array to 0 will unbind everything else already. + In the previous order older versions of the Intel GL driver caused + errors to be printed for every single call when disabling the vertex + attrib arrays after binding the vertex array to 0. + +2019-01-16 00:57:46 +0000 Tim-Philipp Müller + + * tests/check/meson.build: + meson: enable tests for orc code + +2018-11-29 16:07:08 +0100 Patrick Radizi + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: send GstRTSPSrcTimeout message on timeout + The GstRTSPSrcTimeout message is sent by the rtspsrc when it receives + the on-timeout signal from rtpsession. This can be used by an + application for error handling. + https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/499 + +2019-01-09 17:52:28 +0200 Sebastian Dröge + + * gst/flv/gstflvdemux.c: + flvdemux: Handle the encoder metadata the same as metadatacreator + And store it in our ENCODER tag. + +2019-01-09 17:48:36 +0200 Sebastian Dröge + + * gst/flv/gstflvmux.c: + * gst/flv/gstflvmux.h: + flvmux: Add encoder metadata to the header + And also add a property for setting this. By default it has the same + value as the metadatacreator metadata. + Various software is using encoder instead of metadatacreator, others are + using them both for different purposes. As such it's useful to have + support for setting both here. + +2018-05-28 14:41:05 +0530 Arun Raghavan + + * ext/pulse/pulsesink.c: + * ext/pulse/pulsesrc.c: + * ext/pulse/pulsesrc.h: + * ext/pulse/pulseutil.c: + * ext/pulse/pulseutil.h: + pulsesrc: Move to extended stream API + This is needed as a precursor to allowing capture of IEC61937 + formats. We now also need to include the channel map while converting + format info to caps so that a correct channel mask is generated for + pulsesrc's caps. + +2019-01-09 16:27:16 +0100 Jan Alexander Steffens (heftig) + + * tests/check/elements/rtph265.c: + test: rtph265pay: Verify we only mark the last fragment + +2019-01-09 16:24:54 +0100 Jan Alexander Steffens (heftig) + + * tests/check/elements/rtph265.c: + test: rtph265pay: Use a bigger test frame + The existing frame's last slice is too small to be used for + fragmentation tests. + +2019-01-09 15:59:16 +0100 Jan Alexander Steffens (heftig) + + * tests/check/elements/rtph264.c: + test: rtph264pay: Verify we only mark the last fragment + +2019-01-09 16:25:36 +0100 Jan Alexander Steffens (heftig) + + * gst/rtp/gstrtph265pay.c: + rtph265pay: Only mark the last fragment of an AU + Commit e721071dcac9f231e5e10b4bb31323658a6cdd1a removed the check for + the end of fragmentation. As a result, all fragments of an AU's last + NALU were marked. + +2019-01-09 15:56:51 +0100 Jan Alexander Steffens (heftig) + + * gst/rtp/gstrtph264pay.c: + rtph264pay: Only mark the last fragment of an AU + Commit 4add820cce278213ede3d5fce427ea92e0619b6f removed the check for + the end of fragmentation. As a result, all fragments of an AU's last + NALU were marked. + Potential fix for https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/540 + +2019-01-09 11:48:52 +0200 Sebastian Dröge + + * gst/multifile/gstsplitmuxpartreader.c: + * gst/multifile/gstsplitmuxsrc.c: + splitmuxsrc: Refactor part preparation code and remove "prepared" signal from reader helper object + We don't need a special signal anymore but can directly work with + async-done + +2019-01-09 11:42:36 +0200 Sebastian Dröge + + * gst/multifile/gstsplitmuxpartreader.c: + * gst/multifile/gstsplitmuxpartreader.h: + * gst/multifile/gstsplitmuxsrc.c: + * gst/multifile/gstsplitmuxsrc.h: + splitmuxsrc: Implement state change asynchronously instead of blocking + Blocking in change_state() is a recipe for disaster, even more so if + we wait for another thread that also calls into various element API and + could then lead to deadlocks on e.g. the state lock. + +2019-01-05 23:10:46 +0400 Marc-André Lureau + + * ext/pulse/pulsesrc.c: + pulsesrc: fix checking for invalid stream index + PA_INVALID_INDEX, the default value, is unfortunately !0. + Setting the volume before the stream is created will put the ring + buffer in error state. Unfortunately, that's what spice-gtk does. + +2018-12-20 12:14:46 +0200 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Split CEA608 buffers correctly so that each output buffer represents a single frame + +2018-12-20 11:45:36 +0200 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Refactor buffer pushing into its own function + +2018-12-20 11:31:58 +0200 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Extract CEA608 framerate from the (first) video stream + EA608 closed caption tracks are a bit special in that each sample + can contain CCs for multiple frames, and CCs can be omitted and have to + be inferred from the duration of the sample then. + As such we take the framerate from the (first) video track here for + CEA608 as there must be one CC byte pair for every video frame + according to the spec. + For CEA708 all is fine and there is one sample per frame. + +2018-12-30 21:55:28 +0900 Seungha Yang + + * tests/check/meson.build: + tests: Enable more unit tests on Windows + +2018-12-30 21:54:44 +0900 Seungha Yang + + * tests/check/elements/audioamplify.c: + * tests/check/elements/audiodynamic.c: + * tests/check/elements/audioinvert.c: + * tests/check/elements/audiopanorama.c: + * tests/check/elements/avimux.c: + * tests/check/elements/avisubtitle.c: + * tests/check/elements/capssetter.c: + * tests/check/elements/level.c: + * tests/check/elements/matroskamux.c: + * tests/check/elements/multifile.c: + * tests/check/elements/qtdemux.h: + * tests/check/elements/qtmux.c: + * tests/check/elements/rtp-payloading.c: + * tests/check/elements/shapewipe.c: + * tests/check/elements/spectrum.c: + * tests/check/elements/splitmux.c: + * tests/check/elements/udpsrc.c: + * tests/check/elements/videobox.c: + * tests/check/elements/videocrop.c: + * tests/check/elements/videofilter.c: + * tests/check/elements/videomixer.c: + * tests/check/elements/wavpackparse.c: + * tests/check/elements/y4menc.c: + * tests/check/generic/states.c: + tests: Remove pointless unistd.h include + +2018-12-26 20:27:58 +0900 Seungha Yang + + * gst/matroska/matroska-demux.c: + matroskademux: Don't leak allocated index memory + Don't forget to free returned memory from _search_pos() + +2018-12-25 15:31:44 +0100 Tim-Philipp Müller + + * tests/files/Makefile.am: + tests: dist new rtph265.rtp file + Fixes make distcheck. + +2018-12-25 14:51:38 +0100 Tim-Philipp Müller + + * docs/plugins/Makefile.am: + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.hierarchy: + * docs/plugins/inspect/plugin-audiofx.xml: + * gst/audiofx/Makefile.am: + * gst/audiofx/audiofx.c: + * gst/audiofx/gststereo.c: + * gst/audiofx/meson.build: + audiofx: add stereo element which was moved from -bad to build + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/457 + +2018-12-25 13:07:23 +0100 Tim-Philipp Müller + + Move stereo plugin from -bad + https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/457 + +2018-12-22 17:55:51 +0100 Philippe Normand + + * gst/isomp4/qtdemux.c: + qtdemux: Offset correction for track language code parsing + The duration field being a uint64, is stored in 8 bytes, not 4. So the offset of + the following field, language code, needs to be updated accordingly so that the + parsed language code is not garbage. + +2018-12-21 10:59:22 +0100 Juan Navarro + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: Accept NULL for "port-range" property + The documentation of "port-range" implies that passing NULL should be + valid, but currently it is not. Without this check, the sscanf() call + will crash. + +2018-12-19 14:28:54 +0100 Mathieu Duponchelle + + * docs/plugins/gst-plugins-good-plugins.signals: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/rtpbundle.c: + * tests/check/meson.build: + * tests/examples/rtp/.gitignore: + * tests/examples/rtp/Makefile.am: + * tests/examples/rtp/client-rtpbundle.c: + * tests/examples/rtp/meson.build: + * tests/examples/rtp/server-rtpbundle.c: + Revert "rtpbin: receive bundle support" + This reverts commit dcd3ce9751cdef0b5ab1fa118355f92bdfe82cb3. + This functionality was implemented for gstopenwebrtc, but it + turned out this was not actually needed for webrtc bundling + support, as shown in webrtcbin. It also doesn't correspond + to any standards. + This is an API break, but nothing should actually depend on + this, at least not for its initial purpose. + Changes in rtpbin.c were reverted manually, to preserve some + refactoring that had occurred in the original commit. + Fixes #537 + +2018-12-19 11:36:37 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph265pay.c: + rtph264pay/rtph265pay: Fix use after free + We can't assume a buffer that has been pushed in the adapter is still + valid. This fixes a use after free detect when running test on jenkins. + +2018-12-19 22:51:11 +0900 KimTaeSoo + + * tests/check/pipelines/tagschecking.c: + tagschecking: Use gst_message_parse_warning in case of GST_MESSAGE_WARNING + Bus message handler of tags checking unit test uses gst_message_parse_error() + in case of GST_MESSAGE_ERROR and GST_MESAGE_WARNING. + If gst_message_parse_error() is called in case of GST_MESSAGE_WARNING, assert occurs. + So modified to use gst_message_parse_warning() in case of GST_MESSAGE_WARNING. + +2018-12-19 09:51:10 -0500 Nicolas Dufresne + + * tests/check/Makefile.am: + test: rtph264/265: Add libgstrtp in auto-tool makefile + +2018-12-18 12:43:30 -0500 Nicolas Dufresne + + * tests/check/Makefile.am: + * tests/check/elements/rtph265.c: + * tests/check/meson.build: + * tests/files/h265.rtp: + test: rtph265: Copy and port tests from rtph264 + This copy and port all the relevant tests from rtph264. + +2018-12-14 17:54:36 -0500 Nicolas Dufresne + + * tests/check/elements/rtph264.c: + test: rtph264depay: Check the marker is converted to flag + +2018-12-14 17:53:17 -0500 Nicolas Dufresne + + * tests/check/elements/rtph264.c: + test: rtph264depay: Check that EOS drains the depayloaded + In AU mode, the depayloader may have accumulated NALs, test that + these NALs are drained and not dropped. + +2018-12-14 15:30:21 -0500 Nicolas Dufresne + + * tests/check/elements/rtph264.c: + test: rtph264pay: Add tests for marker bit + Test that marker bit is transferred when input buffer has the + marker flag set but also that it's set whenever the payloader + receives complete AU. + +2018-12-13 15:57:24 -0500 Nicolas Dufresne + + * tests/check/elements/rtph264.c: + test: rtph264pay: Verify slices timestamp + This test make sure that timestamps are properly transfered + to each NALU. + +2018-12-04 16:06:15 -0500 Nicolas Dufresne + + * tests/check/elements/rtph264.c: + * tests/check/meson.build: + test: rtph264pay: Add reserved nals test + +2018-12-18 13:16:44 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph265pay.c: + rtph265pay: Don't wait for next nal when input is aligned + This is the same as what was done on rtph264pay in the patch + d5d28055c1e816e90e8c2d1151816b0c3e760ff3 + +2018-12-18 12:53:15 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph265depay.c: + rtph265depay: Drain on EOS event + +2018-12-18 12:50:40 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph265depay.c: + rtph265depay: Factor out the code that push + This will be needed to implement draining on EOS. + +2018-12-17 16:48:53 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph264depay.c: + rtph264depay: Drain on EOS event + +2018-12-14 18:19:42 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph264depay.c: + rtph264depay: Factor out the code that push + This will be needed to implement draining on EOS. + +2018-12-14 15:51:51 -0500 Nicolas Dufresne + + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph265pay.c: + rtph26xpay: Remove unused IS_ACCESS_UNIT macro + This macro is not longer used. It was secretly checking if that nal was + a slice, and confusingly name to that one may think it was checking if + the nal is an AUD. + +2018-10-03 14:14:17 -0400 Nicolas Dufresne + + * gst/rtp/gstrtph265pay.c: + rtph265pay: Fix reading timestamps from adapter + The code was reading the timestamp from the adapter before pushing the + new buffer into it. As a side effect, if the adapter was empty, we'd end + up using an older timestamp. In alignment=au, it means that all + timestamp was likely one frame in the past, while in alignment=nal, with + multiple slices per frame, the first slice would have the timestamp of + the previous one. + +2018-10-03 13:46:08 -0400 Nicolas Dufresne + + * gst/rtp/gstrtph265depay.c: + rtph265pay: Forward the marker bit as buffer flag + We have a buffer flag to represent the marker bit (when present). + Forward this bit by setting the buffer flag accordingly. + +2018-10-03 13:44:56 -0400 Nicolas Dufresne + + * gst/rtp/gstrtph265pay.c: + rtph265pay: Properly set the marker bit + The marker bit is used for efficient decoding. The assumption that + it should be set on the AUD is wrong, since the AUD is conceptually + starts the frame, while the marker is to indicate the end. + So properly set the marker bit as soon as we know we are ending an + AU and also whenever upstream have set the GST_BUFFER_FLAG_MARKER + flag. + +2018-09-25 11:49:52 -0400 Nicolas Dufresne + + * gst/rtp/gstrtph264pay.c: + rtph264pay: Fix reading timestamps from adapter + The code was reading the timestamp from the adapter before pushing the + new buffer into it. As a side effect, if the adapter was empty, we'd end + up using an older timestamp. In alignment=au, it means that all + timestamp was likely one frame in the past, while in alignment=nal, with + multiple slices per frame, the first slice would have the timestamp of + the previous one. + +2018-09-24 15:31:12 -0400 Nicolas Dufresne + + * gst/rtp/gstrtph264pay.c: + rtph264pay: Properly set the marker bit + The marker bit is used for efficient decoding. The assumption that + it should be set on the AUD is wrong, since the AUD is conceptually + starts the frame, while the marker is to indicate the end. + So properly set the marker bit as soon as we know we are ending an + AU and also whenever upstream have set the GST_BUFFER_FLAG_MARKER + flag. + +2018-09-24 15:27:41 -0400 Nicolas Dufresne + + * gst/rtp/gstrtph264depay.c: + rtph264depay: Forward the marker bit as buffer flag + We have a buffer flag to represent the marker bit (when present). + Forward this bit by setting the buffer flag accordingly. + +2018-09-21 20:22:43 +0000 Nicolas Dufresne + + * gst/rtp/gstrtph264pay.c: + rtph264pay: Protect against use of reserved NAL types + Don't allow external encoder to use one of the reserved NAL type + implicated in NAL aggreation. These out-of-spec NAL types, if passed + from the outside world will lead to an invalid RTP payload being + created. + +2018-12-07 21:46:12 +0900 Seungha Yang + + * meson.build: + * tests/check/meson.build: + * tests/meson.build: + tests: Enable unit test on Windows + Allow run some unit tests on Windows. + * Remove hardcoded path separator in whitelist env for Meson to choose + OS-specific separator automatically (i.e., ';' for windows and ':' for *nix) + * Add dependency explicitly for some test cases, otherwise plugins couldn't be + loaded on uninstalled environment of Windows. + +2018-12-18 20:39:40 +0900 Seungha Yang + + * meson.build: + * tests/check/meson.build: + meson: Prefer to use join_paths() over '/' + ... to avoid mixing '/' and '\' in a path string on Windows. + +2018-12-17 18:04:37 +0000 Jonny Lamb + + * tests/check/elements/rtpulpfec.c: + rtpulpfec: stop and start the harness when setting error-after + gstreamer!55 makes some changes to how the `error-after` counter works + which breaks this test. This change makes the test not rely on the + ability to alter `error-after` at runtime and explicitly stops and + starts the harness before pushing data. + An alternative would be to add another argument to + `harness_rtpulpfecdec` to set `error-after` on construction but that's + slightly more long-winded. so I went for this approach instead. + Fixes #532, even though that's already closed. + +2018-12-17 18:59:34 +0100 Mathieu Duponchelle + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/rtpaux.c: + * tests/check/meson.build: + tests: remove rtpaux test + The initial mission statement for this test was: + * demonstrate usage of the request-aux-* signals in rtpbin + * test the rtx elements + We have examples that serve the first use case, and better + (harnessed) tests for the second use case. + This test is slow and racy, it served its purpose but can now + be removed. + Fixes #533 + +2018-12-17 19:18:43 +0100 Nicola Murino + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: check difference in time from the last socket read before changing blocksize + If the pipeline consumes the data slower than the available network speed, + for example because sync=true, is useless to increase the blocksize and + reading in too big blocksizes can cause the connection to time out + Closes #463 + +2018-08-08 09:27:09 +0200 Guillaume Desmottes + + * sys/v4l2/gstv4l2object.c: + v4l2: Avoid code duplication + The function gst_v4l2_object_add_interlace_mode() has repeating code so + it's best use a loop instead. That will make it easy and simple to add + additional interlace modes in a following patch. + +2018-06-27 23:20:33 +0200 Zeeshan Ali + + * sys/v4l2/gstv4l2object.c: + v4l2: Make use of gst_video_interlace_mode_to_string() + Instead of a custom map to translate the interlace modes to strings, let's + make use of the base API provided. + +2018-12-17 13:45:36 +0100 Nicola Murino + + * sys/osxaudio/gstosxcoreaudio.c: + osxcoreaudio: fix typo + kAudioFormatFlagIsSignedInteger is a format flags + Closes #394 + +2018-12-17 09:33:39 +0100 Edward Hervey + + * ext/qt/gstqtgl.h: + qtgl: Handle OPENGL header guard changes + In 2018 khronos changed the gl header guards. If we don't detect + this properly we would end up with plenty of symbol redifinition + (since we would be importing twice the "same" header). + Instead detect if the "newer" header was already included and if + so define the "old" define to avoid this situation + Fixes #523 + +2018-12-10 17:34:03 +0200 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmuxmap.c: + * gst/isomp4/qtdemux.c: + isomp4: Replace GST_VIDEO_CAPTION_TYPE_CEA608_IN_CEA708_RAW with CEA608_S334_1A + For the demuxer we have to select line offset 0 for the time being as + this information is not passed over MOV. + +2018-12-13 20:45:23 -0500 Olivier Crête + + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer tests: Validate the number of buffers + +2018-12-13 19:17:43 -0500 Olivier Crête + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer: Run all timers immediately on EOS + When the EOS event is received, run all timers immediately and avoid + pushing the EOS downstream before this has been run. This ensures that + the lost packet statistics are accurate. + +2018-12-13 19:16:11 -0500 Olivier Crête + + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer test: Stop jitterbuffer before pads to avoid race + The teardown of the pads checks the refcount, but there are timers + inside the jitterbuffer that can push things, so if we're not lucky, + things could be pushed while the pads are being shut down. Putting the + jitterbuffer to NULL first avoids this. + +2018-11-22 10:41:29 -0500 Nicolas Dufresne + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: Stop waiting after EOS + After EOS is received, it is pointless to wait for further events, + specially waiting on timers. This patches fixes two cases where we could + wait instead of returning GST_FLOW_EOS and trigger a spin of the loop + function when EOS is queued, regardless if this EOS is the queue head or + not. + +2018-10-27 13:41:46 +0200 Jochen Henneberg + + * ext/flac/gstflacdec.c: + flacdec: Use new channel count for audio info + +2018-10-27 13:36:16 +0200 Jochen Henneberg + + * ext/flac/gstflacdec.c: + flacdec: Caps may have changed on FLAC metadata change + If the decoder signals metadata change we need to update the output + format and negotiate with downstream elements. + +2018-10-27 13:28:56 +0200 Jochen Henneberg + + * ext/flac/gstflacdec.c: + flacdec: Reset decoder on set_format() + Any call to set_format() could mean that the stream type changed so we + reset the decoder and mark got_headers FALSE. + +2018-12-05 18:42:55 +0100 Jochen Henneberg + + * gst/audioparsers/gstflacparse.c: + flacparse: On sink caps change restart parser + Draining the parser is not enough here, on caps change we need to + reset it so it is ready to accept new caps. + +2018-12-04 18:50:51 +0100 Jochen Henneberg + + * gst/rtp/gstrtpgstdepay.c: + rtpgstdepay: Update pad caps if inline caps change + If the inlined caps change while using the same CV we need to update the + source pad caps. + +2018-12-14 12:21:58 +0900 Justin Kim + + * sys/osxvideo/meson.build: + osxvideo: meson: Add dependencies by using appleframeworks + Otherwise, it fails to link. + gst-build#13 + +2018-12-07 19:09:30 +0200 Sebastian Dröge + + * ext/cairo/gstcairooverlay.c: + cairooverlay: Optimize premultiplication/unpremultiplication loops + Pull in video frame fields into local variables. Without this the + compiler must assume that they could've changed on every use and read + them from memory again. + This reduces the inner loop from 6 memory reads per pixels to 4, and the + number of writes stays at 3. + +2018-12-05 19:37:13 +0200 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Put framerate into the closedcaption caps if it can be calculated from the stream + Using the same calculation used for video streams. + +2018-12-05 19:31:25 +0200 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Set timescale of closedcaption tracks to the one of the main video track + +2018-12-05 17:24:13 -0300 Thibault Saunier + + * common: + Automatic update of common submodule + From ed78bee to 59cb678 + +2018-11-19 18:20:52 +0000 Maciej Wolny + + * gst/flv/gstflvmux.h: + * sys/v4l2/gstv4l2allocator.h: + Remove duplicate declarations + This causes 'redefinition of typedef ...' errors on GCC 4.5.3 + +2018-11-30 23:56:12 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + tests: rtpssrcdemux: fix uninstalled autotools build and distcheck + +2018-11-30 19:29:30 +0100 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: set need_segment after a second moov + stream.segment should be updated with the values of the current edit + list, also when a new `moov` is received. Unfortunately this was not + being the case because of an early return. + As a consequence of this bugs, no end of movie clipping was being + performed on the new moov and no segment event was being emitted. + When performing stream switching (e.g. in MSE) the new moov may have a + different edit list. This is often the case when switching between + baseline H.264 (which lacks B-frames) and more demanding profiles. For + this reason it's important to emit a new segment in order to be able + to get matching stream times. + +2018-11-29 22:42:34 +0100 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: Initialize QtDemuxStream.segment in its constructor + This patch moves the initialization of QtDemuxStream.segment from + gst_qtdemux_add_stream() to _create_stream(). This ensures the segment + is always initialized when the stream is created. + Otherwise the segment format is left as GST_FORMAT_UNDEFINED in the case + were a track is reparsed and qtdemux_reuse_and_configure_stream() is + called instead of gst_qtdemux_add_stream(). (See + qtdemux_expose_streams() in the non streams-aware case.) + +2018-11-29 13:48:33 +0100 Miguel Paris + + * gst/rtpmanager/rtpsession.c: + rtpsession: properly handle rtcp_feedback_retention_window + - Consider GST_CLOCK_TIME_NONE as not to be used. + - Complete "rtcp-feedback-retention-window" property getter/setter + implementation. + +2018-11-29 13:02:53 +0100 Miguel Paris + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsource.c: + * gst/rtpmanager/rtpsource.h: + rtpsource: properly prune RTCP packets out of feedback_retention_window + Closes #522 + +2018-11-29 13:01:44 +0100 Miguel Paris + + * gst/rtpmanager/rtpsource.c: + rtpsource: properly compare buffer PTSs + +2018-11-29 12:58:18 +0100 Miguel Paris + + * gst/rtpmanager/rtpsource.c: + rtpsource: retain_rtcp_packet: warning if invalid running_time + +2018-11-29 12:55:38 +0100 Miguel Paris + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + rtpsession: properly set the running_time for rtcp packet info + +2018-11-29 14:54:06 -0500 Nicolas Dufresne + + * gst/rtpmanager/gstrtpssrcdemux.c: + rtpssrcdemux: Rename confusingly name lock macros + This is an extra internal recurisve lock use to avoid having to take + both sink pad streams lock all the time. This patch renamed it + INTERLNAL_STREAM_LOCK/UNLOCK() to avoid confusion with possible upstream + GST_PAD API. + +2018-11-28 17:14:11 -0500 Nicolas Dufresne + + * gst/rtpmanager/gstrtpssrcdemux.c: + rtpssrcdemux: Hold on internal stream lock while pushing sticky + This reverts "6f3734c305 rtpssrcdemux: Only forward stick events while + holding the sinkpad stream lock" and actually hold on the internal + stream lock. This prevents in some needed case having a second + streaming thread poping in and messing up event ordering. + +2018-11-27 17:10:57 -0500 Nicolas Dufresne + + * tests/check/Makefile.am: + * tests/check/elements/rtpssrcdemux.c: + * tests/check/meson.build: + test: rtpssrcdemux: Test event forwarding + This the first unit test of this element. It adds a test that verify + that events are forwarded correctly. + +2015-11-04 12:52:17 +0100 Matej Knopp + + * gst/matroska/matroska-demux.c: + matroskademux: fix handling of MS ACM audio + Pass riff codec-data as strf, not strd, which is where + gst_riff_create_audio_caps() expects the WAVEFORMATEXTENSIBLE + data. + https://bugzilla.gnome.org/show_bug.cgi?id=757583 + Fixes #234 + +2018-11-28 05:52:16 +0200 Jordan Petridis + + * gst/matroska/matroska-demux.c: + * gst/rtp/gstrtpg722pay.c: + * gst/rtpmanager/gstrtpmux.c: + * gst/udp/gstudpsrc.c: + * sys/v4l2/gstv4l2jpegenc.c: + * tests/check/elements/rtpmux.c: + * tests/check/elements/rtpsession.c: + Run gst-indent through the files + This is required before we enabled an indent test in the CI. + https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33 + +2018-11-26 08:10:24 -0300 Thibault Saunier + + * gst/videocrop/gstaspectratiocrop.c: + aspectcropration: Fix potential unref of NULL pointer + +2018-11-25 11:31:11 -0300 Thibault Saunier + + * gst/videocrop/gstaspectratiocrop.c: + * gst/videocrop/gstaspectratiocrop.h: + aspectcropratio: Set caps from the streaming thread on property changes + Otherwise it might lead to deadlocks + See https://gitlab.gnome.org/GNOME/pitivi/issues/2259 + Closes #518 + +2018-11-23 14:01:35 -0500 Nicolas Dufresne + + * gst/rtpmanager/gstrtpssrcdemux.c: + rtpssrcdemux: Forward serialized events to all pads + While forwarding serialized event, we use gst_pad_forward() function. + In the forward callback (GstPadForwardFunction) we always return + TRUE. Returning true there will stop the dispatching procedure. As a + side effect, only one events is receiving the events. This breaks + when sending EOS from the applicaiton, it also breaks the latency + tracer. + +2018-11-24 19:13:28 +0900 Seungha Yang + + * meson.build: + meson: Specify encoding to UTF-8 when building with MSVC + Use build arguments consistent with core and -base. This can also + remove noisy "C4819" warning of non-us locale MSVC. + +2018-11-21 15:11:00 -0500 Xavier Claessens + + * meson.build: + Check for zlib header + +2018-11-21 18:53:39 -0500 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.h: + v4l2: Properly fix Android build + The previous patch did not even compile on any possible platform or C + standard. That commit also didn't have a proper commit message. + Android ships Linux with a different signature for ioctl. They first + released an ioctl with int as request type, and later "fixed" it by + adding an override with unsign, which is still not matching Linux and + BSD implementation which uses unsigned long int. + +2018-11-21 16:11:02 -0500 Xavier Claessens + + * sys/v4l2/gstv4l2object.h: + Fix ioctl() signature on Android + +2018-10-09 16:43:08 -0400 Xavier Claessens + + * meson.build: + Fix zlib detection when there is no pkg-config file + +2018-11-19 20:05:39 +0530 Arun Raghavan + + * ext/pulse/pulsesink.c: + * ext/pulse/pulsesrc.c: + * ext/pulse/pulseutil.c: + * ext/pulse/pulseutil.h: + pulse: Expose the correct max rate that we support + PulseAudio defines PA_RATE_MAX as the maximum sampling rate that it + supports. We were previously exposing a maximum rate of INT_MAX, which + is incorrect, but worked because nothing was really using a rate greater + than 384000 kHz. + While playing DSD data, we hit a case where there might be very high + sample rates (>1MHz), and pulsesink fails during stream creation with + such streams because it erroneously advertises that it supports such + rates. + Since PA_RATE_MAX is #define'd to (8*48000U), we can't just use it in + the caps string. Instead, we fix up the rate to what we actually support + whenever we use our macro caps. + +2018-11-14 08:57:55 +0100 Alicia Boya García + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-demux.h: + matroskademux: Defer seeks received before GST_MATROSKA_READ_STATE_DATA + This patch enables matroskademux to receive seeks before it reaches + GST_MATROSKA_READ_STATE_DATA. + Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/514 + This also enables receiving seeks in the element READY state. + When such a seek is received, it is stored to be later handled when + GST_MATROSKA_READ_STATE_DATA is reached. + +2018-10-16 12:38:46 +0200 Linus Svensson + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + * gst/rtpmanager/rtpsource.c: + rtpsession: Implement reset + Reset RTPSession when rtpsession changes state from PAUSED to READY. + Without this change, a stored last_rtptime in RTPSource could interfere + with RTP timestamp generation in RTCP Sender Report. + Fixes #510 + +2018-11-06 15:05:54 +0100 Linus Svensson + + * tests/check/elements/rtpsession.c: + rtpsession: test: Plug memory leak + +2018-11-13 00:37:11 +0100 Mathieu Duponchelle + + * gst/rtpmanager/gstrtpfunnel.c: + * gst/rtpmanager/gstrtpfunnel.h: + rtpfunnel: Stop using G_DECLARE_FINAL_TYPE + Fixes #516 + +2018-11-12 13:42:29 +0200 Jordan Petridis + + * .gitlab-ci.yml: + Add Gitlab CI configuration + This commit adds a .gitlab-ci.yml file, which uses a feature + to fetch the config from a centralized repository. The intent is + to have all the gstreamer modules use the same configuration. + The configuration is currently hosted at the gst-ci repository + under the gitlab/ci_template.yml path. + Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 + +2018-10-18 22:23:31 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Read driver selected interlace mode + If there was no interlace-mode field in the caps. Read back the value + selected by the driver. This way, if the driver does not support + progressive, then it will automatically negotiate the returned mode + unless this mode is not supported by GStreamer. + This method was already used for colorimetry. Just like colorimetry, the + interlace mode is not longer probed by v4l2src dues to performance + issues. + Fixes #511 + +2018-05-17 21:58:25 +1000 Matthew Waters + + * gst/matroska/matroska-demux.c: + matroska: implement preliminary support for the bitrate query + Return the size / total duration as a ballpark estimate. + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-05-17 21:53:56 +1000 Matthew Waters + + * gst/isomp4/qtdemux.c: + isomp4: add preliminary support for the bitrate query + Return the upstream size over the duration as a first estimate. + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-11-06 23:02:21 +0200 Sebastian Dröge + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Sink jitterbuffer/storage before passing as parameters to signals + Otherwise signal handlers from bindings will take ownership of them as + they are still floating, and we won't own a reference inside rtpbin + anymore. + Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/515 + +2018-10-27 18:00:52 +0100 Havard Graff + + * tests/check/elements/flvmux.c: + flvmux: Test that timestamps are always increasing + Decreasing timestamps break rtmpsink. + With contributions from Olivier Crête. + https://bugzilla.gnome.org/show_bug.cgi?id=796382 + +2018-10-27 19:27:12 +0100 Olivier Crête + + * gst/flv/gstflvmux.c: + * gst/flv/gstflvmux.h: + flvmux: Force timestamps to always be increasing + https://bugzilla.gnome.org/show_bug.cgi?id=796382 + +2018-11-05 05:36:26 +0000 Matthew Waters + + * .gitmodules: + Update common submodule location + Remove the git directory + +2018-11-05 12:16:46 +0800 Haihao Xiang + + * .gitmodules: + * gst-plugins-good.doap: + Clone the code from gitlab + This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/513 + +2018-11-01 20:37:12 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Ignore corrupted CTTS box + If ctts (CompositionOffsetBox) has larger sample_offset + (offset between PTS and DTS) than (2 * duration) of the stream, + assume the ctts box to be corrupted and ignore the box. + https://bugzilla.gnome.org/show_bug.cgi?id=797262 + +2018-10-23 09:45:36 +0100 Sebastian Dröge + + * gst/audiofx/gstscaletempo.c: + scaletempo: Implement SEGMENT query + https://bugzilla.gnome.org/show_bug.cgi?id=797313 + +2018-10-23 09:42:21 +0100 Sebastian Dröge + + * gst/wavparse/gstwavparse.c: + wavparse: Implement SEGMENT query + https://bugzilla.gnome.org/show_bug.cgi?id=797313 + +2018-10-28 17:12:59 +0000 Olivier Crête + + * gst/dtmf/gstdtmfsrc.c: + dtmfsrc: Declare output as interleaved + This element doesn't support planar audio yet. + +2018-10-28 14:09:21 +0000 Nirbheek Chauhan + + * tests/icles/meson.build: + meson: Add some missing test dependencies + Without these dependencies, the enumtype may not be generated when the + test is built, which will cause a compile failure. + +2018-10-28 14:07:54 +0000 Nirbheek Chauhan + + * tests/check/meson.build: + meson: Cleanup old FIXMEs that relied on meson changes + +2018-10-16 17:28:00 -0400 Olivier Crête + + * gst/rtpmanager/rtpsession.c: + * tests/check/elements/rtpsession.c: + rtpsession: Allow changing the SDES at runtime + Make it possible to modify the SDES in a packet at runtime. + https://bugzilla.gnome.org/show_bug.cgi?id=763502 + +2018-03-01 17:25:07 +0100 Alicia Boya García + + * gst/isomp4/atoms.c: + * gst/isomp4/gstqtmux.c: + qtmux: round to nearest when computing mehd and tkhd duration + This fixes a bug where in some files mehd.fragment_duration is one unit + less than the actual duration of the fragmented movie, as explained below: + mehd.fragment_duration is computed by scaling the end timestamp of + the last frame of the movie in (in nanoseconds) by the movie timescale. + In some situations, the end timestamp is innacurate due to lossy conversion to + fixed point required by GstBuffer upstream. + Take for instance a movie with 3 frames at exactly 3 fps. + $ gst-launch-1.0 -v videotestsrc num-buffers=3 \ + ! video/x-raw, framerate="(fraction)3/1" \ + ! x264enc \ + ! fakesink silent=false + dts: 999:59:59.333333334, pts: 1000:00:00.000000000, duration: 0:00:00.333333333 + dts: 999:59:59.666666667, pts: 1000:00:00.666666666, duration: 0:00:00.333333334 + dts: 1000:00:00.000000000, pts: 1000:00:00.333333333, duration: 0:00:00.333333333 + The end timestamp is calculated by qtmux in this way: + end timestamp = last frame DTS + last frame DUR - first frame DTS = + = 1000:00:00.000000000 + 0:00:00.333333333 - 999:59:59.333333334 = + = 0:00:00.999999999 + qtmux needs to round this timestamp to the declared movie timescale, which can + ameliorate this distortion, but it's important that round-neareast is used; + otherwise it would backfire badly. + Take for example a movie with a timescale of 30 units/s. + 0.999999999 s * 30 units/s = 29.999999970 units + A round-floor (as it was done before this patch) would set fragment_duration to + 29 units, amplifying the original distorsion from 1 nanosecond up to 33 + milliseconds less than the correct value. The greatest distortion would occur + in the case where timescale = framerate, where an entire frame duration would + be subtracted. + Also, rounding is added to tkhd duration computation too, which + potentially has the same problem. + https://bugzilla.gnome.org/show_bug.cgi?id=793959 + +2018-05-16 14:15:13 +0200 Marc Leeman + + * gst/udp/gstudpsrc.c: + udpsrc: print information about bind_error socket error + In some cases, a bind error occurs during operation. Printing + the information about the problem is critical for finding the + conflict + https://bugzilla.gnome.org/show_bug.cgi?id=797340 + +2018-10-17 12:58:08 +0200 Johan Bjäreholt + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.c: + * gst/matroska/matroska-read-common.c: + matroska-demux: Fix caps memleak + https://bugzilla.gnome.org/show_bug.cgi?id=797326 + +2018-10-11 09:24:53 +0900 Wonchul Lee + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: fix typo resurect to resurrect + https://bugzilla.gnome.org/show_bug.cgi?id=797273 + +2018-10-18 12:29:00 +0530 Amit Pandya + + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2h265enc.c: + * sys/v4l2/gstv4l2h265enc.h: + * sys/v4l2/meson.build: + v4l2videoenc: Add HEVC support + Add HEVC encoder support. + https://bugzilla.gnome.org/show_bug.cgi?id=797141 + +2018-10-19 17:37:28 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2allocator.c: + vl42allocator: Don't dup exported dmabufs + We can now use the new GstFAllocator to ask the allocator not to close + the wrapped FD. This way the dup is no longer needed. + +2018-10-19 17:14:15 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2allocator.c: + v4l2allocator: Don't dup imported DMABuf FD + There is no specific needs to duplicate the FD. Unlike the exportation, + we don't depend on code that will call close. This will make debugging + easyer since the traced FD will match the exporter. + +2018-10-23 13:04:34 +0200 Johan Bjäreholt + + * gst/matroska/matroska-ids.c: + matroska-ids: Fix uninitialized memory in contexts + https://bugzilla.gnome.org/show_bug.cgi?id=797327 + +2018-10-19 17:02:11 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmux.h: + qtmux: Add property for providing a threshold after which we create an edit list for gaps at the start + https://bugzilla.gnome.org/show_bug.cgi?id=797290 + +2018-10-22 12:21:54 +0100 Sebastian Dröge + + * gst/isomp4/atoms.c: + qtmux: Correctly set tkhd width/height to the display size + It was previously set to the display aspect ratio, e.g. 4x3, 16x9, etc. + but should be set to the display size. + This is a regression from e655d47dfce1652630fe8ff5fb6be56370087004 + (1.5.1) and was correct before that. + https://bugzilla.gnome.org/show_bug.cgi?id=797318 + +2018-10-21 11:15:15 +0900 Yeongjin Jeong + + * tests/check/elements/flvmux.c: + tests: flvmux: Fix pushing invalid audio caps in tests + Previous commit created caps with incorrect aac codec data + that did not match the audio channel. + https://bugzilla.gnome.org/show_bug.cgi?id=797256 + +2018-10-20 00:10:04 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Fix build with GLib versions < 2.54 + g_ptr_array_find_with_equal_func was introduced in glib 2.54 + which is a higher version than our minimum required one. + https://bugzilla.gnome.org/show_bug.cgi?id=797239 + +2018-10-17 13:52:20 +0200 Havard Graff + + * tests/check/elements/rtpsession.c: + rtpsession: fix up GHashTable-behavior dependent tests + GHashTable iteration order changed in recent GLib, + and tests were relying on that. + https://mail.gnome.org/archives/desktop-devel-list/2018-October/msg00016.html + +2018-10-07 20:07:39 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Don't switch active streams and old streams ... + ... before the old streams is not exposed yet for MSS stream. + In case of DASH, newly configured streams will be exposed + whenever demux got moov without delay. + Meanwhile, since there is no moov box in MSS stream, + the caps will act like moov. Then, there is delay for exposing new pads + until demux got the first moof. + So, following scenario is possible only for MSS but not for DASH, + STREAM-START -> CAPS -> (configure stream but NOT EXPOSED YET) + -> STREAM-START-> CAPS (configure stream again). + In above scenario, we can reuse old stream without any stream reconfigure. + https://bugzilla.gnome.org/show_bug.cgi?id=797239 + +2018-10-07 16:43:34 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: Use GPtrArray to store QtDemuxStream structure + GPtrArray has less overhead than linked list and the length also + can be auto updated by using it. + https://bugzilla.gnome.org/show_bug.cgi?id=797239 + +2018-10-07 16:50:45 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Make QtDemuxStream refcounted structure + This a prework for porting GPtrArray. + Refcounting will help the use of g_ptr_array_new_with_free_func() + with QtDemuxStream structure + https://bugzilla.gnome.org/show_bug.cgi?id=797239 + +2018-10-06 20:19:40 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Make function foreach method friendly + https://bugzilla.gnome.org/show_bug.cgi?id=797239 + +2018-07-26 15:25:06 -0400 Olivier Crête + + * gst/isomp4/qtdemux.c: + qtdemux: Only set width/height in caps if they're non-0 + If they are not valid, then let a downstream parser complete them. + https://bugzilla.gnome.org/show_bug.cgi?id=796878 + +2018-08-16 12:07:30 +0200 Wim Taymans + + * gst/avi/gstavidemux.c: + avidemux: fix misleading debug line + +2018-06-22 16:00:11 +0100 Philippe Normand + + * gst/isomp4/qtdemux.c: + qtdemux: Avoid warning when reporting about decryptors + https://bugzilla.gnome.org/show_bug.cgi?id=796652 + +2018-10-17 14:15:33 +0100 Tim-Philipp Müller + + * gst/audiofx/meson.build: + * gst/deinterlace/meson.build: + * gst/videobox/meson.build: + * gst/videomixer/meson.build: + meson: Replace empty configuration_data() with copy keyword + Use 'copy' keyword to avoid meson warning message. + Note that 'copy' keyword in configure_file() is available + since meson 0.47.0 + https://bugzilla.gnome.org/show_bug.cgi?id=797298 + +2018-10-16 15:42:12 +0300 Vivia Nikolaidou + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Do not hardcode frames_of_daily_jam + Apart from the obvious drawbacks of hardcoding, the drawback here was + that, if we subtracted 2 frames (instead of 2.6) from the target running + time, we'd request the next keyframe a bit too far into the future, + which would make our files split at the wrong position. + https://bugzilla.gnome.org/show_bug.cgi?id=797293 + +2018-10-02 19:32:47 +0300 Vivia Nikolaidou + + * gst/isomp4/gstqtmux.c: + qtmux: Allow up to 1% of frame rate for lateness + https://bugzilla.gnome.org/show_bug.cgi?id=797290 + +2018-09-18 13:15:06 +0200 Mathieu Duponchelle + + * gst/rtpmanager/gstrtpfunnel.c: + rtpfunnel: fix shutdown + By disposing of the ssrc_to_pad map in finalize instead of + dispose. + +2017-10-18 11:14:36 +0200 Havard Graff + + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/gstrtpfunnel.c: + * gst/rtpmanager/gstrtpfunnel.h: + * gst/rtpmanager/gstrtpmanager.c: + * gst/rtpmanager/meson.build: + * tests/check/Makefile.am: + * tests/check/elements/rtpfunnel.c: + * tests/check/meson.build: + Initial commit of GstRtpFunnel + For funneling together rtp-streams into a single session. + Use-cases include multiplexing and bundle. + +2018-10-12 22:33:15 +0900 Yeongjin Jeong + + * tests/check/elements/flvdemux.c: + tests: flvdemux: Add new test for channel detect using aac codec-data + https://bugzilla.gnome.org/show_bug.cgi?id=797275 + +2018-10-11 16:36:17 +0900 Yeongjin Jeong + + * gst/flv/gstflvdemux.c: + flvdemux: Use aac codec-data to adjust channels if needed + Flv does not support various channels in AAC stream format, for example + flvdemux detect an audio channels of 2(stereo) when the AAC really is 1(mono). + https://bugzilla.gnome.org/show_bug.cgi?id=797275 + +2018-10-11 14:31:20 +0900 Yeongjin Jeong + + * tests/check/elements/flvmux.c: + tests: flvmux: Add new test for caps change after starting to write headers + https://bugzilla.gnome.org/show_bug.cgi?id=797256 + +2018-10-05 17:16:26 +0900 Yeongjin Jeong + + * gst/flv/gstflvmux.c: + * gst/flv/gstflvmux.h: + flvmux: Don't refuse caps changes after starting to write headers in streamable mode. + Flv does support changing the stream type and stream properties + after the headers were started to be written, and for example H264 + codec_data changes can be supported. + https://bugzilla.gnome.org/show_bug.cgi?id=797256 + +2018-10-11 13:55:01 +0300 Vivia Nikolaidou + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Fix if condition in drop-frame timecode wrap-around + Was previously: if ( x | y && a == b). Changed it into if ((x & y) && (a + == b)). + +2018-10-09 16:39:11 +0300 Vivia Nikolaidou + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Subtract daily jam offset when day wraps around + For drop-frame framerates, when the expected next max timecode wraps + around at the end of the day, we have to subtract the offset of the + daily jam, otherwise we end up with a duration that's a few frames too + long. + https://bugzilla.gnome.org/show_bug.cgi?id=797270 + +2017-09-25 14:30:13 +0200 Havard Graff + + * gst/rtpmanager/gstrtpmux.c: + * tests/check/elements/rtpmux.c: + rtpmux: respect downstream "timestamp-offset" in caps. + https://bugzilla.gnome.org/show_bug.cgi?id=795162 + +2016-06-07 14:38:19 +0200 Havard Graff + + * gst/rtpmanager/gstrtpmux.c: + * gst/rtpmanager/gstrtpmux.h: + * tests/check/elements/rtpmux.c: + rtpmux: cleanup ssrc-handling code a bit + And add some better logging. + https://bugzilla.gnome.org/show_bug.cgi?id=795162 + +2016-05-04 11:48:04 +0200 Havard Graff + + * gst/rtpmanager/gstrtpmux.c: + rtpmux: protect against NULL caps + Due to state-changes deactivating the pad from another thread, + this can happen. + https://bugzilla.gnome.org/show_bug.cgi?id=795162 + +2015-07-22 09:47:22 +0200 Havard Graff + + * gst/rtpmanager/gstrtpmux.c: + * tests/check/elements/rtpmux.c: + rtpmux: property should overrule both upstream and downstream + https://bugzilla.gnome.org/show_bug.cgi?id=762213 + https://bugzilla.gnome.org/show_bug.cgi?id=795162 + +2018-10-08 20:45:08 +0100 Tim-Philipp Müller + + * meson.build: + meson: use new 'python' module instead of deprecated + https://github.com/mesonbuild/meson/pull/4169 + +2018-10-08 20:35:15 +0100 Tim-Philipp Müller + + * tests/examples/gtk/meson.build: + meson: only build gtk gl examples if gst-gl was found + And fix typo in glliveshader example binary name. + +2018-10-03 16:17:22 +0200 Peter Körner + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: accept pads named 'sink' on the muxer, handle static pads as well + https://bugzilla.gnome.org/show_bug.cgi?id=797241 + +2018-09-25 17:44:15 +0300 Sebastian Dröge + + * ext/cairo/gstcairooverlay.c: + * ext/cairo/gstcairooverlay.h: + cairooverlay: Don't map input buffers if we just attach the overlay as meta + https://bugzilla.gnome.org/show_bug.cgi?id=797091 + +2018-09-25 17:02:26 +0300 Sebastian Dröge + + * ext/cairo/gstcairooverlay.c: + * ext/cairo/gstcairooverlay.h: + cairooverlay: Add overlay as meta to the buffers if we can + This requires that downstream supports it and + draw-on-transparent-surface is enabled. + https://bugzilla.gnome.org/show_bug.cgi?id=797091 + +2018-09-25 15:34:40 +0300 Sebastian Dröge + + * ext/cairo/gstcairooverlay.c: + cairooverlay: Pre-multiply and un-premultiply alpha in case of ARGB32 + Cairo expects pre-multiplied alpha, we work on un-premultiplied alpha. + https://bugzilla.gnome.org/show_bug.cgi?id=797091 + +2018-09-25 15:31:20 +0300 Sebastian Dröge + + * ext/cairo/gstcairooverlay.c: + * ext/cairo/gstcairooverlay.h: + cairooverlay: Add property for drawing on a transparent surface and then blending + This allows us to use the GstVideoOverlayComposition API and correctly + handle pre-multiplied alpha, while also only doing the alpha conversion + once instead of twice for the whole frame. + At a later point we can attach the meta to the buffer instead of + blending ourselves if downstream supports that. + https://bugzilla.gnome.org/show_bug.cgi?id=797091 + +2018-10-03 17:34:49 +0200 Thibault Saunier + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-read-common.c: + matroskdemux: do not use MapInfo.data after unmapping + And minor gst-indenting + +2018-09-30 19:28:07 +0200 Yacine Bandou + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.c: + * gst/matroska/matroska-ids.h: + * gst/matroska/matroska-read-common.c: + * gst/matroska/matroska-read-common.h: + matroska: Add the WebM encrypted content support in matroskademux + This commit: + 1. Reads the WebM and Matroska ContentEncryption subelements. + 2. Creates a GST_PROTECTION event for each ContentEncryption, which + will be sent before pushing the first source buffer. + The DRM system id field in this event is set to GST_PROTECTION_UNSPECIFIED_SYSTEM_ID, + because it isn't specified neither by Matroska nor by the WebM spec. + 3. Reads the protection information of encrypted Block/SimpleBlock and + extracts the IV and the partitioning format (subsamples). + 4. Creates the metadata protection for each encrypted Block/SimpleBlock, + with those informations: KeyID (extracted from ContentEncryption element), + IV and partitioning format. + 5. Adds a new caps for WebM encrypted content named "application/x-webm-enc", + with the following new fields: + "encryption-algorithm": The encryption algorithm used. + values: "None", "DES", "3DES", "Twofish", "Blowfish", "AES". + "encoding-scope": The field that describes which Elements have been modified. + Values: "frame", "codec-data", "next-content". + "cipher-mode": The cipher mode used in the encryption. + Values: "None", "CTR". + https://bugzilla.gnome.org/show_bug.cgi?id=765275 + +2018-09-26 17:43:05 +0300 John Nikolaides + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + splitmuxsink: Added a split-at-running-time action signal + The video file can now be split at an arbitrary time, given by the user + as an argument to the action signal. + https://bugzilla.gnome.org/show_bug.cgi?id=787922 + +2018-09-21 19:47:44 +0100 Tim-Philipp Müller + + * gst/rtp/gstrtpmp4gdepay.c: + * gst/rtp/gstrtpmp4gdepay.h: + rtpmp4gdepay: detect broken senders who send AAC with ADTS frames + Strip ADTS headers if we detect any, apparently some Sony cameras + send AAC with ADTS headers. We could also change the stream-format + in the output caps, but that would be unexpected to pipeline builders + and would not exactly be backwards compatible. + +2018-09-21 18:17:25 +0100 Tim-Philipp Müller + + * gst/rtp/gstrtpmp4gdepay.c: + rtpmp4gdepay: factor out pushing of output buffer + +2018-09-26 13:29:42 +0300 Sebastian Dröge + + * gst/imagefreeze/gstimagefreeze.c: + imagefreeze: Allow ANY capsfeatures + +2018-09-26 00:06:09 +0100 Tim-Philipp Müller + + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.signals: + * docs/plugins/inspect/plugin-audioparsers.xml: + * docs/plugins/inspect/plugin-video4linux2.xml: + docs: update for git master + +2018-06-22 12:05:17 +0100 Philippe Normand + + * gst/isomp4/qtdemux.c: + qtdemux: PIFF track encryption box support + The PIFF track encryption box is a UUID box containing the default encryption + values that should be used for PIFF sample encryption. + https://bugzilla.gnome.org/show_bug.cgi?id=796647 + +2018-09-24 11:45:46 +0200 Nicola Murino + + * sys/osxaudio/gstosxcoreaudio.c: + osxaudio: add support for parsing more channel layouts ... + ... and fallback to gst_audio_info_set_format for not yet supported layouts. + Fix audio playback on iOS 12. + Based on patch from Byron Schiel + https://bugzilla.gnome.org/show_bug.cgi?id=796919 + +2018-09-22 17:22:46 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: turn impossible condition into an assert + qtdemux_update_streams() is only ever called after checking + `qtdemux->streams_aware` is TRUE. There is no need to check for that + condition again. + `qtdemux->streams_aware` is only modified when the demuxer is + hard-resetted, which is mutually exclusive with demuxing, so it cannot + be modified during the call. + https://bugzilla.gnome.org/show_bug.cgi?id=797191 + +2018-09-21 22:24:02 +0200 Alicia Boya García + + * gst/matroska/matroska-demux.c: + matroskademux: Emit no-more-pads after parsing Tracks + Currently matroskademux does not emit no-more-pads until the first + Cluster is parsed, even though the Tracks have already been parsed and + from that point on there can be no more tracks. + This is important in MSE because the browser needs to know when the MSE + initialization segment has been completely parsed so that it can expose + the tracks to the user. Some applications depend on this been done + before they feed frames to the demuxer. + As a consequence, historically WebKit has relied on hacks such as + listening to the `pad-added` event, which made impossible to support + multiple tracks in the same file. Let's fix that. + https://bugzilla.gnome.org/show_bug.cgi?id=797187 + +2018-09-21 20:38:02 +0200 Alicia Boya García + + * gst/matroska/matroska-demux.c: + matroskademux: Parse successive Tracks elements + This patch allows matroskademux to parse a second Tracks element, + erroring out if the tracks are not compatible (different number, type or + codec) and emitting new caps and tag events should they have changed. + https://bugzilla.gnome.org/show_bug.cgi?id=793333 + +2018-09-21 16:23:57 +0200 Alicia Boya García + + matroskademux: Refactor track parsing out from adding tracks + This splits gst_matroska_demux_add_stream() into: + * gst_matroska_demux_parse_stream(): will read the Matroska bytestream + and fill a GstMatroskaTrackContext. + * gst_matroska_demux_parse_tracks(): will check there are no repeated + tracks. + * gst_matroska_demux_add_stream(): creates and sets up the pad for the + track. + https://bugzilla.gnome.org/show_bug.cgi?id=793333 + +2017-11-30 20:44:23 +0100 Alicia Boya García + + * gst/matroska/matroska-demux.c: + matroskademux: Allow Matroska headers to be read more than once + This is necessary for MSE, where a new MSE initialization segment may be + appended at any point. These MSE initialization segments consist of an + entire WebM file until the first Cluster element (not included). [1] + Note that track definitions are ignored on successive headers, they must + match, but this is not checked by matroskademux (look for + `(!demux->tracks_parsed)` in the code). + Source pads are not altered when the new headers are read. + This patch has been splitted from the original patch from eocanha in [2]. + [1] https://www.w3.org/TR/mse-byte-stream-format-webm/ + [2] https://bug334082.bugzilla-attachments.gnome.org/attachment.cgi?id=362212 + https://bugzilla.gnome.org/show_bug.cgi?id=793333 + +2018-08-16 21:42:37 +0200 Mathieu Duponchelle + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + splitmuxsink: Implement split-after + The behaviour of split-now is to output the current GOP after + starting a new file. + The newly-added split-after signal will output the current GOP + to the old file if possible once a new GOP is opened. + https://bugzilla.gnome.org/show_bug.cgi?id=796982 + +2018-09-20 12:12:55 +0900 Seungha Yang + + * gst/flv/gstflvmux.c: + flvmux: Don't leak codec_data buffer + Use gst_buffer_replace() to prevent buffer leak + https://bugzilla.gnome.org/show_bug.cgi?id=797179 + +2018-09-18 18:13:52 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Set Closed Caption track width/height to that of the first video track + Otherwise software like Premiere or Final Cut Pro won't like our files. + https://bugzilla.gnome.org/show_bug.cgi?id=797111 + +2018-09-19 11:45:59 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add glib-checks option to disable API guards and such + We want this enabled by default, also in releases, but people + may want to disable this for performance-critical workloads or + on embedded devices. + +2018-09-19 11:45:00 +0100 Tim-Philipp Müller + + * meson_options.txt: + meson: fix missing closing bracket in option descriptions + +2018-09-06 20:10:30 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Initialize caption track language code to 0 instead of "und" + Without this, Final Cut considers it "non-standard" and 0 (english) is a + good default for closed captions. + https://bugzilla.gnome.org/show_bug.cgi?id=797111 + +2018-09-13 03:16:32 +0000 Song Bing + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2videodec.c: + v4l2videodec: Add HEVC decoder support + https://bugzilla.gnome.org/show_bug.cgi?id=771686 + +2018-09-13 02:35:39 +0000 Nicolas Dufresne + + * sys/v4l2/gstv4l2videodec.c: + v4l2videodec: Move capture probe after input format is set + This is to support Amlogic CODEC driver which does not provide a full + list of formats when the driver is initially opened. GStreamer does + not strictly need this full list initially, but only later, in order + to negotiate with downstream if multiple format can be selected. + With this change, we will no longer probe twice the device, since the + probed list can be directly used for negotation. + +2018-09-11 16:46:34 -0300 Ezequiel Garcia + + * sys/v4l2/gstv4l2videodec.c: + * sys/v4l2/gstv4l2videoenc.c: + v4l2: Add a debug message beforing waiting for codec stop + Add a debug message right before waiting for the driver. + This is useful in order to debug drivers without a properly + implemented decoder or encoder stop command. + +2018-09-10 13:18:45 -0300 Ezequiel Garcia + + * sys/v4l2/gstv4l2.c: + v4l2: Add a debug message indicating probe operation + It's useful to see the v4l2 element running the probe + operation, to confirm it's turned on and working. + +2018-09-10 13:18:30 -0300 Ezequiel Garcia + + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2jpegenc.c: + * sys/v4l2/gstv4l2jpegenc.h: + * sys/v4l2/meson.build: + v4l2: Add JPEG encoding support + This commit adds the support for V4L JPEG stateful encoders. + +2018-09-10 16:20:52 -0300 Ezequiel Garcia + + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2fwhtenc.c: + * sys/v4l2/gstv4l2fwhtenc.h: + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2videodec.c: + * sys/v4l2/meson.build: + v4l2: Add FWHT codec support + The recently added vicodec (virtual codec) V4L driver + uses the Fast Walsh-Hadamard Transform for encoding + and decoding. + Add support for it. + +2018-09-12 21:28:24 -0400 Nicolas Dufresne + + * sys/v4l2/ext/v4l2-common.h: + * sys/v4l2/ext/v4l2-controls.h: + * sys/v4l2/ext/videodev2.h: + v4l2: Sync kernel header with linuxtv tree + This notably add HEVC and FWHT support, and VP8/9 profiles are now an + enumeration and their control exposed as a menu. + +2018-09-12 17:24:00 +0300 Vivia Nikolaidou + + * gst/isomp4/gstqtmux.c: + qtmux: Allow up to 1 trak timescale unit of lateness in prefill mode + For 59.94 FPS, it's common to set 60000 as timescale. For that + timescale, if the audio is late by as little as 0:00:00.000016666 + (definitely less than one audio sample), lateness gets rounded to 1. + Added a safeguard that allows lateness up to 1 sample with the specific + trak's timescale, to make sure that values less than e.g. one audio + sample won't break the prefill mode. What will happen in this case is + that the audio will get squeezed back to the video's timestamp, which in + practice means that the audio will be 0.000016666 seconds early (with + the patch). + https://bugzilla.gnome.org/show_bug.cgi?id=797133 + +2018-09-10 20:20:39 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Fix indentation + +2018-09-11 00:18:32 +0000 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Protect against zero PAR num/demu + This fixes an assertion when the driver implement CROPCAP but does + not set the PAR. + +2018-09-12 00:52:19 +0100 Tim-Philipp Müller + + * gst/audioparsers/gstwavpackparse.c: + wavpackparse: fix handling of correction streams + Accept wavpack correction streams (.wvc) on sink pad, so + that wavpackparse can also be used to packetise correction + streams. + Fix parsing of subblock ID tags - the higher bits are + flags and are not part of the ID. This resulted in + correction blocks not being recognised properly and + the output not having the right (correction) caps. + +2018-09-07 18:47:22 +0530 Nirbheek Chauhan + + * ext/speex/meson.build: + meson: Explicitly pass -DWIN32 while building speex + The speex headers assume that WIN32 will always be defined when + building on Windows, but this is only true by default on MinGW. + Always set it explicitly. + +2018-09-06 13:13:19 +0900 Seungha Yang + + * gst/flv/gstflvmux.c: + flvmux: Don't omit streamheader from caps on downstream reconfigure + The reconfigured downstream elements (e.g., dynamically added sink element) + most likely require the flv streamheader + https://bugzilla.gnome.org/show_bug.cgi?id=797089 + +2018-09-05 16:11:00 -0700 Martin Kelly + + * gst/matroska/matroska-mux.c: + * gst/matroska/matroska-mux.h: + matroskamux: don't store used UIDs + Currently, whenever we generate a 128-bit UID, we store it in a list and + return 0 if we ever encounter a collision. This is so mathematically + improbable that it's not worth checking for, so we can save memory and + time by not tracking the UID. Even if a collision happened, a list of + only 10 UIDs would be unlikely to detect it. + This article has a good description of how improbable a collision is: + https://en.wikipedia.org/wiki/Universally_unique_identifier#Collisions + https://bugzilla.gnome.org/show_bug.cgi?id=797086 + +2018-09-06 20:06:10 +0300 Sebastian Dröge + + * gst/isomp4/atoms.c: + * gst/isomp4/gstqtmux.c: + qtmux: Use existing helper function to create "und" language code + +2018-09-05 20:15:57 +0530 Nirbheek Chauhan + + * ext/meson.build: + meson: Don't skip plugins that don't build with MSVC + We now have options for all plugins, so we will just disable these in + the cerbero recipe instead. These require external deps, so they won't + affect gst-build either. + +2018-09-03 16:04:33 +0530 Nirbheek Chauhan + + * ext/mpg123/gstmpg123audiodec.h: + mpg123: Remove ssize_t fallback, not needed anymore + The mpg123 headers now contain a definition for ssize_t and building + with MSVC fails because of a redefinition for ssize_t + +2018-07-31 12:52:36 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: Keep sample data from the current fragment only (push mode) + This patch clears the sample table whenever the demuxing of a new + fragment begins. This avoids increasing memory usage for long videos. + This behavior was already present when upstream_format_is_time; this + patch extends it to all push mode operation (e.g. Media Source + Extensions). + https://bugzilla.gnome.org/show_bug.cgi?id=796899 + +2018-09-01 09:30:23 +0530 Nirbheek Chauhan + + * meson.build: + * sys/osxaudio/meson.build: + meson: Fix osxaudio build on iOS + Must define HAVE_IOS, and use appleframeworks dependency to ensure the + right frameworks are picked up. + +2018-08-22 19:23:53 +0000 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Only offer MMAP/DMABUF pool + The propose allocation was offering a pool even in DMABUF_IMPORT or + USERPTR mode. These pool are internal only. + +2018-08-22 17:51:52 +0000 Nicolas Dufresne + + * sys/v4l2/gstv4l2transform.c: + * sys/v4l2/gstv4l2transform.h: + v4l2transform: Add "disable-passthrough" property + This allow forcing going through the transform driver even if there + isn't an conversion happening. This is usedful when the m2m driver can + be used to adapt the type of memory between two drivers. + +2018-08-31 14:25:09 +0300 Sebastian Dröge + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Reset frame/tc/caption pointer to NULL after moving it in the history + +2018-08-29 09:51:42 +0200 Edward Hervey + + * gst/rtp/gstrtpmp4vpay.c: + rtpmp4vpay: Increase ranking + Both rtpmp4vpay and rtpmp4gpay support MPEG4 elementary streams. But + the most supported variant is the video-specific one (rtpmp4vpay), + therefore increase the rank of that one so that auto-plugging of + payloaders for MPEG4 elementary streams ends up picking that one + and not the generic one. + +2018-08-15 12:53:34 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + matroskademux: implement keyframe search also without cluster prev size + If we have cluster prev size (GStreamer muxer will write it by default), + we can go back to the previous cluster efficiently, but if we don't then + just search backwards until we find a cluster ebml identifier, like we + do when searching for clusters in the bisection loop. + +2018-08-15 12:14:24 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-demux.h: + matroskademux: make max backtrack distance for keyframe search configurable + Add property instead of hardcoding it in the code. + In some scenarios such as CCTV variable fps and extra long GOPs are + used to minimise storage space, for example. In those cases there might + not be any keyframes for many minutes, so provide a property to override + the max allowed distance. + https://bugzilla.gnome.org/show_bug.cgi?id=790696 + +2018-08-15 11:49:57 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + matroskademux: set limit how much to backtrack to find a keyframe + If we seek without an index and land on a cluster that starts + with a delta frame. + https://bugzilla.gnome.org/show_bug.cgi?id=790696 + +2018-08-15 11:25:21 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-demux.h: + matroskademux: no need to search for keyframes for intra-only streams + If the video streams are all I-frame only then we don't need to look + for a cluster with a keyframe, we can just assume there will be one. + https://bugzilla.gnome.org/show_bug.cgi?id=790696 + +2018-08-15 01:10:32 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + matroskademux: figure out if we have prev_size when starting up + This is useful to know in case someone initiates a seek or + direction change before we reach the second cluster. + +2018-08-08 12:37:54 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + matroskademux: try to ensure keyframe when seeking without index + When seeking in pull mode without an index (because there is no index + or the file is still being written to) we bisect to find the right + cluster to jump to. However, it's possible the cluster we found doesn't + start with a keyframe, which leads to decoding errors, so if we know + that the found cluster starts with a delta frame try to scan back to + previous clusters until we find one that starts with a keyframe or + we are back at the beginning. Theoretically it's possible that all + clusters but the first one do not start with a keyframe and the + keyframes are in the middle of clusters, but this is extremely + unusual, so we will cover this case with a basic sanity check. + This problem is especially problematic with content recorded with + dynamic GOP and FPS, where long GOP lengths and low FPS may cause a + large set of clusters to lack key frames. Playback would then be + started on a non-keyframe cluster, and the large number of such frames + would make the content impossible to decode fo a long stretch of time. + Based on patch by: Mats Lindestam + https://bugzilla.gnome.org/show_bug.cgi?id=790696 + +2017-01-18 10:27:38 +0000 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-demux.h: + matroskademux: extract cluster prevsize if available + This is useful for reverse playback/trickmodes + without an index, and will also be useful in the + seek handler if we need to scan back to find a cluster + that starts with a keyframe. + https://bugzilla.gnome.org/show_bug.cgi?id=790696 + +2018-07-25 19:27:01 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Validate stride/offset when importing + This will prevent situation where buffer size allow importing but rendering + goes wrong due to a miss-match in expected stride and offset. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-08-01 13:07:52 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: Add a method to try and import buffers + This method will check if a buffer, base on it's video meta, + can be imported. It will also try and adapt the request stride + in case this is the only that miss-match. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-08-01 12:07:20 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2allocator.c: + v4l2allocator: Trace the buffer index we import to + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-07-25 22:16:59 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Fix typo in error message + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-07-24 12:07:22 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Only queue buffer if preparation worked + The preparation code imports the buffer, doing bunch of + validation. Only queue the buffer in the driver if the + importation worked. This way we don't rely on the driver + to validate. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-07-24 12:05:45 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Only allow DMABuf export for STREAMING device + DMABuf exportation requires mmap, which requires STREAMING + capabilities. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-07-13 14:42:21 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Activate the other pool first + This change has no effect. We will need to acquire a buffer from the + pool later in order to validate / adapt with the video alignment for + the downstream buffers. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-07-09 15:33:02 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2src.c: + v4l2src: Simplify format handling + Always initially use try_format(), delaying set_format() to when the + allocation is being negotiated. This avoid having two code paths, and + will be help adding support for properly importing buffers of specific + strides and offsets. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-08-23 22:57:35 +0200 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.h: + * gst/matroska/matroska-mux.c: + * gst/matroska/matroska-parse.c: + matroska: fix handling of FlagInterlaced + This is an enum not a boolean, and a value of 2 signals + that the video is progressive, but we would mistakenly set + interlace-mode=mixed on the output caps. + https://bugzilla.gnome.org/show_bug.cgi?id=787206 + +2018-08-09 15:14:05 +0200 Philipp Zabel + + * sys/v4l2/gstv4l2object.c: + v4l2object: complete colorspace info in debug log + The desired colorimetry is logged with all parameters (colorpsace, + range, matrix, and transfer function), but of the values actually + set by the driver, only colorspace is logged. Complete the debug + log message to display all colorimetry parameters: + Desired colorspace is 8:1:1:1 + Got format of 640x480, format YU12, nb planes 1, colorspace 8 + -> + Desired colorspace is 8:1:1:1 + Got format of 640x480, format YU12, nb planes 1, colorspace 8:0:0:0 + https://bugzilla.gnome.org/show_bug.cgi?id=796940 + +2018-08-09 15:12:57 +0200 Philipp Zabel + + * sys/v4l2/gstv4l2object.c: + v4l2object: fix typo in comment + https://bugzilla.gnome.org/show_bug.cgi?id=796940 + +2018-08-09 15:08:59 +0200 Philipp Zabel + + * sys/v4l2/gstv4l2object.c: + v4l2object: improve colorspace handling for JPEG sources + gstjpegdec sets 1:4:0:0 colorimetry (full range BT.601 YCbCr encoding + with unknown primaries and unknown transfer function). This currently + gets translated to bt601 or bt709 depending on resolution. + Both cases result in a negotiation failure: + ERROR: from element /GstPipeline:pipeline0/v4l2video0convert:v4l2video0convert0: Device '/dev/video0' does not support 1:4:0:0 colorimetry + Improve the guessing game by selecting JPEG colorimetry (JPEG colorspace + with sRGB transfer function) under these specific conditions, and loosen + the matching so that 1:4:0:0 input gets accepted if the device is + actually configured to 1:4:7:1 (V4L2_PIX_FMT_JPEG default). + https://bugzilla.gnome.org/show_bug.cgi?id=796940 + +2018-08-09 17:24:35 +0200 Philipp Zabel + + * sys/v4l2/gstv4l2object.c: + v4l2object: stop V4L2 from zeroing extended colorimetry for non-mplane + Setting the priv field to a magic value stops V4L2 core from zeroing + the extended colorimetry fields quantization, ycbcr_enc, and xfer_func + for non-mplane queues. + https://bugzilla.gnome.org/show_bug.cgi?id=796940 + +2018-08-19 15:39:16 +0200 Zeeshan Ali + + * sys/v4l2/gstv4l2object.c: + v4l2: Remove a trailing whitespace + Otherwise, the latest gst-indent check doesn't pass. + +2018-08-18 21:08:55 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add options to disable gobject cast checks and glib asserts + ... and define G_DISABLE_DEPRECATED for development versions, + like we do in autotools. + +2018-08-18 21:01:52 +0100 Tim-Philipp Müller + + * REQUIREMENTS: + * ext/jpeg/meson.build: + meson: find libjpeg via pkg-config + This effectively (but optionally) requires libjpeg-turbo which + ships with a .pc file and is what pretty much everyone these days + uses anyway for libjpeg, so shouldn't be a problem hopefully. + https://bugzilla.gnome.org/show_bug.cgi?id=796947 + +2018-08-17 17:35:43 -0400 Nicolas Dufresne + + * gst/udp/gstudpsrc.c: + udpsrc: Fix build when SO_RCVBUFFORCE is not defined + This shoudl fix the mingw build. + +2018-08-17 14:17:39 -0400 Nicolas Dufresne + + * gst/udp/gstudpsrc.c: + udpsrc: Balance Linux value of get/set_rcvbuf + On Linux, the kernel returns twice the size as it will allocate extra + space for accouting. We devides this value by two in order to ensure + that get/set value now match. This fixes the set buffer size validation + and allow having a nice warning when the size if surpassed and the + process does not have CAP_NET_ADMIN capabilities. + https://bugzilla.gnome.org/show_bug.cgi?id=727067 + +2018-08-17 14:05:04 +0200 Guillaume Desmottes + + * gst/udp/gstudpsrc.c: + updsrc: set udp buffer size forcibly + The udp buffer size is limited to a maximum of around 100K. + Some apps need to set the force bufsize for their own operation. + Use the SO_RCVBUFFORCE option in order to override the rmem_max limit + of linux kernel. Require user to have the CAP_NET_ADMIN privilege to + work. + Original patch from Kyungnam Bae + https://bugzilla.gnome.org/show_bug.cgi?id=727067 + +2018-08-17 13:59:00 +0200 Guillaume Desmottes + + * gst/udp/gstudpsrc.c: + udpsrc: factor out gst_udpsrc_get_rcvbuf() + No semantic change. + https://bugzilla.gnome.org/show_bug.cgi?id=727067 + +2018-08-17 19:11:21 +0530 Nirbheek Chauhan + + * ext/libcaca/meson.build: + * meson_options.txt: + meson: Rename caca option to libcaca + All options must match the plugin directory name. + +2018-08-17 18:56:54 +0530 Nirbheek Chauhan + + * meson_options.txt: + * sys/directsound/meson.build: + * sys/meson.build: + * sys/osxaudio/meson.build: + * sys/osxvideo/meson.build: + * sys/waveform/meson.build: + meson: Add build files for osxaudio, osxvideo, waveform + osxaudio is for macOS and iOS + osxvideo is for macOS + waveform is for Windows + +2018-08-17 14:44:26 +0100 Tim-Philipp Müller + + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.signals: + * docs/plugins/inspect/plugin-audiofx.xml: + * docs/plugins/inspect/plugin-deinterlace.xml: + * docs/plugins/inspect/plugin-isomp4.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-multifile.xml: + docs: update for changes in master + +2018-08-17 11:45:47 +0100 Tim-Philipp Müller + + * tests/examples/Makefile.am: + examples: dist qt examples + https://bugzilla.gnome.org/show_bug.cgi?id=796968 + +2018-08-17 00:27:59 +0530 Nirbheek Chauhan + + * meson.build: + * meson_options.txt: + * tests/meson.build: + meson: Add an option for tests + This is needed because we don't always have gstreamer-check available, + for instance inside Cerbero on iOS. + +2018-08-16 18:55:29 +0200 Mathieu Duponchelle + + * gst/isomp4/gstqtmux.c: + * gst/multifile/gstsplitmuxsink.c: + mp4 robust muxing: improve documentation and logging + +2018-07-03 23:11:56 +0200 Jan Alexander Steffens (heftig) + + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph265pay.c: + rtph26*pay: Update param set timestamp even if parameters unchanged + rtph264pay and rtph265pay skip updating the parameter set timestamp if + the units they see contain no new configuration. This can result in + them injecting duplicate parameters. + https://bugzilla.gnome.org/show_bug.cgi?id=796748 + +2018-08-15 13:43:53 +0200 Ulf Olsson + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: Add support for SET_PARAMETER and GET_PARAMETER using signals + https://bugzilla.gnome.org/show_bug.cgi?id=792131 + +2018-08-15 02:28:20 +1000 Jan Schmidt + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Don't leak old muxer/sink in async mode + Make sure to clear the reference taken earlier in the function + when switching muxer/sink asynchronously so they don't leak + +2018-08-15 02:10:25 +1000 Jan Schmidt + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + splitmuxsink: Fix reference counting loop + The stream context was holding a reference to the + internal queue and pads, with pad probes that were + in turn holding references to the stream context. + This lead to a leak if the request pads weren't explicitly + released. + https://bugzilla.gnome.org/show_bug.cgi?id=796893 + +2018-08-11 16:45:25 +0800 Roland Jon + + * gst/audioparsers/gstaacparse.c: + aacparse: fix codec_data buffer leak + https://bugzilla.gnome.org/show_bug.cgi?id=740101 + +2018-08-02 16:12:45 +0300 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Handle closed captions as subtitle streams + +2018-08-02 08:40:17 +0200 Iñigo Huguet + + * sys/v4l2/gstv4l2object.c: + v4l2src: fix first input used is always used next times + The input from an v4l2 device that was used the first time was + remembered for next times, and set again always the pipeline is + set to READY state. This was making that users wasn't able to + select a different input without having to create a new pipeline. + This patch makes that v4l2src element forget previous used input + when going to NULL state, so it will check again for the current + selected input when going again to READY state. Users can change + to NULL state, select a new input with a VIDIOC_S_INPUT ioctl + and change to PLAYING again. + https://bugzilla.gnome.org/show_bug.cgi?id=796908 + +2018-08-02 13:40:09 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: The sample size we have to reserve is 256+8 bytes for the header for CDP packets + +2018-08-02 12:27:45 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Properly allocate 256 bytes per CDP packet in prefill mode + Instead of allowing 256 but only pre-allocating 100. + +2018-08-02 12:27:17 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + Revert "qtmux: Allow for CDP packets up to 320 bytes" + This reverts commit 5eed1d49bdb7e7a632c7135656c482ed38a6ac2a. + 255 is actually the maximum, there's a bug if more is arriving. + +2018-08-01 16:50:03 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Allow for CDP packets up to 320 bytes + Apparently they can be bigger than 256 bytes sometimes. + +2018-07-13 22:31:04 -0400 Nicolas Dufresne + + * gst/rtp/gstrtpopuspay.c: + * gst/rtp/gstrtpvp8pay.c: + * gst/rtp/gstrtpvp9pay.c: + rtppayload: Fix VP8/VP9/OPUS dual encoding name handling + All these were copy pasted and would lead to assertion when chained with + rtpmux. This commit rewrite the negotiation with downstream. This also + drop the fallback to ancient names if the pad is unlinked. This was + completly arbitrary decision that made no sense. + https://bugzilla.gnome.org/show_bug.cgi?id=796809 + +2018-08-01 12:06:23 +1000 Matthew Waters + + * ext/qt/gstqtgl.h: + qt: Ensure GL headers are included + Otherwise there may be no valid typedef of GLsync. + ... + /usr/include/gstreamer-1.0/gst/gl/gstglfuncs.h:93:24: note: in definition of macro 'GST_GL_EXT_FUNCTION' + ret (GSTGLAPI *name) args; + ^~~~ + /usr/include/gstreamer-1.0/gst/gl/glprototypes/sync.h:33:23: error: 'GLsync' has not been declared + (GLsync sync)) + ^~~~~~ + ... + https://bugzilla.gnome.org/show_bug.cgi?id=796879 + +2018-08-01 03:18:58 +0530 Nirbheek Chauhan + + * sys/oss4/meson.build: + meson: Fix oss4 header checks + Otherwise, oss4 ends up getting built when force-disabled. + +2018-08-01 01:10:49 +0530 Nirbheek Chauhan + + * sys/v4l2/meson.build: + meson: Fix missing variable in v4l2 build + +2018-07-31 12:47:47 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtdemux: Don't assert in prefill mode if a track has no samples at all + Just write it with a duration of 0, no samples, etc. + +2018-07-31 12:33:54 +0300 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Don't assert if a file does not have any active streams + ** (gst-play-1.0:9113): CRITICAL **: 12:31:54.360: qtdemux_is_streams_update: assertion 'qtdemux->active_streams != NULL' failed + +2018-07-30 13:33:28 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Reserve 256 bytes for CDP packets in pre-fill mode + 92 is sometimes too small and compared to the wasted space for other + codecs 256 bytes is small (and should be the maximum CDP packet size) + +2018-07-25 07:35:28 +0530 Nirbheek Chauhan + + * ext/aalib/meson.build: + * ext/cairo/meson.build: + * ext/dv/meson.build: + * ext/flac/meson.build: + * ext/gdk_pixbuf/meson.build: + * ext/gtk/meson.build: + * ext/jack/meson.build: + * ext/jpeg/meson.build: + * ext/lame/meson.build: + * ext/libcaca/meson.build: + * ext/libpng/meson.build: + * ext/mpg123/meson.build: + * ext/pulse/meson.build: + * ext/qt/meson.build: + * ext/raw1394/meson.build: + * ext/shout2/meson.build: + * ext/soup/meson.build: + * ext/speex/meson.build: + * ext/taglib/meson.build: + * ext/twolame/meson.build: + * ext/vpx/meson.build: + * ext/wavpack/meson.build: + * gst/matroska/meson.build: + * gst/meson.build: + * meson.build: + * meson_options.txt: + * sys/directsound/meson.build: + * sys/meson.build: + * sys/oss/meson.build: + * sys/oss4/meson.build: + * sys/v4l2/meson.build: + * sys/ximage/meson.build: + * tests/examples/qt/qmlsink/meson.build: + * tests/examples/qt/qmlsrc/meson.build: + * tests/icles/meson.build: + * tests/meson.build: + meson: Add feature options for all plugins + Checks for GL, Qt5, and C++ are still automagic. FIXMEs have been + added for these so they can be fixed later. + https://bugzilla.gnome.org/show_bug.cgi?id=795107 + +2018-07-25 17:15:53 +0300 Vivia Nikolaidou + + * gst/deinterlace/gstdeinterlace.c: + * gst/deinterlace/gstdeinterlacemethod.h: + deinterlace: Closed caption pass-through + Pass through closed caption data when deinterlacing. When two + deinterlaced frames are created for the same interlaced frame (e.g. + fields=all), the second of the two frames will have no closed caption + data. + Also fixed memory leaks related to timecode meta pass-through. + https://bugzilla.gnome.org/show_bug.cgi?id=796876 + +2018-07-25 18:37:48 -0400 Olivier Crête + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmuxmap.c: + qtmux: Implement muxing of AV1 into MP4 files + According to + https://aomediacodec.github.io/av1-isobmff/ + +2018-07-25 17:09:06 -0400 Olivier Crête + + * gst/matroska/matroska-mux.c: + matroskamux: Put codec_data as CodecPrivate for AV1 + +2018-07-25 17:08:53 -0400 Olivier Crête + + * gst/matroska/matroska-mux.c: + matroskamux: Accept muxing AV1 + +2018-07-25 16:51:38 -0400 Olivier Crête + + * gst/isomp4/fourcc.h: + * gst/isomp4/qtdemux_types.c: + qtdemux: Recognize more AV1 atoms + +2018-07-25 16:39:18 -0400 Olivier Crête + + * gst/matroska/matroska-demux.c: + matroskademux: Extract codec_data for AV1 + According to + https://github.com/Matroska-Org/matroska-specification/blob/av1-mappin/codec/av1.md + +2018-07-25 14:31:39 -0400 Olivier Crête + + * gst/isomp4/fourcc.h: + * gst/isomp4/qtdemux.c: + qtdemux: Extract AV1 codec_data and put it in the caps + Also extract the presentation-delay and put it in the caps. + +2018-07-25 10:43:11 -0400 Olivier Crête + + * gst/isomp4/fourcc.h: + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux_dump.c: + * gst/isomp4/qtdemux_types.c: + qtdemux: Add initial support for AV1 demuxing + Following the spec at + https://aomediacodec.github.io/av1-isobmff/ + +2018-07-27 00:41:57 +1000 Jan Schmidt + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: Add a small configurable teardown delay + This causes rtspsrc to send a teardown and wait on + PAUSED->READY transition, with a configurable delay. + Otherwise, typically teardown never gets sent in + playbin / uridecodebin where the transition back to NULL + happens too quickly. + The timeout is set to 100ms default. + https://bugzilla.gnome.org/show_bug.cgi?id=751994 + +2018-07-26 16:43:28 +0300 Sebastian Dröge + + * gst/rtp/gstrtpgstdepay.c: + * gst/rtp/gstrtpgstpay.c: + * gst/rtp/gstrtpgstpay.h: + rtpgstpay: Add support for force-keyunit events + This triggers immediate re-sending of the configuration data in-band. + https://bugzilla.gnome.org/show_bug.cgi?id=796877 + +2018-07-13 19:45:19 +0300 Sebastian Dröge + + * gst/rtp/gstrtpgstpay.c: + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph265pay.c: + * gst/rtp/gstrtpmp4vpay.c: + * gst/rtp/gstrtptheorapay.c: + * gst/rtp/gstrtpvorbispay.c: + rtp: Use running_time instead of PTS for config-interval calculations + PTS can start again from a different offset while the running time is + increasing. The only thing that matters here is the running time. + https://bugzilla.gnome.org/show_bug.cgi?id=796807 + +2018-07-19 22:48:34 -0400 Nicolas Dufresne + + * tests/examples/gtk/meson.build: + * tests/examples/meson.build: + example: Build GTK and GTK GL example code + +2018-07-19 17:31:03 +0200 Michael Olbrich + + * gst/rtp/gstrtpL8pay.c: + rtpL8pay: don't try to modify a read-only structure + Just remove the code. It's not doing anything useful anyways. The modified + caps are the result of a caps query, so either not used afterwards of a + reference to some internal caps of another element that should not be + modified. + https://bugzilla.gnome.org/show_bug.cgi?id=796837 + +2018-07-17 08:23:54 +0200 Iñigo Huguet + + * ext/qt/gstqtgl.h: + qmlgl: Fix conflicting declaration of type GLsync for non-android + https://bugzilla.gnome.org/show_bug.cgi?id=796821 + +2018-07-16 19:03:39 +0300 Vivia Nikolaidou + + * gst/deinterlace/gstdeinterlace.c: + * gst/deinterlace/gstdeinterlace.h: + * gst/deinterlace/gstdeinterlacemethod.h: + deinterlace: Timecode pass-through + When it is trivial to pass-through a timecode, by only removing the + "interlaced" flag, do pass-through. Otherwise, double the fps_n and + adjust the "frames" field. + https://bugzilla.gnome.org/show_bug.cgi?id=796818 + +2018-07-17 00:03:19 +1000 Jan Schmidt + + * gst/multifile/gstsplitmuxsink.c: + splitmux: Improve handling of repeated timestamps + When handling input with timestamps that repeat, sometimes + splitmuxsink would get confused and ignore a keyframe. + The logic in question is a holdover from before the cmd queue + moved the file cutting to the multiqueue output side and made + it deterministic, so it's no longer needed on the input + here. + https://bugzilla.gnome.org/show_bug.cgi?id=796773 + +2018-07-17 01:33:55 +1000 Jan Schmidt + + * gst/multifile/gstsplitmuxsrc.c: + Revert "splitmuxsrc: Make sure events are writable" + This reverts commit 3ac5430311b20f30814cdabf5724fb687748bb5b. + There's no need to make a freshly created event writable, + and the other half of this patch was already fixed + and pushed in f2f15a1 + +2018-07-16 23:43:29 +1000 Jan Schmidt + + * gst/multifile/gstsplitmuxsrc.c: + splitmuxsrc: Make sure events are writable + Before setting the seqnum on events sent downstream, + make sure they are writable. + +2018-07-13 16:51:24 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Validate that capture buffers were queued + When the pool is started, we allocate and release buffer, expecting + the pool release-buffer handler to queue them. Though, as we rely + on release function, there is no direct way to detect that this + process didn't work. + To check this, validate that the number of queued buffer is the same + as the number of allocated buffers. This allow returning an error + when buffer importation was refused by the driver. + https://bugzilla.gnome.org/show_bug.cgi?id=583890 + +2018-07-13 16:02:02 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Only return eos for M2M devices + This will avoid sending EOS on v4l2src when a driver sends an empty + buffers. This case would be a bug in the driver, but yet the camera + should keep running. + This also removes the check for corrupted buffers, as this check is + already done later. + https://bugzilla.gnome.org/show_bug.cgi?id=794842 + +2018-07-13 15:58:36 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2.c: + * sys/v4l2/v4l2-utils.h: + * sys/v4l2/v4l2_calls.c: + v4l2: Add a macro to check for M2M + https://bugzilla.gnome.org/show_bug.cgi?id=794842 + +2018-07-13 14:41:13 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2allocator.c: + v4l2allocator: Fix userptr importation + The length passed to the driver was always 0 instead of the size of + the memory. This would fail validation in videobuf2. + +2018-07-12 15:11:39 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Remove duplicate check + We were calling gst_v4l2_is_buffer_valid() before and inside + gst_v4l2_buffer_pool_qbuf() as we needed to access the group. The second + check failed since the writability of the buffer get inherited from the + GstMemory, which lead to pipeline failure. As we cannot avoid the extra + ref, it would be racy otherwise, just pass the group to _dbuf() so it + does not have to call gst_v4l2_is_buffer_valid() again. + https://bugzilla.gnome.org/show_bug.cgi?id=796692 + +2017-08-25 11:58:12 +0200 Havard Graff + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + * tests/check/elements/rtpsession.c: + rtpsession: Don't start the RTCP thread until it's needed + Always wait with starting the RTCP thread until either a RTP or RTCP + packet is sent or received. Special handling is needed to make sure the + RTCP thread is started when requesting an early RTCP packet. + We want to wait with starting the RTCP thread until it's needed in order + to not send RTCP packets for an inactive source. + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2018-07-11 12:21:44 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2src.c: + v4l2src: Try to avoid TRY_FMT when camera is streaming + Some camera firmware crash is TRY_FMT is called during streaming. As a + side effect. This try and detect that the same format as currently + running is about to be tried, and skip renegotiation. + https://bugzilla.gnome.org/show_bug.cgi?id=796789 + +2018-07-09 13:59:02 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2videodec.c: + v4l2videodec: Protect double calls to set_format() + In some cases, set_format() may get called twice before the output + format is set. Running an allocation query in this case is both not + needed and will cause assertion due tot he NULL caps. + +2018-07-08 20:08:18 -0400 Thibault Saunier + + * gst/audiofx/gstscaletempo.c: + scaletempo: Mark as Audio in classification + +2018-07-06 15:21:33 +0200 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Store and propagate SEGMENT sequence numbers + * When receiving a segment in TIME, use that seqnum + * Only reset the stored sequence number when doing HARD reset + (and not when we get a FLUSH event from upstream) + +2018-07-01 15:27:32 -0400 Michael Tretter + + * sys/v4l2/gstv4l2transform.c: + v4l2transform: Implement stable element name + The first converter to be found will now gain the name v4l2convert. + Other converters will be named after the m2m dev node end point they are + attached to. + https://bugzilla.gnome.org/show_bug.cgi?id=784958 + +2018-06-13 17:39:57 +0100 Philippe Normand + + * gst/matroska/matroska-demux.c: + matroskademux: Set subtitle tag title from TrackName field + GUI applications can then use the title tag to set menu items or labels + representing the track. + https://bugzilla.gnome.org/show_bug.cgi?id=796567 + +2018-06-28 19:08:35 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2videoenc.c: + v4l2videoenc: Only renegotiate with upstream + When the decoder get linked further, it will receive a renegotiation + event from downstream. This case is not supported and should be ignored. + This fixes issues when this encoder is used inside an GstRtspServer + pipeline. + https://bugzilla.gnome.org/show_bug.cgi?id=796525 + +2018-06-09 23:58:01 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: rework segment event pushing, again + This patch aims at fixing the recent regressions in the adaptive test + suite. + All segment pushing in push mode is now done with + gst_qtdemux_check_send_pending_segment(), which is idempotent and + handles both edit lists cases and cases where the upstream TIME segments + have to be sent directly. + Fragmented files that start with a non-zero tfdt are also taken into + account, but their handling has been vastly simplified: now they are + handled as implicit default seeks so there is no need to extend the + GstSegment formulas as was being done before. + qtdemux->segment.duration is no longer modified when + upstream_format_is_time, respecting in this way the durations provided + by dashdemux and fixing bugs in reverse playback tests where mangled + durations appeared in the emitted segments. + https://bugzilla.gnome.org/show_bug.cgi?id=752603 + +2018-06-17 02:01:59 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: Don't send EOS during upstream reverse playback + Upstream driving elements such as dashdemux often do reverse playback by + feeding qtdemux with the fragments containing the requested playback + range in reverse order. + But the requested playback range stop may be somewhere in the + middle of a fragment. In that case, a naive pts >= segment.stop + condition may declare end of segment prematurely when demuxing this + first fragment. + This used not to happen because there were places in moov parsing where + segment.stop was overwritten to GST_CLOCK_TIME_NONE even if + upstream_format_is_time -- resulting in this case in a segment with rate + < 0 and stop == -1 and hence not triggering the EOS check, but that was + likely an accident. + This patch modifies the EOS check to take this case into account, not + sending EOS when upstream_format_is_time if rate < 0. + This fixes adaptive.dash.playback.seek_end_live.DASHIF_livestream_testpic_2s + https://bugzilla.gnome.org/show_bug.cgi?id=752603 + +2018-02-06 13:51:14 +0100 Peter Seiderer + + * sys/v4l2/gstv4l2transform.c: + v4l2transform: fold property set/get PROP_OUTPUT_IO_MODE case into default + https://bugzilla.gnome.org/show_bug.cgi?id=796714 + +2018-06-22 14:56:31 +0000 Nicolas Dufresne + + * sys/v4l2/gstv4l2videoenc.c: + v4l2videoenc: Don't set colorimetry on capture + The colorimetry will be set along with the raw format and those fields + will then be copied from sink to src caps by the gst encoder. + https://bugzilla.gnome.org/show_bug.cgi?id=791471 + +2018-06-27 16:57:29 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Really always set colorimetry + This fixes patch dd1c5aed656e07e3dad01f83410f3af16cfb14cf which + pretended to always set colorimetry but the patch was incomplete. + This is again best effort considering the spec says that for CAPTURE + you may only read this value. + +2018-06-26 15:04:39 +0200 Michael Tretter + + * sys/v4l2/gstv4l2videodec.c: + v4l2videodec: do not call streamon while pool is flushing + gst_v4l2_buffer_pool_flush() executes streamoff for the output, but + streamoff->streamon for the capture of the decoder. + gst_v4l2_buffer_pool_streamon() on capture assumes that is able to + resurrect the buffers from the pool, but acquiring buffers fails if the + buffer pool is still flushing. + The decoder needs to stop flushing the pools before calling + gst_v4l2_buffer_pool_flush() to restart the v4l2 device. Otherwise + starting the decoding thread might fail, because there are no buffers in + the capture pool. + This fixes a regression that was introduced in 97985a335c78 + ("v4l2videodec: Add dynamic resolution change support"). + https://bugzilla.gnome.org/show_bug.cgi?id=796681 + +2018-06-25 16:03:17 +0200 Philipp Zabel + + * sys/v4l2/gstv4l2object.c: + v4l2object: use S_SELECTION instead of S_CROP in gst_v4l2_object_set_crop + The S_CROP call doesn't work on mem2mem output queues. Use the + S_SELECTION call to set the crop rectangle and only fall back to + S_CROP for ancient kernels. + This will allow v4l2videoenc to set the coded size on the output + queue via S_FMT and then set the visible size via the crop rectangle, + as required by the V4L2 codec API. + https://bugzilla.gnome.org/show_bug.cgi?id=796672 + +2018-06-27 13:46:00 +0000 Marian Mihailescu + + * sys/v4l2/gstv4l2videoenc.c: + v4l2videoenc: activate capture pool after output pool + Some drivers need output buffers set before capture buffers. + CODA cannot set output format if capture is streaming. + Exynos MFC fails on output STREAMON if capture is already streaming. + This patch delays capture activation until output is configured and + streaming + https://bugzilla.gnome.org/show_bug.cgi?id=796693 + +2018-06-23 23:44:19 +0200 Tim-Philipp Müller + + * ext/gtk/gtkgstglwidget.c: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpsession.c: + Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-20 10:03:59 +0200 Edward Hervey + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Protect input stream with lock + This was the last remaining place where modifying/unreffing the + input stream was not protected by the lock + https://bugzilla.gnome.org/show_bug.cgi?id=796639 + +2018-06-18 12:13:48 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsrc.c: + splitmuxsrc: Make sure events are writable before setting their seqnum + +2018-05-28 15:19:52 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Drop truncated frames + Drop truncated frames regardless if they have the ERROR flag or not. + Truncated frame causes video frame map failure in many elements + including cluttersink, glupload etc. + +2018-04-02 12:59:33 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Try return input buffer soon + In this patch we use a non-blocking poll in order to return all input + buffers (buffers from v4l2-output queue). This prevent holding too long + on upstreaming buffer in importing. + https://bugzilla.gnome.org/show_bug.cgi?id=794904 + +2018-06-07 13:56:03 +1000 Matthew Waters + + * ext/qt/meson.build: + * tests/examples/qt/qmlsink/meson.build: + * tests/examples/qt/qmlsrc/meson.build: + qt: also check for un-suffixed moc + e.g. Qt windows installer doesn't have suffixes + +2018-06-06 11:44:33 -0400 Thibault Saunier + + * gst/isomp4/qtdemux.c: + qtdemux: Do not set INVALID seqnum on events + +2018-06-01 22:47:10 +0900 Seungha Yang + + * tests/check/elements/qtdemux.c: + tests: qtdemux: Add checking exposed segment event + https://bugzilla.gnome.org/show_bug.cgi?id=796480 + +2018-06-01 21:08:10 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Forward upstream time-format segment without mapping + Sample table based segment event (genereted by qtdemux) could break + presentation timeline. For example, qtdemux should not modify upstream + time format segment (e.g., adaptivedemux use case) + https://bugzilla.gnome.org/show_bug.cgi?id=796480 + +2018-04-19 08:14:47 +0200 Edward Hervey + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: Seek handling is always done with a valid event + Remove the checks + +2018-06-06 07:46:54 +0200 Edward Hervey + + * gst/wavparse/gstwavparse.c: + wavparse: Don't set invalid seqnum on events + Some codepath will call gst_wavparse_perform_seek without an event + and therefore without a valid seqnum + +2018-05-25 12:28:04 +0200 Thibault Saunier + + * gst/isomp4/qtdemux.c: + qtdemux: Clarify field name about stream-encryption-system + This field is actually only informatory and the user can potentially + choose something else. EME tests in WebKit testsuite actually doesn't + take it into and force another encryption system to be used, and expects + to be given the occasion to do so. + This basically also reverts 3e063703b3a51b8aaa7f75f36c4660c583a60e93. + +2018-05-28 11:01:42 -0700 Thiago Santos + + * gst/isomp4/qtdemux.c: + qtdemux: mark segment as sent after pushing when moov is received + Otherwise we would try to send it a second time if the same moov is + received or in any other situation that might trigger segment sending. + https://bugzilla.gnome.org/show_bug.cgi?id=752603 + +2018-05-28 10:59:14 -0700 Thiago Santos + + * tests/check/elements/qtdemux.c: + tests: qtdemux: Avoid using data beyond array and improve error msg + Makes it easier to debug the failures as well as prevents problems + reading out of bounds data. + +2018-05-16 20:16:44 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't open the device in get property + This is both racy and inefficient. This function is still missing some + locking which will be address in later patch. + https://bugzilla.gnome.org/show_bug.cgi?id=796185 + +2018-05-27 20:29:47 +0100 Tim-Philipp Müller + + * tests/check/elements/rtpstorage.c: + * tests/check/elements/rtpulpfec.c: + tests: rtpstorage: fix potential crashes / test failures on 32-bit + Pass 64 bits to g_object_set() for 64-bit integer properties like + rtpstorage's "size-time" property. + https://bugzilla.gnome.org/show_bug.cgi?id=796429 + +2018-05-13 21:59:49 -0700 Thiago Santos + + * gst/isomp4/qtdemux.c: + qtdemux: do not update segment.stop is it is not a valid time + Otherwise it overflows and starts having a meaningful and wrong value. + https://bugzilla.gnome.org/show_bug.cgi?id=752603 + +2016-04-26 16:54:30 -0300 Thiago Santos + + * gst/isomp4/qtdemux.c: + qtdemux: offset edts segments by the min timestamp of the stream + Otherwise if the stream is starting at timestamp=X it would wait + 'X' to start playing. + https://bugzilla.gnome.org/show_bug.cgi?id=752603 + +2016-04-26 14:34:16 -0300 Thiago Santos + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: rework segment event pushing + Instead of always keeping a safe segment (start=0) event from the beginning, + delay the creation of this event to when we really know the timestamp of the + first sample. This is important to properly start fragmented streams that + we might join in the middle or to play isolated fragment files that might + have an advanced tfdt. + https://bugzilla.gnome.org/show_bug.cgi?id=752603 + +2018-05-25 10:49:21 +0200 Thibault Saunier + + * gst/isomp4/qtdemux.c: + qtdemux: Do not unref a NULL stream_tags + stream->stream_tags is reset to NULL once we expose the stream and + these have been consumed, we need to check that when cleaning up + the stream. + +2018-05-25 10:17:29 +0200 Thibault Saunier + + * gst/isomp4/qtdemux.c: + qtdemux: Do not run the preferred decryptor context query if no decryptor avalaible + Ultimately this avoids a segfault as the code expect a non NULL array + here. + +2018-03-30 17:03:13 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: Allow edit lists on fragmented files on push mode + Fragmented files often use elst.duration=0 which before + ee78825eaef2c5fffac7d6c5526fe18cec6b3eef was wrongly interpreted as + having no frames. + Since that issue has now been fixed, there is no reason to disable edit + lists in fragmented files. This commit enables them, therefore producing + correct stream time for files containing edit lists. + https://bugzilla.gnome.org/show_bug.cgi?id=793058 + +2018-05-24 12:58:00 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: fix computation of first_duration for fragmented files in push mode + Since ca068865c391e87932b1268d0c675be233dd2ffe the duration of the first + frame is not used for estimating the frame rate. + For this purpose, stream->first_duration was initialized with the + duration of the first frame. In fragmented files, this was previously + done by peeking the first moof, but that can only be done in pull mode. + Fortunately, we don't really need to do that, at least with the current + design: When we are estimating the frame rate we already have the + sample table, regardless of the scheduling mode and whether the file is + fragmented or not, so we can obtain first_duration there much more + reliably. + This fixes frame rate estimation for fragmented files in push mode. + https://bugzilla.gnome.org/show_bug.cgi?id=796384 + +2017-06-13 17:42:55 +0300 Vivia Nikolaidou + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + * tests/check/elements/splitmux.c: + splitmuxsink: Added new async-finalize mode + This mode is useful for muxers that can take a long time to finalize a + file. Instead of blocking the whole upstream pipeline while the muxer is + doing its stuff, we can unlink it and spawn a new muxer+sink combination + to continue running normally. + This requires us to receive the muxer and sink (if needed) as factories, + optionally accompanied by their respective properties structures. Also + added the muxer-added and sink-added signals, in case custom code has to + be called for them. + https://bugzilla.gnome.org/show_bug.cgi?id=783754 + +2018-05-23 19:00:48 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: Don't send gaps bigger than 1 second (now in push mode too) + This applies the same workaround to gaps that is being used in pull + mode. + https://bugzilla.gnome.org/show_bug.cgi?id=778426 + +2018-05-23 20:08:56 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Properly handle edit list in push mode + If there are empty segments in edit list, demux should + adjust "accumulated_base" to apply it into running time. + https://bugzilla.gnome.org/show_bug.cgi?id=778426 + +2018-05-22 22:14:03 +0200 Mathieu Duponchelle + + * gst/matroska/matroska-mux.c: + matroska-mux: write colorimetry + This is a straightforward translation of 5dd39d8, can be trivially + checked by running: + gst-launch-1.0 -v videotestsrc ! video/x-raw, colorimetry=2:4:7:1 ! \ + matroskamux ! matroskademux ! fakesink + and verifying that the colorimetry is correctly preserved. + https://bugzilla.gnome.org/show_bug.cgi?id=796344 + +2018-03-31 17:19:03 +0200 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux: fix buggy duration in edits with duration=0 in fragmented files without a mehd + https://bugzilla.gnome.org/show_bug.cgi?id=794858 + +2018-05-23 13:14:27 +0100 Tim-Philipp Müller + + * gst/rtp/gstrtph264depay.c: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/rtpsession.h: + * gst/rtsp/gstrtspsrc.c: + * gst/udp/gstmultiudpsink.c: + docs: fix typos + +2018-03-31 18:42:47 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Clarify variable name + As defined by spec, use "empty edit". It's more straightforward. + https://bugzilla.gnome.org/show_bug.cgi?id=778426 + +2017-06-21 17:59:21 +0200 Xabier Rodriguez Calvar + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: add context for a preferred protection + qtdemux selected the first system corresponding to a working GStreamer + decryptor. With this change, before selecting that decryptor, qtdemux + will check if it has context (a preferred decryptor id) and if not, it + will request it. + The request includes track-id, available key system ids for the + available decryptors and even the events so that the init data is + accessible. + [eocanha@igalia.com: select the preferred protection system even if not available] + Test "4. ClearKeyVideo" in YouTube leanback EME conformance tests 2016 for + H.264[1] uses a media file[2] with cenc encryption which embeds 'pssh' boxes + with the init data for the Playready and Widevine encryption systems, but not + for the ClearKey encryption system (as defined by the EMEv0.1b spec[3] and with + the encryption system id defined in [4]). + Instead, the ClearKey encryption system is manually selected by the web page + code (even if not originally detected by qtdemux) and the proper decryption key + is dispatched to the decryptor, which can then decrypt the video successfully. + [1] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/2016.html?test_type=encryptedmedia-test&webm=false + [2] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/media/car_cenc-20120827-86.mp4 + [3] https://dvcs.w3.org/hg/html-media/raw-file/eme-v0.1b/encrypted-media/encrypted-media.html#simple-decryption-clear-key + [4] https://www.w3.org/Bugs/Public/show_bug.cgi?id=24027#c2 + https://bugzilla.gnome.org/show_bug.cgi?id=770107 + +2017-05-20 16:55:40 +0000 Enrique Ocaña González + + * gst/isomp4/qtdemux.c: + qtdemux: also push buffers without encryption info instead of dropping them + Test "17. PlayReadyH264Video" in YouTube leanback EME conformance tests 2016 + for H.264[1] uses a media file[2] with cenc encryption whose first two 'moof' + boxes have no encryption information (no 'saiz' and 'saio' boxes). + Those boxes are actually not encrypted and the current qtdemux implementation + was just dropping them, breaking the test use case. + This patch detects those kind of situations and just lets the unencrypted + buffers pass. Of course, this needs some collaboration by the decryptors, + which should also do the same and not to try to decrypt those clear buffers. + [1] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/2016.html?test_type=encryptedmedia-test&webm=false + [2] http://yt-dash-mse-test.commondatastorage.googleapis.com/unit-tests/media/oops_cenc-20121114-142.mp4 + https://bugzilla.gnome.org/show_bug.cgi?id=770107 + +2018-05-21 11:49:08 +0100 Tim-Philipp Müller + + * meson.build: + meson: use cdata.set_quoted() in more places + +2018-05-21 11:46:59 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add 'nls' option to disable translations + And enable by default. Was implicitly disabled because + ENABLE_NLS was not defined. + +2016-02-09 14:00:00 -0800 Andre McCurdy + + * ext/taglib/gstid3v2mux.cc: + id3v2mux: ensure valid sentinal for gst_structure_get() + gst_structure_get() is declared with G_GNUC_NULL_TERMINATED, ie + __attribute__((__sentinel__)), which means gcc will generate a + warning if the last parameter passed to the function is not NULL + (where a valid NULL in this context is defined as zero with any + pointer type). + The C code callers to gst_structure_get() within gst-plugins-good + use the C NULL definition (ie ((void*)0)), which is a valid sentinel. + However gstid3v2mux.cc uses the C++ NULL definition (ie 0L), which + is not a valid sentinel without an explicit cast to a pointer type. + Upstream-Status: Pending + Signed-off-by: Andre McCurdy + +2016-02-03 18:12:38 -0800 Andre McCurdy + + * ext/raw1394/gstdv1394src.c: + * ext/raw1394/gsthdv1394src.c: + raw1394: avoid including directly + Note from Edward Hervey: Patch from git.yoctoproject.org + musl libc generates warnings if is included directly. + Upstream-Status: Pending + Signed-off-by: Andre McCurdy + +2018-02-23 13:38:32 +0100 Alicia Boya García + + * gst/isomp4/qtdemux.c: + qtdemux_parse_segments: remove superfluous variable + https://bugzilla.gnome.org/show_bug.cgi?id=793751 + +2018-04-23 13:29:30 -0400 Olivier Crête + + * gst/flv/gstflvmux.c: + flvmux: Remove custom get_next_time implementation + GstAggregator now does the same thing in the simple implementation. + https://bugzilla.gnome.org/show_bug.cgi?id=795486 + +2018-05-15 11:50:30 +0100 Havard Graff + + * tests/check/elements/rtpsession.c: + rtpsession: Add tests for PLI and FIR + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2018-04-30 08:41:19 +0200 Havard Graff + + * gst/rtpmanager/gstrtpsession.c: + rtpsession: make "clear-pt-map" action signal actually work + Needed for PLI + FIR unit tests in follow-up commit. + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2016-10-06 16:08:38 +0200 Mikhail Fludkov + + * gst/rtpmanager/rtpsession.c: + rtpsession: Avoid unnecessary copy of stats structure + The code before copied GstStructure twice. The first time inside + gst_value_set_structure and the second time in g_value_array_append. + Optimized version does no copies, just transfers ownership to + GValueArray. It takes advantage of the fact that array has already + enough elements preallocated and the memory is zero initialized. + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2018-05-15 10:35:09 +0100 Tim-Philipp Müller + + * gst/replaygain/gstrgvolume.c: + Revert "BugFix : Change peak value to normalize audio file with fallback gain" + This reverts commit 36e49fd6f872f0b3f33083107a55fb7f671a47d0. + Breaks unit test, someone needs to investigate if it's the + patch's fault or if the test needs adjusting/updating. + https://bugzilla.gnome.org/show_bug.cgi?id=673970 + +2016-12-13 10:13:52 +0100 Stian Selnes + + * gst/rtpmanager/rtpsession.c: + * tests/check/elements/rtpsession.c: + rtpsession: Drop packet if trying to send from non-internal source + If obtain_internal_source() returns a source that is not internal it + means there exists a non-internal source with the same ssrc. Such an + ssrc collision should be handled by sending a GstRTPCollision event + upstream and choose a new ssrc, but for now we simply drop the packet. + Trying to process the packet further will cause it to be pushed + usptream (!) since the source is not internal (see source_push_rtp()). + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2018-05-14 00:29:24 +0100 Tim-Philipp Müller + + * gst/matroska/matroska-demux.c: + matroskademux: tag disabled streams with FLAG_UNSELECT + So they're never picked as default, only by explicit + user action. + https://bugzilla.gnome.org/show_bug.cgi?id=690911 + +2018-05-14 21:06:55 +0300 Sebastian Dröge + + * gst/isomp4/gstqtmux.c: + qtmux: Print expected/actual values in debug log on mismatch in prefill mode + This helps debugging a lot. + +2018-04-10 18:05:47 +0200 Havard Graff + + * gst/rtpmanager/rtpsession.c: + * tests/check/Makefile.am: + * tests/check/elements/rtpsession.c: + rtpsession: Try media_ssrc if no src can be found for PLI sender_ssrc + Some RTP stacks out there does not set the sender_ssrc. In order to be + more robust, try to lookup the media_ssrc before dropping the PLI. + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2017-08-25 11:59:00 +0200 Mikhail Fludkov + + * gst/rtpmanager/rtpsession.c: + * tests/check/elements/rtpsession.c: + rtpsession: Fix on-feedback-rtcp race + If there is an external source which is about to timeout and be removed + from the source hashtable and we receive feedback RTCP packet with the + media ssrc of the source, we unlock the session in + rtp_session_process_feedback before emitting 'on-feedback-rtcp' signal + allowing rtcp timer to kick in and grab the lock. It will get rid of + the source and rtp_session_process_feedback will be left with RTPSource + with ref count 0. + The fix is to grab the ref to the RTPSource object in + rtp_session_process_feedback. + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2017-11-27 10:56:47 +0100 Stian Selnes + + * gst/rtpmanager/rtpsession.c: + rtpsession: Add missing lock around sess->ssrcs iteration + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2017-08-25 11:22:47 +0200 John-Mark Bell + + * gst/rtpmanager/rtpsession.c: + * tests/check/elements/rtpsession.c: + rtpsession: do not emit RBs for internal senders. + These are the sources we send from, so there is no reason to + report receive statistics for them (as we do not receive on them, + and the remote side has no knowledge of them). + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2018-04-10 18:22:57 +0200 Havard Graff + + * tests/check/elements/rtpsession.c: + tests: rtpsession: fix indentation + https://bugzilla.gnome.org/show_bug.cgi?id=795139 + +2018-05-12 08:03:28 +0200 Edward Hervey + + * sys/v4l2/gstv4l2videodec.c: + v4l2: Fix typo in debug messages + It's a decoder, not an encoder :) + https://bugzilla.gnome.org/show_bug.cgi?id=795941 + +2018-03-22 18:00:37 +0100 Vivia Nikolaidou + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Added caption_%u pad template + For closed-caption-enabled muxers (e.g. qtmux) + +2018-05-10 13:57:30 +0200 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Initialize riff library + Avoids debugging message issues. Also just use the main riff header + +2018-05-08 20:31:41 +0900 Seungha Yang + + * tests/check/elements/qtdemux.c: + * tests/check/elements/qtdemux.h: + tests: qtdemux: Add test for stream change + Add test case to verify track-id change and stream change + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 20:30:18 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: Protect _expose_streams() from flush event + Flush during stream change can break autoplugging or the + flush event could be dropped. + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 20:26:41 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: Try to expose whenever got new moov or new stream-start + Whenever got new moov or new stream-start, + demux will try to expose new pad by following rule. + Comparing stream-id in the current moov with previous one, then + * If matched stream-id is found from previous one, + reuse existing pad (most common case) + * Otherwise, expose new pad with new stream-start + * No more used stream will be freed + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 20:10:39 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Remove duplication of initializing member variables + Most initialization of variables in gst_qtdemux_init() are duplicated in + gst_qtdemux_reset() function. + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 20:09:10 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Create stream whenever got new moov + Whenever demux got moov, demux will create new stream. Only exception is + duplicated track-id in a moov box. In that case the first stream + will be accepted. This patch is pre-work for rework of moov handling. + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 19:57:11 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Store stream-id to manage streams + In order to figure out stream change such as + track-id change or stream-id change, demux will store + stream-id per QtDemuxStream structure. + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 19:39:02 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: Use GList to manage QtDemuxStream + * Move to GList from static array + * Logging track-id instead of array index. It's more meaningful. + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 18:44:15 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Adjust the number of args of some functions + To be used with g_list_free_full in the next patch + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-05-08 18:22:58 +0900 Seungha Yang + + * gst/isomp4/qtdemux.c: + qtdemux: Add parentheses in macro + https://bugzilla.gnome.org/show_bug.cgi?id=684790 + +2018-03-19 23:36:13 +0100 Marinus Schraal + + * gst/isomp4/qtdemux.c: + isomp4: Use full date time if available + The ©day tag contains a full date time, use it for the DATE_TIME tag + instead of just the DATE tag. This overrules the unreliable qt creation + time. + https://bugzilla.gnome.org/show_bug.cgi?id=731029 + +2018-03-15 22:59:39 +1100 Jan Schmidt + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: Fix doc comment markers + +2016-02-02 18:58:24 +0200 Kyrylo Polezhaiev + + * gst/icydemux/gsticydemux.c: + icydemux: avoid timestamp field initialisation for tag event + This field is not used and will be removed in 2.0 API. + https://bugzilla.gnome.org/show_bug.cgi?id=761462 + +2014-10-05 15:51:18 +0200 Matej Knopp + + * gst/audioparsers/gstdcaparse.c: + dcaparse: do not accept header with invalid channel count + https://bugzilla.gnome.org/show_bug.cgi?id=737928 + +2018-05-05 19:27:24 +0530 Nirbheek Chauhan + + * meson.build: + * meson_options.txt: + * sys/v4l2/meson.build: + meson: Update option names to omit disable_ and with- prefixes + Also yield common options to the outer project (gst-build in our case) + so that they don't have to be set manually. + +2012-04-12 09:53:24 +0200 Anthony Violo + + * gst/replaygain/gstrgvolume.c: + BugFix : Change peak value to normalize audio file with fallback gain + https://bugzilla.gnome.org/show_bug.cgi?id=673970 + +2018-05-05 16:32:59 +0200 Tim-Philipp Müller + + * gst/rtp/gstrtpvrawpay.c: + rtpvrawpay: don't use buffer lists if everything fits into one buffer + People might use very large mtu sizes where every payload + fits into a single output packet. + https://bugzilla.gnome.org/show_bug.cgi?id=795758 + +2018-04-04 15:50:55 +0200 Kirill Marinushkin + + * configure.ac: + configure: Fix hard-coded enabled v4l2 probe on Linux/ARM + Currently, enable_v4l2_probe is hard-coded to "yes" on linux, platforms + arm and aarch64. This even overrides the --disable-v4l2-probe argument. + As a result, it is impossible to disable v4l2_probe. It becomes a problem + for use-cases, when startup time is critical, because the v4l2_probe + feature increases the initialization time. + This commit makes the v4l2_probe feature configurable. + On linux, platforms arm and aarch64, the default value is still "yes". + But now it can be disabled by the --disable-v4l2-probe argument. + https://bugzilla.gnome.org/show_bug.cgi?id=795200 + +2018-04-23 11:26:12 -0400 Olivier Crête + + * gst/flv/gstflvmux.c: + flvmux: Don't wake up the muxer unless there is data + https://bugzilla.gnome.org/show_bug.cgi?id=795332 + +2018-04-23 11:19:18 -0400 Olivier Crête + + * gst/flv/gstflvmux.c: + flvmux: Save the current position in the output segment + https://bugzilla.gnome.org/show_bug.cgi?id=795332 + +2018-04-19 17:53:51 -0400 Olivier Crête + + * gst/flv/gstflvmux.c: + * tests/check/elements/flvmux.c: + flvmux: Wait for caps from both srcs before writing header + Wait for caps on all pads to start writing data even when source is live. + Includes unit test by Havard Graff that simulates it. + https://bugzilla.gnome.org/show_bug.cgi?id=794722 + +2018-04-13 13:29:06 +0200 Guillaume Desmottes + + * sys/v4l2/gstv4l2transform.c: + * sys/v4l2/gstv4l2videodec.c: + * sys/v4l2/gstv4l2videoenc.c: + * sys/v4l2/v4l2_calls.c: + v4l2: rely on gst_v4l2_dup() to set no_initial_format and keep_aspect + gst_v4l2_dup() will now take care of setting + v4l2capture->no_initial_format and keep_aspect instead of doing it + manually. + Fix a typo as keep_aspect was set twice on v4l2output but never on + v4l2capture. + https://bugzilla.gnome.org/show_bug.cgi?id=795028 + +2018-04-24 14:06:10 -0400 Xavier Claessens + + * ext/cairo/meson.build: + * ext/dv/meson.build: + * ext/flac/meson.build: + * ext/gdk_pixbuf/meson.build: + * ext/gtk/meson.build: + * ext/jack/meson.build: + * ext/jpeg/meson.build: + * ext/lame/meson.build: + * ext/libpng/meson.build: + * ext/mpg123/meson.build: + * ext/pulse/meson.build: + * ext/shout2/meson.build: + * ext/soup/meson.build: + * ext/speex/meson.build: + * ext/taglib/meson.build: + * ext/twolame/meson.build: + * ext/vpx/meson.build: + * ext/wavpack/meson.build: + * gst/alpha/meson.build: + * gst/apetag/meson.build: + * gst/audiofx/meson.build: + * gst/audioparsers/meson.build: + * gst/auparse/meson.build: + * gst/autodetect/meson.build: + * gst/avi/meson.build: + * gst/cutter/meson.build: + * gst/debugutils/meson.build: + * gst/deinterlace/meson.build: + * gst/dtmf/meson.build: + * gst/effectv/meson.build: + * gst/equalizer/meson.build: + * gst/flv/meson.build: + * gst/flx/meson.build: + * gst/goom/meson.build: + * gst/goom2k1/meson.build: + * gst/icydemux/meson.build: + * gst/id3demux/meson.build: + * gst/imagefreeze/meson.build: + * gst/interleave/meson.build: + * gst/isomp4/meson.build: + * gst/law/meson.build: + * gst/level/meson.build: + * gst/matroska/meson.build: + * gst/monoscope/meson.build: + * gst/multifile/meson.build: + * gst/multipart/meson.build: + * gst/replaygain/meson.build: + * gst/rtp/meson.build: + * gst/rtpmanager/meson.build: + * gst/rtsp/meson.build: + * gst/shapewipe/meson.build: + * gst/smpte/meson.build: + * gst/spectrum/meson.build: + * gst/udp/meson.build: + * gst/videobox/meson.build: + * gst/videocrop/meson.build: + * gst/videofilter/meson.build: + * gst/videomixer/meson.build: + * gst/wavenc/meson.build: + * gst/wavparse/meson.build: + * gst/y4m/meson.build: + * meson.build: + * sys/directsound/meson.build: + * sys/v4l2/meson.build: + * sys/ximage/meson.build: + Meson: Generate pc file for all plugins in good + https://bugzilla.gnome.org/show_bug.cgi?id=794568 + +2018-04-25 10:58:41 +0100 Tim-Philipp Müller + + * meson.build: + meson: use -Wl,-Bsymbolic-functions where supported + Just like the autotools build. + +2018-04-25 10:37:40 +0200 Edward Hervey + + * gst/isomp4/gstqtmux.c: + qtmux: Read caption from input buffer + And not from unallocated output buffer GstMapInfo + CID #1435131 + +2018-02-07 11:00:18 +0100 Edward Hervey + + * gst/isomp4/atoms.c: + * gst/isomp4/atoms.h: + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmux.h: + * gst/isomp4/gstqtmuxmap.c: + * gst/isomp4/gstqtmuxmap.h: + isomp4: qtmux: Add Closed Caption support + Supports CEA 608 and CEA 708 CC streams + Also supports usage in "Robust Prefill" mode if the incoming caption + stream is constant (i.e. there is one incoming CC buffer for each + video frame). + https://bugzilla.gnome.org/show_bug.cgi?id=606643 + +2018-02-06 15:38:00 +0100 Edward Hervey + + * gst/isomp4/atoms.c: + * gst/isomp4/atoms.h: + isomp4: Make 'gmhd' atom usage more generic + Only the 'gmin' atom is required. Any other entry within it are + optional. + https://bugzilla.gnome.org/show_bug.cgi?id=606643 + +2018-04-22 10:40:19 -0300 Thibault Saunier + + * ext/jpeg/gstjpegenc.c: + jpegenc: Accept sof-marker=4 + sof-marker is 4 when input is in the RGB colorspace. + https://bugzilla.gnome.org/show_bug.cgi?id=795463 + +2018-04-02 16:06:35 +0200 Mathieu Duponchelle + + * gst/rtp/gstrtpulpfecdec.c: + * gst/rtp/gstrtpulpfecdec.h: + * tests/check/elements/rtpulpfec.c: + ulpfecdec: output perfect seqnums + ULP FEC, as defined in RFC 5109, has the protected and protection + packets sharing the same ssrc, and a different payload type, and + implies rewriting the seqnums of the protected stream when encoding + the protection packets. This has the unfortunate drawback of not + being able to tell whether a lost packet was a protection packet. + rtpbasedepayload relies on gaps in the seqnums to set the DISCONT + flag on buffers it outputs. Before that commit, this created two + problems: + * The protection packets don't make it as far as the depayloader, + which means it will mark buffers as DISCONT every time the previous + packets were protected + * While we could work around the previous issue by looking at + the protection packets ignored and dropped in rtpptdemux, we + would still mark buffers as DISCONT when a FEC packet was lost, + as we cannot know that it was indeed a FEC packet, even though + this should have no impact on the decoding of the stream + With this commit, we consider that when using ULPFEC, gaps in + the seqnums are not a reliable indicator of whether buffers should + be marked as DISCONT or not, and thus rewrite the seqnums on + the decoding side as well to form a perfect sequence, this + obviously doesn't prevent the jitterbuffer from doing its job + as the ulpfec decoder is downstream from it. + https://bugzilla.gnome.org/show_bug.cgi?id=794909 + +2018-04-17 17:57:16 +0300 Sebastian Dröge + + * gst/rtsp/gstrtspsrc.c: + * tests/examples/rtsp/test-onvif.c: + Revert "rtspsrc: Fix up sendonly/recvonly attribute handling" + This reverts commit af273b4de9eb292c0b6af63665e10ca015895902. + While RFC 3264 (SDP) says that sendonly/recvonly are from the point of view of + the requester, the actual RTSP RFCs (RFC 2326 / 7826) disagree and say + the opposite, just like the ONVIF standard. + Let's follow those RFCs as we're doing RTSP here, and add a property at + a later time if needed to switch to the SDP RFC behaviour. + https://bugzilla.gnome.org/show_bug.cgi?id=793964 + +2018-04-16 21:27:47 +0300 Sebastian Dröge + + * gst/audioparsers/gstflacparse.c: + flacparse: Drain the parser when a CAPS event is received + After a CAPS event, in theory a new stream can start and it might start + with the FLAC headers again. We can't detect FLAC headers in the middle + of the stream, so we drain the parser to be able to detect either FLAC + headers after the CAPS event or the continuation of the previous stream. + This fixes for example + gst-launch-1.0 audiotestsrc num-buffers=200 ! flacenc ! c. \ + audiotestsrc num-buffers=200 freq=880 ! flacenc ! c. \ + concat name=c ! rtpgstpay ! udpsink host=127.0.0.1 port=5000 + gst-launch-1.0 udpsrc multicast-group=127.0.0.1 port=5000 \ + caps=application/x-rtp,media=application,clock-rate=90000,encoding-name=X-GST ! \ + rtpgstdepay ! flacparse ! flacdec ! audioconvert ! pulsesin + +2018-04-16 10:52:56 +0100 Tim-Philipp Müller + + * README: + * common: + Automatic update of common submodule + From 3fa2c9e to ed78bee + +2018-04-05 16:05:12 +1000 Matthew Waters + + * ext/meson.build: + * ext/qt/gstqtglutility.cc: + * ext/qt/meson.build: + * tests/examples/meson.build: + * tests/examples/qt/meson.build: + * tests/examples/qt/qmlsink/CMakeLists.txt: + * tests/examples/qt/qmlsink/meson.build: + * tests/examples/qt/qmlsink/play.pro: + * tests/examples/qt/qmlsink/qmlsink.qrc: + * tests/examples/qt/qmlsrc/grabqml.pro: + * tests/examples/qt/qmlsrc/meson.build: + * tests/examples/qt/qmlsrc/qmlsrc.qrc: + meson: add build files for the qml plugin + Tested on linux with X11/wayland and semi-tested on Windows. + Windows crashes on item destruction however this is better than nothing. + Fix up some win32 build issues on the way with mismatched {} and + G_STMT_{START,END} + +2018-04-13 23:02:26 +0200 Mathieu Duponchelle + + * tests/check/elements/flvmux.c: + flvmux test: refactor looped test. + Looping the test 500 times to only execute the test once every + 33 times means we inited and deinited gstreamer 467 times + for no reason at all, which was annoying when running the test + with valgrind. + +2018-04-13 23:01:20 +0200 Mathieu Duponchelle + + * gst/flv/gstflvmux.c: + flvmux: unref return of aggregator_pad_peek_buffer + We ended up leaking every single buffer going through the + muxer, which is far from ideal + +2018-04-13 22:49:43 +0200 Mathieu Duponchelle + + * gst/isomp4/gstqtmux.c: + qtmux: Fix leak + gst_qt_mux_can_renegotiate () gets called everywhere following + that pattern: + return gst_qt_mux_can_renegotiate (ref(self)); + This means the reference must be released both in the success + and failure cases, it was only done in the success case. + +2018-04-13 22:44:14 +0200 Mathieu Duponchelle + + * gst/flv/gstflvmux.c: + flvmux: aggregate should not push EOS itself + Instead it is expected to return GST_FLOW_EOS, and let the + base class handle that. + +2018-04-13 21:19:02 +0200 Mathieu Duponchelle + + * tests/check/gst-plugins-good.supp: + valgrind supps: ignore gnutls leaking a certificate + After investigating, we do dispose of the TLS connections + appropriately in the souphttpsrc test, which in turn + calls gnutls_deinit, but certificates get leaked anyway. + +2018-04-13 20:35:24 +0200 Mathieu Duponchelle + + * tests/check/elements/souphttpsrc.c: + souphttpsrc test: free g_get_current_dir return + +2018-04-13 20:31:07 +0200 Mathieu Duponchelle + + * tests/check/gst-plugins-good.supp: + valgrind supps: bring getaddrinfo suppression from -base + +2018-04-13 20:28:35 +0200 Mathieu Duponchelle + + * tests/check/gst-plugins-good.supp: + valgrind supps: ignore more twolame conditional moves + +2018-04-13 17:37:47 +0200 Mathieu Duponchelle + + * tests/check/elements/rtpulpfec.c: + rtpulpfec tests: Fix leaks + +2018-02-16 23:40:50 +0100 Alicia Boya García + + * gst/matroska/matroska-demux.c: + matroskademux: Add comment about Opus clipping + https://bugzilla.gnome.org/show_bug.cgi?id=793523 + +2018-04-11 20:28:00 +0000 Whoopie + + * sys/v4l2/gstv4l2object.c: + v4l2object: Disable DMABuf for emulated formats + libv4l2 does not prevent exporting DMABuf even when emulated formats are + in use. As a side effect, userspace ends up with buffers of the original + formats which will cause issues. + https://bugzilla.gnome.org/show_bug.cgi?id=795097 + +2018-04-08 20:42:16 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Only use BT2020_12 for BT2020 v4l2 colorspace + BT2020_12 is not represented in V4L2, so drivers providing full colority + for BT2020 will set V4L2_XFER_FUNC_709 transfer function. To fix the + issue, we bump this to BT2020_12 if the resoltion is 4K, but we should + only do that if the colorspace is BT2020 to start with, otherwise it's + not possible to use normal BT709 for 4K 8bit formats. + +2018-04-08 13:43:56 -0400 Nicolas Dufresne + + * sys/v4l2/gstv4l2object.c: + v4l2object: Always set the colorimetry in S_FMT + So far we were only setting colorimetry for OUTPUT devices (v4l2sink or + m2m sink pad). This prevented selecting through caps negotiation the + colorimetry for CAPTURE devices (v4l2src or m2m src pad). This is rarely + selectable, but trying is harmless. + +2018-04-11 21:41:58 +0200 Sebastian Dröge + + * gst/monoscope/gstmonoscope.c: + monoscope: Only fixate pixel-aspect-ratio if the field exists + +2018-04-11 17:54:38 +0300 Vivia Nikolaidou + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Don't send fragment-opened-closed message if the reference ctx is NULL + It can happen during teardown that the reference context becomes NULL. + In that case, trying to send the fragment-opened-closed message would + lead to a crash. + +2018-04-11 09:12:09 +0200 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Run gst_iterator_foreach() as long as it returns GST_ITERATOR_RESYNC + CID 1434160 + +2018-04-11 08:51:32 +0200 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Fix comparision for extra caption atom + We want to make sure we have *enough* data for the potential 2nd + caption atom. + CID #1434161 + +2018-04-11 08:42:54 +0200 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Handle bogus caption samples + Corrupted files could potentially have multiple cdat/cdt2 atoms in + a sample entry, which is unclear how to handle. + Ignore repeated ones. + CID #1434162 + CID #1434159 + +2018-04-10 21:15:48 +0200 Sebastian Dröge + + * gst/monoscope/gstmonoscope.c: + monoscope: Fixate pixel-aspect-ratio too and make sure the final caps are completely fixated + Otherwise e.g. this fails with assertions: + gst-launch-1.0 audiotestsrc ! audioconvert ! monoscope ! videoconvert ! \ + videoscale ! video/x-raw,width=800,height=600 ! ximagesink + +2018-03-08 10:10:01 +0100 Edward Hervey + + * gst/isomp4/gstqtmux.c: + qtmux: Add comments and doc about prefill mode + +2018-02-06 14:36:50 +0100 Edward Hervey + + * gst/isomp4/gstqtmux.c: + qtmux: Refactor pad re-negotiation code + It was similar for all pads + https://bugzilla.gnome.org/show_bug.cgi?id=606643 + +2018-01-31 15:10:03 +0100 Edward Hervey + + * gst/isomp4/fourcc.h: + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux_types.c: + qtdemux: Detect and expose CEA 608/708 Closed Caption tracks + https://bugzilla.gnome.org/show_bug.cgi?id=606643 + +2018-04-04 01:48:44 +0200 Mathieu Duponchelle + + * gst/rtpmanager/gstrtprtxsend.c: + rtxsend: fix wrong memory layout assumption + The code responsible for creating retransmitted buffers + assumed the stored buffer had been created with + rtp_buffer_new_allocate when copying the extension data, + which isn't necessarily the case, for example when + the rtp buffers come from a udpsrc. + https://bugzilla.gnome.org/show_bug.cgi?id=794958 + +2018-04-02 23:04:06 +0200 Mathieu Duponchelle + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + rtpbin: new signal "get-storage" + Similar to the get-session and get-internal-session signals, + we expose a get-storage signal in addition to the + get-internal-storage signal to give access to the actual + element for applications that need to set properties on the + element, in particular "size-time" + https://bugzilla.gnome.org/show_bug.cgi?id=794910 + +2018-03-29 19:19:21 +0300 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + * gst/multifile/gstsplitmuxsink.h: + splitmuxsink: Add new reset-muxer property + With this the muxer is not set to NULL after each segment but instead + only flush events are sent to it to reset the EOS state. + As a result, the muxer will keep stream state and e.g. mpegtsmux will + keep the packet continuity counter continuous between segments as needed + by hlssink2. + https://bugzilla.gnome.org/show_bug.cgi?id=794816 + +2018-04-02 12:48:50 +0100 Tim-Philipp Müller + + * tests/icles/Makefile.am: + * tests/icles/meson.build: + * tests/icles/v4l2src-test.c: + tests: remove broken and now pointless v4l2src-test + This tests APIs that don't exist any longer and also doesn't + work at all, and was last touched in a meaningful way in 2006. + +2018-03-21 00:19:37 +0900 Seungha Yang + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2: Fix unknown type name ‘off_t’ error + Fix following build error + gstv4l2object.h:197:17: error: unknown type name ‘off_t’ + gint fd, off_t offset); + ^ + https://bugzilla.gnome.org/show_bug.cgi?id=794533 + +2017-05-25 03:44:39 +0200 Mathieu Duponchelle + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: reject segment seeks + https://bugzilla.gnome.org/show_bug.cgi?id=784681 + +2018-02-13 11:50:05 +0100 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Handle variant of vorbis in mp4 + Comes from gpac apparently. The codec_data uses the same packing + mechanism as matroska. + https://bugzilla.gnome.org/show_bug.cgi?id=738244 + +2018-03-22 15:20:47 +0100 Edward Hervey + + * gst/isomp4/qtdemux.c: + qtdemux: Check sample count is valid in PIFF parsing + The value stored in cenc_aux_sample_count wasn't in sync with the + parsing code that followed which checks whether all entries are + valid and present. + Only write the actual sample count when we know for sure. + CID #1427087 + +2018-03-04 15:14:08 +0100 Carlos Rafael Giani + + * configure.ac: + * ext/qt/gstqtglutility.cc: + qt: Get EGL native display from QPA if platform header is available + https://bugzilla.gnome.org/show_bug.cgi?id=792378 + +2018-03-06 02:14:34 +0100 Petr Kulhavy + + * gst/udp/gstudpsrc.c: + * gst/udp/gstudpsrc.h: + udpsrc: switch to using a buffer pool + This exposes a new property, mtu, which is used to determine the + initial size of buffers from the buffer pool. If received data + exceeds this, the element gracefully handles that in a manner similar + to what we had previously: a large memory gets filled and reallocated + at the next call to "fill". + The default size is set to 1500, which should cover most use cases. + With contributions from Mathieu Duponchelle + https://bugzilla.gnome.org/show_bug.cgi?id=772841 + +2016-11-15 09:39:31 +0100 Petr Kulhavy + + * gst/udp/gstudpsrc.h: + udpsrc: optimize GstUdpSrc object for cache performance + Optimize GstUdpSrc for cache performance. + Move the hot properties, which are used by the read function, to the top: + @used_socket, @addr, @cancellable, @skip_first_bytes, @timeout, + @retrieve_sender_address. + Remove the unused property @ttl. + Where needed reorder so that holes are avoided (the 64-bit @timeout) + https://bugzilla.gnome.org/show_bug.cgi?id=772841 + +2018-03-05 12:48:15 +0200 Sebastian Dröge + + * gst/isomp4/qtdemux.c: + qtdemux: Fix seeking on streams with frame reordering + The samples table is sorted by DTS, not PTS. As such we can only get the + correct result when using a binary search on it, if we search for the + DTS. + Also if we only ever search for the frame, where the following frame is + the first one with a PTS after the search position, we will generally + stop searching too early if frames are reordered. + In forwards playback this is not really a problem (after the decoder + reordered the frames, clipping is happening), in reverse playback + it means that we can output one or more frames too few as we stop too + early and the decoder would never receive it. + https://bugzilla.gnome.org/show_bug.cgi?id=782118 + +2018-03-20 11:36:32 +0200 Sebastian Dröge + + * gst/rtp/gstrtpreddec.c: + * gst/rtp/gstrtpredenc.c: + * gst/rtp/gstrtpulpfecdec.c: + * gst/rtp/gstrtpulpfecenc.c: + * gst/rtp/rtpstoragestream.c: + * tests/check/elements/rtpred.c: + * tests/check/elements/rtpulpfec.c: + rtp: Fix compilation with non-C99 compilers + By moving variable declarations out of loop headers. + +2018-03-20 09:24:19 +0000 Tim-Philipp Müller + + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/inspect/plugin-1394.xml: + * docs/plugins/inspect/plugin-aasink.xml: + * docs/plugins/inspect/plugin-alaw.xml: + * docs/plugins/inspect/plugin-alpha.xml: + * docs/plugins/inspect/plugin-alphacolor.xml: + * docs/plugins/inspect/plugin-apetag.xml: + * docs/plugins/inspect/plugin-audiofx.xml: + * docs/plugins/inspect/plugin-audioparsers.xml: + * docs/plugins/inspect/plugin-auparse.xml: + * docs/plugins/inspect/plugin-autodetect.xml: + * docs/plugins/inspect/plugin-avi.xml: + * docs/plugins/inspect/plugin-cacasink.xml: + * docs/plugins/inspect/plugin-cairo.xml: + * docs/plugins/inspect/plugin-cutter.xml: + * docs/plugins/inspect/plugin-debug.xml: + * docs/plugins/inspect/plugin-deinterlace.xml: + * docs/plugins/inspect/plugin-dtmf.xml: + * docs/plugins/inspect/plugin-dv.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-equalizer.xml: + * docs/plugins/inspect/plugin-flac.xml: + * docs/plugins/inspect/plugin-flv.xml: + * docs/plugins/inspect/plugin-flxdec.xml: + * docs/plugins/inspect/plugin-gdkpixbuf.xml: + * docs/plugins/inspect/plugin-goom.xml: + * docs/plugins/inspect/plugin-goom2k1.xml: + * docs/plugins/inspect/plugin-gtk.xml: + * docs/plugins/inspect/plugin-icydemux.xml: + * docs/plugins/inspect/plugin-id3demux.xml: + * docs/plugins/inspect/plugin-imagefreeze.xml: + * docs/plugins/inspect/plugin-interleave.xml: + * docs/plugins/inspect/plugin-isomp4.xml: + * docs/plugins/inspect/plugin-jack.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-level.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-mpg123.xml: + * docs/plugins/inspect/plugin-mulaw.xml: + * docs/plugins/inspect/plugin-multifile.xml: + * docs/plugins/inspect/plugin-multipart.xml: + * docs/plugins/inspect/plugin-navigationtest.xml: + * docs/plugins/inspect/plugin-oss4.xml: + * docs/plugins/inspect/plugin-ossaudio.xml: + * docs/plugins/inspect/plugin-png.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-qmlgl.xml: + * docs/plugins/inspect/plugin-replaygain.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-rtpmanager.xml: + * docs/plugins/inspect/plugin-rtsp.xml: + * docs/plugins/inspect/plugin-shapewipe.xml: + * docs/plugins/inspect/plugin-shout2.xml: + * docs/plugins/inspect/plugin-smpte.xml: + * docs/plugins/inspect/plugin-soup.xml: + * docs/plugins/inspect/plugin-spectrum.xml: + * docs/plugins/inspect/plugin-speex.xml: + * docs/plugins/inspect/plugin-taglib.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-udp.xml: + * docs/plugins/inspect/plugin-video4linux2.xml: + * docs/plugins/inspect/plugin-videobox.xml: + * docs/plugins/inspect/plugin-videocrop.xml: + * docs/plugins/inspect/plugin-videofilter.xml: + * docs/plugins/inspect/plugin-videomixer.xml: + * docs/plugins/inspect/plugin-vpx.xml: + * docs/plugins/inspect/plugin-wavenc.xml: + * docs/plugins/inspect/plugin-wavpack.xml: + * docs/plugins/inspect/plugin-wavparse.xml: + * docs/plugins/inspect/plugin-ximagesrc.xml: + * docs/plugins/inspect/plugin-y4menc.xml: + * meson.build: + Back to development + +=== release 1.14.0 === + +2018-03-19 20:18:22 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gst-plugins-good.doap: + * meson.build: + Release 1.14.0 + +2018-03-19 20:18:22 +0000 Tim-Philipp Müller + + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/inspect/plugin-1394.xml: + * docs/plugins/inspect/plugin-aasink.xml: + * docs/plugins/inspect/plugin-alaw.xml: + * docs/plugins/inspect/plugin-alpha.xml: + * docs/plugins/inspect/plugin-alphacolor.xml: + * docs/plugins/inspect/plugin-apetag.xml: + * docs/plugins/inspect/plugin-audiofx.xml: + * docs/plugins/inspect/plugin-audioparsers.xml: + * docs/plugins/inspect/plugin-auparse.xml: + * docs/plugins/inspect/plugin-autodetect.xml: + * docs/plugins/inspect/plugin-avi.xml: + * docs/plugins/inspect/plugin-cacasink.xml: + * docs/plugins/inspect/plugin-cairo.xml: + * docs/plugins/inspect/plugin-cutter.xml: + * docs/plugins/inspect/plugin-debug.xml: + * docs/plugins/inspect/plugin-deinterlace.xml: + * docs/plugins/inspect/plugin-dtmf.xml: + * docs/plugins/inspect/plugin-dv.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-equalizer.xml: + * docs/plugins/inspect/plugin-flac.xml: + * docs/plugins/inspect/plugin-flv.xml: + * docs/plugins/inspect/plugin-flxdec.xml: + * docs/plugins/inspect/plugin-gdkpixbuf.xml: + * docs/plugins/inspect/plugin-goom.xml: + * docs/plugins/inspect/plugin-goom2k1.xml: + * docs/plugins/inspect/plugin-gtk.xml: + * docs/plugins/inspect/plugin-icydemux.xml: + * docs/plugins/inspect/plugin-id3demux.xml: + * docs/plugins/inspect/plugin-imagefreeze.xml: + * docs/plugins/inspect/plugin-interleave.xml: + * docs/plugins/inspect/plugin-isomp4.xml: + * docs/plugins/inspect/plugin-jack.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-lame.xml: + * docs/plugins/inspect/plugin-level.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-mpg123.xml: + * docs/plugins/inspect/plugin-mulaw.xml: + * docs/plugins/inspect/plugin-multifile.xml: + * docs/plugins/inspect/plugin-multipart.xml: + * docs/plugins/inspect/plugin-navigationtest.xml: + * docs/plugins/inspect/plugin-oss4.xml: + * docs/plugins/inspect/plugin-ossaudio.xml: + * docs/plugins/inspect/plugin-png.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-qmlgl.xml: + * docs/plugins/inspect/plugin-replaygain.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-rtpmanager.xml: + * docs/plugins/inspect/plugin-rtsp.xml: + * docs/plugins/inspect/plugin-shapewipe.xml: + * docs/plugins/inspect/plugin-shout2.xml: + * docs/plugins/inspect/plugin-smpte.xml: + * docs/plugins/inspect/plugin-soup.xml: + * docs/plugins/inspect/plugin-spectrum.xml: + * docs/plugins/inspect/plugin-speex.xml: + * docs/plugins/inspect/plugin-taglib.xml: + * docs/plugins/inspect/plugin-twolame.xml: + * docs/plugins/inspect/plugin-udp.xml: + * docs/plugins/inspect/plugin-video4linux2.xml: + * docs/plugins/inspect/plugin-videobox.xml: + * docs/plugins/inspect/plugin-videocrop.xml: + * docs/plugins/inspect/plugin-videofilter.xml: + * docs/plugins/inspect/plugin-videomixer.xml: + * docs/plugins/inspect/plugin-vpx.xml: + * docs/plugins/inspect/plugin-wavenc.xml: + * docs/plugins/inspect/plugin-wavpack.xml: + * docs/plugins/inspect/plugin-wavparse.xml: + * docs/plugins/inspect/plugin-ximagesrc.xml: + * docs/plugins/inspect/plugin-y4menc.xml: + Update docs + +2018-03-19 18:39:08 +0000 Tim-Philipp Müller + + * gst/rtp/gstrtpulpfecdec.c: + rtpulpfecdec: fix build with older gcc + As on Ubuntu Trusty. + https://bugzilla.gnome.org/show_bug.cgi?id=794493 + +2018-03-19 10:58:28 +0200 Sebastian Dröge + + * gst/multifile/gstsplitmuxsink.c: + splitmuxsink: Allow splitting at exactly the time/bytes threshold + 76e458a119926424e9dd5acf3210a592a314d713 changed the conditions from + "queued > threshold" to "queued >= threshold", which broke hlssink2 and + resulting in too small fragments being created although keyframes would + be at *exactly* the configured threshold. + https://bugzilla.gnome.org/show_bug.cgi?id=794440 + +2018-03-17 20:29:35 +0000 Tim-Philipp Müller + + * gst/rtp/rtpulpfeccommon.h: + rtpulpfec: fix unconditional use of __attribute__ ((packed)) + Fix compilation with MSVC. We still assume that attribute + is supported by all other relevant compilers, which seems + to be the case since we haven't had any complaints about + similar code in rtpsbcpay. + +2018-03-17 13:04:47 +0000 Tim-Philipp Müller + + * gst/rtp/gstrtpulpfecdec.c: + * gst/rtp/gstrtpulpfecenc.c: + * gst/rtp/rtpulpfeccommon.c: + rtpulpfec: don't use non-portable notation for 64-bit int constants + Use GLib macro instead, even if it's a bit unwieldy. + +2018-03-17 12:55:57 +0000 Tim-Philipp Müller + + * gst/rtp/gstrtpulpfecdec.c: + rtpulpfecdec: don't use __builtin_ctzll unconditionally + Fixes build with MSVC, and possibly other compilers too. + === release 1.13.91 === 2018-03-13 19:16:42 +0000 Tim-Philipp Müller + * ChangeLog: * NEWS: * RELEASE: * configure.ac: @@ -4512,6 +9214,11 @@ souphttpsrc: Make session sharing thread-safe on our side https://bugzilla.gnome.org/show_bug.cgi?id=780140 +2017-05-18 10:53:48 +0100 Tim-Philipp Müller + + * gst/audiofx/gststereo.c: + stereo: fix typo in plugin description + 2017-05-18 10:43:19 +0100 Tim-Philipp Müller * ext/shout2/gstshout2.c: @@ -5252,6 +9959,11 @@ 2017-03-08 15:01:13 -0300 Thibault Saunier + * gst/audiofx/gststereo.c: + docs: Port all docstring to gtk-doc markdown + +2017-03-08 15:01:13 -0300 Thibault Saunier + * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: @@ -8884,6 +13596,16 @@ Otherwise we'll run into an assertion on specially crafted files. https://bugzilla.gnome.org/show_bug.cgi?id=773643 +2016-10-27 09:11:26 +0530 Nirbheek Chauhan + + * gst/audiofx/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 11:23:51 +0530 Nirbheek Chauhan * meson.build: @@ -16143,6 +20865,15 @@ Base class for the vp8dec and vp9dec. https://bugzilla.gnome.org/show_bug.cgi?id=755510 +2015-12-14 11:09:46 +0900 Vineeth TM + + * gst/audiofx/gststereo.c: + plugins-bad: Fix example pipelines + rename gst-launch --> gst-launch-1.0 + replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**) + fix caps in examples + https://bugzilla.gnome.org/show_bug.cgi?id=759432 + 2015-06-10 09:17:08 -0400 Xavier Claessens * configure.ac: @@ -22640,6 +27371,12 @@ Rename property enums from ARG_ to PROP_ Property enum items should be named PROP_ for consistency and readability. +2015-04-27 10:55:13 +0100 Luis de Bethencourt + + * gst/audiofx/gststereo.c: + Rename property enums from ARG_ to PROP_ + Property enum items should be named PROP_ for consistency and readability. + 2015-04-25 02:49:58 +0300 Ilya Konstantinov * gst/rtpmanager/gstrtpjitterbuffer.c: @@ -35115,6 +39852,11 @@ osxvideosink: fix segfault when dealing with padded frames Fixes crashes with vtdec ! osxvideosink where VideoToolbox outputs padded UYVY +2013-12-06 17:58:13 -0500 Olivier Crête + + * gst/audiofx/gststereo.c: + stereo: Port to GStreamer 1.0 API + 2013-12-05 12:15:29 +0100 Sebastian Dröge * gst/law/mulaw-decode.c: @@ -45180,6 +49922,13 @@ 2012-11-03 20:38:00 +0000 Tim-Philipp Müller + * gst/audiofx/gststereo.c: + * gst/audiofx/gststereo.h: + Fix FSF address + https://bugzilla.gnome.org/show_bug.cgi?id=687520 + +2012-11-03 20:38:00 +0000 Tim-Philipp Müller + * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfdetect.h: * gst/dtmf/gstdtmfsrc.c: @@ -46732,6 +51481,13 @@ 2012-10-17 17:34:26 +0100 Tim-Philipp Müller + * gst/audiofx/gststereo.c: + Use gst_element_class_set_static_metadata() + where possible. Avoids some string copies. Also re-indent + some stuff. Also some indent fixes here and there. + +2012-10-17 17:34:26 +0100 Tim-Philipp Müller + * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: @@ -48791,6 +53547,11 @@ 2012-09-14 17:08:49 +0200 Mark Nauwelaerts + * gst/audiofx/gststereo.c: + replace gst_element_class_set_details_simple with gst_element_class_set_metadata + +2012-09-14 17:08:49 +0200 Mark Nauwelaerts + * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: replace gst_element_class_set_details_simple with gst_element_class_set_metadata @@ -53054,6 +57815,11 @@ 2012-04-05 18:02:56 +0200 Sebastian Dröge + * gst/audiofx/gststereo.c: + gst: Update for GST_PLUGIN_DEFINE() API changes + +2012-04-05 18:02:56 +0200 Sebastian Dröge + * gst/dtmf/gstdtmf.c: gst: Update for GST_PLUGIN_DEFINE() API changes @@ -60136,6 +64902,11 @@ * tests/examples/v4l2/camctrl.c: controller: port to new controller location and api +2011-11-04 18:52:35 +0100 Stefan Sauer + + * gst/audiofx/gststereo.c: + controller: port to new controller location and api + 2011-11-04 17:39:15 +0100 Wim Taymans * gst/rtsp/gstrtspsrc.c: @@ -74955,6 +79726,11 @@ rtph264depay: fix segfault on empty payload https://bugzilla.gnome.org/show_bug.cgi?id=635843 +2010-11-25 19:24:56 +0100 Edward Hervey + + * gst/audiofx/gststereo.c: + stereo: Remove dead assignments + 2010-11-25 19:06:27 +0100 Edward Hervey * gst/dtmf/gstrtpdtmfdepay.c: @@ -75136,6 +79912,12 @@ 2010-10-19 13:43:14 +0300 Stefan Kost + * gst/audiofx/gststereo.c: + various (gst): add missing G_PARAM_STATIC_STRINGS flags + Canonicalize property names as needed. + +2010-10-19 13:43:14 +0300 Stefan Kost + * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: @@ -83373,6 +88155,11 @@ 2010-03-18 17:30:26 +0100 Benjamin Otte + * gst/audiofx/gststereo.c: + gst_element_class_set_details => gst_element_class_set_details_simple + +2010-03-18 17:30:26 +0100 Benjamin Otte + * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: @@ -107089,6 +111876,22 @@ * gst/qtdemux/qtdemux.c: (qtdemux_audio_caps): Correctly distinguish 8bit vs 16bit raw audio. Fixes #542410. +2008-07-10 18:51:11 +0000 Stefan Kost + + Document one more. + Original commit message from CVS: + * 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/gst-plugins-bad-plugins.prerequisites: + * docs/plugins/gst-plugins-bad-plugins.signals: + * docs/plugins/inspect/plugin-stereo.xml: + * gst/stereo/gststereo.c: + Document one more. + 2008-07-08 21:05:18 +0000 Mark Nauwelaerts gst/qtdemux/qtdemux.c: Set pixel-aspect-ratio in caps using display width and height provided in track. @@ -115528,6 +120331,19 @@ as the convolution is done out of place anyway. Should be done in place later. +2007-08-09 17:39:47 +0000 Sebastian Dröge + + Port the stereo element to GStreamer 0.10. + Original commit message from CVS: + * configure.ac: + * gst/stereo/Makefile.am: + * gst/stereo/gststereo.c: (gst_stereo_base_init), + (gst_stereo_class_init), (gst_stereo_init), + (gst_stereo_transform_ip), (gst_stereo_set_property), + (gst_stereo_get_property): + * gst/stereo/gststereo.h: + Port the stereo element to GStreamer 0.10. + 2007-08-09 10:54:05 +0000 Thomas Vander Stichele po/: Updated translations. @@ -127347,6 +132163,86 @@ * sys/vcd/vcdsrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass +2006-06-01 22:00:26 +0000 Stefan Kost + + Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass + Original commit message from CVS: + * ext/alsaspdif/alsaspdifsink.h: + * ext/amrwb/gstamrwbdec.h: + * ext/amrwb/gstamrwbenc.h: + * ext/amrwb/gstamrwbparse.h: + * ext/arts/gst_arts.h: + * ext/artsd/gstartsdsink.h: + * ext/audiofile/gstafparse.h: + * ext/audiofile/gstafsink.h: + * ext/audiofile/gstafsrc.h: + * ext/audioresample/gstaudioresample.h: + * ext/bz2/gstbz2dec.h: + * ext/bz2/gstbz2enc.h: + * ext/dirac/gstdiracdec.h: + * ext/directfb/dfbvideosink.h: + * ext/divx/gstdivxdec.h: + * ext/divx/gstdivxenc.h: + * ext/dts/gstdtsdec.h: + * ext/faac/gstfaac.h: + * ext/gsm/gstgsmdec.h: + * ext/gsm/gstgsmenc.h: + * ext/ivorbis/vorbisenc.h: + * ext/libfame/gstlibfame.h: + * ext/nas/nassink.h: + * ext/neon/gstneonhttpsrc.h: + * ext/polyp/polypsink.h: + * ext/sdl/sdlaudiosink.h: + * ext/sdl/sdlvideosink.h: + * ext/shout/gstshout.h: + * ext/snapshot/gstsnapshot.h: + * ext/sndfile/gstsf.h: + * ext/swfdec/gstswfdec.h: + * ext/tarkin/gsttarkindec.h: + * ext/tarkin/gsttarkinenc.h: + * ext/theora/theoradec.h: + * ext/wavpack/gstwavpackdec.h: + * ext/wavpack/gstwavpackparse.h: + * ext/xine/gstxine.h: + * ext/xvid/gstxviddec.h: + * ext/xvid/gstxvidenc.h: + * gst/cdxaparse/gstcdxaparse.h: + * gst/cdxaparse/gstcdxastrip.h: + * gst/colorspace/gstcolorspace.h: + * gst/festival/gstfestival.h: + * gst/freeze/gstfreeze.h: + * gst/gdp/gstgdpdepay.h: + * gst/gdp/gstgdppay.h: + * gst/modplug/gstmodplug.h: + * gst/mpeg1sys/gstmpeg1systemencode.h: + * gst/mpeg1videoparse/gstmp1videoparse.h: + * gst/mpeg2sub/gstmpeg2subt.h: + * gst/mpegaudioparse/gstmpegaudioparse.h: + * gst/multifilesink/gstmultifilesink.h: + * gst/overlay/gstoverlay.h: + * gst/playondemand/gstplayondemand.h: + * gst/qtdemux/qtdemux.h: + * gst/rtjpeg/gstrtjpegdec.h: + * gst/rtjpeg/gstrtjpegenc.h: + * gst/smooth/gstsmooth.h: + * gst/smoothwave/gstsmoothwave.h: + * gst/spectrum/gstspectrum.h: + * gst/speed/gstspeed.h: + * gst/stereo/gststereo.h: + * gst/switch/gstswitch.h: + * gst/tta/gstttadec.h: + * gst/tta/gstttaparse.h: + * gst/videodrop/gstvideodrop.h: + * gst/xingheader/gstxingmux.h: + * sys/directdraw/gstdirectdrawsink.h: + * sys/directsound/gstdirectsoundsink.h: + * sys/dxr3/dxr3audiosink.h: + * sys/dxr3/dxr3spusink.h: + * sys/dxr3/dxr3videosink.h: + * sys/qcam/gstqcamsrc.h: + * sys/vcd/vcdsrc.h: + Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass + 2006-06-01 21:07:26 +0000 Stefan Kost Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass @@ -129036,6 +133932,102 @@ Define GstElementDetails as const and also static (when defined as global) +2006-04-25 21:56:38 +0000 Stefan Kost + + Define GstElementDetails as const and also static (when defined as global) + Original commit message from CVS: + * ext/amrwb/gstamrwbdec.c: + * ext/amrwb/gstamrwbenc.c: + * ext/amrwb/gstamrwbparse.c: + * ext/arts/gst_arts.c: + * ext/artsd/gstartsdsink.c: + * ext/audiofile/gstafparse.c: + * ext/audiofile/gstafsink.c: + * ext/audiofile/gstafsrc.c: + * ext/audioresample/gstaudioresample.c: + * ext/bz2/gstbz2dec.c: + * ext/bz2/gstbz2enc.c: + * ext/cdaudio/gstcdaudio.c: + * ext/directfb/dfbvideosink.c: + * ext/divx/gstdivxdec.c: + * ext/divx/gstdivxenc.c: + * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init): + * ext/faac/gstfaac.c: (gst_faac_base_init): + * ext/faad/gstfaad.c: + * ext/gsm/gstgsmdec.c: + * ext/gsm/gstgsmenc.c: + * ext/hermes/gsthermescolorspace.c: + * ext/ivorbis/vorbisfile.c: + * ext/lcs/gstcolorspace.c: + * ext/libfame/gstlibfame.c: + * ext/libmms/gstmms.c: (gst_mms_base_init): + * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init): + * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init): + * ext/nas/nassink.c: (gst_nassink_base_init): + * ext/neon/gstneonhttpsrc.c: + * ext/sdl/sdlaudiosink.c: + * ext/sdl/sdlvideosink.c: + * ext/shout/gstshout.c: + * ext/snapshot/gstsnapshot.c: + * ext/sndfile/gstsf.c: + * ext/swfdec/gstswfdec.c: + * ext/tarkin/gsttarkindec.c: + * ext/tarkin/gsttarkinenc.c: + * ext/theora/theoradec.c: + * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): + * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): + * ext/xvid/gstxviddec.c: + * ext/xvid/gstxvidenc.c: + * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init): + * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init): + * gst/chart/gstchart.c: + * gst/colorspace/gstcolorspace.c: + * gst/deinterlace/gstdeinterlace.c: + * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init): + * gst/festival/gstfestival.c: + * gst/filter/gstbpwsinc.c: + * gst/filter/gstiir.c: + * gst/filter/gstlpwsinc.c: + * gst/freeze/gstfreeze.c: + * gst/games/gstpuzzle.c: (gst_puzzle_base_init): + * gst/librfb/gstrfbsrc.c: + * gst/mixmatrix/mixmatrix.c: + * gst/mpeg1sys/gstmpeg1systemencode.c: + * gst/mpeg1videoparse/gstmp1videoparse.c: + * gst/mpeg2sub/gstmpeg2subt.c: + * gst/mpegaudioparse/gstmpegaudioparse.c: + * gst/multifilesink/gstmultifilesink.c: + * gst/overlay/gstoverlay.c: + * gst/passthrough/gstpassthrough.c: + * gst/playondemand/gstplayondemand.c: + * gst/qtdemux/qtdemux.c: + * gst/rtjpeg/gstrtjpegdec.c: + * gst/rtjpeg/gstrtjpegenc.c: + * gst/smooth/gstsmooth.c: + * gst/smoothwave/gstsmoothwave.c: + * gst/spectrum/gstspectrum.c: + * gst/speed/gstspeed.c: + * gst/stereo/gststereo.c: + * gst/switch/gstswitch.c: + * gst/tta/gstttadec.c: (gst_tta_dec_base_init): + * gst/tta/gstttaparse.c: (gst_tta_parse_base_init): + * gst/vbidec/gstvbidec.c: + * gst/videocrop/gstvideocrop.c: + * gst/videodrop/gstvideodrop.c: + * gst/virtualdub/gstxsharpen.c: + * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init): + * gst/y4m/gsty4mencode.c: + * sys/cdrom/gstcdplayer.c: + * sys/directdraw/gstdirectdrawsink.c: + * sys/directsound/gstdirectsoundsink.c: + * sys/glsink/glimagesink.c: + * sys/qcam/gstqcamsrc.c: + * sys/v4l2/gstv4l2src.c: + * sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init): + * sys/ximagesrc/ximagesrc.c: + Define GstElementDetails as const and also static (when defined as + global) + 2006-04-25 21:39:46 +0000 Stefan Kost Define GstElementDetails as const and also static (when defined as global) @@ -129923,6 +134915,84 @@ * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init): Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) +2006-04-08 21:48:01 +0000 Stefan Kost + + Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) + Original commit message from CVS: + * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_class_init): + * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_class_init): + * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_class_init): + * ext/arts/gst_arts.c: (gst_arts_class_init): + * ext/artsd/gstartsdsink.c: (gst_artsdsink_class_init): + * ext/audiofile/gstafsink.c: (gst_afsink_class_init): + * ext/audiofile/gstafsrc.c: (gst_afsrc_class_init): + * ext/audioresample/gstaudioresample.c: + * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init): + * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_class_init): + * ext/divx/gstdivxdec.c: (gst_divxdec_class_init): + * ext/hermes/gsthermescolorspace.c: + (gst_hermes_colorspace_class_init): + * ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_class_init): + * ext/jack/gstjack.c: (gst_jack_class_init): + * ext/jack/gstjackbin.c: (gst_jack_bin_class_init): + * ext/lcs/gstcolorspace.c: (gst_colorspace_class_init): + * ext/libfame/gstlibfame.c: (gst_fameenc_class_init): + * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_class_init): + * ext/nas/nassink.c: (gst_nassink_class_init): + * ext/shout/gstshout.c: (gst_icecastsend_class_init): + * ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init): + * ext/sndfile/gstsf.c: (gst_sf_class_init): + * ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init), + (gst_swfdec_class_init): + * ext/tarkin/gsttarkindec.c: (gst_tarkindec_class_init): + * ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_class_init): + * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_class_init): + * gst/chart/gstchart.c: (gst_chart_class_init): + * gst/colorspace/gstcolorspace.c: (gst_colorspace_class_init): + * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init): + * gst/festival/gstfestival.c: (gst_festival_class_init): + * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init): + * gst/filter/gstiir.c: (gst_iir_class_init): + * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init): + * gst/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init): + * gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_class_init): + * gst/mpeg1sys/gstmpeg1systemencode.c: + (gst_system_encode_class_init): + * gst/mpeg1videoparse/gstmp1videoparse.c: + (gst_mp1videoparse_class_init): + * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_class_init): + * gst/mpegaudioparse/gstmpegaudioparse.c: + (gst_mp3parse_class_init): + * gst/overlay/gstoverlay.c: (gst_overlay_class_init): + * gst/passthrough/gstpassthrough.c: (passthrough_class_init): + * gst/playondemand/gstplayondemand.c: (play_on_demand_class_init): + * gst/rtjpeg/gstrtjpegdec.c: (gst_rtjpegdec_class_init): + * gst/rtjpeg/gstrtjpegenc.c: (gst_rtjpegenc_class_init): + * gst/smooth/gstsmooth.c: (gst_smooth_class_init): + * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init): + * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init): + * gst/stereo/gststereo.c: (gst_stereo_class_init): + * gst/switch/gstswitch.c: (gst_switch_class_init): + * gst/tta/gstttadec.c: (gst_tta_dec_class_init): + * gst/tta/gstttaparse.c: (gst_tta_parse_class_init): + * gst/vbidec/gstvbidec.c: (gst_vbidec_class_init): + * gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init): + * gst/virtualdub/gstxsharpen.c: (gst_xsharpen_class_init): + * gst/y4m/gsty4mencode.c: (gst_y4mencode_class_init): + * sys/cdrom/gstcdplayer.c: (cdplayer_class_init): + * sys/directsound/gstdirectsoundsink.c: + (gst_directsoundsink_class_init): + * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_class_init): + * sys/dxr3/dxr3spusink.c: (dxr3spusink_class_init): + * sys/dxr3/dxr3videosink.c: (dxr3videosink_class_init): + * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_class_init): + * sys/v4l2/gstv4l2colorbalance.c: + (gst_v4l2_color_balance_channel_class_init): + * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_channel_class_init), + (gst_v4l2_tuner_norm_class_init): + * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init): + Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) + 2006-04-08 21:21:45 +0000 Stefan Kost Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) @@ -130395,6 +135465,13 @@ 2006-04-01 10:09:11 +0000 Thomas Vander Stichele + * gst/audiofx/gststereo.c: + rework build; add translations for v4l2 + Original commit message from CVS: + rework build; add translations for v4l2 + +2006-04-01 10:09:11 +0000 Thomas Vander Stichele + * gst/equalizer/gstiirequalizer.c: * gst/qtdemux/qtdemux.c: * gst/spectrum/gstspectrum.c: @@ -138429,6 +143506,14 @@ * ext/lame/gstlame.h: Port lame plugin +2005-07-05 10:51:49 +0000 Andy Wingo + + Way, way, way too many files: Remove crack comment from the 2000 era. + Original commit message from CVS: + 2005-07-05 Andy Wingo + * Way, way, way too many files: + Remove crack comment from the 2000 era. + 2005-07-05 10:51:41 +0000 Andy Wingo Way, way, way too many files: Remove crack comment from the 2000 era. @@ -138583,6 +143668,13 @@ * gst/monoscope/gstmonoscope.c: (gst_monoscope_class_init): debug info +2004-07-27 21:51:30 +0000 Steve Lhomme + + * gst/audiofx/gststereo.c: + fix local includes and 64 bits constants + Original commit message from CVS: + fix local includes and 64 bits constants + 2004-07-26 15:42:18 +0000 Benjamin Otte ext/lame/gstlame.c: add debugging category, add error checks like checking return values of setup calls, make sure it... @@ -138659,6 +143751,13 @@ Original commit message from CVS: don't trust lame_init to set good values as defaults +2004-03-15 19:32:27 +0000 Thomas Vander Stichele + + * gst/audiofx/gststereo.c: + don't mix tabs and spaces + Original commit message from CVS: + don't mix tabs and spaces + 2004-03-15 19:32:25 +0000 Thomas Vander Stichele * ext/lame/gstlame.c: @@ -138666,12 +143765,26 @@ Original commit message from CVS: don't mix tabs and spaces +2004-03-15 16:32:54 +0000 Johan Dahlin + + *.h: Revert indenting + Original commit message from CVS: + * *.h: Revert indenting + 2004-03-15 16:32:53 +0000 Johan Dahlin *.h: Revert indenting Original commit message from CVS: * *.h: Revert indenting +2004-03-14 22:34:33 +0000 Thomas Vander Stichele + + * gst/audiofx/gststereo.c: + * gst/audiofx/gststereo.h: + gst-indent + Original commit message from CVS: + gst-indent + 2004-03-14 22:34:30 +0000 Thomas Vander Stichele * ext/lame/gstlame.c: @@ -138745,6 +143858,13 @@ Original commit message from CVS: Uses new tagging framework +2003-12-04 10:37:38 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + remove copyright field from plugins + Original commit message from CVS: + remove copyright field from plugins + 2003-12-04 10:37:35 +0000 Andy Wingo * ext/lame/gstlame.c: @@ -138759,6 +143879,20 @@ Original commit message from CVS: change _connect to _link +2003-11-16 22:02:23 +0000 Leif Johnson + + * gst/audiofx/gststereo.c: + + checking in plugin category changes + Original commit message from CVS: + + checking in plugin category changes + +2003-11-07 12:47:02 +0000 Ronald S. Bultje + + * gst/audiofx/gststereo.h: + Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes fro... + Original commit message from CVS: + Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files + 2003-11-07 12:46:51 +0000 Ronald S. Bultje * ext/lame/gstlame.h: @@ -138766,6 +143900,13 @@ Original commit message from CVS: Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files +2003-11-02 22:34:11 +0000 Benjamin Otte + + * gst/audiofx/gststereo.c: + fix for new plugin system + Original commit message from CVS: + fix for new plugin system + 2003-11-02 00:13:26 +0000 Iain Holmes * ext/lame/gstlame.c: @@ -138780,6 +143921,13 @@ Original commit message from CVS: Fix typo in Andy's commit +2003-10-08 16:08:19 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488. + Original commit message from CVS: + /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488. + 2003-10-08 16:08:10 +0000 Andy Wingo * ext/lame/gstlame.c: @@ -138845,6 +143993,15 @@ Original commit message from CVS: patch from hadess, modified +2003-06-29 19:46:13 +0000 Benjamin Otte + + * gst/audiofx/gststereo.c: + compatibility fix for new GST_DEBUG stuff. + Original commit message from CVS: + compatibility fix for new GST_DEBUG stuff. + Includes fixes for missing includes for config.h and unistd.h + I only ensured for plugins I can build that they work, so if some of them are still broken, you gotta fix them yourselves unfortunately. + 2003-06-29 19:46:09 +0000 Benjamin Otte * ext/lame/gstlame.c: @@ -138950,6 +144107,13 @@ Original commit message from CVS: api change +2002-09-18 19:02:52 +0000 Christian Schaller + + * gst/audiofx/gststereo.c: + plugins part of license field patch + Original commit message from CVS: + plugins part of license field patch + 2002-09-18 19:02:46 +0000 Christian Schaller * ext/lame/gstlame.c: @@ -138999,6 +144163,26 @@ Original commit message from CVS: reorder +2002-04-20 21:42:51 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + a hack to work around intltool's brokenness a current check for mpeg2dec details->klass reorganizations an element br... + Original commit message from CVS: + * a hack to work around intltool's brokenness + * a current check for mpeg2dec + * details->klass reorganizations + * an element browser that uses details->klass + * separated cdxa parse out from the avi directory + +2002-04-11 20:42:26 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE same with *factory and typefind. + Original commit message from CVS: + GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE + same with *factory and typefind. + also, some -Werror fixes. + 2002-04-11 20:42:25 +0000 Andy Wingo * ext/lame/gstlame.c: @@ -139033,6 +144217,14 @@ * filter newlines out of GST_DEBUG statements to reflect new core behavior * fixes to adder's caps, again +2002-03-20 21:45:04 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + * gst/audiofx/gststereo.h: + s/Gnome-Streamer/GStreamer/ + Original commit message from CVS: + s/Gnome-Streamer/GStreamer/ + 2002-03-20 21:45:03 +0000 Andy Wingo * ext/lame/gstlame.c: @@ -139048,6 +144240,15 @@ Original commit message from CVS: fix compile error (untested) +2002-03-19 04:10:06 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + removal of //-style comments don't link plugins to core libs -- the versioning is done internally to the plugins with... + Original commit message from CVS: + * removal of //-style comments + * don't link plugins to core libs -- the versioning is done internally to the plugins with the plugin_info struct, + and symbol resolution is lazy, so we can always know if a plugin can be loaded by the plugin_info data. in theory. + 2002-03-19 04:10:05 +0000 Andy Wingo * ext/lame/Makefile.am: @@ -139199,6 +144400,14 @@ * link plugins to GST_LIBS * rearrange rules to a common format +2001-12-22 23:26:33 +0000 Andy Wingo + + * gst/audiofx/gststereo.c: + * gst/audiofx/gststereo.h: + Initial revision + Original commit message from CVS: + Initial revision + 2001-12-21 12:47:09 +0000 Wim Taymans * ext/lame/gstlame.c: