OpenCV VideoCapture cannot read video in Python but able in VS11
As title, I am not able to read video using VideoCapture in python with the following code:
v = 'C:\test.mp4'
import cv2
cap = cv2.VideoCapture(v)
if cap.isOpened():
print "Finally"
else:
print "BOOM"
BOOM is always being printed. sigh
Whereas in VS11, the following code works:
#include "stdafx.h"
#include <opencv2highguihighgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char* argv[])
{
string v = "C:\test.mp4";
VideoCapture cap;
cap.open(v);
if (cap.isOpened()) {
cout << "Yes!" << endl;
} else {
cout << "BOOM" << endl;
}
return 0;
}
I do realize there’s a number solution in SO, but nothing works for me.
I have the following dlls in C:Python27 and C:Python27DLLs, as well as in PATH
- opencv_ffmpeg.dll
- opencv_ffmpeg_64.dll
- opencv_ffmpeg_245_64.dll
- opencv_ffmpeg_245.dll
I have no more idea what have not done.
Please help me. Thank you very much.
I have solved the problem by installing the binaries from this download link provided by this answer.
It copied all opencv DLLs to C:Python27 (or maybe other files). But I don’t understand why it wouldn’t work earlier as I have already included those DLLs into my PATH