nkint
nkint

Reputation: 11733

Qt or OpenCV: print out the codec of a video file

I'd like to know how i can print out the codec of a video file after opening it with VideoCapture (on OSX or Ubuntu).

The file is correctly loaded and visualized by opencv inside a qt application.

QString filename =  QFileDialog::getOpenFileName(...)
cout << filename.size() << endl; // size in byte
VideoCapture cap = VideoCapture(filename.toStdString());
cout << cap.get(CV_CAP_PROP_FRAME_HEIGHT) << endl; // print the height
cout << cap.get(CV_CAP_PROP_FPS) << endl; // print the fps

codec ??

Upvotes: 1

Views: 3559

Answers (1)

Radio-
Radio-

Reputation: 3171

Try

cap.get(CV_CAP_PROP_FOURCC);

to get the codec.

Edit: I am not a C++ programmer, but this is what I found searching around to change it to a char array:

int ex = static_cast<int>(inputVideo.get(CV_CAP_PROP_FOURCC));
char EXT[] = {ex & 0XFF , (ex & 0XFF00) >> 8,(ex & 0XFF0000) >> 16,(ex & 0XFF000000) >> 24, 0};

See: http://docs.opencv.org/doc/tutorials/highgui/video-write/video-write.html

Upvotes: 2

Related Questions