void HandleLoadCameraEvent(LoadCameraEvent e)
        {
            if (OpenedProject == null || OpenedProjectType == ProjectType.FakeCaptureProject)
            {
                return;
            }

            if (e.CameraTlEvent != null)
            {
                Time seekTime = Player.CurrentTime - e.CameraTlEvent.Start;
                seekTime = seekTime.Clamp(new Time(0), e.CameraTlEvent.Stop);
                LoadCameraPlay(e.CameraTlEvent, seekTime, Player.Playing);
            }
            else if (Player != null)
            {
                Player.UnloadCurrentEvent();
            }
        }
        public void TestLoadCameraPlay_WithCameraTlEvent()
        {
            // Arrange
            MediaFileSet mfs2 = new MediaFileSet ();
            mfs2.Add (new MediaFile {
                FilePath = "test1",
                VideoWidth = 320,
                VideoHeight = 240,
                Par = 1,
                Duration = new Time (100)
            });
            LoadCameraEvent lce = new LoadCameraEvent () {
                CameraTlEvent = new TimelineEvent () {
                    FileSet = mfs2,
                    Start = new Time (0),
                    Stop = mfs2.FirstOrDefault ().Duration
                }
            };

            // Action
            App.Current.EventsBroker.Publish<LoadCameraEvent> (lce);

            // Assert
            mockPlayerController.Verify (player => player.UnloadCurrentEvent (), Times.Never ());
            mockPlayerController.Verify (player => player.Seek (It.IsAny<double> ()), Times.Never ());
        }
        public void TestLoadCameraPlay_CameraTlEventIsNull()
        {
            // Arrange
            LoadCameraEvent lce = new LoadCameraEvent () { CameraTlEvent = null };

            // Action
            App.Current.EventsBroker.Publish<LoadCameraEvent> (lce);

            // Assert
            mockPlayerController.Verify (player => player.UnloadCurrentEvent (), Times.Once ());
            mockPlayerController.Verify (player => player.Seek (It.IsAny<double> ()), Times.Never ());
        }
 public void LoadCamera(LoadCameraEvent e, SpectatorCameraNode camera, [JoinAll] Optional <SingleNode <FollowedBattleUserComponent> > followedUser, [JoinAll] ICollection <UserNode> users)
 {
Example #5
0
        void HandleLoadCameraEvent(LoadCameraEvent e)
        {
            if (OpenedProject == null || OpenedProjectType == ProjectType.FakeCaptureProject) {
                return;
            }

            if (e.CameraTlEvent != null) {
                Time seekTime = Player.CurrentTime - e.CameraTlEvent.Start;
                seekTime = seekTime.Clamp (new Time (0), e.CameraTlEvent.Stop);
                LoadCameraPlay (e.CameraTlEvent, seekTime, Player.Playing);
            } else if (Player != null) {
                Player.UnloadCurrentEvent ();
            }
        }