版权声明:本文为博主原创文章,需要转载尽管转载。 https://blog.csdn.net/z5976749/article/details/84142127
选择拍照的摄像头:
private void Camlist()
{
videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
if (videoDevices.Count == 0)
{
MessageBox.Show("未找到摄像头设备");
}
foreach (FilterInfo device in videoDevices)
{
Cameralist.Items.Add(device.Name);
}
}
Cameralist是下拉框 把摄像头列表添加到里面
//选择要调用的摄像头,捕获视频并展示到videoSourcePlayer1
private void Device_Click(object sender, EventArgs e)
{
Indexof = Cameralist.SelectedIndex;
if (Indexof < 0)
{
MessageBox.Show("请选择一个摄像头");
return;
}
this.pictureBox1.Visible = false;
this.videoSourcePlayer1.Visible = true;
//videoDevices[Indexof]确定出用哪个摄像头了。
videoSource = new VideoCaptureDevice(videoDevices[Indexof].MonikerString);
//设置下像素,这句话不写也可以正常运行:
//videoSource.VideoResolution = videoSource.VideoCapabilities[Indexof];
//在videoSourcePlayer1里显示
videoSourcePlayer1.VideoSource = videoSource;
videoSourcePlayer1.Start();
}
videoSourcePlayer1是Aforge控件,网上能找到Dll导入到c#中,控件是dll拖到工具箱里才会有