LoginSignup
4
3

More than 3 years have passed since last update.

OpenCV-PythonでGstreamer使えるようにする

Last updated at Posted at 2019-07-05

(これまた自分用のメモ書き)

開発環境

Windows10
GStreamer1.16.0 64bit(MinGW版のdevelop/runtime両方)
CMake
VisualStudio2019
Python3.7.x 64bit

やったこと

  • OpenCVのコンパイル

OpenCV 4.1.0をWindowsでビルドする手順
https://qiita.com/KurozumiGH/items/ef8cca96a13444b7dcda

↑を参考に進める

  1. CUDAはとりあえず使わないのでGitとPythonにPATH通しておく。
  2. opencvとopencv_contribをgitから取得してCMakeGUIでconfitureする。
  3. 以下パラメータ確認
Name Value
BUILD_opencv_python2 無効
BUILD_opencv_python3 有効
CPU_BASELINE 変更しない
CPU_DISPATCH 変更しない
GSTREAMER_app_LIBRARY [gstreamer_root]/lib/gstapp-1.0.lib
GSTREAMER_base_LIBRARY [gstreamer_root]/lib/gstbase-1.0.lib
GSTREAMER_glib_INCLUDE_DIR [gstreamer_root]/include/glib-2.0
GSTREAMER_glib_LIBRARY [gstreamer_root]/lib/glib-2.0.lib
GSTREAMER_glibconfig_INCLUDE_DIR [gstreamer_root]/lib/glib-2.0/include
GSTREAMER_gobject_LIBRARY [gstreamer_root]/lib/gobject-2.0.lib
GSTREAMER_gst_INCLUDE_DIR [gstreamer_root]/include/gstreamer-1.0
GSTREAMER_gstreamer_LIBRARY [gstreamer_root]/lib/gstreamer-1.0.lib
GSTREAMER_pbutils_LIBRARY [gstreamer_root]/lib/gstpbutils-1.0.lib
GSTREAMER_riff_LIBRARY [gstreamer_root]/lib/gstriff-1.0.lib
OPENCV_EXTRA_MODULES_PATH ~opencv_contrib/modules
WITH_GSTREAMER 有効

PythonのパスやGStreamerのパスは環境パスに居れば勝手に入るようですが合ってるか確認

 4. 確認したらGenerateしてVisualStudio用のソリューション作成してOpen Projectでソリューション開く
 5. ソリューションエクスプローラーにあるbindingsの配下にopencv_python3があるのでビルドターゲットをReleaseに切り替えてからopencv_python3をビルド実行
 6. ビルド完了したら"\bin\Release"に出力されたDLL一式と"\lib\python3\Release\cv2.cp37-win_amd64.pyd"を"Python\Lib\site-packages\cv2"内に上書きする
 7. 以下実行して結果でGStreamer有効になってるのを確認

python -c "import cv2; print(cv2.getBuildInformation())"
General configuration for OpenCV 4.1.0 =====================================
  Version control:               4.1.0

~~省略~~
  Video I/O:
    DC1394:                      NO
    FFMPEG:                      YES (prebuilt binaries)
      avcodec:                   YES (58.35.100)
      avformat:                  YES (58.20.100)
      avutil:                    YES (56.22.100)
      swscale:                   YES (5.3.100)
      avresample:                YES (4.0.0)
    GStreamer:                   YES (1.16.0)
    DirectShow:                  YES
    Media Foundation:            YES
      DXVA:                      YES



4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3