From a4a27fdca82d7e1e2ade89bc78734e3e6fd61943 Mon Sep 17 00:00:00 2001 From: Mathieu Duponchelle Date: Mon, 11 Jun 2018 18:32:28 +0200 Subject: [PATCH] sdp: Add new constructor, sdp_message_from_text 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 | 1 + gst-libs/gst/sdp/gstsdpmessage.c | 24 ++++++++++++++++++++++++ gst-libs/gst/sdp/gstsdpmessage.h | 3 +++ 3 files changed, 28 insertions(+) diff --git a/docs/libs/gst-plugins-base-libs-sections.txt b/docs/libs/gst-plugins-base-libs-sections.txt index b28864e..04af5c4 100644 --- a/docs/libs/gst-plugins-base-libs-sections.txt +++ b/docs/libs/gst-plugins-base-libs-sections.txt @@ -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 diff --git a/gst-libs/gst/sdp/gstsdpmessage.c b/gst-libs/gst/sdp/gstsdpmessage.c index 791c7fa..965bd09 100644 --- a/gst-libs/gst/sdp/gstsdpmessage.c +++ b/gst-libs/gst/sdp/gstsdpmessage.c @@ -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 * diff --git a/gst-libs/gst/sdp/gstsdpmessage.h b/gst-libs/gst/sdp/gstsdpmessage.h index a16ccd2..7049f2c 100644 --- a/gst-libs/gst/sdp/gstsdpmessage.h +++ b/gst-libs/gst/sdp/gstsdpmessage.h @@ -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 -- 2.7.4