我需要构建一个简单的应用程序,允许从ipcam / webcam录制2个或更多视频流(最多4个),就像一个非常简单的监控系统。 您可以向我指出哪些组件(dll或类似组件)?
答案 0 :(得分:1)
它将是一个多线程应用程序。 其中每个线程(工作者)从源(usb视频)记录到目标(文件流)。
你可以做这样的事情(伪c#) 我希望它能给你一个基本的想法...class Worker
{
bool _record;
ISource _source;
IDestination _dest;
public Worker(ISource source, IDestination dest)
{
_source = source;
_dest = dest;
}
public void Record()
{
lock(this)
_record = true;
pos = 0;
while(_record)
{
var buffer = new byte[4096];
len = _source.Read(pos, buffer);
pos += len;
dest.Write(buffer, len);
}
}
public void Stop()
{
lock (this)
_record = false;
}
}
class Program
{
public static Main()
{
var w1 = new Worker(new UsbVideo(), new FileDestination());
Thread.Start(w1.Record);
...
Console.Readline();
w1.Stop();
}
}