HardBirch

ffmpeg 解决IOS视频播放无声音问题

时间:17-05-29 栏目:iOS开发入门与提高, 系统技术篇 作者:魔豆先生 评论:0 点击: 404 次

Coowhy的视频均采用ffmpeg来作为视频的转码方案,boss们想要移动端,那么mp4是个不错的选择,但是随之的问题也带来了。

我是用参数

ffmpeg -i $inFile -ab 128 -acodec libmp3lame -ac 1 -ar 22050 -r 29.97
-qscale 6 -s 640x480 -f mp4 -y $outFile

这样转出来的mp4在android下可以正常播放,但是在IOS系统没有声音,应该是音频编码问题。

编译安装了libfacc后成功解决。

follow  me:

安装libfacc:

下载  faac-1.28.tar

tar zxvf faac-1.28.tar.gz

./configure   and  make  and  make install

遇到的问题

make[3]: *** [3gp.o] Error 1
make[3]: Leaving directory `/root/ffmpeg/faac-1.28/common/mp4v2'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/ffmpeg/faac-1.28/common'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/ffmpeg/faac-1.28'
make: *** [all] Error 2

在老外那里发现的解决的答案

vi common/mp4v2/mpeg4ip.h

删除第126行  char *strcasestr(const char *haystack, const char *needle);

然后 make clean  重新在 make

make install

完成facc的安装。

那么接下来需要重新编译一下ffmpeg 了,按照原来的参数,我在后面添加了--enable-nonfree --enable-libfaac
参数。

ffmpeg 运行时提示
ffmpeg: error while loading shared libraries: libfaac.so.0: cannot open
shared object file: No such file or directory

OK  Let‘s  Go!

find / -name libfaac.so.0
/usr/local/lib/libfaac.so.0

vim /etc/ld.so.conf
新加入一行  /usr/local/lib
执行ldconfig

ffmpeg

然后使用参数

ffmpeg -i $inFile -ab 128 -acodec libfaac -ac 2 -ar 22050 -r 29.97
-qscale 6 -s 640x480 -f mp4 -y $outFile

搞定收工!

声明: 本文由( 魔豆先生 )原创编译,转载请保留链接: ffmpeg 解决IOS视频播放无声音问题

ffmpeg 解决IOS视频播放无声音问题:等您坐沙发呢!

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐