c# 视频文件编写器属性



我想在使用我的程序时录制我的屏幕。

现在我正在使用以下代码:

recorder.Open(pathFolder+GetCurrentDateAndTime() + ".mp4", Convert.ToInt32(System.Windows.SystemParameters.PrimaryScreenWidth), Convert.ToInt32(System.Windows.SystemParameters.PrimaryScreenHeight), 10, VideoCodec.MPEG4, 2000000);

记录很好,但太快了。

我应该改变什么以防止它太快而处于正常速度?

首先,初始化计时器控件并为控件分配属性。然后,为该计时器创建一个tick事件。

videoTimer = new Timer((; videoTimer.Interval = 20; 视频计时器 += videoTimer_Tick;

vfWriter = new VideoFileWriter((; vfWriter.Open("Exported_Video.avi", 800, 600, 25, VideoCodec.MPEG4, 1000000(;

然后创建一个开始按钮来启动计时器

private void btnStart_Click(object sender, EventArgs e) { videoTimer.Start(); }

在计时器时钟周期事件中,从视频文件编写器和捕获屏幕的大小创建位图图像,并将其写入位图图像。然后,将图像写入视频文件编写器

private void videoTimer_Tick(object sender, EventArgs e){bp = new Bitmap(800, 600); gr = Graphics.FromImage(bp);gr.CopyFromSceen(0, 0, 0, 0, new Size(bp.Width, bp.Height));
pictureBox1.Image = bp;
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
vfWriter.WriteVideoFrame(bp);

}

最后创建一个停止按钮来停止计时器并保存文件。

private void btnStop_Click(object sender, EventArgs e){ videoTimer.Stop();vfWriter.Close();}

相关内容

  • 没有找到相关文章

最新更新