コード例 #1
0
        public void MovieConfigurationDone(MovieConfiguration sender)
        {
            Menu_ReplayList(null, null);
            if (!sender.Finish)
            {
                return;
            }
            videoRecordingController                = new MovieRecordingController();
            videoRecordingController.Quality        = sender.Quality;
            videoRecordingController.OutputFileName = sender.FileName;

            MoviePostProcessor mpp = new MoviePostProcessor();

            mpp.PostProcessingDone += OnMoviePostProcessingDone;
            mpp.VideoRecorder       = videoRecordingController;
            mpp.DoCut += DoCutMovie;
            videoRecordingController.DoneEvent += mpp.OnRecordingDone;


            UpdateStatusBar();
            if (toExport != null)
            {
                PlayRecord(toExport);
            }
            Thread t = new Thread(new ThreadStart(videoRecordingController.StartRecording));

            t.Name         = "Movie";
            t.IsBackground = true;
            t.Start();
            StartVideoRecordingMode();
        }
コード例 #2
0
 public void DoCutMovie(MoviePostProcessor sender, MovieCutter cutter)
 {
     movieProcessor      = sender;
     cutter.CuttingDown += CuttingDown;
     SwitchMainContent(cutter);
     LockMainView = true;
     this.Activate();
 }
コード例 #3
0
 private void EndVideoRecordingMode()
 {
     if (videoRecordingController.RecordingThread.IsAlive)
     {
         videoRecordingController.RecordingThread.Abort();
     }
     videoRecordingController = null;
     movieProcessor           = null;
     UpdateStatusBar();
     Menu_VideoRecordingModeButton.LockDown = false;
     LockMainView = false;
     Menu_ReplayList(null, null);
 }
コード例 #4
0
 private void OnMoviePostProcessingDone(MoviePostProcessor processor, Boolean isSuccess)
 {
     LockMainView = false;
     if (isSuccess)
     {
         ShowNotifyUserMessage(Utilities.GetString("MovieRecordingSuccessed"));
         Nullable <Boolean> result = YesNoPopupWindow.AskQuestion(this, String.Format(Utilities.GetString("MovieRecordingPlayNow"), processor.FilePath));
         if (result == true)
         {
             Process.Start(videoRecordingController.OutputFilePath);
         }
     }
     else
     {
         ShowExportFailedMessage();
     }
     EndVideoRecordingMode();
 }