private void OnStreamReceived(object sender, Session.StreamReceivedEventArgs e) { if (Session == null || _subscribers.Any(x => x.Stream?.StreamId == e.P1?.StreamId)) { return; } using (var builder = new Subscriber.Builder(CrossCurrentActivity.Current.AppContext, e.P1)) { var subscriberKit = builder.Build(); subscriberKit.SubscribeToAudio = IsAudioSubscriptionEnabled; subscriberKit.SubscribeToVideo = IsVideoSubscriptionEnabled; subscriberKit.SetStyle(BaseVideoRenderer.StyleVideoScale, BaseVideoRenderer.StyleVideoFill); subscriberKit.Connected += OnSubscriberConnected; subscriberKit.StreamDisconnected += OnStreamDisconnected; subscriberKit.SubscriberDisconnected += OnSubscriberDisconnected; subscriberKit.VideoDataReceived += OnSubscriberVideoDataReceived; subscriberKit.VideoDisabled += OnSubscriberVideoDisabled; subscriberKit.VideoEnabled += OnSubscriberVideoEnabled; Session.Subscribe(subscriberKit); var streamId = e.P1.StreamId; _subscribers.Add(subscriberKit); _subscriberStreamIds.Add(streamId); } }
private void OnStreamReceived(object sender, Session.StreamReceivedEventArgs e) { lock (_locker) { if (Session == null || Subscribers != null && Subscribers.ContainsKey(e.P1.StreamId)) { return; } Stream stream = e.P1; var builder = new Subscriber.Builder(CrossCurrentActivity.Current.AppContext, stream); SubscriberKit subscriberKit = builder.Build(); subscriberKit.Connected += OnSubscriberConnected; subscriberKit.StreamDisconnected += OnStreamDisconnected; subscriberKit.SubscriberDisconnected += OnSubscriberDisconnected; subscriberKit.VideoDisabled += OnSubscriberVideoDisabled; subscriberKit.VideoEnabled += OnSubscriberVideoEnabled; subscriberKit.SetStyle(BaseVideoRenderer.StyleVideoScale, BaseVideoRenderer.StyleVideoFill); subscriberKit.SubscribeToAudio = IsAudioSubscriptionEnabled; subscriberKit.SubscribeToVideo = IsVideoSubscriptionEnabled; Session.Subscribe(subscriberKit); Subscribers?.Add(stream.StreamId, subscriberKit); OnSubscriberAdded(stream.StreamId); builder.Dispose(); } }
void OnStreamCreated(object sender, Session.StreamReceivedEventArgs e) { var stream = e.P1; lock (syncLock) { if (Subscriber != null || Session == null) { return; } Subscriber = new Subscriber(Context, stream); HandleSubscriptionEvents(); Subscriber.SetStyle(BaseVideoRenderer.StyleVideoScale, BaseVideoRenderer.StyleVideoFill); Session.Subscribe(Subscriber); } }
private void OnStreamCreated(object sender, Session.StreamReceivedEventArgs e) { lock (_locker) { if (Session == null || SubscriberKit != null) { return; } SubscriberKit = new Subscriber.Builder(CrossCurrentActivity.Current.AppContext, e.P1).Build(); SubscriberKit.Connected += OnSubscriberDidConnectToStream; SubscriberKit.VideoDisabled += OnSubscriberVideoDisabled; SubscriberKit.VideoEnabled += OnSubscriberVideoEnabled; SubscriberKit.SetStyle(BaseVideoRenderer.StyleVideoScale, BaseVideoRenderer.StyleVideoFill); SubscriberKit.SubscribeToAudio = IsAudioSubscriptionEnabled; SubscriberKit.SubscribeToVideo = IsVideoSubscriptionEnabled; SubscriberUpdated?.Invoke(); Session.Subscribe(SubscriberKit); } }
private void OnStreamCreated(object sender, Session.StreamReceivedEventArgs e) { Subscribe(e.P1); }