=== 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 22:34:18 +0100 Jan Schmidt <thaytan@noraisin.net>
* ChangeLog:
* NEWS:
* RELEASE:
* configure.ac:
* 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>
* ChangeLog:
* configure.ac:
* 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:
* win32/common/config.h:
0.10.14.3 pre-release
2009-05-16 02:37:06 +0100 Jan Schmidt <thaytan@noraisin.net>
* tests/check/pipelines/flacdec.c:
check: Don't change directory in the test
Changing directory invalidates the paths the registry has picked
up for our plugins, because the test environment specifies relative
paths. Fixing that is a separate problem, in the meantime, build a
path to the test files instead of changing directory. Fixes the
distcheck.
2009-05-16 01:53:46 +0100 Jan Schmidt <thaytan@noraisin.net>
* win32/MANIFEST:
win32: Remove directdraw project files from the win32 manifest
2009-05-16 01:21:34 +0100 Jan Schmidt <thaytan@noraisin.net>
* tests/check/elements/rganalysis.c:
check: Remove assertion that breaks check again git master
Remove the assertion that the sender of the tags message is the
element until we decide whether that's going to be true or not.
2009-05-16 01:11:33 +0100 Jan Schmidt <thaytan@noraisin.net>
* 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-directdraw.xml:
* sys/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directdraw/gstdirectdrawplugin.c:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directdraw/gstdirectdrawsink.h:
* win32/vs6/libgstdirectdraw.dsp:
* win32/vs7/libgstdirectdraw.vcproj:
* win32/vs8/libgstdirectdraw.vcproj:
Moved 'directdraw' from -good to -bad
2009-05-16 00:18:34 +0100 Jan Schmidt <thaytan@noraisin.net>
* tests/check/pipelines/.gitignore:
ignores: Ignore the flacdec check binary
2009-05-16 00:17:57 +0100 Jan Schmidt <thaytan@noraisin.net>
* docs/plugins/inspect/plugin-avi.xml:
docs: Update inspection details for the avi plugin
2009-05-16 00:00:07 +0100 Jan Schmidt <thaytan@noraisin.net>
* 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-y4menc.xml:
* tests/check/Makefile.am:
* tests/check/elements/.gitignore:
* tests/check/elements/y4menc.c:
Moved 'y4menc' from -bad to -good
2009-05-13 17:55:46 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
* gst/y4m/gsty4mencode.c:
[MOVED FROM BAD] y4menc: change my email
change my email to something more current
See #580783
2009-05-13 17:54:47 +0200 Wim Taymans <wim.taymans@collabora.co.uk>
* gst/y4m/gsty4mencode.c:
[MOVED FROM BAD] y4menc: don't strip timestamps
Fixes #582483
2008-11-04 12:42:30 +0000 Stefan Kost <ensonic@users.sourceforge.net>
[MOVED FROM BAD] 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-06-26 15:52:40 +0000 Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
[MOVED FROM BAD] Add documentation for YUV4MPEG2 encoder element.
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/y4m/gsty4mencode.c:
Add documentation for YUV4MPEG2 encoder element.
2007-04-24 15:49:18 +0000 Tim-Philipp Müller <tim@centricular.net>
[MOVED FROM BAD] Plug some leaks; try to make build bot happy again.
Original commit message from CVS:
* gst/y4m/gsty4mencode.c: (gst_y4m_encode_init),
(gst_y4m_encode_setcaps):
* tests/check/elements/y4menc.c: (GST_START_TEST):
Plug some leaks; try to make build bot happy again.
2006-11-13 18:55:57 +0000 Mark Nauwelaerts <manauw@skynet.be>
[MOVED FROM BAD] configure.ac: Enable cdaudio and y4m.
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet be>
* configure.ac:
Enable cdaudio and y4m.
* gst/y4m/Makefile.am:
* gst/y4m/gsty4mencode.c: (gst_y4m_encode_base_init),
(gst_y4m_encode_class_init), (gst_y4m_encode_init),
(gst_y4m_encode_reset), (gst_y4m_encode_setcaps),
(gst_y4m_encode_get_stream_header),
(gst_y4m_encode_get_frame_header), (gst_y4m_encode_chain),
(gst_y4m_encode_set_property), (gst_y4m_encode_get_property),
(gst_y4m_encode_change_state), (plugin_init):
* gst/y4m/gsty4mencode.h:
Port of y4mencode to 0.10.
2006-04-25 21:56:38 +0000 Stefan Kost <ensonic@users.sourceforge.net>
[MOVED FROM BAD] Define GstElementDetails as const and also static (when defined as global)
Original commit message from CVS:
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/arts/gst_arts.c:
* ext/artsd/gstartsdsink.c:
* ext/audiofile/gstafparse.c:
* ext/audiofile/gstafsink.c:
* ext/audiofile/gstafsrc.c:
* ext/audioresample/gstaudioresample.c:
* ext/bz2/gstbz2dec.c:
* ext/bz2/gstbz2enc.c:
* ext/cdaudio/gstcdaudio.c:
* ext/directfb/dfbvideosink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/dts/gstdtsdec.c: (gst_dtsdec_base_init):
* ext/faac/gstfaac.c: (gst_faac_base_init):
* ext/faad/gstfaad.c:
* ext/gsm/gstgsmdec.c:
* ext/gsm/gstgsmenc.c:
* ext/hermes/gsthermescolorspace.c:
* ext/ivorbis/vorbisfile.c:
* ext/lcs/gstcolorspace.c:
* ext/libfame/gstlibfame.c:
* ext/libmms/gstmms.c: (gst_mms_base_init):
* ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init):
* ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init):
* ext/nas/nassink.c: (gst_nassink_base_init):
* ext/neon/gstneonhttpsrc.c:
* ext/sdl/sdlaudiosink.c:
* ext/sdl/sdlvideosink.c:
* ext/shout/gstshout.c:
* ext/snapshot/gstsnapshot.c:
* ext/sndfile/gstsf.c:
* ext/swfdec/gstswfdec.c:
* ext/tarkin/gsttarkindec.c:
* ext/tarkin/gsttarkinenc.c:
* ext/theora/theoradec.c:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init):
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init):
* gst/chart/gstchart.c:
* gst/colorspace/gstcolorspace.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init):
* gst/festival/gstfestival.c:
* gst/filter/gstbpwsinc.c:
* gst/filter/gstiir.c:
* gst/filter/gstlpwsinc.c:
* gst/freeze/gstfreeze.c:
* gst/games/gstpuzzle.c: (gst_puzzle_base_init):
* gst/librfb/gstrfbsrc.c:
* gst/mixmatrix/mixmatrix.c:
* gst/mpeg1sys/gstmpeg1systemencode.c:
* gst/mpeg1videoparse/gstmp1videoparse.c:
* gst/mpeg2sub/gstmpeg2subt.c:
* gst/mpegaudioparse/gstmpegaudioparse.c:
* gst/multifilesink/gstmultifilesink.c:
* gst/overlay/gstoverlay.c:
* gst/passthrough/gstpassthrough.c:
* gst/playondemand/gstplayondemand.c:
* gst/qtdemux/qtdemux.c:
* gst/rtjpeg/gstrtjpegdec.c:
* gst/rtjpeg/gstrtjpegenc.c:
* gst/smooth/gstsmooth.c:
* gst/smoothwave/gstsmoothwave.c:
* gst/spectrum/gstspectrum.c:
* gst/speed/gstspeed.c:
* gst/stereo/gststereo.c:
* gst/switch/gstswitch.c:
* gst/tta/gstttadec.c: (gst_tta_dec_base_init):
* gst/tta/gstttaparse.c: (gst_tta_parse_base_init):
* gst/vbidec/gstvbidec.c:
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/virtualdub/gstxsharpen.c:
* gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init):
* gst/y4m/gsty4mencode.c:
* sys/cdrom/gstcdplayer.c:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directsound/gstdirectsoundsink.c:
* sys/glsink/glimagesink.c:
* sys/qcam/gstqcamsrc.c:
* sys/v4l2/gstv4l2src.c:
* sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init):
* sys/ximagesrc/ximagesrc.c:
Define GstElementDetails as const and also static (when defined as
global)
2006-04-08 21:48:01 +0000 Stefan Kost <ensonic@users.sourceforge.net>
[MOVED FROM BAD] Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
Original commit message from CVS:
* ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_class_init):
* ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_class_init):
* ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_class_init):
* ext/arts/gst_arts.c: (gst_arts_class_init):
* ext/artsd/gstartsdsink.c: (gst_artsdsink_class_init):
* ext/audiofile/gstafsink.c: (gst_afsink_class_init):
* ext/audiofile/gstafsrc.c: (gst_afsrc_class_init):
* ext/audioresample/gstaudioresample.c:
* ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init):
* ext/directfb/dfbvideosink.c: (gst_dfbvideosink_class_init):
* ext/divx/gstdivxdec.c: (gst_divxdec_class_init):
* ext/hermes/gsthermescolorspace.c:
(gst_hermes_colorspace_class_init):
* ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_class_init):
* ext/jack/gstjack.c: (gst_jack_class_init):
* ext/jack/gstjackbin.c: (gst_jack_bin_class_init):
* ext/lcs/gstcolorspace.c: (gst_colorspace_class_init):
* ext/libfame/gstlibfame.c: (gst_fameenc_class_init):
* ext/musicbrainz/gsttrm.c: (gst_musicbrainz_class_init):
* ext/nas/nassink.c: (gst_nassink_class_init):
* ext/shout/gstshout.c: (gst_icecastsend_class_init):
* ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init):
* ext/sndfile/gstsf.c: (gst_sf_class_init):
* ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init),
(gst_swfdec_class_init):
* ext/tarkin/gsttarkindec.c: (gst_tarkindec_class_init):
* ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_class_init):
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_class_init):
* gst/chart/gstchart.c: (gst_chart_class_init):
* gst/colorspace/gstcolorspace.c: (gst_colorspace_class_init):
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init):
* gst/festival/gstfestival.c: (gst_festival_class_init):
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init):
* gst/filter/gstiir.c: (gst_iir_class_init):
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init):
* gst/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init):
* gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_class_init):
* gst/mpeg1sys/gstmpeg1systemencode.c:
(gst_system_encode_class_init):
* gst/mpeg1videoparse/gstmp1videoparse.c:
(gst_mp1videoparse_class_init):
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_class_init):
* gst/mpegaudioparse/gstmpegaudioparse.c:
(gst_mp3parse_class_init):
* gst/overlay/gstoverlay.c: (gst_overlay_class_init):
* gst/passthrough/gstpassthrough.c: (passthrough_class_init):
* gst/playondemand/gstplayondemand.c: (play_on_demand_class_init):
* gst/rtjpeg/gstrtjpegdec.c: (gst_rtjpegdec_class_init):
* gst/rtjpeg/gstrtjpegenc.c: (gst_rtjpegenc_class_init):
* gst/smooth/gstsmooth.c: (gst_smooth_class_init):
* gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init):
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init):
* gst/stereo/gststereo.c: (gst_stereo_class_init):
* gst/switch/gstswitch.c: (gst_switch_class_init):
* gst/tta/gstttadec.c: (gst_tta_dec_class_init):
* gst/tta/gstttaparse.c: (gst_tta_parse_class_init):
* gst/vbidec/gstvbidec.c: (gst_vbidec_class_init):
* gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init):
* gst/virtualdub/gstxsharpen.c: (gst_xsharpen_class_init):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_class_init):
* sys/cdrom/gstcdplayer.c: (cdplayer_class_init):
* sys/directsound/gstdirectsoundsink.c:
(gst_directsoundsink_class_init):
* sys/dxr3/dxr3audiosink.c: (dxr3audiosink_class_init):
* sys/dxr3/dxr3spusink.c: (dxr3spusink_class_init):
* sys/dxr3/dxr3videosink.c: (dxr3videosink_class_init):
* sys/qcam/gstqcamsrc.c: (gst_qcamsrc_class_init):
* sys/v4l2/gstv4l2colorbalance.c:
(gst_v4l2_color_balance_channel_class_init):
* sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_channel_class_init),
(gst_v4l2_tuner_norm_class_init):
* sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init):
Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2006-04-08 19:04:01 +0000 Stefan Kost <ensonic@users.sourceforge.net>
[MOVED FROM BAD] gst/: Fix more broken GObject macros
Original commit message from CVS:
* gst/colorspace/gstcolorspace.h:
* gst/deinterlace/gstdeinterlace.h:
* gst/passthrough/gstpassthrough.h:
* gst/y4m/gsty4mencode.h:
Fix more broken GObject macros
2006-04-06 11:35:26 +0000 j@bootlab.org <j@bootlab.org>
[MOVED FROM BAD] Unify the long descriptions in the plugin details (#337263).
Original commit message from CVS:
Patch by: j^ <j at bootlab dot org>
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/arts/gst_arts.c:
* ext/artsd/gstartsdsink.c:
* ext/audiofile/gstafparse.c:
* ext/audiofile/gstafsink.c:
* ext/audiofile/gstafsrc.c:
* ext/cdaudio/gstcdaudio.c:
* ext/directfb/dfbvideosink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/dts/gstdtsdec.c: (gst_dtsdec_base_init):
* ext/faac/gstfaac.c: (gst_faac_base_init):
* ext/faad/gstfaad.c:
* ext/gsm/gstgsmdec.c:
* ext/gsm/gstgsmenc.c:
* ext/hermes/gsthermescolorspace.c:
* ext/ivorbis/vorbisfile.c:
* ext/lcs/gstcolorspace.c:
* ext/libfame/gstlibfame.c:
* ext/libmms/gstmms.c: (gst_mms_base_init):
* ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init):
* ext/nas/nassink.c: (gst_nassink_base_init):
* ext/neon/gstneonhttpsrc.c:
* ext/polyp/polypsink.c: (gst_polypsink_base_init):
* ext/sdl/sdlaudiosink.c:
* ext/sdl/sdlvideosink.c:
* ext/shout/gstshout.c:
* ext/snapshot/gstsnapshot.c:
* ext/sndfile/gstsf.c:
* ext/tarkin/gsttarkindec.c:
* ext/tarkin/gsttarkinenc.c:
* ext/theora/theoradec.c:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init):
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init):
* gst/chart/gstchart.c:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init):
* gst/festival/gstfestival.c:
* gst/filter/gstiir.c:
* gst/filter/gstlpwsinc.c:
* gst/freeze/gstfreeze.c:
* gst/games/gstpuzzle.c: (gst_puzzle_base_init):
* gst/mixmatrix/mixmatrix.c:
* gst/mpeg1sys/gstmpeg1systemencode.c:
* gst/mpeg1videoparse/gstmp1videoparse.c:
* gst/mpeg2sub/gstmpeg2subt.c:
* gst/mpegaudioparse/gstmpegaudioparse.c:
* gst/multifilesink/gstmultifilesink.c:
* gst/overlay/gstoverlay.c:
* gst/passthrough/gstpassthrough.c:
* gst/playondemand/gstplayondemand.c:
* gst/qtdemux/qtdemux.c:
* gst/rtjpeg/gstrtjpegdec.c:
* gst/rtjpeg/gstrtjpegenc.c:
* gst/smooth/gstsmooth.c:
* gst/tta/gstttadec.c: (gst_tta_dec_base_init):
* gst/tta/gstttaparse.c: (gst_tta_parse_base_init):
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/virtualdub/gstxsharpen.c:
* gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init):
* gst/y4m/gsty4mencode.c:
Unify the long descriptions in the plugin details (#337263).
2006-04-01 10:09:11 +0000 Thomas Vander Stichele <thomas@apestaart.org>
* gst/y4m/gsty4mencode.c:
[MOVED FROM BAD] rework build; add translations for v4l2
Original commit message from CVS:
rework build; add translations for v4l2
2005-09-05 17:20:29 +0000 Jan Schmidt <thaytan@mad.scientist.com>
* gst/y4m/gsty4mencode.c:
[MOVED FROM BAD] Fix up all the state change functions.
Original commit message from CVS:
Fix up all the state change functions.
2005-07-05 10:51:49 +0000 Andy Wingo <wingo@pobox.com>
[MOVED FROM BAD] Way, way, way too many files: Remove crack comment from the 2000 era.
Original commit message from CVS:
2005-07-05 Andy Wingo <wingo@pobox.com>
* Way, way, way too many files:
Remove crack comment from the 2000 era.
2005-01-14 18:36:42 +0000 Stéphane Loeuillet <gstreamer@leroutier.net>
[MOVED FROM BAD] I'm a bad boy. using /1001. to force C to do float division and not integer division (as it did in my last commit)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
I'm a bad boy. using /1001. to force C to do float division
and not integer division (as it did in my last commit)
Thanks to David I. Lehn for pointing this mistake.
2005-01-14 12:27:22 +0000 Stéphane Loeuillet <gstreamer@leroutier.net>
[MOVED FROM BAD] replace framerate aproximations by their real value (24000/1001, 30000/1001, 60000/1001)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* ext/libfame/gstlibfame.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
replace framerate aproximations by their real value
(24000/1001, 30000/1001, 60000/1001)
Finish fixing bug #164049
2004-07-27 21:41:30 +0000 Steve Lhomme <steve.lhomme@free.fr>
* gst/y4m/y4menc.vcproj:
[MOVED FROM BAD] more working plugins
Original commit message from CVS:
more working plugins
2004-07-27 09:57:33 +0000 Steve Lhomme <steve.lhomme@free.fr>
* gst/y4m/y4menc.vcproj:
[MOVED FROM BAD] rename GStreamer-0.8.lib to libgstreamer.lib
Original commit message from CVS:
rename GStreamer-0.8.lib to libgstreamer.lib
2004-07-27 09:48:51 +0000 Steve Lhomme <steve.lhomme@free.fr>
* gst/y4m/y4menc.vcproj:
[MOVED FROM BAD] avoid problems with math.h, fix release dependancy
Original commit message from CVS:
avoid problems with math.h, fix release dependancy
2004-07-26 13:20:11 +0000 Steve Lhomme <steve.lhomme@free.fr>
* gst/y4m/y4menc.vcproj:
[MOVED FROM BAD] more plugins supported under windows
Original commit message from CVS:
more plugins supported under windows
2004-04-01 11:48:27 +0000 Jan Schmidt <thaytan@mad.scientist.com>
* gst/y4m/gsty4mencode.c:
[MOVED FROM BAD] a52dec: Use a debug category, Output timestamps correctly
Original commit message from CVS:
a52dec: Use a debug category, Output timestamps correctly
Emit tag info, Handle events, tell liba52dec about cpu
c
|