コード例 #1
0
        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;
            });
        }
コード例 #2
0
ファイル: CallManager.cs プロジェクト: tf2017/toxofone
        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);
            }
        }
コード例 #3
0
ファイル: ToxAvModel.cs プロジェクト: ShaunHolt/OneTox
 private void VideoFrameReceivedHandler(object sender, ToxAvEventArgs.VideoFrameEventArgs e)
 {
     VideoFrameReceived?.Invoke(this, e);
 }