cvCreateVideoWriter (OpenCV 2.2 + FFMPEG) - PullRequest
       4

cvCreateVideoWriter (OpenCV 2.2 + FFMPEG)

0 голосов
/ 02 августа 2011

Я работаю с OpenCV 2.2 для Android под Windows и столкнулся с проблемой при использовании cvCreateVideoWriter.Всегда возвращает NULL.Я предполагаю, что это как-то связано с тем, что библиотека FFMPEG не собирается должным образом.Дело в том, что я следовал инструкциям в http://opencv.willowgarage.com/wiki/Android2.2,, и поскольку FFMPEG включен в качестве сторонней библиотеки (по крайней мере, я вижу исходный код в комплекте с пакетом OpenCV), я подумал, что мне не нужно ничего делатьустановите эту библиотеку.Я могу быть не прав.Как проверить, была ли библиотека правильно построена (или построена вообще)?Нужно ли вносить какие-либо изменения в файлы создания по умолчанию?

Любая помощь очень ценится.

Спасибо!

1 Ответ

0 голосов
/ 02 августа 2011

При использовании cvCreateVideoWriter() необходимо учитывать 2 важных момента:

  • Вашему приложению необходимы права для создания файлов и возможности их записи. Убедитесь, что вы установили необходимые разрешения для каталога для этого.

  • 2-й аргумент функции - это код кодека, используемый для сжатия кадров. Например, CV_FOURCC('P','I','M','1') - это кодек MPEG-1, а CV_FOURCC('M','J','P','G') определяет motion-jpeg.

Типичный вызов может выглядеть так:

CvVideoWriter *writer = cvCreateVideoWriter("video.avi", CV_FOURCC('M','J','P','G'), fps, size, 0);
if (!write)
{
   // handle error
}

Я предлагаю вызвать cvCreateVideoWriter с разными кодеками. Возможно, ваша платформа не поддерживает ту, которую вы используете сейчас.

Я не знаю, включает ли флаг в сборке по умолчанию для Android флаг HAVE_FFMPEG, но необходимо установить ffmpeg, и лучше убедиться, что этот флаг включен при компиляции OpenCV.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...