ffmpeg官网下载页面:http://www.ffmpeg.org/download.html

github下载页面  https://github.com/FFmpeg/FFmpeg/releases

我下载的是当前最新稳定版4.2.3:http://www.ffmpeg.org/releases/ffmpeg-4.2.3.tar.gz

下载的ffmpeg-4.2.3.tar.gz文件13M ,安装后311M

在windows下目前最新版的ffmpeg自带了h264,所以在windows下压缩的mp4在网页播放是没有问题的。然而在linux下需要安装h264解压的mp4文件才能在网页上播放要增加参数指定: -vcodec libx264,命令如下:

ffmpeg -i  /home/www/source.mp4 -vf scale=1280:720  -b:v 800k -maxrate 900k -vcodec libx264 /home/www/output.mp4

注意事项:

1.如果执行上面命令会出错,说明你没有安装x264,请参考下面安装步骤二

2.如果已经安装了ffmpeg的,但是没有安装x264的,ffmpeg需要重新安装,可以 find / -name "libx264.so.160" 查找是否有安装

1.ffmpeg安装准备工作(安装nasm)

如果不安装会报错:nasm/yasm not found or too old. Use --disable-x86asm for a crippled build.

yum  -y  install yasm      (Yasm是一个完全重写的NASM汇编。它支持x86和AMD64指令集。)

如果安装了版本太低,会报错nasm/yasm is too old 就安装最新版本的  https://www.nasm.us/

我这里安装的是目前nasm最新的版本:

wget https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.gztar -zxvf  nasm-2.14.02.tar.gzcd nasm-2.14.02./configure make &&make install echo $? 或者 whereis nasm 查看是否安装成功
成功输出:0 或者 nasm: /usr/local/bin/nasm

2.安装H264(必须的不然在linux下ffmpeg处理的mp4文件无法在网页播放)

git clone https://code.videolan.org/videolan/x264.gitcd  x64./configure --prefix=/usr/local/x264 --enable-shared --enable-static --disable-asmmake  && make  installecho $?  确认安装是否成功

3.安装ffmpeg,解压下载的ffmpeg文件,切换到刚下载的ffmpeg目录

如果已经安装过ffmpeg需要重新安装的情况,执行make clean安装到/usr/local/ffmpeg目录./configure --enable-gpl --enable-libx264 --prefix=/usr/local/ffmpeg
make && make install     大约20分钟吧,我的云服务器(入门级)编译完成后:cd  /usr/local/ffmpeg/bin/  

加两条软连接(然后重新连接下命令行窗口)

ln  -s /usr/local/ffmpeg/bin/ffmpeg /usr/bin/ffmpeg

ln  -s /usr/local/ffmpeg/bin/ffprobe /usr/bin/ffprobe

输入 ffmpeg --help

没出错就表示安装成功,如果出现错误:

ffmpeg: error while loading shared libraries: libx264.so.160: cannot open shared object file: No such file or directory

查找libx264.so.160在那个位置,如果没有的话说明刚才第二步的h264没有安装成功

 find / -name "libx264.so.160" 

/software/x264/libx264.so.160
/usr/local/lib/libx264.so.160

找到 libx264.so.160 , vim /etc/ld.so.conf文件把ffmpeg的lib目录加进去,我的ffmpeg安装在/usr/local/ffmpeg,所以就把目录/usr/local/ffmpeg/lib加进去

vim /etc/ld.so.conf

include ld.so.conf.d/*.conf
/lib
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/ffmpeg/lib #把你的fffmpeg安装目录下的lib目录加进去

让配置生效: ldconfig

[root@email bin]# ffmpeg -version 

这样就说明安装成功了

FFMPEG使用:https://blog.csdn.net/qq_27517377/article/details/106410995

参考文章:

动态库问题:https://blog.csdn.net/baidu_38172402/article/details/80875074

FFMPEG使用H264:http://trac.ffmpeg.org/wiki/Encode/H.264

linux安装编译安装 ffmpeg,解决linux下ffmpeg压缩的mp4无法在网页播放问题相关推荐

  1. linux如何编译boost指定库,linux下编译安装boost库

    linux下编译安装boost库 先看一下系统环境 Linux o-pc 3.19.0-22-generic #22-Ubuntu SMP Tue Jun 16 17:15:15 UTC 2015 x ...

  2. linux系统编译安装mysql_Linux下编译安装MySQL

    获得以下所需的源代码包,并存放在/usr/local/src 与mysql相关:boost_1_59_0.tar.gz cmake-3.6.2.tar.gz mysql-5.7.16.tar.gz 安 ...

  3. Linux apache编译安装

    Linux apache编译安装 1.下载httpd-2.2.15.tar.gz wget  http://mirror.bjtu.edu.cn/apache/httpd/httpd-2.2.17.t ...

  4. linux PHP 编译安装参数详解

    linux PHP 编译安装参数详解 ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc -- ...

  5. firefly AIO-RK3399J Linux SDK编译报错解决

    Firefly AIO-RK3399J Linux SDK编译报错解决 Zhang-Zhen 2020-09-30 22:01:04  收藏 分类专栏: RK3399工作记录 文章标签: linux  ...

  6. linux sudo 命令无法使用,Linux运维知识之解决Linux下无法使用sudo命令问题

    本文主要向大家介绍了Linux运维知识之解决Linux下无法使用sudo命令问题,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 问题描述 使用普通用户登录后在终端中执行sudo ...

  7. linux内核编译最详细,Linux内核编译详细教程,linux内核编译

    Linux内核编译详细教程,linux内核编译 尝试编译下Linux-kernel 4.14.14,使用Ubuntu 16.04 64位 系统. kernel-4.14.14 内核文件约96MB,解压 ...

  8. linux crontab不运行,Linux运维知识之解决Linux中crontab不执行ntpdate问题

    本文主要向大家介绍了Linux运维知识之解决Linux中crontab不执行ntpdate问题,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 解决Linux中crontab尚未 ...

  9. Linux环境编译安装Mysql以及PHP中文乱码解决

    mysql安装  5.6以后可能会收费,所以选择5.1 以下从台湾中山大学镜像下载 1.首先要安装C++编译环境 # yum install gcc-c++ 2.下载解压 # wget http:// ...

最新文章

  1. hdu3635 Dragon Balls(带权并查集)
  2. python No tests were found问题解决方法
  3. Spring Aware容器感知技术
  4. Bootstrap简介--目前最受欢迎的前端框架(一)
  5. 超级简单的权限类[结合CI和DWZ]
  6. HDU4143-A Simple Question数论题解
  7. Java集合(8)--集合工具类Collections
  8. 重学java基础第十六课:jdk jre jvm
  9. 移植wpa_supplicant软件与DHCP软件解密WPA/WPA2 加密的无线网络
  10. 一般程序员 vs 优秀程序员,没有对比就没有伤害
  11. “针对即席工作负荷进行优化”如何影响你的计划缓存
  12. ROS入门 SLAM
  13. 库,表,记录的相关操作
  14. Mybatis的两种分页方式:RowBounds和PageHelper
  15. CSS3导入字体后用另外一种索引去加载字体里面的字符的问题。
  16. springboot二手交易平台 毕业设计-附源码290915
  17. 命令点亮硬盘灯_【硬盘无法识别怎么办?】
  18. 7年时间,从功能测试到测试开发月薪30K,有志者事竟成
  19. Security:osquery 介绍
  20. 「军民链智合创」科技美学出海 BitCEO比特维度全球CEO发展大会参展台北

热门文章

  1. java-汉字转拼音
  2. 连接数据库实现图书管理系统
  3. Android Api 大全
  4. 女生学护理和计算机哪个好,女生学什么专业合适,千万不要随意选择,不然追悔莫及!...
  5. 光辉城市mars渲染在不同模式下的配置需求,设计师必看
  6. Django Rest_framework 9(支付宝沙箱)
  7. MapReduce编程规范及示例编写
  8. c语言移位运算的作用,C语言的移位操作符使用方法
  9. 扫盲:-zilla的来源
  10. 飞桨AI Studio - 人工智能学习与实训社区