下载完成后,解压后把ffmpegc-master改名成ffmpegc(我是懒人,这样省得改Demo里的Header Search Path),然后终端执行安装命令:
[代码]c#/cpp/oc代码:
1
./install-ffmpeg.sh
1 | ./install-ffmpeg.sh |
脚本自动下载ffmpeg代码并且进行编译
[代码]c#/cpp/oc代码:
01
allentekiiMac:ffmpegc allen$ ./install-ffmpeg.sh
02
install gas-* perl script
03
install gas-preproccesor.pr
04
Cloning into
'gas-preprocessor'
...
05
remote: Counting objects: 171, done.
06
remote: Compressing objects: 100% (107/107), done.
07
remote: Total 171 (delta 54), reused 149 (delta 47)
08
Receiving objects: 100% (171/171), 27.04 KiB, done.
09
Resolving deltas: 100% (54/54), done.
10
copy gas-preprocessor.pl to /usr/sbin
11
Password:
12
set
execute right
13
install finished.
14
download ffmpeg
15
Downloading ffmpeg-1.2.1.tar.bz2
16
% Total % Received % Xferd Average Speed Time Time Time Current
17
Dload Upload Total Spent Left Speed
18
0 5828k 0 24303 0 0 3398 0 0:29:16 0:00:07 0:29:09 2218
01 | allentekiiMac:ffmpegc allen$ ./install-ffmpeg.sh |
02 | install gas-* perl script |
03 | install gas-preproccesor.pr |
04 | Cloning into 'gas-preprocessor' ... |
05 | remote: Counting objects: 171, done. |
06 | remote: Compressing objects: 100% (107/107), done. |
07 | remote: Total 171 (delta 54), reused 149 (delta 47) |
08 | Receiving objects: 100% (171/171), 27.04 KiB, done. |
09 | Resolving deltas: 100% (54/54), done. |
10 | copy gas-preprocessor.pl to /usr/sbin |
11 | Password: |
12 | set execute right |
13 | install finished. |
14 | download ffmpeg |
15 | Downloading ffmpeg-1.2.1.tar.bz2 |
16 | % Total % Received % Xferd Average Speed Time Time Time Current |
17 | Dload Upload Total Spent Left Speed |
18 | 0 5828k 0 24303 0 0 3398 0 0:29:16 0:00:07 0:29:09 2218 |
经过漫长的等待,编译成后(目前最新的版本是使用6.1的SDK),最终对我们有用的两个文件夹的路径为ffmpegc/ffmpeg-1.2.1/build和ffmpegc/ffmpeg-1.2.1/x264/build。这两个是最终有用的静态库。目录结构如下:
分别对应了iPhone3G以上版本(ARMV7S是iPhone5指令集)和模拟器版本。编译成功后,下载对应的Demo
https://github.com/lvjian700/ffmpegc-demo
下载完成并进行解压,得到如下文件结构
打开工程文件,发现里面的静态库全都是红色。
这时我们生成好的静态库就派上用场了。咦?等等,为什么刚才的文件目录里没有lib文件夹?我们先选中做任意的一个静态库文件,观察右侧静态库对应的Full Path
发现是libs文件夹在上传时被作者删除了,那我们现在需要在ffmpegc-demo-master文件夹下建立一个libs文件,然后把刚刚编译生成对应i386下的静态库拷贝到libs目录下(别忘记libx264.a,它藏的比较深:ffmpegc/ffmpeg-1.2.1/x264/build/i386/lib/libx264.a)。这时回来再看看我们的工程,完美复活!!!
万事具备,走一个…………
我靠,我眼泪都下来了……(真机只需要把对应的lib库换一下就可以直接编译到真机了)
后话:发现不管是真机还是模拟器都没有声音,回头再头……未完待续