大家好,又见面了,我是你们的朋友全栈君。
树莓派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:iie123456@172.16.18.207:554/h264/ch1/main/av_stream -c:v h264_omx -f flv test.flv
顺便说一下GCC降级方法
报段错误时,我开始以为是gcc版本不对造成的。后来发现好像不是。
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
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152931.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...