sdp: Add new constructor, sdp_message_from_text
authorMathieu Duponchelle <mathieu@centricular.com>
Mon, 11 Jun 2018 16:32:28 +0000 (18:32 +0200)
committerMathieu Duponchelle <mathieu@centricular.com>
Mon, 11 Jun 2018 18:21:08 +0000 (20:21 +0200)
Helper function for bindings, in python for example
users can now replace:

res, msg = GstSdp.SDPMessage.new()
GstSdp.sdp_message_parse_buffer(bytes(text.encode()), msg)

with:

res, msg = GstSdp.SDPMessage.new_from_text(text)

https://bugzilla.gnome.org/show_bug.cgi?id=796563

docs/libs/gst-plugins-base-libs-sections.txt
gst-libs/gst/sdp/gstsdpmessage.c
gst-libs/gst/sdp/gstsdpmessage.h

index b28864e..04af5c4 100644 (file)
@@ -1983,6 +1983,7 @@ GstSDPMedia
 GstSDPMessage
 
 gst_sdp_message_new
+gst_sdp_message_new_from_text
 gst_sdp_message_copy
 gst_sdp_message_init
 gst_sdp_message_uninit
index 791c7fa..965bd09 100644 (file)
@@ -237,6 +237,30 @@ gst_sdp_message_new (GstSDPMessage ** msg)
 }
 
 /**
+ * gst_sdp_message_new_from_text:
+ * @msg: (out) (transfer full): pointer to new #GstSDPMessage
+ * @text: A dynamically allocated string representing the SDP description
+ *
+ * Parse @text and create a new SDPMessage from these.
+ *
+ * Returns: a #GstSDPResult.
+ * Since: 1.16
+ */
+GstSDPResult
+gst_sdp_message_new_from_text (const gchar * text, GstSDPMessage ** msg)
+{
+  GstSDPResult res;
+
+  if ((res = gst_sdp_message_new (msg)) != GST_SDP_OK)
+    return res;
+
+  res =
+      gst_sdp_message_parse_buffer ((const guint8 *) text, strlen (text), *msg);
+
+  return res;
+}
+
+/**
  * gst_sdp_message_init:
  * @msg: a #GstSDPMessage
  *
index a16ccd2..7049f2c 100644 (file)
@@ -340,6 +340,9 @@ GstSDPResult            gst_sdp_message_parse_buffer        (const guint8 *data,
 GST_SDP_API
 gchar*                  gst_sdp_message_as_text             (const GstSDPMessage *msg);
 
+GST_SDP_API
+GstSDPResult            gst_sdp_message_new_from_text       (const gchar *text, GstSDPMessage ** msg);
+
 /* convert from/to uri */
 
 GST_SDP_API