ロゴ メインコンテンツへ
RSSフィード
「ソフトウェア開発」に関連する記事一覧

FFmpegのライブラリをMicrosoft Visual C++で使う

2012/02/13
(この記事の文字数: 898)
C++でいろいろな形式の動画読み込みをしたいけどDirectXは使いたくなかったので、FFmpegで使っているlibavcodec等のライブラリをVisual C++で直接使おうと思ったのですが、ネットで探してもMinGWでFFmpegをコンパイルして使うような手順が書いてあるサイトばかりで時間を食いましたがVisual C++でFFmpegのライブラリを使う手順が書いてあるサイトを見つけました。

http://www.neowin.net/forum/blog/460/entry-3634-using-libavcodec-in-visual-studio-part-1/

一応ここにも日本語でVisual C++で使う手順を書いておきます。私の方ではVisual C++ 2010で動作するのを確認しています。

1. 下記サイトからSharedとDevのバイナリをダウンロード
http://ffmpeg.zeranoe.com/builds/

2. Devのinclude, libディレクトリをVisual C++のinclude, libディレクトリに指定

3. dllを読めるようにするためにSharedのbinディレクトリを環境変数Pathに追加するか、Visual C++プロジェクトの出力ディレクトリにコピー

4. inttypes.hをここからダウンロードしてC:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\includeにコピー。ここにコピーするのが嫌ならincludeディレクトリとして読まれる場所に置けばどこでもOKです

5. あとはコードを書いてコンパイルするだけです。とりあえず下記コードが正常にコンパイル、リンク、実行ができれば一応使える環境は整ったということになります。動作確認する際はavcodec.lib、avformat.lib、swscale.libなどのライブラリをリンクするのを忘れずに。それとこのライブラリはC++でなくC言語で作られていてincludeする際にextern "C"をつけないと未解決の外部シンボルになってしまうので注意です



extern "C" { 

        #include <libavcodec/avcodec.h> 

        #include <libavformat/avformat.h> 

        #include <libswscale/swscale.h> 

}

int main( int argc, char* argv[] ) { 

        av_register_all(); 

        return 0;

}

  このエントリーをはてなブックマークに追加  

<<「ソフトウェア開発」の記事一覧に戻る

<<「ソフトウェア開発」の次の記事
「ソフトウェア開発」の前の記事 >>

コメント(0 件)



コンテンツロード: 0.0074 sec
Copyright(C)2006-2024 puarts All Rights Reserved