2014-08-30 107 views
-1

如何让两个视频在同一时间和相同的fps运行?OpenCV如何以相同的速度运行两个视频?

VideoCapture capture("../video/Success/NT 1.1.wmv"); 

VideoCapture capture2("../video/Success/NT 1.wmv"); 

capture.set(CV_CAP_PROP_FPS , 30); 

capture2.set(CV_CAP_PROP_FPS , 60); 

waitKey(30); 

例如,我有这个两个视频,我设置的FPS已经这两个影片,但这个capture.set(CV_CAP_PROP_FPS,30)我的程序不工作..

+0

设置回放速率根本没有任何意义,因为您必须从视频捕捉(并使用您自己的时间)顺序抓取帧。 – berak 2014-09-02 08:44:05

回答

1

OpenCV的是不是一个播放库,也没有打算支持这些功能。设置FPS绝对没有。

OpenCV的唯一功能就是为您提供一个接一个地从视频中提取帧的可能性。

您必须设计自己的完整时序来控制图像在屏幕上的显示速度。

或者,最好使用VLC。

+0

这两个视频都有不同的功能(例如背景扣除等)来实现我的系统检测的目标。所以,这两个视频必须同时运行,并相互协作。视频1可以以正常速度运行,但视频2比视频1缓慢运行5秒。你有什么想法来解决这个问题吗? – 2014-08-30 13:22:39

0

是什么的问题以书面形式非常简单的代码相同的FPS:

// Open videos 
VideoCapture capture("../video/Success/NT 1.1.wmv"); 
VideoCapture capture2("../video/Success/NT 1.wmv"); 
Mat frame, frame2; 
while(..) 
{ 
    capture >> frame; 
    capture2 >> frame2; 
    //imSHOW or do anything with these frame.. 
waitKey(30); 
} 
//Close video 

我缺少的东西还是你?

相关问题