首先要build none-strip 版本。
先 configure --help 列出 configure option。其中有:
Developer options (useful when working on FFmpeg itself): --disable-debug disable debugging symbols --enable-debug=LEVEL set the debug level [] --enable-gprof enable profiling with gprof [] --disable-optimizations disable compiler optimizations --enable-extra-warnings enable more compiler warnings --disable-stripping disable stripping of executables and shared libraries所以重新configuer,加上 --disable-optimizations --disable-stripping。
然後就可以開始make
gdb 的話,我是用 gdb-6.8-mingw-3 這個版本 (一樣,download bz2 解開,覆蓋 mingw 下)。
還有 study area 這一篇 也是 step by step,也照著作一下。
ffplay.c 是ffmpeg 附的播放程式。可以從這邊開始 run,看 ffmpeg decode 的程序。
ffplay.c 的 decode 是在 open_stream( ) 中 create 的 decode_thread( ) 作得。
其中 libavformat/utils.c : av_read_frame_internal( ) 負責從 stream 中解出 frame。
follow 這一篇(http://ffmpeg.arrozcru.org/wiki/index.php?title=Static)的 ffmpeg build 步驟,ffmpeg include 和 lib 會被 install 在
/usr/local/include /usr/local/lib所以compile 的時候要加上 -I/usr/local/include -L/usr/local/lib -lavdevice -lavformat -lavcodec -lavutil -lswscale
如果在config ffmpeg 時指定 --prefix=/mingw ,就不用 額外 寫明 -I, -L path。
沒有留言:
張貼留言