diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2014-05-03 18:02:23 +0200 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2014-05-03 18:02:23 +0200 |
commit | 1d4404d88306dfd728dd22af44f2ec7650f2d9cc (patch) | |
tree | 41a13a560a93e15eb6443ad1b3c78d9cb281e69a | |
parent | 0ead08b26aec57d3a1bc02e75fd225a054567384 (diff) |
Release 1.3.1gst-plugins-good-1.3.1
81 files changed, 6563 insertions, 319 deletions
@@ -1,9 +1,5269 @@ +=== release 1.3.1 === + +2014-05-03 Sebastian Dröge <slomo@coaxion.net> + + * configure.ac: + releasing 1.3.1 + +2014-05-03 17:22:45 +0200 Sebastian Dröge <sebastian@centricular.com> + + * po/da.po: + * po/de.po: + * po/el.po: + * po/hu.po: + * po/id.po: + * po/lv.po: + * po/nb.po: + * po/pt_BR.po: + * po/ru.po: + * po/sk.po: + * po/sl.po: + * po/sr.po: + * po/zh_CN.po: + po: Update translations + +2014-05-03 11:43:21 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/shapewipe.c: + shapewipe: Send initial events after setting the elements to PLAYING + Otherwise we send them too early, and setting the elements to PLAYING + afterwards will drop all the events again. + +2014-05-03 10:15:03 +0200 Sebastian Dröge <sebastian@centricular.com> + + * common: + Automatic update of common submodule + From bcb1518 to 211fa5f + +2014-05-02 17:12:29 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/imagefreeze/gstimagefreeze.c: + imagefreeze: Set segment position to the stop position of the buffer + +2014-05-02 17:10:18 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/imagefreeze/gstimagefreeze.c: + imagefreeze: Properly report errors before stopping the srcpad task + +2014-05-02 17:02:02 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/imagefreeze/gstimagefreeze.c: + imagefreeze: Error out if we have no caps yet + +2014-05-02 14:49:27 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/wavparse/gstwavparse.c: + wavparse: avoid dividing by a 0 blockalign + This can be 0. In that case, do not try to cut off the last few + bytes from the last buffer. + Coverity 1146971 + +2014-05-02 14:25:01 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-mux.c: + matroskamux: do not use uinitialized clut on error + If we're missing part of the clut, do not try to use it. It seems + very likely the break was meant to break out of the switch rather + than from the loop. + Coverity 1139878 + +2014-05-02 14:18:08 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/flx/gstflxdec.c: + flxdec: fix integer overflow + Coverity 1139859 + +2014-05-02 14:09:02 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/rtp/gstrtpqdmdepay.c: + rtpqdmdepay: remove pointless check + Besides, the pointer was dereferenced earlier anyway. + Coverity 1139853 + +2014-05-02 14:06:25 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: remove duplicate test + item was dereference previously. + While there, reorder some test for faster early out. + Coverity 1139844 + +2014-05-02 14:02:52 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * ext/vpx/gstvp8enc.c: + vp8enc: guard against NULL pointer dereference + Coverity 1139838 + +2014-05-02 13:59:07 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: fix theoretical integer overflow + This code isn't actually used at the moment, unsure if I should + just remove it or not... + Coverity 1139811 + +2014-05-02 13:33:02 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/ebml-write.c: + matroska: blindly fix writing variable length negative values + Spotted while fixing something else in the area. + Nothing calls this with a negative value. + +2014-05-02 13:29:33 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/ebml-write.c: + matroska: do not lose the top bits when writing a > 32 bit value + Coverity 1139806 + +2014-05-02 12:10:26 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/videofilter/gstvideoflip.c: + videoflip: add missing break in switch + Coverity 1139755 + +2014-05-02 11:39:39 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-parse.c: + matroska: do not try to call gst_pad_query_default on a NULL pad + gst_matroska_parse_query can be called explicitely with a NULL pad. + If we reach this point with a NULL pad, fail the query. + Coverity 1139715 + +2014-05-02 11:28:01 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-parse.c: + matroska: do not return GST_FLOW_OK if we did not get a buffer + Coverity 1139714 (which will likely come back in another guise, + as the _read_init call can have a failing _map) + +2014-05-02 11:20:33 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/ebml-write.c: + matroska: catch failure to map buffer + Avoids dereferencing NULL. + Coverity 1139712 + +2014-05-02 10:52:44 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/avi/gstavimux.c: + avimux: refuse caps with invalid framerate + Coverity 1139701 + +2014-05-02 10:21:09 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/gstqtmux.c: + qtmux: handle 0 size packets without dividing by 0 + Coverity 1139691 + +2014-05-02 09:49:32 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/qtdemux.c: + qtdemux: guard against invalid frame size to avoid division by 0 + Coverity 1139690 + +2014-05-02 09:49:17 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/qtdemux.c: + qtdemux: trivial typo fix + +2014-05-02 09:43:54 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * ext/speex/gstspeexdec.c: + speexdec: remove dead code + fpp can never equal 0 here, or the loop would not execute at all. + Zero fpp was possible before as the loop condition was allowing + it specifically, but no more. + Coverity 1139681 + +2014-05-02 09:41:19 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * sys/oss4/oss4-property-probe.c: + oss4: remove dead mixer code + This was partly removed in the port to 0.11. If still needed, + it's still there in the history. + Coverity 1139687 + +2014-05-02 09:33:51 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * sys/oss4/oss4-property-probe.c: + oss4: fix a missing unlock and a return-only-when-assertions-enabled + Spotted on the side while looking at another issue. + +2014-03-07 17:31:29 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2: Correctly map RGB32 format + In v4l2 specification, RGB32 has the alpha, or pading, first, not last. + See http://linuxtv.org/downloads/v4l-dvb-apis/packed-rgb.html . + https://bugzilla.gnome.org/show_bug.cgi?id=540941 + +2014-04-30 18:06:40 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: remove dead code + For 8 bit width, we always have depth==gdepth==width==8. + Coverity 1139678 + +2014-04-30 17:48:53 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/audioparsers/gstmpegaudioparse.c: + mpegaudioparse: remove dead code + A stricer check is already done earlier, and integer overflows + do not seem possible here. + Coverity 1139675 + +2014-04-30 14:50:44 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/rtp/gstrtpvrawpay.c: + rtpvrawpay: guard against pathological "no space" condition + Even if one woul hope one pixel can fit in a MTU, ensure we do not + overwrite a buffer if this is not the case. + Spotted while looking at Coverity 1208786 + +2014-04-30 11:52:10 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/rtp/gstrtpjpegdepay.c: + rtpjpegdepay: sanity check for NULL qtable + Can happen (at least in crafted stream) + Coverity 1208778 + +2014-04-30 01:08:41 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/wavparse/gstwavparse.c: + wavparse: pass on tags from upstream if there are any + Don't just ignore upstream tags from e.g. an ID3 tag before + the .wav data, pass them on downstream. + https://bugzilla.gnome.org/show_bug.cgi?id=729223 + +2014-04-29 16:26:53 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: optimize timer update + When we are not doing retransmission, we just need to find the current + seqnum so we can stop when we found it. + +2014-04-29 16:21:44 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpjitterbuffer.h: + rtpjitterbuffer: small optimizations + Small optimizations where we can. + Add some more debug. + +2014-04-29 16:16:17 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: signal when next_seqnum changed + Signal the pushing thread when the next_seqnum changed and we might be + able to push a buffer now. + +2014-04-29 16:12:29 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: only signal event when head changed + After adding a buffer, only signal the pushing thread when the head + buffer changed or else we cause a useless wakeup. + +2014-04-29 15:29:31 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + rtpjitterbuffer: rework packet insert + Rework the packet queue so that the most common action (insert a packet + at the tail of the queue) goes very fast. + Report if a packet was inserted at the head instead of the tail so that + we can know when to retry _pop or _peek. + +2014-04-28 14:41:10 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtp/gstrtpvrawdepay.c: + * gst/rtp/gstrtpvrawpay.c: + rtpvraw: use plane pointers when needed + Pack/unpack planar formats to/from the first plane. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=729058 + +2014-04-28 09:47:10 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: Remember if a redirect is permanent or not and store it in the query + +2014-04-27 21:57:31 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * gst/goom/config_param.c: + goom: Remove french comment saying to prefix functions + All non-static function in this file are already prefixed with goom_. + +2014-04-28 00:20:47 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/goom/filters.c: + goom: fix compilation on ios-arm7-10.9 and osx-x86_64 + uint is not a standard type, and the rest of the code uses + Uint which is locally typedefed to unsigned int. + https://bugzilla.gnome.org/show_bug.cgi?id=729067 + +2014-04-27 18:29:11 -0400 Luis de Bethencourt <luis@debethencourt.com> + + * gst/goom/filters.c: + goom: fix undefined behaviour of left-shift + Don't left-shift into the sign bit, the result is undefined and potentially + an overflow could flip the sign. + +2014-04-26 20:51:36 -0400 Luis de Bethencourt <luis@debethencourt.com> + + * gst/isomp4/qtdemux.c: + qtdemux: check return from qt_demux_video_caps + Now qtdemux_video_caps() can return NULL. We need to check this return before + using it's value. + https://bugzilla.gnome.org/show_bug.cgi?id=728987 + +2014-04-26 23:35:17 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/dv/gstdvdec.c: + * ext/dv/gstdvdemux.c: + * ext/jack/gstjackaudiosink.c: + * ext/jack/gstjackaudiosrc.c: + * ext/speex/gstspeexdec.c: + * gst/avi/gstavidemux.c: + * gst/avi/gstavisubtitle.c: + * gst/isomp4/gstqtmoovrecover.c: + * gst/isomp4/gstqtmux-doc.c: + * gst/isomp4/gstqtmux.c: + * gst/isomp4/qtdemux.c: + * gst/multifile/gstmultifilesink.c: + * gst/rtp/gstrtpL16depay.c: + * gst/rtp/gstrtpL16pay.c: + * gst/rtp/gstrtpac3depay.c: + * gst/rtp/gstrtpac3pay.c: + * gst/rtp/gstrtpamrdepay.c: + * gst/rtp/gstrtpamrpay.c: + * gst/rtp/gstrtpbvdepay.c: + * gst/rtp/gstrtpbvpay.c: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpmux.c: + * gst/rtpmanager/gstrtpptdemux.c: + * gst/rtpmanager/gstrtprtxreceive.c: + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/gstrtpssrcdemux.c: + * gst/rtsp/gstrtpdec.c: + * gst/rtsp/gstrtspsrc.c: + * gst/spectrum/gstspectrum.c: + * gst/udp/gstudpsrc.c: + * gst/videofilter/gstgamma.c: + * gst/videofilter/gstvideobalance.c: + * gst/videofilter/gstvideoflip.c: + * gst/wavparse/gstwavparse.c: + * sys/osxaudio/gstosxaudiosink.c: + docs: remove outdated and pointless 'Last reviewed' lines from docs + They are very confusing for people, and more often than not + also just not very accurate. Seeing 'last reviewed: 2005' in + your docs is not very confidence-inspiring. Let's just remove + those comments. + +2014-04-25 17:58:42 -0400 Luis de Bethencourt <luis@debethencourt.com> + + * gst/isomp4/qtdemux.c: + qtdemux: initialize caps pointer to null + Make sure the caps pointer returns initialized when using it in + qtdemux_parse_tree (). + https://bugzilla.gnome.org/show_bug.cgi?id=728987 + +2014-04-22 17:07:38 +1000 Jan Schmidt <jan@centricular.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: Clear last_pt on flush-stop. + Otherwise, we don't recheck the buffer caps for clock-rate + properly on the next chain. + +2014-04-22 17:29:02 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Fix compiler warning + gstdeinterlace.c: In function 'gst_deinterlace_output_frame': + gstdeinterlace.c:1537:57: error: 'pattern.length' may be used uninitialized in this function [-Werror=maybe-uninitialized] + This actually is always initialized before it is used there, but + let's just silence gcc here. + +2014-04-21 15:58:45 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/rtpmanager/gstrtpmux.c: + rtpmux: fix buffer list drop check + While porting to 0.11, the check was mistakenly made constant, + instead of testing for the return value of process_buffer_locked. + Coverity 1139663 + +2014-04-21 13:44:15 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-read-common.c: + matroska: fix content encoding scope validity check + It's 3 bits, and http://matroska.org/technical/specs/index.html + says it can't be 0. + Coverity 1139660 + +2014-04-21 13:34:37 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-mux.c: + matroskamux: fix PAR fraction sanity check + It was checking par_num twice, and never par_denum. + Coverity 1139634 + +2014-04-21 13:32:40 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/udp/gstmultiudpsink.c: + multiidpsink: warn when setsockopt fails + This doesn't seem to be fatal, but it's good to let the user know + in the logs. + Coverity 1139630 + +2014-04-21 13:27:24 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/interleave/deinterleave.c: + interlace: catch failure to create audio info from caps + Coverity 1139627, 1139628 + +2014-03-13 09:37:48 +0100 Göran Jönsson <goranjn@axis.com> + + * gst/rtp/gstrtph264pay.c: + gstrtph264pay: Reset sps pps variable when state change. + Reset last_spspps and sps/pps arrays when state transition + GST_STATE_CHANGE_PAUSED_TO_READY. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726015 + +2014-04-18 11:11:14 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + jitterbuffer: improve EOS handling + Make a new method to disable the jitterbuffer buffering. + Rework the update_estimated_eos() method. Calculate how much time + there is left to play. If we have less than the delay of the + jitterbuffer, we disabled buffering because we might never be able to + fill the complete jitterbuffer again. + If we receive an EOS event, disable buffering. We will drain the + buffer and eventually push the EOS event out. + When we reach the estimated NPT timeout and we didn't receive an EOS + event, make one and queue it so that it can be pushed. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728017 + +2014-04-18 10:21:27 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + rtpsession: send reconfigure when internal-ssrc changes + When the internal-ssrc property changes, we want to send a reconfigure + upstream to make payloaders use the new suggested ssrc. + Using the internal-ssrc property to change the SSRC of a stream is not a + good idea and doesn't work when there are multiple senders, we want to + set the SSRC directly on the payloaders. Therefore, deprecate this + property. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725361 + +2014-04-18 04:23:26 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: assume a full buffer when eos + Rework the logic to make buffering messages a little, make sure we + don't make the same message multiple times. + Consider the buffer full when EOS was received. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728017 + +2014-04-17 18:07:09 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/rtprtx.c: + rtprtx: Don't forget to unmap rtp buffer in the test + +2014-04-17 17:58:58 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: Require clock-rate in the caps and handle no ssrc in the caps properly + +2014-04-17 17:43:12 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/rtprtx.c: + rtprtx: Provide an ssrc in the test + And increase timeout to allow all tests to run in valgrind. + +2014-04-17 17:33:46 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/rtpsession.c: + rtpsession: Fix memory leaks in test + +2014-04-17 17:26:36 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer: Fix hundreds of memory leaks in the test + +2014-04-17 17:00:37 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: Unref clock id when waiting for the clock is interrupted + +2014-04-17 16:39:59 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/rtpcollision.c: + rtpcollision: Fix memory leaks in unit test + +2014-04-16 21:40:45 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/videomixer/videomixer2.c: + videomixer: name collectpads object based on videomixer name + Makes it easier to track things in debug logs when there + are multiple mixers and muxers. + +2014-04-16 21:37:12 +0100 Tim-Philipp Müller <tim@centricular.com> + + * gst/videomixer/videomixer2.c: + videomixer: better logging of incoming events + The pad and parent names are already logged as part of logging + the object. Instead log the full event details. + +2014-04-16 19:03:47 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/videomixer.c: + videomixer: Fix memory leak in unit test + +2014-04-16 18:49:43 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/level/gstlevel.c: + level: Use the correct number of samples to iterate over the input array + Fixes invalid memory accesses and accesses to uninitialised data. + +2014-04-16 18:00:49 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/icydemux/gsticydemux.c: + icydemux: Unref dropped events + +2014-04-16 17:29:30 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/ebml-read.c: + matroska: fix check for amount of data to read + History shows length==0 should set data to NULL and return, + so we do that too instead of trying to read nothing. + Coverity 206205 + +2014-04-16 17:25:44 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: fix sign comparison + history_count is unsigned, so the whole comparison will be made + as unsigned, and fail to reject what it was meant to. + Coverity 206204 + +2014-04-16 17:04:50 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: remove dead code + sub may not be NULL in this switch, there is a bail out just + before it if so. + Coverity 206098 + +2014-04-16 16:59:43 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/audioparsers/gstflacparse.c: + flacparse: remove dead code + The block_size == 0 was shortcut earlier, and the variable is not + modified in the meantime. + Coverity 206097 + +2014-04-16 16:56:54 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/videomixer/videoconvert.c: + videomixer: remove dead code + While it seems to keep a compile time selection, I traced it + to some code copied from videoconvert, where it was removed, + with the following comment: + Also remove the high-quality I420 to BGRA fast-path as it needs + the same fix, which causes an additional instruction, which causes + orc to emit more than 96 variables, which then just crashes. + This can only be fixed in orc by breaking ABI and allowing more + variables. + Thus, I remove it here as well. + Coverity 206064 + +2014-04-16 16:50:30 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/qtdemux.c: + isomp4: fix incorrect masking for multiple tags + Coverity 206058 + +2014-04-16 16:45:08 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/atoms.c: + isomp4: fix wrong atom flags set when adding samples + Coverity 206057 + +2014-04-16 16:40:02 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/audiofx/audiofxbasefirfilter.c: + audiofx: fix comparison of delta time to a threshold + Coverity 206055 + +2014-04-16 16:32:26 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/wavparse/gstwavparse.c: + wavparse: do not rely on call failure keeping return data unmodified + This is clearer this way too. + Coverity 206029 + +2014-04-16 16:28:49 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/atomsrecovery.c: + isomp4: catch fseek error + Coverity 206028 + +2014-04-16 16:25:44 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/isomp4/atoms.c: + isomp4: report failures to caller + Coverity 206027 + +2014-04-16 18:05:46 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: refuse serialied query when buffering + When we are buffering, we can't block and wait for the serialized query + to complete because the jitterbuffer will not try to forward the query + while buffering. Instead, just refuse the query. + +2014-04-16 16:51:15 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: don't free the serialized query + We should never free a serialized query in the queue, it is the upstream + caller that will free it. + +2014-04-16 17:35:42 +0200 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/aacparse.c: + aacparse: Fix memory leak in the test + +2014-04-16 17:33:46 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/videomixer/videomixer2.c: + videomixer: Create hashtable only when we actually use it + In error cases we previously returned without freeing it. + +2014-04-16 17:30:59 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/videomixer/videomixer2.c: + videomixer: Chain up to the parent class' dispose function + +2014-04-16 17:23:27 +0200 Sebastian Dröge <sebastian@centricular.com> + + * sys/v4l2/gstv4l2videodec.c: + v4l2videodec: Initialise ioctl struct with zeroes before passing it to ioctl() + +2014-04-16 13:47:43 +0200 Marc Leeman <marc.leeman@gmail.com> + + * gst/udp/gstudpsrc.c: + udpsrc: correct LOG msg for -1 + Signed-off-by: Marc Leeman <marc.leeman@gmail.com> + +2014-04-15 21:36:30 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/interleave/interleave.c: + interleave: Fix negotiation to work at all again + The caps query handling function for the sinkpads was called for + the srcpad, and the sinkpads had none. This commit moves it to the + right pad, but nonetheless the negotiation still looks wrong. + This makes the test pass again after the recent coverity fix + and also allows interleave to work again, but someone should + really review the negotiation code and fix it. + +2014-04-13 09:03:41 +0200 Edward Hervey <edward@collabora.com> + + * sys/oss4/oss4-audio.c: + oss4: Maximum number of channels support is 8 + Avoids doing potential overwrites in ch_layout (which only has 8 + fields). + CID #1139826 + +2014-04-12 22:16:37 +0200 Sebastian Dröge <sebastian@centricular.com> + + * sys/osxvideo/osxvideosink.m: + osxvideosink: Set rank to MARGINAL + If available we prefer using glimagesink over osxvideosink. It supports + more formats and in general has more features than osxvideosink. + +2014-04-11 18:19:49 +0200 Josep Torra <n770galaxy@gmail.com> + + * gst/rtp/gstrtph264depay.c: + rtph264depay: only guess AU boundaries when aren't indicated by marker + The marker bit isn't mandatory and we had in place code to guess AU + boundaries by detecting a new picture start. This guessing code + didn't work with interlaced content that has proper marker bits + to indicate the AU boundaries. It was leaking the first field buffer + and producing a corrupted output. + fixes: https://bugzilla.gnome.org/show_bug.cgi?id=728041 + +2014-04-10 10:38:19 -0300 Rafał Mużyło <galtgendo@o2.pl> + + * ext/libpng/gstpngdec.c: + pngdec: enable libpng interlaced picture handling + Makes libpng deinterlace Adam7 interlaced pictures + by default. It is the only interlaced format available + and if the picture isn't interlaced the code should behave + as before. + https://bugzilla.gnome.org/show_bug.cgi?id=726161 + +2014-04-11 13:27:42 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Only keep-alive the connection in stop() if we have finished all previous messages + After cancelling a request we need to create a new connection. + +2014-04-11 11:54:12 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/dv/gstdvdec.c: + dvdec: Don't set bogus timestamp/duration + This will happen if we have an incoming stream with a non-TIME segment + Could be improved later to figure out proper pts/duration. + CID #1199702 + CID #1199703 + +2014-04-11 11:53:42 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/dv/gstdvdec.c: + dvdec: Properly refuse incoming stream without framerate + The return value wasn't properly propagated back if the caps + didn't contain a framerate + +2014-04-10 16:35:28 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Also retry on unexpected network failures + +2014-04-10 15:45:41 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: New property to specify the maximum number of retries before we give up + +2014-03-13 10:56:11 +0100 Alexander Zallesov <zallesov@gmail.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Change default timeout to 15 seconds + If nothing happens after 15 seconds, chances are good that + our connection will never will work. Stop after 15 seconds + instead of waiting until the system's default timeout, which + can be > 1 minute. + +2014-04-09 17:30:54 +0900 Jimmy Ohn <yongjin.ohn@lge.com> + + * gst/isomp4/qtdemux.c: + qtdemux: replace duplicated variable when parsing trex atom + https://bugzilla.gnome.org/show_bug.cgi?id=727878 + +2014-04-09 10:56:29 +0200 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Use GST_FLOW_FLUSHING when flushing, not GST_FLOW_EOS + ... and reset it properly after flushing is done. Fixes playback + in many cases when buffering is used. + https://bugzilla.gnome.org/show_bug.cgi?id=727821 + +2014-04-09 08:58:04 +0200 Sebastian Dröge <sebastian@centricular.com> + + * gst/isomp4/qtdemux.c: + qtdemux: Properly return stream flags when parsing trex atom + https://bugzilla.gnome.org/show_bug.cgi?id=727867 + +2014-03-19 19:18:11 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * sys/osxvideo/osxvideosink.h: + * sys/osxvideo/osxvideosink.m: + osxvideosink: use the video frame API instead of the video meta API + https://bugzilla.gnome.org/show_bug.cgi?id=726738 + +2014-03-19 18:47:39 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * sys/osxvideo/osxvideosink.m: + osxvideosink: advertize video meta API support + https://bugzilla.gnome.org/show_bug.cgi?id=726737 + +2014-04-08 11:31:06 +0200 Edward Hervey <edward@collabora.com> + + * gst/interleave/interleave.c: + interleave: Add missing break in switch statement + The caps query is handled entirely already before. + CID #1139757 + +2014-04-06 18:03:11 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * tests/check/elements/souphttpsrc.c: + tests: souphttpsrc: use SoupKnownStatusCode if needed + From libsoup docs: + Prior to 2.44 SoupStatus was called SoupKnownStatusCode, + but the individual values have always had the names they + have now. + Fixes: + https://bugzilla.gnome.org/show_bug.cgi?id=727329 + +2014-04-07 12:58:23 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: use frames, not bytes, for position query in VBR streams + Coverity 1139648 + +2014-04-07 12:42:14 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/smpte/gstsmpte.c: + smpte: fix copy/paste error causing unmap on wrong buffer + Coverity 1139647 + +2014-04-07 12:16:17 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: guard against finding no suitable pattern + The code handles a -1 pattern index, and it seems plausible + that a pattern might be found later, so it seems best to not + send an element error here. + Coverity 1139766 + +2014-04-04 17:38:14 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: update for new MIKEY API + +2014-04-03 17:40:01 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: send sender SSRC in the MIKEY message + Allocate a new SSRC for our RTCP messages back to the server and set + this in the MIKEY message. + +2014-04-03 17:39:30 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: make random number for the CSB + As recommended in the RFC + +2014-03-26 12:10:44 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: don't put spaces in keymgmt header + +2014-03-25 17:47:49 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: create and send the RTCP encryption key + Create and make a key for encrypting the RTCP packets back to the server + and wrap this in a MIKEY message that we send as a header in the SETUP + request. + +2014-04-03 12:18:39 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: free the srtpdec element + +2014-04-03 12:16:25 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: cleanup stream_free function + There is no reason to NULL all fields, we will free the stream anyway. + +2014-04-03 12:07:31 +0200 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: demote warning to debug + For TCP, it is normal that we don't have timestamps so don't WARN on + it. + +2014-03-29 19:13:06 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2src.c: + v4l2: Fix support for caps without width, height, framerate or format + For format like mpegts, width and height is rarely in the negotiated caps. This + patch fixes failure when setting format, and prevent introducing width, height, + framerate and format to the caps when fixating. + https://bugzilla.gnome.org/show_bug.cgi?id=725860 + +2014-03-31 18:34:13 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst/avi/gstavidemux.c: + * gst/avi/gstavidemux.h: + avidemux: Always set PTS=DTS on raw video streams + +2014-03-31 18:31:22 +0200 Thibault Saunier <tsaunier@gnome.org> + + * gst/avi/gstavidemux.c: + avidemux: Always set pixel-aspect-ratio on raw video streams + That field is mandatory in caps and if it is not present in the + AVI container, it means square pixels thus 1/1. + +2014-03-30 00:35:07 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/matroska/matroska-mux.c: + matroska-mux: add mapping for Opus audio + Might want to consider adding channels/rate + requirement to template caps, but requires + fixing up of encoder and parser first. + +2014-03-30 00:31:11 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.h: + matroska-demux: add mapping for Opus audio codec + https://bugzilla.gnome.org/show_bug.cgi?id=727305 + +2014-03-29 17:21:17 -0400 William Manley <will@williammanley.net> + + * sys/v4l2/gstv4l2object.c: + v4l2src: Fix support for mpegts streams + It seems that GStreamer's mpegts elements (tsdemux, tsparse) require caps + `video/mpegts,systemstream=true`. As far as I can see the significance + of systemstream is to indicate that this is a container format rather than + an elementary stream. As this is the case (and I can't understand how it + could not be the case with mpegts) I add systemstream=true to v4l2src's + caps. + This allows v4l2src to be linked with tsdemux for playback from my + Hauppauge HD-PVR with the pipeline: + v4l2src ! queue ! tsdemux ! video/x-h264 ! decodebin ! xvimagesink + In combination with the next commit this fixes using Hauppauge HD-PVR with + GStreamer 1.0+. + +2014-01-14 14:48:42 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * sys/v4l2/v4l2_calls.c: + v4l2: attempt to fix infinite (for small version of infinite) loop + +2014-03-29 13:20:30 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpmanager: copy sticky events when exposing pads in more places + https://bugzilla.gnome.org/show_bug.cgi?id=724712 + +2014-03-28 20:11:36 +0100 Rico Tzschichholz <ricotz@ubuntu.com> + + * sys/v4l2/Makefile.am: + v4l2: fix distcheck + Make sure ext/*.h are dist'ed + +2014-03-27 19:51:50 +0000 Tim-Philipp Müller <tim@centricular.com> + + * sys/ximage/gstximagesrc.c: + ximagesrc: only extrapolate alpha mask for 32-bit depth + Instead of passing bogus alpha mask values when there's no alpha. + https://bugzilla.gnome.org/show_bug.cgi?id=726833 + +2014-03-21 13:03:17 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/ximage/gstximagesrc.c: + ximagesrc: Add ARGB/BGRA support + +2014-03-20 15:28:26 +0100 Ognyan Tonchev <ognyan@axis.com> + + * gst/rtp/gstrtpjpegpay.c: + jpegpay: consider header len when calculating payload len + Fixed https://bugzilla.gnome.org/show_bug.cgi?id=726777 + +2014-03-26 08:03:22 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: All frames are sync points + +2014-03-26 08:02:43 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/libpng/gstpngdec.c: + pngdec: All frames are sync points + +2014-03-22 17:07:46 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/matroska/matroska-demux.c: + matroskademux: segment closing not needed in 1.x + ... as sender should keep track of segment base accumulation. + Rather, it may have some adverse effects as a spurious segment event, + e.g. in collectpads. + +2014-03-22 17:05:17 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/matroska/matroska-demux.c: + matroskademux: early sending pending codec-data for all streams + ... at least before syncing across all streams might cause some gap + activity on any of those streams, notably sparse streams. + See also #712134 + +2014-03-22 17:01:27 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/matroska/matroska-mux.c: + matroskamux: handle both sticky and non-sticky custom event + +2014-03-25 11:44:27 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: only expose streams on dataflow + Only probe on buffers, we don't want to expose the streams on events. + +2014-03-25 11:36:40 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtsp/gstrtspsrc.c: + rtspsrc: copy sticky events to ghostpad + When we expose internal pads as ghostpads, first copy the sticky events + so that we have the caps and segment etc. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724712 + +2014-03-24 14:25:43 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: srtp handling + +2014-03-25 10:23:00 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: set SSRC on caps if known + +2014-03-24 16:58:25 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: put caps on udpsrc instead of using the signals + Try to avoid using the request-pt-map to get caps but set them directly + on the udpsrc element. That way, the caps get nicely transformed as they + pass through the different elements in the rtpbin, including the AUX and + decoder/encoder elements. + +2014-03-24 15:35:09 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: use profile to set rtcp caps + Use the negotiated profile to set x-rtcp or x-srtcp caps + +2014-03-24 15:34:26 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: set udpsrc to READY + READY is enough to allocate ports now + +2014-03-24 14:25:28 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/udp/gstudpsrc.c: + udpsrc: improve caps handling + Protect caps with the lock. + Don't push the caps event from the set_property function but mark the + pad for reconfiguration so that it will renegotiate and push the new + caps event in the streaming thread. + +2014-03-24 15:15:34 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/udp/gstudpsrc.c: + udpsrc: open/close socket in NULL<->READY state + We should open the socket when going to NULL<->READY and not in the + start/stop vemthod, which is called in READY<->PAUSED. This makes it + possible to allocate a socket without going to PAUSED (and starting the + negotiation). + +2014-03-24 14:35:01 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: free caps in ptmap array + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726696 + +2014-03-20 11:12:51 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: handle NULL rtpmap and parse error better + +2014-03-16 23:46:22 -0400 Olivier Crête <tester@tester.ca> + + * configure.ac: + configure: Don't check for gudev if video4linux2 is not present + +2014-03-16 23:19:55 -0400 Olivier Crête <tester@tester.ca> + + * configure.ac: + configure: Don't fail if gudev is not present + PKG_CHECK_MODULES has the bad habit of failing the build if it doesn't + get what it wants, prevent that. + +2012-11-02 13:33:13 +0100 Olivier Crête <olivier.crete@collabora.com> + + * configure.ac: + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2devicemonitor.c: + * sys/v4l2/gstv4l2devicemonitor.h: + v4l2: Implement GstDeviceMonitor subclass + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2013-08-12 11:49:21 -0400 Olivier Crête <olivier.crete@collabora.com> + + * ext/pulse/Makefile.am: + * ext/pulse/plugin.c: + * ext/pulse/pulsedevicemonitor.c: + * ext/pulse/pulsedevicemonitor.h: + pulse: Add device monitors + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2014-03-16 19:24:26 -0400 Olivier Crête <tester@tester.ca> + + * sys/v4l2/gstv4l2object.c: + v4l2: Remove GstPropertyProbe leftovers + +2014-02-19 03:04:03 +0100 Mathieu Duponchelle <mduponchelle1@gmail.com> + + * gst/videomixer/videomixer2.c: + * gst/videomixer/videomixer2.h: + videomixer: Port to new collectpads API + See: https://bugzilla.gnome.org/show_bug.cgi?id=724705 + +2014-03-16 15:26:04 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/ext/types-compat.h: + * sys/v4l2/ext/videodev2.h: + v4l2: Add types compatiblity for other OS + Adds type compatiblity with other OS like BSD. This uses types mapping macro to + avoid conflict with existing defined types. We resuse glib types as these are + already available on supported platforms. This is GCC only because of the + le32 type that uses bitwise attribute. + https://bugzilla.gnome.org/show_bug.cgi?id=726453 + +2014-03-16 15:55:00 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/pulse/pulseutil.c: + pulse: fix format info to caps conversion for mulaw + +2013-08-13 12:10:42 -0400 Olivier Crête <olivier.crete@collabora.com> + + * ext/pulse/pulsesink.c: + * ext/pulse/pulseutil.c: + * ext/pulse/pulseutil.h: + pulse: Make gst_pulse_format_info_to_caps() shared + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2014-03-15 18:41:16 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/Makefile.am: + v4l2: Fix typo V4L_DIR intead of V4L2_DIR + +2014-03-15 18:05:32 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * configure.ac: + v4l2-build: Set HAVE_GST_V4L2 if headers are present + The name of HAVE_ need to match the USE_. Now set HAVE_GST_V4L2 if + videodev2.h is found. + +2014-03-15 16:47:51 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * configure.ac: + * sys/Makefile.am: + v4l2: Actually build the plugin + The checks were removed inadvertedly in previous patch and not replaced. + Re-introduce the configure checks and some of the checks in order to enable + this plugin again. We only check if videodev2.h exist on the platform to + avoid building on Windows or OSX, though we build against our own copy. This + was breaking the build on built-bot. + +2014-03-15 13:47:42 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/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: + translation: PO file changes caused by POTFILE.in update + +2014-03-15 13:17:21 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * configure.ac: + * po/POTFILES.in: + * po/POTFILES.skip: + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2sink.c: + * sys/v4l2/gstv4l2src.c: + * sys/v4l2/gstv4l2videooverlay.c: + * sys/v4l2/gstv4l2videooverlay.h: + v4l2: Remove XV support + XV support for v4l2 never became upstream and ended up being + commented out with an undef for a long time now. + +2014-03-15 11:13:05 +0100 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * configure.ac: + * gst-plugins-good.spec.in: + * sys/Makefile.am: + * sys/v4l2/ext/v4l2-common.h: + * sys/v4l2/ext/v4l2-controls.h: + * sys/v4l2/ext/videodev2.h: + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2vidorient.c: + * sys/v4l2/v4l2_calls.c: + * tests/icles/Makefile.am: + v4l2: Use a copy of videodev2.h header + With years the amount of ifdef have grown up and we are not even sure if the + old code path compiles. Each time we need to update the v4l2 framework to add + the new feature, we break compilation on older kernel. With exception of two + controls in the video orientation control, this patch get rid of all ifdef by + including the latest version of videodev2.h inside GStreamer. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723446 + +2014-03-12 15:32:55 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: Add properties for selecting SSL/TLS certificate checking + And by default properly check certificates against the system's CA + certificates. Everything else is not a good default at all. + +2014-03-11 14:56:30 +0100 Per x Johansson <perxjoh@axis.com> + + * gst/matroska/matroska-demux.c: + matroskademux: fix assert on fps lower than 1 + Fixes assert caused by gst_duration_to_fraction calling + gst_util_uint64_scale_int with a denominator of 0 when fps is less + than 1. + https://bugzilla.gnome.org/show_bug.cgi?id=726106 + +2014-03-11 00:46:06 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/videomixer/videomixer2.c: + videomixer2: store video info with buffers to keep it in sync + Instead the queued buffer might have an old caps while the pad + is already storing the information for a new caps. Mixing those + while handling buffers will often lead to issues + https://bugzilla.gnome.org/show_bug.cgi?id=725948 + +2014-03-08 19:29:58 -0500 William Manley <will@williammanley.net> + + * sys/v4l2/v4l2_calls.c: + v4l2: Fix typo contol -> control + https://bugzilla.gnome.org/show_bug.cgi?id=725632 + +2014-03-04 01:15:49 +0000 William Manley <will@williammanley.net> + + * sys/v4l2/v4l2_calls.c: + v4l2: Normalise control names in the same way as v4l2-ctl + V4L2 kernel drivers allow configuration of the hardware settings via a + mechanism called controls. These can be referred to by name such as + "Brightness" and "White Balance Temperature". The user-space command line + client for setting these controls (v4l2-ctl) normalises these names such + that they only contain lower case alphanumeric characters and the + underscore '_'. e.g: + Kernel v4l2-ctl + ---------------------------------------------------- + Brightness brightness + White Balance Temperature white_balance_temperature + Focus (absolute) focus_absolute + GStreamer seems to want to follow this pattern but failed for controls with + more than one consecutive non-alphanum character. e.g. GStreamer would + produce "focus__absolute_" rather than "focus_absolute". + This commit fixes that issue. Backwards compatibility is preserved by + normalising all control names before comparison. + https://bugzilla.gnome.org/show_bug.cgi?id=725632 + +2014-03-07 16:17:29 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Make sure to not return EOS immediately if we finished a range request + Only return EOS the next time create() is called, if at all. basesrc + should already take care of not calling it again. + Also always return immediately if the previous flow return was + not OK. This indicates an error somewhere. + +2014-03-06 12:06:43 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst/rtp/gstrtpamrdepay.c: + * gst/rtp/gstrtpilbcdepay.c: + * gst/rtp/gstrtpsirendepay.c: + * gst/rtp/gstrtpspeexdepay.c: + rtp: Remove caps restrictions from RTP depayloader sink caps + Remove caps restrictions that correspond to the default and are not + required in SDP. With the new usage of having pads require a subset + of the caps, they will make the negotiation fail. + +2014-03-06 11:02:09 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst/rtp/gstrtpspeexdepay.c: + rtpspeexdepay: Remove caps restrictions for depayloader + The "encoding-params" is optional in the SDP, because we now require + a subset of the caps, it would fail caps negotiatioin if it wasn't present. + So removed it from the template caps. + +2014-03-06 13:38:09 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Don't forget to quit mainloop after we cancelled when we got data after the stop position + +2014-03-06 13:35:47 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: If we had a stop position, allow for the server to finish our connection instead of just cancelling + Otherwise keep-alive does not make much sense and also the server will have + confusing things in the logs. + +2014-03-06 12:24:01 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: skip streams with same control url + Keep track of what streams we did the SETUP for. We only need to + configure caps, wait for pads and push events on setup streams. We can + remove the disabled state of the stream and simplify some checks. + After we setup a stream, skip the other streams that have the same + control url. Use a skipped flag to mark streams that should be skipped. + +2014-03-06 12:22:47 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: remove obsolete code + +2014-03-05 16:19:19 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: just use the SDP index as the stream id + Use the index of the media stream in the SDP as the stream id instead of + keeping a separate counter. + +2014-03-05 13:35:19 +0100 Thijs Vermeir <thijsvermeir@gmail.com> + + * sys/osxvideo/cocoawindow.m: + * sys/osxvideo/osxvideosink.m: + osxvideo: fix build on Mac OSX Mavericks and put new window in front + GetCurrentProcess/SetFrontProcess/TransformProcessType was deprecated + and now removed in Mac OSX 10.9. orderFrontRegardless is used to make + the video window the most front window. + +2014-03-05 17:33:56 +0100 Christian Fredrik Kalager Schaller <uraeus@linuxrising.org> + + * gst-plugins-good.spec.in: + Add docs directory to spec file + +2014-03-05 15:44:25 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: handle NULL control urls better + +2014-03-05 14:28:26 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpsession.c: + session: small cleanups + It's nicer to explicitly check for NULL on pointer types to make it + clear that it's a pointer and not a boolean. + +2014-03-05 14:26:02 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpsession.c: + session: handle unknown SSRC in FIR + https://bugzilla.gnome.org/show_bug.cgi?id=725712 + +2014-03-05 11:39:09 +0100 Alessandro Decina <alessandro.d@gmail.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: fix seeking + Call gst_rtspsrc_connection_flush (src, FALSE) to reset connections as + non-flushing before sending PAUSE and PLAY with the new npt range. Without this + patch, those commands would fail with EINTR as the connections were still + flushing. + +2014-03-03 16:39:26 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/avi/gstavidemux.c: + * gst/avi/gstavidemux.h: + avidemux: expose xsub as a subtitle instead of as a video + It is placed inside a 'vids' struct, so it was being exposed on + a pad named video_%d. XSUB are subtitles and this patch adds + an special case for it to be exposed in a subpicture_%d pad + +2014-03-03 16:38:45 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/avi/gstavidemux.c: + avidemux: do not try to add a tag with tag_name set to NULL + This can happen if there are subtitles in the stream, leading to + an assertion + +2014-03-04 16:40:34 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: Add support for multiple payload types + A media stream can have multiple payload types. Parse all the payload + types and collect the caps information. We then have to store the + pt<->caps mapping instead of 1 pt and 1 caps. + Parse the profile from the SDP and use that to negotiate the transport + instead of always using AVP. + Rework how we do some tweaks for ASF and Realmedia. + +2014-03-04 11:34:39 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: refactor payload handling + +2014-03-03 11:34:00 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpjitterbuffer.c: + jitterbuffer: fix buffer level with invalid DTS + It is possible that the DTS is invalid (when we receive RTP packets from + TCP, for example). As a fallback, use the reconstructed PTS value to + calculate the buffer level. + +2014-03-02 05:10:13 +0100 Sebastian Rasmussen <sebras@hotmail.com> + + * .gitignore: + .gitignore: Ignore gcov intermediate files + https://bugzilla.gnome.org/show_bug.cgi?id=725480 + +2014-02-28 09:34:46 +0100 Sebastian Dröge <sebastian@centricular.com> + + * common: + Automatic update of common submodule + From fe1672e to bcb1518 + +2014-02-27 23:15:04 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/audioparsers/gstaacparse.c: + Revert "aacparse: put codec data on caps for loas format" + This reverts commit e459cf3e01a08f1a3ef1fb954a41cfa36b3e510c. + This was pushed by accident, the bug should likely be fixed in + libav https://bugzilla.libav.org/show_bug.cgi?id=644 + +2014-02-27 18:55:04 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: mark all parsed frames as sync points + all jpeg frames are sync points, so mark them as such so + reverse playback can properly work with the video decoder + base class + https://bugzilla.gnome.org/show_bug.cgi?id=725104 + +2014-02-25 01:12:05 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/audioparsers/gstaacparse.c: + aacparse: put codec data on caps for loas format + gst-libav audio decoder also needs codec data for LOAS format, otherwise + it will complain about not having a decoder config and skip all packets + https://bugzilla.gnome.org/show_bug.cgi?id=596772 + +2014-02-27 00:43:48 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/matroska/matroska-demux.c: + matroskademux: align raw audio memory to powers of two + https://bugzilla.gnome.org/show_bug.cgi?id=725008 + +2014-02-27 00:37:20 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/matroska/matroska-demux.c: + matroskademux: calculate alignment properly for audio depths not a multiple of 8 + +2014-02-23 19:09:24 +0100 Matej Knopp <matej.knopp@gmail.com> + + * gst/matroska/matroska-demux.c: + matroskademux: fix crash with 24-bit raw audio + Do not try to align audio buffers to odd numbers, + which will get us a NULL buffer which we then + crash on. + https://bugzilla.gnome.org/show_bug.cgi?id=725008 + +2014-02-27 00:11:42 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtpmanager/Makefile.am: + rtpmanager: re-enable -Werror + +2014-02-27 00:11:11 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: fix compiler warning + gstrtpjitterbuffer.c: In function 'gst_rtp_jitter_buffer_loop': + gstrtpjitterbuffer.c:2978:3: error: 'result' may be used uninitialized in this function + while (result == GST_FLOW_OK); + ^ + +2014-02-26 22:11:41 +0100 Stefan Sauer <ensonic@users.sf.net> + + * common: + Automatic update of common submodule + From 1a07da9 to fe1672e + +2014-02-26 21:11:23 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: Fix uninitialized variable compiler warning + +2014-02-26 07:32:32 -0500 Jake Foytik <jake.foytik@ipconfigure.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: Remove raw comparisons of RTP sequence numbers + Several conditional statements perform comparison on RTP sequence + numbers without taking the sequence number rollover into account. + Instead, use the gst_rtp_buffer_compare_seqnum function to perform the + comparison. + https://bugzilla.gnome.org/show_bug.cgi?id=725159 + +2014-02-03 01:44:21 +0100 Sebastian Rasmussen <sebras@hotmail.com> + + * tests/check/Makefile.am: + tests: Don't build disabled plugins' check tests + https://bugzilla.gnome.org/show_bug.cgi?id=723502 + +2014-02-26 11:29:45 +0100 Stefan Sauer <ensonic@users.sf.net> + + * docs/Makefile.am: + docs: install prebuilt plugin docs if gtk-doc is disabled + Sync to the Makefile.am from gst-plugin-base where it is done right. + Fixes #725034 + +2014-02-25 16:10:54 -0500 Hugues Fruchet <hugues.fruchet@st.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: do not emit "parsed" caps for vp8 + VP8 doesn't require parsing (vp8parse doesn't exist, so negotiation with demux fails + if "parsed" is set in caps). + https://bugzilla.gnome.org/show_bug.cgi?id=724636 + +2014-02-11 16:27:08 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2: Don't require parser for VP8 + Until GStreamer has one (see bug722760), we should not require a parser for VP8. + https://bugzilla.gnome.org/show_bug.cgi?id=722128 + +2014-02-10 17:08:25 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/v4l2_calls.c: + v4l2: CAPTURE_MPLANE is well tested now + https://bugzilla.gnome.org/show_bug.cgi?id=722128 + +2013-12-18 09:56:35 +0100 Benjamin Gaignard <benjamin.gaignard@linaro.org> + + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2videodec.c: + * sys/v4l2/gstv4l2videodec.h: + v4l2videodec: Create one element per device + For each videoCdevice probe it input/output capabilities + if it match with video decoder requirement register a new element. + Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> + https://bugzilla.gnome.org/show_bug.cgi?id=722128 + +2013-12-19 15:26:52 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2videodec.c: + v4l2videodec: Calculate latency from device information + Decoders or other devices that expose a minimum buffers required produce + an first output. We use this information to calculate latency. + https://bugzilla.gnome.org/show_bug.cgi?id=722128 + +2013-11-28 17:14:18 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2videodec.c: + * sys/v4l2/gstv4l2videodec.h: + * sys/v4l2/v4l2_calls.c: + v4l2videodec: Implement v4l2videodec + Implement an element that can driver V4L2 M2M decoder device. + https://bugzilla.gnome.org/show_bug.cgi?id=722128 + +2014-02-11 12:41:29 +0100 Göran Jönsson <goranjn@axis.com> + + * gst/rtp/gstrtph264pay.c: + rtph264pay: only update last_spspps time if all sps/pps got sent successfully + This fixes an issue with gst-rtsp-server where no sps and pps are + sent for the first intra frame, because the payloader starts working + already when receiving DESCRIBE but there is no transports so it tries + to send sps and pps, but that fails with a FLUSHING flow. But the time + for last sent sps and pps would still be set, so when PLAY arrives and + the first intra frame is to be sent there is no sps and pps sent due to + that time since last sps pps is less than spspps_interval. + https://bugzilla.gnome.org/show_bug.cgi?id=724213 + +2014-02-25 09:00:45 +0100 Santiago Carot-Nemesio <sancane@gmail.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: Fix deadlock when task creation is no successful + https://bugzilla.gnome.org/show_bug.cgi?id=725124 + +2014-02-22 20:19:49 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/autodetect/gstautodetect.c: + autodetect: demote candidate error to warning and plug fake{sink,src} + In the case where we have no suitable candidate we post a warning and plug a + fake-element. Do the same when non of the candidate work. + This is more consistent and plugin the fakesink as a fallback is probably + helpful for running unit tests without requiring hardware src/sink elements. + Fixes #722981 + +2014-02-23 12:34:48 +0100 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * sys/v4l2/v4l2_calls.c: + v4l2: make some more controls configurable + ... at least if one tries hard enough using extra-controls property. + +2014-02-23 10:39:20 +0100 Dan Kegel <dank@kegel.com> + + * configure.ac: + v4l2: Require mplanar support for now in configure + The code fails to compile without currently, see + https://bugzilla.gnome.org/show_bug.cgi?id=723446 + It's better to disable it instead of failing compilation + until this is fixed properly. + +2014-02-23 00:14:04 +0100 Stefan Sauer <ensonic@users.sf.net> + + * ext/jack/gstjackaudioclient.c: + jack: add some simple log handlers for jack + Add log handlers for jack that write to the gst debug log. This avoids spamming + the console when e.g. using autoaudiosink, having the jack elements installed, + but not running jack. + +2014-02-22 21:31:21 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * sys/v4l2/v4l2_calls.c: + v4l2src: handle old and odd driver behaviour when listing controls + +2013-11-28 16:54:58 -0800 Darryl Gamroth <dgamroth@uvic.ca> + + * gst/audiofx/audiofxbaseiirfilter.c: + audiofxbaseiirfilter: check if coefficients are provided inside filter lock + https://bugzilla.gnome.org/show_bug.cgi?id=719524 + +2014-02-21 19:46:44 +0000 Tim-Philipp Müller <tim@centricular.com> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2src: also unset INTERLACED flag on buffers if frame is not interlaced + https://bugzilla.gnome.org/show_bug.cgi?id=724899 + +2014-02-21 14:31:59 +0000 Simon Farnsworth <simon.farnsworth@onelan.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2src: Flag interlaced buffers as interlaced. + We correctly indicate the field ordering on interlaced buffers, but fail to + flag them as containing interlaced video, which we need to do here because + we signal interlace-mode=mixed in our caps. This means that downstream + elements (like vaapipostproc from gstreamer-vaapi) don't recognise these + buffers as in need of deinterlacing. + Fix this by setting the interlaced flag on all interlaced buffers. + Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk> + https://bugzilla.gnome.org/show_bug.cgi?id=724899 + +2014-02-19 13:56:37 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * gst/audioparsers/gstaacparse.c: + aacparse: be more strict at ADTS header parsing + Adds two extra checks: + - Sampling frequency on header can't be 15. + - Frame size should be at least 9 or 7, depending + on whether CRC protection is present. + https://bugzilla.gnome.org/show_bug.cgi?id=724638 + +2014-02-19 13:35:59 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * gst/audioparsers/gstaacparse.c: + aacparse: make sure we have enough ADTS data + We need at least 6 bytes to pass over to _get_frame_len() + but we were just checking for a minimum of 2 bytes for the + syncword. + https://bugzilla.gnome.org/show_bug.cgi?id=724638 + +2014-02-20 22:52:57 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/autodetect/gstautodetect.c: + * gst/autodetect/gstautodetect.h: + autodetect: check if the kid has a sync property + previously autovideosrc did not have a sync property and v4l2src has none either. + +2014-02-19 21:55:52 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/autodetect/gstautoaudiosink.c: + * gst/autodetect/gstautoaudiosink.h: + * gst/autodetect/gstautoaudiosrc.c: + * gst/autodetect/gstautoaudiosrc.h: + * gst/autodetect/gstautodetect.c: + * gst/autodetect/gstautodetect.h: + * gst/autodetect/gstautovideosink.c: + * gst/autodetect/gstautovideosink.h: + * gst/autodetect/gstautovideosrc.c: + * gst/autodetect/gstautovideosrc.h: + autodetect: use a common baseclass + This makes the actual elements super simple. We're using the ELEMENT_FLAG to + configure source/sink and a string for the Audio/Video type. + +2014-02-14 17:14:42 -0800 Aleix Conchillo Flaqué <aleix@oblong.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: add tls-database property + Add support for a new property: tls-database. If the property is set, + the certificate database will be given to the rtsp connection if TLS + protocol is being used. If the server certificate can't be verified with + the default database, this additional database will be used. + https://bugzilla.gnome.org/show_bug.cgi?id=724396 + +2014-02-19 22:21:54 +0100 Thijs Vermeir <thijsvermeir@gmail.com> + + * sys/osxaudio/gstosxaudioringbuffer.c: + * sys/osxaudio/gstosxaudiosink.c: + osxaudio: remove unused variables + +2014-02-19 21:26:03 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/autodetect/gstautoaudiosink.c: + * gst/autodetect/gstautoaudiosrc.c: + * gst/autodetect/gstautodetect.c: + * gst/autodetect/gstautodetect.h: + * gst/autodetect/gstautovideosink.c: + * gst/autodetect/gstautovideosrc.c: + autodetect: extract common helper code + The function to generate the pretty names is basically the same. Use one and add + a parameter. + +2014-02-19 21:01:39 +0100 Stefan Sauer <ensonic@users.sf.net> + + * tests/check/Makefile.am: + * tests/check/elements/autodetect.c: + autodetect: improve the tests + Add fake audio/video sinks. Previously running the test might be flaky due to + the use of real elements (hardware in use), which we don't want to test here. + Add two more tests that check that the fakes are chosen. + +2014-02-19 15:19:30 +0100 Branislav Katreniak <bkatreniak@nuvotechnologies.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: do not emit error when connection with unknown size ends + Commit 46fd12ae5ec53200b16dfd7f17048d6bc60fbfbc introduced connection + recovery. But when server does not specify content-size, + souphttpsrc tries to reconnect even after regular end of stream. + Http server replies with SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE + but souphttpsrc still emits error instead of EOS. + https://bugzilla.gnome.org/show_bug.cgi?id=724717 + Signed-off-by: Branislav Katreniak <bkatreniak@nuvotechnologies.com> + +2014-02-19 11:26:22 +0100 Stefan Sauer <ensonic@users.sf.net> + + * tests/check/elements/autodetect.c: + autodetect: fix the disabled test + Use a shared helper for both tests. It turns out that the valgrind variant is + fine (maybe due to picking up pulsesink though). + +2014-02-19 11:05:35 +0100 Stefan Sauer <ensonic@users.sf.net> + + * tests/check/elements/autodetect.c: + autodetect: remove cruft from the test + Remove the obsolete version check and use the ignore macro for the disabled test. + +2014-02-18 22:54:45 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/audiofx/audiofirfilter.c: + * gst/audiofx/audioiirfilter.c: + * gst/level/gstlevel.c: + * gst/spectrum/gstspectrum.c: + docs: use docbook markup for xi:include + It turns out that the change in gtk-doc-1.20 which wraps the |[]| content in + CDATA break xi:inlcude examples. As in a whole jhbuild checkout these where + the only 4, we're fixing them instead. + +2014-02-18 22:35:45 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/isomp4/gstqtmux-doc.h: + isomp4mux: fix copy and paste + This fixes doc warnings. + +2014-02-18 21:44:24 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/debugutils/gstcapssetter.c: + * gst/isomp4/gstqtmux-doc.c: + * gst/isomp4/gstqtmux.c: + * gst/level/gstlevel.c: + * gst/replaygain/gstrganalysis.c: + * gst/replaygain/gstrgvolume.c: + docs: use the gtk-doc syntax to link to properties + Don't use docbook unless needed. Also stip other docbook tags in the the files we fix. + +2014-02-18 11:28:18 +0100 Stefan Sauer <ensonic@users.sf.net> + + * ext/pulse/pulsesink.c: + pulsesink: fix crash when getting the current-device in NULL->READY + The "goto unlock" is wrong as in this code path we haven't take the lock yet. + Fixes #724619 + +2014-02-14 22:50:49 +0100 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + soup: We need libsoup >= 2.40 for proper usage of the content decoder + Previous versions did not consider our chunk allocator and allocated + memory by themselves, which caused crashes and broken behaviour. + +2014-02-14 15:27:20 -0500 William Jon McCann <william.jon.mccann@gmail.com> + + * gst/audiofx/audiocheblimit.c: + * gst/udp/gstudpsrc.c: + docs: fix mismatched para tags + newer gtkdoc is more sensitive to mismatched docbook tags. + This fixes the build in master. + +2014-02-14 15:59:46 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: add support for serialized queries + See https://bugzilla.gnome.org/show_bug.cgi?id=723850 + +2014-02-14 15:53:55 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/souphttpsrc.c: + tests: fix typecast to fix compilation + +2014-02-14 12:01:00 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpsession.c: + rtpsession: proxy caps and allocation on RTP pads + recv_rtp_sink: allow proxying of the allocation query. + send_rtp_sink: allow proxying of caps and allocation. This allows us to + query caps downstream as well as get an allocator from downstream. + send_rtp_src: allow proxy of caps, this makes the caps query do + upstream. + See https://bugzilla.gnome.org/show_bug.cgi?id=723850 + +2014-02-13 12:29:13 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: handle tags in mac encoding + Check the charset from (C)*** tags and set the charset + to convert from MAC encoding if suitable. + https://bugzilla.gnome.org/show_bug.cgi?id=723166 + +2014-02-13 12:09:13 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Use new automatic_eos API from basesrc + We want to notice ourselves that we're EOS. Otherwise we will + always cancel requests in the very end and confuse the server... + and also make it impossible to use persistent connections. + +2014-02-13 11:11:13 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Consistently use have_size instead of content_size!=0 + +2014-02-13 10:30:09 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Free extra headers when finalizing the element + It's set as property by the application, we should not just reset + properties when going back to READY. + +2014-02-13 10:28:13 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Properly close the session when going back to NULL + Don't wait for that until the element is disposed. + +2013-02-28 12:20:52 +0100 Andoni Morales Alastruey <ylatuya@gmail.com> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: add support for keep-alive sessions + https://bugzilla.gnome.org/show_bug.cgi?id=699926 + +2014-02-12 13:00:13 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: Add "compress" property to enable/disable automatic gzip/deflate content encoding handling + +2014-02-12 12:39:10 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Retry connection if we're finished before the content size only if we actually have a content size + https://bugzilla.gnome.org/show_bug.cgi?id=722185 + +2014-02-12 10:08:50 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouputils.c: + souputils: Fix compiler warning + gstsouputils.c:35:25: error: comparison of constant 9 with expression of type + 'SoupLoggerLogLevel' is always false + [-Werror,-Wtautological-constant-out-of-range-compare] + +2014-01-07 23:00:56 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/soup/Makefile.am: + * ext/soup/gstsoup.c: + * ext/soup/gstsouphttpclientsink.c: + * ext/soup/gstsouphttpclientsink.h: + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + * ext/soup/gstsouputils.c: + * ext/soup/gstsouputils.h: + souphttp*: add ability to do HTTP session logging + This changeset adds the loggin infrastructure and + mods both souphttpsrc and souphttclientsink to use it. + https://bugzilla.gnome.org/show_bug.cgi?id=721764 + +2014-02-07 14:00:15 +0100 divhaere <dirk.vanhaerenborgh@ugent.be> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-mux.c: + matroska: add support for GRAY8, BGR and RGB video colourspaces in V_UNCOMPRESSED codec + https://bugzilla.gnome.org/show_bug.cgi?id=723849 + +2014-02-11 13:25:46 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Add mapping for NOT_FOUND and NOT_AUTHORIZED errors + +2014-02-11 13:25:22 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Don't duplicate status_code to GStreamer error mapping + +2014-02-09 23:38:44 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/goom/filters.c: + * gst/goom2k1/filters.c: + goom: Remove unused functions + +2014-02-09 23:21:20 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-parse.c: + matroskaparse: Comment out some unused functions used only from the commented out pull-mode code + +2014-02-08 21:01:32 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/taglib/gstid3v2mux.cc: + id3v2mux: Fix another compiler warning + +2014-02-08 17:43:32 +0100 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/souphttpsrc.c: + souphttpsrc: Fix implicit enum conversion compiler warning + error: implicit conversion from enumeration type + 'SoupStatus' to different enumeration type 'SoupKnownStatusCode' + +2014-02-08 17:41:21 +0100 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/interleave.c: + interleave: Fix unitialized variable compiler warning in test + error: variable 'mask' is used uninitialized + whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] + +2014-02-08 17:27:51 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/taglib/gstid3v2mux.cc: + id3v2mux: Fix unitialized variable compiler warning + error: variable 'image_type' is used uninitialized + whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] + +2014-02-08 17:25:27 +0100 Sebastian Dröge <sebastian@centricular.com> + + * sys/oss4/oss4-audio.h: + oss4: Fix typo in header include guard + error: 'GST_OSS4_AUDIO_H' is used as a header guard here, + followed by #define of a different macro [-Werror,-Wheader-guard] + +2014-02-08 17:24:06 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: Fix unitialized variable compiler warning + variable 'rtx_ssrc' is used uninitialized whenever + 'if' condition is false [-Werror,-Wsometimes-uninitialized] + +2014-02-08 17:21:19 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtpac3depay.c: + rtpac3depay: Remove unused variable + +2014-02-08 17:19:19 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/flx/flx_fmt.h: + flx: Fix typo in header include guard + error: '__GST_FLX_FMT__H__' is used as a header guard here, + followed by #define of a different macro [-Werror,-Wheader-guard] + +2014-02-07 10:07:41 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmux.h: + qtmux: remove have_dts flag from pads + It was used in the past in 0.10 when there was no explicit DTS + field in buffers, now we have it in 1.x series and we can + check it directly with GST_BUFFER_DTS_IS_VALID + +2014-02-07 01:49:26 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmux.h: + qtmux: improve support for sparse streams + Do not try to use subsequent buffer timestamps to calculate + sparse streams durations because the stream is sparse and + the buffers might not be 'time adjacent'. So rely on the + duration and give the option to the pad to provide + custom 'empty' buffers to represent the gaps in the + stream, this can vary on how the data is represented. + Right now, the only sparse stream supported is tx3g subtitles. + +2014-02-06 12:15:22 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmuxmap.c: + qtmux: add support for text/x-raw subtitles + Adds it to mp4mux, qtmux and gppmux. + Buffers need to be prefixed with 2 bytes for the text length before + being muxed. + https://bugzilla.gnome.org/show_bug.cgi?id=581295 + +2014-02-06 12:09:01 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/atoms.c: + * gst/isomp4/atoms.h: + * gst/isomp4/fourcc.h: + qtmux: add support for the TX3G atoms + Adds functions for creating and setting values related to the + tx3g atom for raw text subtitle support. + QTFF spec has information on those atoms + https://bugzilla.gnome.org/show_bug.cgi?id=581295 + +2014-02-05 10:27:54 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/gstqtmux.c: + * gst/isomp4/gstqtmux.h: + * gst/isomp4/gstqtmuxmap.c: + * gst/isomp4/gstqtmuxmap.h: + qtmux: add subtitle support to qtmuxmap structures + adds basic stubs for subtitle support around the qtmux and + qtmuxmap structures. Still no real subtitle implemented, but + basic functions in place + https://bugzilla.gnome.org/show_bug.cgi?id=581295 + +2014-01-20 17:31:14 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.c: + * gst/matroska/matroska-ids.h: + * gst/matroska/matroska-parse.c: + * gst/matroska/matroska-read-common.c: + * gst/matroska/matroska-read-common.h: + matroska: factor out read context init/reset + While at this, move _track_reset() to track-ids + so it can be called from the common read context + reset routine. + https://bugzilla.gnome.org/show_bug.cgi?id=722705 + +2014-02-06 12:21:07 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/effectv/gstrev.c: + effectv: fix doc section of revtv element + +2014-02-05 12:46:54 +0100 Edward Hervey <bilboed@bilboed.com> + + * sys/osxvideo/Makefile.am: + osxvideo: Fix libtool usage + --tag=CC is needed for static build + +2014-01-16 11:26:41 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: do not try set deinterlace method if passthrough is enabled + Fixes an issue with progressive content and unsupported video formats + for the deinterlace method. + https://bugzilla.gnome.org/show_bug.cgi?id=719636 + +2014-02-04 21:26:56 +0100 Tim-Philipp Müller <tim@centricular.com> + + * ext/flac/gstflacenc.c: + flacenc: order format in template caps by preference + To minimise risk of bad fixation, though audioconvert + at least should be smart enough to avoid it. + +2014-02-02 09:57:03 -0800 Dan Kegel <dank@kegel.com> + + * configure.ac: + v4l2: Remove obsolete definition GST_V4L2_MISSING_BUFDECL + The only use was removed by 9edc0c0365f79ab07ff2e65461c6696e3931a3f0 + https://bugzilla.gnome.org/show_bug.cgi?id=723446 + +2014-02-04 13:43:56 +0100 Rafał Mużyło <galtgendo@o2.pl> + + * ext/flac/gstflacdec.c: + * ext/flac/gstflacenc.c: + * gst/cutter/gstcutter.c: + gst: Don't use endianness-specific S8 audio format + It does not exist. + https://bugzilla.gnome.org/show_bug.cgi?id=723331 + +2014-01-31 14:17:54 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * ext/cairo/gstcairooverlay.c: + cairooverlay: add support for RGB16 + https://bugzilla.gnome.org/show_bug.cgi?id=723289 + +2014-01-30 09:43:50 +0100 Per x Johansson <perxjoh@axis.com> + + * gst/matroska/matroska-mux.c: + * gst/matroska/matroska-mux.h: + matroskamux: Fix constantly growing used uid list + Moves the used uid list to the class to avoid having it grow forever. + https://bugzilla.gnome.org/show_bug.cgi?id=723269 + +2014-01-30 10:44:05 +0100 Edward Hervey <bilboed@bilboed.com> + + * common: + Automatic update of common submodule + From d48bed3 to 1a07da9 + +2014-01-24 01:52:08 +0000 Mike Sheldon <elleo@gnu.org> + + * gst/wavparse/gstwavparse.c: + wavparse: Ignore Broadcast Wave Format (BWF) tags when searching for 'fmt' chunk + https://bugzilla.gnome.org/show_bug.cgi?id=723125 + +2014-01-29 10:37:53 +0100 Edward Hervey <bilboed@bilboed.com> + + * tests/check/elements/rtpaux.c: + check: Use fakesink sync=True instead of an audio sink + Ensures the test can run on systems without alsa (or any audio output for + that matter), and will avoid people running build slaves wondering what + the hell was beeping during the night :) + +2014-01-27 20:05:42 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/audioparsers/gstac3parse.c: + ac3parse: custom get_sink_caps handling for private stream caps + ... now that those are transformed rather than parsed, some transforming + of caps is required as well to make auto-plugging succeed. + +2014-01-25 02:06:00 -0500 Ryan Lortie <desrt@desrt.ca> + + * sys/v4l2/v4l2_calls.c: + v4l2: guard use of ENODATA with #ifdef + Not all systems with v4l have ENODATA defined, so check that we have it + before attempting to use it. + https://bugzilla.gnome.org/show_bug.cgi?id=722953 + +2014-01-24 12:37:39 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + Revert "rtspsrc: Proxy rtpjitterbuffer do-retransmission property" + This reverts commit 9f7b1128b1f00a2b87a232ff890867549ab95ba5. + This should be handled automatically be rtspsrc if the AVPF profile + is used, and manual enabling of it can be done with the new-manager + signal. + +2014-01-24 10:21:11 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: add signal to notify of new manager + So that you can configure and connect to signals on the rtpbin. + See https://bugzilla.gnome.org/show_bug.cgi?id=722866 + +2014-01-23 15:17:58 -0800 Aleix Conchillo Flaqué <aleix@oblong.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: Proxy rtpjitterbuffer do-retransmission property + https://bugzilla.gnome.org/show_bug.cgi?id=722866 + +2014-01-21 17:52:44 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: handle expected packet being an RTX packet + If the expected packet (do_next_seqnum is TRUE) is the one we requested + for retranmission earlier, do the logic to update the retransmission + statistics as well before setting up the timers for the next expected + packet. + Also reset the retransmission counter if the timer is reused for another + seqnum. + +2014-01-21 15:48:20 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: add a caps accumulator for the request-pt-map signal + Add an accumulator that stops the signal emission as soon as a caps has + been retrieved. Otherwise the default handler would continue emitting + the signal and possibly overwrite the result with NULL again. + +2014-01-21 15:25:54 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + rtxreceive: copy flags and timestamps from original buffer + +2014-01-21 15:24:52 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: ignore invalid timestamps in rtt calculation + When the input buffer does not have a valid timestamp, don't try to + calculate the round-trip-time. + +2014-01-16 14:23:13 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-parse.c: + * gst/matroska/matroska-read-common.c: + * gst/matroska/matroska-read-common.h: + matroskaparse: better default caps when none set + Uses information gathered during EBML parsing to + forge a more suitable set of caps instead of blindly + assuming everything is video/x-matroska. + For consistency, stream type reset was added to + matroska-demux too. + https://bugzilla.gnome.org/show_bug.cgi?id=722311 + +2014-01-15 17:29:35 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests: rtprtx::test_rtxreceive_data_reconstruction: remove useless code for triggering retransmission + There is no need anymore to push yet another buffer in rtxsend + in order to trigger the previously requested retransmissions + to actually happen. + +2014-01-15 17:27:19 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests: rtprtx::test_rtxreceive_data_reconstruction: fix race condition + Now with rtprtxsend pushing rtx buffers from a different thread, + this is necessary to ensure that the result of the test is deterministic. + This code makes use of GstCheck's global GMutex and GCond that are + being used inside GstCheck's sink pad chain() function in order + to synchronize with it. + +2014-01-15 17:17:57 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests: rtprtx::test_rtxsender_packet_retention: fix race condition + Now with rtprtxsend pushing rtx buffers from a different thread, + this is necessary to ensure that the result of the test is deterministic. + This code makes use of GstCheck's global GMutex and GCond that are + being used inside GstCheck's sink pad chain() function in order + to synchronize with it. + +2014-01-15 11:26:33 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests: rtprtx::test_push_forward_seq: fix race condition + Now with rtprtxsend pushing rtx buffers from a different thread, + this is necessary to ensure that the result of the test is deterministic. + This code makes use of GstCheck's global GMutex and GCond that are + being used inside GstCheck's sink pad chain() function in order + to synchronize with it. + +2014-01-15 09:47:03 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests: rtprtx::test_push_forward_seq: fix buffer refcounting + +2014-01-21 13:42:38 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: ensure that no rtx buffers are sent after EOS + To do that, enqueue the EOS event to be sent from the srcpad task + thread and flush the queue right afterwards, so that no more rtx + buffers can be sent, even if there are more requests coming in. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=722370 + +2014-01-15 09:46:14 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + rtprtxsend: run a new GstTask on the src pad + The reason behind this is to minimize the retransmission delay. + Previously, when a NACK was received, rtprtxsend would put a + retransmission packet in a queue and it would send it from chain(), + i.e. only after a new buffer would arrive. + This unfortunately was causing big delays, in the order of 60-100 ms, + which can be critical for the receiver side. + By having a separate GstTask for pushing buffers out of rtxsend, + we can push buffers out right after receiving the event, without + waiting for chain() to get called. + +2014-01-03 17:47:55 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/shout2/gstshout2.c: + * ext/shout2/gstshout2.h: + shout2send: error out if no caps were received + Instead of assuming that input is ogg. + +2014-01-03 17:30:12 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/shout2/gstshout2.c: + shout2send: accept audio/webm, audio/ogg and video/ogg as well + Those are advertised in the template caps, but the + setcaps handler didn't handle them. But then oggmux + and oggparse at least for now still always output + application/ogg anyway, so that wasn't a real problem. + +2014-01-20 10:12:45 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtpvp8pay.c: + rtpvp8pay: Don't leak input buffers + https://bugzilla.gnome.org/show_bug.cgi?id=722414 + +2014-01-19 17:40:56 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/avi/gstavimux.c: + avimux: reset some more audio pad data when needed + +2014-01-19 17:38:59 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/avi/gstavimux.c: + * gst/avi/gstavimux.h: + avimux: write correct blockalign for vbr audio + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720659 + +2014-01-16 17:36:12 -0800 Aleix Conchillo Flaqué <aleix@oblong.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: do not drop serialized events when latency is set + Serialized events are now queued in the jitter buffer, so we don't + want to drop them even latency is set. + https://bugzilla.gnome.org/show_bug.cgi?id=722372 + +2013-12-11 09:36:22 +0100 Michael Olbrich <m.olbrich@pengutronix.de> + + * gst/avi/gstavimux.c: + avimux: don't make the buffer writable unless absolutely necessary + https://bugzilla.gnome.org/show_bug.cgi?id=722396 + +2013-09-12 16:56:56 +0200 Michael Olbrich <m.olbrich@pengutronix.de> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2: set GST_BUFFER_FLAG_DELTA_UNIT when appropriate + https://bugzilla.gnome.org/show_bug.cgi?id=722394 + +2014-01-17 07:46:09 +0100 Michael Olbrich <m.olbrich@pengutronix.de> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: don't ref the newly created allocator + Otherwise the allocator will never be deleted. + https://bugzilla.gnome.org/show_bug.cgi?id=712612 + +2014-01-15 22:47:12 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-demux.c: + matroskademux: Don't skip all video frames until the first keyframe + Instead do it like all other demuxers and let parsers and decoders + handle that. The keyframe information inside the container might + be completely wrong like in the sample file of the bug report, + and if it is correct and we push no keyframes, then the parsers + and decoders will handle that properly anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=682276 + +2014-01-13 10:08:09 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: remove elst_offset variables + They are not used anymore + +2014-01-06 21:36:17 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: remember reverse playback when verifying the segment end + Check if the rate is positive or negative to correctly compare the current + position with the segment to make reverse playback work + +2014-01-03 10:59:35 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: do not ignore empty segments + Make sure empty segments are used and pushed with a gap event + to represent its data (or lack of it) + Each QtSegment is mapped into a GstSegment with the corresponding + media range. For empty QtSegments a gap event is pushed instead + of GstBuffers and it advances to the next QtSegment. + To make this work with seeks, need to keep track of the starting + 'base' to make sure it remains consistently increasing when + pushing new segment events. + For example: if a seek makes qtdemux start from 5s, the first + segment will have a base=0. When the next segment is activated, + its base time will be QtSegment.time - qtdemux.segment_base so + that it doesn't include the first 5s that weren't played and + shouldn't be accounted on the running time + This purposedly will remove the fix made for + https://bugzilla.gnome.org/show_bug.cgi?id=700264, at this + point it was decided to respect the gaps, even if they cause + a delay on playback, because that's the way the file was crafted. + https://bugzilla.gnome.org/show_bug.cgi?id=345830 + +2013-12-12 23:05:43 -0500 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/elements/rtprtx.c: + tests: Remove usage of the system clock from the rtprtx test + +2013-12-12 23:22:41 -0500 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/elements/rtpcollision.c: + tests: Initial segment in rtpcollision test + +2014-01-14 15:56:42 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/examples/rtp/client-rtpaux.c: + * tests/examples/rtp/server-rtpaux.c: + examples/*-rtpaux: specify payload type association for the audio stream, so that rtx works also for audio + +2014-01-14 13:08:18 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: remove wrong check for payload type not having been set + 1) pt can be lower than 96 + 2) there is no point in checking that because rtprtxsend will not + even store buffers for payload types that it doesn't know about, + so this case will never be reached + +2014-01-14 13:01:41 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: fix data locking when creating rtx packets + This patch moves the creation of rtx packets to be done early, + in the src_event() function, when they are requested. The purpose + is to run gst_rtp_rtx_buffer_new() with the object locked to + protect internal data, because if it is done at the pushing stage, + we would have to lock and unlock multiple times in a row while we + are pushing the rtx buffers. + Previously there was no locking at all, which was terribly wrong. + +2014-01-14 12:50:23 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: lock access to internal data in sink_event() function + +2014-01-14 12:44:06 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: remove unnecessary call to reset() from finalize() + ...and use _free_full() on the pending buffers queue now that + reset() is not being called + +2014-01-14 12:38:51 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: remove unused parameter from the internal reset() method + +2014-01-14 12:32:38 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: Use g_slice_* for allocating internal structures + +2014-01-14 12:28:01 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + rtprtxreceive: remove stupid mutex unlock in the middle of chain() + +2014-01-14 12:25:36 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + rtprtxreceive: use GST_DEBUG_OBJECT / GST_WARNING_OBJECT instead of GST_DEBUG / g_warning + +2014-01-14 12:19:58 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + rtprtxreceive: fix integer format specifiers in GST_DEBUG + seqnum in this function is 32-bit, so G_GUINT16_FORMAT would + produce undefined output on big endian systems + +2014-01-14 12:13:49 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + rtprtxsend: change the rtx_pt_map directly in set_property() instead of delaying it for chain() + The same lock is held, so there is no point in complicating it... + +2014-01-14 12:07:58 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + * gst/rtpmanager/gstrtprtxreceive.h: + rtprtxreceive: change the rtx_pt_map directly in set_property() instead of delaying it for chain() + The same lock is held, so there is no point in complicating it... + +2014-01-14 11:55:00 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + rtprtxreceive: simplify the code of finalize() + +2014-01-14 11:52:21 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + * gst/rtpmanager/gstrtprtxreceive.h: + rtprtxreceive: use the GstObject lock instead of a new one + +2014-01-14 11:45:52 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + rtprtxsend: use the GstObject lock instead of a new one + +2013-12-10 14:29:55 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2object.c: + v4l2: Add NV12_64Z32 support + https://bugzilla.gnome.org/show_bug.cgi?id=722127 + +2014-01-14 19:08:49 +0900 Justin Joy <justin.joy.9to5@gmail.com> + + * sys/oss/gstosshelper.c: + osshelper: Don't leak fd when getting card name + https://bugzilla.gnome.org/show_bug.cgi?id=722163 + +2014-01-14 09:43:33 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/audioparsers/gstaacparse.c: + Revert "aacparse: relax the detection of ADTS" + This was pushed by mistake along with the V4L2 fix. + This reverts commit 8eb4b032bef444397c4d211f2095c173ba114187. + +2014-01-14 15:42:01 +0900 Justin Joy <justin.joy.9to5@gmail.com> + + * gst/rtp/gstrtpg726pay.c: + rtpg726pay: don't leak encoding_name string + https://bugzilla.gnome.org/show_bug.cgi?id=722159 + +2014-01-13 09:14:00 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * sys/v4l2/v4l2_calls.c: + v4l2: fix build break using V4L2_CAP_VIDEO_M2M_MPLANE + This may not be defined. Since the previous version used + only the other define (V4L2_CAP_VIDEO_OUTPUT_MPLANE), fall + back on this only when not available. + +2013-02-27 01:45:52 +0900 Akihiro Tsukada <atsukada@users.sourceforge.net> + + * gst/audioparsers/gstaacparse.c: + aacparse: relax the detection of ADTS + According to ISO/IEC 13818-7, "channel_config" field in ADTS header + may have value of 0, as in the case of frame with PCE. + gst_aac_parse_detect_streams() returned FALSE for those frames + and discarded them. + +2014-01-07 11:58:23 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: check set_config return value in gst_v4l2_buffer_pool_new + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2014-01-10 12:40:31 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Add parsed=1 field for encoded output + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2014-01-10 12:39:16 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't leak empty caps + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2014-01-08 16:51:21 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: do not stop a stream not previously started + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-12 16:27:21 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't enforce dimension field on encoded formats + Don't enforce having width, height and framerate in template caps for encoded + formats. These don't always need to be exposed and may break negotiation for + decoder and decoding sink. If needed, these field will be automatically added + when probed caps are known. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-12 17:09:59 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + v4l2object: unref downstream pool + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-18 13:37:23 -0500 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2bufferpool.h: + v4l2bufferpool: add gst_v4l2_buffer_pool_flush + STREAMOFF set all v4l2buffers to DEQUEUE state. + Then for CAPTURE we call QBUF on each buffer. + For OUTPUT the buffers are just push back in the GstBufferPool + base class 's queue. + But the loop actually looks like the same. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-16 17:29:30 -0500 Benjamin Gaignard <benjamin.gaignard@linaro.org> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Add vp8 support + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-12 16:46:09 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't force framerate field for OUTPUT + If there is nothing that seems to force a certain framerate on output device, it is + preferable to simply not set that feild. This allow negotiation with tsdemux in a + decoder for example. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-12 14:07:03 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: _v4l2fourcc_to_structure() can be static + This function is not used anymore outside v4l2object. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-12 14:22:26 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Add MPEG1/2 support + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-12 12:18:45 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Ask for a decent buffer size when dealing with encoded formats + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-07 14:03:53 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: On warn on size change if n_planes > 1 + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-31 16:38:09 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + v4l2object: check if translated format is valid + Also add a FIXME in gst_v4l2_object_setup_format + to note that the whole function has to be improved + in order to support ENCODED formats. + It requires to have an encoder device which we do not + have right now. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-07 10:31:15 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Validate returned dimensions + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 19:36:25 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Ensure max is not smaller then min in decide_allocation + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 19:36:06 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't keep the max paramter when using our own pool + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 19:34:44 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Respect the suggested min buffer + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 18:48:44 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Allocate pool if needed in decide_allocation + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 18:49:19 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Add V4L2_CID_MIN_BUFFERS_FOR_CAPTURE support + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 18:48:15 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2src.c: + v4l2: Move decide allocation into v4l2object + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-05 13:51:13 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: Implement _setup_format() + This method allow setting up the object from the currently configured format on the + device. This is useful for M2M element where input data decides the format that will + be set on capture side. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-10 14:34:17 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Split out saving format from set_format() + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-31 15:37:26 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + v4l2object: set only one plane for encoded format + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-04 16:49:13 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Move code block where it belongs + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-04 16:26:12 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't check format specific information + The number of plane, and the stride does not represent a capability change. Same caps + can have different stride from the default GstVideoInfo and the number of planes will + never change for 1 format. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-04 16:23:18 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2object.c: + v4l2object: Move the extrapolation of stride at the right place + Now that we have a stride array, we should extrapolate only when + eeded (non multi-planar buffer). + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-04 15:09:44 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Move back assertions where they should be + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-04 15:09:10 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Move mplane logic into gst_v4l2_object_get_caps_info() + It makes the gst_v4l2_object_set_format() slightly simplier and will make that + logic reusable. Note that gst_v4l2_object_has_mplane() will always return the + same value for one device. There is no need to check against the caps as this + has already been done by _open. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-03 18:27:47 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: Split _v4l2fourcc_to_video_format + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-02 18:05:11 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: Request buffers only once + VIDIOC_REQBUFS allocates buffer, it has no place inside set_config. Also, some driver do + no allow multiple calls to this ioctl. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-02 15:26:50 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Don't validate dimension for encoded format + We set the dimensions just in case but don't validate them + afterwards. For some codecs the dimensions are *not* in the + bitstream, IIRC VC1 in ASF mode for example. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-11-28 17:10:29 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: Quirks for dev without initial format + Most M2M have undefined behaviour initially when VIDIOC_G_FMT is called. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-11-28 17:09:26 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: Add gst_v4l2_object_open_shared() + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-11-28 17:07:05 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/v4l2_calls.c: + * sys/v4l2/v4l2_calls.h: + v4l2object: Implement gst_v4l2_dup() + This will duplicated the FD from another object and copy over the probed result. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-11-28 16:59:59 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: make IO_MODE enum public + This is to allow adding a second io-mode property on M2M device like decoder so + input and output can be controlled separatly. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-06-04 23:42:24 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/v4l2_calls.c: + v4l2: better handle quirks activation + This way we can activate deactivate those quirks all at once at one + place. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-06-04 23:34:04 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + v4l2: Fix h264 caps + V4L2_PIX_FMT_H264 is documentated as byte-stream (with start code). The ensure proper + negotiation with element like h264parse. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2013-12-06 14:44:51 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + v4l2object: Split caps in different categories + This is need to correctly expose capabilities on specialized devices + like decoders and encoders. + https://bugzilla.gnome.org/show_bug.cgi?id=720568 + +2014-01-10 14:16:00 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/matroska/matroska-read-common.c: + matroskademux: don't leak TOC chapter list + +2014-01-10 08:52:16 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-mux.c: + matroskamux: remove obsolete write-dummy-and-overwrite-on-eos code + The need for rewriting apparently is obsolete 0.10 leftover. + We now have caps for subtitles when we create the headers, + so we always write the correct data in the first place. + +2014-01-09 23:55:16 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: remove duplicate assignment + Coverity CID 1151680 + +2014-01-09 18:25:04 +0000 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> + + * gst/matroska/matroska-mux.c: + matroskamux: write subtitle codec ID and data at start when known + This avoids issues with writing dummy data first, then having + to come back and write correct data later. Doing so prevents + the muxed stream from being actually streamable. + https://bugzilla.gnome.org/show_bug.cgi?id=712134 + +2014-01-09 17:32:15 +0100 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + configure: Include AvailabilityMacros.h for osxvideo check + Otherwise MAC_OS_X_VERSION_MIN_REQUIRED might not be defined + +2014-01-09 11:56:31 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/atoms.c: + * gst/isomp4/atoms.h: + qtmux: respect the HDLR box string format for mov and isomedia + Mov spec says it uses a pascal style string, while isomedia uses + a null terminated one. Store the current atoms flavor into the HDLR + to be able to generate the correct output. + https://bugzilla.gnome.org/show_bug.cgi?id=705982 + +2014-01-08 11:28:04 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/matroska/matroska-mux.c: + Revert "matroskamux: Use the running time for container timestamps, not buffer timestamps" + This reverts commit b3aa8755fe07639f22e4104f4932d769d6c9075a. + We are already using the running-time because they were placed on the + buffers with gst_collect_pads_clip_running_time(). Arguably it would be + better to not modify the incomming buffers but collectpads seems to want + to use absolute timestamps from the buffers for finding the best buffer + (this can be changed with a custom compare function..). + +2014-01-08 10:41:24 +0100 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + configure: Fix AC_COMPILE_IFELSE usage + +2014-01-08 10:31:18 +0100 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + osxvideosink: Improve configure check for OSX >= 10.6 + https://bugzilla.gnome.org/show_bug.cgi?id=721245 + +2014-01-07 12:13:51 -0800 Aleix Conchillo Flaqué <aleix@oblong.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: remove unused list of decoders + remove list of decoders, which are already handled by the list of elements. + https://bugzilla.gnome.org/show_bug.cgi?id=719938 + +2014-01-08 09:46:55 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-mux.c: + matroskamux: Error out if ADPCM caps don't contain the layout field + +2014-01-03 15:25:23 +0100 Nicola Murino <nicola.murino@gmail.com> + + * gst/matroska/matroska-mux.c: + matroskamux: Add support for g726 ADPCM + https://bugzilla.gnome.org/show_bug.cgi?id=720995 + +2014-01-07 15:04:02 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: use new method to get media-type + Use the new method to get the media type of a transport. + +2014-01-06 21:12:17 +0100 Stefan Sauer <ensonic@users.sf.net> + + * tests/check/elements/wavparse.c: + wavparse: split the test + This way one failure won't shadow the other test and also if one fails we get + better disgnostics through the test-name. + +2014-01-06 14:54:46 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-mux.c: + matroskamux: Add HEVC / h265 support + +2014-01-06 14:54:38 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.h: + matroskademux: Add HEVC / h265 support + +2014-01-06 13:36:38 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/wavparse/gstwavparse.c: + wavparse: remove ifdef'ed code + We do have adtl and cue parse as part of toc handling alreday. The fmt code is a left over from <0.10 times. + +2014-01-06 13:32:58 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/avi/gstavidemux.c: + * gst/wavparse/gstwavparse.c: + avidemux, waveparse: more logging for unhandled chunks + Always print a warning with the tag and if possible do a memdump. + +2014-01-05 22:47:42 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/avi/gstavidemux.c: + avidemux: expose 'strn' - stream name - as title tag + +2014-01-05 22:41:24 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/avi/gstavidemux.c: + avidemux: parse fuji strd + We can get maker, model and capture date from this chunk. + Fixes #636143 + +2014-01-05 21:46:33 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/avi/gstavidemux.c: + avidemux: ... and use the local api both times + +2014-01-05 21:38:14 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/avi/gstavidemux.c: + avidemux: copy the riff api for ncdt into the element + This chunk is avi specific, no need to expose this as public api. + +2014-01-05 10:28:21 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-mux.c: + matroskamux: Add missing semicolon from last commit + +2014-01-05 10:22:37 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-mux.c: + matroskamux: Use the running time for container timestamps, not buffer timestamps + Buffer timestamps have no real meaning here, and for selecting the next + buffer we already use the running time anyway. + +2014-01-04 21:34:38 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/avi/gstavidemux.c: + avi: use new riff api to extract nikon metadata + Fixes #636143 + +2013-11-01 16:41:43 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * docs/plugins/Makefile.am: + * docs/plugins/gst-plugins-good-plugins-docs.sgml: + * docs/plugins/gst-plugins-good-plugins-sections.txt: + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.hierarchy: + * docs/plugins/inspect/plugin-rtpmanager.xml: + rtprtxsend/rtprtxreceive: generate gtk doc + +2013-12-02 11:26:09 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + test/check: Verify rtprtxsend::ssrc-map property works as expected + +2013-11-29 19:35:44 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxreceive.c: + * gst/rtpmanager/gstrtprtxreceive.h: + * tests/check/elements/rtpaux.c: + * tests/check/elements/rtprtx.c: + * tests/examples/rtp/client-rtpaux.c: + rtprtxreceive: modify to use a payload-type map like rtprtxsend + +2013-11-29 19:58:26 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: do not keep history of packets with an unknown payload type + This allows to disable retransmission per payload type by not putting + a certain payload type in the map. + +2014-01-02 15:18:52 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + * tests/check/elements/rtpaux.c: + * tests/check/elements/rtpcollision.c: + * tests/check/elements/rtprtx.c: + * tests/examples/rtp/server-rtpaux.c: + rtprtxsend: Allow SSRC-multiplexing and multiple payload types in the original stream + Conflicts: + tests/examples/rtp/server-rtpaux.c + +2013-11-25 15:00:45 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: Add an rtx-ssrc property to allow external control of the ssrc + This is useful when one needs to know the SSRC beforehands, so that it can + be used for SRTP for example. + +2013-11-13 15:11:35 -0500 Torrie Fischer <torrie.fischer@collabora.co.uk> + + * tests/examples/rtp/.gitignore: + * tests/examples/rtp/Makefile.am: + * tests/examples/rtp/client-rtpaux.c: + * tests/examples/rtp/server-rtpaux.c: + examples: rtp: Add end-to-end rtpbin example with RTX elements + This example demonstrates how to use rtpbin with retransmission (rtx) + elements set in the place of rtpbin's "aux" elements in order to + enable RTP retransmission according to the rules of RFC4588. + +2013-11-05 17:35:01 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * docs/design/Makefile.am: + * docs/design/design-rtpauxiliary.txt: + doc: add design-rtpauxiliary.txt to describe how rtpbin deals with auxiliary elements + +2014-01-02 14:48:49 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpsession.c: + session: also push EOS event to RTCP srcpad + +2014-01-02 14:46:11 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + session: place SSRC in Retransmission event + +2013-11-01 16:57:15 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/rtpaux.c: + tests/check: add rtpaux::test_simple_rtpbin_aux + It shows how to use "set-aux-receive" and "set-aux-send" + properties of rtpbin to set rtprtxsend and rtprtxreceive + Build 2 pipelines, one for rtpbin as a sender and one for + rtobin as a receive. Then transmit an audio stream. + It also drops some packets to activate restransmission and + check they are actually retransmited. + +2013-11-01 17:09:42 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/elements/rtpcollision.c: + tests/check: add rtpcollision::test_rtx_ssrc_collision unit test + check that rtxrtpsend changes its retransmission ssrc when + collision happens + +2013-11-06 12:34:13 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests/check: add rtprtx::test_rtxreceive_data_reconstruction + This unit test verifies that retransmitted rtp packets coming out + of rtprtxreceive are the same as the original ones. + +2013-11-05 09:33:51 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: use a realistic limit for the value of max-size-packets + G_MAXINT16 is chosen because if the queue contains more than + G_MAXINT16 packets, seqnum comparison will not work properly. + +2013-11-04 20:05:03 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + rtprtxsend: use a GSequence to implement the buffer queue + This has the advantage that searching the queue to find the + buffer with the requested seqnum is done with binary search. + +2013-11-04 18:38:24 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + * tests/check/elements/rtprtx.c: + rtprtxsend: retransmit packets in the same order as the rtx requests + +2013-11-02 19:56:44 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests/check: Add unit test for rtxsend's max_size_time property + +2013-10-29 18:27:00 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + rtprtxsend: Handle the max_size_time property + This property allows you to specify the amount of buffers + to keep in the retransmission queue expressed as time (ms) + instead of buffer count (which is the max_size_buffers property). + +2013-11-02 15:21:08 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtprtxsend.c: + rtprtxsend: keep important buffer information in a private structure + This is to avoid mapping a buffer every time we need to read a seqnum + or a timestamp. + +2013-11-01 11:58:47 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtprtx.c: + tests/check: Add rtprtx::test_rtxsender_packet_retention + This unit test verifies that the rtxsend element correctly maintains + a buffer of already transmitted rtp packets and that it can + re-transmit all of them correctly on demand. It also verifies + that the limit of this buffer (max-size-packets property) is respected. + +2013-11-01 16:22:13 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/elements/rtprtx.c: + tests/check: add rtprtx::test_drop_multiple_sender unit test + Several senders / one receiver + Similar than test_drop_one_sender but with multiple senders + mixed through the funnel element. + It drops some packets and checks that they are retransmited + correctly. + +2013-11-01 16:21:00 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/elements/rtprtx.c: + tests/check: add rtprtx::test_drop_one_sender unit test + Test for one sender / one receiver + Build the pipeline + videotestsrc ! rtpvrawpay ! rtprtxsend ! rtprtxreceive ! fakesink + and drop some buffers between rtprtxsend and rtprtxreceive + Then it checks that every dropped packet has been re-sent. + It also checks that not too much requests has been sent. + +2013-11-01 16:17:51 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/rtprtx.c: + tests/check: add rtprtx::test_push_forward_seq + add simple unit test that manually push buffers + in rtprtxsend connected to rtprtxreceive. + Drops some buffers and make sure they are retransmisted. + +2013-11-01 15:52:03 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/gstrtpmanager.c: + * gst/rtpmanager/gstrtprtxreceive.c: + * gst/rtpmanager/gstrtprtxreceive.h: + * gst/rtpmanager/gstrtprtxsend.c: + * gst/rtpmanager/gstrtprtxsend.h: + rtpmanager: add new rtprtxsend / rtprtxreceive elements + The purpose of the sender RTX object is to keep a history + of RTP packets up to a configurable limit (in time). It will + listen for custom retransmission events from downstream. When + it receives a request for retransmission, it will look up the + requested seqnum in its list of stored packets. If the packet + is available, it will create a RTX packet according to RFC 4588 + and send this as an auxiliary stream. + The receiver will listen to the custom retransmission events + from the downstream jitterbuffer and will remember the SSRC1 + of the stream and seqnum that was requested. When it sees a + packet with one of the stored seqnum, it associates the SSRC2 + of the stream with the SSRC1 of the master stream. From then + on it knows that SSRC2 is the retransmission stream of SSRC1. + This algorithm is stated in RFC 4588. For this algorithm to + work, RFC4588 also states that no two pending retransmission + requests can exist for the same seqnum and different SSRCs or + else it would be impossible to associate the retransmission with + the original requester SSRC. + When the RTX receiver has associated the retransmission packets, + it can depayload and forward them to the source pad of the element. + RTX is SSRC-multiplexed + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711084 + +2013-11-05 16:36:46 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * docs/design/Makefile.am: + * docs/design/design-rtpretransmission.txt: + doc: add design for rtp retransmission + Describe how rtprtxsend and rtprtxreceive generally work + but also how the association algorithm is implemented. + +2014-01-02 20:23:05 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: use status code macro instead of 407 + Rest of the code is using the _PROXY_AUTHENTICATION_REQUIRED + macro too. Easier to understand if you don't recall HTTP + error codes by heart. + +2013-12-31 21:31:43 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/shout2/gstshout2.c: + * ext/shout2/gstshout2.h: + shout2send: change audio_format field to format + This element and the underlying libshout2 library + can handle video media files too. The code already + handles video/webm so the name gets confusing. Also + add and use DEFAULT_FORMAT macro Instead of hardwiring + SHOUT_FORMAT_VORBIS at init + https://bugzilla.gnome.org/show_bug.cgi?id=721342 + +2013-12-31 20:09:29 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/shout2/gstshout2.c: + shout2send: clarify meaning of the URL prop + https://bugzilla.gnome.org/show_bug.cgi?id=721342 + +2013-12-27 12:27:32 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * docs/plugins/Makefile.am: + * docs/plugins/gst-plugins-good-plugins-docs.sgml: + * docs/plugins/gst-plugins-good-plugins-sections.txt: + * ext/shout2/gstshout2.c: + shout2send: docs, add a sample pipeline + And finish adding shout2send to the docs while at it + https://bugzilla.gnome.org/show_bug.cgi?id=721342 + +2013-12-31 15:00:22 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/gdk_pixbuf/gstgdkpixbufoverlay.c: + gdkpixbufoverlay: remove spurious @see_also + +2013-12-06 17:08:54 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: support any video formats and any caps features if deinterlace mode allows it + https://bugzilla.gnome.org/show_bug.cgi?id=719636 + +2013-12-31 13:31:52 +0100 Sebastian Rasmussen <sebras@hotmail.com> + + * sys/v4l2/gstv4l2object.c: + v4l2: Handle v4l2_ioctl() errors even in error handling + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=721268 + +2014-01-01 12:11:43 -0800 Jeremy Huddleston Sequoia <jeremyhu@apple.com> + + * sys/osxvideo/Makefile.am: + * sys/osxvideo/osxvideosink.h: + * sys/osxvideo/osxvideosink.m: + osxvideo: unifdef -DRUN_NS_APP_THREAD + +2014-01-01 12:10:01 -0800 Jeremy Huddleston Sequoia <jeremyhu@apple.com> + + * sys/osxvideo/cocoawindow.m: + * sys/osxvideo/osxvideosink.h: + osxvideo: Assume SDK and deployment target are at least Snow Leopard + +2014-01-01 12:23:50 -0800 Jeremy Huddleston Sequoia <jeremyhu@apple.com> + + * configure.ac: + configure: Disable osxvideo on Leopard and earlier + This also moves the "other platforms" check in OS X video to before the + variable is read + https://bugzilla.gnome.org/show_bug.cgi?id=721245 + +2013-12-31 14:57:27 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpbin.c: + tests: add AUX receiver unit test + +2013-12-31 13:20:01 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpbin.c: + tests: improve rtpbin test + +2013-12-31 13:16:46 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: add some docs about AUX elements + +2013-12-31 13:01:22 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpbin.c: + tests: add AUX sender unit test + +2013-12-31 12:31:25 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + rtpbin: add support for AUX sender and receiver + AUX elements are elements that can be inserted into the rtpbin + pipeline right before or after 1 or more session elements. + The AUX elements are essential for implementing functionality such + as error correction (FEC) and retransmission (RTX). + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711087 + +2013-12-31 12:22:39 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpbin.c: + tests: add decoder test + +2013-12-30 17:36:42 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: make request_element method internally + We can use the same method to create encoder and decoder elements, they + are just internal elements that we create. + +2013-12-31 10:25:28 +0100 Stéphane Cerveau <scerveau@gmail.com> + + * gst/wavparse/gstwavparse.c: + wavparse: Skip id3 tag + Skip id3 tag during wav parse. + https://bugzilla.gnome.org/show_bug.cgi?id=721241 + +2013-12-31 10:10:05 +0100 Sebastian Dröge <sebastian@centricular.com> + + * sys/osxaudio/gstosxcoreaudio.h: + * sys/osxvideo/cocoawindow.m: + * sys/osxvideo/osxvideosink.h: + osx: Make OSX version checks more consistent + And especially also consider update versions, e.g. 10.5 with updates + will be 1051 or similar and thus bigger than MAC_OS_X_VERSION_10_5 but + still won't have the API we want to use. + +2013-12-31 10:07:22 +0100 Jeremy Huddleston <jeremyhu@freedesktop.org> + + * sys/osxvideo/osxvideosink.h: + osxvideosink: Fix build on updated OS X Leopard + https://bugzilla.gnome.org/show_bug.cgi?id=721245 + +2013-12-30 17:23:22 +0100 Edward Hervey <bilboed@bilboed.com> + + * gst/avi/gstavimux.c: + avimux: Add missing break + I guess no-one noticed we no longer could mux WMV3 ... + COVERITY CID 1139759 + +2013-12-30 17:20:37 +0100 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpvrawpay.c: + rtpvrawpay: Add missing break + COVERITY CID 1139762 + +2013-12-30 17:00:45 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: internal-ssrc is no longer deprecated + +2013-12-30 16:59:20 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: add Since tags + +2013-12-30 16:52:28 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + rtpbin: add signal for new jitterbuffer + Emit a signal when a new jitterbuffer is created so that the app can + have a chance to configure it. + +2013-12-30 16:28:57 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + * tests/check/elements/rtpbin.c: + rtpbin: handle multiple encoder instances + Keep track of elements that are added to multiple sessions and make sure + we only add them to the rtpbin once and that we clean them when no + session refers to them anymore. + +2013-12-30 15:16:09 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpbin.c: + tests: add unit test for encoder element + +2013-12-30 15:15:43 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: fix memory leaks + +2013-12-30 15:03:34 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpbin.c: + tests: fix leak + +2013-12-30 15:00:50 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: expect the pads on the encoders + Don't use request pads for the encoder elements, the signal handler + should request the pads and make sure they are available with the right + name. + +2013-12-30 14:56:07 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + rtpbin: request-rtp-encoder are no action signals + The request-rtp-encoder signals are not action signals so mark them + correctly and use an accumulator to collect the result value. + +2013-12-30 14:36:45 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/wavparse/gstwavparse.c: + wavparse: emit midi-base-note tag from data in 'smpl' chunk + Add parsing of the 'smpl' chunk. Right now we only grab the midi-base-note and + emit it as a tag. + +2013-12-26 12:05:19 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtpsession.c: + gstrtpsession: suggest upstream to use the new "internal-ssrc" after a collision + When a collision is found on the internal ssrc, we have to change it. + Ideally, we want also the payloader upstream to follow this change and use + the new internal ssrc. Ideally we want this condition to be always met: + if there is one payloader sending on this session, its ssrc should match the + internal ssrc. + +2013-12-26 11:04:29 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: allow setting internal-ssrc again + +2013-12-30 13:31:45 +0100 Edward Hervey <bilboed@bilboed.com> + + * gst/y4m/gsty4mencode.c: + y4mencode: Remove dead code + set/get property isn't used + +2013-12-30 13:30:24 +0100 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpqcelpdepay.c: + rtpqcelpdepay: Remove uneeded variable + +2013-12-05 15:53:52 -0800 Aleix Conchillo Flaqué <aleix@oblong.com> + + rtpbin: allow dynamic RTP/RTCP encoders/decoders + * gst/rtpmanager/gstrtpbin.[ch]: four new action signals have been + added (request-rtp-encoder, request-rtp-decoder, request-rtcp-encoder + and request-rtcp-decoder). The user will be able to provide encoders + or decoders dynamically. The encoders must follow the srtpenc API and + the decoders the srtpdec API. Having separate signals for RTP and RTCP + allows the user to use different encoders/decoders or provide the same + one (e.g. that would be the case for srtpenc). + Also, rtpbin now allows application/x-srtp in its pads. + https://bugzilla.gnome.org/show_bug.cgi?id=719938 + +2013-12-27 16:51:32 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: dynamically recalculate RTX parameters + Use the round-trip-time and average jitter to dynamically calculate the + retransmission interval and expected packet arrival time. + Based on patches from Torrie Fischer <torrie.fischer@collabora.co.uk> + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711412 + +2013-12-27 16:50:52 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: calculate average jitter + +2013-12-27 16:48:48 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpsession.c: + rtpsession: use RTT from the Retransmission event + Place the estimated RTT in the Retransmission event and let the session + manager use that instead of the hardcoded value. + +2013-12-27 15:57:39 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: take more accurate running-time for NACK + Don't use the current time calculated from the tmieout loop for when we + last scheduled the NACK because it might be unscheduled because of a max + packet misorder and then we don't accurately calculate the current time. + Instead, take the current element running time using the clock. + +2013-12-30 11:06:38 +0100 Sebastian Dröge <sebastian@centricular.com> + + * tests/check/elements/wavpackdec.c: + wavpackdec: Send a CAPS event in the unit test + +2013-12-27 02:14:02 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: improve mss_mode/fragmented special handling + Make it clear what should be handled purely by mss mode: + 1) Expose the streams on the first moof as there are no moov atoms + 2) Properly cleanup streams on flushes + Add a note about the meaning of upstream_newsegment and mss_mode + for future reference. + Make all other special fragment handling shared for both dash + and mss streams. + +2013-12-12 10:50:27 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: drain the adapter before pushing EOS + In a fragmented scenario, qtdemux is operating in push mode + and it gets a fragmented buffer. While processing its data + downstream gets unlinked (or a input-selector changes its + active pad and returns not-linked). Qtdemux stops processing + this fragment and returns not-linked upstream, leaving the + remaining data in its adapter. + When it gets an EOS it should make sure that all the data it + had received is pushed before pushing EOS. + +2013-12-26 23:21:47 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/shout2/gstshout2.c: + shout2send: drop IP only requirement for _set_host() + libshout2 (we require > 2.0 at config time) supports + both IP and hostname for _set_host(). Dropped an + outdated FIXME regarding this limitation, adjusted + some comments and changed the param blurb to reflect + this too. + +2013-12-26 21:43:34 -0300 Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com> + + * ext/shout2/gstshout2.c: + shout2send: Retarget FIXME to 2.0 + +2013-12-26 11:21:36 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: use aggregate control for PLAY/PAUSE/TEARDOWN + Use the aggregate control instead of the original request url to perform + PAUSE/PLAY and TEARDOWN. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=721003 + +2013-12-24 14:40:25 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/debugutils/rndbuffersize.c: + rndbuffersize: Proxy CAPS, ALLOCATION, SCHEDULING and srcpad events properly + +2013-12-24 00:43:39 +0100 Nicola Murino <nicola.murino@gmail.com> + + * gst/matroska/matroska-mux.c: + matroskamux: adpcm max block align is 8192 + +2013-12-23 12:23:27 -0600 Brendan Long <b.long@cablelabs.com> + + * configure.ac: + vp9dec: Require vpx >= 1.3.0 for building vp9dec and vp9enc + Previous versions did not have a stable bitstream for VP9. + https://bugzilla.gnome.org/show_bug.cgi?id=720986 + +2013-12-23 15:46:48 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-mux.c: + matroskamux: Use correct codec id for ADPCM/DVI + +2013-12-23 15:44:30 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-demux.c: + matroskademux: Check for the correct size of codec_data in the ACM case + +2012-01-14 19:58:17 +0100 Nicola Murino <nicola.murino@gmail.com> + + * gst/matroska/matroska-mux.c: + matroskamux: basic adpcm support + https://bugzilla.gnome.org/show_bug.cgi?id=664339 + +2013-12-20 11:45:38 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/isomp4/descriptors.c: + qtdemux: Fix calcuation of descriptor length + https://bugzilla.gnome.org/show_bug.cgi?id=720813 + +2013-12-22 22:33:39 +0000 Tim-Philipp Müller <tim@centricular.com> + + * autogen.sh: + * common: + Automatic update of common submodule + From dbedaa0 to d48bed3 + +2013-12-22 21:56:03 +0000 Tim-Philipp Müller <tim@centricular.com> + + * po/Makevars: + po: set gettext domain in Makevars so we don't have to patch the generated Makefile.in.in + https://bugzilla.gnome.org/show_bug.cgi?id=705455 + +2013-12-19 16:50:10 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/udp/gstudpsrc.c: + udpsrc: on receive error only unmap and unref buffer if one was alloced and mapped + coverity CID 1139866. + +2013-12-19 12:47:22 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/udp/gstmultiudpsink.c: + multiudpsink: fix misleading comment + Those are not allocated on the stack. + +2013-12-17 18:28:25 +0100 Sebastian Dröge <sebastian@centricular.com> + + * configure.ac: + vpx: Mark VP9 support as non-experimental + There was a libvpx release with VP9 support now and the bitstream + is frozen too. + +2013-12-15 21:04:11 -0800 Todd Agulnick <todd@agulnick.com> + + * gst/deinterlace/gstdeinterlace.c: + Some compiler warning fixes to satisfy XCode compiler + https://bugzilla.gnome.org/show_bug.cgi?id=720513 + +2013-12-16 16:17:07 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/taglib/gstid3v2mux.cc: + id3v2mux: Set picture type in the APIC frames + +2013-12-16 16:14:52 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/taglib/gstid3v2mux.cc: + id3v2mux: Set image-description from the info struct, not the caps + +2013-12-16 10:02:37 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstwavpackparse.c: + * gst/audioparsers/gstwavpackparse.h: + wavpackparse: Post AUDIO_CODEC tag + +2013-12-16 10:00:37 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstsbcparse.c: + * gst/audioparsers/gstsbcparse.h: + sbcparse: Post AUDIO_CODEC tag + +2013-12-16 09:58:31 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstflacparse.c: + * gst/audioparsers/gstflacparse.h: + flacparse: Post AUDIO_CODEC tag + https://bugzilla.gnome.org/show_bug.cgi?id=720512 + +2013-12-16 09:56:29 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstdcaparse.c: + * gst/audioparsers/gstdcaparse.h: + dcaparse: Post AUDIO_CODEC tag + +2013-12-16 09:54:38 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstamrparse.c: + * gst/audioparsers/gstamrparse.h: + amrparse: Post AUDIO_CODEC tag + +2013-12-16 09:49:48 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstac3parse.c: + * gst/audioparsers/gstac3parse.h: + ac3parse: Post AUDIO_CODEC tag + +2013-12-16 09:46:16 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstaacparse.c: + * gst/audioparsers/gstaacparse.h: + aacparse: Post AUDIO_CODEC tag + +2013-12-16 09:41:14 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audioparsers/gstmpegaudioparse.c: + mpegaudioparse: Use pbutils functionality to create the AUDIO_CODEC tag + +2013-12-13 17:36:36 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: Add error message if the app tries to set the internal-ssrc + +2013-12-13 16:08:35 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: Only count nacks when a nack packet is received + Not when any RTCP feedback packet is. + +2013-12-12 23:22:41 -0500 Olivier Crête <olivier.crete@collabora.com> + + * tests/check/elements/rtpcollision.c: + tests: Initialize segment in rtpcollision test + +2013-12-13 15:57:36 -0500 Olivier Crête <olivier.crete@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: Process PSFB FIR requests which lack the media ssrc + According to RFC 5104 section 4.3.1.2, RTCP PSFB FIR message SHALL + have a media_ssrc field set to 0. The actual media ssrc is in the FCI. + So in that case, we ignore the retained feedback and just let it through + to the rtp_session_process_fir() function which will check for the actual + SSRC inside the FCI. + Fixes a regression introduced by commit 57c27ec3 + +2013-11-14 16:19:29 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsource.c: + * gst/rtpmanager/rtpsource.h: + rtpsession: fix rb blocks disappearing after the first rtcp cycle with multiple senders + Previously, when the session had multiple internal sender SSRCs, it would + issue SR reports with RB blocks only on the first RTCP timeout and afterwards + SR reports would be sent empty. This was because the "generation" number + in RTPSource would increase more than once during the same cycle and afterwards + it would always be greater than the session's generation, which would cause + it to be skipped from being included in RBs. + This commit fixes this problem by: + 1) Increasing the RTPSource generation only at the end of each cycle, + which essentially fixes the problem but only when the internal senders + are less than GST_RTCP_MAX_RB_COUNT. + 2) Keeping for each RTPSource a set of SSRCs which stores which SSRC's + SR the given RTPSource has been reported in, which also fixes the problem + when the internal senders are more than GST_RTCP_MAX_RB_COUNT. This is + necessary because of the fact that any RTPSource is marked as reported + in itself's SR and makes it impossible to know if it has been reported + in other SRs too or not, and which. + +2013-11-14 16:23:35 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * tests/check/elements/rtpsession.c: + tests/check: add an rtpsession unit test to verify all RBs are included in all SRs, roundrobin + This test checks that when we have multiple internal sender sources + in rtpsession, SRs contain RBs for every other sender source, and that + they are included roundrobin when they exceed ST_RTCP_MAX_RB_COUNT, + which is the max number of RBs that can fit in a SR. + +2013-12-12 16:01:10 +0100 Wim Taymans <wtaymans@redhat.com> + + * docs/design/design-rtpcollision.txt: + docs: improve docs + +2013-11-05 18:03:48 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * docs/design/Makefile.am: + * docs/design/design-rtpcollision.txt: + doc: add design-rtpcollision.txt that explains when GstRTPCollision is created + It also talks about "BYE only the corresponding source, not the whole session." + +2013-11-05 12:31:54 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/elements/rtpcollision.c: + tests/check: improve rtpcollision::test_master_ssrc_collision to ensure that a collision does not BYE the whole session + Conflicts: + tests/check/elements/rtpcollision.c + +2013-11-01 17:07:57 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/rtpcollision.c: + tests/check: add rtpcollision::test_master_ssrc_collision unit test + It checks the payloader changes its ssrc when collision happens + +2013-12-12 10:38:43 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + rtpsession: keep extra stats for scheduling BYE + Keep an extra stats structure for scheduling the BYE packets. When we + decide to schedule BYE, make a copy of the current stats into the + bye_stats. Then while we schedule the BYE, update and use only the + bye_stats. When we finished scheduling the BYE packet, we use the + regular stats again. + +2013-12-12 10:34:38 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: when we schedule BYE, only deal with BYE sources + When we are doing the RTCP timeout to schedule BYE packets, don't + generate RTCP for all sources but only for the sources marked as BYE. + +2013-12-12 10:32:48 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: reset state after scheduling BYE + After we do RTCP, we are not scheduling bye anymore. + +2013-12-12 10:31:38 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: also count NACKS when no signal was pending + +2013-12-12 10:09:25 +0100 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/rtpsession.c: + session: ignore RTCP packets for the BYE sources + When we are scheduling BYE packets, ignore all RTCP for the sources that + are scheduling a BYE packet. Other sources that are not scheduling BYE + should continue receiving RTCP packets as usual. + +2013-11-04 11:48:21 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + rtpsession: determine if the session is doing point-to-point + In this case T_dither_max is set to 0 according to RFC 4585 + +2013-12-10 11:57:37 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer: serialize events in the buffer + Serialize events into the jitterbuffer by inserting them with a -1 + seqnum. + Update unit test to expect events from the streaming thread. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=652986 + +2013-12-10 11:04:06 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: detect -1 seqnum + Keep the seqnum as a full guint so that we can check for -1 entries and + deal with them correctly. + Immediately try to push -1 seqnum. + +2013-12-10 11:01:03 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpjitterbuffer.c: + rtpjitterbuffer: reorganize jitterbuffer items + Keep the oldest item at the head and the newest items on the tail. This + makes it easier to deal with -1 seqnums. + +2013-12-09 23:34:10 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + jitterbuffer: correctly check for invalid values + Check for -1 on the guint from the buffer item instead of on the guint16 + or guint32. + Also insert -1 seqnum at the head of the jitterbuffer. + +2013-12-08 16:49:55 +0100 Alessandro Decina <alessandro.d@gmail.com> + + * sys/osxvideo/cocoawindow.m: + * sys/osxvideo/osxvideosink.m: + osxvideosink: fix segfault when dealing with padded frames + Fixes crashes with vtdec ! osxvideosink where VideoToolbox outputs padded UYVY + +2013-12-05 12:15:29 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/law/mulaw-decode.c: + mulawdec: Require caps to be set before accepting any data + +2013-12-05 12:15:19 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/wavpack/gstwavpackdec.c: + wavpackdec: Require caps to be set before accepting any data + +2013-12-05 12:13:33 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/speex/gstspeexdec.c: + speexdec: Require caps to be set before accepting any data + +2013-12-05 12:13:10 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/flac/gstflacdec.c: + flacdec: Require caps to be set before accepting any data + +2013-12-05 11:42:15 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/vpx/gstvp8dec.c: + * ext/vpx/gstvp9dec.c: + vpx: Use new gst_video_decoder_set_needs_format() API + +2013-12-04 16:23:43 -0500 Olivier Crête <olivier.crete@collabora.com> + + * ext/pulse/pulsesink.c: + pulsesink: Free device_info in accepts caps + https://bugzilla.gnome.org/show_bug.cgi?id=719811 + +2013-12-04 21:57:48 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtptheorapay.c: + rtptheorapay: Don't send headers twice if we got them from the caps already + +2013-12-04 21:57:04 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtptheorapay.c: + rtptheorapay: Don't leak config data when receiving a second CAPS event + +2013-12-04 21:55:53 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtpvorbispay.c: + rtpvorbispay: Don't send headers twice if we got them from the caps already + +2013-12-04 21:54:16 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtpvorbispay.c: + rtpvorbispay: Don't leak config data when receiving a second CAPS event + +2013-12-04 21:17:03 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/Makefile.am: + * gst/rtp/gstrtp.c: + * gst/rtp/gstrtpstreamdepay.c: + * gst/rtp/gstrtpstreamdepay.h: + rtpstreamdepay: Add RFC4571 RTP stream depayloading element + https://bugzilla.gnome.org/show_bug.cgi?id=719829 + +2013-12-04 10:12:46 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/Makefile.am: + * gst/rtp/gstrtp.c: + * gst/rtp/gstrtpstreampay.c: + * gst/rtp/gstrtpstreampay.h: + rtpstreampay: Add RFC4571 RTP stream payloading element + https://bugzilla.gnome.org/show_bug.cgi?id=719829 + +2013-12-03 15:08:25 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: improve fragment-start tracking + Some buffers can have multiple moov atoms inside and the strategy + of using the gst_adapter_prev_pts timestamp to get the base timestamp + for the media of the fragment would fail as it would reuse the same + base timestamp for all moofs in the buffer instead of accumulating + the durations for all of them. + Heres a better explanation of the issue: + qtdemux receives a buffer where PTS(buf) = X + buf -> moofA | moofB | moofC + The problem was that PTS(buf) was used as the base timestamp for + all 3 moofs, causing all buffers to be X based. In this case we want + only moofA to be X based as it is what the PTS on buf means, and the + other moofB and moofC just use the accumulated timestamp from the + previous moofs durations. + To solve this, this patch uses gst_adapter_prev_pts distance + result, this allows qtdemux to calculate if it should use the + resulting pts or just accumulate the samples as it can identify + if the moofs belong to the same upstream buffer or not. + https://bugzilla.gnome.org/show_bug.cgi?id=719783 + +2013-11-21 12:29:28 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: add support for multi-planar V4l2 API in DMABUF mode + Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=712754 + +2013-11-19 17:16:27 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2bufferpool.h: + v4l2: refactor by emulating one v4l2_plane in non-MPLANE mode + so that the buffer informations can be retrieved the same way + in both MPLANE and non-MPLANE mode. + Here "emulating" means "manually fill in the plane". + Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=712754 + +2013-11-13 12:05:40 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2bufferpool.h: + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/v4l2_calls.c: + v4l2: add support for multi-planar V4L2 API + This api is in linux kernel since version 2.6.39, + and present in all version 3. + The commit that adds the API in master branch of the + linux kernel source is: + https://github.com/torvalds/linux/commit/f8f3914cf922f5f9e1d60e9e10f6fb92742907ad + v4l2 doc: "Some devices require data for each input + or output video frame to be placed in discontiguous + memory buffers" + There are newer structures 'struct v4l2_pix_format_mplane' + and 'struct v4l2_plane'. + So the pixel format is not setup with the same API when using + multi-planar. + Also for gst-v4l2, one of the difference is that in GstV4l2Meta + there are now one mem pointer for each maped plane. + When not using multi-planar, this commit takes care of keeping + the same code path than previously. So that the 2 cases are + in two different blocks triggered from V4L2_TYPE_IS_MULTIPLANAR. + Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=712754 + +2013-12-04 09:12:07 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/audioparsers/gstaacparse.c: + * gst/audioparsers/gstac3parse.c: + * gst/audioparsers/gstdcaparse.c: + * gst/audioparsers/gstflacparse.c: + * gst/audioparsers/gstmpegaudioparse.c: + * gst/audioparsers/gstsbcparse.c: + * gst/audioparsers/gstwavpackparse.c: + audioparsers: don't leak template caps + +2013-12-03 21:41:28 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/audioparsers/gstaacparse.c: + * gst/audioparsers/gstac3parse.c: + * gst/audioparsers/gstamrparse.c: + * gst/audioparsers/gstdcaparse.c: + * gst/audioparsers/gstflacparse.c: + * gst/audioparsers/gstmpegaudioparse.c: + * gst/audioparsers/gstsbcparse.c: + * gst/audioparsers/gstwavpackparse.c: + * tests/check/elements/aacparse.c: + audioparsers: use ACCEPT_INTERSECT flag + The parser can accept input that is not completely specified. Use the + ACCEPT_INTERSECT flag on the sinkpad to tweak the acceptcaps function to + check for intersection only. This allows us to proxy downstream + constraints while still allowing non-subset caps as input. + We can then also remove the appended template caps workaround. + Make a unit-test to check the new feature. + This reverts commit 26040ee38cb9e7c42f3d9a0282b3e5cace7ca42d + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=705024 + +2013-12-03 21:36:54 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/audioparsers/gstaacparse.c: + * gst/audioparsers/gstac3parse.c: + * gst/audioparsers/gstdcaparse.c: + * gst/audioparsers/gstflacparse.c: + * gst/audioparsers/gstmpegaudioparse.c: + * gst/audioparsers/gstsbcparse.c: + * gst/audioparsers/gstwavpackparse.c: + audioparsers: remove fields from filter + We need to remove the fields from the filter when we can convert + between them. + +2013-12-03 21:29:13 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/audioparsers/gstaacparse.c: + * gst/audioparsers/gstac3parse.c: + * gst/audioparsers/gstdcaparse.c: + * gst/audioparsers/gstflacparse.c: + * gst/audioparsers/gstmpegaudioparse.c: + * gst/audioparsers/gstsbcparse.c: + * gst/audioparsers/gstwavpackparse.c: + audioparsers: refactor code to remove caps fields + +2013-12-02 00:10:43 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: microoptimisation: avoid some unnecessary GValue copies + +2013-12-01 23:32:20 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: fix off-by-one crash when downstream caps contain a list of framerates + https://bugzilla.gnome.org/show_bug.cgi?id=719544 + +2013-11-29 11:26:05 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: Use the timestamp of the moof as the base fragment start + In SmoothStreaming fragmented scenario, the timestamps are calculated + starting from the fragment buffer timestamp. When there is a not-linked + return from downstream, qtdemux will return upstream and will keep the + non-pushed data into its adapter. + On a new fragment buffer pushed to qtdemux, the new buffer timestamp + would overwrite the previous one that should be used on the still + to be pushed buffers. Because of this, this patch will also + update the fragment_start timestamp from the adapter last pts + to make sure the moof and timestamps are in sync and will result + in correct timestamps for all fragments. + +2013-11-15 08:54:07 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: avoid re-reading the same moov and entering into loop + In the scenario of "mdat | moov (with fragmented artifacts)" qtdemux + could read the moov again after the mdat because it was considering the + media as a fragmented one. + To avoid this loop this patch makes it store + the last processed moov_offset to avoid parsing it again. + And it also checks if there are any samples to play before + resturning to the mdat, so that it knows there is new data to be played. + https://bugzilla.gnome.org/show_bug.cgi?id=691570 + +2013-11-15 00:52:53 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: do not free streams if they were not created locally + When parsing a trak only free streams on failures if those streams + were created locally. They could have been created from a previous + fragment, in this case we they have valid info from the other fragment. + Including pads. + https://bugzilla.gnome.org/show_bug.cgi?id=691570 + +2013-11-29 19:57:46 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/videomixer/blend.c: + videomixer: Simplify NV12/21 blending code macros + +2013-11-29 19:50:24 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/videomixer/blend.c: + videomixer: Fix segfault when filling the background of a UYVY frame + https://bugzilla.gnome.org/show_bug.cgi?id=712401 + +2013-11-29 09:21:52 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/isomp4/qtdemux.c: + qtdemux: fix compilation with gst debuging disabled + qtdemux.c:9452:1: error: label at end of compound statement + +2013-11-27 17:02:00 +0100 Jonas Holmberg <jonashg@axis.com> + + * gst/rtp/gstrtph264pay.c: + rtph264pay: Map inbuffer once only + Do not call gst_buffer_extract() twice since each call will map and + unmap the biffer. + https://bugzilla.gnome.org/show_bug.cgi?id=719434 + +2013-11-28 11:58:42 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * tests/check/elements/videofilter.c: + videoflip: Add unit test for the 'automatic' method + These new tests send a tag event before seding the buffer. Tested case are an + empty tag list, a tag list with orientation-180 set and an invalid orientation value. + https://bugzilla.gnome.org/show_bug.cgi?id=719497 + +2013-11-28 16:09:04 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/videofilter/gstvideoflip.c: + videoflip: don't crash on tag events without orientation tag + Would crash in g_free() trying to free an uninitialised pointer. + https://bugzilla.gnome.org/show_bug.cgi?id=719497 + +2013-11-28 16:50:42 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/rtpsession.c: + rtpsession: don't unref buffer twice + Cleaning the packet info will already unref the buffer. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=715078 + +2013-11-28 22:35:02 +1100 Jan Schmidt <jan@centricular.com> + + * gst/isomp4/qtdemux.c: + qtdemux: Add HydrogenAudio ReplayGain tags + Identical to the itunes (tm) version, but labelled with + org.hydrogenaudio.replaygain as the producer. + +2013-11-27 16:15:12 +0100 Mathieu Duponchelle <mduponchelle1@gmail.com> + + * gst/videomixer/videomixer2.c: + videomixer: explicitly fail when alpha information would have been lost. + +2013-05-29 16:06:05 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * .gitignore: + gitignore: Updated to ignore *.swp and .dirstamp + +2013-11-26 11:17:42 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-demux.c: + matroska-demux: Allow a bit more variation when detecting common framerates + Instead of +/- 1ns we allow 2ns now. Due to rounding errors there are + some Matroska files out there with 33.333331ms per frame for 30fps. + +2013-11-26 10:20:31 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-demux.c: + matroska-demux: Use gst_util_double_to_fraction() instead of GValue magic + +2013-11-25 14:03:21 -0500 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/videofilter/gstvideoflip.c: + videoflip: Set default method at contruction + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712333 + +2013-05-29 15:57:09 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + v4l2object: Use space instead of tabs + https://bugzilla.gnome.org/show_bug.cgi?id=712754 + +2013-05-29 15:44:31 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk> + + * sys/v4l2/gstv4l2object.h: + v4l2object: Fix header indentation so it's readable again + It's unfortunate to have to do this, but with the mix of tabs and space, plus all the random + indentation this header has become very hard to read. + https://bugzilla.gnome.org/show_bug.cgi?id=712754 + +2013-11-25 17:38:06 +0100 Wim Taymans <wtaymans@redhat.com> + + * tests/check/elements/rtpjitterbuffer.c: + check: fix jitterbuffer check + Don't advance the clock to 240ms too early. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710013 + +2013-11-25 11:45:33 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: deprecate max-errors + The property wasn't use internally, let the base class handle the + number of errors to tolerate. + +2013-11-25 15:49:07 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer: improve clear-pt-map handling + Don't reset the expected output seqnum when clearing the pt map because this + could stall the jitterbuffer forever. + Add a unit test for this. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=709800 + +2013-10-28 21:33:22 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: let the base class decide when to return an error + The base videodecoder class has an error counting feature to tolerate + a few errors before posting an error message. So don't force the + error and let the base class decide when it should happen + https://bugzilla.gnome.org/show_bug.cgi?id=710762 + +2013-10-28 21:28:33 -0300 Thiago Santos <ts.santos@sisa.samsung.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: Add data skipping on input + Add missing bytes skipping when bad input is received. + https://bugzilla.gnome.org/show_bug.cgi?id=710762 + +2013-11-25 12:13:43 +1100 Jan Schmidt <jan@centricular.com> + + * gst/isomp4/qtdemux.c: + qtdemux: Discard 2 byte subpicture packets + As for text subtitles and as suggested in #712643, throw + away the 2 byte terminator packets that some encoders insert. + This will make things better when remuxing and causes generation + of gap events. + +2013-11-25 00:34:21 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: fix wake-up when new buffers come in after running empty + Spotted by 'gratias' on IRC. Probably introduced in recent refactoring. + https://bugzilla.gnome.org/show_bug.cgi?id=715039 + +2013-11-23 12:15:40 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/matroska/matroska-mux.c: + matroskamux: correctly handle negative relative timestamps + ... rather than scaling these as unsigned. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712744 + Based on patch by Krzysztof Kotlenga <pocek@users.sf.net> + +2013-09-14 03:27:09 +0200 MathieuDuponchelle <mathieu.duponchelle@epitech.eu> + + * gst/videomixer/videomixer2.c: + * gst/videomixer/videomixer2.h: + videomixer2: Merge tag events to send them in collected. + Otherwise there were race conditions where we would send tags + on a flushing srcpad. + We have a test for that in GES, but this should be tested + systematically with harness in the future as I believe it + is useful for exactly that kind of cases. + https://bugzilla.gnome.org/show_bug.cgi?id=708165 + +2013-11-14 17:29:50 -0300 Thibault Saunier <thibault.saunier@collabora.com> + + * gst/isomp4/qtdemux.c: + qtdemux: Use GstVideoInfo helper to create caps for raw video + This way we do not miss mandatory fields in caps. + At the same time use the gst_pb_utils_get_codec_description + helper to get codec description. + https://bugzilla.gnome.org/show_bug.cgi?id=712335 + +2013-11-14 16:11:38 -0300 Thibault Saunier <thibault.saunier@collabora.com> + + * gst/matroska/Makefile.am: + * gst/matroska/matroska-demux.c: + matroskademux: Use GstVideoInfo helper to create caps for raw video + This way we do not miss mandatory fields in caps. + At the same time use the gst_pb_utils_get_codec_description helper to + get codec description. + https://bugzilla.gnome.org/show_bug.cgi?id=712328 + +2013-11-13 20:18:17 -0300 Thibault Saunier <thibault.saunier@collabora.com> + + * gst/multifile/gstmultifilesrc.c: + * gst/multifile/gstmultifilesrc.h: + multifilesrc: Implement seeking in case of multiple images + https://bugzilla.gnome.org/show_bug.cgi?id=712254 + +2013-11-22 12:26:21 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: pass downstream flowreturn to upstream + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712722 + +2013-11-18 14:27:48 +0100 Michael Olbrich <m.olbrich@pengutronix.de> + + * sys/v4l2/gstv4l2object.c: + v4l2: clear cached caps on close + A different device with different caps may be used for the next open. + https://bugzilla.gnome.org/show_bug.cgi?id=712611 + +2013-11-21 15:30:34 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/wavpack/gstwavpackcommon.c: + * ext/wavpack/gstwavpackstreamreader.c: + * gst/apetag/gstapedemux.c: + * gst/autodetect/gstautoaudiosink.c: + * gst/autodetect/gstautoaudiosrc.c: + * gst/autodetect/gstautovideosink.c: + * gst/autodetect/gstautovideosrc.c: + * gst/dtmf/gstrtpdtmfsrc.c: + * gst/isomp4/atoms.c: + * gst/matroska/matroska-demux.c: + g_memmove() is deprecated + Just use plain memmove(), g_memmove() is deprecated in + recent GLib versions. + https://bugzilla.gnome.org/show_bug.cgi?id=712811 + +2013-11-21 11:32:15 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtp/gstrtpvorbisdepay.c: + * gst/rtp/gstrtpvorbispay.c: + rtpvorbisdepay: handle packets > 0xffff + Handle input packet sizes larger than 16 bits in the depayloader. + Remove size restrictions on the payloader. + +2013-11-21 11:30:28 +0100 Wim Taymans <wtaymans@redhat.com> + + * gst/rtp/gstrtptheoradepay.c: + * gst/rtp/gstrtptheorapay.c: + rtptheoradepay: handle packets > 0xffff + Reorganize some things in the depayloader so that it can handle packets larger + than 16 bits. + Remove the size restriction on the payloader. + +2013-11-21 02:28:27 +1100 Jan Schmidt <jan@centricular.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux_dump.c: + * gst/isomp4/qtdemux_types.c: + isomp4: Handle mp4s subpicture streams better. + Clean up the handling of mp4s streams. Use the generic esds + descriptor function to extract the palette, instead of hard coding + a wrong magic offset. + Add some more size safety checks when parsing ES descriptors, and + replace magic numbers with the descriptive constants that are already + defined. + Enhance dump output for stsd atoms. + Streams from both bug 712643 and historic bug 568278 now both work + correctly. + Fixes: #712643 + +2013-11-20 22:08:25 +1100 Jan Schmidt <thaytan@noraisin.net> + + * gst/isomp4/fourcc.h: + qtdemux: Sort fourcc declarations and remove duplicates + +2013-11-20 21:41:47 +1100 Jan Schmidt <thaytan@noraisin.net> + + * gst/isomp4/Makefile.am: + * gst/isomp4/atoms.h: + * gst/isomp4/fourcc.h: + * gst/isomp4/ftypcc.h: + * gst/isomp4/gstqtmuxmap.c: + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux_dump.c: + * gst/isomp4/qtdemux_fourcc.h: + * gst/isomp4/qtdemux_types.c: + qtdemux: Merge all the fourcc headers into one + Remove qtdemux_fourcc.h and ftypcc.h and put it all in fourcc.h + +2013-11-19 10:10:51 +0100 Wim Taymans <wim.taymans@gmail.com> + + * gst/rtpmanager/rtpjitterbuffer.c: + rtpjitterbuffer: avoid mapping the buffer + Reuse the parsed structure to get the timestamps. + +2013-11-18 17:13:49 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: fix 'make check' + Fix generic/states check. Also, g_return_if_fail() is + not for internal state checking. + +2013-11-18 14:44:36 +0000 Tim-Philipp Müller <tim@centricular.com> + + * ext/gdk_pixbuf/gstgdkpixbufoverlay.c: + * ext/gdk_pixbuf/gstgdkpixbufsink.c: + * ext/jack/gstjackaudiosink.c: + * ext/jack/gstjackaudiosrc.c: + * ext/jpeg/gstjpegdec.c: + * ext/pulse/pulsesink.c: + * ext/pulse/pulsesrc.c: + * ext/raw1394/gstdv1394src.c: + * ext/raw1394/gsthdv1394src.c: + * gst/audiofx/audioecho.c: + * gst/audiofx/audiofxbasefirfilter.c: + * gst/audiofx/audiopanorama.c: + * gst/autodetect/gstautoaudiosink.c: + * gst/autodetect/gstautoaudiosrc.c: + * gst/autodetect/gstautovideosink.c: + * gst/autodetect/gstautovideosrc.c: + * gst/deinterlace/gstdeinterlace.c: + * gst/flv/gstflvmux.c: + * gst/multifile/gstmultifilesink.c: + * gst/multifile/gstmultifilesink.h: + * gst/multifile/gstsplitfilesrc.c: + * gst/multipart/multipartdemux.c: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtsp/gstrtspsrc.c: + * gst/smpte/gstsmptealpha.c: + * gst/udp/gstmultiudpsink.c: + * gst/videobox/gstvideobox.c: + * gst/wavparse/gstwavparse.c: + * sys/oss4/oss4-sink.c: + * sys/oss4/oss4-source.c: + * sys/v4l2/gstv4l2object.c: + * sys/ximage/gstximagesrc.c: + docs: get rid of 'Since: 0.10.x' markers + And some gtk-doc markup fixes. + +2013-11-16 12:15:14 +0000 Tim-Philipp Müller <tim@centricular.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + rtpmanager: fix Since markers + Should be next stable release series version + +2013-11-15 13:48:07 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer: Fix stats property field names and documentation + +2013-11-15 15:20:14 +0100 Torrie Fischer <torrie.fischer@collabora.co.uk> + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpstats.c: + * gst/rtpmanager/rtpstats.h: + gstrtpsession: Implement a number of feedback packet statistics + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711693 + +2013-11-13 17:11:08 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: remove math operation from loop + The elst_offset doesn't change inside the loop, so compute it + outside + +2013-11-14 20:54:32 +0100 Stefan Sauer <ensonic@users.sf.net> + + * gst/isomp4/qtdemux.c: + qtmux: fix playback regression + In ae1150e85cf99d7482933aa6f7e4f012fe45a3ec flipping a condition misaligned the + else branch, where for there condition that was change there is none. + Fixes #712303 + +2013-11-14 09:20:06 +0100 Wim Taymans <wim.taymans@gmail.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: rename property to 'stats' + This makes the unit test work. + We can later also add more stats, not specific to retransmission. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711411 + +2013-11-12 11:19:25 -0500 Torrie Fischer <torrie.fischer@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * tests/check/elements/rtpjitterbuffer.c: + rtpjitterbuffer: implement rtx statistics + +2013-11-13 10:42:21 +0000 Marc Leeman <marc.leeman@gmail.com> + + * sys/v4l2/gstv4l2object.c: + v4l2object: print FOURCC_FORMAT when enumerating + https://bugzilla.gnome.org/show_bug.cgi?id=712206 + +2013-11-06 12:40:06 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: advance expected seqnum after dropping + After dropping a buffer, move our expected seqnum + Conflicts: + gst/rtpmanager/gstrtpjitterbuffer.c + +2013-11-04 15:46:22 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtpgstpay.c: + gstpay: only send one caps + Only send one caps in a packet. Two caps can happen when setcaps is called and + the config-interval expires at the same time. + +2013-11-13 10:23:19 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: Use the synced buffer mode in auto mode if a clock provider is in the SDP + +2013-11-08 11:09:21 +0000 Marc Leeman <marc.leeman@gmail.com> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2: init v4l2_buffer to 0x0 before ioctl + https://bugzilla.gnome.org/show_bug.cgi?id=712137 + +2013-11-11 15:27:18 +0100 Wim Taymans <wim.taymans@gmail.com> + + * gst/rtpmanager/gstrtpsession.c: + rtpsession: remove collision reconfigure event + Remove bogus reconfigure event on collision, we don't want to send the event on + the receiving RTP pad and the collision event is now handling this + case. + See https://bugzilla.gnome.org/show_bug.cgi?id=711560 + +2013-11-01 17:04:28 +0000 Julien Isorce <julien.isorce@collabora.co.uk> + + * gst/rtpmanager/gstrtpsession.c: + gstrtpsession: send custom upstream event "GstRTPCollision" on send_rtp_sink pad + See https://bugzilla.gnome.org/show_bug.cgi?id=711560 + +2013-11-11 14:25:51 +0100 Wim Taymans <wim.taymans@gmail.com> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/rtpsession.c: + check: add rtpsession test + Add a basic rtpsession test to ensure that RR blocks are generated when + multiple SSRC senders are active. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711270 + +2013-11-11 13:17:25 +0100 Mark Nauwelaerts <mnauw@users.sourceforge.net> + + * gst/audioparsers/gstac3parse.c: + ac3parse: correctly handle timestamps when parsing x-private1-ac3 + ... the way it has always worked fine in a52dec. + +2013-11-05 10:48:33 +0200 George Kiagiadakis <george.kiagiadakis@collabora.com> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: fix crash when do-retransmission=true and a lot of buffers are lost + The problem here was that the jitterbuffer lock was unlocked to push + the event, but that caused another thread to remove the timer currently + being processed, probably because the amount of rtx events + (and therefore timers) was getting too high. The solution is to + unlock and push the event only after timer processing has finished. + fixes https://bugzilla.gnome.org/show_bug.cgi?id=711131 + +2013-10-24 13:16:42 +0200 Per x Johansson <perxjoh@axis.com> + + * gst/matroska/matroska-demux.c: + matroskademux: Avoid division by zero assert in gst_matroska_demux_search_pos + https://bugzilla.gnome.org/show_bug.cgi?id=711829 + +2013-11-08 17:59:24 +0100 Philippe Normand <philn@igalia.com> + + * gst/wavenc/gstwavenc.c: + wavenc: generate a non-empty data header + Restore the behavior of the element to the state before commit + db29522a430e44450415ca3676abd1b77ee923d9. A non-empty header is + generated and when the EOS event is received the header is generated + again, this time with the correct size. + https://bugzilla.gnome.org/show_bug.cgi?id=711699 + +2013-11-07 16:17:16 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsource.c: + rtpsource: update receiver stats for sender + An internal sender in a session is also a receiver of its own packets so update + the receiver stats. Other senders in the session will use this info to generate + correct RB blocks in their SR reports. + +2013-11-07 16:13:16 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsource: refactor receiver stats update + +2013-10-25 18:22:00 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: handle fragmented files with mdat before moofs + Assume a file with atoms in the following order: moov, mdat, moof, + mdat, moof ... + The first moov usually doesn't contain any sample entries atoms (or + they are all set to 0 length), because the real samples are signaled + at the moofs. In push mode, qtdemux parses the moov and then finds the mdat, + but then it has 0 entries and assumes it is EOS. + This patch makes it continue parsing in case it is a fragmented file so that + it might find the moofs and play the media. + https://bugzilla.gnome.org/show_bug.cgi?id=710623 + +2013-10-25 11:42:37 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux.h: + qtdemux: When using a buffered mdat, store all received data for later use + In push mode, when qtdemux can't use a seek to skip the mdat buffer it has + to buffer it for later use. + The issue is that after parsing the next moov/moof, there might be some + trailing bytes from the next atom in the file. This data was being discarded + along with the already parsed moov/moof and playback would fail to continue + after the contents of this moov/moof are played. + This is particularly bad on fragmented files that have the mdat before the + corresponding moof. So you'd get: + mdat|moof|mdat|moof ... + When a moof was received, it usually came with some extra bytes that would + belong to the next mdat (because upstream doesn't care about atoms alignment). + So those bytes were being discarded and playback would fail. + This patch makes qtdemux store those extra bytes to reuse them later after the + mdat is emptied. + https://bugzilla.gnome.org/show_bug.cgi?id=710623 + +2013-11-07 09:49:55 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/udp/gstmultiudpsink.c: + multiudpsink: Also use the bind-port property if no bind-address was given + +2013-11-07 00:51:12 +0100 Andoni Morales Alastruey <ylatuya@gmail.com> + + * sys/osxaudio/gstosxcoreaudiohal.c: + osxaudiosink: fix segfault when we can't get the channels layout + +2013-11-05 17:26:49 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/rtp/gstrtpvp8pay.c: + rtpvp8pay: Make Picture ID mode configurable and default to no picture ID + Some implementations (linphone) only support no picture at all in the + stream and will fail if one is provided. + https://bugzilla.gnome.org/show_bug.cgi?id=711497 + +2013-11-05 11:18:34 +0000 Tim-Philipp Müller <tim@centricular.com> + + * common: + Automatic update of common submodule + From 865aa20 to dbedaa0 + +2013-01-29 10:51:07 +0100 Paul HENRYS <visechelle@gmail.com> + + * gst/rtp/gstrtph264pay.c: + Add call to gst_rtp_h264_pay_clear_sps_pps() when receiving a STREAM_START event + https://bugzilla.gnome.org/show_bug.cgi?id=692787 + +2013-11-02 22:50:47 +0100 Rico Tzschichholz <ricotz@ubuntu.com> + + * gst/rtsp/Makefile.am: + * gst/rtsp/gstrtspsrc.h: + rtsp: Add missing gio-2.0 deps and includes + +2013-11-01 18:31:36 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audiofx/audioiirfilter.c: + audioiirfilter: Fix initialization coefficient handling + Broke unit test. + +2013-10-31 14:05:43 -0700 Aleix Conchillo Flaque <aleix@oblong.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: allow setting tls certificate validation flags + Added a new property "tls-validation-flags". If the url transport is + TLS, the validation flags will be set to the rtsp connection. + https://bugzilla.gnome.org/show_bug.cgi?id=711230 + +2013-10-31 22:43:49 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/audiofx/audiofxbaseiirfilter.c: + * gst/audiofx/audioiirfilter.c: + audioiirfilter: Don't crash if no filter coefficients are provided + ...and by default use a identity filter. + https://bugzilla.gnome.org/show_bug.cgi?id=710215 + +2013-10-31 19:15:12 +0100 Sebastian Dröge <sebastian@centricular.com> + + * ext/wavpack/gstwavpackenc.c: + wavpackenc: Fix writing of MD5 sums and other metadata blocks + These don't have the FINAL_BLOCK flag set. + +2013-10-31 13:02:11 -0200 Djalma Lúcio Soares da Silva <dlucio@impa.br> + + * ext/raw1394/gsthdv1394src.c: + hdv1394src: Make it possible to select a camera by its GUID + The source hdv1394src has the guid property that permits select a camera + connected from its GUID number. + However when this property is setted the selected camera is not changed. + The source continues using the default camera. + This problem was solved using the function iec61883_cmp_connect. + The reference for the function could be found here: + http://www.dennedy.org/libiec61883/API-iec61883-cmp-connect.html + The solution came from dvgrab source code. + https://bugzilla.gnome.org/show_bug.cgi?id=710415 + +2013-10-31 13:20:41 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * tests/check/elements/souphttpsrc.c: + tests: souphttpsrc: add explicit cast to silence warning + Silencing this warning: + elements/souphttpsrc.c:533:14: error: comparison between ‘SoupKnownStatusCode’ and ‘enum <anonymous>’ [-Werror=enum-compare] + if (status != SOUP_STATUS_OK && !send_error_doc) + With gcc 4.8.2 (debian) + +2013-10-31 10:38:35 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpjitterbuffer.h: + * gst/rtsp/gstrtspsrc.c: + rtspsrc: proxy new buffer mode + +2013-10-30 16:49:36 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + jitterbuffer: add new timestamp mode + Add a new timestamp mode that assumes the local and remote clock are + synchronized. It takes the first timestamp as a base time and then uses the RTP + timestamps for the output PTS. + +2013-10-30 22:12:45 +0100 Sebastian Dröge <sebastian@centricular.com> + + * gst/matroska/matroska-demux.c: + matroska-demux: Fix compiler warning + matroska-demux.c: In function 'gst_matroska_demux_add_stream': + matroska-demux.c:1379:7: error: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'guint64' [-Werror=format=] + "%03u", context->uid); + ^ + +2013-10-28 13:21:15 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * gst/videomixer/videoconvert.c: + videomixer: remove unneeded guint comparaison + https://bugzilla.gnome.org/show_bug.cgi?id=711010 + +2013-10-28 14:13:12 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * sys/osxvideo/cocoawindow.h: + * sys/osxvideo/cocoawindow.m: + osxvideosink: fix missing selector name warnings + The spaces matter in ObjC + https://bugzilla.gnome.org/show_bug.cgi?id=711013 + +2013-10-28 13:31:34 +0000 Matthieu Bouron <matthieu.bouron@collabora.com> + + * gst/y4m/gsty4mencode.c: + y4menc: fix uninitialized variable warning + https://bugzilla.gnome.org/show_bug.cgi?id=711011 + +2013-10-25 11:30:36 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: check if the end_time is defined before using it + Avoids sending EOS too soon because of overflow. Can happen on + fragmented mp4 playback. + +2013-10-23 13:38:20 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * gst/isomp4/qtdemux.c: + qtdemux: use correct unref function + Events aren't GstObjects, but GstMiniObjects + +2013-10-15 08:16:20 +0200 Stefan Sauer <ensonic@users.sf.net> + + * gst/isomp4/qtdemux.c: + qtdemux: rename chunks_are_chunks to chunks_are_samples and flip the logic + As the variable name suggests, sometimes chunks are chunks. Rename the variable + to tell what they are when they are not chunks. + +2013-10-09 08:04:20 +0200 Stefan Sauer <ensonic@users.sf.net> + + * gst/isomp4/qtdemux.c: + qtdemux: fix typos and add more logging for unhandled parts + +2013-10-14 16:23:25 +0200 Ognyan Tonchev <ognyan@axis.com> + + * gst/udp/gstmultiudpsink.c: + multiudpsink: Fix memory leak + Unmap all GstMemory of the current buffer when flushing. + https://bugzilla.gnome.org/show_bug.cgi?id=710110 + +2013-10-12 20:44:31 +0100 Tim-Philipp Müller <tim@centricular.net> + + * gst/flv/gstflvmux.c: + flvmux: fix broken sample pipeline + which was muxing raw audio and video into flvmux, which won't work, + even if there were converters. + +2013-10-12 20:37:41 +0100 Tim-Philipp Müller <tim@centricular.net> + + * gst/flv/gstflvmux.c: + flvmux: require stream-format=raw for mpeg-2 too, but don't require framed field + raw implies that it's framed already. Fixes .. ! faac ! flvmux + +2013-10-07 14:27:21 -0300 Thiago Santos <ts.santos@partner.samsung.com> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: do not emit EOS when connection drops + If the pipeline is stalled for too long, souphttpsrc will block and + stop fetching data from the network. This can cause the connection to + drop and souphttpsrc would handle it as an EOS. This patch makes it + persist and try to fetch more data until the end of the content length + or until receiving an error that it is beyong limits in case the content + is unknown. + https://bugzilla.gnome.org/show_bug.cgi?id=683536 + +2013-10-10 13:52:35 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * ext/dv/gstdvdec.c: + * ext/dv/gstdvdec.h: + dvdec: Don't send segment event before caps + https://bugzilla.gnome.org/show_bug.cgi?id=709728 + +2013-10-09 17:46:33 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * ext/dv/gstdvdemux.c: + dvdemux: Send stream-start, caps and segment events in the right order + https://bugzilla.gnome.org/show_bug.cgi?id=709728 + +2013-10-08 11:28:04 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * gst/wavenc/gstwavenc.c: + wavenc: A-Law and Mu-Law don't have width/depth/signed caps fields + https://bugzilla.gnome.org/show_bug.cgi?id=709614 + +2013-10-07 12:54:11 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * gst/deinterlace/tvtime/greedyh.c: + deinterlace: Fix handling of planar video formats in greedyh method + https://bugzilla.gnome.org/show_bug.cgi?id=709507 + +2013-10-06 10:01:26 -0700 Reynaldo H. Verdejo Pinochet <r.verdejo@partner.samsung.com> + + * gst/matroska/matroska-mux.c: + matroska: Trivial grammar fix on debug msg + +2013-10-06 09:17:00 -0700 Reynaldo H. Verdejo Pinochet <r.verdejo@partner.samsung.com> + + * gst/matroska/matroska-mux.c: + * gst/matroska/matroska-mux.h: + * gst/matroska/webm-mux.c: + matroskamux: Add context flag for WebM + WebM has a couple of specific requirements we need to handle. + Idea is to set this flag once and just rely on mux->is_webm + at run time instead of repeatedly figuring this out from + GST_MATROSKA_DOCTYPE_WEBM (which requires a strcmp()). + +2013-10-04 14:42:59 -0700 Reynaldo H. Verdejo Pinochet <r.verdejo@partner.samsung.com> + + * gst/matroska/matroska-mux.c: + matroska: Do not write SegmentUID for WebM mux + WebM spec states SegmentUID is Unsupported. Files produced + with gstreamer without this change will spit an error like + this when passed to mkvalidator: + ERR201: Invalid 'SegmentUID' for profile 'webm' in Info at 192 + +2013-10-05 00:00:03 +0200 Matej Knopp <matej.knopp@gmail.com> + + * gst/matroska/matroska-demux.c: + matroskademux: make dvd palette change event sticky + So they don't get lost. + https://bugzilla.gnome.org/show_bug.cgi?id=709454 + +2013-10-03 16:39:26 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com> + + * gst/videofilter/gstvideoflip.c: + * gst/videofilter/gstvideoflip.h: + videoflip: Add automatic flip mode driven by image-orientation tag + https://bugzilla.gnome.org/show_bug.cgi?id=709312 + +2013-10-04 13:34:09 +0200 Peter Korsgaard <peter@korsgaard.com> + + * sys/v4l2/gstv4l2bufferpool.c: + v4l2bufferpool: O_CLOEXEC needs _GNU_SOURCE + On some systems (E.G. uClibc and older Glibc versions), O_CLOEXEC is only + defined when _GNU_SOURCE is specified, so do so. + _GNU_SOURCE needs to be defined before any system headers are included, + so move the fcntl.h section up. + https://bugzilla.gnome.org/show_bug.cgi?id=709423 + +2013-10-04 12:11:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: fix race in flush-start/flush-stop + When flush-stop arrives before we process the result of the _push() in the + loop function, we might pause even though we are not flushing anymore. Fix this + race by waiting for the srcpad loop function to completely pause after doing the + flush-start. + +2013-10-03 22:38:43 +0200 Mathieu Duponchelle <mduponchelle1@gmail.com> + + * gst/videomixer/videoconvert.c: + videomixer: Update videoconvert copy + https://bugzilla.gnome.org/show_bug.cgi?id=709390 + +2013-10-03 21:36:34 +0200 Mathieu Duponchelle <mduponchelle1@gmail.com> + + * gst/videomixer/videomixer2.c: + videomixer: Check if the pad needs reconfiguration in collected + https://bugzilla.gnome.org/show_bug.cgi?id=709384 + +2013-10-03 14:39:35 +0100 Matthieu Bouron <matthieu.bouron@collabora.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: Relax sink caps + Since jpegdec already parse the jpeg stream, the sink caps could be + relaxed. This will allow jpegdec to be selected in more case and in + particular when the jpeg typefinder does not find the width and height. + https://bugzilla.gnome.org/show_bug.cgi?id=709352 + +2013-10-03 18:33:01 +0100 Tim-Philipp Müller <tim@centricular.net> + + * sys/v4l2/gstv4l2object.c: + v4l2src: print probed caps as caps again in debug log + This got lost during refactoring. + +2013-10-03 11:59:25 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * gst/isomp4/qtdemux.c: + qtdemux: Add support for the mp2v fourcc for MPEG-2 video + https://bugzilla.gnome.org/show_bug.cgi?id=709270 + +2013-10-02 15:56:53 +0200 Ognyan Tonchev <ognyan@axis.com> + + * gst/matroska/matroska-demux.c: + matroskademux: Fix memory leak + https://bugzilla.gnome.org/show_bug.cgi?id=709266 + +2013-09-30 12:31:42 +0300 Sreerenj Balachandran <sreerenj.balachandran@intel.com> + + * gst/isomp4/qtdemux.c: + * gst/isomp4/qtdemux_fourcc.h: + * gst/isomp4/qtdemux_types.c: + qtdemux: Add HEVC support + https://bugzilla.gnome.org/show_bug.cgi?id=709093 + +2013-09-30 12:24:32 +0200 Ognyan Tonchev <ognyan@axis.com> + + * gst/rtp/gstrtpgstpay.c: + rtpgstpay: Fix memory leak + We were leaking the GList nodes of the pending buffers. + https://bugzilla.gnome.org/show_bug.cgi?id=709079 + +2013-09-30 12:31:00 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + rtpjitterbuffer: fix race when updating the next_seqnum + If we were not waiting for the missing seqnum when we insert the lost packet + event in the jitterbuffer, we end up not updating the next_seqnum and wait + forever for the lost packets to arrive. Instead, keep track of the amount of + packets contained by the jitterbuffer item and update the next expected + seqnum only after pushing the buffer/event. This makes sure we correctly handle + GAPS in the sequence numbers. + +2013-09-30 12:30:23 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: small debug improvement + +2013-09-30 11:53:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpjitterbuffer.c: + rtpjitterbuffer: reset skew does not reset clock-rate + Don't reset the clock-rate when we reset the skew correction algorithm. + Reset the skew correction algorithm when we change the clock-rate. + +2013-09-30 11:16:32 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: pause timer when PAUSED + Also pause the timer when we go to the PAUSED state. It is possible that we + don't have a clock or base-time in PAUSED to perform the timeouts. + +2013-09-30 11:15:25 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: improve debug + +2013-09-26 20:41:26 +0200 Hans Månsson <hansm@axis.com> + + * gst/isomp4/gstqtmuxmap.c: + mp4mux: Do not require framerate in peer video caps + Remove the framerate restriction on the caps. + Reference: https://bugzilla.gnome.org/show_bug.cgi?id=708864 + +2013-09-27 15:05:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: also go into the loop function after connect + When we have opened the stream, go into the loop function so that we can + receive messages from the server. + +2013-09-27 12:53:06 +0200 Matej Knopp <matej.knopp@gmail.com> + + * gst/matroska/matroska-demux.c: + matroskademux: move the check for subtitle buffer being null terminated before validating UTF-8 + https://bugzilla.gnome.org/show_bug.cgi?id=707933 + +2013-09-26 16:20:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpjitterbuffer.c: + rtpjitterbuffer: don't calculate skew without rtptime + Skip trying to calculate the skew when we don't have an rtptime. + It causes problems when lost packet events are placed in the jitterbuffer. + +2013-09-25 23:46:14 +0100 Tim-Philipp Müller <tim@centricular.net> + + * configure.ac: + configure: get rid of AS_SCRUB_INCLUDE + Should not be needed any more. + https://bugzilla.gnome.org/show_bug.cgi?id=707658 + +2013-09-25 17:42:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: disable checks when linking pads + We know the pad links will work (and we don't check the return value + anyway). + +2013-09-25 17:36:15 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: avoid some pad link checks + Link pads without checks, we know it will work. + +2013-09-25 12:55:21 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * gst/isomp4/gstqtmux.c: + qtmux: Don't error out if downstream is not seekable for non-fragmented variants + Doing so would be a regression over 1.0 and breaks the unit test. + However the result will be most likely unusable, so let's post + a warning message on the bus. + +2013-09-24 04:02:09 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: calculate some stats + +2013-09-23 17:05:44 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + rtpjitterbuffer: move send_lost_event function + Move the send_lost_event function to the do_lost_event handling, there is no + need to have a separate function. + +2013-09-16 11:20:51 -0300 Thiago Santos <thiago.sousa.santos@collabora.com> + + * gst/isomp4/qtdemux.c: + qtdemux: add code to parse creation time earlier than 1970 + Use g_date_time seconds manipulation to allow to cover the quicktime + spec for creation_time. It uses seconds since 1904. + Both paths could be done using the generic approach of seconds since + 1904 with GDateTime handling, but the first path using seconds from + 1970 should be more commonly found and avoids a few objects creation and + ref/unref, so keep it there for performance. + Additionally, the code for handling seconds since 1970 changed from > + to >= because having 0 seconds since 1970 is also a valid case for that + path to handle. + https://bugzilla.gnome.org/show_bug.cgi?id=707975 + +2013-09-21 00:55:26 +0200 Matej Knopp <matej.knopp@gmail.com> + + * gst/matroska/matroska-demux.c: + matroskademux: update stream->pos when sending buffers so that gap events are not sent unnecessarily + https://bugzilla.gnome.org/show_bug.cgi?id=708505 + +2013-09-24 18:30:04 +0100 Tim-Philipp Müller <tim@centricular.net> + + * README: + * common: + Automatic update of common submodule + From 6b03ba7 to 865aa20 + +2013-09-24 15:05:24 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * configure.ac: + configure: Actually use 1.3.0.1 as version to make configure happy + +2013-09-24 15:00:24 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * configure.ac: + Back to development + === release 1.2.0 === -2013-09-24 Sebastian Dröge <sebastian.droege@collabora.co.uk> +2013-09-24 14:21:08 +0200 Sebastian Dröge <slomo@circular-chaos.org> + * ChangeLog: + * NEWS: + * RELEASE: * configure.ac: - releasing 1.2.0 + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.hierarchy: + * 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-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-level.xml: + * docs/plugins/inspect/plugin-matroska.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-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-shout2send.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-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: + * gst-plugins-good.doap: + * win32/common/config.h: + Release 1.2.0 + +2013-09-24 14:20:51 +0200 Sebastian Dröge <slomo@circular-chaos.org> + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/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 .po files 2013-09-20 19:43:21 +0200 Andoni Morales Alastruey <ylatuya@gmail.com> @@ -1,123 +1,110 @@ -This is GStreamer Good Plugins 1.2.0 +This is GStreamer Good Plugins 1.3.1 -Changes since 1.0: +Changes since 1.2: New API: - • GstContext negotiation / sharing / announcing for sharing a - generic context between elements, e.g. a display handle - • GL texture upload conversion meta for allowing different - buffer types to be converted to an OpenGL texture - • GstCapsFeatures as extension to GstCaps for allowing the - negotiation of specific memory or meta requirements between - elements - • GstMemory flags for contiguous and non-mappable memory - • The stream-start event has optional flags now, e.g. for signalling - sparse streams - • The stream-start even has an optional group-id field now to signal - all streams that should be played together - • Allocators library in gst-plugins-base, currently only with generic - dmabuf memory support - • insertbin library for easier handling of dynamically linked - pipelines (in -bad for now) - • EGL helper library (in -bad for now) - • MPEG-TS data structure library (in -bad for now) - • New GstVideoRegionOfInterestMeta to describe a region of interest on - video frames. - • GstVideoDecoder/Encoder has new ::flush() vfunc to replace the - ill-defined ::reset() vfunc. - • The URI query allows to query the redirected URI now. + • GstMessageType has GST_MESSAGE_EXTENDED added. All types before + that can be used together as a flags type as before, but from + that message onwards the types are just counted incrementally. + This was necessary to be able to add more message types. + In 2.0 GstMessageType will just become an enum and not a flags + type anymore. + • GstDeviceMonitor for device probing, e.g. to list all available + audio or video capture devices. This is the replacement for + GstPropertyProbe from 0.10. + • Events accumulate the running-time offset now when travelling + through pads, as set by the gst_pad_set_offset() function. This + allows to compensate for this in the QOS event for example. + • GstBuffer has a new flag "tag-memory" that is set automatically + when memory is added or removed to a buffer. This allows buffer + pools to detect if they can recycle a buffer or need to reset + it first. + • GstToc has new API to mark GstTocEntries as loops. + • A not-authorized resource error has been defined to notify + applications that accessing the resource has failed because + of missing authorization and to distinguish this case from others. + This change is actually already in 1.2.4. + • GstPad has a new flag "accept-intersect", that will let the default + ACCEPT_CAPS query handler do an intersection instead of subset check. + This is interesting for parser elements that can handle incomplete + caps. + • GstCollectPads has support for flushing and a default handler for + SEEK events now. + • GstSegment has new API to offset the running time by a specific + value and this is used in GstPad to allow positive and negative + offsets in gst_pad_set_offset() in all situations. + • Support for h265/HEVC and VP8 has been added to the codec utils and codec + parsers library, and was integrated into various elements. + • API for adjusting the TLS validation of RTSP connection has been added. + • The RTSP and SDP library has MIKEY (RFC 3830) support now, and + there is API to distinguish between the different RTSP profiles. + • API to access RTP time information and statistics. + • Support for auxiliary streams was added to rtpbin. + • Support for tiled, raw video formats has been added. + • GstVideoDecoder and GstAudioDecoder have API to help aggregating tag + events and merge custom tags into them consistently. + • playbin/playsink has support for application provided audio and video + filters. + • The GL library was merged from gst-plugins-gl to gst-plugins-bad, + providing a generic infrastructure for handling GL inside GStreamer + pipelines and a plugin with some elements using these, especially + a video sink. Supported platforms currently are Android, Cocoa (OS X), + DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows) and generic X11, + Wayland and EGL platforms. + This replaces eglglessink and also is supposed to replace osxvideosink. -Major changes: - • New tool: gst-play-1.0 in gst-plugins-base for basic playback - testing on the command line. - • New plugins: - ∘ mssdemux for Microsoft Smooth Streaming - ∘ dashdemux for DASH adaptive streaming protocol - ∘ bluez for interaction with Bluetooth devices - ∘ openjpeg for JPEG2000 decoding and encoding - ∘ daala for experimental Daala decoding and encoding - ∘ vpx plugin has experimental VP9 decoding and encoding support - ∘ webp plugin for WebP decoding (encoding to be added later) - ∘ Various others: yadif, srtp, sbc, fluidsynth, midiparse, - mfc, ivtv, accuraterip and audiofxbad - - • Moved plugins: - ∘ dtmf, vp8rtp, scaletempo and rtpmux plugins are in - gst-plugins-good now - - • Video: - ∘ Fix handling of interlaced video in converters such as videoscale - and videoconvert (e.g. scale both fields independently) - ∘ videoconvert will try harder to minimise quality losses when - conversion is necessary - ∘ The experimental GstSurfaceConverter, GstSurfaceMeta and - GstVideoContext APIs from the (confusingly-named) - libgstbasevideo-1.0 library in gst-plugins-bad have now been - removed and been replaced by new APIs in GStreamer Core and - gst-plugins-base (see above). Since that was all that was left in - this library, the entire experimental libgstbasevideo-1.0 library - has been removed from gst-plugins-bad - ∘ Chroma subsampling and chroma siting conversion is better handled - in videoconvert and the support for interlaced video was improved. - ∘ New pinwheel and spoke patterns in videotestsrc - ∘ videomixer can now accept different video formats on its sinkpads - and converts to a common format during mixing - • Audio: - ∘ audioconvert will try harder to minimise quality losses when - conversion is necessary - ∘ adder now allows muting/unmuting of its input streams, and also - per-input stream volume - ∘ pulseaudio elements can switch between devices during playback now - ∘ aacparse can convert between ADTS←→RAW - - • Platform specific changes: - ∘ Caps, events, etc. are now printed in the GStreamer debug logs - with their content instead of just the pointer address even on - non-glibc platforms (e.g. Windows, OSX, Android). - ∘ Network elements (UDP/TCP) now work better with platforms, - where IPv6 sockets can't handle IPv4 (e.g. Windows) - ∘ Linux/BSD: v4l2 had many improvements and cleanups +Major changes: + • New plugins and elements: + ∘ v4l2videodec element for accessing hardware codecs on + platforms that make them accessible via V4L2, e.g. + Samsung Exynos. This comes together with major refactoring + of the existing V4L2 elements and the corresponding + infrastructure. + The v4l2videodec element replaces the mfcdec element. + ∘ rtpstreampay and rtpstreamdepay elements for transmitting + RTP packets over a stream API (e.g. TCP) according to + RFC 4571. + ∘ rtprtx elements for standard compliant implementation of + retransmissions, integrated into the rtpmanager plugin. + ∘ audiomixer element that mixes multiple audio streams together + into a single one while keeping synchronization. This is + planned to become the replacement of the adder element. + ∘ OpenNI2 plugin for 3D cameras like the Kinect camera. + ∘ OpenEXR plugin for decoding high-dynamic-range EXR images. + ∘ curlsshsink and curlsftpsink to write files via SSH/SFTP. + ∘ videosignal, ivfparse and sndfile plugins ported from 0.10. + ∘ avfvideosrc, vtdec and other elements were ported from 0.10 and + are available on OS X and iOS now. • Other changes: - ∘ gst-libav now uses libav 9 - ∘ Static linking of plugins is supported now (also in 1.0.7) - ∘ rtspsrc: add support for NetClientClock: when the server suggests a - GstNetTimeProvider in the SDP, set up a GstNetClientClock that - slaves to the remote clock and suggest this clock in provide_clock. - Simplifies synchronized playback of a resource from an RTSP server. - gst-rtsp-server now supports adding this to the SDP and can provide - a network clock - ∘ RTP retransmission / NACK support and big RTP jitterbuffer improvements - ∘ SRTP and DTLS support - ∘ Changes to many elements and core to use the correct sticky event - order and also not lose any important sticky events during flushing - ∘ >1000 fixed bug reports, and many other bug fixes and other - improvements everywhere that had no bug report + ∘ gst-libav now uses libav 10, and gained support for H265/HEVC. + ∘ Support for hardware codecs and special memory types has been + improved with bugfixes and feature additions in various plugins + and base classes. + ∘ Various bugfixes and improvements to buffering in queue2 and + multiqueue elements. + ∘ dvbsrc supports more delivery mechanisms and other features + now, including DVB S2 and T2 support. + ∘ The MPEGTS library has support for many more descriptors. + ∘ Major improvements to tsdemux, especially time related. + ∘ souphttpsrc now has support for keep-alive connections, + compression, configurable number of retries and configuration + for SSL certificate validation. + ∘ hlsdemux has undergone major refactoring and works more + reliable now and supports more HLS features like trick modes. + Also fragments are pushed downstream while they're downloaded + now instead of waiting for each fragment to finish. + ∘ videoflip can automatically flip based on the orientation tag. + ∘ openjpeg supports the OpenJPEG2 API. + ∘ gst-rtsp-server supports SRTP and MIKEY now. + ∘ Lots of fixes for coverity warnings all over the place. + ∘ 400+ fixed bug reports, and many other bug fixes and other + improvements everywhere that had no bug report. Things to look out for: - • Single header includes for all libraries, e.g. #include - <gst/video/video.h> - this was needed for some bindings. - • Stricter (correct) caps subset checking in some cases where this was - not correct before. Caps will now always fail to be a compatible - subset of another set of caps if the subset caps are missing some - fields that the superset caps have. This might lead to not-negotiated - errors if caps are incomplete now. However, it also prevents possible - data corruption caused by piping data formatted in an - incompatible/unexpected way into some elements. Check your h264 caps - for stream-format and alignment fields and AAC caps for the - stream-format field. This change will also be included in the next - stable 1.0.8 release. - • Stricter checking for missing events and correct sticky event order - (stream-start, caps, segment) in some places; this is not enabled in - stable releases by default, but you may get warnings when using git - builds, development releases or when compiling with - -UG_DISABLE_ASSERT in CFLAGS - • x264enc now outputs data in byte-stream by default if downstream has - ANY caps (e.g. appsink without caps set, filesink, udpsink, - tcpserversink etc.) - • The MPEG TS demuxer posts messages contain the PMT, PAT, etc. in a - different format now. This new format uses the data structures from - the new MPEGTS library - • The GstContext API has changed between 1.1.4 and 1.1.90 + • The eglglessink element was removed and replaced by the glimagesink + element. + • The mfcdec element was removed and replaced by v4l2videodec. + • osxvideosink is only available in OS X 10.6 or newer. @@ -1,16 +1,29 @@ -Release notes for GStreamer Good Plugins 1.2.0 +Release notes for GStreamer Good Plugins 1.3.1 -The GStreamer team is proud to announce a new feature release -in the 1.x stable series of the -core of the GStreamer streaming media framework. +The GStreamer team is pleased to announce the first release of the unstable +1.3 release series. The 1.3 release series is adding new features on top of +the 1.0 and 1.2 series and is part of the API and ABI-stable 1.x release +series of the GStreamer multimedia framework. The unstable 1.3 release series +will lead to the stable 1.4 release series in the next weeks, and newly added +API can still change until that point. -The 1.x series is a stable series targeted at end users. -It is not API or ABI compatible with the stable 0.10.x series. -It is, however, parallel installable with the 0.10.x series and -will not affect an existing 0.10.x installation. + +Binaries for Android, iOS, Mac OS X and Windows will be provided separately +during the unstable 1.3 release series. + + + +The versioning scheme that is used in general is that 1.x.y is API and +ABI backwards compatible with previous 1.x.y releases. If x is an even +number it is a stable release series and all releases in this series +will only contain important bugfixes, e.g. the 1.0 series with 1.0.7. If +x is odd it is a development release series that will lead to the next +stable release series 1.x+1 and contains new features and bigger +changes. During the development release series, new API can still +change. @@ -57,11 +70,101 @@ contains a set of codecs plugins based on libav (formerly gst-ffmpeg) Bugs fixed in this release - * 706083 : v4l2src: UVC Allocated buffers wrapped in GstBuffer get orphaned by GstBuffer API - * 707242 : qtmux: streamable and faststart property have no effect - * 707933 : matroskademux: Wrong UTF8 detection causes wrong detection of subtitle encoding - * 708501 : osxvideosink: fix segfault releasing the element - * 708622 : rtpjitterbuffer: fix various regressions + * 728501 : rtpaux/rtprtx: Unit tests are racy and take very long sometimes + * 719636 : deinterlace: alters caps in passthrough mode preventing hardware decode + * 727305 : matroskademux: Add support for A_OPUS + * 725632 : v4l2: Normalise control names in the same way as v4l2-ctl + * 345830 : qtdemux: better edit lists handling + * 636143 : avidemux: report creation date/time via GST_TAG_DATE_TIME + * 652986 : rtpjitterbuffer: events are not serialized + * 664339 : matroskamux: support for audio/x-adpcm + * 691570 : [isomp4/qtdemux] lots of critical warnings on this sample file + * 692787 : rtph264pay: No way to clear SPS and PPS in case of a new stream + * 705024 : aacparse: does not propagate downstream sample rate restriction upstream + * 705982 : mp4mux: HDLR box name string is not NULL terminated + * 708165 : videomixer: Store and forward tag events + * 709079 : rtpgstpay: Leaks memory + * 709093 : qtdemux: add HEVC support + * 709266 : matroska-demux leaks memory + * 709312 : videoflip: Add an automatic method that flip base on image-orientation tag + * 710415 : hdv1394src: Not possible to select a HDV camera from GUID + * 710762 : qtdemux: fails reading some MOV files with problematic jpeg frames + * 711010 : videomixer: remove unneeded guint comparison + * 711011 : y4mencode: fix uninitialized variable warning + * 711013 : osxvideosink: fix missing selector name warning + * 711084 : rtpmanager: add new rtprtxsend and rtprtxreceive elements for retransmission + * 711087 : rtpbin: Support Auxiliary streams + * 711270 : check: add rtpsession test + * 711411 : rtpjitterbuffer: implement RTX statistics + * 711412 : rtpjitterbuffer: Automatically calculate RTX properties based on RTT + * 711560 : rtpsession: ssrc collision improvements + * 711693 : rtpsession: Implement various session statistics + * 712206 : v4l2: print FOURCC before enumerating + * 712254 : multifilesrc: Implement seeking in case of multiple images + * 712303 : qtdemux: playback regression after commit ae1150e85cf99d7482933aa6f7e4f012fe45a3ec + * 712567 : rtpsession: RBs are not included in SRs after the first RTCP timeout when there are multiple internal senders + * 712612 : v4l2bufferpool: take over the floating reference for the new allocator + * 712754 : v4l2: add support for multi-planar V4L2 API + * 719434 : rtph264pay maps and unmaps inbuffer twice + * 719497 : videoflip: crashes on tag list without orientation tag in git master + * 719783 : qtdemux: regression with mp4-main-multi-mpd-AV-NBS.mpd + * 719829 : rtp: Add RFC4571 framing/de-framing element + * 719938 : rtpbin: allow dynamic RTP/RTCP encoders and decoders + * 720371 : rtpbin: Impossible to set jitterbuffer rtx-* properties when using rtpbin + * 720512 : flacparse: Doesn't set the codec tag + * 720568 : v4l2: Various changes to allow using M2M decoders + * 720995 : matroskamux: add g726 adpcm support + * 721245 : osxvideosink: Fails to build on OS X Leopard 10.5.8 + * 721342 : shout2send: Some minor cleanups + * 722175 : rtpmanager: improve code of rtprtx* elements + * 722370 : rtprtxsend: push rtx buffers from a different thread to avoid long retransmission delays + * 722372 : rtpjitterbuffer: Got data flow before stream-start event + * 722394 : v4l2: set GST_BUFFER_FLAG_DELTA_UNIT when appropriate + * 722396 : avimux: don't make the buffer writable unless absolutely necessary + * 722866 : rtspsrc: add rtpjitterbuffer do-retransmission property + * 722981 : autodetect elements have inconsistent handling of autoplugin + * 723166 : qtdemux: incorrect tag character + * 723269 : matroskamux: used uid list grows forever + * 723289 : cairooverlay: add RGB16 support + * 723502 : gst-plugins-good: Do not build check tests for disabled plugins + * 723849 : matroska: add support for GRAY8, BGR and RGB video colourspaces in V_UNCOMPRESSED codec + * 724085 : gst-plugins-good/docs: Rebalance docbook < para > tags in comments + * 724213 : rtph264pay: shouldn't update time for sending SPS and PPS if we failed to send SPS or PPS + * 724396 : rtspsrc: add tls-database property + * 724636 : v4l2videodec: VP8 KO with playbin + * 724705 : videomixer: Port to new collectpads API + * 724712 : rtspsrc doesn't set caps on pads before adding them + * 724899 : v4l2src does not set interlaced flag on buffers + * 725008 : matroskademux: crash with 24bit raw audio + * 725159 : rtpjitterbuffer: RTP sequence number rollover problems + * 725361 : [regression] rtpsession: setting the " internal-ssrc " property does nothing + * 725480 : gst-plugins-good: Ignore gcov intermediate files + * 725723 : osxvideo: GetCurrentProcess not available on Mavericks + * 725948 : videomixer2: crash after renegotiating with different resolution + * 726106 : matroskademux: does not handle fps lower than 1 + * 726161 : png plugin handles interlaced png files incorrectly + * 726696 : rtspsrc memleaks + * 726737 : osxvideosink: advertize for the video meta API support + * 726738 : osxvideosink: use the video frame API instead of the video meta API + * 726833 : ximagesrc: Add alpha channel support + * 726837 : rtspsrc segfault + * 727821 : souphttpsrc: Regression in push mode + * 727867 : qtdemux: Does not return stream flags from trex atom + * 727878 : qtdemux: replace duplicated variable when parsing trex atom + * 729223 : wavparse: drops upstream tags for .wav files that are ID3 tagged + * 728987 : qtdemux: 'caps' may be used uninitialized in this function. + * 729067 : goom filter: left shift of 24 places cannot be represented in type 'int' + * 712333 : regression: videoflip: aborts with gst_video_flip_transform_caps: code should not be reached + * 722077 : v4l2: compile error - 'V4L2_CAP_VIDEO_M2M_MPLANE' undeclared + * 722127 : v4l2: Add NV12_64Z32 support + * 722128 : v4l2: Implement video decoder + * 723446 : v4l2src: Should detect support for mplanar formats during runtime + * 726453 : v4l2 plugin broken due to bundeling of videodev2.h + * 721764 : souphttpsrc: Add ability to do HTTP session logging + * 722311 : matroskaparse: should try to identify data on stream header before going with a blind + * 722705 : Factor out common init/reset code from matroska parse/demux + * 712643 : qtdemux: couple of issues with vobsub + * 581295 : mp4mux: Add support for embedded subtitles ==== Download ==== @@ -98,11 +201,70 @@ subscribe to the gstreamer-devel list. Contributors to this release + * Akihiro Tsukada + * Aleix Conchillo Flaque + * Aleix Conchillo Flaqué + * Alessandro Decina + * Alexander Zallesov * Andoni Morales Alastruey + * Benjamin Gaignard + * Branislav Katreniak + * Brendan Long + * Christian Fredrik Kalager Schaller + * Dan Kegel + * Darryl Gamroth + * Djalma Lúcio Soares da Silva * Edward Hervey + * George Kiagiadakis + * Göran Jönsson + * Hans Månsson + * Hugues Fruchet + * Jake Foytik + * Jan Schmidt + * Jeremy Huddleston + * Jeremy Huddleston Sequoia + * Jimmy Ohn + * Jonas Holmberg + * Josep Torra + * Julien Isorce + * Justin Joy + * Luis de Bethencourt + * Marc Leeman + * Mark Nauwelaerts + * Matej Knopp + * Mathieu Duponchelle + * MathieuDuponchelle + * Matthieu Bouron + * Michael Olbrich + * Mike Sheldon + * Nicola Murino + * Nicolas Dufresne + * Ognyan Tonchev * Olivier Crête - * Robert Krakora + * Paul HENRYS + * Per x Johansson + * Peter Korsgaard + * Philippe Normand + * Rafał Mużyło + * Reynaldo H. Verdejo Pinochet + * Rico Tzschichholz + * Ryan Lortie + * Santiago Carot-Nemesio * Sebastian Dröge + * Sebastian Rasmussen + * Simon Farnsworth + * Sreerenj Balachandran + * Stefan Sauer + * Stéphane Cerveau + * Thiago Santos + * Thibault Saunier + * Thijs Vermeir * Tim-Philipp Müller + * Todd Agulnick + * Torrie Fischer + * Vincent Penquerc'h + * William Jon McCann + * William Manley * Wim Taymans + * divhaere
\ No newline at end of file diff --git a/configure.ac b/configure.ac index 7b754d1044..b31be2abcf 100644 --- a/configure.ac +++ b/configure.ac @@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file dnl initialize autoconf dnl releases only do -Wall, git and prerelease does -Werror too dnl use a three digit version number for releases, and four for git/pre -AC_INIT([GStreamer Good Plug-ins],[1.3.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good]) +AC_INIT([GStreamer Good Plug-ins],[1.3.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-good]) AG_GST_INIT @@ -43,11 +43,11 @@ AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION", [GStreamer API Version]) AG_GST_LIBTOOL_PREPARE -AS_LIBTOOL(GST, 300, 0, 300) +AS_LIBTOOL(GST, 301, 0, 301) dnl *** required versions of GStreamer stuff *** -GST_REQ=1.3.0.1 -GSTPB_REQ=1.3.0.1 +GST_REQ=1.3.1 +GSTPB_REQ=1.3.1 dnl *** autotools stuff **** diff --git a/docs/plugins/gst-plugins-good-plugins.args b/docs/plugins/gst-plugins-good-plugins.args index 6bdc4a575c..8e17826f75 100644 --- a/docs/plugins/gst-plugins-good-plugins.args +++ b/docs/plugins/gst-plugins-good-plugins.args @@ -989,6 +989,26 @@ </ARG> <ARG> +<NAME>GstRTSPSrc::tls-database</NAME> +<TYPE>GTlsDatabase*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>TLS database</NICK> +<BLURB>TLS database with anchor certificate authorities used to validate the server certificate.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstRTSPSrc::tls-validation-flags</NAME> +<TYPE>GTlsCertificateFlags</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>TLS validation flags</NICK> +<BLURB>TLS certificate validation flags used to validate the server certificate.</BLURB> +<DEFAULT>G_TLS_CERTIFICATE_UNKNOWN_CA|G_TLS_CERTIFICATE_BAD_IDENTITY|G_TLS_CERTIFICATE_NOT_ACTIVATED|G_TLS_CERTIFICATE_EXPIRED|G_TLS_CERTIFICATE_REVOKED|G_TLS_CERTIFICATE_INSECURE|G_TLS_CERTIFICATE_GENERIC_ERROR</DEFAULT> +</ARG> + +<ARG> <NAME>GstRTPDec::skip</NAME> <TYPE>gint</TYPE> <RANGE></RANGE> @@ -1264,7 +1284,7 @@ <RANGE></RANGE> <FLAGS>rw</FLAGS> <NICK>ip</NICK> -<BLURB>ip.</BLURB> +<BLURB>IP address or hostname.</BLURB> <DEFAULT>"127.0.0.1"</DEFAULT> </ARG> @@ -1334,7 +1354,7 @@ <RANGE></RANGE> <FLAGS>rw</FLAGS> <NICK>url</NICK> -<BLURB>url.</BLURB> +<BLURB>the stream's homepage URL.</BLURB> <DEFAULT>""</DEFAULT> </ARG> @@ -2432,7 +2452,7 @@ <NAME>GstVideoFlip::method</NAME> <TYPE>GstVideoFlipMethod</TYPE> <RANGE></RANGE> -<FLAGS>rw</FLAGS> +<FLAGS>rwx</FLAGS> <NICK>method</NICK> <BLURB>method.</BLURB> <DEFAULT>Identity (no rotation)</DEFAULT> @@ -3214,7 +3234,7 @@ <RANGE>>= G_MAXULONG</RANGE> <FLAGS>rw</FLAGS> <NICK>Maximum Consecutive Decoding Errors</NICK> -<BLURB>Error out after receiving N consecutive decoding errors (-1 = never fail, 0 = automatic, 1 = fail on first error).</BLURB> +<BLURB>(Deprecated) Error out after receiving N consecutive decoding errors (-1 = never fail, 0 = automatic, 1 = fail on first error).</BLURB> <DEFAULT>0</DEFAULT> </ARG> @@ -4165,7 +4185,77 @@ <FLAGS>rw</FLAGS> <NICK>timeout</NICK> <BLURB>Value in seconds to timeout a blocking I/O (0 = No timeout).</BLURB> -<DEFAULT>0</DEFAULT> +<DEFAULT>15</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::compress</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Compress</NICK> +<BLURB>Allow compressed content encodings.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::http-log-level</NAME> +<TYPE>SoupLoggerLogLevel</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>HTTP log level</NICK> +<BLURB>Set log level for soup's HTTP session log.</BLURB> +<DEFAULT>SOUP_LOGGER_LOG_HEADERS</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::keep-alive</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>keep-alive</NICK> +<BLURB>Use HTTP persistent connections.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::retries</NAME> +<TYPE>gint</TYPE> +<RANGE>>= G_MAXULONG</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Retries</NICK> +<BLURB>Maximum number of retries until giving up (-1=infinite).</BLURB> +<DEFAULT>3</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::ssl-ca-file</NAME> +<TYPE>gchar*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>SSL CA File</NICK> +<BLURB>Location of a SSL anchor CA file to use.</BLURB> +<DEFAULT>NULL</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::ssl-strict</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>SSL Strict</NICK> +<BLURB>Strict SSL certificate checking.</BLURB> +<DEFAULT>TRUE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstSoupHTTPSrc::ssl-use-system-ca-file</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Use System CA File</NICK> +<BLURB>Use system CA file.</BLURB> +<DEFAULT>TRUE</DEFAULT> </ARG> <ARG> @@ -21335,7 +21425,7 @@ <FLAGS>rw</FLAGS> <NICK>RTX Delay</NICK> <BLURB>Extra time in ms to wait before sending retransmission event (-1 automatic).</BLURB> -<DEFAULT>20</DEFAULT> +<DEFAULT>-1</DEFAULT> </ARG> <ARG> @@ -21355,7 +21445,7 @@ <FLAGS>rw</FLAGS> <NICK>RTX Retry Period</NICK> <BLURB>Try to get a retransmission for this many ms (-1 automatic).</BLURB> -<DEFAULT>160</DEFAULT> +<DEFAULT>-1</DEFAULT> </ARG> <ARG> @@ -21365,7 +21455,17 @@ <FLAGS>rw</FLAGS> <NICK>RTX Retry Timeout</NICK> <BLURB>Retry sending a transmission event after this timeout in ms (-1 automatic).</BLURB> -<DEFAULT>40</DEFAULT> +<DEFAULT>-1</DEFAULT> +</ARG> + +<ARG> +<NAME>GstRtpJitterBuffer::stats</NAME> +<TYPE>GstStructure*</TYPE> +<RANGE></RANGE> +<FLAGS>r</FLAGS> +<NICK>Statistics</NICK> +<BLURB>Various statistics.</BLURB> +<DEFAULT></DEFAULT> </ARG> <ARG> @@ -21489,6 +21589,16 @@ </ARG> <ARG> +<NAME>GstRtpSession::stats</NAME> +<TYPE>GstStructure*</TYPE> +<RANGE></RANGE> +<FLAGS>r</FLAGS> +<NICK>Statistics</NICK> +<BLURB>Various statistics.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> <NAME>GstRtpRtxSend::rtx-payload-type</NAME> <TYPE>guint</TYPE> <RANGE></RANGE> @@ -21503,7 +21613,7 @@ <TYPE>guint</TYPE> <RANGE></RANGE> <FLAGS>rw</FLAGS> -<NICK>Max Size Times</NICK> +<NICK>Max Size Time</NICK> <BLURB>Amount of ms to queue (0 = unlimited).</BLURB> <DEFAULT>0</DEFAULT> </ARG> @@ -21511,11 +21621,11 @@ <ARG> <NAME>GstRtpRtxSend::max-size-packets</NAME> <TYPE>guint</TYPE> -<RANGE></RANGE> +<RANGE><= 32767</RANGE> <FLAGS>rw</FLAGS> <NICK>Max Size Packets</NICK> <BLURB>Amount of packets to queue (0 = unlimited).</BLURB> -<DEFAULT>0</DEFAULT> +<DEFAULT>100</DEFAULT> </ARG> <ARG> @@ -21533,12 +21643,32 @@ <TYPE>guint</TYPE> <RANGE></RANGE> <FLAGS>r</FLAGS> -<NICK>Num RTX Packet</NICK> -<BLURB>Number of retransmission packets sent.</BLURB> +<NICK>Num RTX Packets</NICK> +<BLURB> Number of retransmission packets sent.</BLURB> <DEFAULT>0</DEFAULT> </ARG> <ARG> +<NAME>GstRtpRtxSend::payload-type-map</NAME> +<TYPE>GstStructure*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Payload Type Map</NICK> +<BLURB>Map of original payload types to their retransmission payload types.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstRtpRtxSend::ssrc-map</NAME> +<TYPE>GstStructure*</TYPE> +<RANGE></RANGE> +<FLAGS>w</FLAGS> +<NICK>SSRC Map</NICK> +<BLURB>Map of SSRCs to their retransmission SSRCs for SSRC-multiplexed mode (default = random).</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> <NAME>GstRtpRtxReceive::rtx-payload-types</NAME> <TYPE>string</TYPE> <RANGE></RANGE> @@ -21563,8 +21693,8 @@ <TYPE>guint</TYPE> <RANGE></RANGE> <FLAGS>r</FLAGS> -<NICK>Num RTX Packet</NICK> -<BLURB>Number of retransmission packets received.</BLURB> +<NICK>Num RTX Packets</NICK> +<BLURB> Number of retransmission packets received.</BLURB> <DEFAULT>0</DEFAULT> </ARG> @@ -21574,11 +21704,21 @@ <RANGE></RANGE> <FLAGS>r</FLAGS> <NICK>Num RTX Associated Packets</NICK> -<BLURB>correctly associated with retransmission requests.</BLURB> +<BLURB>Number of retransmission packets correctly associated with retransmission requests.</BLURB> <DEFAULT>0</DEFAULT> </ARG> <ARG> +<NAME>GstRtpRtxReceive::payload-type-map</NAME> +<TYPE>GstStructure*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Payload Type Map</NICK> +<BLURB>Map of original payload types to their retransmission payload types.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> <NAME>GstV4l2Sink::device</NAME> <TYPE>gchar*</TYPE> <RANGE></RANGE> @@ -23089,6 +23229,16 @@ </ARG> <ARG> +<NAME>GstSoupHttpClientSink::http-log-level</NAME> +<TYPE>SoupLoggerLogLevel</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>HTTP log level</NICK> +<BLURB>Set log level for soup's HTTP session log.</BLURB> +<DEFAULT>SOUP_LOGGER_LOG_NONE</DEFAULT> +</ARG> + +<ARG> <NAME>GstWavParse::ignore-length</NAME> <TYPE>gboolean</TYPE> <RANGE></RANGE> @@ -24078,3 +24228,503 @@ <DEFAULT>0</DEFAULT> </ARG> +<ARG> +<NAME>GstRtpVP8Pay::picture-id-mode</NAME> +<TYPE>GstVP8RTPPayMode</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Picture ID Mode</NICK> +<BLURB>The picture ID mode for payloading.</BLURB> +<DEFAULT>No Picture ID</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::arnr-maxframes</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,15]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>AltRef max frames</NICK> +<BLURB>AltRef maximum number of frames.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::arnr-strength</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,6]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>AltRef strength</NICK> +<BLURB>AltRef strength.</BLURB> +<DEFAULT>3</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::arnr-type</NAME> +<TYPE>gint</TYPE> +<RANGE>[1,3]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>AltRef type</NICK> +<BLURB>AltRef type.</BLURB> +<DEFAULT>3</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::auto-alt-ref</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Auto alt reference frames</NICK> +<BLURB>Automatically generate AltRef frames.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::buffer-initial-size</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Buffer initial size</NICK> +<BLURB>Initial client buffer size (ms).</BLURB> +<DEFAULT>4000</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::buffer-optimal-size</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Buffer optimal size</NICK> +<BLURB>Optimal client buffer size (ms).</BLURB> +<DEFAULT>5000</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::buffer-size</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Buffer size</NICK> +<BLURB>Client buffer size (ms).</BLURB> +<DEFAULT>6000</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::cpu-used</NAME> +<TYPE>gint</TYPE> +<RANGE>[-16,16]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>CPU used</NICK> +<BLURB>CPU used.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::cq-level</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,63]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Constrained quality level</NICK> +<BLURB>Constrained quality level.</BLURB> +<DEFAULT>10</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::deadline</NAME> +<TYPE>gint64</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Deadline</NICK> +<BLURB>Deadline per frame (usec, 0=disabled).</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::dropframe-threshold</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,100]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Drop Frame Threshold</NICK> +<BLURB>Temporal resampling threshold (buf %).</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::end-usage</NAME> +<TYPE>GstVP9EncEndUsage</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Rate control mode</NICK> +<BLURB>Rate control mode.</BLURB> +<DEFAULT>Variable Bit Rate (VBR) mode</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::error-resilient</NAME> +<TYPE>GstVP9EncErFlags</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Error resilient</NICK> +<BLURB>Error resilience flags.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::horizontal-scaling-mode</NAME> +<TYPE>GstVP9EncScalingMode</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Horizontal scaling mode</NICK> +<BLURB>Horizontal scaling mode.</BLURB> +<DEFAULT>Normal</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::keyframe-max-dist</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Keyframe max distance</NICK> +<BLURB>Maximum distance between keyframes (number of frames).</BLURB> +<DEFAULT>128</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::keyframe-mode</NAME> +<TYPE>GstVP9EncKfMode</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Keyframe Mode</NICK> +<BLURB>Keyframe placement.</BLURB> +<DEFAULT>Determine optimal placement automatically</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::lag-in-frames</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,25]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Lag in frames</NICK> +<BLURB>Maximum number of frames to lag.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::max-intra-bitrate</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Max Intra bitrate</NICK> +<BLURB>Maximum Intra frame bitrate.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::max-quantizer</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,63]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Maximum Quantizer</NICK> +<BLURB>Maximum Quantizer (worst).</BLURB> +<DEFAULT>63</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::min-quantizer</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,63]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Minimum Quantizer</NICK> +<BLURB>Minimum Quantizer (best).</BLURB> +<DEFAULT>4</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::multipass-cache-file</NAME> +<TYPE>gchar*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Multipass Cache File</NICK> +<BLURB>Multipass cache file.</BLURB> +<DEFAULT>"multipass.cache"</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::multipass-mode</NAME> +<TYPE>GstVP9EncMultipassMode</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Multipass Mode</NICK> +<BLURB>Multipass encode mode.</BLURB> +<DEFAULT>One pass encoding (default)</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::noise-sensitivity</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,6]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Noise sensitivity</NICK> +<BLURB>Noise sensisivity (frames to blur).</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::overshoot</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,1000]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Overshoot PCT</NICK> +<BLURB>Datarate overshoot (max) target (%).</BLURB> +<DEFAULT>100</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::resize-allowed</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Resize Allowed</NICK> +<BLURB>Allow spatial resampling.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::resize-down-threshold</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,100]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Resize Down Threshold</NICK> +<BLURB>Downscale threshold (buf %).</BLURB> +<DEFAULT>60</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::resize-up-threshold</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,100]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Resize Up Threshold</NICK> +<BLURB>Upscale threshold (buf %).</BLURB> +<DEFAULT>30</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::sharpness</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,7]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Sharpness</NICK> +<BLURB>Filter sharpness.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::static-threshold</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Static Threshold</NICK> +<BLURB>Motion detection threshold.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::target-bitrate</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Target bitrate</NICK> +<BLURB>Target bitrate (in bits/sec).</BLURB> +<DEFAULT>256000</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::temporal-scalability-layer-id</NAME> +<TYPE>GValueArray*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Coding layer identification</NICK> +<BLURB>Sequence defining coding layer membership.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::temporal-scalability-number-layers</NAME> +<TYPE>gint</TYPE> +<RANGE>[1,5]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Number of coding layers</NICK> +<BLURB>Number of coding layers to use.</BLURB> +<DEFAULT>1</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::temporal-scalability-periodicity</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,16]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Coding layer periodicity</NICK> +<BLURB>Length of sequence that defines layer membership periodicity.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::temporal-scalability-rate-decimator</NAME> +<TYPE>GValueArray*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Coding layer rate decimator</NICK> +<BLURB>Rate decimation factors for each layer.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::temporal-scalability-target-bitrate</NAME> +<TYPE>GValueArray*</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Coding layer target bitrates</NICK> +<BLURB>Target bitrates for coding layers (one per layer, decreasing).</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::threads</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,64]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Threads</NICK> +<BLURB>Number of threads to use.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::timebase</NAME> +<TYPE>GstFraction</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Shortest interframe time</NICK> +<BLURB>Fraction of one second that is the shortest interframe time - normally left as zero which will default to the framerate.</BLURB> +<DEFAULT></DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::token-partitions</NAME> +<TYPE>GstVP9EncTokenPartitions</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Token partitions</NICK> +<BLURB>Number of token partitions.</BLURB> +<DEFAULT>One token partition</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::tuning</NAME> +<TYPE>GstVP9EncTuning</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Tuning</NICK> +<BLURB>Tuning.</BLURB> +<DEFAULT>Tune for PSNR</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::twopass-vbr-bias</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,100]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>2-pass VBR bias</NICK> +<BLURB>CBR/VBR bias (0=CBR, 100=VBR).</BLURB> +<DEFAULT>50</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::twopass-vbr-maxsection</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>2-pass GOP max bitrate</NICK> +<BLURB>GOP maximum bitrate (% target).</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::twopass-vbr-minsection</NAME> +<TYPE>gint</TYPE> +<RANGE>>= 0</RANGE> +<FLAGS>rw</FLAGS> +<NICK>2-pass GOP min bitrate</NICK> +<BLURB>GOP minimum bitrate (% target).</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::undershoot</NAME> +<TYPE>gint</TYPE> +<RANGE>[0,1000]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Undershoot PCT</NICK> +<BLURB>Datarate undershoot (min) target (%).</BLURB> +<DEFAULT>100</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Enc::vertical-scaling-mode</NAME> +<TYPE>GstVP9EncScalingMode</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Vertical scaling mode</NICK> +<BLURB>Vertical scaling mode.</BLURB> +<DEFAULT>Normal</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Dec::deblocking-level</NAME> +<TYPE>guint</TYPE> +<RANGE><= 16</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Deblocking Level</NICK> +<BLURB>Deblocking level.</BLURB> +<DEFAULT>4</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Dec::noise-level</NAME> +<TYPE>guint</TYPE> +<RANGE><= 16</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Noise Level</NICK> +<BLURB>Noise level.</BLURB> +<DEFAULT>0</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Dec::post-processing</NAME> +<TYPE>gboolean</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Post Processing</NICK> +<BLURB>Enable post processing.</BLURB> +<DEFAULT>FALSE</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Dec::post-processing-flags</NAME> +<TYPE>GstVP9DecPostProcessingFlags</TYPE> +<RANGE></RANGE> +<FLAGS>rw</FLAGS> +<NICK>Post Processing Flags</NICK> +<BLURB>Flags to control post processing.</BLURB> +<DEFAULT>Deblock|Demacroblock</DEFAULT> +</ARG> + +<ARG> +<NAME>GstVP9Dec::threads</NAME> +<TYPE>guint</TYPE> +<RANGE>[1,16]</RANGE> +<FLAGS>rw</FLAGS> +<NICK>Max Threads</NICK> +<BLURB>Maximum number of decoding threads.</BLURB> +<DEFAULT>1</DEFAULT> +</ARG> + diff --git a/docs/plugins/gst-plugins-good-plugins.hierarchy b/docs/plugins/gst-plugins-good-plugins.hierarchy index eecaeaeb79..dfe885968a 100644 --- a/docs/plugins/gst-plugins-good-plugins.hierarchy +++ b/docs/plugins/gst-plugins-good-plugins.hierarchy @@ -14,6 +14,9 @@ GObject GstAudioClock GstControlBinding GstControlSource + GstDeviceMonitor + GstPulseDeviceMonitor + GstV4l2DeviceMonitor GstElement Gst3GPPMux GstALawDec @@ -40,6 +43,7 @@ GObject GstDcaParse GstFlacParse GstMpegAudioParse + GstRtpStreamDepay GstSbcParse GstWavpackParse GstBaseSink @@ -137,10 +141,11 @@ GObject GstWarpTV GstBin GstAspectRatioCrop - GstAutoAudioSink - GstAutoAudioSrc - GstAutoVideoSink - GstAutoVideoSrc + GstAutoDetect + GstAutoAudioSink + GstAutoAudioSrc + GstAutoVideoSink + GstAutoVideoSrc GstPipeline GstQTMoovRecover GstPushFileSrc @@ -258,10 +263,11 @@ GObject GstRndBufferSize GstRtpJitterBuffer GstRtpPtDemux + GstRtpRtxReceive + GstRtpRtxSend GstRtpSession GstRtpSsrcDemux - GstRtpRtxSend - GstRtpRtxReceive + GstRtpStreamPay GstSMPTE GstShapeWipe GstTagDemux @@ -275,10 +281,12 @@ GObject GstJpegDec GstPngDec GstVP8Dec + GstVP9Dec GstVideoEncoder GstJpegEnc GstPngEnc GstVP8Enc + GstVP9Enc GstVideoMixer2 GstWavEnc GstWavParse @@ -289,12 +297,14 @@ GObject GstPadTemplate GstPlugin GstPluginFeature + GstDeviceMonitorFactory GstElementFactory GstTypeFindFactory GstRegistry GstTask GstTaskPool GSocket + GTlsDatabase GdkPixbuf GstColorBalanceChannel GstTunerChannel @@ -304,10 +314,10 @@ GObject GInterface GIcon GInitable + GLoadableIcon GTypePlugin GstChildProxy GstColorBalance - GstNavigation GstPreset GstStreamVolume GstTagSetter @@ -316,4 +326,3 @@ GInterface GstTuner GstURIHandler GstVideoOrientation - GstVideoOverlay diff --git a/docs/plugins/gst-plugins-good-plugins.interfaces b/docs/plugins/gst-plugins-good-plugins.interfaces index e976d4caec..8dfb97d030 100644 --- a/docs/plugins/gst-plugins-good-plugins.interfaces +++ b/docs/plugins/gst-plugins-good-plugins.interfaces @@ -1,11 +1,13 @@ GSocket GInitable GdkPixbuf GIcon +GdkPixbuf GIcon GLoadableIcon Gst3GPPMux GstTagSetter GstTagXmpWriter GstApev2Mux GstTagSetter GstAspectRatioCrop GstChildProxy GstAudioEncoder GstPreset GstAutoAudioSink GstChildProxy GstAutoAudioSrc GstChildProxy +GstAutoDetect GstChildProxy GstAutoVideoSink GstChildProxy GstAutoVideoSrc GstChildProxy GstAviMux GstTagSetter @@ -78,10 +80,12 @@ GstUDPSrc GstURIHandler GstV4l2Radio GstURIHandler GstImplementsInterface GstTuner GstPropertyProbe GstV4l2Radio GstURIHandler GstTuner GstV4l2Sink GstImplementsInterface GstXOverlay GstNavigation GstColorBalance GstVideoOrientation GstPropertyProbe +GstV4l2Sink GstTuner GstColorBalance GstVideoOrientation GstV4l2Sink GstTuner GstVideoOverlay GstNavigation GstColorBalance GstVideoOrientation GstV4l2Src GstURIHandler GstImplementsInterface GstTuner GstColorBalance GstVideoOrientation GstPropertyProbe GstV4l2Src GstURIHandler GstTuner GstColorBalance GstVideoOrientation GstVP8Enc GstPreset GstTagSetter +GstVP9Enc GstPreset GstTagSetter GstVideoBalance GstColorBalance GstVideoBalance GstImplementsInterface GstColorBalance GstVideoEncoder GstPreset diff --git a/docs/plugins/gst-plugins-good-plugins.prerequisites b/docs/plugins/gst-plugins-good-plugins.prerequisites index ab859280ec..962b020ec9 100644 --- a/docs/plugins/gst-plugins-good-plugins.prerequisites +++ b/docs/plugins/gst-plugins-good-plugins.prerequisites @@ -1,5 +1,6 @@ GIcon GObject GInitable GObject +GLoadableIcon GIcon GObject GstChildProxy GObject GstChildProxy GstObject GstColorBalance GstImplementsInterface GstElement diff --git a/docs/plugins/gst-plugins-good-plugins.signals b/docs/plugins/gst-plugins-good-plugins.signals index 794622b8ed..b14af19a3c 100644 --- a/docs/plugins/gst-plugins-good-plugins.signals +++ b/docs/plugins/gst-plugins-good-plugins.signals @@ -479,6 +479,64 @@ guint arg2 </SIGNAL> <SIGNAL> +<NAME>GstRtpBin::new-jitterbuffer</NAME> +<RETURNS>void</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +GstElement *arg1 +guint arg2 +guint arg3 +</SIGNAL> + +<SIGNAL> +<NAME>GstRtpBin::request-aux-receiver</NAME> +<RETURNS>GstElement*</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +guint arg1 +</SIGNAL> + +<SIGNAL> +<NAME>GstRtpBin::request-aux-sender</NAME> +<RETURNS>GstElement*</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +guint arg1 +</SIGNAL> + +<SIGNAL> +<NAME>GstRtpBin::request-rtcp-decoder</NAME> +<RETURNS>GstElement*</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +guint arg1 +</SIGNAL> + +<SIGNAL> +<NAME>GstRtpBin::request-rtcp-encoder</NAME> +<RETURNS>GstElement*</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +guint arg1 +</SIGNAL> + +<SIGNAL> +<NAME>GstRtpBin::request-rtp-decoder</NAME> +<RETURNS>GstElement*</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +guint arg1 +</SIGNAL> + +<SIGNAL> +<NAME>GstRtpBin::request-rtp-encoder</NAME> +<RETURNS>GstElement*</RETURNS> +<FLAGS>l</FLAGS> +GstRtpBin *gstrtpbin +guint arg1 +</SIGNAL> + +<SIGNAL> <NAME>GstRtpJitterBuffer::clear-pt-map</NAME> <RETURNS>void</RETURNS> <FLAGS>la</FLAGS> @@ -715,3 +773,11 @@ guint arg1 GstCaps *arg2 </SIGNAL> +<SIGNAL> +<NAME>GstRTSPSrc::new-manager</NAME> +<RETURNS>void</RETURNS> +<FLAGS>fc</FLAGS> +GstRTSPSrc *gstrtspsrc +GstElement *arg1 +</SIGNAL> + diff --git a/docs/plugins/inspect/plugin-1394.xml b/docs/plugins/inspect/plugin-1394.xml index a2cf34118d..4c60e18cd3 100644 --- a/docs/plugins/inspect/plugin-1394.xml +++ b/docs/plugins/inspect/plugin-1394.xml @@ -3,7 +3,7 @@ <description>Source for video data via IEEE1394 interface</description> <filename>../../ext/raw1394/.libs/libgst1394.so</filename> <basename>libgst1394.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-aasink.xml b/docs/plugins/inspect/plugin-aasink.xml index e35a0962c7..ab51066d75 100644 --- a/docs/plugins/inspect/plugin-aasink.xml +++ b/docs/plugins/inspect/plugin-aasink.xml @@ -3,7 +3,7 @@ <description>ASCII Art video sink</description> <filename>../../ext/aalib/.libs/libgstaasink.so</filename> <basename>libgstaasink.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-alaw.xml b/docs/plugins/inspect/plugin-alaw.xml index e80dc97e09..a32dbb81c4 100644 --- a/docs/plugins/inspect/plugin-alaw.xml +++ b/docs/plugins/inspect/plugin-alaw.xml @@ -3,7 +3,7 @@ <description>ALaw audio conversion routines</description> <filename>../../gst/law/.libs/libgstalaw.so</filename> <basename>libgstalaw.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-alpha.xml b/docs/plugins/inspect/plugin-alpha.xml index 99e4811d36..7f6c5a0abb 100644 --- a/docs/plugins/inspect/plugin-alpha.xml +++ b/docs/plugins/inspect/plugin-alpha.xml @@ -3,7 +3,7 @@ <description>adds an alpha channel to video - constant or via chroma-keying</description> <filename>../../gst/alpha/.libs/libgstalpha.so</filename> <basename>libgstalpha.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-alphacolor.xml b/docs/plugins/inspect/plugin-alphacolor.xml index ebb423c05a..02f284a687 100644 --- a/docs/plugins/inspect/plugin-alphacolor.xml +++ b/docs/plugins/inspect/plugin-alphacolor.xml @@ -3,7 +3,7 @@ <description>RGBA from/to AYUV colorspace conversion preserving the alpha channel</description> <filename>../../gst/alpha/.libs/libgstalphacolor.so</filename> <basename>libgstalphacolor.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-apetag.xml b/docs/plugins/inspect/plugin-apetag.xml index ef3d3d3e01..fb04308ecc 100644 --- a/docs/plugins/inspect/plugin-apetag.xml +++ b/docs/plugins/inspect/plugin-apetag.xml @@ -3,7 +3,7 @@ <description>APEv1/2 tag reader</description> <filename>../../gst/apetag/.libs/libgstapetag.so</filename> <basename>libgstapetag.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-audiofx.xml b/docs/plugins/inspect/plugin-audiofx.xml index 7e526c8282..2da24ab13d 100644 --- a/docs/plugins/inspect/plugin-audiofx.xml +++ b/docs/plugins/inspect/plugin-audiofx.xml @@ -3,7 +3,7 @@ <description>Audio effects plugin</description> <filename>../../gst/audiofx/.libs/libgstaudiofx.so</filename> <basename>libgstaudiofx.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-audioparsers.xml b/docs/plugins/inspect/plugin-audioparsers.xml index f4a039df0f..7a3bf28e2a 100644 --- a/docs/plugins/inspect/plugin-audioparsers.xml +++ b/docs/plugins/inspect/plugin-audioparsers.xml @@ -3,7 +3,7 @@ <description>Parsers for various audio formats</description> <filename>../../gst/audioparsers/.libs/libgstaudioparsers.so</filename> <basename>libgstaudioparsers.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-auparse.xml b/docs/plugins/inspect/plugin-auparse.xml index c241d1d6ee..677bfeabd2 100644 --- a/docs/plugins/inspect/plugin-auparse.xml +++ b/docs/plugins/inspect/plugin-auparse.xml @@ -3,7 +3,7 @@ <description>parses au streams</description> <filename>../../gst/auparse/.libs/libgstauparse.so</filename> <basename>libgstauparse.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-autodetect.xml b/docs/plugins/inspect/plugin-autodetect.xml index 6cb3bd806b..962b7074bd 100644 --- a/docs/plugins/inspect/plugin-autodetect.xml +++ b/docs/plugins/inspect/plugin-autodetect.xml @@ -3,7 +3,7 @@ <description>Plugin contains auto-detection plugins for video/audio in- and outputs</description> <filename>../../gst/autodetect/.libs/libgstautodetect.so</filename> <basename>libgstautodetect.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-avi.xml b/docs/plugins/inspect/plugin-avi.xml index a95dbaa9b3..f03c50a5c4 100644 --- a/docs/plugins/inspect/plugin-avi.xml +++ b/docs/plugins/inspect/plugin-avi.xml @@ -3,7 +3,7 @@ <description>AVI stream handling</description> <filename>../../gst/avi/.libs/libgstavi.so</filename> <basename>libgstavi.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -29,6 +29,12 @@ <details>audio/ms-gsm, rate=(int)[ 1, 96000 ], channels=(int)[ 1, 2 ]; audio/mpeg, mpegversion=(int)1, layer=(int)3, rate=(int)[ 8000, 48000 ], channels=(int)[ 1, 2 ]; audio/mpeg, mpegversion=(int)1, layer=(int)2, rate=(int)[ 16000, 48000 ], channels=(int)[ 1, 2 ]; audio/x-raw, format=(string){ S8, U8, S16LE, U16LE, S24LE, U24LE, S32LE, U32LE }, layout=(string)interleaved, rate=(int)[ 1000, 192000 ], channels=(int)[ 1, 8 ]; audio/x-vorbis, rate=(int)[ 1000, 192000 ], channels=(int)[ 1, 2 ]; audio/x-ac3, rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 6 ]; audio/x-dts; audio/mpeg, mpegversion=(int)4, rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 8 ]; audio/x-alaw, rate=(int)[ 1000, 48000 ], channels=(int)[ 1, 2 ]; audio/x-mulaw, rate=(int)[ 1000, 48000 ], channels=(int)[ 1, 2 ]; audio/x-wms, bitrate=(int)[ 0, 2147483647 ], rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 2 ], block_align=(int)[ 1, 2147483647 ]; audio/x-adpcm, layout=(string)microsoft, rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 2 ], block_align=(int)[ 1, 2147483647 ]; audio/x-adpcm, layout=(string)dvi, rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 2 ], block_align=(int)[ 1, 2147483647 ]; audio/x-truespeech, rate=(int)8000, channels=(int)[ 1, 2 ]; audio/x-wma, wmaversion=(int)1, bitrate=(int)[ 0, 2147483647 ], rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 8 ], block_align=(int)[ 1, 2147483647 ]; audio/x-wma, wmaversion=(int)2, bitrate=(int)[ 0, 2147483647 ], rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 8 ], block_align=(int)[ 1, 2147483647 ]; audio/x-wma, wmaversion=(int)3, bitrate=(int)[ 0, 2147483647 ], rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 8 ], block_align=(int)[ 1, 2147483647 ]; audio/x-vnd.sony.atrac3, rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 2 ]; audio/x-raw, format=(string){ F32LE, F64LE }, layout=(string)interleaved, rate=(int)[ 1000, 192000 ], channels=(int)[ 1, 8 ]; audio/x-voxware, voxwaretype=(int)117, rate=(int)[ 1000, 96000 ], channels=(int)[ 1, 2 ]; audio/x-adpcm, layout=(string)dk4, rate=(int)[ 8000, 96000 ], channels=(int)[ 1, 2 ]; audio/x-adpcm, layout=(string)dk3, rate=(int)[ 8000, 96000 ], channels=(int)[ 1, 2 ]; audio/x-adpcm, layout=(string)dvi, rate=(int)[ 8000, 96000 ], channels=(int)[ 1, 2 ]; audio/AMR, rate=(int)8000, channels=(int)1; audio/AMR-WB, rate=(int)16000, channels=(int)1; audio/x-siren; application/x-ogg-avi; audio/x-avi-unknown</details> </caps> <caps> + <name>subpicture_%u</name> + <direction>source</direction> + <presence>sometimes</presence> + <details>subpicture/x-xsub</details> + </caps> + <caps> <name>subtitle_%u</name> <direction>source</direction> <presence>sometimes</presence> diff --git a/docs/plugins/inspect/plugin-cacasink.xml b/docs/plugins/inspect/plugin-cacasink.xml index 6ccd373918..7fa81fd0d7 100644 --- a/docs/plugins/inspect/plugin-cacasink.xml +++ b/docs/plugins/inspect/plugin-cacasink.xml @@ -3,7 +3,7 @@ <description>Colored ASCII Art video sink</description> <filename>../../ext/libcaca/.libs/libgstcacasink.so</filename> <basename>libgstcacasink.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-cairo.xml b/docs/plugins/inspect/plugin-cairo.xml index 01d3c96ce0..5999983890 100644 --- a/docs/plugins/inspect/plugin-cairo.xml +++ b/docs/plugins/inspect/plugin-cairo.xml @@ -3,7 +3,7 @@ <description>Cairo-based elements</description> <filename>../../ext/cairo/.libs/libgstcairo.so</filename> <basename>libgstcairo.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -20,13 +20,13 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>video/x-raw, format=(string){ BGRx, BGRA }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/x-raw, format=(string){ BGRx, BGRA, RGB16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> </caps> <caps> <name>src</name> <direction>source</direction> <presence>always</presence> - <details>video/x-raw, format=(string){ BGRx, BGRA }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/x-raw, format=(string){ BGRx, BGRA, RGB16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> </caps> </pads> </element> diff --git a/docs/plugins/inspect/plugin-cutter.xml b/docs/plugins/inspect/plugin-cutter.xml index 74ed6bc7b8..cb9691a1a6 100644 --- a/docs/plugins/inspect/plugin-cutter.xml +++ b/docs/plugins/inspect/plugin-cutter.xml @@ -3,7 +3,7 @@ <description>Audio Cutter to split audio into non-silent bits</description> <filename>../../gst/cutter/.libs/libgstcutter.so</filename> <basename>libgstcutter.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -20,13 +20,13 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>audio/x-raw, format=(string){ S8LE, S16LE }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], layout=(string)interleaved</details> + <details>audio/x-raw, format=(string){ S8, S16LE }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], layout=(string)interleaved</details> </caps> <caps> <name>src</name> <direction>source</direction> <presence>always</presence> - <details>audio/x-raw, format=(string){ S8LE, S16LE }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], layout=(string)interleaved</details> + <details>audio/x-raw, format=(string){ S8, S16LE }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], layout=(string)interleaved</details> </caps> </pads> </element> diff --git a/docs/plugins/inspect/plugin-debug.xml b/docs/plugins/inspect/plugin-debug.xml index 28d50689a7..3f845f46ac 100644 --- a/docs/plugins/inspect/plugin-debug.xml +++ b/docs/plugins/inspect/plugin-debug.xml @@ -3,7 +3,7 @@ <description>elements for testing and debugging</description> <filename>../../gst/debugutils/.libs/libgstdebug.so</filename> <basename>libgstdebug.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-deinterlace.xml b/docs/plugins/inspect/plugin-deinterlace.xml index c39639a919..3e6d61f67f 100644 --- a/docs/plugins/inspect/plugin-deinterlace.xml +++ b/docs/plugins/inspect/plugin-deinterlace.xml @@ -3,7 +3,7 @@ <description>Deinterlacer</description> <filename>../../gst/deinterlace/.libs/libgstdeinterlace.so</filename> <basename>libgstdeinterlace.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -20,13 +20,13 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>video/x-raw, format=(string){ AYUV, ARGB, ABGR, RGBA, BGRA, Y444, xRGB, xBGR, RGBx, BGRx, RGB, BGR, YUY2, YVYU, UYVY, Y42B, I420, YV12, Y41B, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/x-raw, format=(string){ AYUV, ARGB, ABGR, RGBA, BGRA, Y444, xRGB, xBGR, RGBx, BGRx, RGB, BGR, YUY2, YVYU, UYVY, Y42B, I420, YV12, Y41B, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(ANY), format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> </caps> <caps> <name>src</name> <direction>source</direction> <presence>always</presence> - <details>video/x-raw, format=(string){ AYUV, ARGB, ABGR, RGBA, BGRA, Y444, xRGB, xBGR, RGBx, BGRx, RGB, BGR, YUY2, YVYU, UYVY, Y42B, I420, YV12, Y41B, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/x-raw, format=(string){ AYUV, ARGB, ABGR, RGBA, BGRA, Y444, xRGB, xBGR, RGBx, BGRx, RGB, BGR, YUY2, YVYU, UYVY, Y42B, I420, YV12, Y41B, NV12, NV21 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(ANY), format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> </caps> </pads> </element> diff --git a/docs/plugins/inspect/plugin-dtmf.xml b/docs/plugins/inspect/plugin-dtmf.xml index 67bcbea700..30d1c4fd12 100644 --- a/docs/plugins/inspect/plugin-dtmf.xml +++ b/docs/plugins/inspect/plugin-dtmf.xml @@ -3,7 +3,7 @@ <description>DTMF plugins</description> <filename>../../gst/dtmf/.libs/libgstdtmf.so</filename> <basename>libgstdtmf.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-dv.xml b/docs/plugins/inspect/plugin-dv.xml index 9c9f79e105..5a516fb982 100644 --- a/docs/plugins/inspect/plugin-dv.xml +++ b/docs/plugins/inspect/plugin-dv.xml @@ -3,7 +3,7 @@ <description>DV demuxer and decoder based on libdv (libdv.sf.net)</description> <filename>../../ext/dv/.libs/libgstdv.so</filename> <basename>libgstdv.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-effectv.xml b/docs/plugins/inspect/plugin-effectv.xml index 117e9b99ed..a0c087d382 100644 --- a/docs/plugins/inspect/plugin-effectv.xml +++ b/docs/plugins/inspect/plugin-effectv.xml @@ -3,7 +3,7 @@ <description>effect plugins from the effectv project</description> <filename>../../gst/effectv/.libs/libgsteffectv.so</filename> <basename>libgsteffectv.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-equalizer.xml b/docs/plugins/inspect/plugin-equalizer.xml index b5ebba22ff..013dafe4e1 100644 --- a/docs/plugins/inspect/plugin-equalizer.xml +++ b/docs/plugins/inspect/plugin-equalizer.xml @@ -3,7 +3,7 @@ <description>GStreamer audio equalizers</description> <filename>../../gst/equalizer/.libs/libgstequalizer.so</filename> <basename>libgstequalizer.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-flac.xml b/docs/plugins/inspect/plugin-flac.xml index d643aa992b..ab52b4f458 100644 --- a/docs/plugins/inspect/plugin-flac.xml +++ b/docs/plugins/inspect/plugin-flac.xml @@ -3,7 +3,7 @@ <description>The FLAC Lossless compressor Codec</description> <filename>../../ext/flac/.libs/libgstflac.so</filename> <basename>libgstflac.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -26,7 +26,7 @@ <name>src</name> <direction>source</direction> <presence>always</presence> - <details>audio/x-raw, format=(string){ S8LE, S16LE, S24_32LE, S32LE }, layout=(string)interleaved, rate=(int)[ 1, 655350 ], channels=(int)[ 1, 8 ]</details> + <details>audio/x-raw, format=(string){ S8, S16LE, S24_32LE, S32LE }, layout=(string)interleaved, rate=(int)[ 1, 655350 ], channels=(int)[ 1, 8 ]</details> </caps> </pads> </element> @@ -41,7 +41,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>audio/x-raw, format=(string){ S8LE, S16LE, S24LE, S24_32LE }, layout=(string)interleaved, rate=(int)[ 1, 655350 ], channels=(int)[ 1, 8 ]</details> + <details>audio/x-raw, format=(string){ S24LE, S24_32LE, S16LE, S8 }, layout=(string)interleaved, rate=(int)[ 1, 655350 ], channels=(int)[ 1, 8 ]</details> </caps> <caps> <name>src</name> diff --git a/docs/plugins/inspect/plugin-flv.xml b/docs/plugins/inspect/plugin-flv.xml index 0db77dfefa..f0dd215c9e 100644 --- a/docs/plugins/inspect/plugin-flv.xml +++ b/docs/plugins/inspect/plugin-flv.xml @@ -3,7 +3,7 @@ <description>FLV muxing and demuxing plugin</description> <filename>../../gst/flv/.libs/libgstflv.so</filename> <basename>libgstflv.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -47,7 +47,7 @@ <name>audio</name> <direction>sink</direction> <presence>request</presence> - <details>audio/x-adpcm, layout=(string)swf, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int){ 1, 2 }, rate=(int){ 5512, 8000, 11025, 22050, 44100 }, parsed=(boolean)true; audio/mpeg, mpegversion=(int)2, framed=(boolean)true; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, framed=(boolean)true; audio/x-nellymoser, channels=(int){ 1, 2 }, rate=(int){ 5512, 8000, 11025, 16000, 22050, 44100 }; audio/x-raw, format=(string){ U8, S16LE }, layout=(string)interleaved, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/x-alaw, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/x-mulaw, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/x-speex, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }</details> + <details>audio/x-adpcm, layout=(string)swf, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int){ 1, 2 }, rate=(int){ 5512, 8000, 11025, 22050, 44100 }, parsed=(boolean)true; audio/mpeg, mpegversion=(int){ 4, 2 }, stream-format=(string)raw; audio/x-nellymoser, channels=(int){ 1, 2 }, rate=(int){ 5512, 8000, 11025, 16000, 22050, 44100 }; audio/x-raw, format=(string){ U8, S16LE }, layout=(string)interleaved, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/x-alaw, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/x-mulaw, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }; audio/x-speex, channels=(int){ 1, 2 }, rate=(int){ 5512, 11025, 22050, 44100 }</details> </caps> <caps> <name>video</name> diff --git a/docs/plugins/inspect/plugin-flxdec.xml b/docs/plugins/inspect/plugin-flxdec.xml index b2bfe87f90..27602f2597 100644 --- a/docs/plugins/inspect/plugin-flxdec.xml +++ b/docs/plugins/inspect/plugin-flxdec.xml @@ -3,7 +3,7 @@ <description>FLC/FLI/FLX video decoder</description> <filename>../../gst/flx/.libs/libgstflxdec.so</filename> <basename>libgstflxdec.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-gdkpixbuf.xml b/docs/plugins/inspect/plugin-gdkpixbuf.xml index 2f230b7584..6704297765 100644 --- a/docs/plugins/inspect/plugin-gdkpixbuf.xml +++ b/docs/plugins/inspect/plugin-gdkpixbuf.xml @@ -3,7 +3,7 @@ <description>GdkPixbuf-based image decoder, overlay and sink</description> <filename>../../ext/gdk_pixbuf/.libs/libgstgdkpixbuf.so</filename> <basename>libgstgdkpixbuf.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-goom.xml b/docs/plugins/inspect/plugin-goom.xml index e4b544dbe6..0728eff88b 100644 --- a/docs/plugins/inspect/plugin-goom.xml +++ b/docs/plugins/inspect/plugin-goom.xml @@ -3,7 +3,7 @@ <description>GOOM visualization filter</description> <filename>../../gst/goom/.libs/libgstgoom.so</filename> <basename>libgstgoom.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-goom2k1.xml b/docs/plugins/inspect/plugin-goom2k1.xml index 7dfb7dff72..070ad509a6 100644 --- a/docs/plugins/inspect/plugin-goom2k1.xml +++ b/docs/plugins/inspect/plugin-goom2k1.xml @@ -3,7 +3,7 @@ <description>GOOM 2k1 visualization filter</description> <filename>../../gst/goom2k1/.libs/libgstgoom2k1.so</filename> <basename>libgstgoom2k1.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-icydemux.xml b/docs/plugins/inspect/plugin-icydemux.xml index 53c071de5b..f90866f950 100644 --- a/docs/plugins/inspect/plugin-icydemux.xml +++ b/docs/plugins/inspect/plugin-icydemux.xml @@ -3,7 +3,7 @@ <description>Demux ICY tags from a stream</description> <filename>../../gst/icydemux/.libs/libgsticydemux.so</filename> <basename>libgsticydemux.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-id3demux.xml b/docs/plugins/inspect/plugin-id3demux.xml index 387f6af150..1df22eb371 100644 --- a/docs/plugins/inspect/plugin-id3demux.xml +++ b/docs/plugins/inspect/plugin-id3demux.xml @@ -3,7 +3,7 @@ <description>Demux ID3v1 and ID3v2 tags from a file</description> <filename>../../gst/id3demux/.libs/libgstid3demux.so</filename> <basename>libgstid3demux.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-imagefreeze.xml b/docs/plugins/inspect/plugin-imagefreeze.xml index 7d5239ad12..895f22914a 100644 --- a/docs/plugins/inspect/plugin-imagefreeze.xml +++ b/docs/plugins/inspect/plugin-imagefreeze.xml @@ -3,7 +3,7 @@ <description>Still frame stream generator</description> <filename>../../gst/imagefreeze/.libs/libgstimagefreeze.so</filename> <basename>libgstimagefreeze.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-interleave.xml b/docs/plugins/inspect/plugin-interleave.xml index 2efc3b2388..eb688cbf49 100644 --- a/docs/plugins/inspect/plugin-interleave.xml +++ b/docs/plugins/inspect/plugin-interleave.xml @@ -3,7 +3,7 @@ <description>Audio interleaver/deinterleaver</description> <filename>../../gst/interleave/.libs/libgstinterleave.so</filename> <basename>libgstinterleave.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-isomp4.xml b/docs/plugins/inspect/plugin-isomp4.xml index 0eeec78664..937eecb853 100644 --- a/docs/plugins/inspect/plugin-isomp4.xml +++ b/docs/plugins/inspect/plugin-isomp4.xml @@ -3,7 +3,7 @@ <description>ISO base media file format support (mp4, 3gpp, qt, mj2)</description> <filename>../../gst/isomp4/.libs/libgstisomp4.so</filename> <basename>libgstisomp4.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -23,10 +23,16 @@ <details>audio/AMR, rate=(int)8000, channels=(int)[ 1, 2 ]; audio/AMR-WB, rate=(int)16000, channels=(int)[ 1, 2 ]; audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]</details> </caps> <caps> + <name>subtitle_%u</name> + <direction>sink</direction> + <presence>request</presence> + <details>text/x-raw, format=(string)utf8</details> + </caps> + <caps> <name>video_%u</name> <direction>sink</direction> <presence>request</presence> - <details>video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> </caps> <caps> <name>src</name> @@ -53,7 +59,7 @@ <name>video_%u</name> <direction>sink</direction> <presence>request</presence> - <details>video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> </caps> <caps> <name>src</name> @@ -80,7 +86,7 @@ <name>video_%u</name> <direction>sink</direction> <presence>request</presence> - <details>image/x-j2c, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; image/x-jpc, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>image/x-j2c, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; image/x-jpc, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> </caps> <caps> <name>src</name> @@ -104,10 +110,16 @@ <details>audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]; audio/x-alac, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]</details> </caps> <caps> + <name>subtitle_%u</name> + <direction>sink</direction> + <presence>request</presence> + <details>text/x-raw, format=(string)utf8</details> + </caps> + <caps> <name>video_%u</name> <direction>sink</direction> <presence>request</presence> - <details>video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-mp4-part, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-mp4-part, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> </caps> <caps> <name>src</name> @@ -173,10 +185,16 @@ <details>audio/x-raw, format=(string){ S8, U8 }, layout=(string)interleaved, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-raw, format=(string){ S16LE, S16BE }, layout=(string)interleaved, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-raw, format=(string){ S24LE, S24BE }, layout=(string)interleaved, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-raw, format=(string){ S32LE, S32BE }, layout=(string)interleaved, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]; audio/x-adpcm, layout=(string)dvi, block_align=(int)[ 64, 8096 ], channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-alaw, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-mulaw, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/AMR, rate=(int)8000, channels=(int)[ 1, 2 ]; audio/AMR-WB, rate=(int)16000, channels=(int)[ 1, 2 ]; audio/x-alac, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]</details> </caps> <caps> + <name>subtitle_%u</name> + <direction>sink</direction> + <presence>request</presence> + <details>text/x-raw, format=(string)utf8</details> + </caps> + <caps> <name>video_%u</name> <direction>sink</direction> <presence>request</presence> - <details>video/x-raw, format=(string){ RGB, UYVY }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-svq, svqversion=(int)3, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-dv, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-vp8, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-dirac, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-qt-part, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + <details>video/x-raw, format=(string){ RGB, UYVY }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-svq, svqversion=(int)3, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-dv, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-vp8, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-dirac, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-qt-part, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> </caps> <caps> <name>src</name> diff --git a/docs/plugins/inspect/plugin-jack.xml b/docs/plugins/inspect/plugin-jack.xml index da09aa53de..1deb50a325 100644 --- a/docs/plugins/inspect/plugin-jack.xml +++ b/docs/plugins/inspect/plugin-jack.xml @@ -3,7 +3,7 @@ <description>JACK audio elements</description> <filename>../../ext/jack/.libs/libgstjack.so</filename> <basename>libgstjack.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-jpeg.xml b/docs/plugins/inspect/plugin-jpeg.xml index 42f48b8f13..c4412d2c83 100644 --- a/docs/plugins/inspect/plugin-jpeg.xml +++ b/docs/plugins/inspect/plugin-jpeg.xml @@ -3,7 +3,7 @@ <description>JPeg plugin library</description> <filename>../../ext/jpeg/.libs/libgstjpeg.so</filename> <basename>libgstjpeg.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -20,7 +20,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>image/jpeg, width=(int)[ 1, 65535 ], height=(int)[ 1, 65535 ]</details> + <details>image/jpeg</details> </caps> <caps> <name>src</name> diff --git a/docs/plugins/inspect/plugin-level.xml b/docs/plugins/inspect/plugin-level.xml index 2c151da842..6d36d51c2a 100644 --- a/docs/plugins/inspect/plugin-level.xml +++ b/docs/plugins/inspect/plugin-level.xml @@ -3,7 +3,7 @@ <description>Audio level plugin</description> <filename>../../gst/level/.libs/libgstlevel.so</filename> <basename>libgstlevel.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-matroska.xml b/docs/plugins/inspect/plugin-matroska.xml index d22a19cc1b..93a70a464d 100644 --- a/docs/plugins/inspect/plugin-matroska.xml +++ b/docs/plugins/inspect/plugin-matroska.xml @@ -3,7 +3,7 @@ <description>Matroska and WebM stream handling</description> <filename>../../gst/matroska/.libs/libgstmatroska.so</filename> <basename>libgstmatroska.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -53,7 +53,7 @@ <name>audio_%u</name> <direction>sink</direction> <presence>request</presence> - <details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ], channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int){ 2, 4 }, stream-format=(string)raw, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-ac3, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-eac3, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-dts, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-vorbis, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-flac, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-speex, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-raw, format=(string){ U8, S16BE, S16LE, S24BE, S24LE, S32BE, S32LE, F32LE, F64LE }, layout=(string)interleaved, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-tta, width=(int){ 8, 16, 24 }, channels=(int){ 1, 2 }, rate=(int)[ 8000, 96000 ]; audio/x-pn-realaudio, raversion=(int){ 1, 2, 8 }, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-wma, wmaversion=(int)[ 1, 3 ], block_align=(int)[ 0, 65535 ], bitrate=(int)[ 0, 524288 ], channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-alaw, channels=(int){ 1, 2 }, rate=(int)[ 8000, 192000 ]; audio/x-mulaw, channels=(int){ 1, 2 }, rate=(int)[ 8000, 192000 ]</details> + <details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ], channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int){ 2, 4 }, stream-format=(string)raw, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-ac3, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-eac3, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-dts, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-vorbis, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-flac, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-opus; audio/x-speex, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-raw, format=(string){ U8, S16BE, S16LE, S24BE, S24LE, S32BE, S32LE, F32LE, F64LE }, layout=(string)interleaved, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-tta, width=(int){ 8, 16, 24 }, channels=(int){ 1, 2 }, rate=(int)[ 8000, 96000 ]; audio/x-pn-realaudio, raversion=(int){ 1, 2, 8 }, channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-wma, wmaversion=(int)[ 1, 3 ], block_align=(int)[ 0, 65535 ], bitrate=(int)[ 0, 524288 ], channels=(int)[ 1, 2147483647 ], rate=(int)[ 1, 2147483647 ]; audio/x-alaw, channels=(int){ 1, 2 }, rate=(int)[ 8000, 192000 ]; audio/x-mulaw, channels=(int){ 1, 2 }, rate=(int)[ 8000, 192000 ]; audio/x-adpcm, layout=(string)dvi, block_align=(int)[ 64, 8192 ], channels=(int){ 1, 2 }, rate=(int)[ 8000, 96000 ]; audio/x-adpcm, layout=(string)g726, channels=(int)1, rate=(int)8000</details> </caps> <caps> <name>subtitle_%u</name> @@ -65,7 +65,7 @@ <name>video_%u</name> <direction>sink</direction> <presence>request</presence> - <details>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-huffyuv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-dv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-msmpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-theora; video/x-dirac, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-pn-realvideo, rmversion=(int)[ 1, 4 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-vp8, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-raw, format=(string){ YUY2, I420, YV12, UYVY, AYUV }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-wmv, wmvversion=(int)[ 1, 3 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> + <details>video/mpeg, mpegversion=(int){ 1, 2, 4 }, systemstream=(boolean)false, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h265, stream-format=(string)hvc1, alignment=(string)au, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-divx, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-huffyuv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-dv, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-h263, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-msmpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-theora; video/x-dirac, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-pn-realvideo, rmversion=(int)[ 1, 4 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-vp8, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-raw, format=(string){ YUY2, I420, YV12, UYVY, AYUV, GRAY8, BGR, RGB }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]; video/x-wmv, wmvversion=(int)[ 1, 3 ], width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ]</details> </caps> <caps> <name>src</name> diff --git a/docs/plugins/inspect/plugin-mulaw.xml b/docs/plugins/inspect/plugin-mulaw.xml index e94a41a154..5e0e28ead9 100644 --- a/docs/plugins/inspect/plugin-mulaw.xml +++ b/docs/plugins/inspect/plugin-mulaw.xml @@ -3,7 +3,7 @@ <description>MuLaw audio conversion routines</description> <filename>../../gst/law/.libs/libgstmulaw.so</filename> <basename>libgstmulaw.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-multifile.xml b/docs/plugins/inspect/plugin-multifile.xml index d29285ef44..c4554e52ca 100644 --- a/docs/plugins/inspect/plugin-multifile.xml +++ b/docs/plugins/inspect/plugin-multifile.xml @@ -3,7 +3,7 @@ <description>Reads/Writes buffers from/to sequentially named files</description> <filename>../../gst/multifile/.libs/libgstmultifile.so</filename> <basename>libgstmultifile.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-multipart.xml b/docs/plugins/inspect/plugin-multipart.xml index 6c88732ec1..82dbf7fa10 100644 --- a/docs/plugins/inspect/plugin-multipart.xml +++ b/docs/plugins/inspect/plugin-multipart.xml @@ -3,7 +3,7 @@ <description>multipart stream manipulation</description> <filename>../../gst/multipart/.libs/libgstmultipart.so</filename> <basename>libgstmultipart.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-navigationtest.xml b/docs/plugins/inspect/plugin-navigationtest.xml index 94b92de378..0af9cd2d1c 100644 --- a/docs/plugins/inspect/plugin-navigationtest.xml +++ b/docs/plugins/inspect/plugin-navigationtest.xml @@ -3,7 +3,7 @@ <description>Template for a video filter</description> <filename>../../gst/debugutils/.libs/libgstnavigationtest.so</filename> <basename>libgstnavigationtest.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-oss4.xml b/docs/plugins/inspect/plugin-oss4.xml index fdbcea471a..ec10541382 100644 --- a/docs/plugins/inspect/plugin-oss4.xml +++ b/docs/plugins/inspect/plugin-oss4.xml @@ -3,7 +3,7 @@ <description>Open Sound System (OSS) version 4 support for GStreamer</description> <filename>../../sys/oss4/.libs/libgstoss4audio.so</filename> <basename>libgstoss4audio.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-ossaudio.xml b/docs/plugins/inspect/plugin-ossaudio.xml index 8ce5c5db81..499f3ed412 100644 --- a/docs/plugins/inspect/plugin-ossaudio.xml +++ b/docs/plugins/inspect/plugin-ossaudio.xml @@ -3,7 +3,7 @@ <description>OSS (Open Sound System) support for GStreamer</description> <filename>../../sys/oss/.libs/libgstossaudio.so</filename> <basename>libgstossaudio.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-png.xml b/docs/plugins/inspect/plugin-png.xml index a32b56c2a3..ca0d4b39be 100644 --- a/docs/plugins/inspect/plugin-png.xml +++ b/docs/plugins/inspect/plugin-png.xml @@ -3,7 +3,7 @@ <description>PNG plugin library</description> <filename>../../ext/libpng/.libs/libgstpng.so</filename> <basename>libgstpng.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-pulseaudio.xml b/docs/plugins/inspect/plugin-pulseaudio.xml index 08d32083f7..254ad244fc 100644 --- a/docs/plugins/inspect/plugin-pulseaudio.xml +++ b/docs/plugins/inspect/plugin-pulseaudio.xml @@ -3,7 +3,7 @@ <description>PulseAudio plugin library</description> <filename>../../ext/pulse/.libs/libgstpulse.so</filename> <basename>libgstpulse.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-replaygain.xml b/docs/plugins/inspect/plugin-replaygain.xml index dc4c8bd389..a9255efde2 100644 --- a/docs/plugins/inspect/plugin-replaygain.xml +++ b/docs/plugins/inspect/plugin-replaygain.xml @@ -3,7 +3,7 @@ <description>ReplayGain volume normalization</description> <filename>../../gst/replaygain/.libs/libgstreplaygain.so</filename> <basename>libgstreplaygain.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-rtp.xml b/docs/plugins/inspect/plugin-rtp.xml index e5c0e0bc6b..e628c7b06b 100644 --- a/docs/plugins/inspect/plugin-rtp.xml +++ b/docs/plugins/inspect/plugin-rtp.xml @@ -3,7 +3,7 @@ <description>Real-time protocol plugins</description> <filename>../../gst/rtp/.libs/libgstrtp.so</filename> <basename>libgstrtp.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -167,7 +167,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>application/x-rtp, media=(string)audio, clock-rate=(int)8000, encoding-name=(string)AMR, encoding-params=(string)1, octet-align=(string)1; application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)AMR-WB, encoding-params=(string)1, octet-align=(string)1</details> + <details>application/x-rtp, media=(string)audio, clock-rate=(int)8000, encoding-name=(string)AMR, octet-align=(string)1; application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)AMR-WB, octet-align=(string)1</details> </caps> <caps> <name>src</name> @@ -713,7 +713,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>application/x-rtp, media=(string)audio, clock-rate=(int)8000, encoding-name=(string)ILBC, mode=(string){ 20, 30 }</details> + <details>application/x-rtp, media=(string)audio, clock-rate=(int)8000, encoding-name=(string)ILBC</details> </caps> <caps> <name>src</name> @@ -1301,7 +1301,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)SIREN, dct-length=(int)320</details> + <details>application/x-rtp, media=(string)audio, clock-rate=(int)16000, encoding-name=(string)SIREN</details> </caps> <caps> <name>src</name> @@ -1343,7 +1343,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>application/x-rtp, media=(string)audio, clock-rate=(int)[ 6000, 48000 ], encoding-name=(string)SPEEX, encoding-params=(string)1</details> + <details>application/x-rtp, media=(string)audio, clock-rate=(int)[ 6000, 48000 ], encoding-name=(string)SPEEX</details> </caps> <caps> <name>src</name> @@ -1375,6 +1375,48 @@ </pads> </element> <element> + <name>rtpstreamdepay</name> + <longname>RTP Stream Depayloading</longname> + <class>Codec/Depayloader/Network</class> + <description>Depayloads RTP/RTCP packets for streaming protocols according to RFC4571</description> + <author>Sebastian Dröge <sebastian@centricular.com></author> + <pads> + <caps> + <name>sink</name> + <direction>sink</direction> + <presence>always</presence> + <details>application/x-rtp-stream; application/x-rtcp-stream; application/x-srtp-stream; application/x-srtcp-stream</details> + </caps> + <caps> + <name>src</name> + <direction>source</direction> + <presence>always</presence> + <details>application/x-rtp; application/x-rtcp; application/x-srtp; application/x-srtcp</details> + </caps> + </pads> + </element> + <element> + <name>rtpstreampay</name> + <longname>RTP Stream Payloading</longname> + <class>Codec/Payloader/Network</class> + <description>Payloads RTP/RTCP packets for streaming protocols according to RFC4571</description> + <author>Sebastian Dröge <sebastian@centricular.com></author> + <pads> + <caps> + <name>sink</name> + <direction>sink</direction> + <presence>always</presence> + <details>application/x-rtp; application/x-rtcp; application/x-srtp; application/x-srtcp</details> + </caps> + <caps> + <name>src</name> + <direction>source</direction> + <presence>always</presence> + <details>application/x-rtp-stream; application/x-rtcp-stream; application/x-srtp-stream; application/x-srtcp-stream</details> + </caps> + </pads> + </element> + <element> <name>rtpsv3vdepay</name> <longname>RTP SVQ3 depayloader</longname> <class>Codec/Depayloader/Network/RTP</class> diff --git a/docs/plugins/inspect/plugin-rtpmanager.xml b/docs/plugins/inspect/plugin-rtpmanager.xml index 79d41739b4..4d4b69e036 100644 --- a/docs/plugins/inspect/plugin-rtpmanager.xml +++ b/docs/plugins/inspect/plugin-rtpmanager.xml @@ -3,7 +3,7 @@ <description>RTP session management plugin library</description> <filename>../../gst/rtpmanager/.libs/libgstrtpmanager.so</filename> <basename>libgstrtpmanager.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -20,13 +20,13 @@ <name>recv_rtcp_sink_%u</name> <direction>sink</direction> <presence>request</presence> - <details>application/x-rtcp</details> + <details>application/x-rtcp; application/x-srtcp</details> </caps> <caps> <name>recv_rtp_sink_%u</name> <direction>sink</direction> <presence>request</presence> - <details>application/x-rtp</details> + <details>application/x-rtp; application/x-srtp</details> </caps> <caps> <name>send_rtp_sink_%u</name> @@ -44,13 +44,13 @@ <name>send_rtp_src_%u</name> <direction>source</direction> <presence>sometimes</presence> - <details>application/x-rtp</details> + <details>application/x-rtp; application/x-srtp</details> </caps> <caps> <name>send_rtcp_src_%u</name> <direction>source</direction> <presence>request</presence> - <details>application/x-rtcp</details> + <details>application/x-rtcp; application/x-srtcp</details> </caps> </pads> </element> @@ -172,6 +172,48 @@ </pads> </element> <element> + <name>rtprtxreceive</name> + <longname>RTP Retransmission receiver</longname> + <class>Codec</class> + <description>Receive retransmitted RTP packets according to RFC4588</description> + <author>Julien Isorce <julien.isorce@collabora.co.uk></author> + <pads> + <caps> + <name>sink</name> + <direction>sink</direction> + <presence>always</presence> + <details>application/x-rtp</details> + </caps> + <caps> + <name>src</name> + <direction>source</direction> + <presence>always</presence> + <details>application/x-rtp</details> + </caps> + </pads> + </element> + <element> + <name>rtprtxsend</name> + <longname>RTP Retransmission Sender</longname> + <class>Codec</class> + <description>Retransmit RTP packets when needed, according to RFC4588</description> + <author>Julien Isorce <julien.isorce@collabora.co.uk></author> + <pads> + <caps> + <name>sink</name> + <direction>sink</direction> + <presence>always</presence> + <details>application/x-rtp, clock-rate=(int)[ 1, 2147483647 ]</details> + </caps> + <caps> + <name>src</name> + <direction>source</direction> + <presence>always</presence> + <details>application/x-rtp</details> + </caps> + </pads> + </element> + <element> <name>rtpsession</name> <longname>RTP Session</longname> <class>Filter/Network/RTP</class> @@ -255,47 +297,5 @@ </caps> </pads> </element> - <element> - <name>rtprtxsend</name> - <longname>RTP Retransmission Sender</longname> - <class>Codec</class> - <description>Retransmit RTP packets when needed, according to RFC4588</description> - <author>Julien Isorce <julien.isorce@gmail.com></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>application/x-rtp</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>application/x-rtp</details> - </caps> - </pads> - </element> - <element> - <name>rtprtxreceive</name> - <longname>RTP Retransmission Receiver</longname> - <class>Codec</class> - <description>Receive retransmitted RTP packets according to RFC4588</description> - <author>Julien Isorce <julien.isorce@gmail.com></author> - <pads> - <caps> - <name>sink</name> - <direction>sink</direction> - <presence>always</presence> - <details>application/x-rtp</details> - </caps> - <caps> - <name>src</name> - <direction>source</direction> - <presence>always</presence> - <details>application/x-rtp</details> - </caps> - </pads> - </element> </elements> </plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-rtsp.xml b/docs/plugins/inspect/plugin-rtsp.xml index 9ab755afe1..431a76c6a8 100644 --- a/docs/plugins/inspect/plugin-rtsp.xml +++ b/docs/plugins/inspect/plugin-rtsp.xml @@ -3,7 +3,7 @@ <description>transfer data via RTSP</description> <filename>../../gst/rtsp/.libs/libgstrtsp.so</filename> <basename>libgstrtsp.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-shapewipe.xml b/docs/plugins/inspect/plugin-shapewipe.xml index b2adf8f4af..ffaa86dbdf 100644 --- a/docs/plugins/inspect/plugin-shapewipe.xml +++ b/docs/plugins/inspect/plugin-shapewipe.xml @@ -3,7 +3,7 @@ <description>Shape Wipe transition filter</description> <filename>../../gst/shapewipe/.libs/libgstshapewipe.so</filename> <basename>libgstshapewipe.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-shout2send.xml b/docs/plugins/inspect/plugin-shout2send.xml index 29a06cfee0..ea7de39b90 100644 --- a/docs/plugins/inspect/plugin-shout2send.xml +++ b/docs/plugins/inspect/plugin-shout2send.xml @@ -3,7 +3,7 @@ <description>Sends data to an icecast server using libshout2</description> <filename>../../ext/shout2/.libs/libgstshout2.so</filename> <basename>libgstshout2.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>libshout2</package> diff --git a/docs/plugins/inspect/plugin-smpte.xml b/docs/plugins/inspect/plugin-smpte.xml index f919a265d1..880784c5d0 100644 --- a/docs/plugins/inspect/plugin-smpte.xml +++ b/docs/plugins/inspect/plugin-smpte.xml @@ -3,7 +3,7 @@ <description>Apply the standard SMPTE transitions on video images</description> <filename>../../gst/smpte/.libs/libgstsmpte.so</filename> <basename>libgstsmpte.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-soup.xml b/docs/plugins/inspect/plugin-soup.xml index d42f0169e0..57025b426b 100644 --- a/docs/plugins/inspect/plugin-soup.xml +++ b/docs/plugins/inspect/plugin-soup.xml @@ -3,7 +3,7 @@ <description>libsoup HTTP client src/sink</description> <filename>../../ext/soup/.libs/libgstsouphttpsrc.so</filename> <basename>libgstsouphttpsrc.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-spectrum.xml b/docs/plugins/inspect/plugin-spectrum.xml index c50bf172cb..731eeae79a 100644 --- a/docs/plugins/inspect/plugin-spectrum.xml +++ b/docs/plugins/inspect/plugin-spectrum.xml @@ -3,7 +3,7 @@ <description>Run an FFT on the audio signal, output spectrum data</description> <filename>../../gst/spectrum/.libs/libgstspectrum.so</filename> <basename>libgstspectrum.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-speex.xml b/docs/plugins/inspect/plugin-speex.xml index ce8c52603a..f782108d6f 100644 --- a/docs/plugins/inspect/plugin-speex.xml +++ b/docs/plugins/inspect/plugin-speex.xml @@ -3,7 +3,7 @@ <description>Speex plugin library</description> <filename>../../ext/speex/.libs/libgstspeex.so</filename> <basename>libgstspeex.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-taglib.xml b/docs/plugins/inspect/plugin-taglib.xml index a70983cd86..f8bf15c81b 100644 --- a/docs/plugins/inspect/plugin-taglib.xml +++ b/docs/plugins/inspect/plugin-taglib.xml @@ -3,7 +3,7 @@ <description>Tag writing plug-in based on taglib</description> <filename>../../ext/taglib/.libs/libgsttaglib.so</filename> <basename>libgsttaglib.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-udp.xml b/docs/plugins/inspect/plugin-udp.xml index cff3b4885f..114731805c 100644 --- a/docs/plugins/inspect/plugin-udp.xml +++ b/docs/plugins/inspect/plugin-udp.xml @@ -3,7 +3,7 @@ <description>transfer data via UDP</description> <filename>../../gst/udp/.libs/libgstudp.so</filename> <basename>libgstudp.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-video4linux2.xml b/docs/plugins/inspect/plugin-video4linux2.xml index 349a008d47..e74cc81fcc 100644 --- a/docs/plugins/inspect/plugin-video4linux2.xml +++ b/docs/plugins/inspect/plugin-video4linux2.xml @@ -3,7 +3,7 @@ <description>elements for Video 4 Linux</description> <filename>../../sys/v4l2/.libs/libgstvideo4linux2.so</filename> <basename>libgstvideo4linux2.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -29,7 +29,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>video/x-raw, format=(string)RGB15, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)RGB16, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)BGR, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)RGB, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)BGRx, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)RGBx, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)GRAY8, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YVU9, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YV12, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YUY2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)UYVY, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)Y42B, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)Y41B, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)NV12, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)NV21, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YUV9, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)I420, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-bayer, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; image/jpeg, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; image/jpeg, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; image/jpeg, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-dv, systemstream=(boolean)true, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/mpegts; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-h263, variant=(string)itu, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-h264, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-sonix, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-pwc1, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-pwc2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YVYU, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]</details> + <details>image/jpeg; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false; video/mpeg, mpegversion=(int)2; video/mpegts, systemstream=(boolean)true; video/x-bayer, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-dv, systemstream=(boolean)true; video/x-h263, variant=(string)itu; video/x-h264, stream-format=(string)byte-stream, alignment=(string)au; video/x-pwc1, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-pwc2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string){ RGB15, RGB16, BGR, RGB, BGRx, xRGB, GRAY8, YVU9, YV12, YUY2, UYVY, Y42B, Y41B, NV12_64Z32, YUV9, I420, YVYU, NV21, NV12 }, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-sonix, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-vp8</details> </caps> </pads> </element> @@ -44,7 +44,7 @@ <name>src</name> <direction>source</direction> <presence>always</presence> - <details>video/x-raw, format=(string)RGB15, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)RGB16, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)BGR, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)RGB, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)BGRx, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)RGBx, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)GRAY8, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YVU9, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YV12, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YUY2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)UYVY, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)Y42B, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)Y41B, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)NV12, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)NV21, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YUV9, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)I420, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-bayer, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; image/jpeg, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; image/jpeg, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; image/jpeg, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-dv, systemstream=(boolean)true, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/mpegts; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-h263, variant=(string)itu, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-h264, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-sonix, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-pwc1, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-pwc2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string)YVYU, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]</details> + <details>image/jpeg; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false; video/mpeg, mpegversion=(int)2; video/mpegts, systemstream=(boolean)true; video/x-bayer, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-dv, systemstream=(boolean)true; video/x-h263, variant=(string)itu; video/x-h264, stream-format=(string)byte-stream, alignment=(string)au; video/x-pwc1, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-pwc2, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw, format=(string){ RGB15, RGB16, BGR, RGB, BGRx, xRGB, GRAY8, YVU9, YV12, YUY2, UYVY, Y42B, Y41B, NV12_64Z32, YUV9, I420, YVYU, NV21, NV12 }, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-sonix, width=(int)[ 1, 32768 ], height=(int)[ 1, 32768 ], framerate=(fraction)[ 0/1, 100/1 ]; video/x-vp8</details> </caps> </pads> </element> diff --git a/docs/plugins/inspect/plugin-videobox.xml b/docs/plugins/inspect/plugin-videobox.xml index 8603c773ac..490f960b65 100644 --- a/docs/plugins/inspect/plugin-videobox.xml +++ b/docs/plugins/inspect/plugin-videobox.xml @@ -3,7 +3,7 @@ <description>resizes a video by adding borders or cropping</description> <filename>../../gst/videobox/.libs/libgstvideobox.so</filename> <basename>libgstvideobox.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-videocrop.xml b/docs/plugins/inspect/plugin-videocrop.xml index c2ea1ebba1..f213c189bc 100644 --- a/docs/plugins/inspect/plugin-videocrop.xml +++ b/docs/plugins/inspect/plugin-videocrop.xml @@ -3,7 +3,7 @@ <description>Crops video into a user-defined region</description> <filename>../../gst/videocrop/.libs/libgstvideocrop.so</filename> <basename>libgstvideocrop.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-videofilter.xml b/docs/plugins/inspect/plugin-videofilter.xml index 99668a26ce..a58165e898 100644 --- a/docs/plugins/inspect/plugin-videofilter.xml +++ b/docs/plugins/inspect/plugin-videofilter.xml @@ -3,7 +3,7 @@ <description>Video filters plugin</description> <filename>../../gst/videofilter/.libs/libgstvideofilter.so</filename> <basename>libgstvideofilter.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-videomixer.xml b/docs/plugins/inspect/plugin-videomixer.xml index 250d647528..0526574dc7 100644 --- a/docs/plugins/inspect/plugin-videomixer.xml +++ b/docs/plugins/inspect/plugin-videomixer.xml @@ -3,7 +3,7 @@ <description>Video mixer</description> <filename>../../gst/videomixer/.libs/libgstvideomixer.so</filename> <basename>libgstvideomixer.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-vpx.xml b/docs/plugins/inspect/plugin-vpx.xml index 12b062866d..7338cb6ace 100644 --- a/docs/plugins/inspect/plugin-vpx.xml +++ b/docs/plugins/inspect/plugin-vpx.xml @@ -3,7 +3,7 @@ <description>VP8 plugin</description> <filename>../../ext/vpx/.libs/libgstvpx.so</filename> <basename>libgstvpx.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -51,5 +51,47 @@ </caps> </pads> </element> + <element> + <name>vp9dec</name> + <longname>On2 VP9 Decoder</longname> + <class>Codec/Decoder/Video</class> + <description>Decode VP9 video streams</description> + <author>David Schleef <ds@entropywave.com>, Sebastian Dröge <sebastian.droege@collabora.co.uk></author> + <pads> + <caps> + <name>sink</name> + <direction>sink</direction> + <presence>always</presence> + <details>video/x-vp9</details> + </caps> + <caps> + <name>src</name> + <direction>source</direction> + <presence>always</presence> + <details>video/x-raw, format=(string){ I420, YV12, Y42B, Y444 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + </caps> + </pads> + </element> + <element> + <name>vp9enc</name> + <longname>On2 VP9 Encoder</longname> + <class>Codec/Encoder/Video</class> + <description>Encode VP9 video streams</description> + <author>David Schleef <ds@entropywave.com>, Sebastian Dröge <sebastian.droege@collabora.co.uk></author> + <pads> + <caps> + <name>sink</name> + <direction>sink</direction> + <presence>always</presence> + <details>video/x-raw, format=(string){ I420, YV12 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> + </caps> + <caps> + <name>src</name> + <direction>source</direction> + <presence>always</presence> + <details>video/x-vp9, profile=(string){ 0, 1, 2, 3 }</details> + </caps> + </pads> + </element> </elements> </plugin>
\ No newline at end of file diff --git a/docs/plugins/inspect/plugin-wavenc.xml b/docs/plugins/inspect/plugin-wavenc.xml index 68cc83ab4f..59d0e4b57e 100644 --- a/docs/plugins/inspect/plugin-wavenc.xml +++ b/docs/plugins/inspect/plugin-wavenc.xml @@ -3,7 +3,7 @@ <description>Encode raw audio into WAV</description> <filename>../../gst/wavenc/.libs/libgstwavenc.so</filename> <basename>libgstwavenc.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> @@ -20,7 +20,7 @@ <name>sink</name> <direction>sink</direction> <presence>always</presence> - <details>audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)1, format=(string){ S32LE, S24LE, S16LE, U8, F32LE, F64LE }, layout=(string)interleaved; audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)2, channel-mask=(bitmask)0x0000000000000003, format=(string){ S32LE, S24LE, S16LE, U8, F32LE, F64LE }, layout=(string)interleaved; audio/x-alaw, rate=(int)[ 8000, 192000 ], channels=(int)[ 1, 2 ], width=(int)8, depth=(int)8, signed=(boolean)false; audio/x-mulaw, rate=(int)[ 8000, 192000 ], channels=(int)[ 1, 2 ], width=(int)8, depth=(int)8, signed=(boolean)false</details> + <details>audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)1, format=(string){ S32LE, S24LE, S16LE, U8, F32LE, F64LE }, layout=(string)interleaved; audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)2, channel-mask=(bitmask)0x0000000000000003, format=(string){ S32LE, S24LE, S16LE, U8, F32LE, F64LE }, layout=(string)interleaved; audio/x-alaw, rate=(int)[ 8000, 192000 ], channels=(int)[ 1, 2 ]; audio/x-mulaw, rate=(int)[ 8000, 192000 ], channels=(int)[ 1, 2 ]</details> </caps> <caps> <name>src</name> diff --git a/docs/plugins/inspect/plugin-wavpack.xml b/docs/plugins/inspect/plugin-wavpack.xml index ff91e1a66e..8a22c04f74 100644 --- a/docs/plugins/inspect/plugin-wavpack.xml +++ b/docs/plugins/inspect/plugin-wavpack.xml @@ -3,7 +3,7 @@ <description>Wavpack lossless/lossy audio format handling</description> <filename>../../ext/wavpack/.libs/libgstwavpack.so</filename> <basename>libgstwavpack.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-wavparse.xml b/docs/plugins/inspect/plugin-wavparse.xml index db62d993eb..b6784d564f 100644 --- a/docs/plugins/inspect/plugin-wavparse.xml +++ b/docs/plugins/inspect/plugin-wavparse.xml @@ -3,7 +3,7 @@ <description>Parse a .wav file into raw audio</description> <filename>../../gst/wavparse/.libs/libgstwavparse.so</filename> <basename>libgstwavparse.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-ximagesrc.xml b/docs/plugins/inspect/plugin-ximagesrc.xml index 589a072743..4b240e1849 100644 --- a/docs/plugins/inspect/plugin-ximagesrc.xml +++ b/docs/plugins/inspect/plugin-ximagesrc.xml @@ -3,7 +3,7 @@ <description>X11 video input plugin using standard Xlib calls</description> <filename>../../sys/ximage/.libs/libgstximagesrc.so</filename> <basename>libgstximagesrc.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/docs/plugins/inspect/plugin-y4menc.xml b/docs/plugins/inspect/plugin-y4menc.xml index 089c1053fa..e7359a2419 100644 --- a/docs/plugins/inspect/plugin-y4menc.xml +++ b/docs/plugins/inspect/plugin-y4menc.xml @@ -3,7 +3,7 @@ <description>Encodes a YUV frame into the yuv4mpeg format (mjpegtools)</description> <filename>../../gst/y4m/.libs/libgsty4menc.so</filename> <basename>libgsty4menc.so</basename> - <version>1.2.0</version> + <version>1.3.1</version> <license>LGPL</license> <source>gst-plugins-good</source> <package>GStreamer Good Plug-ins source release</package> diff --git a/gst-plugins-good.doap b/gst-plugins-good.doap index b28dbe5073..460ffae992 100644 --- a/gst-plugins-good.doap +++ b/gst-plugins-good.doap @@ -34,6 +34,16 @@ the plug-in code, LGPL or LGPL-compatible for the supporting library). <release> <Version> + <revision>1.3.1</revision> + <branch>1.3</branch> + <name></name> + <created>2014-05-03</created> + <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.3.1.tar.xz" /> + </Version> + </release> + + <release> + <Version> <revision>1.2.0</revision> <branch>1.2</branch> <name></name> diff --git a/gst/audiofx/audiopanoramaorc-dist.c b/gst/audiofx/audiopanoramaorc-dist.c index 438cc40474..3d5999a61e 100644 --- a/gst/audiofx/audiopanoramaorc-dist.c +++ b/gst/audiofx/audiopanoramaorc-dist.c @@ -156,8 +156,8 @@ void audiopanoramam_orc_process_f32_ch2_sim_left (gfloat * ORC_RESTRICT d1, #define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX) #define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX) #define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX) -#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8)) -#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24)) +#define ORC_SWAP_W(x) ((((x)&0xffU)<<8) | (((x)&0xff00U)>>8)) +#define ORC_SWAP_L(x) ((((x)&0xffU)<<24) | (((x)&0xff00U)<<8) | (((x)&0xff0000U)>>8) | (((x)&0xff000000U)>>24)) #define ORC_SWAP_Q(x) ((((x)&ORC_UINT64_C(0xff))<<56) | (((x)&ORC_UINT64_C(0xff00))<<40) | (((x)&ORC_UINT64_C(0xff0000))<<24) | (((x)&ORC_UINT64_C(0xff000000))<<8) | (((x)&ORC_UINT64_C(0xff00000000))>>8) | (((x)&ORC_UINT64_C(0xff0000000000))>>24) | (((x)&ORC_UINT64_C(0xff000000000000))>>40) | (((x)&ORC_UINT64_C(0xff00000000000000))>>56)) #define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset))) #define ORC_DENORMAL(x) ((x) & ((((x)&0x7f800000) == 0) ? 0xff800000 : 0xffffffff)) diff --git a/gst/deinterlace/tvtime-dist.c b/gst/deinterlace/tvtime-dist.c index fab3090641..b121c010ad 100644 --- a/gst/deinterlace/tvtime-dist.c +++ b/gst/deinterlace/tvtime-dist.c @@ -133,8 +133,8 @@ void deinterlace_line_greedy (orc_uint8 * ORC_RESTRICT d1, #define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX) #define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX) #define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX) -#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8)) -#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24)) +#define ORC_SWAP_W(x) ((((x)&0xffU)<<8) | (((x)&0xff00U)>>8)) +#define ORC_SWAP_L(x) ((((x)&0xffU)<<24) | (((x)&0xff00U)<<8) | (((x)&0xff0000U)>>8) | (((x)&0xff000000U)>>24)) #define ORC_SWAP_Q(x) ((((x)&ORC_UINT64_C(0xff))<<56) | (((x)&ORC_UINT64_C(0xff00))<<40) | (((x)&ORC_UINT64_C(0xff0000))<<24) | (((x)&ORC_UINT64_C(0xff000000))<<8) | (((x)&ORC_UINT64_C(0xff00000000))>>8) | (((x)&ORC_UINT64_C(0xff0000000000))>>24) | (((x)&ORC_UINT64_C(0xff000000000000))>>40) | (((x)&ORC_UINT64_C(0xff00000000000000))>>56)) #define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset))) #define ORC_DENORMAL(x) ((x) & ((((x)&0x7f800000) == 0) ? 0xff800000 : 0xffffffff)) diff --git a/gst/videobox/gstvideoboxorc-dist.c b/gst/videobox/gstvideoboxorc-dist.c index 15bbf1defe..8fef7a049d 100644 --- a/gst/videobox/gstvideoboxorc-dist.c +++ b/gst/videobox/gstvideoboxorc-dist.c @@ -121,8 +121,8 @@ void video_box_orc_splat_u32 (guint32 * ORC_RESTRICT d1, int p1, int n); #define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX) #define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX) #define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX) -#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8)) -#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24)) +#define ORC_SWAP_W(x) ((((x)&0xffU)<<8) | (((x)&0xff00U)>>8)) +#define ORC_SWAP_L(x) ((((x)&0xffU)<<24) | (((x)&0xff00U)<<8) | (((x)&0xff0000U)>>8) | (((x)&0xff000000U)>>24)) #define ORC_SWAP_Q(x) ((((x)&ORC_UINT64_C(0xff))<<56) | (((x)&ORC_UINT64_C(0xff00))<<40) | (((x)&ORC_UINT64_C(0xff0000))<<24) | (((x)&ORC_UINT64_C(0xff000000))<<8) | (((x)&ORC_UINT64_C(0xff00000000))>>8) | (((x)&ORC_UINT64_C(0xff0000000000))>>24) | (((x)&ORC_UINT64_C(0xff000000000000))>>40) | (((x)&ORC_UINT64_C(0xff00000000000000))>>56)) #define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset))) #define ORC_DENORMAL(x) ((x) & ((((x)&0x7f800000) == 0) ? 0xff800000 : 0xffffffff)) diff --git a/gst/videomixer/videomixerorc-dist.c b/gst/videomixer/videomixerorc-dist.c index 9106640f52..05c1863770 100644 --- a/gst/videomixer/videomixerorc-dist.c +++ b/gst/videomixer/videomixerorc-dist.c @@ -318,8 +318,8 @@ void videomixer_video_convert_orc_putline_A420 (guint8 * ORC_RESTRICT d1, #define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX) #define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX) #define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX) -#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8)) -#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24)) +#define ORC_SWAP_W(x) ((((x)&0xffU)<<8) | (((x)&0xff00U)>>8)) +#define ORC_SWAP_L(x) ((((x)&0xffU)<<24) | (((x)&0xff00U)<<8) | (((x)&0xff0000U)>>8) | (((x)&0xff000000U)>>24)) #define ORC_SWAP_Q(x) ((((x)&ORC_UINT64_C(0xff))<<56) | (((x)&ORC_UINT64_C(0xff00))<<40) | (((x)&ORC_UINT64_C(0xff0000))<<24) | (((x)&ORC_UINT64_C(0xff000000))<<8) | (((x)&ORC_UINT64_C(0xff00000000))>>8) | (((x)&ORC_UINT64_C(0xff0000000000))>>24) | (((x)&ORC_UINT64_C(0xff000000000000))>>40) | (((x)&ORC_UINT64_C(0xff00000000000000))>>56)) #define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset))) #define ORC_DENORMAL(x) ((x) & ((((x)&0x7f800000) == 0) ? 0xff800000 : 0xffffffff)) diff --git a/win32/common/config.h b/win32/common/config.h index cf4c3761ff..1728c6a3e6 100644 --- a/win32/common/config.h +++ b/win32/common/config.h @@ -58,17 +58,11 @@ #define GST_PACKAGE_ORIGIN "Unknown package origin" /* GStreamer package release date/time for plugins as YYYY-MM-DD */ -#define GST_PACKAGE_RELEASE_DATETIME "2013-09-24" +#define GST_PACKAGE_RELEASE_DATETIME "2014-05-03" /* Define if static plugins should be built */ #undef GST_PLUGIN_BUILD_STATIC -/* struct v4l2_buffer missing */ -#undef GST_V4L2_MISSING_BUFDECL - -/* I know the API is subject to change. */ -#undef G_UDEV_API_IS_SUBJECT_TO_CHANGE - /* Define to enable aalib ASCII Art library (used by aasink). */ #undef HAVE_AALIB @@ -142,10 +136,6 @@ */ #undef HAVE_DCGETTEXT -/* Define to 1 if you have the declaration of `V4L2_MEMORY_DMABUF', and to 0 - if you don't. */ -#undef HAVE_DECL_V4L2_MEMORY_DMABUF - /* Define to enable DirectSound plug-in (used by directsoundsink). */ #undef HAVE_DIRECTSOUND @@ -191,7 +181,7 @@ /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT -/* Define to enable Video 4 Linux 2 (used by v4l2src). */ +/* Define to enable Video 4 Linux 2 (used by video4linux2). */ #undef HAVE_GST_V4L2 /* Whether gudev is available for device detection */ @@ -359,9 +349,6 @@ /* Define to enable X Shared Memory extension. */ #undef HAVE_XSHM -/* Define to enable X11 XVideo extensions. */ -#undef HAVE_XVIDEO - /* Define to enable zlib support for qtdemux/matroska. */ #undef HAVE_ZLIB @@ -385,7 +372,7 @@ #define PACKAGE_NAME "GStreamer Good Plug-ins" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "GStreamer Good Plug-ins 1.2.0" +#define PACKAGE_STRING "GStreamer Good Plug-ins 1.3.1" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "gst-plugins-good" @@ -394,7 +381,7 @@ #undef PACKAGE_URL /* Define to the version of this package. */ -#define PACKAGE_VERSION "1.2.0" +#define PACKAGE_VERSION "1.3.1" /* directory where plugins are located */ #ifdef _DEBUG @@ -428,7 +415,7 @@ #undef TARGET_CPU /* Version number of package */ -#define VERSION "1.2.0" +#define VERSION "1.3.1" /* old wavpack API */ #undef WAVPACK_OLD_API |