Przechwytywanie wideo OpenCV i problem fps

Przechwytuję wideo z mojej kamery za pomocą OpenCV na MacOSX. Działa dobrze, ale gdy próbuję odtwarzać w QuickTime, moje przechwycone wideo jest odtwarzane zbyt szybko. tj. przechwytuję z aparatu przez 10 sekund, ale gdy gram w QuickTime, wideo wynosi 2 sekundy.

Próbowałem zmienić fps z 25 na 10 i działa całkiem dobrze, ale jestem pewien, że nie jest to poprawny proces:

CvVideoWriter *writer = 0;  
int isColor = 1;
int fps     = 25;
int frameW  = 640; // 744 for firewire cameras
int frameH  = 480; // 480 for firewire cameras

Problem polega na tym, że na razie muszę przechwytywać za pomocą WebCam, ale prawdziwym problemem programu jest przechwytywanie obrazu z dowolnego zewnętrznego źródła podłączonego do mojego Maca.

Używam tego kodu do przechwytywania:

for (;;) {
  cvGrabFrame(capture)
  image = cvRetrieveFrame(capture);
  cvWriteFrame( writer, image );
}

Jakaś podpowiedź? Pokazuję także wyjście kamery internetowej na cvNamedWindow, jak mogę poprawić jakość w tych oknach?

wielkie dzięki wszystkim!

Andrea!

questionAnswers(4)

yourAnswerToTheQuestion