[英]Playing video with opencv
我在這里有這段代碼來播放視頻。 當我編譯它時,它做的很好,但是當我運行時,它什么也沒做。 可能是什么問題呢? 是代碼嗎? 還是我的視頻依賴項未正確安裝?
#include <highgui.h>
int main(int argc, char** argv) {
/* Create a window */
cvNamedWindow("Example2", CV_WINDOW_AUTOSIZE);
/* capture frame from video file */
CvCapture* capture = cvCreateFileCapture( argv[1]);
/* Create IplImage to point to each frame */
IplImage* frame;
/* Loop until frame ended or ESC is pressed */
while(1)
{
/* grab frame image, and retrieve */
frame = cvQueryFrame(capture);
/* exit loop if fram is null / movie end */
if(!frame) break;
/* display frame into window */
cvShowImage("Example2", frame);
/* if ESC is pressed then exit loop */
char c = cvWaitKey(33);
if(c==27) break;
}
/* destroy pointer to video */
cvReleaseCapture(&capture);
/* delete window */
cvDestroyWindow("Example2");
return EXIT_SUCCESS;
}
嘗試通過在參數中傳遞文件名,然后查看是否顯示視頻,而不是通過命令行直接提供文件名,在參數中提供文件的完整路徑。 如果不是,那么我們將嘗試確定操作系統或視頻依賴項是否有問題。
目前,在我看來,好像您沒有為文件提供正確的路徑。
您正在使用的視頻格式是什么?
還要檢查視頻文件是否正在加載。
if(!capture)
{
//Just to check if the video gets loaded or not
printf("Video Can't be loaded");
getch();
System.exit(0);
}
希望能有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.