示例#1
0
        private void Form1_Load(object sender, EventArgs e)
        {
            writer.VideoCodec = VideoCodec.H264;
            writer.Width      = Screen.PrimaryScreen.Bounds.Width;
            writer.Height     = Screen.PrimaryScreen.Bounds.Height;
            writer.BitRate    = 1000000;
            writer.Open("D:/DemoVideo.mp4");

            RecordTimer.Interval = 40;
            RecordTimer.Start();
        }
示例#2
0
        private void button3_Click(object sender, EventArgs e)
        {
            var recordFullPath = new StringBuilder(m_FolderName + @"\\SessionRecord-" + m_RecourdCount + ".wmv");

            // Check if we recording or not
            if (m_isRecord)
            {
                RecordTimer.Stop();
                screenCaptureJob.Stop();
                var chooseLessonNameForm = new LessonNameForm(recordFullPath.ToString(), m_userName, m_courseId);
                this.Hide();
                chooseLessonNameForm.ShowDialog();
                this.Show();
                button2.Enabled     = true;
                button1.Enabled     = true;
                m_isRecord          = false;
                button3.Text        = "Start Recording!";
                pictureBox3.Visible = false;
                m_RecourdCount++;
                return;
            }
            else
            {
                button2.Enabled = false;
                button1.Enabled = false;
                m_isRecord      = true;
                button3.Text    = "Stop Recording!";
                RecordTimer.Start();
            }

            try
            {
                Rectangle _screenRectangle = Screen.PrimaryScreen.Bounds;
                screenCaptureJob.CaptureRectangle     = _screenRectangle;
                screenCaptureJob.ShowFlashingBoundary = true;
                screenCaptureJob.ScreenCaptureVideoProfile.FrameRate = 20;
                screenCaptureJob.CaptureMouseCursor = true;

                screenCaptureJob.OutputScreenCaptureFileName = recordFullPath.ToString();
                if (File.Exists(screenCaptureJob.OutputScreenCaptureFileName))
                {
                    File.Delete(screenCaptureJob.OutputScreenCaptureFileName);
                }
                screenCaptureJob.Start();
            }
            catch (Exception) { }
        }