FFMPEG 安装教程windowslinux(CentOS版)

news2024/9/21 4:39:17

ps: 从笔记中迁移至blog

版本概述

Windows 基于win10
Linux 基于CentOS 7.6

一.Windows安装笔记

1.下载安装

https://ffmpeg.org/download.html

在这里插入图片描述
在这里插入图片描述

2 解压缩,拷贝到需要目录,重命名

在这里插入图片描述

3 追加环境变量

 echo %PATH%
 setx /m PATH "%PATH%;F:\dev_tools\ffmpeg\bin"

在这里插入图片描述

4 重启cmd验证

ffmpeg -version

在这里插入图片描述

5.测试命令

查询所有设备

ffmpeg -list_devices true -f dshow -i dummy

查询具体设备信息, 如:摄像头

ffmpeg -f dshow -list_options true -i video="Integrated Camera"

二.Linux安装ffmpeg

1 下载

wget https://johnvansickle.com/ffmpeg/release-source/ffmpeg-4.1.tar.xz
在这里插入图片描述

2 解压&安装

ps: 如果需要安装x264 ,请跳过该步骤 直接安装yasm 和nasm

tar -Jxvf ffmpeg-4.1.tar.xz
cd ffmpeg-4.1
sudo ./configure --prefix=/usr/local/ffmpeg
sudo make & make install

2.1 发生错误: nasm/yasm not found

在这里插入图片描述

2.2 请先安装yasm

2.2.1 在线安装
yum install yasm
2.2.2 离线安装
rpm -ivh epel-release-7-13.noarch.rpm
rpm -ivh yasm-1.2.0-4.el7.x86_64.rpm
yasm --version

在这里插入图片描述

3 添加环境变量

sudo vi /etc/profile
export FFMEPG=/usr/local/ffmpeg
export PATH=${FFMEPG}/bin:${PATH}
source /etc/profile

在这里插入图片描述

4. 配置X264

4.1 安装nasm

4.1.1 在线安装
yum install build-essential nasm
4.1.2 离线安装
wget https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/nasm-2.13.03.tar.gz
tar -zxvf nasm-2.13.03.tar.gz
cd nasm-2.13.03/
sudo ./configure --prefix=/usr/local/nasm && make
sudo make install
export PATH=/usr/local/nasm/bin:${PATH}
nasm -v 

在这里插入图片描述

4.2 安装x264

git clone https://code.videolan.org/videolan/x264.git
  cd x264
  ./configure --prefix=/usr/softinstall/x264/ --includedir=/usr/local/include --libdir=/usr/local/lib  --enable-shared --enable-static --disable-asm
 
  make&& make install

在这里插入图片描述
在这里插入图片描述

4.3 重新编译ffmpeg 命令

./configure --prefix=/usr/local/ffmpeg --enable-gpl --enable-shared --enable-libx264
make clean
make && make install
export PATH=/usr/local/ffmpeg/bin:${PATH}

4.4 追加ffmpeg插件目录

vi /etc/ld.so.conf
/usr/local/x264/lib
sudo ldconfig

5. 测试视频压缩

ffmpeg -i rtsp://admin:12345@192.168.101.243 -c:a libfaac -ar 44100 -ab 48k -c:v libx264 -f flv rtmp://127.0.0.1:31935/live/video11 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/391603.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用C/C++制作一个简单的俄罗斯方块小游戏

用C/C制作一个简单的俄罗斯方块小游戏 用C/C制作一个简单的俄罗斯方块小游戏 0 准备1 游戏界面设计 1.1 界面布局1.2 用 EasyX 显示界面1.3 音乐播放 2 方块设计 2.1 方块显示2.2 随机生成一个方块2.3 方块记录 3 方块移动和旋转 3.1 方块的移动3.2 方块的旋转3.3 方块的碰撞和…

基于 WebSocket、Spring Boot 教你实现“QQ聊天功能”的底层简易demo

目录 前言 一、分析 1.1、qq聊天功能分析 1.2、WebSocket介绍 1.2.1、什么是消息推送呢? 1.2.2、原理解析 1.2.3、报文格式 二、简易demo 2.1、后端实现 2.1.1、引入依赖 2.1.2、继承TextWebSocketHandler 2.1.3、实现 WebSocketConfigurer 接口 2.2、…

LeetCode096不同的二叉搜索树(相关话题:卡特兰数)

目录 题目描述 解题思路 代码实现 进出栈序列理解卡特兰数分析策略 相关知识 参考文章 题目描述 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: …

《程序员面试金典(第6版)》面试题 02.07. 链表相交

题目描述 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果…

socket本地多进程通信基本使用方法和示例

目录 前言: socket是什么 socket基本原理框图 socket基本函数 1 socket() 函数 2 bind()函数 3 connect()函数 4 listen() 函数 5 accept() 函数 6 read() write() send() recv()函数 7 close()函数 8 字节序转换(hton) 示例代码 …

使用 Pulumi 打造自己的多云管理平台

前言在公有云技术与产品飞速发展的时代,业务对于其自身的可用性提出了越来越高的要求,当跨区域容灾已经无法满足业务需求的情况下,我们通常会考虑多云部署我们的业务平台,以规避更大规模的风险。但在多云平台部署的架构下&#xf…

埃安自研版图扩至夸克电驱,动力研发团队已超1000人

埃安的三电自研版图正在扩大。3月3日,广汽集团旗下埃安发布了一项名为“夸克电驱”的技术产品,相比主流电驱体积减少一倍,同时电机功率密度比主流电驱增加了一倍。此前,比亚迪刚刚发布易四方动力系统,特斯拉也在投资者…

HTML常见标签

文章目录一、HTML基础标签注释标签标题标签段落标签换行标签格式化标签图片、音频、视频标签超链接标签列表标签表格标签布局标签表单标签表单标签概述form标签属性表单项标签综合案例一、HTML基础标签 基础标签就是和文字相关的标签 标签描述<h1> ~ <h6>定义标题…

【项目管理】晋升为领导后,如何开展工作?

兵随将转&#xff0c;作为管理者&#xff0c;你可以不知道下属的短处&#xff0c;却不能不知道下属的长处。晋升为领导后&#xff0c;如何开展工作呢&#xff1f; 金九银十&#xff0c;此期间换工作的人不在少数。有几位朋友最近都换了公司&#xff0c;职位得到晋升&#xff0c…

前端——1.相关概念

这篇文章主要介绍前端入门的相关概念 1.网页 1.1什么是网页&#xff1f; 网站&#xff1a;是指在因特网上根据一定的规则&#xff0c;使用HTML等制作的用于展示特定内容相关的网页集合 网页&#xff1a;是网站中的一“页”&#xff0c;通常是HTML格式的文件&#xff0c;它要…

JAVA后端部署项目三步走

1. JAVA部署项目三步走 1.1 查看 运行的端口 lsof -i:8804 &#xff08;8804 为端口&#xff09; 发现端口25111被监听 1.2 杀死进程,终止程序 pid 为进程号 kill -9 pid 1.3 后台运行jar包 nohup java -jar -Xms128M -Xmx256M -XX:MetaspaceSize128M -XX:MaxM…

C++笔记之lambda表达式

引言 Lambda表达式是从C 11版本引入的特性&#xff0c;利用它可以很方便的定义匿名函数对象&#xff0c;通常作为回调函数来使用。大家会经常拿它和函数指针&#xff0c;函数符放在一起比较&#xff0c;很多场合下&#xff0c;它们三者都可以替换着用。 语法 [ captures ] (…

javaScript基础面试题 ---宏任务微任务

宏任务微任务一、为什么JS是单线程语言&#xff1f;二、JS是单线程&#xff0c;怎样执行异步代码&#xff1f;1、JS是单线程语言 2、JS代码执行流程&#xff0c;同步执行完&#xff0c;再进行事件循环&#xff08;微任务、宏任务&#xff09; 3、清空所有的微任务&#xff0c;再…

机器学习100天(四十):040 线性支持向量机-公式推导

《机器学习100天》完整目录:目录 机器学习 100 天,今天讲的是:线性支持向量机-公式推导! 首先来看这样一个问题,在二维平面上需要找到一条直线划分正类和负类。 我们找到了 A、B、C 三条直线。这三条直线都能正确分类所有训练样本。但是,哪条直线最好呢?直观上来看,我…

代码随想录算法训练营第六天|242.有效的字母异位词 、349. 两个数组的交集 、 202. 快乐数、1. 两数之和

当我们遇到了要快速判断一个元素是否出现集合里的时候&#xff0c;就要考虑哈希法。哈希法是牺牲了空间换取了时间&#xff0c;要使用额外的数组&#xff0c;set或者是map来存放数据&#xff0c;才能实现快速的查找。当我们要使用集合来解决哈希问题的时候&#xff0c;优先使用…

【SpringCloud】SpringCloud教程之Nacos实战(1)

目录Nacos是什么&#xff1f;一.Nacos下载二.安装Nacos三.Nacos原理四.Nacos快速入门五.Nacos服务多级存储模式六.Nacos根据集群设置负载均衡1.根据同集群优先访问2.根据权重配置负载均衡七.Nacos的环境隔离八.Nacos和Eureka的区别前提&#xff1a;以订单服务和用户服务为例&am…

【C++基础入门】数组、函数

一&#xff1a;数组 1.1 概述 所谓数组&#xff0c;就是一个集合&#xff0c;里面存放了相同类型的数据元素 特点1&#xff1a; 数组中的每个数据元素都是相同的数据类型 特点2&#xff1a; 数组是由连续的内存位置组成的 1.2 一维数组 1.2.1 一维数组定义方式 一维数组…

世界那么大,你哪都别去了,来我带你了解CSS3 (二)

文章目录‍❤️‍&#x1f525;CSS文档流‍❤️‍&#x1f525;CSS浮动‍❤️‍&#x1f525;CSS定位‍❤️‍&#x1f525;CSS媒体查询‍❤️‍&#x1f525;CSS文档流 文档流是文档中可显示对象在排列时所占用的位置/空间。 例如&#xff1a;块元素自上而下摆放&#xff0c;内…

第一章---Pytorch快速入门---第一节---张量及运算

目录 1.1张量的数据类型 1.2 张量的生成 1.3 张量操作 1.4 张量的计算 一、张量 在高等数学中&#xff0c;单独的一个数是标量&#xff0c;而有序排列的一组数字是一个向量&#xff08;例如一个数组&#xff09;&#xff0c;向量组可以构成矩阵。向量是一维的&#xff0c;而…

Java——腐烂的橘子

题目链接 leetcode在线oj题——腐烂的橘子 题目描述 在给定的 m x n 网格 grid 中&#xff0c;每个单元格可以有以下三个值之一&#xff1a; 值 0 代表空单元格&#xff1b;值 1 代表新鲜橘子&#xff1b;值 2 代表腐烂的橘子。 每分钟&#xff0c;腐烂的橘子 周围 4 个方…