树莓派3B安装ffmpeg

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011636440/article/details/80294235

树莓派3B安装ffmpeg

树莓派型号:3b
操作系统:ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img

如果只使用基础功能可以参考https://blog.csdn.net/qq_28877125/article/details/70186287
用这里边的配置文件,编译起来的确比较快,十分钟内编译完成,但是,这个只包含了基础功能,我使用过程中需要读取rstp流,这就无法处理了。

我的步骤如下:

1。 安装sdl2

sudo apt-get install libsdl2-dev

2。安装x264

git clone git://git.videolan.org/x264.git
cd x264

./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl --enable-shared

make -j4
sudo make install
  • 【增加选项 –enable-shared可避免安装 ffmpeg 时出现错误 ERROR: libx264 not found】
  • 树莓派是4核CPU,编译时加上 -j4可以加快编译速度

3。安装ffmpeg

git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg

./configure --arch=armv7l --target-os=linux \
--enable-gpl --enable-libx264 \
--enable-nonfree \
\
--enable-omx \
--enable-omx-rpi \
--enable-encoder=h264_omx \
\
--enable-mmal \
--enable-hwaccel=h264_mmal \
--enable-decoder=h264_mmal \
\

make -j2
sudo make install

报错及解决方案

报错——internal compiler error: Segmentation fault【出现该错误时我使用的是make -j4编译的】
这里写图片描述
解决——make -j2,或直接用make
推测应该是内存不足造成的。

报错——ERROR: OMX_Core.h not found.
解决——sudo apt-get install libomxil-bellagio-dev
参考——http://ffmpeg.org/pipermail/ffmpeg-user/2017-October/037577.html

测试

ffmpeg -i rtsp://admin:[email protected]:554/h264/ch1/main/av_stream -c:v h264_omx -f flv test.flv

顺便说一下GCC降级方法

报段错误时,我开始以为是gcc版本不对造成的。后来发现好像不是。

扫描二维码关注公众号,回复: 3313771 查看本文章
sudo apt-get install --reinstall gcc gcc-4.9 gcc-4.9-base libgcc1 cpp-4.9
cd /usr/bin
sudo rm gcc
sudo ln -s gcc-4.9 gcc
gcc -v

参考——https://askubuntu.com/questions/312835/gcc-segmentation-fault-on-ubuntu-12-04
https://blog.csdn.net/u012175418/article/details/52690569

猜你喜欢

转载自blog.csdn.net/u011636440/article/details/80294235