当前位置: 首页 > wzjs >正文

西安网页制作设计上海优化网站seo公司

西安网页制作设计,上海优化网站seo公司,去除wordpress版本号,微信小程序怎么写C#AForge 实现视频录制 ​ 在C#中,使用AForge 库实现视频录制功能是一个比较直接的过程。AForge 是一个开源的.NET框架,提供了许多用于处理图像和视频的类库。 开发步骤 安装AForge库 ​ 首先,确保你的项目中已经安装了 AForge.Video和AFo…

C#+AForge 实现视频录制

​ 在C#中,使用AForge 库实现视频录制功能是一个比较直接的过程。AForge 是一个开源的.NET框架,提供了许多用于处理图像和视频的类库。

在这里插入图片描述

开发步骤

安装AForge库

​ 首先,确保你的项目中已经安装了 AForge.VideoAForge.Video.FFMPEG.你可以通过NuGet包管理器来实现安装这些库:

  1. 打开你的Visual Studio 项目
  2. 转到工具->NuGet包管理器->管理解决方案的NuGet包
  3. 搜索并安装 AForgeAForge.Video 以及 AForge.Video.FFMPEG

在这里插入图片描述

打开与关闭摄像头

/// <summary>
/// 打开摄像头
/// </summary>
private void OpenCamera()
{//设置视频源并启动this.videoCaptureDevice = new VideoCaptureDevice(filterInfoCollection[this.comboBox1.SelectedIndex].MonikerString);this.videoSourcePlayer1.VideoSource = this.videoCaptureDevice;this.videoSourcePlayer1.Start();isOpen = true;this.btnOpen.Text = "关闭";
}/// <summary>
/// 关闭摄像头
/// </summary>
private void CloseCamera()
{if (this.videoSourcePlayer1.VideoSource != null){this.videoSourcePlayer1.SignalToStop();this.videoSourcePlayer1.WaitForStop();this.videoSourcePlayer1.VideoSource = null;isOpen = false;this.btnOpen.Text = "打开";}
}

实现拍照

/// <summary>
/// 拍照
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{if (!this.isOpen){MessageBox.Show("请先打开摄像头!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);return;}try{//拍照bmp = this.videoSourcePlayer1.GetCurrentVideoFrame();this.pictureBox1.Image = bmp;if (!Directory.Exists("images"))Directory.CreateDirectory("images");string fileName = string.Format("images/图片_{0}.jpg", DateTime.Now.ToString("yyyy-MM-dd hh-mm-ss"));bmp.Save(fileName);}catch (Exception ex){MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);}
}

实现录像

/// <summary>
/// 开始录像
/// </summary>
private void StartRecord()
{if (!Directory.Exists("videos"))Directory.CreateDirectory("videos");string fileName = string.Format("videos/录像_{0}.avi", DateTime.Now.ToString("yyyy-MM-dd hh-mm-ss"));this.videoFileName = fileName;// 创建视频文件写入器videoWriter = new VideoFileWriter();videoSourcePlayer1.NewFrame += VideoSourcePlayer1_NewFrame;videoWriter.Open(fileName, 1280, 960, 30, VideoCodec.MPEG4, 1000000); // 设置分辨率、帧率和比特率
}/// <summary>
/// 停止录像
/// </summary>
private void StopRecord()
{this.CloseCamera();if (videoWriter != null){videoWriter.Close();videoWriter = null;}this.FlushVideoPlayList();
}

实现录屏

/// <summary>
/// 开始录屏
/// </summary>
/// <param name="path"></param>
public void StartRecording(string path) //该方法需要有一个路径参数,前面我们设置过了
{var directory = Path.GetDirectoryName(path);if (!Directory.Exists(directory)) //检查路径是否存在,不存在就自动创建{Directory.CreateDirectory(directory);}try{FrmMain.videoWriter = new VideoFileWriter();//用于生成视频文件,参数分别为路径、视频的宽度、高度、帧数、编码格式以及视频码率FrmMain.videoWriter.Open(path, Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, 25, VideoCodec.MPEG4, 5000000);recordingThread = new Thread(RecordScreen);recordingThread.Start();}catch (Exception err){Console.WriteLine(err.ToString());MessageBox.Show("屏幕录制开启失败: " + err.Message, "提示!");}
}/// <summary>
/// 停止录屏
/// </summary>
public void StopRecording()
{try{recordingThread.Join();FrmMain.videoWriter.Close();}catch (Exception err){MessageBox.Show("屏幕录制停止失败: " + err.Message, "提示!");Console.WriteLine(err.ToString());}
}

视频播放

在这里插入图片描述

/// <summary>
/// 双击视频列表
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
{if (this.listBox1.SelectedItem == null) return;this.axWindowsMediaPlayer1.URL = string.Format("videos/{0}", this.listBox1.SelectedItem.ToString());
}

object sender, MouseEventArgs e)
{
if (this.listBox1.SelectedItem == null) return;

this.axWindowsMediaPlayer1.URL = string.Format("videos/{0}", this.listBox1.SelectedItem.ToString());

}


# 源码下载
CSDN: [C#+AForge 实现视频下载](https://download.csdn.net/download/m0_37631902/90477114?spm=1001.2014.3001.5503)
http://www.dtcms.com/wzjs/96654.html

相关文章:

  • 南雄做网站如何推广网站
  • 服务器做jsp网站教程视频教程seo网站优化收藏
  • 网站推广及建设ppt西安百度代运营
  • 最好的网站建设组织广东省广州市佛山市
  • 网站运营的具体工作包括哪些个人网站设计欣赏
  • 网站 切图seo综合查询站长工具怎么用
  • 网站开发要注意安全性制作网站要花多少钱
  • 使用wordpress做网站网络安全有名的培训学校
  • 北京门户网站建设湖南长沙疫情最新消息
  • 网站建站报告点击器免费版
  • 门户网站开发要多少钱企业网站建设步骤
  • 汕头网站定制自助建站系统源码
  • 做运动鞋的网站视频快速排序优化
  • 计算机网站建设 是什么意思短视频推广渠道有哪些
  • 没有域名 有公网ip 建网站可以查企业信息查询平台
  • 网站建设机构培训seo技术博客
  • 哪个网站专业做安防合肥网络seo推广服务
  • 做网站要审核吗seo关键词优化公司哪家好
  • 网站开发用什么浏览器最新军事动态
  • asp.net 网站开发实例教程爱网站关键词查询工具长尾
  • 四视图网站推广渠道有哪些平台
  • 做淘宝还是做网站容易百度推广的渠道有哪些
  • 北京做网站开发公司电话网站seo关键词优化
  • web用框架做网站常德seo快速排名
  • 法律网站建设价格品牌推广的方式有哪些
  • 有什么做海报网站百度的总部在哪里
  • 域名停靠是什么意思华为seo诊断及优化分析
  • 如何建设一个静态网站6徐州seo推广
  • 网站安全建设 应用开发广告联盟怎么赚钱
  • 建邺网站建设最受欢迎的十大培训课程