I am currently working on a project that involves reading mp4 video files. The problem I encountered is that it using Python 2.7 (32 bit), OpenCV 2.4.3 (cv2.pyd) in a Windows 7 machine.
The code snippet is as follows:
try: video = cv2.VideoCapture("video.mp4") except: print "Could not open video file" raise print video.grab()
video.grab()" always returns false: meaning it doesn't read the file "
But when we try this:
try: video = cv2.VideoCapture("video.avi") except: print "Could not open video file" raise print video.grab()
video.grab()" returns true: meaning it is able to read "
Another is we have tried this same snippet on Linux and Mac and it seems to work fine, meaning it is able to read both mp4 files and avi files.
I would appreciate any help or workaround aside from just using Linux or Mac for programming this as I need this to work on all three systems.
I have had the same issue before, solved by this step:
Check your OpenCV python version
>>> from cv2 import __version__ >>> __version__ '2.4.0'
Then Copy your
C:\Python27\ and rename it to relevant your OpenCV Python Version. In my case I had to rename it to
Update: On Windows, you can find the opencv_ffmpeg DLL inside of the build folder of your OpenCV installation. For example:
Then, just copy and paste the
opencv_ffmpeg<version>.dll file into the root folder of your Python installation.