centos7安装ffmpeg及nasm等各组件

2023-10-30

一、安装nasm
下载nasm软件包
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.gz

解压并安装
tar -xvf nasm-2.14.tar.gz
 
cd nasm-2.14/
 
./configure
 
make && sudo make install

验证是否已安装
nasm -version

[root@x nasm-2.14]# nasm -version
NASM version 2.14 compiled on Aug 30 2022

二、安装yasm
下载yasm软件包
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

解压并安装
tar zxvf yasm-1.3.0.tar.gz
 
cd yasm-1.3.0/
 
./configure
 
make && sudo make install

验证是否已安装
[root@xyasm-1.3.0]# yasm --version
yasm 1.3.0
Compiled on Aug 30 2022.
Copyright (c) 2001-2014 Peter Johnson and other Yasm developers.
Run yasm --license for licensing overview and summary.

三、安装x264
下载x264

通过git:

git clone https://code.videolan.org/videolan/x264.git

(或)访问官网:

https://www.videolan.org/developers/x264.html

安装

cd x264/
 
./configure --enable-shared --enable-static
 
make && sudo make install验证是否已安装
[root@x x264]# x264 --version
x264 0.164.3095 baee400
built on Aug 30 2022, gcc: 4.8.5 20150623 (Red Hat 4.8.5-44)
x264 configuration: --chroma-format=all
libx264 configuration: --chroma-format=all
x264 license: GPL version 2 or later

四、安装pkg
先检查是否已安装pkg,已安装可跳过,(编译ffmpeg错误:ERROR: x264 not found using pkg-config ---重装pkg   

pkg安装出现这种报错:

configure: error: pkg-config and "glib-2.0 >= 2.16" not found, please set GLIB_CFLAGS and GLIB_LIBS to the correct values or pass --with-internal-glib to configure

使用 ./configure --with-internal-glib

)


[root@x home]# pkg-config --version
0.27.1

下载pkg软件包
wet https://pkg-config.freedesktop.org/releases/pkg-config-0.27.1.tar.gz
 
tar -zxvf pkg-config-0.27.1.tar.gz
 
cd pkg-config-0.27.1

编译
./configure
 
make
 
make check
 
make install

验证是否已安装 (同最初命令)
pkg-config --version
 
0.27.1

五、安装ffmpeg
安装gcc编译器
yum install gcc

下载ffmpeg

6.0版本,快速下载

wget http://ffmpeg.org/releases/ffmpeg-6.0.tar.xz

(或)访问官网选择任意版本

http://ffmpeg.org/download.html#releases

解压

tar -zxvf ffmpeg-6.0.tar.xz
 
mv ffmpeg-6.0/ /usr/local/ffmpeg/

配置ffmpeg
cd /usr/local/ffmpeg
 
./configure --enable-gpl --enable-libx264 --enable-static --disable-shared --enable-encoder=libx264 --extra-libs=-ldl

编译执行
make && sudo make install

查询ffmpeg
[root@x ffmpeg]# ffmpeg
ffmpeg: error while loading shared libraries: libx264.so.164: cannot open shared object file: No such file or directory

如果报错没找到文件,则:

# 先找到缺失文件的位置,例如执行
find / -name ‘libx264.so.164’
# 得到
/home/soft/x264/libx264.so.164
/usr/local/lib/libx264.so.164

# 修改ld.so.conf
vim /etc/ld.so.conf
最后一行添加:/usr/local/lib/

[root@x home]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf

/usr/local/lib/

# 加载改动
ldconfig

检测是否安装成功
[root@x home]# ffmpeg
ffmpeg version 5.0.1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-44)
  configuration: --enable-gpl --enable-libx264 --enable-static --disable-shared --enable-encoder=libx264 --extra-libs=-ldl
  libavutil      57. 17.100 / 57. 17.100
  libavcodec     59. 18.100 / 59. 18.100
  libavformat    59. 16.100 / 59. 16.100
  libavdevice    59.  4.100 / 59.  4.100
  libavfilter     8. 24.100 /  8. 24.100
  libswscale      6.  4.100 /  6.  4.100
  libswresample   4.  3.100 /  4.  3.100
  libpostproc    56.  3.100 / 56.  3.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

配置环境变量
vim /etc/profile
# 新增
PATH=$PATH:/usr/local/ffmpeg/bin
export PATH

# 加载配置
source /etc/profile

六、测试
选择网络视频连接,进行下载测试,成功即全流程结束。

ffmpeg -i http://xxx.com/x.m3u8 -c:v libx264 -y -t 60 -timeout 100000 /home/test.ts

这些包我好像都上传了,不知道有没有审核过,应该设置了几个积分
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

centos7安装ffmpeg及nasm等各组件 的相关文章

随机推荐

  • 华为OD机试 - 服务失效判断(Java)

    题目描述 某系统中有众多服务 每个服务用字符串 只包含字母和数字 长度 lt 10 唯一标识 服务间可能有依赖关系 如A依赖B 则当B故障时导致A也故障 依赖具有传递性 如A依赖B B依赖C 当C故障时导致B故障 也导致A故障 给出所有依赖
  • QT显示图片的四种方法

    QT显示图片的四种方法 原文地址 https blog csdn net flowerspring article details 113307194 1 Qt 设置背景图片的三种方式 setAutoFillBackground http
  • Error invoking remote method ‘docker-start-container‘: Error: (HTTP code 500) server error - Ports a

    文章目录 一 Error invoking remote method docker start container Error HTTP code 500 server error Ports are not available list
  • web到底是什么意思,web站点的创建方法

    web到底是什么意思 先来看看两个名词 一 超文本 hypertext 一种全局性的信息结构 它将文档中的不同部分通过关键字建立链接 使信息得以用交互方式搜索 它是超级文本的简称 二 超媒体 hypermedia 简介 WWW WorldW
  • HTML基础

    超文本标记语言 英语 HyperText Markup Language 简称 HTML 是一种用来结构化 Web 网页及其内容的标记语言 网页内容可以是 一组段落 一个重点信息列表 也可以含有图片和数据表 正如标题所示 本文将对 HTML
  • 多处使用laydate,上方限制下方时间范围

    多处使用laydate 上方限制下方时间范围 前言 需求是上方laydate开始与结束时间是一个范围 选定后 下方添加出的每一行数据中 都会调用laydate 但是范围不能超过上方 默认和上面时间一致 当点击上方切换时间时 下方时间同步更换
  • spark 统计线上日志ip分组统计

    线上日志格式如下 每次访问都会记录ip 标记红色部分 获取某一行看看怎么解析 2017 12 01 09 57 11 970 http nio 8082 exec 2 INFO com fullshare common aop Contro
  • 以太网,IP,TCP,UDP数据包分析

    转自 http www cnblogs com feitian629 archive 2012 11 16 2774065 html 1 ISO开放系统有以下几层 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层
  • 【无标题】DVWA通关攻略(持续更新)

    文章目录 DVWA通关攻略 持续更新 sql注入 级别 LOW sql盲注 级别 LOW DVWA通关攻略 持续更新 sql注入 级别 LOW 1 输入 进行试探 若提示语法错误 则也许有漏洞 2 试探列数 888 or 1 1 order
  • LeetCode:387(Python)—— 字符串中的第一个唯一字符(简单)

    字符串中的第一个唯一字符 概述 给定一个字符串 s 找到 它的第一个不重复的字符 并返回它的索引 如果不存在 则返回 1 输入 s leetcode 输出 0 输入 s loveleetcode 输出 2 输入 s aabb 输出 1 方法
  • 云服务器和虚拟主机区别

    虚拟主机和云服务器是常见的网站托管方式 都可以让网站在互联网上运行 但是它们有很大的区别 本文将从使用场景 性能 安全性 灵活性 价格等方面详细介绍虚拟主机和云服务器的区别 一 使用场景 虚拟主机是一个物理服务器通过虚拟化技术划分成多个虚拟
  • 数据结构 C 代码14:图的遍历

    一 图的遍历 从图中某一顶点出发 并系统地访问完图中的所有顶点 且都恰好访问一次的运算操作就被称作 图的遍历 图的遍历理解起来并不是很难 可以分开理解 遍 意为全部 历 意为经历 经过 合起来就是 全部顶点都经过一遍 图的遍历方式分为两种
  • Redis高频面试笔记:java版本号比较算法

    1 三重心智模型 先给大家科普一个概念 三重心智模型 认知科学家斯坦诺维奇 将人的心智模式 分成了三个部分 第一层是自主心智 自主心智是我们通过进化与内隐学习获得 比如 我们看到蛇就会害怕 情绪反应 以及文气 车感 网感这些说不清道不明的内
  • linux7怎么查看rsync状态,linux – Rsync显示单个文件的进度

    这可能就是你所追求的 rsync avvz times stats checksum human readable acls itemize changes progress out format t i Last Modified M b
  • 图解通信原理与案例分析-6:基于离散字符的RS232串口数字通信--收发双方独立预设置同步时钟

    前言 RS 232标准接口是计算机常用的串行通信接口标准之一 虽然比较简单与成熟 但对于理解通信原理的基本流程和框架 核心的概念有基础性帮助作用 本文将从通信原理的角度 解析RS232串口通信过程中的每个环节 包括硬件和软件 在信源和信宿之
  • [Unity] Unity的lua项目中模拟每帧运行一次的协程

    游戏中 我们经常需要把一些大量计算或一些需要持续逐帧运算的步骤交给协程处理 习惯了Monobehaviour中使用协程来完成这类操作的我们 然而 很多Unity项目在选择热更新方案的时候 基本都会选择使用slua ulua等lua解决方案
  • 怎么理解面向对象编程

    怎么理解面向对象编程 百度百科的说法 维基百科的说法 我的理解 面向对象编程的特性 封装 继承 多态 五大基本原则 SPR OCP LSP DIP ISP 单一职责原则SRP Single Responsibility Principle
  • 40个Python入门小程序

    有不少同学学完Python后仍然很难将其灵活运用 我整理 37 个Python入门的小程序 在实践中应用Python会有事半功倍的效果 例子1 华氏温度转换为摄氏温度 华氏温度转摄氏温度的公式 C F 32 1 8 本例考察Python的加
  • Vue 鼠标移入移出 样式改变

    div a span item span a div tab滑动 getCur a b if a 0 this curIndex 0 else if a 1 this curIndex 1 else this curIndex 2
  • centos7安装ffmpeg及nasm等各组件

    一 安装nasm 下载nasm软件包 wget https www nasm us pub nasm releasebuilds 2 14 nasm 2 14 tar gz 解压并安装 tar xvf nasm 2 14 tar gz cd