diff options
author | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2009-08-29 12:05:40 +0100 |
---|---|---|
committer | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2009-08-29 12:12:19 +0100 |
commit | 0efa34f0d5693c0deebbbb69b210103c0e421f30 (patch) | |
tree | 42b3df4a0965ca6f78c79eb8aa502352489ba145 /ChangeLog | |
parent | 8c529a719ff73bfadd238c14e8e7a2718369bc33 (diff) |
Release 0.10.16
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 5730 |
1 files changed, 5719 insertions, 11 deletions
@@ -1,9 +1,5723 @@ +=== release 0.10.16 === + +2009-08-29 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + releasing 0.10.16, "Secret Handshakes" + +2009-08-26 00:58:45 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + 0.10.15.5 pre-release + +2009-08-25 16:53:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: don't use relative seeks + Don't use relative seeks, it's too hard to track where we are after a flush + etc. + fixes #593015 + +2009-08-24 17:50:29 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + * po/LINGUAS: + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/en_GB.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.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/ru.po: + * po/sk.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: + 0.10.15.4 pre-release + +2009-08-24 16:22:47 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + pulsesrc: don't discard the result of _set_caps() + Use the result of gst_pad_set_caps() instead of assuming success. + See #590678 + +2009-08-21 11:44:43 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + * gst/qtdemux/qtdemux_fourcc.h: + qtdemux: add support for agsm + Fixes #592530 + +2009-08-18 17:16:11 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: fix qt style string tag extraction + QT style tags are tested on starting with (C) symbol using >>, + and (unsigned) int (may) have different >> behaviour. + Fixes #592232. + +2009-08-17 15:48:20 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/jpeg/smokecodec.c: + smokeenc: don't crash when compiled against libjpeg7 + Set parameters so that we don't crash with libjpeg7. Based on + Stefan Kost's fix for jpegenc. Fixes #591951. + +2009-08-14 20:18:04 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/en_GB.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ru.po: + * po/sk.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: + 0.10.15.3 pre-release + +2009-08-14 13:45:08 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * tests/check/elements/rtpbin.c: + checks: add test for leak to rtpbin unit test + See #591476. + +2009-08-11 14:47:12 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Fix reference leak + Fixes #591476. + +2009-08-14 13:34:53 +0100 Zaheer Merali <zaheerabbas@merali.org> + + * ext/dv/gstdvdec.c: + dvdec: set bottom field first on PAL interlaced content, not top field first + DV interlaced content is always bottom field first. Fixes #591712. + +2009-08-14 12:44:06 +0100 Hans de Goede <jwrdegoede@fedoraproject.org> + + * sys/v4l2/gstv4l2src.c: + v4l2src: fix 'hang' with some cameras caused by bad timestamping if no framerate is available + For cameras/drivers that don't support e.g. VIDIOC_G_PARM we'd end up without + a framerate and would try to divide by 0, causing run-time warnings and all + frames to be timestamped with 0, which makes sinks that sync against the clock + drop them, causing 'hangs' (observed with the pwc driver and a Logitech QuickCam + Pro 4000). So if we do not know the framerate, simply don't adjust the + timestamps. Fixes #591451. + +2009-08-14 10:11:25 +0200 Filippo Argiolas <filippo.argiolas@gmail.com> + + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2src.c: + v4l2src: clear format list in READY->NULL + Clear format list and probed caps when going to NULL so if a new device + is set we'll probe the formats again instead of using previously + detected ones. Fixes bug #591747. + +2009-08-11 17:30:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + * po/LINGUAS: + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/en_GB.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ru.po: + * po/sk.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: + 0.10.15.2 pre-release + +2009-08-11 15:25:39 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * MAINTAINERS: + Add myself to MAINTAINERS file and update Wim's e-mail. + +2009-08-11 03:08:01 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * sys/v4l2/Makefile.am: + v4l2: fix make distcheck by disting some more headers + +2009-08-11 02:42:16 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.hierarchy: + * docs/plugins/gst-plugins-good-plugins.interfaces: + * docs/plugins/gst-plugins-good-plugins.prerequisites: + * docs/plugins/gst-plugins-good-plugins.signals: + * docs/plugins/inspect/plugin-avi.xml: + * docs/plugins/inspect/plugin-cairo.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-video4linux2.xml: + * docs/plugins/inspect/plugin-wavparse.xml: + docs: update + +2009-08-11 02:31:44 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + * docs/plugins/Makefile.am: + * docs/plugins/gst-plugins-good-plugins-docs.sgml: + * docs/plugins/gst-plugins-good-plugins-sections.txt: + * docs/plugins/inspect/plugin-gstrtpmanager.xml: + * gst-plugins-good.spec.in: + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/pipelines/.gitignore: + Move rtpmanager from -bad to -good. + Hook up build infrastructure (autotools, docs, unit test). + +2009-08-06 19:26:21 +0200 ric <csxnju at sogou.com> + + * gst/rtpmanager/rtpsource.c: + rtpsource: avoid buffer leak on bad seqnum + Fixes #590797 + +2009-07-28 18:18:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsource: allow for NULL caps on buffers + Add the NULL caps check where it matters and also cover another case of + potential NULL caps. + Fixes #590030 + +2009-07-28 11:59:56 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsource: Incoming buffers do not always have caps + +2009-07-27 15:46:23 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + rtpsession: avoid doing lip-sync in BYE + When we get a BYE packet, don't do lip-sync with the SR inside because some + senders have trouble constructing valid SR packets after BYE. + +2009-07-27 13:17:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + rtpbin: don't do lip-sync after a BYE + After a BYE packet from a source, stop forwarding the SR packets for lip-sync + to rtpbin. Some senders don't update their SR packets correctly after sending a + BYE and then we break lip-sync. We prefer to let the jitterbuffers drain with + the current lip-sync instead. + +2009-07-27 12:43:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + rtpbin: only reconsider once for BYE + When iterating the sources of a BYE packet, don't signal a reconsideration for + each of them but signal after we handled all sources. + +2009-07-21 15:33:41 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + rtpsession: Free conflicting addresses on finalize + +2009-07-01 12:55:03 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpbin: use new method for netaddress to string + +2009-06-29 18:48:33 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + * tests/check/elements/rtpbin.c: + rtpbin: do better cleanup of the src ghostpads + Connect to the pad-removed signal of the ptdemux elements so that we remove the + ghostpads for them. Fixes cleanup when going to NULL as well as when releasing + the sinkpads. + Fixes #561752 + +2009-05-28 19:08:40 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + rtpsession: add a comment + +2009-06-29 16:37:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpsession.c: + rtpbin: add SDES property + Remove all individual SDES properties and use one sdes property that takes a + GstStructure instead. This will allow us to add more custom stuff to the SDES + messages later. + +2009-06-29 16:21:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + * gst/rtpmanager/rtpsource.c: + * gst/rtpmanager/rtpsource.h: + rtpbin: add SDES property that takes GstStructure + Remove all individual SDES properties and use one sdes property that takes a + GstStructure instead. This will allow us to add more custom stuff to the SDES + messages later. + +2009-06-02 17:46:08 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpclient.h: + * gst/rtpmanager/gstrtpmanager.c: + rtpbin: removed old gstrtpclient + +2009-06-19 19:09:19 +0200 Branko Subasic <branko.subasic at axis.com> + + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsession.h: + * gst/rtpmanager/rtpsource.c: + * gst/rtpmanager/rtpsource.h: + * tests/check/elements/rtpbin_buffer_list.c: + rtpbin: add support for buffer-list + Add support for sending buffer-lists. + Add unit test for testing that the buffer-list passed through rtpbin. + fixes #585839 + +2009-06-19 16:21:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + Make build without warnings with debugging disabled + +2009-05-28 17:37:44 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Transform the right session sdes message + Fixes #584165 + +2009-05-28 17:33:10 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + Add ssrc to application/x-rtp-source-sdes structure + +2009-05-27 11:03:14 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsouce: the network address is in network order + Bring the network address in netowkr byte order to the host order. + +2009-05-26 15:40:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsource: byteswap the port from GstNetAddress + Since the port in GstNetAddress is in network order we might need to byteswap it + before adding it to the source statistics. + +2009-05-25 13:46:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: remove ptdemux ghostpads + +2009-05-25 13:33:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * tests/check/elements/rtpbin.c: + tests: add receive rtpbin unit test + +2009-05-22 16:41:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: add to new signal to remove SSRC pads + +2009-05-22 16:35:20 +0200 Ali Sabil <ali.sabil at gmail.com> + + * gst/rtpmanager/gstrtpbin-marshal.list: + * gst/rtpmanager/gstrtpssrcdemux.c: + * gst/rtpmanager/gstrtpssrcdemux.h: + ssrcdemux: emit signal when pads are removed + Add action signal to clear an SSRC in the ssrc demuxer. + Add signal to notify of removed ssrc. + See #554839 + +2009-05-22 15:45:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: use our ghostpads instead of its target + Since we keep a reference to our ghostpads, we can use them to track sessions. + This avoid us having to mess with the target of the ghostpad. + +2009-05-22 15:37:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * tests/check/elements/rtpbin.c: + tests: more rtpbin checks + +2009-05-22 15:36:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: don't warn when getting request pads twice + Allow getting the request pads multiple times, just return the previously + created pads. + +2009-05-22 13:47:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsource: add RTP and RTCP source address + Add the RTP and RTCP sender addresses in the stats structure. + +2009-05-22 13:45:15 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpsession.c: + rtpsession: reuse source code for SDES + Reuse the RTPSource object property instead of duplicating code. + +2009-05-22 13:44:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * tests/check/elements/rtpbin.c: + tests: add more rtpbin tests + +2009-05-22 12:23:27 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * tests/check/elements/rtpbin.c: + tests: add rtpbin unit test + Add the beginnings of an rtpbin unit test + Add some more stuff to .gitignore + +2009-05-22 12:20:13 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: set target state on new elements + Set the state on newly added elements to the state of the parent. + Add some debug info and do some cleanups + +2009-05-22 11:59:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: unref requests pads after releasing + +2009-05-22 01:43:50 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Implement releasing the streams + See #561752 + +2009-05-22 01:16:11 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Keep jb signals handler + Keep the signal handlers so they can be disconnected at release time + See #561752 + +2009-05-22 01:12:57 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: use the right lock for the sessions + Use the right lock when iterating the sessions. + +2009-05-22 01:03:55 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Free session if request pads are released + Free the session when all the request pads are released. + Don't mess with the session list in free_session as it is called from a foreach + on that list. + Set the state of the upstream element to NULL first. + See #561752 + +2009-05-22 00:51:53 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Implement relasing of the rtp recv pad + +2009-05-22 00:44:51 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Implement releasing of rtp send pads + +2009-05-22 00:34:36 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Implement release of the recv rtcp pad + See #561752 + +2009-05-22 00:16:19 +0200 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + rtpbin: Implement releasing of rtcp src pad + See #561752 + +2009-05-05 16:48:37 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpssrcdemux.c: + rtpssrcdemux: drop unexpected RTCP packets + We usually only get SR packets in our chain function but if an invalid packet + contains the SR packet after the RR packet, we must not fail but simply ignore + the malformed packet. + Fixes #581375 + +2009-04-27 11:09:08 +0200 Olivier Crete <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/rtpsource.c: + rtpsouce: make WARNING into LOG + Since neither rtpmanager nor any of the payloaders properly implement + pad allocation, there is no way for the rtpmanager to inform downstream elements + of the new SSRC if there is an SSRC collision. So the warning is emitted all the + time and it is confusing. + Fixes #580144 + +2009-04-27 11:06:01 +0200 Olivier Crete <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/rtpsession.c: + rtpsession: notify when SSRC changes + Emit a g_object_notify when the SSRc changes because of a collision. + Fixes #580144 + +2009-04-17 16:16:29 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpsession.c: + rtpsession: join the RTCP thread + Avoid a case where a joinable thread would be left unjoined, which leaked the + thread structure. + Fixes #577318. + +2009-04-15 18:14:48 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: prevent overflow in EOS estimation + Use a guint64 instead of a guint to hold a 64bit value to prevent completely + bogues EOS estimation values due to overflows. + +2009-04-15 17:44:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + rtpbin: we should not provide a clock + There is no need to provide a clock. + +2009-04-15 17:28:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: more estimated EOS fixes + Do more accurate EOS estimate and guard against backward timestamps. + +2009-04-15 17:25:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + jitterbuffer: release lock before pushing EOS + Make sure we release the jitterbuffer lock before we start pushing out data + because else we might deadlock. + +2009-03-27 17:44:57 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpjitterbuffer.h: + rtpbin: add on_npt_stop signal + Add the on_npt_stop signal to rtpbin and rtpjitterbuffer to notify the + application that the NPT stop position has been reached. + +2009-03-13 15:59:37 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpsession.c: + rtpbin: don't return FALSE on seek events + Silently ignore the seek event instead of returning FALSE. + +2009-02-26 13:10:29 +0100 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtpmanager/gstrtpsession.c: + gstrtpbin: Don't forward revc events to sender + Don't send events from the receiver to the sender side. + Fixes #572900. + +2009-02-25 11:45:05 +0200 Stefan Kost <ensonic@users.sf.net> + + * gst/rtpmanager/rtpjitterbuffer.c: + docs: various doc fixes + No short-desc as we have them in the element details. + Also keep things (Makefile.am and sections.txt) sorted. + Reword ambigous returns. No text after since please. + +2009-01-23 12:13:00 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/rtpstats.c: + Send BYE packets immediatly for small sessions + When the number of participants is less than 50, the RFC allows for sending the + BYE packet immediatly instead of using the regular BYE timeout. + Fixes #567828. + +2009-01-22 13:33:14 +0100 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtpmanager/gstrtpjitterbuffer.c: + Unlock the jitterbuffer before pushing out the packet-lost events. Move some code before we do the unlock to make the jitterbuffer state consistent while we are unlocked. + +2009-01-02 17:40:06 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/: When an SSRC is found on the caps of the sender RTP, use this as the internal SSRC. Fixes #565910. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_setcaps_send_rtp), (create_send_rtp_sink): + * gst/rtpmanager/rtpsession.c: (rtp_session_set_internal_ssrc): + When an SSRC is found on the caps of the sender RTP, use this as the + internal SSRC. Fixes #565910. + +2009-01-02 16:50:53 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Rename a method to better reflect what it really does. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_event_send_rtp_sink), + (gst_rtp_session_getcaps_send_rtp): + * gst/rtpmanager/rtpsession.c: (check_collision), + (rtp_session_schedule_bye_locked), (rtp_session_schedule_bye): + * gst/rtpmanager/rtpsession.h: + Rename a method to better reflect what it really does. + +2008-12-29 15:49:37 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Use method to get the internal SSRC. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_getcaps_send_rtp): + Use method to get the internal SSRC. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (rtp_session_set_property), (rtp_session_get_property): + Add property to congiure the internal SSRC of the session. + Fixes #565910. + +2008-12-29 15:21:58 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsession.c: Only change the SSRC of the session and reset the internal source when the SSRC actually... + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (rtp_session_set_internal_ssrc): + Only change the SSRC of the session and reset the internal source when + the SSRC actually changed. See #565910. + +2008-12-29 14:21:47 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsource.*: When no payload was specified on the caps but there was a clock-rate, assume the clock-ra... + Original commit message from CVS: + * gst/rtpmanager/rtpsource.c: (rtp_source_init), + (rtp_source_update_caps), (get_clock_rate): + * gst/rtpmanager/rtpsource.h: + When no payload was specified on the caps but there was a clock-rate, + assume the clock-rate corresponds to the first payload type found in the + RTP packets. Fixes #565509. + +2008-12-23 11:39:59 +0000 Arnout Vandecappelle <arnout@mind.be> + + gst/rtpmanager/rtpjitterbuffer.*: Keep track of the last outgoing timestamp and of the last sender-side time. Timest... + Original commit message from CVS: + Patch by: Arnout Vandecappelle <arnout at mind dot be> + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), + (calculate_skew): + * gst/rtpmanager/rtpjitterbuffer.h: + Keep track of the last outgoing timestamp and of the last sender-side + time. Timestamps can only go forward if they do at the sender + side, can only go back if they do at the sender side, and remain the + same if they remain the same at the sender side. Fixes #565319. + +2008-11-26 12:40:18 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsession.c: Make obtain_source return an aditional ref so that we don't lose our ref to it when a se... + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (obtain_source), + (rtp_session_create_source), (rtp_session_process_rtp), + (rtp_session_process_sr), (rtp_session_process_rr), + (rtp_session_process_sdes), (rtp_session_process_bye): + Make obtain_source return an aditional ref so that we don't lose our ref + to it when a session cleanup occurs when we are emiting a signal. + Emit the on_new_ssrc signal for the CSRC, not the SSRC. + Fixes #562319. + +2008-11-26 12:02:21 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Reset the sync parameters when clearing the payload type map too. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_reset_sync), + (gst_rtp_bin_clear_pt_map): + Reset the sync parameters when clearing the payload type map too. + Fixes #562312. + +2008-11-26 11:44:37 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Remove a lot of per stream state that is not needed and pass new info in the method call. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (get_client), + (gst_rtp_bin_reset_sync), (gst_rtp_bin_associate), + (gst_rtp_bin_handle_sync), (create_stream), + (gst_rtp_bin_class_init), (new_ssrc_pad_found): + * gst/rtpmanager/gstrtpbin.h: + Remove a lot of per stream state that is not needed and pass new info in + the method call. + Add signal to reset sync parameters. + Avoid parsing the caps to get a clock_base, we get this from the sync + signal now. + +2008-11-25 15:12:06 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Fix event leak. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_event_send_rtcp_src): + Fix event leak. + +2008-11-22 15:31:36 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsession.c: Add property to configure the RTCP MTU. + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (rtp_session_init), (rtp_session_set_property), + (rtp_session_get_property): + Add property to configure the RTCP MTU. + +2008-11-22 15:24:47 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsession.c: Add G_PARAM_STATIC_STRINGS. + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (copy_source), (rtp_session_create_sources), + (rtp_session_get_property): + Add G_PARAM_STATIC_STRINGS. + Add property to return a GValueArray of all known RTPSources in the + session. + * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), + (rtp_source_create_sdes), (rtp_source_set_property), + (rtp_source_get_property): + Remove properties to set the various SDES items, an application is never + supposed to change the RTPSource data. + Change the SDES getter properties to one SDES property that returns all + SDES items in a GstStructure. + +2008-11-22 13:17:24 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Also unref the target pad for unknown pads. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_release_pad): + Also unref the target pad for unknown pads. + +2008-11-21 16:17:22 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpbin.c: Release the right pads on rtpbin. Fixes #561752. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_release_pad): + Release the right pads on rtpbin. Fixes #561752. + +2008-11-20 18:41:34 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Pass the running time to the session when processing RTP packets. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (get_current_times), + (rtcp_thread), (gst_rtp_session_chain_recv_rtp): + Pass the running time to the session when processing RTP packets. + Improve the time function to provide more info. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (rtp_session_init), (update_arrival_stats), + (rtp_session_process_rtp), (rtp_session_process_sdes), + (rtp_session_process_rtcp), (session_start_rtcp), + (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Mark the internal source with a flag. + Use running_time instead of the more useless timestamp. + Validate a source when a valid SDES has been received. + Pass the current system time when processing SR packets. + * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), + (rtp_source_init), (rtp_source_create_stats), + (rtp_source_get_property), (rtp_source_send_rtp), + (rtp_source_process_rb), (rtp_source_get_new_rb), + (rtp_source_get_last_rb): + * gst/rtpmanager/rtpsource.h: + Add property to get source stats. + Mark params as STATIC_STRINGS. + Calculate the bitrate at the sender SSRC. + Avoid negative values in the round trip time calculations. + * gst/rtpmanager/rtpstats.h: + Update some docs and change some variable name to more closely reflect + what it contains. + +2008-11-20 08:19:15 +0000 Sebastian Dröge <slomo@circular-chaos.org> + + gst/rtpmanager/gstrtpjitterbuffer.c: Initialize return value to fix compiler warning about uninitialized variable. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain_rtcp): + Initialize return value to fix compiler warning about uninitialized + variable. + +2008-11-19 16:48:38 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Mark signal arg as static scope. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init): + Mark signal arg as static scope. + +2008-11-19 09:06:29 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Remove internal sync pad, use signals instead to get lip-sync notifications. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), + (gst_rtp_bin_handle_sync), (create_stream), (free_stream), + (new_ssrc_pad_found): + Remove internal sync pad, use signals instead to get lip-sync + notifications. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_base_init), + (gst_rtp_jitter_buffer_class_init), + (gst_rtp_jitter_buffer_internal_links), (create_rtcp_sink), + (remove_rtcp_sink), (gst_rtp_jitter_buffer_request_new_pad), + (gst_rtp_jitter_buffer_release_pad), + (gst_rtp_jitter_buffer_sink_rtcp_event), + (gst_rtp_jitter_buffer_chain_rtcp), + (gst_rtp_jitter_buffer_get_property): + * gst/rtpmanager/gstrtpjitterbuffer.h: + Make it possible to send SR packets to the jitterbuffer. + Check if the SR timestamps are valid by comparing them to the RTP + timestamps. + Signal the SR packet and the timing information to listeners. + * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), + (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_src_query): + Remove some unused code. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), + (calculate_skew), (rtp_jitter_buffer_get_sync): + * gst/rtpmanager/rtpjitterbuffer.h: + Keep track of the last seen RTP timestamp so that we can filter out + invalid SR packets. + +2008-11-17 19:47:32 +0000 Sebastian Dröge <slomo@circular-chaos.org> + + gst/rtpmanager/rtpsource.c: Fix GST_DEBUG call to only have as many arguments as required by the format string. Fixes... + Original commit message from CVS: + * gst/rtpmanager/rtpsource.c: (get_clock_rate): + Fix GST_DEBUG call to only have as many arguments as required + by the format string. Fixes a compiler warning. + +2008-11-17 15:17:52 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Do not try to keep track of the clock-rate ourselves but simply get the value from the ji... + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), + (gst_rtp_bin_sync_chain), (create_stream), (new_ssrc_pad_found): + Do not try to keep track of the clock-rate ourselves but simply get the + value from the jitterbuffer. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_get_sync): + * gst/rtpmanager/gstrtpjitterbuffer.h: + Add some debug info. + Pass the clock-rate to the jitterbuffer. + Also pass the clock-rate along with the rtp timestamp when getting the + sync parameters. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): + Fix some debug. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), + (calculate_skew), (rtp_jitter_buffer_get_sync): + * gst/rtpmanager/rtpjitterbuffer.h: + Keep track of clock-rate changes and return the clock-rate together with + the rtp timestamps used for sync. + Don't try to construct timestamps when we have no base_time. + * gst/rtpmanager/rtpsource.c: (get_clock_rate): + Request a new clock-rate when the payload type changes. + Reset the jitter calculation when the clock-rate changes. + +2008-11-13 15:48:54 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Small cleanups and some more debug info. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_parse_caps), + (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_chain): + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), + (calculate_skew): + Small cleanups and some more debug info. + +2008-11-10 15:26:40 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Also configure the next expected output seqnum when we get a seqnum-base on the ... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain): + Also configure the next expected output seqnum when we get a seqnum-base + on the caps. + +2008-11-04 12:42:30 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + Don't install static libs for plugins. Fixes #550851 for -bad. + Original commit message from CVS: + * ext/alsaspdif/Makefile.am: + * ext/amrwb/Makefile.am: + * ext/apexsink/Makefile.am: + * ext/arts/Makefile.am: + * ext/artsd/Makefile.am: + * ext/audiofile/Makefile.am: + * ext/audioresample/Makefile.am: + * ext/bz2/Makefile.am: + * ext/cdaudio/Makefile.am: + * ext/celt/Makefile.am: + * ext/dc1394/Makefile.am: + * ext/dirac/Makefile.am: + * ext/directfb/Makefile.am: + * ext/divx/Makefile.am: + * ext/dts/Makefile.am: + * ext/faac/Makefile.am: + * ext/faad/Makefile.am: + * ext/gsm/Makefile.am: + * ext/hermes/Makefile.am: + * ext/ivorbis/Makefile.am: + * ext/jack/Makefile.am: + * ext/jp2k/Makefile.am: + * ext/ladspa/Makefile.am: + * ext/lcs/Makefile.am: + * ext/libfame/Makefile.am: + * ext/libmms/Makefile.am: + * ext/metadata/Makefile.am: + * ext/mpeg2enc/Makefile.am: + * ext/mplex/Makefile.am: + * ext/musepack/Makefile.am: + * ext/musicbrainz/Makefile.am: + * ext/mythtv/Makefile.am: + * ext/nas/Makefile.am: + * ext/neon/Makefile.am: + * ext/ofa/Makefile.am: + * ext/polyp/Makefile.am: + * ext/resindvd/Makefile.am: + * ext/sdl/Makefile.am: + * ext/shout/Makefile.am: + * ext/snapshot/Makefile.am: + * ext/sndfile/Makefile.am: + * ext/soundtouch/Makefile.am: + * ext/spc/Makefile.am: + * ext/swfdec/Makefile.am: + * ext/tarkin/Makefile.am: + * ext/theora/Makefile.am: + * ext/timidity/Makefile.am: + * ext/twolame/Makefile.am: + * ext/x264/Makefile.am: + * ext/xine/Makefile.am: + * ext/xvid/Makefile.am: + * gst-libs/gst/app/Makefile.am: + * gst-libs/gst/dshow/Makefile.am: + * gst/aiffparse/Makefile.am: + * gst/app/Makefile.am: + * gst/audiobuffer/Makefile.am: + * gst/bayer/Makefile.am: + * gst/cdxaparse/Makefile.am: + * gst/chart/Makefile.am: + * gst/colorspace/Makefile.am: + * gst/dccp/Makefile.am: + * gst/deinterlace/Makefile.am: + * gst/deinterlace2/Makefile.am: + * gst/dvdspu/Makefile.am: + * gst/festival/Makefile.am: + * gst/filter/Makefile.am: + * gst/flacparse/Makefile.am: + * gst/flv/Makefile.am: + * gst/games/Makefile.am: + * gst/h264parse/Makefile.am: + * gst/librfb/Makefile.am: + * gst/mixmatrix/Makefile.am: + * gst/modplug/Makefile.am: + * gst/mpeg1sys/Makefile.am: + * gst/mpeg4videoparse/Makefile.am: + * gst/mpegdemux/Makefile.am: + * gst/mpegtsmux/Makefile.am: + * gst/mpegvideoparse/Makefile.am: + * gst/mve/Makefile.am: + * gst/nsf/Makefile.am: + * gst/nuvdemux/Makefile.am: + * gst/overlay/Makefile.am: + * gst/passthrough/Makefile.am: + * gst/pcapparse/Makefile.am: + * gst/playondemand/Makefile.am: + * gst/rawparse/Makefile.am: + * gst/real/Makefile.am: + * gst/rtjpeg/Makefile.am: + * gst/rtpmanager/Makefile.am: + * gst/scaletempo/Makefile.am: + * gst/sdp/Makefile.am: + * gst/selector/Makefile.am: + * gst/smooth/Makefile.am: + * gst/smoothwave/Makefile.am: + * gst/speed/Makefile.am: + * gst/speexresample/Makefile.am: + * gst/stereo/Makefile.am: + * gst/subenc/Makefile.am: + * gst/tta/Makefile.am: + * gst/vbidec/Makefile.am: + * gst/videodrop/Makefile.am: + * gst/videosignal/Makefile.am: + * gst/virtualdub/Makefile.am: + * gst/vmnc/Makefile.am: + * gst/y4m/Makefile.am: + * sys/acmenc/Makefile.am: + * sys/cdrom/Makefile.am: + * sys/dshowdecwrapper/Makefile.am: + * sys/dshowsrcwrapper/Makefile.am: + * sys/dvb/Makefile.am: + * sys/dxr3/Makefile.am: + * sys/fbdev/Makefile.am: + * sys/oss4/Makefile.am: + * sys/qcam/Makefile.am: + * sys/qtwrapper/Makefile.am: + * sys/vcd/Makefile.am: + * sys/wininet/Makefile.am: + * win32/common/config.h: + Don't install static libs for plugins. Fixes #550851 for -bad. + +2008-10-16 13:05:37 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Fix problem with using the output seqnum counter to check for input seqnum disco... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_parse_caps), + (gst_rtp_jitter_buffer_flush_start), + (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_loop): + Fix problem with using the output seqnum counter to check for input + seqnum discontinuities. + Improve gap detection and recovery, reset and flush the jitterbuffer on + seqnum restart. Fixes #556520. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_insert): + Fix wrong G_LIKELY. + +2008-10-16 09:51:28 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Install event handler on the rtcp_src pad, make LATENCY event return + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_event_send_rtcp_src), (create_send_rtcp_src): + Install event handler on the rtcp_src pad, make LATENCY event return + TRUE. + +2008-10-07 18:54:41 +0000 Håvard Graff <havard.graff@tandberg.com> + + gst/rtpmanager/gstrtpbin-marshal.list: Add marshaller for new action signal. + Original commit message from CVS: + Patch by: Håvard Graff <havard dot graff at tandberg dot com> + * gst/rtpmanager/gstrtpbin-marshal.list: + Add marshaller for new action signal. + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_internal_session), + (gst_rtp_bin_class_init): + * gst/rtpmanager/gstrtpbin.h: + Add action signal to retrieve the internal RTPSession object. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_get_property), (gst_rtp_session_release_pad): + Add property to access the internal RTPSession object. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (check_collision): + * gst/rtpmanager/rtpsession.h: + Add action signal to retrieve an RTPSource object by SSRC. + See #555396. + +2008-10-07 11:33:10 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Release pads of the session manager. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (find_session_by_pad), + (free_session), (gst_rtp_bin_dispose), (remove_recv_rtp), + (remove_recv_rtcp), (remove_send_rtp), (remove_rtcp), + (gst_rtp_bin_release_pad): + Release pads of the session manager. + Start implementing releasing pads of gstrtpbin. + * gst/rtpmanager/gstrtpsession.c: (remove_recv_rtp_sink), + (remove_recv_rtcp_sink), (remove_send_rtp_sink), + (remove_send_rtcp_src), (gst_rtp_session_release_pad): + Implement releasing pads in gstrtpsession. + +2008-10-07 10:02:20 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Only update the seqnum-base when it was not already configured for the streams. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_parse_caps): + Only update the seqnum-base when it was not already configured for the + streams. + +2008-09-30 15:08:52 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsession.c: Ref the rtpsource object before we release the session lock when we emit the signals. + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision), + (on_ssrc_validated), (on_ssrc_active), (on_ssrc_sdes), + (on_bye_ssrc), (on_bye_timeout), (on_timeout), (on_sender_timeout): + Ref the rtpsource object before we release the session lock when we emit + the signals. + +2008-09-23 18:13:31 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Fix some docs. + Original commit message from CVS: + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_insert), + (rtp_jitter_buffer_get_sync): + * gst/rtpmanager/rtpsession.c: (on_sender_timeout), + (session_cleanup): + * gst/rtpmanager/rtpsource.c: + Fix some docs. + +2008-09-17 13:59:21 +0000 Jan Schmidt <thaytan@mad.scientist.com> + + Fix compiler warnings on OS/X + Original commit message from CVS: + * ext/jack/gstjackaudiosink.c: (jack_process_cb): + * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): + Fix compiler warnings on OS/X + +2008-09-13 01:37:50 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Do not try to adjust the offset of streams for which we have not yet seen an SR packet. A... + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session), + (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain): + Do not try to adjust the offset of streams for which we have not yet + seen an SR packet. Avoids large ts-offsets in some cases. + +2008-09-05 13:52:34 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Add signal to notify listeners when a sender becomes a receiver. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (on_sender_timeout), + (create_session), (gst_rtp_bin_associate), + (gst_rtp_bin_sync_chain), (gst_rtp_bin_class_init), + (gst_rtp_bin_request_new_pad): + * gst/rtpmanager/gstrtpbin.h: + Add signal to notify listeners when a sender becomes a receiver. + Tweak lip-sync code, don't store our own copy of the ts-offset of the + jitterbuffer, don't adjust sync if the change is less than 4msec. + Get the RTP timestamp <-> GStreamer timestamp relation directly from + the jitterbuffer instead of our inaccurate version from the source. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), + (gst_rtp_jitter_buffer_get_sync): + * gst/rtpmanager/gstrtpjitterbuffer.h: + Add G_LIKELY macros, use global defines for max packet reorder and + dropouts. + Reset the jitterbuffer clock skew detection when packets seqnums are + changed unexpectedly. + * gst/rtpmanager/gstrtpsession.c: (on_sender_timeout), + (gst_rtp_session_class_init), (gst_rtp_session_init): + * gst/rtpmanager/gstrtpsession.h: + Add sender timeout signal. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), + (calculate_skew), (rtp_jitter_buffer_insert), + (rtp_jitter_buffer_get_sync): + * gst/rtpmanager/rtpjitterbuffer.h: + Add some G_LIKELY macros. + Keep track of the extended RTP timestamp so that we can report the RTP + timestamp <-> GStreamer timestamp relation for lip-sync. + Remove server timestamp gap detection code, the server can sometimes + make a huge gap in timestamps (talk spurts,...) see #549774. + Detect timetamp weirdness instead by observing the sender/receiver + timestamp relation and resync if it changes more than 1 second. + Add method to report about the current rtp <-> gst timestamp relation + which is needed for lip-sync. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (on_sender_timeout), (check_collision), (rtp_session_process_sr), + (session_cleanup): + * gst/rtpmanager/rtpsession.h: + Add sender timeout signal. + Remove inaccurate rtp <-> gst timestamp relation code, the + jitterbuffer can now do an accurate reporting about this. + * gst/rtpmanager/rtpsource.c: (rtp_source_init), + (rtp_source_update_caps), (calculate_jitter), + (rtp_source_process_rtp): + * gst/rtpmanager/rtpsource.h: + Remove inaccurate rtp <-> gst timestamp relation code. + * gst/rtpmanager/rtpstats.h: + Define global max-reorder and max-dropout constants for use in various + subsystems. + +2008-08-28 15:21:45 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Send EOS when the session object instructs us to. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_send_rtcp), + (gst_rtp_session_event_send_rtp_sink): + Send EOS when the session object instructs us to. + * gst/rtpmanager/rtpsession.c: (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Make it possible for the session manager to instruct us to send EOS. We + currently will EOS when the session is a sender and when the sender part + goes EOS. This is not entirely correct behaviour because the session + could still participate as a receiver. + Fixes #549409. + +2008-08-13 14:31:02 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Reset rtp timestamp interpollation when we detect a gap when the clock_base changed. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), + (gst_rtp_bin_sync_chain), (new_ssrc_pad_found): + Reset rtp timestamp interpollation when we detect a gap when the + clock_base changed. + Don't try to adjust the ts-offset when it's too big (> 3seconds) + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_set_ssrc): + * gst/rtpmanager/gstrtpsession.h: + Add method to set session SSRC. + * gst/rtpmanager/rtpsession.c: (check_collision), + (rtp_session_set_internal_ssrc), (rtp_session_get_internal_ssrc), + (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Added debugging for the collision checks. + Add method to change the internal SSRC of the session. + * gst/rtpmanager/rtpsource.c: (rtp_source_process_rtp): + Reset the clock base when we detect large jumps in the seqnums. + +2008-08-11 07:20:15 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + gst/rtpmanager/gstrtpbin.c: Print the pad-name in debug log. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: + Print the pad-name in debug log. + * sys/dshowsrcwrapper/gstdshowaudiosrc.c: + * sys/dshowsrcwrapper/gstdshowvideosrc.c: + Use "-" instead of "_" in property names. Can we call them just + "device" like everywhere else? + +2008-08-05 09:42:53 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpjitterbuffer.c: Make the buffer metadata writable before inserting it in the jitterbuffer becaus... + Original commit message from CVS: + Based on patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): + Make the buffer metadata writable before inserting it in the + jitterbuffer because the jitterbuffer will modify the timestamps. + * gst/rtpmanager/rtpjitterbuffer.c: + Update method comment about requiring writable metadata on buffers. + * gst/rtpmanager/rtpsession.c: (rtp_session_process_sr), + (rtp_session_process_rtcp): + Make the RTCP buffer metadata writable because we want to modify the + metadata. + Fixes #546312. + +2008-08-05 09:00:50 +0000 Håvard Graff <havard.graff@tandberg.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Fix debug by logging the right seqnum. + Original commit message from CVS: + Patch by: Håvard Graff <havard dot graff at tandberg dot com> + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain): + Fix debug by logging the right seqnum. + +2008-08-05 08:58:27 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpbin.c: Release lock before emitting the request-pt-map signal. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/gstrtpbin.c: (get_pt_map): + Release lock before emitting the request-pt-map signal. + Fixes #543480. + +2008-07-03 14:44:51 +0000 Peter Kjellerstedt <pkj@axis.com> + + gst/rtpmanager/: Corrected a typo (interpollate -> interpolate). + Original commit message from CVS: + * ChangeLog: + * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): + * gst/rtpmanager/rtpsource.c: (rtp_source_get_new_sr): + Corrected a typo (interpollate -> interpolate). + +2008-07-03 14:31:10 +0000 Peter Kjellerstedt <pkj@axis.com> + + gst/rtpmanager/: Changed some GST_DEBUG() to GST_LOG() to reduce the spam when a pipeline is running normally. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), + (gst_rtp_session_send_rtp), (gst_rtp_session_send_rtcp), + (gst_rtp_session_sync_rtcp), (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_chain_send_rtp): + * gst/rtpmanager/rtpsession.c: (source_push_rtp), + (rtp_session_send_rtp): + * gst/rtpmanager/rtpsource.c: (push_packet), (calculate_jitter), + (rtp_source_process_rtp), (rtp_source_send_rtp): + Changed some GST_DEBUG() to GST_LOG() to reduce the spam when a + pipeline is running normally. + +2008-07-03 13:47:19 +0000 Peter Kjellerstedt <pkj@axis.com> + + gst/rtpmanager/: Do not mix the use of g_get_current_time() with gst_clock_get_time(). + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_init), + (gst_rtp_session_finalize), (rtcp_thread), + (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_recv_rtcp), + (gst_rtp_session_event_send_rtp_sink), + (gst_rtp_session_chain_send_rtp): + * gst/rtpmanager/rtpsession.c: (check_collision), + (update_arrival_stats), (rtp_session_process_rtp), + (rtp_session_process_rtcp), (rtp_session_send_rtp), + (rtp_session_send_bye_locked), (rtp_session_send_bye), + (rtp_session_next_timeout), (session_report_blocks), (session_cleanup), + (is_rtcp_time), (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Do not mix the use of g_get_current_time() with gst_clock_get_time(). + +2008-06-16 07:30:34 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + Final round of doc updates. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/speed/gstspeed.c: + * gst/speexresample/gstspeexresample.c: + * gst/videosignal/gstvideoanalyse.c: + * gst/videosignal/gstvideodetect.c: + * gst/videosignal/gstvideomark.c: + * sys/dvb/gstdvbsrc.c: + * sys/oss4/oss4-mixer.c: + * sys/oss4/oss4-sink.c: + * sys/oss4/oss4-source.c: + * sys/wininet/gstwininetsrc.c: + Final round of doc updates. + +2008-06-16 07:03:58 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + gst/: More doc updates. More xrefs. + Original commit message from CVS: + * gst/deinterlace/gstdeinterlace.c: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpptdemux.c: + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/gstrtpssrcdemux.c: + * gst/sdp/gstsdpdemux.c: + More doc updates. More xrefs. + +2008-06-12 14:49:18 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + Do not use short_description in section docs for elements. We extract them from element details and there will be war... + Original commit message from CVS: + * ext/dc1394/gstdc1394.c: + * ext/ivorbis/vorbisdec.c: + * ext/jack/gstjackaudiosink.c: + * ext/metadata/gstmetadatademux.c: + * ext/mythtv/gstmythtvsrc.c: + * ext/theora/theoradec.c: + * gst-libs/gst/app/gstappsink.c: + * gst/bayer/gstbayer2rgb.c: + * gst/deinterlace/gstdeinterlace.c: + * gst/rawparse/gstaudioparse.c: + * gst/rawparse/gstvideoparse.c: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpptdemux.c: + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/gstrtpssrcdemux.c: + * gst/selector/gstinputselector.c: + * gst/selector/gstoutputselector.c: + * gst/videosignal/gstvideoanalyse.c: + * gst/videosignal/gstvideodetect.c: + * gst/videosignal/gstvideomark.c: + * sys/oss4/oss4-mixer.c: + * sys/oss4/oss4-sink.c: + * sys/oss4/oss4-source.c: + Do not use short_description in section docs for elements. We extract + them from element details and there will be warnings if they differ. + Also fixing up the ChangeLog order. + +2008-06-06 13:01:05 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Fix deadlock when shutting down, use a new lock instead to properly shutdown. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_init), + (gst_rtp_bin_finalize), (gst_rtp_bin_change_state): + Fix deadlock when shutting down, use a new lock instead to properly + shutdown. + +2008-05-27 16:48:10 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Break out of callbacks when we are shutting down. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: + (gst_rtp_bin_propagate_property_to_jitterbuffer), + (gst_rtp_bin_change_state), (new_payload_found), + (new_ssrc_pad_found): + Break out of callbacks when we are shutting down. + Make sure no state changes can happen when we reconfigure. + +2008-05-26 10:09:29 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: When checking the seqnum, reset the jitterbuffer if the gap is too big, we need ... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): + When checking the seqnum, reset the jitterbuffer if the gap is too big, + we need to do this so that we can better handle a restarted source. + Fix some comments. + * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew), + (rtp_jitter_buffer_insert): + Tweak the skew resync diff. + Use our working seqnum compare function in -base. + Rework the jitterbuffer insert code to make it clearer and more + performant by only retrieving the seqnum of the input buffer once and by + adding some G_LIKELY compiler hints. + Improve debugging for duplicate packets. + * gst/rtpmanager/rtpsource.c: (rtp_source_process_rtp): + Fix a comment, we don't do skew correction here.. + +2008-05-26 10:00:24 +0000 Håvard Graff <havard.graff@tandberg.com> + + gst/rtpmanager/gstrtpbin.c: Propagate the do-lost and latency properties to the jitterbuffers when they are changed o... + Original commit message from CVS: + Patch by: Håvard Graff <havard dot graff at tandberg dot com> + * gst/rtpmanager/gstrtpbin.c: + (gst_rtp_bin_propagate_property_to_jitterbuffer), + (gst_rtp_bin_set_property): + Propagate the do-lost and latency properties to the jitterbuffers when + they are changed on rtpbin. + +2008-05-26 09:57:40 +0000 Wim Taymans <wim.taymans@gmail.com> + + Don't use _gst_pad(). + Original commit message from CVS: + * examples/switch/switcher.c: (switch_timer): + * gst/replaygain/gstrgvolume.c: (gst_rg_volume_init): + * gst/rtpmanager/gstrtpclient.c: (create_stream): + * gst/sdp/gstsdpdemux.c: (gst_sdp_demux_stream_configure_udp), + (gst_sdp_demux_stream_configure_udp_sink): + * tests/check/elements/deinterleave.c: (GST_START_TEST), + (pad_added_setup_data_check_float32_8ch_cb): + * tests/check/elements/rganalysis.c: (send_eos_event), + (send_tag_event): + Don't use _gst_pad(). + +2008-05-16 19:56:30 +0000 Jan Schmidt <thaytan@mad.scientist.com> + + docs/Makefile.am: Don't attempt to build plugin docs when they're disabled. + Original commit message from CVS: + * docs/Makefile.am: + Don't attempt to build plugin docs when they're disabled. + * gst/bayer/Makefile.am: + Add libgstvideo to the link. + * gst/rtpmanager/Makefile.am: + Fix link order, and move LIBS things to _LIBS + +2008-05-14 21:02:19 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Simply drop bad RTP packets with a warning instead of just posting an error and ... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain): + Simply drop bad RTP packets with a warning instead of just posting an + error and stopping. This is a perfectly recoverable event and we don't + force people to use an rtpbin to filter out bad packets first. + +2008-05-13 09:06:51 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Actually add the do-lost property to the object. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): + Actually add the do-lost property to the object. + +2008-05-12 18:43:41 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Avoid waiting for a negative (huge) duration when the last packet has a lower ti... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_loop): + Avoid waiting for a negative (huge) duration when the last packet has a + lower timestamp than the current packet. + +2008-05-12 14:28:09 +0000 Peter Kjellerstedt <pkj@axis.com> + + gst/rtpmanager/gstrtpsession.c: Make sure to unref the rtpsession returned by gst_pad_get_parent() to prevent a memor... + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_query_send_rtcp_src): + Make sure to unref the rtpsession returned by gst_pad_get_parent() to + prevent a memory leak. + +2008-05-12 14:12:08 +0000 Jan Schmidt <thaytan@mad.scientist.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Initialise with GST_CLOCK_TIME_NONE to avoid compiler warning. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_loop): + Initialise with GST_CLOCK_TIME_NONE to avoid compiler warning. + +2008-05-09 07:41:58 +0000 Peter Kjellerstedt <pkj@axis.com> + + gst/rtpmanager/rtpsource.c: Make sure to unref the caps used by RTPSource to prevent a memory leak. + Original commit message from CVS: + * gst/rtpmanager/rtpsource.c: (rtp_source_finalize): + Make sure to unref the caps used by RTPSource to prevent a memory leak. + +2008-05-08 09:43:33 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/rtpsession.c: Unlock the session lock when calling one of our callbacks. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/rtpsession.c: (source_clock_rate), + (rtp_session_process_bye), (rtp_session_send_bye_locked): + Unlock the session lock when calling one of our callbacks. + Fixes #532011. + +2008-05-08 06:23:39 +0000 Sjoerd Simons <sjoerd@luon.net> + + gst/rtpmanager/gstrtpsession.c: Send RTP BYE command on EOS. Fixes bug #531955. + Original commit message from CVS: + Patch by: Sjoerd Simons <sjoerd at luon dot net> + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_event_send_rtp_sink): + Send RTP BYE command on EOS. Fixes bug #531955. + +2008-04-25 11:32:09 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Expose new jitterbuffer property in rtpbin too. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_stream), (gst_rtp_bin_init), + (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): + * gst/rtpmanager/gstrtpbin.h: + Expose new jitterbuffer property in rtpbin too. + +2008-04-25 11:22:13 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Disable sending out rtp packet lost events by default and make a property to ena... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_init), + (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_set_property), + (gst_rtp_jitter_buffer_get_property): + Disable sending out rtp packet lost events by default and make a + property to enabe it. We will likely enable it by default when the base + depayloaders have a default handler for them so that we don't send these + events all through the pipeline for now. + +2008-04-25 09:35:43 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Remove private version of a function that is in -base now. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_flush_stop), + (gst_rtp_jitter_buffer_src_event), (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_loop): + Remove private version of a function that is in -base now. + Add src event handler. + Rework the jitterbuffer pushing loop so that it can quickly react to + lost packets and instruct the depayloader of them. This can then be used + to implement error concealment data. + +2008-04-25 08:21:06 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Set up some internal links functions for the RTCP and sync pads because the defaults ... + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_query_send_rtcp_src), (create_recv_rtcp_sink), + (create_send_rtcp_src): + Set up some internal links functions for the RTCP and sync pads because + the defaults are really not correct. + Implement a query handler for the RTCP src pad, mostly to correctly + report about the latency. + +2008-04-25 08:15:58 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Also keep track of the first buffer timestamp together with the first + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), + (gst_rtp_bin_sync_chain): + * gst/rtpmanager/rtpsession.c: (update_arrival_stats), + (rtp_session_process_sr), (rtp_session_on_timeout): + * gst/rtpmanager/rtpsource.c: (rtp_source_init), + (calculate_jitter): + * gst/rtpmanager/rtpsource.h: + * gst/rtpmanager/rtpstats.h: + Also keep track of the first buffer timestamp together with the first + RTP timestamp as they both are needed to construct the timing of + outgoing packets in the jitterbuffer and are therefore also needed to + manage lip-sync. This fixes lip-sync if the first RTP packets arrive + with a wildly different gap. + +2008-04-21 08:26:37 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpbin.c: Ref caps when inserting into the cache. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), + (new_ssrc_pad_found): + Ref caps when inserting into the cache. + Don't leak pads. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_get_clock_rate), + (gst_rtp_jitter_buffer_query): + Avoid a caps leak. + Don't leak refcount in query. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps), + (gst_rtp_pt_demux_chain): + Avoid caps leaks. + * gst/rtpmanager/gstrtpsession.c: (source_get_sdes_structure), + (gst_rtp_session_init), (return_true), + (gst_rtp_session_clear_pt_map), (gst_rtp_session_cache_caps), + (gst_rtp_session_clock_rate): + Ref caps when inserting into the cache. + Fix some more caps leaks. Fixes #528245. + +2008-04-17 07:31:44 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Unset GValues after g_signal_emitv so that we avoid a refcount leak. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (get_pt_map), (free_client), + (gst_rtp_bin_associate), (gst_rtp_bin_get_free_pad_name): + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_get_clock_rate): + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps): + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate): + Unset GValues after g_signal_emitv so that we avoid a refcount leak. + Don't leak a padname. + Don't leak client streams list. + Lock rtpbin when associating streams. Fixes #528245. + +2008-04-09 22:27:50 +0000 Peter Kjellerstedt <pkj@axis.com> + + gst/rtpmanager/: Avoid leaking pads in the RTP manager. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (free_session): + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize): + Avoid leaking pads in the RTP manager. + +2008-03-11 12:40:58 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/rtpsession.*: Implement collision and loop detection in rtpmanager. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/rtpsession.c: (find_add_conflicting_addresses), + (check_collision), (obtain_source), (rtp_session_create_new_ssrc), + (rtp_session_create_source), (rtp_session_process_rtp), + (rtp_session_process_sr), (rtp_session_process_rr), + (rtp_session_process_sdes), (rtp_session_process_bye), + (rtp_session_send_bye_locked), (rtp_session_send_bye), + (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Implement collision and loop detection in rtpmanager. + Fixes #520626. + * gst/rtpmanager/rtpsource.c: (rtp_source_reset), + (rtp_source_init): + * gst/rtpmanager/rtpsource.h: + Add method to reset stats. + +2008-03-11 11:36:03 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> + + gst/rtpmanager/gstrtpsession.c: Avoid a deadlock when joining the RTCP thread in PAUSED because it might be blocked d... + Original commit message from CVS: + Based on patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_init), + (rtcp_thread), (start_rtcp_thread), (stop_rtcp_thread), + (join_rtcp_thread), (gst_rtp_session_change_state): + Avoid a deadlock when joining the RTCP thread in PAUSED because it might + be blocked downstream. Also avoid spawning multiple rtcp threads. + Fixes #520894. + +2008-03-11 10:43:32 +0000 Stefan Kost <ensonic@users.sf.net> + + gst/rtpmanager/rtpjitterbuffer.c: Don't try to reset the clock skew when we have no timestamps. + Original commit message from CVS: + Patch by: Stefan Kost <ensonic@users.sf.net> + * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): + Don't try to reset the clock skew when we have no timestamps. + Fixes #519005. + +2008-02-20 09:33:25 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpbin.c: Fix small memory leak, leaking caps. Fixes #bug 517571. + Original commit message from CVS: + Patch by: Olivier Crete <tester at tester dot ca> + * gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found): + Fix small memory leak, leaking caps. Fixes #bug 517571. + +2008-02-14 16:25:51 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpbin.c: Ignore streams that did not receive an SR packet when doing synchronisation. Fixes #516160. + Original commit message from CVS: + Patch by: Olivier Crete <tester@tester.ca> + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate): + Ignore streams that did not receive an SR packet when doing + synchronisation. Fixes #516160. + +2008-01-29 18:57:27 +0000 Thijs Vermeir <thijsvermeir@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Try to get the new clock-rate from the buffer caps when we receive a new payload... + Original commit message from CVS: + Patch by: Thijs Vermeir <thijsvermeir at gmail dot com> + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain): + Try to get the new clock-rate from the buffer caps when we receive a new + payload type instead of always firing the signal. Fixes #512774. + +2008-01-25 16:58:00 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpbin.c: Also handle lip-sync when the clock-rate is not provided with caps but with a signal. + Original commit message from CVS: + Patch by: Olivier Crete <tester@tester.ca> + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), + (create_stream), (payload_type_change), (new_ssrc_pad_found): + Also handle lip-sync when the clock-rate is not provided with caps but + with a signal. + +2008-01-25 16:00:52 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/: Remove the fixed clock-rate from the jitterbuffer and extend it so that a clock-rate can be provided... + Original commit message from CVS: + Patch by: Olivier Crete <tester@tester.ca> + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain): + * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew), + (rtp_jitter_buffer_insert): + * gst/rtpmanager/rtpjitterbuffer.h: + Remove the fixed clock-rate from the jitterbuffer and extend it so that + a clock-rate can be provided with each buffer instead. Fixes #511686. + +2008-01-25 15:49:55 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/gstrtpjitterbuffer.c: Remove old unused variable. + Original commit message from CVS: + Patch by: Olivier Crete <tester@tester.ca> + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_change_state), + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): + Remove old unused variable. + Track pt on input buffers and get the clock-rate when it changes. + Ignore packets with unknown clock-rate. See #511686. + +2008-01-25 01:44:27 +0000 Olivier Crete <tester@tester.ca> + + gst/rtpmanager/rtpsource.c: Fix unref of buffer using the wrong function. Fixes #511920 + Original commit message from CVS: + Patch by: Olivier Crete <tester@tester.ca> + * gst/rtpmanager/rtpsource.c: Fix unref of buffer using the + wrong function. Fixes #511920 + +2008-01-11 17:02:30 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: If we find the caps in the cache, use it to parse the clock-rate instead of returning... + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate): + If we find the caps in the cache, use it to parse the clock-rate instead + of returning an error. Fixes a TODO as found by Youness Alaoui. + +2008-01-11 16:45:57 +0000 Youness Alaoui <youness.alaoui@collabora.co.uk> + + gst/rtpmanager/: Make it possible to use different user_data for each of the callbacks. + Original commit message from CVS: + Patch by: Youness Alaoui <youness dot alaoui at collabora dot co dot uk> + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate): + * gst/rtpmanager/rtpsession.c: (rtp_session_set_callbacks), + (rtp_session_set_process_rtp_callback), + (rtp_session_set_send_rtp_callback), + (rtp_session_set_send_rtcp_callback), + (rtp_session_set_sync_rtcp_callback), + (rtp_session_set_clock_rate_callback), + (rtp_session_set_reconsider_callback), (source_push_rtp), + (source_clock_rate), (rtp_session_process_bye), + (rtp_session_process_rtcp), (rtp_session_send_bye), + (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Make it possible to use different user_data for each of the callbacks. + Fixes #508587. + +2008-01-10 20:57:17 +0000 Thijs Vermeir <thijsvermeir@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Fix documentation for latest patch + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: + Fix documentation for latest patch + +2008-01-10 14:34:30 +0000 Thijs Vermeir <thijsvermeir@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Allow request_new_pad with name NULL (bug #508515) + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: + Allow request_new_pad with name NULL (bug #508515) + +2008-01-09 14:39:44 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Don't set fixed caps, we can basically do everything the upsteam peer pad can renegot... + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (create_send_rtp_sink): + Don't set fixed caps, we can basically do everything the upsteam peer + pad can renegotiate to. Fixes #507940. + +2008-01-04 18:47:57 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Don't unref the popped buffer when we don't have ownership. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_loop): + Don't unref the popped buffer when we don't have ownership. + Fixes #507020. + +2007-12-31 13:12:06 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpssrcdemux.c: Don't clean up pads when going to PAUSED. + Original commit message from CVS: + * gst/rtpmanager/gstrtpssrcdemux.c: + (gst_rtp_ssrc_demux_change_state): + Don't clean up pads when going to PAUSED. + +2007-12-12 16:59:03 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Clean up the dynamic pads when going to READY. + Original commit message from CVS: + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_finalize), + (gst_rtp_pt_demux_setup), (gst_rtp_pt_demux_release), + (gst_rtp_pt_demux_change_state): + * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_reset), + (gst_rtp_ssrc_demux_dispose), (gst_rtp_ssrc_demux_src_query), + (gst_rtp_ssrc_demux_change_state): + Clean up the dynamic pads when going to READY. + +2007-12-12 12:11:53 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Fix some leaks. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_finalize), + (gst_rtp_bin_set_sdes_string), (gst_rtp_bin_get_sdes_string), + (gst_rtp_bin_handle_message): + * gst/rtpmanager/rtpsession.c: (rtp_session_finalize), + (rtp_session_send_bye): + * gst/rtpmanager/rtpsource.c: (rtp_source_finalize): + Fix some leaks. + +2007-12-10 18:36:04 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Post a message when the SDES infor changes for a source. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init), + (gst_rtp_bin_handle_message): + * gst/rtpmanager/gstrtpsession.c: (source_get_sdes_structure), + (on_ssrc_sdes): + Post a message when the SDES infor changes for a source. + * gst/rtpmanager/rtpsession.c: + * gst/rtpmanager/rtpsource.c: + Update some comments. + +2007-12-10 15:34:19 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Add signal to notify of an SDES change. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (on_ssrc_sdes), (create_session), + (gst_rtp_bin_class_init): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpclient.h: + * gst/rtpmanager/gstrtpjitterbuffer.h: + * gst/rtpmanager/gstrtpmanager.c: + * gst/rtpmanager/gstrtpptdemux.c: + * gst/rtpmanager/gstrtpptdemux.h: + * gst/rtpmanager/gstrtpsession.c: (on_ssrc_sdes), + (gst_rtp_session_class_init), (gst_rtp_session_init): + * gst/rtpmanager/gstrtpsession.h: + * gst/rtpmanager/gstrtpssrcdemux.c: + * gst/rtpmanager/gstrtpssrcdemux.h: + * gst/rtpmanager/rtpjitterbuffer.c: + * gst/rtpmanager/rtpjitterbuffer.h: + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (on_ssrc_sdes), (rtp_session_process_sdes): + * gst/rtpmanager/rtpsession.h: + * gst/rtpmanager/rtpsource.c: + * gst/rtpmanager/rtpsource.h: + * gst/rtpmanager/rtpstats.c: + * gst/rtpmanager/rtpstats.h: + Add signal to notify of an SDES change. + Fix object type in the signal callbacks. + +2007-12-10 14:03:32 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Expose SDES items as properties and configure the session managers with them. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session), + (gst_rtp_bin_class_init), (gst_rtp_bin_init), (sdes_type_to_name), + (gst_rtp_bin_set_sdes_string), (gst_rtp_bin_get_sdes_string), + (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): + * gst/rtpmanager/gstrtpbin.h: + Expose SDES items as properties and configure the session managers with + them. + * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), + (rtp_source_set_property): + Fix SSRC property. + +2007-12-10 11:08:11 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Update comment. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session): + * gst/rtpmanager/rtpjitterbuffer.c: + Update comment. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_set_property), (gst_rtp_session_get_property): + Define some GObject properties to set SDES and other configuration. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (rtp_session_init), (rtp_session_finalize), + (rtp_session_set_property), (rtp_session_get_property), + (on_ssrc_sdes), (rtp_session_set_bandwidth), + (rtp_session_get_bandwidth), (rtp_session_set_rtcp_fraction), + (rtp_session_get_rtcp_fraction), (rtp_session_set_sdes_string), + (rtp_session_get_sdes_string), (obtain_source), + (rtp_session_get_internal_source), (rtp_session_process_sdes), + (rtp_session_send_rtp), (rtp_session_next_timeout), (session_sdes), + (is_rtcp_time): + * gst/rtpmanager/rtpsession.h: + Add signal when new SDES infor has been found for a source. + Create properties for SDES and other info. + Simplify the SDES API. + Add method for getting the internal source object of the session. + * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), + (rtp_source_finalize), (rtp_source_set_property), + (rtp_source_get_property), (rtp_source_set_callbacks), + (rtp_source_get_ssrc), (rtp_source_set_as_csrc), + (rtp_source_is_as_csrc), (rtp_source_is_active), + (rtp_source_is_validated), (rtp_source_is_sender), + (rtp_source_received_bye), (rtp_source_get_bye_reason), + (rtp_source_set_sdes), (rtp_source_set_sdes_string), + (rtp_source_get_sdes), (rtp_source_get_sdes_string), + (rtp_source_get_new_sr), (rtp_source_get_new_rb): + * gst/rtpmanager/rtpsource.h: + Add GObject properties for various things. + Don't leak the bye reason. + +2007-11-22 09:08:27 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: jitterbuffer can buffer an unlimited amount of time and thus has no max_latency ... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_query): + jitterbuffer can buffer an unlimited amount of time and thus has no + max_latency requirements. + +2007-11-02 21:45:38 +0000 Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> + + gst/rtpmanager/gstrtpsession.c: Fix bad function signatures (#492798). + Original commit message from CVS: + Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> + * gst/rtpmanager/gstrtpsession.c: + Fix bad function signatures (#492798). + +2007-10-09 10:01:39 +0000 Laurent Glayal <spglegle@yahoo.fr> + + gst/rtpmanager/gstrtpbin.c: Fix memleak. Fixes #484990. + Original commit message from CVS: + Patch by: Laurent Glayal <spglegle at yahoo dot fr> + * gst/rtpmanager/gstrtpbin.c: (create_stream), + (gst_rtp_bin_class_init): + Fix memleak. Fixes #484990. + +2007-10-08 17:46:45 +0000 Jan Schmidt <thaytan@mad.scientist.com> + + gst/: Fix compiler warnings shown by Forte. + Original commit message from CVS: + * gst/librfb/rfbbuffer.c: (rfb_buffer_new_and_alloc): + * gst/librfb/rfbbuffer.h: + * gst/librfb/rfbdecoder.c: (rfb_socket_get_buffer): + * gst/mpegvideoparse/mpegvideoparse.c: (gst_mpegvideoparse_chain): + * gst/nsf/nes6502.c: (nes6502_execute): + * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps): + * gst/real/gstrealvideodec.c: (open_library): + * gst/real/gstrealvideodec.h: + * gst/rtpmanager/gstrtpsession.c: (create_recv_rtp_sink), + (create_recv_rtcp_sink), (create_send_rtp_sink): + Fix compiler warnings shown by Forte. + +2007-10-08 10:39:35 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Fix caps refcounting for payload maps. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (get_pt_map), + (gst_rtp_bin_clear_pt_map), (gst_rtp_bin_class_init): + Fix caps refcounting for payload maps. + When clearing payload maps, also clear sessions and streams payload + maps. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps), + (gst_rtp_pt_demux_clear_pt_map), (gst_rtp_pt_demux_chain), + (find_pad_for_pt): + Implement clearing the payload map. + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_event_send_rtp_sink): + Forward flush events instead of leaking them. + * gst/rtpmanager/gstrtpssrcdemux.c: + (gst_rtp_ssrc_demux_rtcp_sink_event): + Correctly refcount events before pushing them. + +2007-10-05 17:26:14 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpsession.c: When reconsidering RTCP timeouts, set the next timeout against the last report time inst... + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (rtp_session_next_timeout), + When reconsidering RTCP timeouts, set the next timeout against the last + report time instead of the current clock time so that we don't end up + reconsidering forever. + +2007-10-05 12:07:37 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Only peek at the tail element instead of popping it off, which allows us to grea... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): + Only peek at the tail element instead of popping it off, which allows + us to greatly simplify things when the tail element changes. + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_event_recv_rtp_sink): + * gst/rtpmanager/gstrtpssrcdemux.c: + (gst_rtp_ssrc_demux_sink_event): + Forward FLUSH events instead of leaking them. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), + (calculate_skew), (rtp_jitter_buffer_insert): + * gst/rtpmanager/rtpjitterbuffer.h: + Remove the tail-changed callback in favour of a simple boolean when we + insert a buffer in the queue. + Add method to peek the tail of the buffer. + +2007-10-02 10:27:45 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Remove some old unused variables. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_flush_start), + (gst_rtp_jitter_buffer_flush_stop), + (gst_rtp_jitter_buffer_change_state), (apply_offset), + (gst_rtp_jitter_buffer_loop): + Remove some old unused variables. + Don't add the latency to the skew corrected timestamp, latency is only + used to sync against the clock. + Improve debugging. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), + (rtp_jitter_buffer_reset_skew), (calculate_skew): + * gst/rtpmanager/rtpjitterbuffer.h: + Handle case where server timestamp goes backwards or wildly jumps by + temporarily pausing the skew correction. + Improve debugging. + +2007-09-28 14:51:58 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Fix crasher in dispose. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (free_client): + Fix crasher in dispose. + * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): + Handle cases where input buffers have no timestamps so that no clock + skew can be calculated, in this case interpollate timestamps based on + rtp timestamp and assume a 0 clock skew. + +2007-09-28 11:17:35 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Remove jitter correction code, it's now in the lower level object. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: (apply_latency), + (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query): + Remove jitter correction code, it's now in the lower level object. + Use new -core method for doing a peer query. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), + (calculate_skew), (rtp_jitter_buffer_insert): + * gst/rtpmanager/rtpjitterbuffer.h: + Move jitter correction to the lowlevel jitterbuffer. + Increase the max window size. + When filling the window, already start estimating the skew using a + parabolic weighting factor so that we have a much better startup + behaviour that gets more accurate with the more samples we have. + Increase the default weighting factor for the steady state to get + smoother timestamps. + +2007-09-26 20:08:28 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Fix cleanup crasher. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_dispose), + (gst_rtp_bin_finalize): + Fix cleanup crasher. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), + (calculate_skew): + * gst/rtpmanager/rtpjitterbuffer.h: + Dynamically adjust the skew calculation window so that we calculate it + over a period of around 2 seconds. + +2007-09-20 14:34:57 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Add notification of active SSRCs to various RTP elements. Fixes #478566. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (on_ssrc_active), (create_session), + (gst_rtp_bin_class_init): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpsession.c: (on_ssrc_active), + (gst_rtp_session_class_init), (gst_rtp_session_init), + (gst_rtp_session_event_send_rtp_sink): + * gst/rtpmanager/gstrtpsession.h: + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (on_ssrc_active), (rtp_session_process_rb): + * gst/rtpmanager/rtpsession.h: + Add notification of active SSRCs to various RTP elements. Fixes #478566. + +2007-09-17 02:01:41 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Link to the right pads regardless of which one was created first in the ssrc demuxer. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found): + Link to the right pads regardless of which one was created first in the + ssrc demuxer. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), + (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_send_rtp): + * gst/rtpmanager/rtpsource.c: (calculate_jitter): + Improve debugging. + * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), + (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_finalize), + (gst_rtp_ssrc_demux_sink_event), + (gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain), + (gst_rtp_ssrc_demux_rtcp_chain), + (gst_rtp_ssrc_demux_internal_links): + * gst/rtpmanager/gstrtpssrcdemux.h: + Fix race in creating the RTP and RTCP pads when a new SSRC is detected. + +2007-09-16 19:40:31 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Use lock to protect variable. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_set_property), + (gst_rtp_bin_get_property): + Use lock to protect variable. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain), + (convert_rtptime_to_gsttime), (gst_rtp_jitter_buffer_loop): + Reconstruct GST timestamp from RTP timestamps based on measured clock + skew and sync offset. + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), + (rtp_jitter_buffer_set_tail_changed), + (rtp_jitter_buffer_set_clock_rate), + (rtp_jitter_buffer_get_clock_rate), (calculate_skew), + (rtp_jitter_buffer_insert), (rtp_jitter_buffer_peek): + * gst/rtpmanager/rtpjitterbuffer.h: + Measure clock skew. + Add callback to be notfied when a new packet was inserted at the tail. + * gst/rtpmanager/rtpsource.c: (rtp_source_init), + (calculate_jitter), (rtp_source_send_rtp): + * gst/rtpmanager/rtpsource.h: + Remove clock skew detection, it's move to the jitterbuffer now. + +2007-09-15 18:48:03 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Also set NTP base time on new sessions. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session): + Also set NTP base time on new sessions. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), + (gst_rtp_jitter_buffer_set_property), + (gst_rtp_jitter_buffer_get_property): + Use the right lock to protect our variables. + Fix some comment. + * gst/rtpmanager/gstrtpsession.c: + (gst_rtp_session_getcaps_send_rtp), + (gst_rtp_session_chain_send_rtp), (create_send_rtp_sink): + Implement getcaps on the sender sinkpad so that payloaders can negotiate + the right SSRC. + +2007-09-12 21:23:47 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Various leak fixes. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session), (free_session), + (get_client), (free_client), (gst_rtp_bin_associate), + (free_stream), (gst_rtp_bin_class_init), (gst_rtp_bin_dispose), + (gst_rtp_bin_finalize): + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_rtp_jitter_buffer_finalize): + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_release): + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize), + (gst_rtp_session_set_property), (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_chain_send_rtp): + * gst/rtpmanager/gstrtpssrcdemux.c: + (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_dispose): + * gst/rtpmanager/rtpsession.c: (rtp_session_finalize): + * gst/rtpmanager/rtpsession.h: + Various leak fixes. + +2007-09-12 18:04:32 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Calculate and configure the NTP base time so that we can generate better + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (calc_ntp_ns_base), + (gst_rtp_bin_change_state), (new_payload_found), (create_send_rtp): + Calculate and configure the NTP base time so that we can generate better + NTP times in SR packets. + Set caps on new ghostpad. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_loop): + Clean debug statement. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_init), (gst_rtp_session_set_property), + (gst_rtp_session_get_property), (get_current_ntp_ns_time), + (rtcp_thread), (gst_rtp_session_event_recv_rtp_sink), + (gst_rtp_session_internal_links), (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_event_send_rtp_sink), + (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), + (create_send_rtp_sink): + * gst/rtpmanager/gstrtpsession.h: + Add ntp-ns-base property to convert running_time to NTP time. + Handle NEWSEGMENT events on send and recv RTP pads so that we can + calculate the running time and thus NTP time of the packets. + Simplify getting the current NTP time using the pipeline clock. + Implement internal links functions. + Use the buffer timestamp to calculate the NTP time instead of the clock. + * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), + (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event), + (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain), + (gst_rtp_ssrc_demux_internal_links), + (gst_rtp_ssrc_demux_src_query): + * gst/rtpmanager/gstrtpssrcdemux.h: + Implement internal links function. + Calculate the diff between different streams, this might be used later + to get the inter stream latency. + * gst/rtpmanager/rtpsession.c: (rtp_session_send_rtp): + Simple cleanup. + * gst/rtpmanager/rtpsource.c: (rtp_source_init), + (calculate_jitter), (rtp_source_send_rtp), (rtp_source_get_new_sr): + Make the clock skew window a little bigger. + Apply the clock skew to all buffers, not just one with a new timestamp. + Calculate and debug sender clock drift. + Use extended last timestamp to interpollate for SR reports. + +2007-09-04 15:23:34 +0000 Tim-Philipp Müller <tim@centricular.net> + + gst/rtpmanager/gstrtpsession.c: Make compiler happy: fix compilation with -Wall -Werror (#473562). + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: + Make compiler happy: fix compilation with -Wall -Werror + (#473562). + +2007-09-03 21:19:34 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Updated example pipelines in docs. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin-marshal.list: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_client), + (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (create_stream), + (gst_rtp_bin_init), (caps_changed), (new_ssrc_pad_found), + (create_recv_rtp), (create_recv_rtcp), (create_send_rtp): + * gst/rtpmanager/gstrtpbin.h: + Updated example pipelines in docs. + Handle sync_rtcp buffers from the SSRC demuxer to perform lip-sync. + Set the default latency correctly. + Add some more points where we can get caps. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_loop), + (gst_rtp_jitter_buffer_query), + (gst_rtp_jitter_buffer_set_property), + (gst_rtp_jitter_buffer_get_property): + Add ts-offset property to control timestamping. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_init), (gst_rtp_session_set_property), + (gst_rtp_session_get_property), (get_current_ntp_ns_time), + (rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_change_state), + (gst_rtp_session_send_rtcp), (gst_rtp_session_sync_rtcp), + (gst_rtp_session_cache_caps), (gst_rtp_session_clock_rate), + (gst_rtp_session_sink_setcaps), (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_event_send_rtp_sink), + (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), + (create_recv_rtcp_sink), (create_send_rtp_sink), + (create_send_rtcp_src): + Various cleanups. + Feed rtpsession manager with NTP time based on pipeline clock when + handling RTP packets and RTCP timeouts. + Perform all RTCP with the system clock. + Set caps on RTCP outgoing buffers. + * gst/rtpmanager/gstrtpssrcdemux.c: (find_demux_pad_for_ssrc), + (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init), + (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event), + (gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain), + (gst_rtp_ssrc_demux_rtcp_chain): + * gst/rtpmanager/gstrtpssrcdemux.h: + Also demux RTCP messages. + * gst/rtpmanager/rtpsession.c: (rtp_session_set_callbacks), + (update_arrival_stats), (rtp_session_process_rtp), + (rtp_session_process_rb), (rtp_session_process_sr), + (rtp_session_process_rr), (rtp_session_process_rtcp), + (rtp_session_send_rtp), (rtp_session_send_bye), + (session_start_rtcp), (session_report_blocks), (session_cleanup), + (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Remove the get_time callback, the GStreamer part will feed us with + enough timing information. + Split sync timing and RTCP timing information. + Factor out common RB handling for SR and RR. + Send out SR RTCP packets for lip-sync. + Move SR and RR packet info generation to the source. + * gst/rtpmanager/rtpsource.c: (rtp_source_init), + (rtp_source_update_caps), (get_clock_rate), (calculate_jitter), + (rtp_source_process_rtp), (rtp_source_send_rtp), + (rtp_source_process_sr), (rtp_source_process_rb), + (rtp_source_get_new_sr), (rtp_source_get_new_rb), + (rtp_source_get_last_sr): + * gst/rtpmanager/rtpsource.h: + * gst/rtpmanager/rtpstats.h: + Use caps on incomming buffers to get timing information when they are + there. + Calculate clock scew of the receiver compared to the sender and adjust + the rtp timestamps. + Calculate the round trip in sources. + Do SR and RR calculations in the source. + +2007-08-31 15:26:14 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Use extended timestamp to release buffers from the jitterbuffer so that we can h... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_flush_stop), + (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop): + Use extended timestamp to release buffers from the jitterbuffer so that + we can handle the rtp wraparound correctly. + +2007-08-29 16:56:27 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Improve Comments. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_loop): + Improve Comments. + * gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread), + (gst_rtp_session_change_state), (gst_rtp_session_parse_caps), + (gst_rtp_session_clock_rate), (gst_rtp_session_sink_setcaps), + (gst_rtp_session_event_send_rtp_sink), (create_recv_rtp_sink), + (create_send_rtp_sink): + Also parse the sink caps for clock-rate instead of only relying on the + result of the signal. + * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): + Make sure we fetch the clock rate for payloads we are sending out so + that we can use it for SR reports. + +2007-08-29 01:22:43 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.*: Distribute synchronisation parameters to the session manager so that it can generate ... + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread), + (gst_rtp_session_change_state), + (gst_rtp_session_event_send_rtp_sink): + * gst/rtpmanager/gstrtpsession.h: + Distribute synchronisation parameters to the session manager so that it + can generate correct SR packets for lip-sync. + * gst/rtpmanager/rtpsession.c: (rtp_session_set_base_time), + (rtp_session_set_timestamp_sync), (session_start_rtcp): + * gst/rtpmanager/rtpsession.h: + Add methods for setting sync parameters. + Set correct RTP time in SR packets using the sync params. + * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): + * gst/rtpmanager/rtpsource.h: + Record last RTP <-> GST timestamp so that we can use them to convert NTP + to RTP timestamps in SR packets. + +2007-08-28 20:30:16 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Add some more advanced example pipelines. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_clear_pt_map): + Add some more advanced example pipelines. + * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), + (stop_rtcp_thread), (gst_rtp_session_send_rtcp): + Add some debug and FIXME. + Release LOCK when performing session cleanup. + * gst/rtpmanager/rtpsession.c: (session_report_blocks): + Add some debug. + * gst/rtpmanager/rtpsource.c: (calculate_jitter), + (rtp_source_send_rtp): + Make sure we always send RTP packets with the session SSRC. + +2007-08-27 21:17:21 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: When synchronizing buffers, take peer latency into account. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop), + (gst_rtp_jitter_buffer_query): + When synchronizing buffers, take peer latency into account. + Don't try to add our latency to invalid peer max latency values. + +2007-08-23 21:39:58 +0000 Tim-Philipp Müller <tim@centricular.net> + + Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE registers a GType that's different than the GstRTPF... + Original commit message from CVS: + * docs/plugins/gst-plugins-bad-plugins-sections.txt: + * docs/plugins/gst-plugins-bad-plugins.hierarchy: + * docs/plugins/gst-plugins-bad-plugins.interfaces: + * docs/plugins/gst-plugins-bad-plugins.signals: + * gst/rtpmanager/gstrtpbin.c: + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpclient.h: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/rtpmanager/gstrtpjitterbuffer.h: + * gst/rtpmanager/gstrtpptdemux.c: + * gst/rtpmanager/gstrtpptdemux.h: + * gst/rtpmanager/gstrtpsession.c: + * gst/rtpmanager/gstrtpsession.h: + * gst/rtpmanager/gstrtpssrcdemux.c: + * gst/rtpmanager/gstrtpssrcdemux.h: + Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE + registers a GType that's different than the GstRTPFoo types that + farsight registers (luckily GType names are case sensitive). Should + finally fix #430664. + +2007-08-21 17:18:29 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: When drop-on-latency is set but we have no latency configured, just push the buf... + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_set_property): + When drop-on-latency is set but we have no latency configured, just push + the buffer as fast as possible. + Fix typo in comment. + +2007-08-21 16:04:47 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/rtpjitterbuffer.*: Fix undefined overflow prone ts_diff handling. + Original commit message from CVS: + * gst/rtpmanager/rtpjitterbuffer.c: + (rtp_jitter_buffer_get_ts_diff): + * gst/rtpmanager/rtpjitterbuffer.h: + Fix undefined overflow prone ts_diff handling. + +2007-08-16 11:40:16 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Fix EOS handling. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_loop): + Fix EOS handling. + Convert some DEBUG into WARNINGs. + Pause task when flushing. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (rtcp_thread), (gst_rtp_session_event_recv_rtcp_sink): + Use system clock for RTCP session management timeouts. + * gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision), + (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout): + Release the session lock when emiting signals. + +2007-08-13 06:16:40 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + gst/rtpmanager/rtpjitterbuffer.c: Include stdlib. + Original commit message from CVS: + * gst/rtpmanager/rtpjitterbuffer.c: + Include stdlib. + +2007-08-10 17:16:53 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Remove complicated async queue and replace with more simple jitterbuffer code while also fixing some... + Original commit message from CVS: + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/async_jitter_queue.c: + * gst/rtpmanager/async_jitter_queue.h: + * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_class_init), + (rtp_jitter_buffer_init), (rtp_jitter_buffer_finalize), + (rtp_jitter_buffer_new), (compare_seqnum), + (rtp_jitter_buffer_insert), (rtp_jitter_buffer_pop), + (rtp_jitter_buffer_flush), (rtp_jitter_buffer_num_packets), + (rtp_jitter_buffer_get_ts_diff): + * gst/rtpmanager/rtpjitterbuffer.h: + Remove complicated async queue and replace with more simple jitterbuffer + code while also fixing some bugs. + * gst/rtpmanager/gstrtpbin-marshal.list: + * gst/rtpmanager/gstrtpbin.c: (on_new_ssrc), (on_ssrc_collision), + (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout), + (create_session), (gst_rtp_bin_class_init), (create_recv_rtp), + (create_send_rtp): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_dispose), + (gst_jitter_buffer_sink_parse_caps), + (gst_rtp_jitter_buffer_flush_start), + (gst_rtp_jitter_buffer_flush_stop), + (gst_rtp_jitter_buffer_change_state), + (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_set_property): + * gst/rtpmanager/gstrtpsession.c: (on_new_ssrc), + (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), + (on_bye_timeout), (on_timeout), (gst_rtp_session_class_init), + (gst_rtp_session_init): + * gst/rtpmanager/gstrtpsession.h: + * gst/rtpmanager/rtpsession.c: (on_bye_ssrc), (session_cleanup): + Use new jitterbuffer code. + Expose some new signals in preparation for handling EOS. + +2007-07-18 07:35:32 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + Add stdlib include (free, atoi, exit). + Original commit message from CVS: + * examples/app/appsrc_ex.c: + * examples/switch/switcher.c: + * ext/neon/gstneonhttpsrc.c: + * ext/timidity/gstwildmidi.c: + * ext/x264/gstx264enc.c: + * gst/mve/mveaudioenc.c: (mve_compress_audio): + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + * gst/spectrum/demo-audiotest.c: + * gst/spectrum/demo-osssrc.c: + * sys/dvb/gstdvbsrc.c: + Add stdlib include (free, atoi, exit). + +2007-06-22 20:23:18 +0000 Jens Granseuer <jensgr@gmx.net> + + gst/: Build fixes for gcc-2.9x (no mid-block variable declarations etc.). + Original commit message from CVS: + Patch by: Jens Granseuer <jensgr at gmx net> + * gst/equalizer/gstiirequalizer.c: + * gst/equalizer/gstiirequalizer10bands.c: + * gst/equalizer/gstiirequalizer3bands.c: + * gst/equalizer/gstiirequalizernbands.c: + * gst/rtpmanager/async_jitter_queue.c: + (async_jitter_queue_push_sorted): + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_chain): + * gst/switch/gstswitch.c: (gst_switch_chain): + Build fixes for gcc-2.9x (no mid-block variable declarations etc.). + Fixes #450185. + +2007-05-28 16:37:47 +0000 Wim Taymans <wim.taymans@gmail.com> + + Rename elements to avoid conflict with farsight elements with the same name. Fixes #430664. + Original commit message from CVS: + * docs/plugins/gst-plugins-bad-plugins-docs.sgml: + * docs/plugins/gst-plugins-bad-plugins-sections.txt: + * gst/rtpmanager/gstrtpbin.c: (create_session), (create_stream), + (gst_rtp_bin_class_init), (create_recv_rtp), (create_recv_rtcp), + (create_send_rtp), (create_rtcp), (gst_rtp_bin_request_new_pad): + * gst/rtpmanager/gstrtpclient.c: (create_stream), + (gst_rtp_client_request_new_pad): + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_clear_pt_map), (gst_rtp_jitter_buffer_loop): + * gst/rtpmanager/gstrtpmanager.c: (plugin_init): + * gst/rtpmanager/gstrtpptdemux.c: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_request_new_pad): + * gst/rtpmanager/gstrtpssrcdemux.c: + Rename elements to avoid conflict with farsight elements with the same + name. Fixes #430664. + +2007-05-23 13:08:52 +0000 Wim Taymans <wim.taymans@gmail.com> + + Document stuff. + Original commit message from CVS: + * docs/plugins/Makefile.am: + * docs/plugins/gst-plugins-bad-plugins-docs.sgml: + * docs/plugins/gst-plugins-bad-plugins-sections.txt: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_rtp_jitter_buffer_clear_pt_map), (gst_rtp_jitter_buffer_loop): + * gst/rtpmanager/gstrtpjitterbuffer.h: + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init), + (gst_rtp_pt_demux_clear_pt_map): + * gst/rtpmanager/gstrtpptdemux.h: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (rtcp_thread), (gst_rtp_session_clear_pt_map): + * gst/rtpmanager/gstrtpsession.h: + * gst/rtpmanager/gstrtpssrcdemux.c: + (gst_rtp_ssrc_demux_class_init): + Document stuff. + Add clear-pt-map action signal where needed. + +2007-05-15 13:29:53 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpptdemux.c: We always use fixed caps. + Original commit message from CVS: + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): + We always use fixed caps. + +2007-05-15 03:45:45 +0000 David Schleef <ds@schleef.org> + + gst/rtpmanager/gstrtpbin.c: g_hash_table_remove_all() only exists in 2.12. Work around. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: + g_hash_table_remove_all() only exists in 2.12. Work around. + +2007-05-14 15:28:36 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/async_jitter_queue.c: Fix leak when flushing. + Original commit message from CVS: + * gst/rtpmanager/async_jitter_queue.c: + (async_jitter_queue_set_flushing_unlocked): + Fix leak when flushing. + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_clear_pt_map), + (gst_rtp_bin_class_init): + * gst/rtpmanager/gstrtpbin.h: + Add clear-pt-map signal. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_flush_stop), + (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_loop): + Init clock-rate to -1 to mark unknow clock rate. + Fix flushing. + +2007-05-10 14:02:07 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + gst/qtdemux/qtdemux.c (gst_qtdemux_move_stream, gst_qtdemux_loop_state_header, gst_qtdemux_activate_segment, gst_qtde... + Original commit message from CVS: + * gst/qtdemux/qtdemux.c (gst_qtdemux_move_stream, + gst_qtdemux_loop_state_header, gst_qtdemux_activate_segment, + gst_qtdemux_prepare_current_sample, gst_qtdemux_combine_flows, + gst_qtdemux_loop_state_movie, gst_qtdemux_loop, + qtdemux_parse_segments, qtdemux_parse_trak): + * gst/rtpmanager/rtpsession.c (rtp_session_get_bandwidth, + rtp_session_get_rtcp_bandwidth, rtp_session_get_cname, + rtp_session_get_name, rtp_session_get_email, rtp_session_get_phone, + rtp_session_get_location, rtp_session_get_tool, + rtp_session_process_bye, session_report_blocks): + * gst/rtpmanager/rtpsource.c (rtp_source_process_rtp, + rtp_source_send_rtp, rtp_source_process_sr, rtp_source_process_rb): + More format arg fixing (spotted by Ali Sabil <ali.sabil@gmail.com>). + * gst/switch/Makefile.am: + Add require libraries(spotted by Ali Sabil <ali.sabil@gmail.com>). + +2007-05-10 12:38:49 +0000 Stefan Kost <ensonic@users.sourceforge.net> + + * gst/rtpmanager/async_jitter_queue.c: + gst/rtpmanager/async_jitter_queue.c (tail_buffer_duration, async_jitter_queue_ref, async_jitter_queue_ref_unlocked, a... + Original commit message from CVS: + * gst/rtpmanager/async_jitter_queue.c (tail_buffer_duration, + async_jitter_queue_ref, async_jitter_queue_ref_unlocked, + async_jitter_queue_set_low_threshold, + async_jitter_queue_length_ts_units_unlocked, + async_jitter_queue_unref_and_unlock, async_jitter_queue_unref, + async_jitter_queue_lock, async_jitter_queue_push, + async_jitter_queue_push_unlocked, async_jitter_queue_push_sorted, + async_jitter_queue_pop_intern_unlocked, async_jitter_queue_pop, + async_jitter_queue_pop_unlocked, async_jitter_queue_length_unlocked, + async_jitter_queue_set_flushing_unlocked, + async_jitter_queue_unset_flushing_unlocked): + Format arg fix (spotted by Ali Sabil <ali.sabil@gmail.com>) + +2007-05-09 11:24:22 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Pass queries upstream. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_query): + Pass queries upstream. + +2007-05-04 12:32:27 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Add some debug info. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_query): + Add some debug info. + * gst/rtpmanager/rtpsession.c: (rtp_session_init), + (rtp_session_send_rtp): + Store real user name in the session. + +2007-04-30 13:41:30 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/async_jitter_queue.c: Fix the case where the buffer underruns and does not block. + Original commit message from CVS: + * gst/rtpmanager/async_jitter_queue.c: (signal_waiting_threads), + (async_jitter_queue_pop_intern_unlocked): + Fix the case where the buffer underruns and does not block. + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_base_init), + (create_recv_rtcp), (create_send_rtp), (create_rtcp), + (gst_rtp_bin_request_new_pad): + Rename RTCP send pad, like in the session manager. + Allow getting an RTCP pad for receiving even if we don't receive RTP. + fix handling of send_rtp_src pad. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): + When no pt map could be found, fall back to the sinkpad caps. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), + (gst_rtp_session_send_rtp), (create_recv_rtp_sink), + (create_recv_rtcp_sink), (create_send_rtp_sink), + (create_send_rtcp_src): + Fix pad names. + * gst/rtpmanager/rtpsession.c: (source_push_rtp), + (rtp_session_create_source), (rtp_session_process_sr), + (rtp_session_send_rtp), (session_start_rtcp): + * gst/rtpmanager/rtpsession.h: + Unlock session when performing a callback. + Add callbacks for the internal session object. + Fix sending of RTP packets. + first attempt at adding NTP times in the SR packets. + Small debug and doc improvements. + * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): + Update stats for SR reports. + +2007-04-29 14:46:27 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Remove debug. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_send_rtcp): + Remove debug. + * gst/rtpmanager/rtpsession.c: (rtp_session_process_sr), + (rtp_session_process_sdes), (calculate_rtcp_interval), + (rtp_session_next_timeout), (session_report_blocks): + * gst/rtpmanager/rtpstats.c: (rtp_stats_calculate_rtcp_interval): + Improve debugging + Fix interval for BYE/RTCP packets. + +2007-04-27 15:09:12 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Move reconsideration code to the rtpsession object. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), + (gst_rtp_session_send_rtcp), (gst_rtp_session_reconsider): + Move reconsideration code to the rtpsession object. + Simplify timout handling and add reconsideration. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (rtp_session_init), (rtp_session_finalize), (on_bye_ssrc), + (on_bye_timeout), (on_timeout), (rtp_session_set_callbacks), + (obtain_source), (rtp_session_create_source), + (update_arrival_stats), (rtp_session_process_rtp), + (rtp_session_process_sr), (rtp_session_process_rr), + (rtp_session_process_bye), (rtp_session_process_rtcp), + (calculate_rtcp_interval), (rtp_session_send_bye), + (rtp_session_next_timeout), (session_start_rtcp), + (session_report_blocks), (session_cleanup), (session_sdes), + (session_bye), (is_rtcp_time), (rtp_session_on_timeout): + * gst/rtpmanager/rtpsession.h: + Handle timeout of inactive sources and senders. + Implement BYE scheduling. + * gst/rtpmanager/rtpsource.c: (calculate_jitter), + (rtp_source_process_sr), (rtp_source_get_last_sr), + (rtp_source_get_last_rb): + * gst/rtpmanager/rtpsource.h: + Add members to check for timeouts. + * gst/rtpmanager/rtpstats.c: (rtp_stats_init_defaults), + (rtp_stats_calculate_rtcp_interval), (rtp_stats_add_rtcp_jitter), + (rtp_stats_calculate_bye_interval): + * gst/rtpmanager/rtpstats.h: + Use RFC algorithm for calculating the reporting interval. + +2007-04-25 16:38:03 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpsession.c: Implement forward and reverse reconsideration. + Original commit message from CVS: + * gst/rtpmanager/gstrtpsession.c: (rtcp_thread): + Implement forward and reverse reconsideration. + * gst/rtpmanager/rtpsession.c: (rtp_session_get_num_sources), + (rtp_session_get_num_active_sources), (rtp_session_process_sr), + (session_report_blocks): + * gst/rtpmanager/rtpsession.h: + Small cleanups. + +2007-04-25 15:48:46 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Make default jitterbuffer latency configurable. + Original commit message from CVS: + reviewed by: <delete if not using a buddy> + * gst/rtpmanager/gstrtpbin.c: (create_stream), + (gst_rtp_bin_class_init), (gst_rtp_bin_set_property), + (gst_rtp_bin_get_property): + * gst/rtpmanager/gstrtpbin.h: + Make default jitterbuffer latency configurable. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_loop), + (gst_rtp_jitter_buffer_set_property), + (gst_rtp_jitter_buffer_get_property): + Debuging cleanups. + +2007-04-25 13:19:36 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Report NO_PREROLL when going to PAUSED. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_change_state): + Report NO_PREROLL when going to PAUSED. + * gst/rtpmanager/gstrtpsession.c: (rtcp_thread): + Don't send RTCP right before we are shutting down. + * gst/rtpmanager/rtpsession.c: (rtp_session_process_rtp), + (rtp_session_process_sr), (session_report_blocks), + (rtp_session_perform_reporting): + Improve report blocks. + * gst/rtpmanager/rtpsource.c: (calculate_jitter), (init_seq), + (rtp_source_process_rtp), (rtp_source_process_sr), + (rtp_source_process_rb), (rtp_source_get_last_sr), + (rtp_source_get_last_rb): + * gst/rtpmanager/rtpsource.h: + * gst/rtpmanager/rtpstats.h: + Cleanups, add methods to access stats. + +2007-04-25 08:30:48 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: fix for pad name change + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_rtcp): + fix for pad name change + * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), + (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate): + Fix for renamed methods. + * gst/rtpmanager/rtpsession.c: (rtp_session_init), + (rtp_session_finalize), (rtp_session_set_cname), + (rtp_session_get_cname), (rtp_session_set_name), + (rtp_session_get_name), (rtp_session_set_email), + (rtp_session_get_email), (rtp_session_set_phone), + (rtp_session_get_phone), (rtp_session_set_location), + (rtp_session_get_location), (rtp_session_set_tool), + (rtp_session_get_tool), (rtp_session_set_note), + (rtp_session_get_note), (source_push_rtp), (obtain_source), + (rtp_session_add_source), (rtp_session_get_source_by_ssrc), + (rtp_session_create_source), (rtp_session_process_rtp), + (rtp_session_process_sr), (rtp_session_process_sdes), + (rtp_session_process_rtcp), (rtp_session_send_rtp), + (rtp_session_get_reporting_interval), (session_report_blocks), + (session_sdes), (rtp_session_perform_reporting): + * gst/rtpmanager/rtpsession.h: + Prepare for implementing SSRC sampling. + Create SSRC for the session. + Add methods to set the SDES entries. + fix accounting of senders/receivers. + Implement SR/RR/SDES RTCP reporting. + * gst/rtpmanager/rtpsource.c: (rtp_source_init), (init_seq), + (rtp_source_process_rtp), (rtp_source_process_sr): + * gst/rtpmanager/rtpsource.h: + Implement extended sequence number. + * gst/rtpmanager/rtpstats.c: (rtp_stats_calculate_rtcp_interval): + * gst/rtpmanager/rtpstats.h: + Rename some fields. + +2007-04-21 19:21:49 +0000 Tim-Philipp Müller <tim@centricular.net> + + gst/rtpmanager/rtpsession.c: Don't use GLib-2.10 API, we only require GLib 2.8 at the moment. + Original commit message from CVS: + * gst/rtpmanager/rtpsession.c: (rtp_session_finalize): + Don't use GLib-2.10 API, we only require GLib 2.8 at the moment. + +2007-04-18 18:58:53 +0000 Wim Taymans <wim.taymans@gmail.com> + + configure.ac: Disable rtpmanager for now because it depends on CVS -base. + Original commit message from CVS: + * configure.ac: + Disable rtpmanager for now because it depends on CVS -base. + * gst/rtpmanager/Makefile.am: + Added new files for session manager. + * gst/rtpmanager/gstrtpjitterbuffer.h: + * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), + (create_stream), (pt_map_requested), (new_ssrc_pad_found): + Some cleanups. + the session manager can now also request a pt-map. + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init), + (gst_rtp_session_class_init), (gst_rtp_session_init), + (gst_rtp_session_finalize), (rtcp_thread), (start_rtcp_thread), + (stop_rtcp_thread), (gst_rtp_session_change_state), + (gst_rtp_session_process_rtp), (gst_rtp_session_send_rtp), + (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate), + (gst_rtp_session_get_time), (gst_rtp_session_event_recv_rtp_sink), + (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_event_recv_rtcp_sink), + (gst_rtp_session_chain_recv_rtcp), + (gst_rtp_session_event_send_rtp_sink), + (gst_rtp_session_chain_send_rtp), (create_send_rtcp_src), + (gst_rtp_session_request_new_pad): + * gst/rtpmanager/gstrtpsession.h: + We can ask for pt-map now too when the session manager needs it. + Hook up to the new session manager, implement the needed callbacks for + pushing data, getting clock time and requesting clock-rates. + Rename rtcp_src to send_rtcp_src to make it clear that this RTCP is to + be send to clients. + Add code to start and stop the thread that will schedule RTCP through + the session manager. + * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), + (rtp_session_init), (rtp_session_finalize), + (rtp_session_set_property), (rtp_session_get_property), + (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), + (on_bye_ssrc), (rtp_session_new), (rtp_session_set_callbacks), + (rtp_session_set_bandwidth), (rtp_session_get_bandwidth), + (rtp_session_set_rtcp_bandwidth), (rtp_session_get_rtcp_bandwidth), + (source_push_rtp), (source_clock_rate), (check_collision), + (obtain_source), (rtp_session_add_source), + (rtp_session_get_num_sources), + (rtp_session_get_num_active_sources), + (rtp_session_get_source_by_ssrc), + (rtp_session_get_source_by_cname), (rtp_session_create_source), + (update_arrival_stats), (rtp_session_process_rtp), + (rtp_session_process_sr), (rtp_session_process_rr), + (rtp_session_process_sdes), (rtp_session_process_bye), + (rtp_session_process_app), (rtp_session_process_rtcp), + (rtp_session_send_rtp), (rtp_session_get_rtcp_interval), + (rtp_session_produce_rtcp): + * gst/rtpmanager/rtpsession.h: + The advanced beginnings of the main session manager that handles the + participant database of RTPSources, SSRC probation, SSRC collisions, + parse RTCP to update source stats. etc.. + * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), + (rtp_source_init), (rtp_source_finalize), (rtp_source_new), + (rtp_source_set_callbacks), (rtp_source_set_as_csrc), + (rtp_source_set_rtp_from), (rtp_source_set_rtcp_from), + (push_packet), (get_clock_rate), (calculate_jitter), + (rtp_source_process_rtp), (rtp_source_process_bye), + (rtp_source_send_rtp), (rtp_source_process_sr), + (rtp_source_process_rb): + * gst/rtpmanager/rtpsource.h: + Object that encapsulates an SSRC and its state in the database. + Calculates the jitter and transit times of data packets. + * gst/rtpmanager/rtpstats.c: (rtp_stats_init_defaults), + (rtp_stats_calculate_rtcp_interval), (rtp_stats_add_rtcp_jitter): + * gst/rtpmanager/rtpstats.h: + Various stats regarding the session and sources. + Used to calculate the RTCP interval. + +2007-04-13 09:20:55 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Protect lists and structures with locks. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), + (gst_rtp_bin_init), (gst_rtp_bin_finalize), (new_ssrc_pad_found), + (create_recv_rtp), (gst_rtp_bin_request_new_pad): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpclient.c: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_init), (gst_rtp_session_finalize), + (gst_rtp_session_event_recv_rtp_sink), + (gst_rtp_session_event_recv_rtcp_sink), + (gst_rtp_session_chain_recv_rtcp), + (gst_rtp_session_request_new_pad): + Protect lists and structures with locks. + Return FLOW_OK from RTCP messages for now. + +2007-04-12 08:18:32 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Emit pt map requests and cache results. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), + (create_stream), (gst_rtp_bin_class_init), (pt_map_requested): + Emit pt map requests and cache results. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_jitter_buffer_sink_parse_caps), + (gst_jitter_buffer_sink_setcaps), + (gst_rtp_jitter_buffer_get_clock_rate), + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): + * gst/rtpmanager/gstrtpjitterbuffer.h: + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): + Emit request-pt-map signals. + +2007-04-11 13:49:54 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin-marshal.list: Some more custom marshallers. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin-marshal.list: + Some more custom marshallers. + * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), + (clock_rate_request), (create_stream), (gst_rtp_bin_class_init), + (pt_map_requested), (new_ssrc_pad_found), (create_recv_rtp): + * gst/rtpmanager/gstrtpbin.h: + Prepare for caching pt maps. + Connect to signals to collect pt maps. + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_class_init), + (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_loop): + * gst/rtpmanager/gstrtpjitterbuffer.h: + Add request_clock_rate signal. + Use scale insteat of scale_int because the later does not deal with + negative numbers. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init), + (gst_rtp_pt_demux_chain): + * gst/rtpmanager/gstrtpptdemux.h: + Implement request-pt-map signal. + +2007-04-10 09:14:07 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Added custom marshallers for signals. + Original commit message from CVS: + * gst/rtpmanager/.cvsignore: + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/gstrtpbin-marshal.list: + Added custom marshallers for signals. + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): + * gst/rtpmanager/gstrtpbin.h: + Prepare for emiting pt map signals. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init): + * gst/rtpmanager/gstrtpssrcdemux.c: + (gst_rtp_ssrc_demux_class_init): + Fix signals. + +2007-04-06 12:28:29 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Provide a clock. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init), + (gst_rtp_bin_init), (gst_rtp_bin_provide_clock): + * gst/rtpmanager/gstrtpbin.h: + Provide a clock. + +2007-04-06 12:07:30 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.c: Fix pad template name parsing. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (create_rtcp): + Fix pad template name parsing. + +2007-04-05 16:10:24 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpjitterbuffer.c: Add some debug and comments. + Original commit message from CVS: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_chain), + (gst_rtp_jitter_buffer_loop): + Add some debug and comments. + Fix double unref() in error cases. + +2007-04-05 13:54:23 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/gstrtpbin.*: Add debugging category. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (find_session_by_id), + (create_session), (find_stream_by_ssrc), (create_stream), + (gst_rtp_bin_class_init), (new_payload_found), + (new_ssrc_pad_found), (create_recv_rtp), (create_recv_rtcp), + (create_send_rtp), (create_rtcp): + * gst/rtpmanager/gstrtpbin.h: + Add debugging category. + Added RTPStream to manage stream per SSRC, each with its own + jitterbuffer and ptdemux. + Added SSRCDemux. + Connect to various SSRC and PT signals and create ghostpads, link stuff. + * gst/rtpmanager/gstrtpmanager.c: (plugin_init): + Added rtpbin to elements. + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): + Fix caps and forward GstFlowReturn + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), + (gst_rtp_session_event_recv_rtp_sink), + (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_event_recv_rtcp_sink), + (gst_rtp_session_chain_recv_rtcp), + (gst_rtp_session_event_send_rtp_sink), + (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), + (create_recv_rtcp_sink), (create_send_rtp_sink), (create_rtcp_src), + (gst_rtp_session_request_new_pad): + Add debug category. + Add event handling + * gst/rtpmanager/gstrtpssrcdemux.c: (find_rtp_pad_for_ssrc), + (create_rtp_pad_for_ssrc), (gst_rtp_ssrc_demux_class_init), + (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_chain), + (gst_rtp_ssrc_demux_change_state): + * gst/rtpmanager/gstrtpssrcdemux.h: + Add debug category. + Add new-pt-pad signal. + +2007-04-04 10:23:15 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Added simple SSRC demuxer. + Original commit message from CVS: + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/gstrtpmanager.c: (plugin_init): + * gst/rtpmanager/gstrtpssrcdemux.c: (find_pad_for_ssrc), + (create_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init), + (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_init), + (gst_rtp_ssrc_demux_finalize), (gst_rtp_ssrc_demux_sink_event), + (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_src_event), + (gst_rtp_ssrc_demux_change_state): + * gst/rtpmanager/gstrtpssrcdemux.h: + Added simple SSRC demuxer. + +2007-04-03 11:35:39 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/: Some more ghostpad magic. + Original commit message from CVS: + * gst/rtpmanager/gstrtpbin.c: (find_session_by_id), + (create_session), (gst_rtp_bin_base_init), (create_recv_rtp), + (create_recv_rtcp), (create_send_rtp), (create_rtcp), + (gst_rtp_bin_request_new_pad): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpclient.c: + Some more ghostpad magic. + +2007-04-03 09:51:13 +0000 Wim Taymans <wim.taymans@gmail.com> + + gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly. + Original commit message from CVS: + * gst/rtpmanager/Makefile.am: + Add .h file so it can be disted properly. + +2007-04-03 09:13:17 +0000 Wim Taymans <wim.taymans@gmail.com> + + Add RTP session management elements. Still in progress. + Original commit message from CVS: + * configure.ac: + * gst/rtpmanager/Makefile.am: + * gst/rtpmanager/async_jitter_queue.c: (async_jitter_queue_new), + (signal_waiting_threads), (async_jitter_queue_ref), + (async_jitter_queue_ref_unlocked), + (async_jitter_queue_set_low_threshold), + (async_jitter_queue_set_high_threshold), + (async_jitter_queue_set_max_queue_length), + (async_jitter_queue_get_g_queue), (calculate_ts_diff), + (async_jitter_queue_length_ts_units_unlocked), + (async_jitter_queue_unref_and_unlock), (async_jitter_queue_unref), + (async_jitter_queue_lock), (async_jitter_queue_unlock), + (async_jitter_queue_push), (async_jitter_queue_push_unlocked), + (async_jitter_queue_push_sorted), + (async_jitter_queue_push_sorted_unlocked), + (async_jitter_queue_insert_after_unlocked), + (async_jitter_queue_pop_intern_unlocked), (async_jitter_queue_pop), + (async_jitter_queue_pop_unlocked), (async_jitter_queue_length), + (async_jitter_queue_length_unlocked), + (async_jitter_queue_set_flushing_unlocked), + (async_jitter_queue_unset_flushing_unlocked), + (async_jitter_queue_set_blocking_unlocked): + * gst/rtpmanager/async_jitter_queue.h: + * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_base_init), + (gst_rtp_bin_class_init), (gst_rtp_bin_init), + (gst_rtp_bin_finalize), (gst_rtp_bin_set_property), + (gst_rtp_bin_get_property), (gst_rtp_bin_change_state), + (gst_rtp_bin_request_new_pad), (gst_rtp_bin_release_pad): + * gst/rtpmanager/gstrtpbin.h: + * gst/rtpmanager/gstrtpclient.c: (new_pad), (create_stream), + (free_stream), (find_stream_by_ssrc), (gst_rtp_client_base_init), + (gst_rtp_client_class_init), (gst_rtp_client_init), + (gst_rtp_client_finalize), (gst_rtp_client_set_property), + (gst_rtp_client_get_property), (gst_rtp_client_change_state), + (gst_rtp_client_request_new_pad), (gst_rtp_client_release_pad): + * gst/rtpmanager/gstrtpclient.h: + * gst/rtpmanager/gstrtpjitterbuffer.c: + (gst_rtp_jitter_buffer_base_init), + (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_init), + (gst_rtp_jitter_buffer_dispose), (gst_rtp_jitter_buffer_getcaps), + (gst_jitter_buffer_sink_setcaps), (free_func), + (gst_rtp_jitter_buffer_flush_start), + (gst_rtp_jitter_buffer_flush_stop), + (gst_rtp_jitter_buffer_src_activate_push), + (gst_rtp_jitter_buffer_change_state), (priv_compare_rtp_seq_lt), + (compare_rtp_buffers_seq_num), (gst_rtp_jitter_buffer_sink_event), + (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), + (gst_rtp_jitter_buffer_query), + (gst_rtp_jitter_buffer_set_property), + (gst_rtp_jitter_buffer_get_property): + * gst/rtpmanager/gstrtpjitterbuffer.h: + * gst/rtpmanager/gstrtpmanager.c: (plugin_init): + * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_base_init), + (gst_rtp_pt_demux_class_init), (gst_rtp_pt_demux_init), + (gst_rtp_pt_demux_finalize), (gst_rtp_pt_demux_chain), + (gst_rtp_pt_demux_getcaps), (find_pad_for_pt), + (gst_rtp_pt_demux_setup), (gst_rtp_pt_demux_release), + (gst_rtp_pt_demux_change_state): + * gst/rtpmanager/gstrtpptdemux.h: + * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init), + (gst_rtp_session_class_init), (gst_rtp_session_init), + (gst_rtp_session_finalize), (gst_rtp_session_set_property), + (gst_rtp_session_get_property), (gst_rtp_session_change_state), + (gst_rtp_session_chain_recv_rtp), + (gst_rtp_session_chain_recv_rtcp), + (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), + (create_recv_rtcp_sink), (create_send_rtp_sink), (create_rtcp_src), + (gst_rtp_session_request_new_pad), (gst_rtp_session_release_pad): + * gst/rtpmanager/gstrtpsession.h: + Add RTP session management elements. Still in progress. + +2009-08-10 13:30:23 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: push mode; cater for chunk padding + +2009-08-04 19:45:43 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: only use stream's pad after having checked it exists + +2009-08-04 13:38:09 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: sprinkle some more GST_DEBUG_FUNCPTR + +2009-08-04 13:36:36 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: post error message if no pads to push EOS event on + +2009-08-04 11:39:59 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: fix typo in warning message + +2009-08-04 11:39:39 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: fix some buffer ref handling + +2009-08-04 11:37:16 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: do not exceed maximum number of supported streams + +2009-08-04 11:35:18 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: prevent double unref; gst_avi_demux_parse_avih already unrefs + +2009-08-04 11:32:27 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: verify size of INFO LIST to satisfy subsequent expectations + +2009-07-29 15:25:38 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: check video stream framerate against avi header frame duration + The former might be bogus in silly cases, and the latter seems to + carry more weight. + +2009-08-04 12:16:13 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: streamline stream duration calculation + +2009-07-03 14:04:13 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/raw1394/gstdv1394src.c: + dv1394src: Fix element for live usage... which has been broken for 2 years :( + This is a live source, therefore: + * Use GST_FORMAT_TIME as the default format + * set_timestamp to True + * properly implement query latency. + This allows expected live usage like : playbin2 uri=dv:// + +2009-08-09 09:43:41 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/raw1394/gstdv1394src.c: + raw1394: Remove unneeded variable + +2009-08-09 09:43:29 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/matroska/matroska-demux.c: + matroska: remove dead assignments + +2009-08-09 09:43:00 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpac3depay.c: + * gst/rtp/gstrtpceltdepay.c: + * gst/rtp/gstrtpj2kdepay.c: + * gst/rtp/gstrtpj2kpay.c: + rtp: Remove dead assignments and resulting unneeded variables. + +2009-08-10 09:53:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * configure.ac: + * ext/wavpack/Makefile.am: + * ext/wavpack/gstwavpackenc.c: + * ext/wavpack/gstwavpackenc.h: + * ext/wavpack/md5.c: + * ext/wavpack/md5.h: + wavpack: Use GLib GChecksum instead of our own MD5 implementation + This requires GLib 2.16 but that version is already required by core anyway. + +2009-08-08 00:47:48 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-mux.c: + * gst/matroska/matroska-mux.h: + matroska: Adds support to muxing/demuxing WMA + Adds support for muxing wma audio family and fixes + demuxing of wma family in matroskademux. matroskademux + was broken because it missed codec_data. + +2009-08-06 20:15:17 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> + + * gst/matroska/matroska-mux.c: + matroskamux: adds support for wmv family + Adds support to WMV1, WMV2, WMV3 and other family formats that + are signaled by the 'format' field in the caps (i.e. WVC1). + Partially fixes #576378 + +2009-08-09 14:19:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * sys/v4l2/gstv4l2object.c: + v4l2src: if max == min width/height put an int in the probed caps, not an int range + Fixes #560033. + +2009-08-09 13:58:07 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * sys/osxaudio/gstosxaudiosrc.c: + osxaudiosrc: if max_channels == min_channels, use an int instead of an int range in the caps + +2009-08-09 12:52:17 +0200 LoneStar <lone@auvtech.com> + + * gst/id3demux/id3v2frames.c: + id3demux: Try GST_*_TAG_ENCODING and locale encoding if tags are not UTF8 + Fixes bug #499242. + +2009-08-09 01:29:50 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + configure: bump core/base requirements to latest release + To avoid confusion. + +2009-08-09 01:27:01 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * tests/check/elements/flvmux.c: + check: fix flvmux unit test on big endian machines + flvmux only accepts raw audio in little endian, but audiotestsrc + produces audio in the native endianness, which makes linking + between audiotestsrc and flvmux fail on big endian machines. Add + an audioconvert element in between the two to fix this. + +2009-02-15 18:49:44 +0000 Vincent Penquerc'h <ogg.k.ogg.k@googlemail.com> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.h: + * gst/matroska/matroska-mux.c: + matroska: add kate subtitle support to matroska muxer and demuxer + See #525743. + +2009-08-07 16:51:45 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/id3demux/id3v2.3.0.html: + id3demux: add ID3 v2.3 spec as well + +2009-08-07 16:42:39 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/id3demux/id3v2frames.c: + id3demux: sizes in ID3 v2.3 are unlikely to be sync-safe integers + In ID3 v2.3 compressed frames will have a 4-byte data length indicator + after the frame header to indicate the size of the decompressed data. + This integer is unlikely to be a sync-safe integer for v2.3 tags, + only in v2.4 it's sync-safe. + +2009-08-07 16:36:55 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/id3demux/id3tags.c: + id3demux: fix typo in debug message + +2009-08-07 16:02:23 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/id3demux/id3tags.c: + * gst/id3demux/id3tags.h: + * gst/id3demux/id3v2frames.c: + * tests/check/elements/id3demux.c: + * tests/files/Makefile.am: + * tests/files/id3-588148-unsynced-v24.tag: + id3demux: fix parsing of unsync'ed ID3 v2.4 tags and frames + Reversing the unsynchronisation seems to work slightly differently + for ID3 v2.3 tags and v2.4 tags: v2.3 tags don't have syncsafe frame + sizes in the frame header, so the unsynchronisation is applied to + the whole frame data including all the frame headers. v2.4 frames + have sync-safe sizes, however, so the unsynchronisation only needs + to be applied to the actual frame data, and it seems that's what's + being done as well. So we need to undo the unsynchronisation on a + per-frame basis for v2.4 tags for things to work properly. + Fixes extraction of coverart/images from APIC frames in ID3 v2.4 + tags (#588148). + Add unit test for this as well. + +2009-08-06 21:24:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Use SOUP_METHOD_GET instead of "GET" string + Fixes bug #590970. + +2009-08-06 13:00:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + pulsesrc: set the default slave method to skew + Set the default slave method to the much better skew algorithm. This is the + default in the new base class but we override this here as well for the + upcomming release. + +2009-08-06 10:20:34 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + pulsesrc: fix compilation with --disable-gst-debug + +2009-08-03 18:59:32 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph264pay.h: + rtph264pay: use array instead of queue + +2009-08-03 18:55:19 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph264pay.h: + rtph264pay: push NALs only after SPS/PPS + parse complete (bytestream) buffer for SPS/PPS before pushing NALs. + Fixes #564501. + +2009-08-04 14:44:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * sys/v4l2/v4l2_calls.h: + v4l2: Directly use GST_PTR_FORMAT for printing caps with the LOG_CAPS macro + +2009-08-04 11:17:17 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpqdmdepay.c: + rtpqdm2depay: Fix debug statement. + +2009-08-04 09:32:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * sys/v4l2/gstv4l2sink.c: + * sys/v4l2/v4l2_calls.h: + v4l2: Remove some OMAP specific hacks + They require special build flags and are not useful in general. + +2009-08-04 09:22:29 +0200 Rob Clark <rob@ti.com> + + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2bufferpool.h: + * sys/v4l2/gstv4l2sink.c: + * sys/v4l2/v4l2src_calls.c: + v4l2sink: change where buffers get dequeued + It seems to cause strange occasional high latencies (almost 200ms) when dequeuing buffers from _buffer_alloc(). It is simpler and seems to work much better to dqbuf from the same thread that is queuing the next buffer. + +2009-08-04 09:14:20 +0200 Rob Clark <rob@ti.com> + + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2.c: + * sys/v4l2/gstv4l2bufferpool.c: + * sys/v4l2/gstv4l2bufferpool.h: + * sys/v4l2/gstv4l2object.c: + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2sink.c: + * sys/v4l2/gstv4l2sink.h: + * sys/v4l2/gstv4l2src.c: + * sys/v4l2/gstv4l2src.h: + * sys/v4l2/v4l2_calls.c: + * sys/v4l2/v4l2_calls.h: + * sys/v4l2/v4l2src_calls.c: + * sys/v4l2/v4l2src_calls.h: + v4l2: Add v4l2sink element + This also does the following changes: + (1) pull the bufferpool code out into gstv4l2bufferpool.c, and make a + bit more generic so it can be used both for v4l2src and v4l2sink + (2) move some of the device probing/configuration/caps stuff into + gstv4l2object.c so it does not have to be duplicated between + v4l2src and v4l2sink + Fixes bug #590280. + +2009-08-04 07:07:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * tests/check/Makefile.am: + flvmux: Enable unit test now that it passes + +2009-08-03 21:21:39 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpqdmdepay.c: + * gst/rtp/gstrtpsv3vdepay.c: + rtpqdm2depay,rtpsv3vdepay: Add debugging category. + +2009-08-03 21:22:48 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpqdmdepay.c: + * gst/rtp/gstrtpqdmdepay.h: + rtpqdm2depay: Handle gaps in incoming packets. + Whenever we see a gap, we flush the temporary packets (but not the adapter). If we + had some data temporarily stored it will be outputted (the sound will sound a bit + garbled... but that's how it sounds on MacOSX :) + +2009-08-03 19:01:07 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpqdmdepay.c: + rtpqdmdepay: Fix CRC calculation and remove commented code. + +2009-08-02 13:42:12 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/Makefile.am: + * gst/rtp/gstrtp.c: + * gst/rtp/gstrtpqdmdepay.c: + * gst/rtp/gstrtpqdmdepay.h: + rtp: New QDM2 rtp depayloader. + Reverse-engineered by comparing: + * A rtp hinted file provided by DarwinStreamingServer + * The output procued by DSS for that same file + Also used various streaming sources available on the internet to fine-tune + the code. + The header/codec_data extraction methods are from FFMpeg (LGPL). + +2009-08-03 21:24:44 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpsv3vdepay.c: + rtpsv3vdepay: Properly fill codec_data and cleanup code a bite more. + +2009-08-03 19:02:17 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpsv3vdepay.c: + * gst/rtp/gstrtpsv3vdepay.h: + rtpsv3vdepay: Only output buffers once we're configured. + +2009-08-03 19:02:00 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpsv3vdepay.c: + rtpsv3vdepay: Add more encoding-name variants + +2009-08-03 20:08:33 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * tests/check/elements/flvmux.c: + flvmux: Fix unit test to correctly handle request pads + Request pads are removed by the element instance in PAUSED->READY + so we need to re-request pads for every run and link them again. + Last fix for bug #590447. + +2009-08-03 20:08:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/flv/gstflvmux.c: + flvmux: Fix writing of the index for < 128 buffers + Partially fixes bug #590447. + +2009-08-03 20:07:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/flv/gstflvmux.c: + flvmux: Fix resetting of the element + Reset the have_video/have_audio flags and make sure to + properly release the request pads. + Partially fixes bug #590447. + +2009-08-03 18:13:46 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: don't add non-utf8 chars to structures + +2009-08-03 18:02:31 +0200 Luc Deschenaux <luc.deschenaux at freesurf.ch> + + * gst/rtp/gstrtpjpegdepay.c: + * gst/rtp/gstrtpjpegdepay.h: + jpegdepay: use attributes for extra properties + Use some of the SDP attributes when they are present to specify the output + dimension and framerate. This allows us to receive jpeg frames larger than + 2040 width/height. + Fixes #564437 + +2009-08-03 18:01:27 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/README: + RTP docs: update with attributes in caps + +2009-08-03 17:21:44 +0200 Luc Deschenaux <luc.deschenaux at freesurf.ch> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: put all SDP attributes on caps + Put the SDP attributes on the caps too so that they can be used by + depayloaders. + See #564437 + +2009-08-03 13:32:12 +0200 Jonathan Tellier <jonathan.tellier at gmail.com> + + * ext/pulse/pulsesrc.c: + pulsesrc: initialize the probe with the server + When creating a new probe, pass the server instead of the device string. + fixes #590401 + +2009-08-02 11:44:03 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/udp/gstmultiudpsink.c: + multiudpsink: don't do things with side-effects inside g_return_val_if_fail() + Someone might compile this code with -DG_DISABLE_ASSERT some day. + +2009-08-01 21:39:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: don't do logic within g_assert() statements + Otherwise that code will just be expanded to nothing when compiled + -DG_DISABLE_ASSERT (PS: why is mainloop_start() called in the init + function and not when changing state to READY?) + +2009-08-01 17:07:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: send newsegment event when operating push-based and unframed + For some reason flac doesn't call our metadata callback when we operate + in push mode with unframed input, but that's where we set up the + newsegment event (since that's where we'd get the duration from the + stream info header), so we didn't send a newsegment event at all in this + case. Hack around this by storing a generic newsegment event for now + which will be used if we don't replace it with a better one that + includes the duration. + +2009-08-01 16:48:36 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: small cleanups + Remove some callback indirections which are no longer needed because + there's only one decoder object type now. Also remove unused variable. + +2009-08-01 15:22:49 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: use gst_adapter_copy() to avoid unnecessary buffer merges + gst_adapter_peek() will merge buffers as needed, which we can avoid + here since we're doing a memcpy anyway and then flush the copied + data from the adapter right away. + +2009-08-01 00:00:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: repair some broken indenting + +2009-08-01 12:19:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/flvmux.c: + checks: add basic unit test for flvmux, but disable it for now + Basic unit test for flvmux. Fails miserably, hence disabled for now. + +2009-07-31 23:28:12 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/flvdemux.c: + * tests/files/Makefile.am: + * tests/files/pcm16sine.flv: + check: add basic unit test for flvdemux + In particular, test re-use of flvdemux in both pull and push mode + (see #583030). + +2009-07-31 20:25:17 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/flv/gstflvmux.c: + flvmux: fix invalid write caused by using sizeof("string") as length + sizeof("foo") includes the string's NUL-terminator in the size returned, + but we're writing strings here with an explicit size at the beginning + and no NUL-terminator. In most cases using sizeof("foo") as length in + memcpy is not harmful, but it is where the string goes right at the + end of our buffer to write, since we don't allocate space for that + NUL terminator. + +2009-07-27 18:44:45 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/soup/gstsouphttpsrc.c: + soup: Use "GET" instead of SOUP_METHOD_GET. Fixes build with libsoup-2.7.* + This is due to a quality API change in libsoup 2.7. SOUP_METHOD_* are now + integers and not strings... they could have changed the names. + +2009-07-30 17:57:53 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/jpeg/gstjpegdec.c: + * ext/jpeg/gstjpegenc.c: + jpeg: use longer macro names to not clash with some stupid windows defines + libjpeg headers pull some windows system inlcudes (on windows) that contain a + define for DEFAULT_QUALITY. + +2009-07-29 14:31:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: Fix last commit and improve readability + +2009-07-24 19:04:31 +0400 Руслан Ижбулатов <lrn1986@gmail.com> + + * gst/avi/gstavidemux.c: + Fixed the fix for TIME->DEFAULT conversion. + Fixes bug #578052 again. + +2009-07-29 13:38:03 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/gstrtpsv3vdepay.c: + rtpsv3depay: Fix width/height calculation, bring up to marginal rank. + Based on documentation found on http://wiki.multimedia.cx/ + +2009-07-29 12:13:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + * ext/pulse/pulsesrc.c: + pulse: conditionally compile newer stuff + configured_sink/source_usec in the timing_info is only since 0.9.11 so + conditionally compile this information. + fixes #590038 + +2009-07-28 18:29:07 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + * ext/pulse/pulsesrc.h: + pulsesrc: cleanups + Keep track of the paused state of the source and leave the read function when + paused. + don't wait for a latency update when the delay is not yet known but simply + return 0 instead of blocking. + Keep track of the corked state of the stream. + Fix the state changes. + +2009-07-28 16:11:18 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + pulsesrc: set maxlength always to -1 + +2009-07-28 15:53:57 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + * ext/pulse/pulsesrc.h: + pulsesrc; cleanups, report real latency + Add some more debug info + Avoid some type casts + Report the real latency to the application. + +2009-07-28 16:11:36 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * ext/jpeg/gstjpegdec.c: + jpegdec: when scanning for 0xff marker ends, ensure desired result + Otherwise, any non 0xff byte at end of data would be mistaken for + a tag byte, and in case of a frame_len 0 tag subsequently lead to an + infinite loop. + +2009-07-28 00:30:43 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> + + * gst/avi/gstavimux.c: + avimux: adds support to wma + +2009-07-28 00:07:15 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> + + * gst/avi/gstavimux.c: + avimux: adds support to wmv + +2009-07-27 21:34:22 -0300 Thiago Santos <thiagoss@embedded.ufcg.edu.br> + + * gst/qtdemux/qtdemux.c: + qtdemux: Downgrade warning message to debug + +2009-07-27 11:51:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: avoid using ivalid stream indexes + when we get an invalid stream index from pulse because we were just starting, + avoid using it for getting and setting the volume. + Fixes #589365 + +2009-07-24 19:38:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + * gst/effectv/gstdice.c: + * gst/effectv/gstquark.c: + * gst/effectv/gstradioac.c: + * gst/effectv/gstripple.c: + * gst/effectv/gstshagadelic.c: + * gst/effectv/gststreak.c: + * gst/effectv/gstvertigo.c: + * gst/effectv/gstwarp.c: + effectv: Don't allow caps changes for some effectv filters + These filters use information from previous frames to + generate the current frame and a caps change will make + the effect start from the beginning again. + +2009-07-24 19:37:09 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstwarp.c: + * gst/effectv/gstwarp.h: + warptv: Make the sine table global instead of having it in every instance + +2009-07-24 10:47:44 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/jpeg/gstjpegenc.c: + jpeg: make encoder work with libjpeg v7 + We have to specify do_fancy_downsampling = FALSE in the encoder with did not exist before. + +2009-07-24 00:42:33 +0300 Stefan Kost <ensonic@users.sf.net> + + * common: + Automatic update of common submodule + From fedaaee to 94f95e3 + +2009-07-23 12:06:27 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/flac/gstflacdec.c: + flacdec: Implement SEEKING query + Fixes bug #589423. + +2009-07-22 11:16:06 +0100 Colin Guthrie <cguthrie@mandriva.org> + + * ext/pulse/pulsesink.c: + pulsesink: Fix a couple error messages that mentioned incorrect function names. + Fixes #589459. + +2009-07-23 11:50:16 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/flv/gstflvdemux.c: + * gst/flv/gstflvparse.c: + flvdemux: Implement SEEKING query + Also add some more query types to the answer of the query type function. + Fixes bug #589424. + +2009-07-21 19:46:55 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacdec.c: + * ext/flac/gstflacdec.h: + flacdec: fix intermittent FLAC__STREAM_DECODER_ABORTED errors when seeking + When seeking in a local flac file (ie. operating pull-based), the decoder + would often just error out after the loop function sees a DECODER_ABORTED + status. This, however, is the read callback's way of telling our loop + function that pull_range failed and streaming should stop, in this case + because of the flush-start event that the seek handler pushed upstream + from the seeking thread. Handle this slightly better by storing the last + flow return from pull_range, so the loop function can evaluate it properly + when it encounters a DECODER_ABORTED and take the right action. + Fixes #578612. + +2009-07-21 10:07:00 +0300 Stefan Kost <ensonic@users.sf.net> + + * gst/interleave/interleave.c: + interleave: fix indenting and upgrade two debugs to warnings. + Fix newlines in variable decls. Change two debugs to become warnings as they + indicate that things will not work. + +2009-07-21 10:04:36 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/jpeg/gstjpeg.c: + * ext/jpeg/gstjpegdec.c: + * ext/jpeg/gstjpegenc.c: + * ext/jpeg/gstjpegenc.h: + jpeg: code cleanups for encoder + Remove some disabled code in encoder. Try #if 0'ed code and add comments about + why it is disabled. Move idct-method enum to jpeg.c and use in both encoder and + decoder. Add idct-method property to encoder. + +2009-07-21 07:50:46 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + matroskademux: Answer SEEKING queries in the original format + +2009-07-21 01:12:44 +0200 Josep Torra <n770galaxy@gmail.com> + + * gst/udp/gstudpnetutils.c: + udputils: initialize struct content with 0. + Fixes some random crashes. + +2009-07-20 19:09:19 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: set some values to their defaults + Set the minreq and maxlength buffer attributes to -1 to let puleseaudio select a + sensible value. + +2009-07-20 19:04:09 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: don't wait for posted message + We can't wait for the ENTER/LEAVE messages to be be posted because the base + class sometimes calls the start method with the object lock, which would block + the message posting. + Instead, just assume that the message will be posted soon and continue. We'll + have to fix this in the base class. + +2009-07-20 18:11:33 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: use relative seeks + Use relative seeks because I was told that absolute seeks don't work. + +2009-07-20 16:52:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + matroskademux: Implement SEEKING query + +2009-07-20 08:07:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + cairorender: Add support for ARGB/BGRA input + Note that videotestsrc outputs 100% transparent video + which will result in white output from cairorender. + +2009-07-17 13:22:57 +0100 Elaine Xiong <Elaine.Xiong@Sun.COM> + + * sys/v4l2/gstv4l2object.h: + * sys/v4l2/gstv4l2src.c: + * sys/v4l2/v4l2_calls.c: + * sys/v4l2/v4l2src_calls.c: + v4l2: Fix v4l2src on OpenSolaris + The v4l2 driver for USB webcams on OpenSolaris does not support select() + calls. Detect when select() fails, and skip polling the device afterward, + which restores the pre 0.10.14 behaviour on OpenSolaris. + Signed-off-by: Jan Schmidt <thaytan@noraisin.net> + +2009-07-17 11:22:06 +0100 Jan Schmidt <thaytan@noraisin.net> + + * tests/check/elements/.gitignore: + * tests/examples/v4l2/.gitignore: + gitignore: Ignore some new binaries + +2009-07-17 13:49:21 +0200 Sebastian Dröge <sebastian.droege@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-cairo.xml: + * ext/cairo/gstcairorender.c: + cairorender: Add to the documentation + +2009-07-17 13:42:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + cairorender: Return not-negotiated if we have no caps + +2009-07-17 13:41:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + * ext/cairo/gstcairorender.h: + cairorender: Fix caps and colorspace handling + +2009-07-17 13:30:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + cairorender: Use correct mimetypes for PDF and SVG + +2009-07-17 13:24:28 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + cairorender: Remove pull mode, it only adds complexity but not advantages + +2009-07-16 21:55:31 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + cairorender: Fix caps negotiation and cairo surface creation + +2009-07-16 21:42:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + cairorender: Correctly set srccaps + +2009-07-16 21:31:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + * ext/cairo/gstcairorender.h: + cairorender: Move instance/class struct definitions to the header + +2009-07-16 21:30:00 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/cairo/gstcairorender.c: + * ext/cairo/gstcairorender.h: + cairorender: Add Lutz' copyright to the file header + +2009-07-16 21:27:45 +0200 Lutz Mueller <lutz@topfrose.de> + + * ext/cairo/Makefile.am: + * ext/cairo/gstcairo.c: + * ext/cairo/gstcairorender.c: + * ext/cairo/gstcairorender.h: + cairo: Add cairo-based PDF/PS/SVG encoder element + Fixes bug #331420. + +2009-07-16 20:44:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/flac/gstflacenc.c: + * ext/flac/gstflacenc.h: + flacenc: Optionally write a PADDING block + The size of the PADDING block is specified by a new + "padding" property. + Fixes bug #588483. + +2009-07-16 19:35:44 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Only assume seekability if the server provides Content-Length + Previously seekability way always assumed until the first seek actually + failed. Now we assume that all servers are not seekable unless they provide + a Content-Length header. If a seek fails after that we continue to + assume no seekability. Fixes bug #585576. + +2009-07-16 15:14:43 +0200 Arnout Vandecappelle <arnout@mind.be> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: don't try to authenticate if no username/password is set. + +2009-07-16 17:10:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstwarp.c: + effectv: Chain up finalize to the parent class in warptv + Fixes a memory leak. + +2009-07-16 12:55:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * tests/check/Makefile.am: + * tests/check/pipelines/effectv.c: + effectv: Add unit test for all effectv elements + +2009-07-16 12:17:32 +0200 Sebastian Dröge <sebastian.droege@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-alaw.xml: + * docs/plugins/inspect/plugin-audiofx.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-mulaw.xml: + * docs/plugins/inspect/plugin-videomixer.xml: + effectv: Add new effectv elements to the docs + +2009-07-15 14:37:19 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/Makefile.am: + * gst/effectv/gsteffectv.c: + * gst/effectv/gstripple.c: + * gst/effectv/gstripple.h: + effectv: Add rippletv element + This produces a water ripple effect on the video input, + based on motion or a rain drop algorithm. + Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>. + Fixes bug #588695. + +2009-07-12 15:42:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/Makefile.am: + * gst/effectv/gsteffectv.c: + * gst/effectv/gststreak.c: + * gst/effectv/gststreak.h: + effectv: Add streaktv effect filter element + This combines the StreakTV and BaltanTV filters from the + effectv project. + Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>. + Fixes bug #588368. + +2009-07-12 12:31:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + * gst/effectv/gstedge.c: + * gst/effectv/gstop.c: + * gst/effectv/gstquark.c: + * gst/effectv/gstradioac.c: + * gst/effectv/gstrev.c: + * gst/effectv/gstshagadelic.c: + * gst/effectv/gstvertigo.c: + effectv: Fix processing on big endian architectures + +2009-07-12 11:52:04 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/Makefile.am: + * gst/effectv/gsteffectv.c: + * gst/effectv/gstradioac.c: + * gst/effectv/gstradioac.h: + effectv: Add radioactv effect filter + This filter adds a radiation-like motion blur effect + to the video stream. + Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>. + Fixes bug #588359. + +2009-07-12 11:26:57 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstop.c: + * gst/effectv/gstop.h: + effectv: Make the optv threshold property an uint + +2009-07-12 10:39:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/Makefile.am: + * gst/effectv/gsteffectv.c: + * gst/effectv/gstop.c: + * gst/effectv/gstop.h: + effect: Add optv effect filter from the effectv project + This filter binarizes input frames and combines them with various + optical pattern. + Kindly relicensed to LGPL2+ by Kentaro Fukuchi <fukuchi@megaui.net>. + Fixes bug #588349. + +2009-07-03 05:11:26 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: Emit stream-status leave message + Fixes #587695 + +2009-07-03 05:06:45 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * ext/pulse/pulsesink.c: + * ext/pulse/pulsesink.h: + pulsesink: Emit stream-status enter message + Emit stream-status messages for the pulse thread. + Don't use our own GCond for signaling but simply use the pulse mainloop + mechanisms for synchronisation. + See #587695 + +2009-07-14 18:15:59 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: debug the latency update values + +2009-07-14 16:12:55 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * configure.ac: + * ext/pulse/pulsesink.c: + * ext/pulse/pulseutil.c: + pulsesink: add 24bit sample formats + Add check for pulseaudio 0.9.15 and enable 24bits samples in that case. + +2009-07-13 12:23:37 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * common: + Automatic update of common submodule + From 5845b63 to fedaaee + +2009-07-13 17:53:25 +0200 Marc Leeman <marc.leeman at gmail.com> + + * gst/rtp/gstrtpmpvpay.c: + mpvpay: Rework the timestamping + Rework the timestamping in the mpv payloader so that the timestamps are more + accurate. + Fixes #587680 + +2009-07-03 08:47:12 +0200 Filippo Argiolas <filippo.argiolas@gmail.com> + + * configure.ac: + * tests/examples/Makefile.am: + * tests/examples/v4l2/Makefile.am: + * tests/examples/v4l2/probe.c: + v4l2src: add a simple test case for device probing + +2009-07-03 08:38:43 +0200 Filippo Argiolas <filippo.argiolas@gmail.com> + + * configure.ac: + * sys/v4l2/Makefile.am: + * sys/v4l2/gstv4l2object.c: + v4l2src: optional support for device probing with gudev + Enumerate v4l2 devices using gudev if available. + Fixes bug #583640. + +2009-07-10 19:54:25 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/videomixer.c: + videomixer: Random cleanup + +2009-07-10 19:54:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/videomixer.c: + videomixer: Send queries to the master pad by default instead of all pads + +2009-07-10 19:34:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/Makefile.am: + * gst/videomixer/blend_rgb.c: + * gst/videomixer/videomixer.c: + videomixer: Add RGB, BGR, xRGB, RGBx, xBGR, BGRx support + +2009-07-10 17:43:07 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/videomixer.c: + videomixer: Clean up debugging a bit + +2009-07-10 17:25:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/videomixer.c: + videomixer: Remove some redundant checks and error out immediately if not negotiated + Also stop leaking the output buffer in some error cases. + +2009-07-10 17:23:03 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_ayuv.c: + * gst/videomixer/blend_bgra.c: + * gst/videomixer/blend_i420.c: + * gst/videomixer/videomixer.c: + * gst/videomixer/videomixer.h: + videomixer: Remove the calculate_frame_size() function and use libgstvideo instead + +2009-06-30 15:13:44 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/videomixer/videomixer.c: + videomixer: Remove unused link/unlink pad methods + +2009-06-30 12:43:04 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/videomixer/blend_i420.c: + videomixer: I420 mode: Add fast path for 0.0 and 1.0 alpha + If the source alpha is 0.0, we take nothing. + If the source alpha is 1.0, we overwrite everything. + +2009-06-30 12:40:02 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/videomixer/blend_i420.c: + videomixer: I420 blending : Fix main algorithm. + When blending a source layer with an alpha of 'a' on top of another + destination layer we take the sum of: + * 'a' percent of the source layer + * (100 - 'a') percent of the destination layer (the remainder) + +2009-06-30 12:39:19 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/videomixer/blend_i420.c: + * gst/videomixer/videomixer.c: + * gst/videomixer/videomixer.h: + * gst/videomixer/videomixerpad.h: + videomixer: Make debugging category global to all the code. + +2009-06-29 19:23:41 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/videomixer/videomixer.c: + videomixer: improve readability of debugging statements. + +2009-07-08 13:38:53 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: do not leak timeout message + +2009-07-09 07:14:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avi: Don't forward NEWSEGMENT events from upstream + New ones are generated later and simply forwarding them can + result in NEWSEGMENT events of different format going downstream. + Fixes bug #587983. + +2009-07-08 18:19:45 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_ayuv.c: + * gst/videomixer/blend_i420.c: + videomixer: Make checker pattern lookup table constant + +2009-07-08 18:17:48 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/Makefile.am: + * gst/videomixer/blend_bgra.c: + * gst/videomixer/videomixer.c: + videomixer: Add support for ARGB + And clean up the caps parsing. + +2009-07-08 15:17:41 +0200 Benjamin Gaignard <benjamin@gaignard.net> + + * gst/udp/gstudpnetutils.c: + udp: Initialize pointer to NULL + Otherwise we're calling free() with some random + memory address in error cases. + Fixes bug #587982. + +2009-07-07 16:35:24 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: sprinkle some more const + +2009-07-07 15:57:55 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: perform some more (careful) data buffering + Once buffering has started (with an mdat atom), continue buffering + until moov atom is reached, which handles cases with multiple + mdat atoms. Also keep adapter/offset better in sync with upstream + and fix some debug statements. Fixes #587426. + +2009-07-06 10:40:31 +0200 Philip Jgenstedt <philipj@opera.com> + + * gst/avi/gstavidemux.c: + avidemux: Replace deprecated GST_DISABLE_DEBUG with correct macro. Fixes #587826 + +2009-07-01 13:07:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: error out instead of dividing by 0 + Error out if timescale is 0. + +2009-07-01 09:32:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + Revert "qtdemux: Make sure we don't blacklist streams by wrongly comparing their" + This reverts commit 5503a59a5779b67451d8a271000181790ee76bc7. + Reverting this since it causes regressions with a lot of sample files + I have, all of which worked fine with the last -good release (#586891). + +2009-06-30 15:54:47 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: comment out unused structure + +2009-06-30 13:12:09 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: more size checks, and use g_try_new0() instead of g_new0() + Whenever we alloc something based on a user-supplied size, we should + really use g_try_new(), otherwise we can easily be made to abort by + passing a ridiculously large number to us for allocing. Fixes + problems with some fuzzed files. + +2009-06-29 18:58:33 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: guard against bogus atom sizes and short reads + Check the possibly 64-bit atom size more carefully before casting it + to an int and passing it to gst_pad_pull_range(), otherwise we might + end up pulling 0 bytes, getting an empty buffer as requested and + dereferencing not available data whilst thinking we actually asked + for and got 0x1000000000000 bytes. Similar fix for push mode operation + where neededbytes ends up being 0 bytes, which makes us assert. Fixes + crash with broken or fuzzed file (NB #122378). + +2009-06-29 16:52:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: use 0x prefix when logging numbers in hex + +2009-07-01 08:40:40 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/flac/gstflacdec.c: + flacdec: Don't send empty string tags + +2009-06-30 21:35:37 +0400 LRN <lrn1986 at gmail.com> + + * gst/udp/gstmultiudpsink.c: + Don't use sendmsg()-dependent code on Windows + Fixes #585842 + +2009-06-30 15:59:20 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/law/alaw-decode.c: + * gst/law/alaw-encode.c: + * gst/law/alaw.c: + * gst/law/mulaw-decode.c: + * gst/law/mulaw-encode.c: + * gst/law/mulaw.c: + law: fix caps and negotiation + Fix the caps to include the depth (instead of width twice) in the caps of + audio/x-raw-int. + Fix negotiation to not only copy the rate/channels of the first structure. + +2009-06-30 14:48:09 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/pulse/pulsesink.c: + pulsesink: include "1.0=100%" in volume and change upper limit + Upper volume limmit was 1000. That appear unneceasrily high. It would also cause + sever distortion if accidentialy used. Now its 10 (~ +15db) which is also in + sync with volume and playbin2. + +2009-06-29 15:39:43 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesrc.c: + pulse: some more trivial cleanups + +2009-06-29 15:38:49 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsemixer.c: + pulse: trivial cleanups + +2009-06-29 15:20:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: clear ringbuffer when asked to + Since we map the ringbuffer to the pulseaudio internal ringbuffer, flush the + pulseaudio buffer when we are asked to clear the ringbuffer. + This avoids some leftover audio after a seek. + +2009-06-26 15:00:14 +0100 Jan Schmidt <thaytan@noraisin.net> + + * autogen.sh: + autogen.sh: Actually do the 'echo -n' -> printf change. + +2009-06-26 14:40:14 +0100 Jan Schmidt <thaytan@noraisin.net> + + * autogen.sh: + autogen.sh: Use printf instead of 'echo -n'. Check for automake-1.1[01] + Check for more automake command variants. Use printf instead of 'echo -n' + for portability + +2009-06-26 13:42:09 +0100 Jan Schmidt <thaytan@noraisin.net> + + * common: + Automatic update of common submodule + From f810030 to 5845b63 + +2009-06-26 13:19:04 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: don't process track_num/track_count tags with a 0 value + Number/count values of 0 mean they're not set. Don't put those in the + taglist. + +2009-06-25 18:51:12 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * sys/waveform/gstwaveformsink.c: + waveformsink: use 'guint8' instead of 'byte' to fix compilation with MSVC8 + We need a cast here for pointer arithmetic to work correctly, but some + MSVC versions don't seem to like 'byte', so use guint8 here. Hopefully + fixes #585361. + +2009-06-25 19:39:37 +0300 Stefan Kost <ensonic@users.sf.net> + + * sys/v4l2/v4l2_calls.c: + v4l2src: set structs to zero before using them in ioctls + This fixes valgrind warnings. + +2009-06-25 13:23:40 +0200 Julien Moutte <julien@fluendo.com> + + * gst/qtdemux/qtdemux.c: + qtdemux: Make sure we don't blacklist streams by wrongly comparing their duration with entire clip duration. + +2009-06-25 13:18:14 +0200 Krzysztof Błaszkowski <kb at sysmikro.com.pl> + + * gst/rtsp/gstrtpdec.c: + rtpdec: fix some buffer leaks + +2009-06-25 08:11:09 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/flv/gstflvparse.c: + flvparse: Add missing break in switch/case. + +2009-06-25 08:10:38 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/flv/gstflvdemux.c: + flvdemux: Remove unused variable, hint branch likeliness, add comments. + +2009-06-25 08:09:57 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/avi/gstavidemux.c: + avidemux: Removed unused variable + +2009-06-25 07:41:07 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/qtdemux/qtdemux.c: + qtdemux: Remove dead assignments and unused variables. + Also add branch likeliness macros. + +2009-06-25 07:40:26 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/qtdemux/qtdemux.c: + qtdemux: Fix uninitialized variables. Fixes build on macosx + +2009-06-24 17:43:25 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: free memory in finalize + finalize is called only once. no need to clear pointers there. dispose is for + unreffing. + +2009-06-24 15:14:14 +0100 Jan Schmidt <jan.schmidt@sun.com> + + * common: + Automatic update of common submodule + From 6ab11d1 to f810030 + +2009-06-08 14:46:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: short-circuit gst_avi_demux_src_convert() when parsing the index + Don't call gst_avi_demux_src_convert() for each single index entry. Not + only do we already have the pointer to the stream context, we also know + the formats we want to convert from and to already, so we may just as + well use optimised conversion routines that bypass some of the checks + and lookups made in gst_avi_demux_src_convert(). + +2009-06-17 16:39:36 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/qtdemux/qtdemux.c: + qtdemux: Another round of G_*LIKELY micro-optimisations. + +2009-06-17 16:20:25 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/qtdemux/qtdemux.c: + qtdemux: Take last sample duration for dummy segment calculation. + This fixes the cases where files without EDL wouldn't output their + last buffer. + +2009-06-24 12:36:31 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/avi/gstavidemux.c: + avidemux: Sprinkle branch likeliness macros over the code. + +2009-06-23 16:54:32 +0200 Edward Hervey <bilboed@bilboed.com> + + * ext/raw1394/gstdv1394src.c: + * ext/raw1394/gsthdv1394src.c: + raw1394: sprinkle branch likeliness macros accross the code. + +2009-06-14 10:36:17 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/qtdemux/qtdemux.c: + qtdemux: Add GST_MEMDUMP statements for unknown atoms. + This is to help developers track down and implement unhandled atoms faster. + +2009-06-23 17:51:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Remove the interlaced field from the output caps if deinterlacing is enabled + +2009-06-23 17:48:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/tvtime/greedyh.c: + deinterlace: Copy the correct line from correct place in the history + +2009-06-23 16:35:36 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: use same protocols after redirect + After a redirect we want to use the same protocols that we were using for the + current url. + +2009-06-23 15:35:37 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: don't leak cover art + +2009-06-23 14:10:10 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/udp/gstudpnetutils.c: + udp: fix compiler warning about EAI_ADDRFAMILY getting redefined in some cases + Include the header from where we include all the system headers with the + socket stuff before we try to define EAI_ADDRFAMILY ourselves, otherwise + we define it ourselves and then get a compiler warning if a system header + defines it as well without guarding against it being defined already. + +2009-06-23 14:39:56 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/matroska/matroska-ids.h: + matroska: and the new headers too + +2009-06-23 14:32:43 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + matroske: fix compiler error + change gpointer to guint8 * for codec_state and codec_priv as some + functions operate on those types and it avoids breaking strict-aliasing + rules. + +2009-06-23 12:42:33 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + matroskademux: avoid leaking buffers + Don't leak buffers when resyncing to a keyframe. + Avoid leaking buffers when exiting the loop on error conditions. + Add some more debug info. + Fixes #585911 + +2009-06-22 15:56:58 +0300 Stefan Kost <ensonic@users.sf.net> + + * sys/v4l2/gstv4l2src.c: + v4l2: open/close the device in READY + This allows to query the device in READY. Before one need to switch it to PAUSED + and that also starts streaming. + +2009-06-20 15:41:44 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + * gst/qtdemux/qtdemux_dump.c: + qtdemux: use GST_MEMDUMP + +2009-06-19 00:16:41 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/apetag/Makefile.am: + * gst/apetag/gstapedemux.c: + apedemux: add container-format tag + Use pbutils here because the string is translated. + +2009-06-19 00:15:51 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/id3demux/Makefile.am: + * gst/id3demux/gstid3demux.c: + id3demux: add container-format tag + Using pbutils here because the string is translated. + +2009-06-18 23:51:52 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/dv/gstdvdemux.c: + dvdemux: post container-format tag + Also merge the two almost identical _add_*_pad() functions into one. + +2009-06-18 23:43:49 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/dv/gstdvdemux.c: + dvdemux: don't screw up first audio buffer + Query the audio format, esp. dvdemux->num_channels, before we use that + variable to allocate the initial buffer. That way we don't accidentally + push a zero-sized buffer as first audio buffer. + +2009-06-18 23:38:30 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/multipart/multipartdemux.c: + multipartdemux: post container-format tag + +2009-06-18 23:37:11 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + matroska-demux: post container-format tags + +2009-06-18 23:36:28 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: post container-format tag + +2009-06-18 23:35:29 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: post container-format tags + +2009-06-21 17:13:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/audiofx/audioamplify.c: + audioamplify: Fix integer overflows on 32 bit architectures + +2009-06-21 09:50:54 +0200 Kipp Cannon <kcannon@ligo.caltech.edu> + + * gst/audiofx/audioamplify.c: + audioamplify: Don't declare a loop index static + The previous patch to add support for additional sample formats possibly + introduced a reentrancy bug: a variable used for a loop index was declared + static. This patch fixes that, and also adds a "/* *INDENT-ON* */" annotation + following the macro block. (I don't know what the annotation is for, but the + adder, where I copied this from, has it). + +2009-06-19 22:37:27 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/audiofx/audioamplify.c: + audioamplify: Fix off-by-one in wrap-positive mode + +2009-06-19 22:20:45 +0200 Kipp Cannon <kcannon@ligo.caltech.edu> + + * gst/audiofx/audioamplify.c: + * gst/audiofx/audioamplify.h: + audioamplify: Add noclip method and support for more formats + Fixes bug #585828 and #585831. + +2009-06-19 21:46:41 +0200 Koop Mast <kwm@freebsd.org> + + * gst/udp/gstudpnetutils.h: + udp: Fix build on FreeBSD + Fixes bug #586397. + +2009-06-19 18:12:27 +0200 Ognyan Tonchev <ognyan.tonchev at axis.com> + + * tests/check/elements/rtp-payloading.c: + tests: add unit tests for buffer-list payloaders + See #585559 + +2009-06-19 18:00:35 +0200 Ognyan Tonchev <ognyan.tonchev at axis.com> + + * gst/rtp/gstrtpmp4vpay.c: + * gst/rtp/gstrtpmp4vpay.h: + rtpmp4vpay: add support for buffer-list + See #585559 + +2009-06-19 17:57:12 +0200 Ognyan Tonchev <ognyan.tonchev at axis.com> + + * gst/rtp/gstrtpjpegpay.c: + * gst/rtp/gstrtpjpegpay.h: + rtpjpegpay: add support for buffer-lists + See #585559 + +2009-06-19 17:53:32 +0200 Ognyan Tonchev <ognyan.tonchev at axis.com> + + * gst/rtp/gstrtph264pay.c: + * gst/rtp/gstrtph264pay.h: + rtph264pay: add support for buffer-lists + See #585559 + +2009-06-18 11:54:22 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/udp/gstudpnetutils.c: + udputils: don't free invalid memory + As spotted by benjiG in IRC. + don't free invalid memory when getaddrinfo failed. + +2009-06-17 17:48:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulseink: don't leak device_description + don't leak the device_description. + some cleanups. + +2009-06-19 14:44:40 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/en_GB.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ru.po: + * po/sk.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_HK.po: + * po/zh_TW.po: + po: update .po files for sunaudiomixer string changes + +2009-06-18 16:58:26 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: streaming; adjust sizes to cater for padding in chunks + +2009-06-17 11:54:53 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: streaming mode; handle data chunks grouped in rec lists. + Fixes #567983. + +2009-06-10 12:36:50 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: map some tags to COMPOSER rather than ARTIST + +2009-06-10 12:34:43 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: fix some 3GP tag extraction (keywords, genre, location) + +2009-06-09 15:36:50 +0200 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + * gst/qtdemux/qtdemux_fourcc.h: + qtdemux: extract pixel-aspect-ratio information + +2009-06-17 07:14:09 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + matroskademux: Fix leaking of the Matroska TITLE element + +2009-06-16 20:38:42 +0200 Sebastian Dröge <sebastian.droege@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/gst-plugins-good-plugins.interfaces: + * docs/plugins/gst-plugins-good-plugins.prerequisites: + * 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-annodex.xml: + * docs/plugins/inspect/plugin-apetag.xml: + * docs/plugins/inspect/plugin-audiofx.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-dv.xml: + * docs/plugins/inspect/plugin-efence.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-equalizer.xml: + * docs/plugins/inspect/plugin-esdsink.xml: + * docs/plugins/inspect/plugin-flac.xml: + * docs/plugins/inspect/plugin-flv.xml: + * docs/plugins/inspect/plugin-flxdec.xml: + * docs/plugins/inspect/plugin-gamma.xml: + * docs/plugins/inspect/plugin-gconfelements.xml: + * docs/plugins/inspect/plugin-gdkpixbuf.xml: + * docs/plugins/inspect/plugin-goom.xml: + * docs/plugins/inspect/plugin-goom2k1.xml: + * docs/plugins/inspect/plugin-halelements.xml: + * docs/plugins/inspect/plugin-icydemux.xml: + * docs/plugins/inspect/plugin-id3demux.xml: + * docs/plugins/inspect/plugin-interleave.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-level.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-monoscope.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-ossaudio.xml: + * docs/plugins/inspect/plugin-png.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-quicktime.xml: + * docs/plugins/inspect/plugin-replaygain.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-rtsp.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-videobalance.xml: + * docs/plugins/inspect/plugin-videobox.xml: + * docs/plugins/inspect/plugin-videocrop.xml: + * docs/plugins/inspect/plugin-videoflip.xml: + * docs/plugins/inspect/plugin-videomixer.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/effectv/gstaging.c: + * gst/effectv/gstaging.h: + * gst/effectv/gstdice.c: + * gst/effectv/gstdice.h: + * gst/effectv/gstedge.c: + * gst/effectv/gstedge.h: + * gst/effectv/gstquark.c: + * gst/effectv/gstquark.h: + * gst/effectv/gstrev.c: + * gst/effectv/gstrev.h: + * gst/effectv/gstshagadelic.c: + * gst/effectv/gstshagadelic.h: + * gst/effectv/gstvertigo.c: + * gst/effectv/gstvertigo.h: + * gst/effectv/gstwarp.c: + * gst/effectv/gstwarp.h: + effectv: Add basic documentation for the effectv elements + +2009-06-16 20:16:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + * gst/effectv/gstdice.c: + * gst/effectv/gsteffectv.h: + * gst/effectv/gstquark.c: + * gst/effectv/gstshagadelic.c: + effectv: Define the fast PRNG function at a central place + +2009-06-16 20:13:35 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/Makefile.am: + * gst/effectv/gstaging.c: + * gst/effectv/gstaging.h: + * gst/effectv/gstdice.c: + * gst/effectv/gstdice.h: + * gst/effectv/gstedge.c: + * gst/effectv/gstedge.h: + * gst/effectv/gsteffectv.c: + * gst/effectv/gsteffectv.h: + * gst/effectv/gstquark.c: + * gst/effectv/gstquark.h: + * gst/effectv/gstrev.c: + * gst/effectv/gstrev.h: + * gst/effectv/gstshagadelic.c: + * gst/effectv/gstshagadelic.h: + * gst/effectv/gstvertigo.c: + * gst/effectv/gstvertigo.h: + * gst/effectv/gstwarp.c: + * gst/effectv/gstwarp.h: + effectv: Move type definitions into separate headers + This is needed for the docs later. + +2009-06-16 19:41:02 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + * gst/effectv/gstdice.c: + * gst/effectv/gstedge.c: + * gst/effectv/gstquark.c: + * gst/effectv/gstrev.c: + * gst/effectv/gstshagadelic.c: + * gst/effectv/gstvertigo.c: + * gst/effectv/gstwarp.c: + effectv: Remove get_unit_size implementations + The default on from GstVideoFilter handles this already. + +2009-06-16 14:54:34 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * configure.ac: + configure: bump core/base requirements to git + Need git core for basesink bufferlist additions; -base requirement + bumped gratuitously. + +2009-06-16 15:25:54 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * tests/check/elements/udpsink.c: + tests: add some debug, send newsegment + +2009-06-16 15:06:50 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/udp/gstudpsrc.c: + udpsrc: add debug line for the socket + +2009-06-16 15:06:25 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * tests/check/pipelines/flacdec.c: + tests: turn g_print into debug + +2009-06-16 15:04:15 +0200 Ognyan Tonchev <ognyan@axis.com> + + * gst/udp/gstmultiudpsink.c: + * tests/check/Makefile.am: + * tests/check/elements/udpsink.c: + multiudpsink: add support for buffer lists + Add support for BufferList and add a unit test. + Fixes #585842 + +2009-06-16 00:02:42 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: reset session state when stopping + Increases the chances that the element is actually reusable. + +2009-06-15 23:49:48 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: log response and request headers and fix some broken indenting + +2009-06-15 22:40:35 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtpmp4gdepay.c: + mp4gdepay: guess constantDuration better + Do a better job at guessing the constantDuration parameter when it is not + present in the caps. + Fixes #585205 + +2009-06-15 21:09:47 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstwarp.c: + warptv: Clean up warptv element and fix some minor bugs and leaks + +2009-06-15 20:53:23 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstvertigo.c: + vertigotv: Clean up vertigotv element and fix some minor bugs and leaks + +2009-06-15 20:38:01 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstdice.c: + dicetv: Use guint8 instead of char (which can be signed or unsigned) + +2009-06-15 20:36:39 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstshagadelic.c: + shagadelictv: Use guint8/gint8 instead of char (which can be signed or unsigned) + +2009-06-15 20:31:30 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstshagadelic.c: + shagadelictv: Clean up element and free all memory in finalize + +2009-06-15 20:21:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstrev.c: + revtv: Clean up revtv element + +2009-06-15 20:07:42 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstquark.c: + quarktv: Simplify some code + +2009-06-15 20:07:10 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstquark.c: + quarktv: Use the input data if a NULL buffer is chosen instead of the value 0 + +2009-06-15 20:00:43 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstquark.c: + quarktv: Fix setting the planes property of quarktv + Setting it to a value<16 would cause crashes before because + current_plane was set to the old number of planes-1. Also + fix calculations for non-2^n planes values. + +2009-06-15 17:50:41 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstquark.c: + quarktv: Clean up the quarktv element + +2009-06-15 17:39:20 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gsteffectv.c: + effectv: Make elements list constant + +2009-06-15 17:37:53 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstedge.c: + edgetv: Clean up edgetv element and fix memory leak + +2009-06-15 17:21:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstdice.c: + dicetv: Clean up dicetv element and fix some smaller issues + This fixes a memory leak (the dice map) and a crash when + setting the square-bits property before caps are set. + +2009-06-15 17:20:21 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/Makefile.am: + * gst/effectv/gstaging.c: + agingtv: Actually use GstController for syncing the properties to timestamps + +2009-06-15 17:03:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + agingtv: Export some more agingtv properties via GObject properties + +2009-06-15 15:06:56 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + agingtv: General cleanup and updating of copyright + Also make the scratch-lines property exported via a GObject + property and initialize/reset the internal state correctly. + +2009-06-15 15:05:58 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/effectv/gstaging.c: + agingtv: Store and update state inside the instance struct + This makes the coloraging effect and pits effect visible. + +2009-06-15 15:51:32 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: ref custom ring buffer class and type in class_init + Hack around thread-safety issues in GObject and our racy _get_type() + functions (we could easily fix the _get_type() functions, but we still + need to hack around the GObject class races until we require a newer + GLib version, I think). + +2009-06-14 19:19:19 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/dv/demo-play.c: + * tests/old/examples/Makefile.am: + * tests/old/examples/level/Makefile.am: + * tests/old/examples/level/README: + * tests/old/examples/level/demo.c: + * tests/old/examples/level/plot.c: + * tests/old/examples/switch/.gitignore: + * tests/old/examples/switch/Makefile.am: + * tests/old/examples/switch/switcher.c: + Remove a few old example apps from the 0.8 days + Some have been replaced by newer ones, others are demoing elements that + don't exist any longer (not in -good anyway), and others have not been + touched in many years and it seem pointless to keep them around. + Removing these files makes sure we don't have any code in our repository + that uses Gtk+ symbols which are to be removed for GNOME3, and as such + will make some script that greps for this kind of stuff give us a clean + bill of code health. Fixes #585757. + +2009-06-13 21:02:45 -0400 Olivier Crête <tester@tester.ca> + + * common: + * gst/rtp/gstrtpsirenpay.c: + rtpsirenpay: Remove deprecated symbol + Patch by: Luis Menina + +2009-06-13 10:43:55 +0200 Marvin Schmidt <marvin_schmidt@gmx.net> + + * tests/check/Makefile.am: + tests: Don't run the flacdec test if the plugin isn't built. Fixes #585630 + +2009-06-12 16:06:28 +0200 Patrick Radizi <patrick.radizi at axis.com> + + * gst/rtsp/gstrtspsrc.c: + * gst/rtsp/gstrtspsrc.h: + rtspsrc: Add RTP blocksize functionality + Add property to make the client suggest a blocksize to the server. + Fixes #585549 + +2009-06-11 22:30:06 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/README: + rtp: update README, fix some typos, mention gstrtpbin + +2009-06-11 19:10:53 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulsesink: handle border cases in resampler + +2009-06-11 13:32:22 +0100 Jan Schmidt <thaytan@noraisin.net> + + * common: + * docs/Makefile.am: + * docs/plugins/Makefile.am: + * docs/upload.mak: + docs: Bump common. Use upload-doc.mak instead of upload.mak + Remove the local copy of upload.mak in favour of using the shared + upload-doc.make in common/ + +2009-06-11 11:39:25 +0100 Jan Schmidt <thaytan@noraisin.net> + + * gst/goom/goom_config_param.h: + * gst/videomixer/videomixer.c: + docs: Quieten a couple more docs warnings + +2009-06-11 11:27:26 +0100 Jan Schmidt <thaytan@noraisin.net> + + * gst/matroska/lzo.c: + docs: Remove gtk-doc comment marker + These comment blocks aren't gtk-doc comments and cause annoying noise in + the docs build. + +2009-06-11 10:05:32 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + * gst/deinterlace/gstdeinterlace.h: + deinterlace: Implement upstream negotation + +2009-06-10 21:47:40 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Improve debugging and clean up some code + +2009-06-10 14:55:18 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Clip buffers to the current segment if possible + +2009-06-10 14:45:06 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + * gst/deinterlace/gstdeinterlace.h: + deinterlace: Clean up includes and clean up order of instance struct fields + +2009-06-10 16:09:56 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtp/gstrtph263pay.h: + rtph263pay: Default to doing A, B and C modes, not only A + +2009-06-10 09:56:11 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Fix QoS calculations + The diff is a signed integer, not an unsigned one of course. + In modes other than GST_DEINTERLACE_ALL every frame has twice the + duration of the field duration. + +2009-06-09 14:13:31 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * gst/rtp/gstrtpsirenpay.c: + rtpsirenpay: Put the bitrate in the RTP caps + The MS code seems to require the bitrate to interoperate and + draft-ietf-avt-rtp-g7221-00 also has it. + +2009-06-09 19:55:36 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + * gst/deinterlace/gstdeinterlace.h: + deinterlace: Implement basic QoS + This change is based on Tim's QoS implementation + for jpegdec. + +2009-06-09 19:29:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + deinterlace: Directly proxy events/queries to the peer pads + This removes some overhead introduced by the default handlers + that need to iterate over the other pads. + +2009-06-09 10:38:52 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/avi/gstavidemux.c: + avidemux: debug_memdump() unknown tags. Refactor junk parsing code. + This makes life slightly easier when debugging avi files. + +2009-06-08 08:21:43 +0200 Edward Hervey <bilboed@bilboed.com> + + * gst/rtp/Makefile.am: + rtp: Don't forget to dist the headers for the CELT (de)payloaders. + +2009-06-07 20:54:06 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + Revert "Revert "qtdemux: fill timestamp table completely"" + This reverts commit 9f022c8a8503c2ce0fa617fdb50e41706dd412f5. + Sorry, I was thinking about the wrong module. + +2009-06-07 20:49:50 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + Revert "qtdemux: fill timestamp table completely" + This reverts commit 790b050fc5302cae89cddcd23b258093967d05a9. + I forgot we were frozen. + +2009-06-07 20:46:45 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + qtdemux: fill timestamp table completely + When there are less timestamps that there are samples, fill up the sample table + with the last know timestamp. This situation can happen when the last sample + does not decode and doesn't need a timestamp. We however calculate the total + track length using the last sample timestamp so we need to have something + sensible in there. + Fixes #585056 + +2009-06-07 13:37:04 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/wavparse/gstwavparse.c: + wavparse: handle LIST INFO of 0 size + Handle LIST INFO chunks of 0 size instead of causing errors. + Fixes #584981 + +2009-06-07 13:24:45 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/wavparse/gstwavparse.c: + Revert "wavparse: Remove dead assignments, move variable to where it's needed." + Reverts commit 44256a78f8dd79a91f3bb2ab7c3aa623c097bb8a and use the result in + error reporting so that we can see what's going on. + +2009-06-05 18:55:02 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/Makefile.am: + * gst/rtp/gstrtp.c: + * gst/rtp/gstrtpceltdepay.c: + * gst/rtp/gstrtpceltdepay.h: + celtdepay: add CELT depayloader + +2009-06-05 15:30:51 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/Makefile.am: + * gst/rtp/gstrtp.c: + * gst/rtp/gstrtpceltpay.c: + * gst/rtp/gstrtpceltpay.h: + rtpceltpay: add CELT RTP payloader + +2009-06-05 16:54:48 +0100 Jan Schmidt <jan.schmidt@sun.com> + + * sys/sunaudio/gstsunaudiomixerctrl.c: + * sys/sunaudio/gstsunaudiomixeroptions.c: + * sys/sunaudio/gstsunaudiomixertrack.c: + sunaudio: Fix switch setting on some devices. Add debug. Fix a FIXME. + Fix the setting of toggle switches on some broken audio drivers which + report that no audio ports are settable by ignoring the mod_port field + there. + Add some debug statements. + Fix a FIXME now that Good relies on a new enough gst-plugins-base. + +2009-06-04 12:27:19 +0100 Jan Schmidt <jan.schmidt@sun.com> + + * sys/sunaudio/Makefile.am: + * sys/sunaudio/gstsunaudiomixerctrl.c: + * sys/sunaudio/gstsunaudiomixerctrl.h: + * sys/sunaudio/gstsunaudiomixeroptions.c: + * sys/sunaudio/gstsunaudiomixeroptions.h: + * sys/sunaudio/gstsunaudiomixertrack.c: + * sys/sunaudio/gstsunaudiomixertrack.h: + sunaudio: Support new flags for options and actions + Use new audio mixer flags added in Base 0.10.23 to expose flags and options + on the SunAudio devices. + Fixes: #583593 + Patch By: Brian Cameron <brian.cameron@sun.com> + Patch By: Garrett D'Amore <garrett.damore@sun.com> + +2009-05-15 11:50:38 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/deinterlace/gstdeinterlace.c: + * gst/deinterlace/gstdeinterlace.h: + deinterlace: First try to handle DVD still frames correctly + This helps a bit with bug #582740 but still doesn't make it work. + +2009-06-04 17:37:03 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/pulse/pulsesink.c: + pulsesink: only notify if all checks passed + Replace goto done: with return, as those are checks when we don't want to flag a + pending notify. + +2009-06-04 15:19:05 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: set the right state on rtpbin + We need to set the state of gstrtpbin to the same state as our source elements. + This fixes fallback to TCP again. + +2009-06-03 18:23:53 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/pulse/pulsesink.c: + pulsesink: check pointer before accessing + Move existing check a few lines up, so that we check before accessing fields. + +2009-06-03 18:21:12 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/pulse/pulsesink.c: + pulsesink: rename gst_pulse_sink_get_time to gst_pulsesink_get_time + Rename internal method for consistency. + +2009-06-03 18:19:22 +0300 Stefan Kost <ensonic@users.sf.net> + + * ext/pulse/pulsesink.c: + pulsesink: use values from pa_stream_get_buffer_attr() + We were putting the requested values back into ringbuffer spec, instead of + using the queried values. + +2009-06-02 19:32:21 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtpvrawpay.c: + vrawpay: trim output buffers + Remove the leftover unused bytes in the output buffer. + Fixes #584613 + +2009-06-02 19:30:30 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtpvrawdepay.c: + vrawdepay: fix parsing of sampling field + commit a12d9a80f225be97b3674b1a0506ac66544dbf49 broke the parsing of the + sampling. + +2009-05-27 17:06:34 +0100 Jan Schmidt <thaytan@noraisin.net> + + * ext/libpng/gstpngdec.c: + pngdec: Avoid possible overflow in calculations + A malformed (or simply huge) PNG file can lead to integer overflow in + calculating the size of the output buffer, leading to crashes or buffer + overflows later. Fixes SA35205 security advisory. + +2009-06-02 00:48:00 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacenc.c: + flacenc: some more logging - dump header packets + Also, the final fixing up of the headers is expected and not something + we should warn about. + +2009-06-02 00:37:15 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * ext/flac/gstflacenc.c: + flacenc: never ever pass values >36bits to _set_total_samples_estimate() + Let's be paranoid and make sure we never pass a number that takes up + more than 36 bits to _set_total_samples_estimate(), since libFLAC + expects all the other bits to be zero, and if this is not the case + neighbouring fields in the global stream info header may get messed + up inadvertently, so that flac -d refuses to decode the stream. + See #584455. + +2009-06-01 22:33:02 +0200 Thomas Vander Stichele <thomas (at) apestaart (dot) org> + + * ext/flac/gstflacenc.c: + Address bad FLAC sample length encoding of #5844455 + Commit df707c666433a78d3878af6f055698d5756226c4 + introduced an obvious bug in the sample length calculation, + using the wrong macro for conversion. + +2009-06-01 11:58:21 -0700 Brian Cameron <brian.cameron@sun.com> + + * gst/deinterlace/tvtime/mmx.h: + deinterlace: Fix spurious colons in asm code + Fixes #584174. + Signed-off-by: David Schleef <ds@schleef.org> + +2009-06-01 00:40:55 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * gst/avi/gstavidemux.c: + avidemux: skip JUNK chunks in data section in streaming mode + Skip JUNK tags in streaming mode as well instead of EOSing + prematurely. Fixes #564100. + +2009-05-28 14:01:17 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_bgra.c: + * gst/videomixer/blend_i420.c: + * gst/videomixer/videomixer.c: + videomixer: Don't use // comments + +2009-05-28 13:56:15 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_bgra.c: + videomixer: Fix background blitting when a color mode is selected with BGRA + +2009-05-28 13:54:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_ayuv.c: + * gst/videomixer/blend_bgra.c: + * gst/videomixer/blend_i420.c: + * gst/videomixer/videomixer.c: + * gst/videomixer/videomixer.h: + videomixer: Some cleanup and fix the calculation of the frame size in bytes + +2009-05-28 13:35:52 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_i420.c: + videomixer: Fix I420 blending to actually do something + For this we a) implement the checkers filling and b) + actually blend the src/dest by using the src alpha value + from the pad. + +2009-05-28 13:14:13 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/blend_bgra.c: + videomixer: Fix ARGB blending to actually work + +2009-05-28 13:04:51 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/videomixer/Makefile.am: + * gst/videomixer/blend_bgra.c: + videomixer: Blend BGRA ourselves instead of using Cairo + +2009-05-28 12:55:16 +0200 Alex Ugarte <alexugarte@gmail.com> + + * gst/videomixer/Makefile.am: + * gst/videomixer/blend_ayuv.c: + * gst/videomixer/blend_bgra.c: + * gst/videomixer/blend_i420.c: + * gst/videomixer/videomixer.c: + * gst/videomixer/videomixer.h: + videomixer: Add support for blending BGRA and AYUV + Fixes bug #577017. + +2009-05-28 12:39:46 +0200 Ghislain 'Aus' Lacroix <aus@songbirdnest.com> + + * gst/equalizer/gstiirequalizer.c: + equalizer: Use floating point arithmetic internally for the int16 mode + By using int32 arithmetic we will introduce distortions as the + IIR filter is very sensitive to rounding errors. Fixes bug #580214. + +2009-05-28 10:55:16 +0100 Christian Schaller <christian.schaller@collabora.co.uk> + + * gst-plugins-good.spec.in: + Update spec file with latest plugins + +2009-05-26 17:19:08 +0100 Jan Schmidt <thaytan@noraisin.net> + + * common: + Automatic update of common submodule + From 888e0a2 to c572721 + +2009-05-26 16:20:35 +0300 Stefan Kost <ensonic@users.sf.net> + + * sys/v4l2/gstv4l2src.c: + * sys/v4l2/gstv4l2src.h: + v4l2: cleanup and commenting + Remove newlines inserted by gst-indent once. Remove unused var from instance + struct. Add comments. Add another #define for default property value. + +2009-05-06 12:43:35 +0300 Stefan Kost <ensonic@users.sf.net> + + * tests/check/Makefile.am: + makefile: idea about makeing more sources/sinks testable again + +2009-05-25 16:33:35 +0200 John Keeping <john.keeping at lineone.net> + + * ext/libpng/gstpngdec.c: + pngdec: match g_malloc() with g_free() + Matching g_malloc() with a g_free() is important when a custom allocator is + installed. + Fixes #583803 + +2009-05-12 18:39:28 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtpmp4vpay.c: + * gst/rtp/gstrtpmp4vpay.h: + rtpmp4vpay: don't look for headers in some cases + In some streams (starting with 00000100) don't look for the headers but push + data as it is. + Fixes #582153 + +2009-05-13 11:50:22 +0200 Patrick Radizi <patrick.radizi at axis.com> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: fix memory leak of messages + Free messages correctly. + Fixes #577318 + +2009-05-24 19:32:17 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: make fakesrc silent + Make the fakesrc that is responsible for sending dummy packets silent. + +2009-05-24 16:33:42 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtsp/gstrtspsrc.c: + rtspsrc: don't send teardown before setup + Don't send a TEARDOWN request when we did not manage to successfully setup a + stream. + +2009-05-14 14:46:14 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-demux.h: + * gst/matroska/matroska-ids.h: + matroskademux: Populate a GstIndex that is set on matroskademux + +2009-05-14 10:35:22 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/flv/gstflvmux.c: + flvmux: Get the max duration from upstream if there's no duration tag + +2009-05-14 10:29:49 +0200 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + * gst/flv/gstflvmux.c: + * gst/flv/gstflvmux.h: + flvmux: Write an index table to the end of the file + +2009-05-22 01:12:35 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * autogen.sh: + * configure.ac: + autotools: move the -Wno-portability from autogen.sh to configure.ac + If we're lucky it'll get used on automatic rebuilds as well that way. + +2009-05-22 01:10:12 +0100 Tim-Philipp Müller <tim.muller@collabora.co.uk> + + * common: + * configure.ac: + * m4/gst-fionread.m4: + m4: fix 'suspicious cache id' warnings + and update common to pull in a similar fix. Also check in configure + whether the compiler supports do while macros (GLib wants this + defined and it is needed to avoid warnings with some c++ compilers + apparently). + +2009-05-22 01:39:33 +0300 Zeeshan Ali (Khattak) <zeeshanak@gnome.org> + + * configure.ac: + souphttpsrc: Bump-up libsoup-2.24 dep to >= 2.26 + The helper function soup_message_headers_get_content_type that we now use + was added in 2.26. + +2009-05-20 17:57:59 +0300 Zeeshan Ali (Khattak) <zeeshanak@gnome.org> + + * ext/soup/gstsouphttpsrc.c: + souphttpsrc: Set caps for audio/L16 content-type + When "Content-Type" header is "audio/L16", we need to set the caps on the + outgoing buffers so that downstream elements can have means to detect the + stream type and handle it appropriately. Tested with HTTP stream provided + by pulse-audio's http module (git master). + +2009-05-20 15:06:25 +0300 Zeeshan Ali (Khattak) <zeeshanak@gnome.org> + + * ext/soup/gstsouphttpsrc.c: + * ext/soup/gstsouphttpsrc.h: + souphttpsrc: Rename icy_caps to src_caps + +2009-05-21 23:39:13 +0200 Philippe Normand <philippe at fluendo.com> + + * ext/jpeg/gstjpegdec.c: + jpegdec: bump max size to 65535x65535 + Remove artificial jpeg image limits. + Fixes #583048. + +2009-05-21 21:36:02 +0100 Jan Schmidt <thaytan@noraisin.net> + + * win32/common/config.h: + win32: Update the win32 config.h + +2009-05-19 15:12:09 +0100 Jan Schmidt <thaytan@noraisin.net> + + * gst/matroska/matroska-demux.c: + * gst/matroska/matroska-ids.h: + matroskademux: Recognise PGS subpicture streams - the bluray format. + Recognise and apply appropriate caps to PGS (Presentation Graphic Stream) + subpicture streams. + +2009-05-15 10:42:19 +0100 Jan Schmidt <thaytan@noraisin.net> + + * ext/pulse/pulsesink.c: + pulsesink: Convert an erroneous assertion + Occasionally, we get a change callback for an old stream, triggering + the assertion unnecessarily. Just ignore such callbacks. + +2009-05-20 16:14:40 -0400 Olivier Crête <olivier.crete@collabora.co.uk> + + * ext/pulse/pulsesink.c: + pulse: Print a warning on under/overflows + +2009-05-20 18:45:45 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/qtdemux/qtdemux.c: + * gst/qtdemux/qtdemux_fourcc.h: + qtdemux: parse in24 boxes to get endianness + in24 samples are normally big-endian but an enda box can change this to + little-endian. Recurse into the in24 box and find the enda box so that we get + the endianness right. + Fixes #582515 + +2009-05-20 14:14:31 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/multipart/multipartdemux.c: + multipartdemux: add proper padtemplate + +2009-05-20 14:02:43 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/multipart/multipartdemux.c: + multipartdemux: add more mime types + Add mime-type for Panasonic g726 and add more required caps properties for other + G726 mime-types. + Make mime-types case insensitive. + See #582169 + +2009-05-20 13:47:52 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/multipart/multipartdemux.c: + * gst/multipart/multipartdemux.h: + multipartdemux: add flow aggregation + +2009-05-20 13:29:02 +0200 Arnout Vandecappelle <arnout@mind.be> + + * gst/multipart/multipartdemux.c: + multipartdemux: allow content to be empty. + gst_adapter_take_buffer doesn't allow buffer to be empty. + Simply skip any part where the content is empty. Don't + create a pad for it either. + See #582169 + +2009-05-18 22:19:39 +0200 Wim Taymans <wim.taymans@collabora.co.uk> + + * gst/rtp/gstrtpchannels.h: + rtp: fix channel positions for mono + +2009-05-21 21:02:11 +0100 Jan Schmidt <thaytan@noraisin.net> + + * configure.ac: + Back to hacking -> 0.10.15.1 + === release 0.10.15 === -2009-05-20 Jan Schmidt <jan.schmidt@sun.com> +2009-05-20 22:34:18 +0100 Jan Schmidt <thaytan@noraisin.net> + * ChangeLog: + * NEWS: + * RELEASE: * configure.ac: - releasing 0.10.15, "I've been up all night" + * docs/plugins/gst-plugins-good-plugins.args: + * docs/plugins/gst-plugins-good-plugins.hierarchy: + * docs/plugins/gst-plugins-good-plugins.interfaces: + * docs/plugins/gst-plugins-good-plugins.prerequisites: + * 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-annodex.xml: + * docs/plugins/inspect/plugin-apetag.xml: + * docs/plugins/inspect/plugin-audiofx.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-dv.xml: + * docs/plugins/inspect/plugin-efence.xml: + * docs/plugins/inspect/plugin-effectv.xml: + * docs/plugins/inspect/plugin-equalizer.xml: + * docs/plugins/inspect/plugin-esdsink.xml: + * docs/plugins/inspect/plugin-flac.xml: + * docs/plugins/inspect/plugin-flv.xml: + * docs/plugins/inspect/plugin-flxdec.xml: + * docs/plugins/inspect/plugin-gamma.xml: + * docs/plugins/inspect/plugin-gconfelements.xml: + * docs/plugins/inspect/plugin-gdkpixbuf.xml: + * docs/plugins/inspect/plugin-goom.xml: + * docs/plugins/inspect/plugin-goom2k1.xml: + * docs/plugins/inspect/plugin-halelements.xml: + * docs/plugins/inspect/plugin-icydemux.xml: + * docs/plugins/inspect/plugin-id3demux.xml: + * docs/plugins/inspect/plugin-interleave.xml: + * docs/plugins/inspect/plugin-jpeg.xml: + * docs/plugins/inspect/plugin-level.xml: + * docs/plugins/inspect/plugin-matroska.xml: + * docs/plugins/inspect/plugin-monoscope.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-ossaudio.xml: + * docs/plugins/inspect/plugin-png.xml: + * docs/plugins/inspect/plugin-pulseaudio.xml: + * docs/plugins/inspect/plugin-quicktime.xml: + * docs/plugins/inspect/plugin-replaygain.xml: + * docs/plugins/inspect/plugin-rtp.xml: + * docs/plugins/inspect/plugin-rtsp.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-videobalance.xml: + * docs/plugins/inspect/plugin-videobox.xml: + * docs/plugins/inspect/plugin-videocrop.xml: + * docs/plugins/inspect/plugin-videoflip.xml: + * docs/plugins/inspect/plugin-videomixer.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 0.10.15 + +2009-05-20 22:03:21 +0100 Jan Schmidt <thaytan@noraisin.net> + + * po/af.po: + * po/az.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/en_GB.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/mt.po: + * po/nb.po: + * po/nl.po: + * po/or.po: + * po/pl.po: + * po/pt_BR.po: + * po/ru.po: + * po/sk.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_HK.po: + * po/zh_TW.po: + Update .po files 2009-05-16 02:59:14 +0100 Jan Schmidt <thaytan@noraisin.net> @@ -4102,11 +9816,7 @@ * tests/check/Makefile.am: * tests/check/audiotestsrc.flac: * tests/check/pipelines/flacdec.c: - add a test to check that we get all decoded bytes - from a 10-buffer audiotestsrc flac, in the case of: - - a full decode - - a decode of a seek for the full file - - a decode of a seek for a small part, smaller than the first buffer + add a test to check that we get all decoded bytes from a 10-buffer audiotestsrc flac, in the case of: - a full decode - a decode of a seek for the full file - a decode of a seek for a small part, smaller than the first buffer The test fails because flacdec drops the first outgoing buffer on a seek 2009-03-03 10:06:52 +0100 Thomas Vander Stichele <thomas (at) apestaart (dot) org> @@ -5216,8 +10926,7 @@ * ext/pulse/pulsesink.c: * ext/pulse/pulsesink.h: - pulsesink: Issue property change notification in streaming thread, - rather than PA thread. + pulsesink: Issue property change notification in streaming thread, rather than PA thread. pa_threaded_mainloop_lock() (a.o.) and by extension get_property should not be done from a PA thread, but the latter may occur as a result of a property change notification. Fixes #571204 (though current situation @@ -5526,8 +11235,7 @@ * ext/pulse/pulsesrc.h: * ext/pulse/pulseutil.c: * ext/pulse/pulseutil.h: - Rewrite the pulse plugin, conditionally enabling new behaviour with - newer pulseaudio. + Rewrite the pulse plugin, conditionally enabling new behaviour with newer pulseaudio. Fixes: #567794 * Hook pulsesink's volume property up with the stream volume -- not the sink volume in PA. |