Wim Taymans
87f7d6b9bf
rtp: include downstream latency in SR calculations
...
When we make a mapping between an RTP timestamp and an NTP timestamp, include
the downstream latency applied to the sinks. This makes it possible to have
both sinks run with different latencies and still have correct sync on the
client. It also is more correct because the RTP timestamp in the SR report will
actually correspond more closely to the NTP time it was sent on the server.
For pipelines with high latency on the sender side, this actually allows a
GStreamer receiver to perform synchronisation instead of dropping the RTCP
packets.
2013-01-07 15:45:10 +01:00
Wim Taymans
c631ed3300
rtpsession: don't cast event functions
...
There is no need to cast the event functions and only causes problems later when
we change the signature later and things silently compiles wrong code.
2013-01-07 14:25:14 +01:00
Wim Taymans
8dcde8b3ea
rtp: more debug
2013-01-07 14:23:34 +01:00
Wim Taymans
6b7d05ac57
rtpsession: improve debug
2013-01-07 14:22:48 +01:00
Tim-Philipp Müller
8a3b116d1f
docs: add rtpmux and rtpdtmfmux to plugin docs
...
https://bugzilla.gnome.org/show_bug.cgi?id=629117
2012-12-16 16:36:39 +00:00
Tim-Philipp Müller
3295b5d791
rtpmanager: move rtpmux and rtpdtmfmux elements from -bad
...
https://bugzilla.gnome.org/show_bug.cgi?id=629117
2012-12-16 16:36:39 +00:00
Tim-Philipp Müller
de204ba754
rtpmux: Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-12-16 16:36:39 +00:00
Tim-Philipp Müller
2778a1757f
rtpmux: Use gst_element_class_set_static_metadata()
...
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-12-16 16:36:39 +00:00
Olivier Crête
15dfdc58d4
rtpmux: Misc fix for 0.11
...
Convert the incoming caps before proxying them
Clear the last_pad when going to ready
tests: Implement accept_caps, don't leak event
2012-12-16 16:36:38 +00:00
Wim Taymans
83262be703
rtpmux: update for RTP buffer api changes
2012-12-16 16:36:38 +00:00
Sebastian Dröge
f17064a8ea
rtpmux: Update for GST_PLUGIN_DEFINE() API changes
2012-12-16 16:36:34 +00:00
Wim Taymans
c86156ad8f
rtpmux: fix compilation
2012-12-16 16:35:36 +00:00
Wim Taymans
6826bbb6da
rtpmux: fix for caps api changes
2012-12-16 16:35:33 +00:00
Matej Knopp
bb345a584d
rtpmux: Fix compiler warnings
2012-12-16 16:35:29 +00:00
Olivier Crête
af4e999c59
rtpmux: Unref non-forwarded events
...
Also, don't unref forwarded ones
2012-12-16 16:35:29 +00:00
Olivier Crête
a8789d1df1
rtpmux: resync iterator on resync
2012-12-16 16:35:29 +00:00
Olivier Crête
0c54079af5
rtpmux: Re-push sticky events on input pad change
2012-12-16 16:35:29 +00:00
Olivier Crête
21831b430f
rtpmux: Don't leak gvalue from iterator
2012-12-16 16:35:29 +00:00
Wim Taymans
ccc4b960fc
rtpmux: more porting
2012-12-16 16:35:26 +00:00
Olivier Crête
f20a6b1d16
rtpmux: port to 0.11
2012-12-16 16:35:26 +00:00
Wim Taymans
35b6668fb6
rtpmux: make request pads take _%u
2012-12-16 16:35:22 +00:00
Olivier Crête
aa3607ef5c
rtpdtmfmux: Add last-stop to dtmf-event upstream events
...
Add the running time of the last outputted buffer to the
upstream "dtmf-event" events so that the dtmf source does not
leave a gap.
2012-12-16 16:35:22 +00:00
Edward Hervey
d137482fe5
rtpmux: Remove dead assignments
2012-12-16 16:35:22 +00:00
Stefan Kost
55aae6bfab
rtpmux: add missing G_PARAM_STATIC_STRINGS flags
...
Canonicalize property names as needed.
2012-12-16 16:35:15 +00:00
Olivier Crête
9674d5cc23
rtpmux: Improve documentation
...
Add an example pipeline, and try to explain a bit more what it does.
2012-12-16 16:35:15 +00:00
Stefan Kost
ca27a279ba
rtpdtmfmux: remove unused variable
2012-12-16 16:35:15 +00:00
Stefan Kost
c85dceeacb
rtpdtmfmux: remove unused signal boilerplate
2012-12-16 16:35:15 +00:00
Stefan Kost
2353f8d852
rtpmux: no need to ref pad in _chain()
2012-12-16 16:35:15 +00:00
Youness Alaoui
e42d2eebcb
rtpmux: Unlock the right mutex
...
The mutex locked is for the 'mux' object, but we unlock the
pad, which means that if the rtpmux gets a flush, then the
object lock will stay locked forever, causing it to freeze
the next time it tries to take it.
Fixes bug #627991
2012-12-16 16:35:15 +00:00
Olivier Crête
78d1ebac9e
rtpmux: Add support for GstBufferList
...
Factor out most of the buffer handling and implement a chain_list
function. Also, the DTMF muxer has been modified to just have a
function to accept or reject a buffer instead of having to subclass
both chain and chain_list.
2012-12-16 16:35:15 +00:00
Olivier Crête
c00f14419b
rtpmux: Don't leak invalid buffers
2012-12-16 16:35:15 +00:00
Tim-Philipp Müller
a45429d81d
rtpmux: fix missing debug log message argument
2012-12-16 16:35:15 +00:00
Olivier Crête
4a8d0243b5
rtpdtmfmux: Add some debug messages
2012-12-16 16:35:14 +00:00
Olivier Crête
423ce98666
rtpdtmfmux: Remove stream-lock event handling
2012-12-16 16:35:14 +00:00
Olivier Crête
a4500c0e74
rtpdtmfmux: Update doc for simplification
2012-12-16 16:35:14 +00:00
Olivier Crête
70097866de
rtpdtmfmux: Drop buffers on non-priority sinks when something is incoming on the priority sink
2012-12-16 16:35:14 +00:00
Olivier Crête
f6548fe9b6
rtpdtmfmux: Add priority sink pads
2012-12-16 16:35:14 +00:00
Olivier Crête
2bcea1537b
rtpdtmfmux: Cleanup event function
2012-12-16 16:35:14 +00:00
Olivier Crête
8e58646f5c
rtpmux: Aggregate incoming segments
2012-12-16 16:35:14 +00:00
Olivier Crête
7be57cac3a
rtpdtmfmux: Update documentation
2012-12-16 16:35:14 +00:00
Olivier Crête
e590fc1f32
rtpmux: Simplify request pad creation
2012-12-16 16:35:14 +00:00
Benjamin Otte
2867e00225
rtpmux: gst_element_class_set_details => gst_element_class_set_details_simple
2012-12-16 16:35:10 +00:00
unknown
fb7266884d
rtpmux: update the current_ssrc from the caps
...
Fixes #604101
2012-12-16 16:33:47 +00:00
Håvard Graff
eab65e84ca
rtpmux: release pads when disposing
...
Because of an allocated priv (GstRTPMuxPadPrivate), the element will
leak memory if not gst_rtp_mux_release_pad() is called. This would
previously only happen if release_request_pad() was called explicitly,
somthing that should not be neccesary.
Fixes #604099
2012-12-16 16:33:46 +00:00
Wim Taymans
0d54122804
dtmfmux: method name cleanups
2012-12-16 16:33:46 +00:00
Olivier Crête
3841cc74cf
rtpmux: Don't ignore requested pad name
2012-12-16 16:33:46 +00:00
Olivier Crête
d93295ff9d
rtpmux: Remove empty finalize
2012-12-16 16:33:46 +00:00
Olivier Crête
5e90a4e86b
rtpmux: Free the pad private data on pad release
...
Free the pad private data on pad release instead of using a weak ref,
which is not thread safe. Also, lock the content of the pad private using the element's
object lock.
2012-12-16 16:33:46 +00:00
Olivier Crête
4be63c9add
rtpmux: Reject wrong caps
2012-12-16 16:33:46 +00:00
Olivier Crête
0111bafb3a
rtpmux: Fix leak Fixed a leak discovered by Laurent Glayal <spegle@yahoo.fr>
2012-12-16 16:33:46 +00:00