« デスクトップ共有 | メイン | RealTalk 72 »

FFmepgをWindowsでコンパイル

FFmpegはフリーなマルチメディアライブラリ群です。
http://ffmpeg.org/ 公式サイト

2009年3月10日に0.5というバージョンがリリースされたのでWindowsでコンパイルしてみました。

次のサイトは必須です。
http://ffmpeg.arrozcru.org/wiki/index.php?title=Main_Page FFmpeg on Windows

最初の一言は重要なメッセージです。
------------------------------------------------------------------------------------
FFMPEG DOES NOT BUILD UNDER MSVC++, AND WILL NOT, EVER, BUILD UNDER MSVC++.

MSVC++ still does not adhere to the C99 standard, and FFmpeg relies on it, because its developers chose to rely on it.

That means the entire build process of FFmpeg must be done with MSys+MinGW.

The libraries created by FFmpeg with MinGW are usable just like any other library (either static or shared), with a C99 compiler. This again means that MSVC++ is not supported. You can, however, modify your build system to behave more closely like a C99 system, and then you will be able to use FFmpeg's libraries with MSVC++.
------------------------------------------------------------------------------------
つまり、FFmpegはMSVCのプロジェクトでコンパイルするのではなくて、MSys+MinGWのgccでコンパイルしないといけません。


MSys+MinGWはFFmpeg on Windowsに書いてある通りに用意します。
makeのバージョンは要注意です。

>make must be MSYS make version => 3.81
>Preferably version 3.81-2.
>Also do not get MinGW make. Get MSYS make.


gccは4.2.1を使いました。


msys-1.0.dllのバージョンにも要注意です。
私は、.configureする際に、次のメッセージに遭遇して、どうしようもなかったのですが、MSYS-1.0.11-20090120-dll.tar.gz におきかえると動作するようになりました。

>open_stackdumpfile: Dumping stack trace to sh.exe.stackdump


MSysのコマンドプロンプトより
$ ./configure --target-os=mingw32 --cc=gcc-sjlj --disable-mmx --disable-debug --disable-static --enable-shared --enable-memalign-hack --disable-ffmpeg --disable-ffserver --disable-ffplay --extra-cflags=-fomit-frame-pointer

少し時間がかかりますが、エラーがなければOKです。


$ make
エラーがなければOKです。

トラックバック

このエントリーのトラックバックURL:
http://soba-project.info/cgi/mt/mt-tb.cgi/117

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2009年05月28日 23:08に投稿されたエントリーのページです。

ひとつ前の投稿は「デスクトップ共有」です。

次の投稿は「RealTalk 72」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type