版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

ffmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。因为视频编解码十分消耗系统资源,工作相对较为耗时,而树莓派自带 H.264 的硬件编解码器,所以计划在树莓派上编译安装支持硬件编解码器的 ffmpeg。

安装 x264 编码器

  1. git clone git:
  2. cd x264
  3. ./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl --enable-shared
  4. make
  5. sudo make install

注:配置这加上 --enable-shared 可以避免安装 ffmpeg 时出现错误 ERROR: libx264 not found

安装 ffmpeg

在 ffmpeg 官网下载页面 http://ffmpeg.org/download.html 获取到下载链接,文章完成时版本是 ffmpeg-4.0.tar.bz2,命令行如下:

  1. .-...
  2. -...
  3. -.
  4. . -- --- --- --- ---

配置 ldconfig

完成上述步骤后,直接运行命令 ffmpeg 会报错:ffmpeg: error while loading shared libraries: libx264.so.155: cannot open shared object file: No such file or directory。

找不到对应库,库文件存放在 /usr/local/lib 这个目录,这里将目录添加到配置文件中,命令行如下:

  1. nano /etc/ld.so.conf

添加 /usr/local/lib,最终文件内容为:

  1. include /etc/ld.so.conf.d

运行 ldconfig 使配置生效:

  1. sudo ldconfig

检测安装

完成上述步骤后,ffmpeg就应该正确安装了。在命令行输入 ffmpeg,可以看到类似如下输出:

  1. ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
  2. built with gcc 6.3.0 (Raspbian 6.3.0-18+rpi1+deb9u1) 20170516
  3. configuration: --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree
  4. libavutil 56. 14.100 / 56. 14.100
  5. libavcodec 58. 18.100 / 58. 18.100
  6. libavformat 58. 12.100 / 58. 12.100
  7. libavdevice 58. 3.100 / 58. 3.100
  8. libavfilter 7. 16.100 / 7. 16.100
  9. libswscale 5. 1.100 / 5. 1.100
  10. libswresample 3. 1.100 / 3. 1.100
  11. libpostproc 55. 1.100 / 55. 1.100
  12. Hyper fast Audio and Video encoder
  13. usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

系列说明

小无相功是小说《天龙八部》中「逍遥派」的一门内功,讲究不着形相,无迹可寻,熟悉后再了解其他武功招式便可依仗威力习得,甚至青出于蓝而胜于蓝。而树莓派形似小无相功,同具无限可能,了解一些基础便可轻松上手,去探寻其他更多未知。因此,系列以此为题,带来一系列树莓派相关的教程,同时也是对个人长期折腾树莓派以来的一个归档整理。

注:本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 未本地化版本许可协议进行许可。

文章最后发布于: 2018-05-01 22:51:31