文档章节

Centos7.6 编译安装ffmpeg4

阿dai学长
 阿dai学长
发布于 08/29 20:15
字数 780
阅读 103
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

ffmpeg介绍

它作为迄今为止最流行的一个开源多媒体框架之一,FFmpeg有两种基本使用方式——作为库或者作为工具,其中后者的使用场景更多,同时它也被称为多媒体开发的“瑞士军刀”。详见

FFmpeg有很多使用场景,其中较为典型的有播放器、媒体编辑器、云转码等等。

FFmpeg官网

安装准备

  • 下载ffmpeg源码包:地址

  • 安装ffmpeg依赖

    yum install -y yasm
    

编译安装ffmpeg4

# 下载源码包后解压:
$ tar xvJf ffmpeg-4.1.tar.xz
$ cd ffmpeg-4.1
$ ./configure --enable-shared --prefix=/usr/local/ffmpeg  # 时间比较久...

系统配置

  • 编辑 /etc/ld.so.conf ,将ffmpeg依赖的库加入系统环境:

    $ vim /etc/ld.so.conf
    # 输入以下内容
    include ld.so.conf.d/*.conf
    /usr/local/ffmpeg/lib/
    
    $ ldconfig  # 使上述配置生效
    
  • 加入系统命令:

    $ ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/bin/ffmpeg
    
  • 检查安装结果:

    [root@trancecode-204 bin]# ffmpeg -version
    ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers
    built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36)
    configuration: --enable-shared --prefix=/usr/local/ffmpeg
    libavutil      56. 22.100 / 56. 22.100
    libavcodec     58. 35.100 / 58. 35.100
    libavformat    58. 20.100 / 58. 20.100
    libavdevice    58.  5.100 / 58.  5.100
    libavfilter     7. 40.101 /  7. 40.101
    libswscale      5.  3.100 /  5.  3.100
    libswresample   3.  3.100 /  3.  3.100
    

出现以上输出,表示基础版ffmpeg安装完成,请继续往下看!!!

使用yum安装(推荐)

使用上述方法编译安装,只是安装了ffmpeg的基础包,具体生产环境中可能会因为缺少某些依赖包而报错。当然,你可以逐个安装所以的依赖包,但是这样操作太麻烦了,使用yum安装会一次性把所有依赖装上,接下来使用yum安装:

$ yum install -y epel-release 

# 安装Nux Dextop Yum 源
$ rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
$ rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
## 配置RPM-GPG-KEY可能报错,但是只要nux-dextop安装成功就可以忽略上述错误

# 补充Centos6 Nux Dextop Yum源
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm

# 安装ffmpeg
$ yum install -y ffmpeg ffmpeg-devel 

$ ffmpeg -version
ffmpeg version 2.8.15 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic' --extra-ldflags='-Wl,-z,relro ' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-crystalhd --enable-gnutls --enable-ladspa --enable-libass --enable-libcdio --enable-libdc1394 --enable-libfdk-aac --enable-nonfree --disable-indev=jack --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-openal --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libx264 --enable-libx265 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect
libavutil      54. 31.100 / 54. 31.100
libavcodec     56. 60.100 / 56. 60.100
libavformat    56. 40.101 / 56. 40.101
libavdevice    56.  4.100 / 56.  4.100
libavfilter     5. 40.101 /  5. 40.101
libavresample   2.  1.  0 /  2.  1.  0
libswscale      3.  1.101 /  3.  1.101
libswresample   1.  2.101 /  1.  2.101
libpostproc    53.  3.100 / 53.  3.100

上面结果可见,很多依赖包被安装!

ffmpeg基础使用

ffmpeg命令基本用法

© 著作权归作者所有

阿dai学长
粉丝 76
博文 263
码字总数 337363
作品 0
朝阳
运维
私信 提问
(一)MySQL数据库-Centos7.6安装MySQL5.7.26

版权声明:转载请注明原文地址 https://blog.csdn.net/Super_RD/article/details/89760856 (一)MySQL数据库-Centos7.6安装MySQL5.7.26 我的系统版本为CentOS7.5,MySQL版本为5.7.26 为什么...

Super_RD
05/02
0
0
CentOS7.6服务器部署VNC

CentOS7.6服务器部署VNC 2019年04月22日 16:50:39 sukysun125 阅读数 268 CentOS7.6服务器部署VNC 安装vnc服务器 开启vnc 开启远程端口 查看服务器ip 关闭防火墙和selinux 远程访问 安装vnc...

linjin200
07/17
93
0
MySQL5.7新特性 ---- MGR初探

一、MGR基础 1、复制背景 1.1 主从复制 传统MySQL提供了一种简单的主从复制方式,一个主,有一个或者多个从。主节点执行和提交事务,然后将他们发送到从节点,以重新执行(在基于语句的复制中...

hs2021
05/13
0
0
Nginx+Keepalived实现简单的服务高可用

一般情况下,如果我们做小型项目,前端用一个nginx做反向代理即可,大概是这样的 但是,作为互联网项目,纯2C的话必然需要做高可用,不仅后端的Server有N个,Nginx同样需要有N个,一主N备,当...

小尘哥
2018/12/27
0
0
rancher 2.2.X HA 部署K8S

介绍 本文主要目的在于记录rancher ha集群搭建步骤,内容包括系统配置、docker安装、k8s安装、rancher ha安装等。 服务器环境信息: 节点名称 IP OS 安装软件 Master 192.168.100.22 Centos...

Elson
05/17
614
0

没有更多内容

加载失败,请刷新页面

加载更多

交换机switch 的shutdown 与 no shutdown

shutdown是关闭接口(端口),接口状态会变为DOWN,no shutdown是激活接口(端口),状态变为UP,一般在给vlan或者端口配置管理ip或者端口ip后使用。 有时候我们配置某个端口前会需要把端口关闭到...

刘日辉
34分钟前
5
0
AOP底层源码分析

思维导图 AOP AOP: 面向切面编程[底层就是动态代理] 指程序在运行期间动态的将某段代码切入到指定方法位置进行运行的编程方式。 AOP通知方式 前置通知: logStart(),在目标方法(div)运行之前运...

volc1612
48分钟前
5
0
OSChina 周六乱弹 —— 别听他们的,你不胖你只是毛茸茸的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @且无需多言 :分享Rise Against的单曲《Audience Of One (Ghost Note Symphonies)》: 硬核朋克不插电版本,隐藏在喧嚣下的柔情! 《Audienc...

小小编辑
今天
33
2
apache httpClient实现代理发送Post请求

CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials( new AuthScope("host", port), new UsernamePasswordCredentials(username, password......

huangkejie
今天
5
0
SpringCloud

单体应用存在的问题 ● 随着业务的发展,开发变得越来越复杂。 ● 修改、新增某个功能,需要对整个系统进行测试,重新部署。 ● 一个模块出现问题,很可能导致整个系统崩溃。 ● 多个开发团队...

Star永恒
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部