diff options
author | Marvin W <git@larma.de> | 2021-04-29 15:46:06 +0200 |
---|---|---|
committer | Marvin W <git@larma.de> | 2021-04-29 15:53:59 +0200 |
commit | 3880628de4785db4c0a03a79a0c486507fe9b1a8 (patch) | |
tree | 488180882a2a60576c68e688b743acfaff8d32f7 /plugins/rtp/src/plugin.vala | |
parent | 328c3cf37f296f4519829afd03d21f94ea4153e5 (diff) | |
download | dino-3880628de4785db4c0a03a79a0c486507fe9b1a8.tar.gz dino-3880628de4785db4c0a03a79a0c486507fe9b1a8.zip |
Video optimizations
Diffstat (limited to 'plugins/rtp/src/plugin.vala')
-rw-r--r-- | plugins/rtp/src/plugin.vala | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/plugins/rtp/src/plugin.vala b/plugins/rtp/src/plugin.vala index 40ad1e0f..f0ad7db2 100644 --- a/plugins/rtp/src/plugin.vala +++ b/plugins/rtp/src/plugin.vala @@ -65,6 +65,9 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { } rtpbin.pad_added.connect(on_rtp_pad_added); rtpbin.@set("latency", 100); + rtpbin.@set("do-lost", true); + rtpbin.@set("do-sync-event", true); + rtpbin.@set("drop-on-latency", true); rtpbin.connect("signal::request-pt-map", request_pt_map, this); pipe.add(rtpbin); @@ -160,6 +163,17 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { case Gst.MessageType.QOS: // Ignore break; + case Gst.MessageType.LATENCY: + if (message.src != null && message.src.name != null && message.src is Gst.Element) { + Gst.Query latency_query = new Gst.Query.latency(); + if (((Gst.Element)message.src).query(latency_query)) { + bool live; + Gst.ClockTime min_latency, max_latency; + latency_query.parse_latency(out live, out min_latency, out max_latency); + debug("Latency message from %s: live=%s, min_latency=%s, max_latency=%s", message.src.name, live.to_string(), min_latency.to_string(), max_latency.to_string()); + } + } + break; default: debug("Pipe bus message: %s", message.type.to_string()); break; |