【发布时间】:2015-03-31 18:22:04
【问题描述】:
如何在 C# 中从网络摄像头或视频采集卡的视频源中捕获一帧?我想显示实时提要,并有一种方法可以获取一帧并通过 FTP 或共享网络路径将其保存到远程服务器。
【问题讨论】:
-
我在 node.js 上实现了它。 stackoverflow.com/questions/14099513/…如果你有兴趣。
标签: c# video-streaming video-capture
如何在 C# 中从网络摄像头或视频采集卡的视频源中捕获一帧?我想显示实时提要,并有一种方法可以获取一帧并通过 FTP 或共享网络路径将其保存到远程服务器。
【问题讨论】:
标签: c# video-streaming video-capture
如果您能够流式传输实时视频,那么您只需单击此代码的按钮即可捕获实时视频流:
private Capture capture = null;
private void btnStart_Click(object sender, System.EventArgs e)
{
try
{
if ( capture == null )
throw new ApplicationException( "Please select a video and/or audio device." );
if ( !capture.Cued )
capture.Filename = txtFilename.Text;
capture.Start();
btnCue.Enabled = false;
btnStart.Enabled = false;
}
catch (Exception ex)
{
MessageBox.Show( ex.Message + "\n\n" + ex.ToString() );
}
}
【讨论】:
您可以使用 OpenCV。如果你在 StackOverflow 上搜索,你会发现很多关于如何做到这一点的资源。
甚至还有用于 OpenCV 的 .NET 包装器,例如 opencvdotnet 和 Emgu CV。
您最终可能会使用库中的一些函数,例如 cvCaptureFromCAM() 和 cvQueryFrame()。
【讨论】: