From 23552d54342c4b6c2235a166238772047e8a6f30 Mon Sep 17 00:00:00 2001 From: cloudwebrtc Date: Wed, 21 Dec 2022 20:49:37 +0800 Subject: [PATCH] fix: Fix the called party not sending screensharing correctly. --- lib/src/voip/call.dart | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/lib/src/voip/call.dart b/lib/src/voip/call.dart index 8ed6c19a..713fc1a1 100644 --- a/lib/src/voip/call.dart +++ b/lib/src/voip/call.dart @@ -940,10 +940,20 @@ class CallSession { ..transferee = false; final metadata = SDPStreamMetadata({ - localUserMediaStream!.stream!.id: SDPStreamPurpose( - purpose: SDPStreamMetadataPurpose.Usermedia, - audio_muted: localUserMediaStream!.stream!.getAudioTracks().isEmpty, - video_muted: localUserMediaStream!.stream!.getVideoTracks().isEmpty) + if (localUserMediaStream != null) + localUserMediaStream!.stream!.id: SDPStreamPurpose( + purpose: SDPStreamMetadataPurpose.Usermedia, + audio_muted: + localUserMediaStream!.stream!.getAudioTracks().isEmpty, + video_muted: + localUserMediaStream!.stream!.getVideoTracks().isEmpty), + if (localScreenSharingStream != null) + localScreenSharingStream!.stream!.id: SDPStreamPurpose( + purpose: SDPStreamMetadataPurpose.Screenshare, + audio_muted: + localScreenSharingStream!.stream!.getAudioTracks().isEmpty, + video_muted: + localScreenSharingStream!.stream!.getVideoTracks().isEmpty), }); await pc!.setLocalDescription(answer);