AVI-файл, созданный OpenCV 2.4.6, не всегда действителен при выходе из приложения

0

В настоящее время я использую OpenCV 2.4.6 с gcc 4.7.3 на Lubuntu x64. Для просмотра AVI я использую gnome-mplayer 1.0.8 (установленный с Lubuntu). Весь комплект работает на виртуальной машине в VirtualBox.

Я использую общий набор кода для захвата изображений, а затем добавляю их в VideoWriter. В (втором) потоке я делаю это:

cv::Mat lImg;
cv::VideoCapture lVidCap( 0 );
cv::VideoWriter lVidWrt( lFileName, CV_FOURCC( 'M', 'J', 'P', 'G' ), 15, cv::Size( 640, 480 ) );

while ( true )
{
    // Here check if we must quite the loop.

    lVidCap.read( lImg );
    lVidWrt.write( lImg );
}

// This is not required according to the doc...
lVidWrt.release();
  1. Он работает правильно.

  2. В другое время я должен ждать много секунд, прежде чем файл будет действителен (несмотря на то, что указано, что для него требуется много Mb, в gnome-mplayer написано 0k).

Почему файл не всегда доступен сразу после уничтожения VideoWriter?

Если у вас есть предложение, я бы хотел его прочитать! ;-) Благодарю!

Теги:
opencv
video-capture
avi

1 ответ

0
Лучший ответ

См. Вопросы OpenCV для более длительного ответа. Проблема заключается, вероятно, в том, как VirtualBox синхронизирует свои виртуальные диски...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню