OpenCV/Building of opencv_ffmpeg.dll on OpenCV 2.3.1

#multilang(ja){{

概要

OpenCV 2.3.1(Windows)では動画の読み書きでopencv_ffmpeg.dllを動的にロードして
処理が行われます.このopencv_ffmpeg.dllはコンパイル済のDLLが提供されています.
このページではユーザがffmpegを組み込んだopencv_ffmpeg.dllをビルドするための手順を示します. ※以降の手順は32bitを対象としています.

このページは下記のファイルの手順をベースに記載されています.

opencv\3rdparty\ffmpeg\readme.txt

MinGW, MSYSのインストール

  1. http://sourceforge.net/projects/mingw/からmingw-get-inst-20111118.exeをダウンロードします.
  2. C Compiler, C++ Compiler, MSYS Basic systemにチェックを入れてインストールを続行します.
  3. 下記のバッチファイルを実行します.
    C:\MinGW\msys\1.0\msys.bat
  4. 実行後,下記のディレクトリ直下に/home/<username>/が生成されていることを確認します.
    C:\MinGW\msys\1.0
  5. MinGWのコンソール上で下記のコマンドを実行します.
    mingw-get install msys-coreutils
  6. Windowsの環境変数pathに以下のpathを追加します.
    C:\MinGW\bin;

ffmpegのビルド

  1. ffmpeg公式サイトからffmpeg-0.10.tar.gzをダウンロードします.
  2. 展開して,MinGW, MSYSのインストールで生成された/home/<username>/に配置します.
  3. 下記のバッチファイルを実行します.
    C:\MinGW\msys\1.0\msys.bat
  4. /home/<username>/をカレントディレクトリにして,下記のコマンドを実行します.
    mkdir build
    cd build
    ../ffmpeg-0.10/configure --disable-yasm --enable-w32threads
    make
    make install
    cd /local/lib
    strip -g *.a

opencv_ffmpeg.dllのビルド

  1. 下記のディレクトリに生成された*.aファイルをopencv\3rdparty\libにコピーします.※オリジナルのライブラリ群は退避しておいてください.
    C:\MinGW\msys\1.0\local\lib
  2. 下記のディレクトリに生成されたディレクトリをopencv\3rdparty\include\ffmpeg_コピーします.※オリジナルのヘッダ群は退避しておいてください.
    C:\MinGW\msys\1.0\local\include
  3. C:\opencv-svn\opencv\3rdparty\ffmpeg\make.batを以下のように書き換えます(今回32bit対象なので64bit用はコメントアウト).
    set path=C:\MinGW\msys\1.0\bin;%path% & gcc -Wall -shared -o opencv_ffmpeg.dll -O2 -x c++ -I../include -I../include/ffmpeg_ -I../../modules/highgui/src ffopencv.c -L../lib -lavformat -lavcodec -lavdevice -lswscale -lavutil -lwsock32
    :: set path=c:\dev\msys64\bin;%path% & gcc -m64 -Wall -shared -o opencv_ffmpeg_64.dll -O2 -x c++ -I../include -I../include/ffmpeg_ -I../../modules/highgui/src ffopencv.c -L../lib -lavformat64 -lavcodec64 -lavdevice64 -lswscale64 -lavutil64 -lavcore64 -lwsock32 -lws2_32
  4. 下記のバッチファイルを実行します.
    C:\opencv-svn\opencv\3rdparty\ffmpeg\make.bat
  5. 下記ディレクトリにopencv_ffmpeg.dllが生成されることを確認します.
    C:\opencv-svn\opencv\3rdparty\ffmpeg

}}


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-02-07 (火) 03:14:00 (2055d)