EmguCV捕获rtsp ip camera stream ffmpeg

时间:2017-11-27 03:47:39

标签: c# ffmpeg emgucv

我正在使用IP摄像头和EmguCV来检测某个区域的人。 使用Highgui捕获源,一切正常。 但是使用FFMPEG格式的Arlo相机,我无法获得流而没有任何异常。 这是我尝试过的代码:

if (capture == null)
        {
            try
            {
                capture = new Capture("rtsp://<IP>:8554/live"); 
                capture.ImageGrabbed += Capture_ImageGrabbed;
                capture.Grab();
                capture.Start();
            }


            catch (NullReferenceException exception)
            {
                MessageBox.Show(exception.Message);
            }
            catch (TypeInitializationException exc)
            {
                MessageBox.Show(
                   "Attention: You have to copy all the assemblies and native libraries from an official release of EmguCV to the directory of the demo." +
                   Environment.NewLine + Environment.NewLine + exc);
            }
}

这里是Capture_ImageGrabbed事件未被解雇。

private void Capture_ImageGrabbed(object sender, EventArgs e)
    {
        Mat image = new Mat();
        capture.Retrieve(image);
        picCAM.Image = image.Bitmap;
    }

非常感谢你的帮助!

1 个答案:

答案 0 :(得分:0)

这可能是旧的,但直到现在我也面临同样的问题,即使使用最新版本(版本3.3)。可能不是最好的解决方案,但经过一些试验和错误后,我所做的就是降级到版本2.4.2。您可以下载here

我最近也在github提交了此问题。这可能是一个错误。