C++ OpenCV program to play a video














































C++ OpenCV program to play a video



---------------------------------------------------------------------------------------------------------------------
Description::
This is a C++ program to play a video file by capturing frame by frame and displaying it. Instead of video file webcam live stream can also be played just by writing 0(zero) in place of video file name in VideoCapture object initialisation.
---------------------------------------------------------------------------------------------------------------------

Program::
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv; 

int main()
{
      VideoCapture cap("vdo.mp4");          
// Creating VideoCapture object and opening input file
                                                                           // If the input is the web camera, pass 0 instead of the video file name
      if(!cap.isOpened())
      {                                //Checking if opened
               cout << "Error opening video stream or file" << endl;
               return -1;
      }
      while(1)
      {
               Mat frame;                                             
// Creating Mat object
               cap >> frame;                                         // Capture frame-by-frame 
               if (frame.empty())
                               // If the frame is empty, break immediately
                       break;
                imshow( "VdoFrame", frame );        
// Display the frame
                char a=(char)waitKey(25);
                //Press ESC on keyboard to exit/
                if(a==27)
                      break;
         }
         cap.release();
                                         // When everything done, release the video capture object 
         destroyAllWindows();                           // Closes all the frames
         return 0;
}

-------------------------------------------------------------------------------------------------------------------
Commands to run program on terminal::
g++ -ggdb `pkg-config --cflags vdop` -o `basename cvopen .cpp` filename `pkg-config --libs opencv`

$ ./vdop
-------------------------------------------------------------------------------------------------------------------

Output::

And the video plays...

More Articles of Shubham Loya:

Name Views Likes
C++ OpenCV cv::trace() 1555 1
C++ Armadillo :: Real and Imaginary part 1631 1
C++ OpenCV cv::perspectiveTransform() 5325 1
C++ Armadillo :: find_nonfinite 792 2
C++ Armadillo introduction and installation 596 1
C++ Armadillo :: Kron 1307 1
C++ Armadillo :: Accessing row and column and operations on it 1404 1
C++ Armadillo :: cond 481 2
C++ Armadillo :: pseudo-inverse 2886 1
C++ OpenCV cv::flip() 1834 1
C++ OpenCV cv::transpose() 6949 1
C++ Armadillo :: any 532 2
C++ Armadillo :: Max and Min of matrices 918 1
C++ OpenCV cv::pow() 2395 1
C++ Armadillo :: fliplr and flipud 1000 2
C++ Armadillo :: Sort 1230 1
C++ Armadillo :: Determinant of Matrix 883 1
C++ Armadillo :: Indices of Unique elements of matrix 958 1
C++ Armadillo :: eps 492 3
C++ Armadillo :: Inverse 1508 1
C++ Armadillo :: Transpose of Matrix 1230 1
C++ Armadillo :: Basic Arithmetic Operations 453 1
C++ Armadillo :: Cross Product of vectors 1274 4
C++ OpenCV program to play a video 1185 1
C++ Armadillo :: Diagonal of Matrix 948 1
C++ Armadillo :: Absolute value of Matrix 1147 1
C++ Armadillo :: Conj 482 2
C++ Armadillo :: expmat 955 2
C++ OpenCV Input from Camera 1945 1
C++ OpenCV program to convert BGR image to grayscale image 5679 1
C++ Armadillo :: Intersect 765 2
C++ Armadillo :: Nonzeros 994 2
C++ Armadillo :: Dot Product of vectors 1664 2
C++ OpenCV:: Transforming BGR image to Grey scale image 580 2
C++ OpenCV to rotate an image 11174 1
C++ Armadillo :: Unique elements of matrix 809 1
C++ Armadillo :: Log Determinant 797 1
C++ Armadillo :: Sort_index 1509 2
C++ Armadillo :: Max Min 1596 1
C++ Armadillo :: Shift 918 1
C++ Armadillo :: Square root of Matrix 1730 1
C++ OpenCV cv::cvtColor() 2322 1

Comments