ffmbc——广播电视以及专业用途量身定制的FFmpeg

做项目遇到针对于mpegts多节目流转码的问题,看遍了ffmpeg的参数都得不到解决办法,最后在雷神的博客中看到了ffmbc;

结果,还是没解决问题,但是看起来改改ffmbc的代码还是相对简单一些,抽时间分析一下ffmbc.c:2762~2765行,应该就可以解决问题了。

先标记一下,免得之后忘了;

ffmbc虽然不大,还是要FQ才能下得到,为了方便下载,我已经上传到CSDN:

http://download.csdn.net/detail/wangzekun_wolf/9696334

在Centos6上做得尝试:

ffmbc的编译:

前半部分与ffmpeg相同参考:http://trac.ffmpeg.org/wiki/CompilationGuide

然后(由于libvpx没有编译成功,而且和我要完成的任务不相关,所以也没添加libvpx的参数)

PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"
./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib -ldl" --bindir="$HOME/bin" --enable-gpl --enable-nonfree --enable-libfreetype --enable-libmp3lame --enable-libvorbis --enable-libx264 --enable-debug=0
make

当然不管你成不成功,反正我是没成功,于是,我还改了configure文件:

2906 { use_pkg_config x264 "stdint.h x264.h" x264_encoder_encode ||
2907                                { require libx264 x264.h x264_encoder_encode -lx264 &&
2908                                  warn "using libx264 without pkg-config"; } }
2909 #if test $pkg_config != false; then
2910 #enabled libx264    && require_pkg_config x264 "inttypes.h x264.h" x264_encoder_encode &&
2911 #                      { check_cpp_condition x264.h "X264_BUILD >= 115" ||
2912 #                        die "ERROR: libx264 version must be >= 0.115."; }
2913 #else
2914 #enabled libx264    && require libx264 "x264.h" x264_encoder_encode -lx264 &&
2915 #                      { check_cpp_condition x264.h "X264_BUILD >= 115" ||
2916 #                        die "ERROR: libx264 version must be >= 0.115."; }
2917 #fi

前面有#号注释掉的是之前的写法,2906~2908是新加的。

原文地址:https://www.cnblogs.com/bugutian/p/6139873.html