cv2.VideCapture(aviname) でうまく読めないとき
C++からVideoCapture(aviname)でうまく読めているか確認します。
しかし、Pythonからcv2.VideCapture(aviname) でうまく読めないときは
以下に示す内容もチェックしてみてください。
以下のサイトから目的の組み合わせのOpenCVとpythonのバージョンでのwhlファイルをダウンロードします。
次に、そのwhlファイルをインストールします。
`> pip install opencv_python-2.4.11-cp27-none-win32.whl
この例ではOpenCV2.4.11 Python2.7 win32 buildの例です。
私の場合、このやり方で問題を解決しました。
参考URL
http://stackoverflow.com/questions/11699298/opencv-2-4-videocapture-not-working-on-windows
追記(2022.08.18) 記事が古くなっています。
IntelとAMDのCPU(x86_64)の場合だとUbutu Windowsについては
PyPiで
opencv-python
opencv-contrib-python
opencv-python-headless
opencv-contrib-python-headless
のどれかを選んでインストールすればたいがいの場合うまくいくと思います。
自分でやむなくビルドする場合には
CMakeの設定で、
ffmpeg
を有効化したビルドになっているか確認してください。
GStreamerを有効化したビルドでは ffmpegを無効化したビルドになっていることが多く、その場合には動画を読み書きできなくなります。