private void ToxAv_OnVideoFrameReceived(object sender, ToxAvEventArgs.VideoFrameEventArgs e) { var source = VideoUtils.ToxAvFrameToBitmap(e.Frame); MainWindow.Instance.UInvoke(() => { var friend = MainWindow.Instance.ViewModel.CurrentFriendListView.FindFriend(e.FriendNumber); if (friend == null) { return; } (friend.ConversationView as ConversationViewModel).CurrentFrame = source; }); }
private void OnToxAvVideoFrameReceived(object sender, ToxAvEventArgs.VideoFrameEventArgs e) { Bitmap videoFrame = VideoUtils.ToxAvFrameToBitmap(e.Frame, this.cpuHasSsse3); if (videoFrame == null) { return; } if (this.callInfo == null || !this.callInfo.CanReceiveVideo) { videoFrame.Dispose(); return; } try { MainForm.Instance.NotifyToxAvVideoFrameReceived(new VideoFrameInfo(e.FriendNumber, videoFrame)); } catch (Exception ex) { Logger.Log(LogLevel.Error, ex.Message); } }
private void VideoFrameReceivedHandler(object sender, ToxAvEventArgs.VideoFrameEventArgs e) { VideoFrameReceived?.Invoke(this, e); }