国产与第三方库FFmpeg SDK
一个、编译并安装第三方库
1. libfaac
# tar -zxvf faac-1.28.tar.gz
# cd faac-1.28
# ./configure --prefix=/opt/YOUR_SDK_INSTALL_DIRECTORY --enable-static --disable-shared
# make; make install
2. libmp3lame
# tar -zxvf lame-3.98.4.tar.gz
# cd lame-3.98.4
# ./configure --prefix=/opt/YOUR_SDK_INSTALL_DIRECTORY --enable-static --disable-shared
# make; make install
3.libx264
# tar -xvf x264-snapshot-20110818-2245.tar
# ./configure --prefix=/opt/YOUR_SDK_INSTALL_DIRECTORY --enable-static --disable-shared
# make; make install
4. librtmp
# tar -xvf rtmpdump_git0819.tar
# cd rtmpdump
# cd librtmp
# vim Makefile
#prefix=/usr/local
prefix=YOUR_SDK_INSTALL_DIRECTORY
...
#CRYPTO=OPENSSL
CRYPTO=
...
#SO_LDFLAGS_posix=-shared -Wl,-soname,$@ 
SO_LDFLAGS_posix=-Wl,-soname,$@
...
#SHARED=yes
SHARED=no 
【保存并退出】
# make
# cd ..
# vim Makefile
#prefix=/usr/local
prefix=YOUR_SDK_INSTALL_DIRECTORY
【保存并退出】
# make SYS=darwin XDEF=-DNO_SSL CRYPTO= SHARED=
# make; make install
二、FFmpeg SDK的编译与安装
1. 改动FFmpeg 的 configure
# cd ffmpeg
# vim configure
$vim configure
...
#enabled librtmp && require_pkg_config librtmp librtmp/rtmp.h RTMP_Socket
enabled librtmp && { check_lib librtmp/rtmp.h RTMP_Socket -lrtmp -lpolarssl -lwinmm -lws2_32 ||
                        check_lib librtmp/rtmp.h RTMP_Socket -lrtmp -lssl -lcrypto -lz ||
                                                die "ERROR: librtmp not found or RTMP_Socket() missing, librtmp 
version must be >= 2.2.f"; }
【保存并退出】
2. FFmpeg SDK
# vim ffmpeg_configure.sh
#!/bin/sh
./configure \
--prefix=/opt/YOUR_SDK_INSTALL_DIRECTORY \
--enable-gpl --enable-nonfree --enable-version3 \
--disable-shared --enable-static \
--enable-pthreads --enable-runtime-cpudetect \
--enable-zlib --enable-bzlib \
--enable-postproc \
--extra-cflags='-I/opt/ffmpeg/sdk/ffmpeg-0.8.10.patched.sdk/include -DREDIRECT_DEBUG_LOG' \
--extra-ldflags='-L/opt/ffmpeg/sdk/ffmpeg-0.8.10.patched.sdk/lib -gl' \
--disable-encoder=aac \
--enable-libfaac --enable-encoder=libfaac \
--enable-libmp3lame --enable-encoder=libmp3lame \
--enable-libx264 --enable-encoder=libx264 \
--enable-librtmp \
--enable-avfilter --enable-filter=movie 
【保存并退出】
# chmod +x ffmpeg_configure.sh
# ./ffmpeg_configure.sh
# make; make install
三、应用程序的编译
# gcc output_example.c -g -o output_example 
-I/opt/YOUR_SDK_INSTALL_DIRECTORY/include -L/opt/YOUR_SDK_INSTALL_DIRECTORY/lib  
-lavformat -lavdevice -lavcodec  -lavutil -lavfilter -pthread -ldl -lswscale -lbz2 -lasound  
-lmp3lame -lfaac -lx264 -lrtmp -lz -lm
版权声明:本文博客原创文章,博客,未经同意,不得转载。
国产与第三方库FFmpeg SDK的更多相关文章
- ffmpeg第三方库编译记录
		
最近在研究ffmpeg的编译,之前使用的Ubuntu,需要安装虚拟机,非常麻烦,所以后来改研究在Windows平台编译. 一开始遇到很多挫折,参考了网上很多的帖子,但要么不全要么内容已过期,经过我的反 ...
 - Qt编程可不可以结合其他的第三方库和本土API?(有zeroMQ的Qt封装,还可轻易使用Python的库)
		
作者:渡世白玉链接:http://www.zhihu.com/question/29030777/answer/59378712来源:知乎著作权归作者所有,转载请联系作者获得授权. 可以,十分可以,你 ...
 - iOS开发常用第三方库
		
UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...
 - IOS常用第三方库《转》
		
UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...
 - Python库,让你相见恨晚的第三方库
		
环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具.pyenv – 简单的 Python 版本管理工具.Vex – 可以在虚拟环境中执行命令.virt ...
 - python第三方库,你要的这里都有
		
Python的第三方库多的超出我的想象. python 第三方模块 转 https://github.com/masterpy/zwpy_lst Chardet,字符编码探测器,可以自动检测文本. ...
 - iOS 第三方库、插件、知名博客总结
		
iOS 第三方库.插件.知名博客总结 用到的组件 1.通过CocoaPods安装 项目名称 项目信息 AFNetworking 网络请求组件 FMDB 本地数据库组件 SDWebImage 多个缩略图 ...
 - Python3.x:第三方库简介
		
Python3.x:第三方库简介 环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具. pyenv – 简单的 Python 版本管理工具. Vex ...
 - Python常用的标准库以及第三方库有哪些?
		
20个必不可少的Python库也是基本的第三方库 读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz ...
 
随机推荐
- 基于 Android 的 3D 视频示例代码
			
笔者:Mark Liu 下载样本代码 简单介绍 在Android 中,创建一个可以播放视频剪辑的应用很easy:创建一个採用 3D 图形平面的游戏应用也很easy.可是,创建一个可以在 3D 图形对象 ...
 - 同一路由器不同vlan之间的通信(一)
			
还是废话不多说,第一步,看拓扑图. 先把pc上的ip都配好.開始设置 switch0: >en >conf t >vlan 2 >exit >int fa 0/1 > ...
 - HDU1237 简单的计算器 【堆】+【逆波兰式】
			
简单的计算器 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
 - c# 获取某个对象的[公有属性]的名称,类型,值
			
/// <summary> /// 获取某个对象的[公有属性]的名称,类型,值 /// </summary> /// <typeparam name="T&qu ...
 - python K-means工具包初解
			
近期数据挖掘实验,写个K-means算法,写完也不是非常难,写的过程中想到python肯定有包,尽管师兄说不让用,只是自己也写完了,而用包的话,还不是非常熟,略微查找了下资料,学了下.另外,自己本身写 ...
 - 由单页面web应用引发的企业应用问题
			
由于单页面web应用的流行,client与server端之间都对应的产生了一些微妙的变化,比方,client原来仅仅是用来展示页面和理清逻辑,而现在逐渐转变成了一个可以进入驱动状态的应用程序. 未来的 ...
 - poj 3074 Sudoku(Dancing Links)
			
Sudoku Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8152 Accepted: 2862 Descriptio ...
 - 原来Github上的README.md文件这么有意思——Markdown语言详解
			
转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 之前一直在使用github,也在上面分享了不少的项目和Demo,每次创建新项目的时候,使用的都是默认的REA ...
 - iOS发展- backBarButtonItem 颜色/文字修改
			
iOS7之后. 默认返回button字体颜色为蓝色, 在父母的陈列柜VC(老界面)的title 假设做出改变, 通过下面的方法可以: 1. 更改字体颜色 (1) 在plist里面, 加View con ...
 - javascript的位操作、整数、二进制
			
位与(x&y):对操作数进行二进制与的操作,如果两个操作数的某一位两个都为1,将对应的结果位设为1. 0x0007 & 0x0003 = 0x0003 \ 一个小型年老棕色的狗:64 ...