Ошибка записи видео в Emgu Cv - PullRequest
3 голосов
/ 16 июля 2010

Я пытаюсь записать видео, снятое с веб-камеры, используя Emgu CV, но получаю исключение.

_capture = new Capture(0);
_capture.QueryFrame();
captureOutput = new VideoWriter(@"output.avi",
                                (int)_capture.GetCaptureProperty(Emgu.CV.CvEnum.CAP_PROP.CV_CAP_PROP_FOURCC),
                                (int)_capture.GetCaptureProperty(Emgu.CV.CvEnum.CAP_PROP.CV_CAP_PROP_FPS),
                                (int)_capture.GetCaptureProperty(Emgu.CV.CvEnum.CAP_PROP.CV_CAP_PROP_FRAME_WIDTH),
                                (int)_capture.GetCaptureProperty(Emgu.CV.CvEnum.CAP_PROP.CV_CAP_PROP_FRAME_HEIGHT),
                                true);
Image<Bgr, Byte> frame = _capture.QueryFrame();
captureOutput.WriteFrame(frame);

У меня появляется «Попытка деления на ноль».исключение при выполнении строки captureOutput.WriteFrame (frame).

1 Ответ

1 голос
/ 30 апреля 2014

Цитировать из комментария:

Проблема заключалась в выборе правильного кодека для записи.Я изменил часть строки 3 ниже:

_capture.GetCaptureProperty(Emgu.CV.CvEnum.CAP_PROP.CV_CAP_PROP_FOURCC) с -1.

Это дало мне диалоговое окно со списком кодеков, доступных на моей машине.Я выбрал «Несжатый» кодек, и видео было сгенерировано правильно.

...