ubuntu16.04 x264、ffmpeg4安装

ubuntu16.04 x264、ffmpeg 安装


安装)

说明

OpenCV3 读海康无线网络摄像头rtsp流时,每读几帧就会出现 “Invalid UE glomb code”,在OpenCV群里咨询后一老哥说opencv里面调用的ffmpeg库,重装ffmpeg试试,遂下水。
补充:更新ffmpeg版本后,linux上的现象并没有得到解决;测试了windows平台,运行正常
以下为参考的相关博主:
链接1: https://blog.csdn.net/weixin_44953262/article/details/111290097?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162695353116780265419296%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162695353116780265419296&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-1-111290097.pc_search_result_control_group&utm_term=ubuntu16.04++x264+ffmpeg4&spm=1018.2226.3001.4187.

链接2: https://blog.csdn.net/Number_oneEngineer/article/details/108848206?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162693971416780274110780%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=162693971416780274110780&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-3-108848206.pc_search_result_control_group&utm_term=linux+%E5%AE%89%E8%A3%85%E6%9C%80%E6%96%B0ffmpeg&spm=1018.2226.3001.4187.

1.安装xlib264

  1. 下载x264库http://download.videolan.org/x264/snapshots,我下载的最新稳定版:x264-snapshot-20191217-2245-stable.tar.bz2
  2. 解压下载好的x264-snapshot-20191217-2245-stable.tar.bz2
  3. 进入到库目录下
 cd x264-snapshot-20191217-2245-stable
  1. 配置x264 bash执行
 ./configure --enable-shared --disable-asm --prefix=/usr/local/x264
  1. 编译执行
make
  1. 继续
 make install
  1. x264库将会安装在/usr/local/下, 此时libx264.a默认安装在/usr/local/lib/下。要让其他程序可以使用这个库
    打开/etc/ld.so.conf
vim /etc/ld.so.conf
并添加下面的行:
/usr/local/lib
运行下面的命令重新加载共享库 sudo ldconfig

到这里x264就安装好了

2.安装yasm

并且是完全重写了nasm的汇编环境,接收nasm和gas语法,支持x86和amd64指令集,所以这里安装一下yasm即可

  1. yasm是一款汇编器,并且是完全重写了nasm的汇编环境,接收nasm和gas语法,支持x86和amd64指令集,所以这里安装一下yasm即可,下载地址是:
    http://yasm.tortall.net/Download.html.
  2. 执行下面命令安装:
tar -xvzf yasm-1.3.0.tar.gz
cd yasm-1.3.0/
./configure
make
make install

3.安装ffmpeg

  1. 下载地址:
    http://ffmpeg.org/download.html#build-windows.
  2. 解压后后,进入ffmpeg文件夹
    需要x264的安装路径:–extra-cflags="-I/usr/local/x264/include" --extra-ldflags="-L/usr/local/x264/lib",否则会出错。
./configure --enable-shared --extra-cflags="-I/usr/local/x264/include" --extra-ldflags="-L/usr/local/x264/lib" --enable-libx264  --enable-gpl  --prefix=/usr/local/ffmpeg/
  1. 编译与安装
make -j4
make install
  1. 进入安装目录/usr/local/ffmpeg/ ,查看一下发现有bin,include,lib,share这4个目录,其中bin是ffmpeg主程序二进制目录,include是C/C++头文件目录,lib是编译好的库文件目录,share是文档目录,然后进入bin目录,执行
./ffmpeg -version

查看当前版本的详细信息,默认情况下一般会报libavdevice.so.57: cannot open shared object file: No such file or directory,原因是lib目录未加载到链接到系统库中
5. 添加到系统库

vim /etc/ld.so.conf

然后添加一行内容:

/usr/local/ffmpeg/lib

之后保存并退出,然后执行 :

sudo ldconfig 

重新加载资源使配置生效,现在再次执行

./ffmpeg -version 

显示就正常了
6. 可以根据需要将bin目录添加至环境变量中以保证任何时候都能使用ffmpeg命令:

vi /etc/profile

添加下面这行

export PATH=/usr/local/ffmpeg/bin:$PATH

保存退出,运行profile

source /etc/profile

全局ffmpeg生效
到这ffmpeg安装完成并且生效
软连接:

ln -s /usr/local/ffmpeg/bin/ffmpeg ffmpeg
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值