在vb.net中使用网络摄像头录制视频和捕获图像

时间:2012-02-02 10:06:17

标签: vb.net

目前,我正在论文中使用网络摄像头。我的目标之一是拥有一个可以录制/捕捉视频的实时摄像头,同时可以捕捉图像。我不知道如何在vb.net中编码。任何人都可以帮我解决我的问题。提前谢谢。

2 个答案:

答案 0 :(得分:1)

这实际上是你想到它的方式。

假设你有一个中间人捕捉你的帧并逐渐将它们作为帧传递给你的视频人。

如果你考虑缓冲那个中间人的帧,你可以问中间人一个特定的视频帧,而不是关心那个将视频帧构建到视频上的人。

例如,您可以将您在变量上询问的视频帧保存并将其转换为静止图像。

答案 1 :(得分:0)

简单的解决方案是使用Aforge lib for vb和c#

用这个我得到相机和分辨率,使用2个组合框

For Each x As FilterInfo In Dispositivos
    ComboBox1.Items.Add(x.Name)
Next
ComboBox1.SelectedIndex = 0
FuenteDeVideo = New VideoCaptureDevice(Dispositivos(ComboBox1.SelectedIndex).MonikerString)
For i As Integer = 0 To FuenteDeVideo.VideoCapabilities.Count() - 1
    FuenteDeVideo.VideoCapabilities(i).FrameSize.ToString()

    cbr.Items.Add(FuenteDeVideo.VideoCapabilities(i).FrameSize.ToString())
Next i

要启动视频,我们必须添加一个VideoSourcePlayer

FuenteDeVideo.VideoResolution = FuenteDeVideo.VideoCapabilities(cbr.SelectedIndex)
VideoSourcePlayer1.VideoSource = FuenteDeVideo
VideoSourcePlayer1.Start()

并拍摄图片:

            Dim img As Bitmap = VideoSourcePlayer1.GetCurrentVideoFrame()
            img.Save(sf.FileName, System.Drawing.Imaging.ImageFormat.Jpeg)

您可以在http://www.aforgenet.com/

找到相关文档