mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-28 22:41:02 +00:00
rtpgccbwe: Don't reset PTS/DTS to None
The element is usually placed before `rtpsession`, and `rtpsession` needs the PTS/DTS for correctly determining the running time. The running time is then used to produce correct RTCP SR, and to potentially update an NTP-64 RTP header extension if existing on the packets. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/496 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1476>
This commit is contained in:
parent
2f2aac55a3
commit
3679db5740
1 changed files with 1 additions and 4 deletions
|
@ -1146,15 +1146,12 @@ impl ObjectSubclass for BandwidthEstimator {
|
|||
fn with_class(klass: &Self::Class) -> Self {
|
||||
let templ = klass.pad_template("sink").unwrap();
|
||||
let sinkpad = gst::Pad::builder_from_template(&templ)
|
||||
.chain_function(|_pad, parent, mut buffer| {
|
||||
.chain_function(|_pad, parent, buffer| {
|
||||
BandwidthEstimator::catch_panic_pad_function(
|
||||
parent,
|
||||
|| Err(gst::FlowError::Error),
|
||||
|this| {
|
||||
let mut state = this.state.lock().unwrap();
|
||||
let mutbuf = buffer.make_mut();
|
||||
mutbuf.set_pts(None);
|
||||
mutbuf.set_dts(None);
|
||||
state.buffers.push_front(buffer);
|
||||
|
||||
state.flow_return
|
||||
|
|
Loading…
Reference in a new issue