OpenCV视频进度播放控制
生活随笔
收集整理的這篇文章主要介紹了
OpenCV视频进度播放控制
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?????? 本來打算把進(jìn)度條嵌入MFC的PIC空間里面,結(jié)果顯示進(jìn)度條消失,看來還是不要這個(gè)樣子了。
全局變量區(qū)域:
//2.初始化進(jìn)度條的位置 int G_slider_position = 0; CvCapture* G_capture = NULL; //cv::VideoCapture G_capture = NULL; bool G_StatePlay = false;全局回調(diào)函數(shù): //2.進(jìn)度條的回調(diào)函數(shù),播放進(jìn)度控制 void onTrackbarSlide(int Pos) { cvSetCaptureProperty(G_capture, CV_CAP_PROP_POS_FRAMES, Pos);//設(shè)置視頻cvSetTrackbarPos("Trackbar Name","VideoBar" , Pos);IplImage* frameS=cvQueryFrame(G_capture);cv::Mat frameDst(240,320,CV_8UC3);//resizeImage( frameS, frameDst);cv::Mat MatSrc( (frameS) ) ;cv::resize(MatSrc,frameDst,frameDst.size() );cv::imshow("VideoBar",frameDst);cv::waitKey(0);cvReleaseImage(&frameS); }
控制播放的代碼: bool CPicToolsDlg::initTrackBar() {//捕獲視頻//G_capture=cvCreateFileCapture("video.long.raw.avi");//獲取視頻的幀數(shù)int frames = (int) cvGetCaptureProperty(G_capture,CV_CAP_PROP_FRAME_COUNT);//從第N-100幀開始顯示int Pos =100;cvSetCaptureProperty(G_capture,CV_CAP_PROP_POS_FRAMES,Pos); //建立進(jìn)度條if(frames!=0){cvNamedWindow("VideoBar",CV_WINDOW_AUTOSIZE);cvCreateTrackbar("Trackbar Name","VideoBar" ,&G_slider_position,frames, onTrackbarSlide);}return true; }
控制效果:
?
總結(jié)
以上是生活随笔為你收集整理的OpenCV视频进度播放控制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ps 挖掘机简单画法怎么画? ps手绘简
- 下一篇: 使用OpenCV画折线图