From 0db1ff532d46be757c193b4dc3f0742c19d2d14d Mon Sep 17 00:00:00 2001 From: Seungmin Kim <66779-ehf@users.noreply.gitlab.freedesktop.org> Date: Mon, 28 Nov 2022 14:54:27 +0000 Subject: [PATCH] Change GstSdp.sdp_message_parse_buffer to GstSdp.SDPMessage.new_from_text in examples Part-of: --- subprojects/gst-examples/webrtc/check/validate/client.py | 5 +---- subprojects/gst-examples/webrtc/check/validate/webrtc_validate.py | 3 +-- subprojects/gst-examples/webrtc/janus/janusvideoroom.py | 4 +--- subprojects/gst-examples/webrtc/sendrecv/gst/webrtc_sendrecv.py | 6 ++---- 4 files changed, 5 insertions(+), 13 deletions(-) diff --git a/subprojects/gst-examples/webrtc/check/validate/client.py b/subprojects/gst-examples/webrtc/check/validate/client.py index 4a19982..9374537 100644 --- a/subprojects/gst-examples/webrtc/check/validate/client.py +++ b/subprojects/gst-examples/webrtc/check/validate/client.py @@ -88,10 +88,7 @@ class WebRTCBinObserver(WebRTCObserver): return new_state def _deepcopy_session_description(self, desc): - # XXX: passing 'offer' to both a promise and an action signal without - # a deepcopy will segfault... - new_sdp = GstSdp.SDPMessage.new()[1] - GstSdp.sdp_message_parse_buffer(bytes(desc.sdp.as_text().encode()), new_sdp) + _, new_sdp = GstSdp.SDPMessage.new_from_text(desc.sdp.as_text()) return GstWebRTC.WebRTCSessionDescription.new(desc.type, new_sdp) def _on_offer_created(self, promise, element): diff --git a/subprojects/gst-examples/webrtc/check/validate/webrtc_validate.py b/subprojects/gst-examples/webrtc/check/validate/webrtc_validate.py index 67f3aeb..1a82181 100644 --- a/subprojects/gst-examples/webrtc/check/validate/webrtc_validate.py +++ b/subprojects/gst-examples/webrtc/check/validate/webrtc_validate.py @@ -170,8 +170,7 @@ class WebRTCApplication(object): def have_json(msg): if 'sdp' in msg: sdp = msg['sdp'] - res, sdpmsg = GstSdp.SDPMessage.new() - GstSdp.sdp_message_parse_buffer(bytes(sdp['sdp'].encode()), sdpmsg) + res, sdpmsg = GstSdp.SDPMessage.new_from_text(sdp['sdp']) sdptype = GstWebRTC.WebRTCSDPType.ANSWER if sdp['type'] == 'answer' else GstWebRTC.WebRTCSDPType.OFFER desc = GstWebRTC.WebRTCSessionDescription.new(sdptype, sdpmsg) self.client.set_remote_description(desc) diff --git a/subprojects/gst-examples/webrtc/janus/janusvideoroom.py b/subprojects/gst-examples/webrtc/janus/janusvideoroom.py index 1364864..ab52b60 100644 --- a/subprojects/gst-examples/webrtc/janus/janusvideoroom.py +++ b/subprojects/gst-examples/webrtc/janus/janusvideoroom.py @@ -358,9 +358,7 @@ class WebRTCClient: sdp = msg['sdp'] assert(msg['type'] == 'answer') print ('Received answer:\n%s' % sdp) - res, sdpmsg = GstSdp.SDPMessage.new() - GstSdp.sdp_message_parse_buffer(bytes(sdp.encode()), sdpmsg) - + res, sdpmsg = GstSdp.SDPMessage.new_from_text(sdp) answer = GstWebRTC.WebRTCSessionDescription.new(GstWebRTC.WebRTCSDPType.ANSWER, sdpmsg) promise = Gst.Promise.new() self.webrtc.emit('set-remote-description', answer, promise) diff --git a/subprojects/gst-examples/webrtc/sendrecv/gst/webrtc_sendrecv.py b/subprojects/gst-examples/webrtc/sendrecv/gst/webrtc_sendrecv.py index 6c5442b..cfea3b7 100755 --- a/subprojects/gst-examples/webrtc/sendrecv/gst/webrtc_sendrecv.py +++ b/subprojects/gst-examples/webrtc/sendrecv/gst/webrtc_sendrecv.py @@ -224,16 +224,14 @@ class WebRTCClient: sdp = msg['sdp']['sdp'] if msg['sdp']['type'] == 'answer': print_status('Received answer:\n%s' % sdp) - res, sdpmsg = GstSdp.SDPMessage.new() - GstSdp.sdp_message_parse_buffer(bytes(sdp.encode()), sdpmsg) + res, sdpmsg = GstSdp.SDPMessage.new_from_text(sdp) answer = GstWebRTC.WebRTCSessionDescription.new(GstWebRTC.WebRTCSDPType.ANSWER, sdpmsg) promise = Gst.Promise.new() self.webrtc.emit('set-remote-description', answer, promise) promise.interrupt() # we don't care about the result, discard it else: print_status('Received offer:\n%s' % sdp) - res, sdpmsg = GstSdp.SDPMessage.new() - GstSdp.sdp_message_parse_buffer(bytes(sdp.encode()), sdpmsg) + res, sdpmsg = GstSdp.SDPMessage.new_from_text(sdp) if not self.webrtc: print_status('Incoming call: received an offer, creating pipeline') -- 2.7.4