srt: Set latency property on SRT socket
authorOlivier Crête <olivier.crete@collabora.com>
Fri, 23 Aug 2019 22:40:49 +0000 (18:40 -0400)
committerTim-Philipp Müller <tim@centricular.com>
Sat, 31 Aug 2019 23:22:05 +0000 (00:22 +0100)
ext/srt/gstsrtobject.c

index 9a255d0..cbc3cfd 100644 (file)
@@ -162,6 +162,18 @@ gst_srt_object_set_common_params (SRTSOCKET sock, GstSRTObject * srtobject,
     }
   }
 
+  {
+    int latency;
+
+    if (!gst_structure_get_int (srtobject->parameters, "latency", &latency))
+      latency = GST_SRT_DEFAULT_LATENCY;
+    if (srt_setsockopt (sock, 0, SRTO_LATENCY, &latency, sizeof (int))) {
+      g_set_error (error, GST_LIBRARY_ERROR, GST_LIBRARY_ERROR_SETTINGS,
+          "failed to set latency (reason: %s)", srt_getlasterror_str ());
+      return FALSE;
+    }
+  }
+
   return TRUE;
 }