ffmpeg-命令大全03
ffplay/mpv
查看所有的解码器 | ffplay -decoders >>decoders.txt |
ffplay无延时无缓存播放 | ffplay -fflags nobuffer -i "%1" |
ffplay指定size播放 | ffplay -x 480 -y 270 -i "%1" |
ffplay指定解码器 | ffplay -vcodec hevc_cuvid "%1" [h264_cuvid hevc h264 mpeg4] |
jetson指定解码器 | ffplay -vcodec h264_nvmpi "%1" |
mpv指定size播放 | mpv -x --geometry=300 "%1" |
mpv指定dxva2解码播放 | mpv --vo=gpu --hwdec=dxva2 "%1" [dxva2-copy/d3d11va/d3d11va-copy/nvdec/nvdec-copy/cuda/cuda-copy --vo=direct3d] |
mpv指定自动GPU解码播放 | mpv --vo=gpu --gpu-api=auto --hwdec=auto "%1" |
ffmpeg推流相关
| %URL% 为xx.mp4或 rtsp://xx等视频源 |
rtp推流 | ffmpeg -re -i %URL% -vcodec copy -f rtp rtp://127.0.0.1:12345 |
udp推流 | ffmpeg -re -i %URL% -vcodec copy -f mpegts udp://127.0.0.1:12345 |
rtsp推流 | ffmpeg -re -fflags +genpts -stream_loop -1 -i %URL% -vcodec copy -f rtsp rtsp://127.0.0.1:554 |
rtmp推流 | ffmpeg -re -i %URL% -c copy -f flv rtmp://127.0.0.1/live |
rtsp推流(640x480转码mpeg4) | ffmpeg -re -fflags +genpts -stream_loop -1 -i %URL% -vf "scale=640:480:flags=bicubic,setsar=1/1" -vcodec mpeg4 -b:v 420k -c:a aac -ac 2 -b:a 64k -r 15 -sn -map_metadata -1 -map_chapters -1 -f rtsp rtsp://127.0.0.1:554 |
ffmpeg测试流写入flv | ffmpeg -probesize 32768 -i "rtsp://xxx" -acodec copy -vcodec copy -f flv out.flv |
ffmpeg字幕相关
subtitles | %URL% 为xx.mp4或 rtsp://xx等视频源 |
增加srt/ass字幕流 设默认 | ffmpeg -i %URL% -i sub.srt -c copy -disposition:s:0 default out.mkv |
拷贝视音频轨 增加双轨字幕流 设默认 | ffmpeg -i %URL% -i %~DPsub0.ass -i %~DPsub1.ass -map 1:s -c copy -map 2:s -c copy -map 0:v -c copy -map 0:a -c copy -disposition:s:0 default -shortest out.mkv |
提取srt字幕流 | ffmpeg -i %URL% sub.srt |
字幕流转换 | 1)原始文本输出 ffmpeg -i %URL% -an -vn -bsf:s mov2textsub -scodec copy -f rawvideo sub.txt ffmpeg -i %URL% -an -vn -c:s copy -f rawvideo -map 0:s sub.txt 2)ass格式输出 ffmpeg -i %URL% -an -vn -scodec copy sub.ass |
ffmpeg设备音频相关
| %URL% 为xx.mp4或 rtsp://xx等视频源 |
列出设备 | ffmpeg -list_devices true -f dshow -i dummy |
摄像头采集(采10秒) | ffmpeg -f dshow -i video="Integrated Camera" -t 10 -vcodec libx264 out.mp4 |
列出硬解等 | ffmpeg -codecs | grep cuvid ffmpeg -hwaccels 显示所有可用的硬件加速器 |
分离提取音频(aac/ac3/dts) | ffmpeg -i %URL% -map 0:a:0 -acodec copy -y %~DP01.ac3 ffmpeg -i %URL% -map 0:a:1 -acodec copy -y %~DP02.aac |
ac3合并0,1音频轨到视频 | ffmpeg -i %URL% -i %~DP00.ac3 -i %~DP01.ac3 -map 0:v -c copy -map 1:a -c copy -map 2:a -c copy -shortest -map 0:s -scodec copy out.mkv |
拷贝视音频字幕 默认字幕轨0 | ffmpeg -i %URL% -map 0:v:0 -vcodec copy -map 0:a -acodec copy -map 0:s -scodec copy -disposition:s:0 default -y out.mkv |
拷贝视频,音轨调换 默认音轨0 | ffmpeg -i %URL% -map 0:0 -map 0:2 -map 0:1 -c copy -disposition:a:0 default -y out.mkv |
-disposition:a:0 default | 有时不能生效 是需要将音轨分离再合并来解决 |
ffmpeg转码相关
| %URL% 为xx.mp4或 rtsp://xx等视频源 |
WMV转264的ts | ffmpeg -i test.wmv -c:v libx264 -strict -2 1.ts |
MP4转TS | ffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts |
MP4合并 | ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4 |
转H264/H265裸流 | ffmpeg -i %URL% -codec copy -bsf: h264_mp4toannexb -f h264 out.264 ffmpeg -i %URL% -vframes 200 -r 25 -s 3840x2160 -aspect 16:9 -b:v 12000000 -vcodec hevc -y out.265 nvenc/nvenc_h264/h264_nvenc ffmpeg -i %URL% -vcodec h264_nvenc -y out.264 hevc_nvenc/nvenc_hevc ffmpeg -i %URL% -vcodec nvenc_hevc -y out.265 ffmpeg -i %URL% -vcodec hevc -y 265.mp4 |
硬解硬编 | ffmpeg -c:v h264_cuvid -i input -c:v h264_nvenc -preset slow output.mkv |
ffmpeg像素相关
| yuvj444p.yuv为完全取样的的YUV文件 |
生成yuvj444p | ffmpeg -f lavfi -i testsrc -frames 10 -pix_fmt yuvj444p -s 320x320 yuvj444p.yuv |
yuvj444p转换成422 | ffmpeg -pix_fmt yuvj444p -s 320x320 -i yuvj444p.yuv -pix_fmt yuvj420p yuvj420p.yuv |
yuvj444p转换成420 | ffmpeg -pix_fmt yuvj444p -s 320x320 -i yuvj444p.yuv -pix_fmt yuv422p yuv422p.yuv |
yuvj444p转换成411 | ffmpeg -pix_fmt yuvj444p -s 320x320 -i yuvj444p.yuv -pix_fmt yuvj411p yuvj411p.yuv |
yuvj444p转换成rgb24 | ffmpeg -pix_fmt yuvj444p -s 320x320 -i yuvj444p.yuv -pix_fmt rgb24 yuv2rgb.rgb |
rgb24转成yuvj444p | ffmpeg -s 320x320 -pix_fmt rgb24 -i yuv2rgb.rgb -pix_fmt yuvj444p -s 320x320 rgb2yuvj444p.yuv |
相关文章:
ffmpeg-命令大全03
ffplay/mpv 查看所有的解码器 ffplay -decoders >>decoders.txt ffplay无延时无缓存播放 ffplay -fflags nobuffer -i "%1" ffplay指定size播放 ffplay -x 480 -y 270 -i "%1" ffplay指定解码器 ffplay -vcodec hevc_cuvid "%1" […...
MATLAB中太赫兹时域光谱的最大似然参数估计
目录 一、引言 二、最大似然估计的基本原理 三、MATLAB中的最大似然估计实现 四、太赫兹时域光谱的最大似然参数估计 五、结论 六、参考文献 一、引言 太赫兹波(Terahertz wave)是电磁谱中介于微波与光波之间的一段频率范围,频率大约在…...

详解MySQL的并发控制
目录 1.概述 2.事务 2.1.什么是事务 2.2.事务的隔离级别 2.2.1.三种数据一致性问题 2.2.2.四种隔离级别 2.3.如何设置隔离级别 3.锁 3.1.锁与事务的关系 3.2.分类 3.3.表锁 3.3.1.概述 3.3.2.读锁 3.3.3.写锁 3.3.4.保护机制 3.4.行锁 3.4.1.概述 3.4.2.什么…...

Android Termux安装MySQL数据库 | 公网安全远程连接【cpolar内网穿透】
文章目录 前言1.安装MariaDB2.安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前言 Android作为移动设备,尽管最初并非设计为服务器,但是随着技术的进步我们可以将Android配置为生产力工具,变成一个随身…...

SpringBoot的常见配置
SpringBoot基础配置 1. 配置文件格式问题导入1.1 修改服务器端口1.2 自动提示功能消失解决方案1.3 SpringBoot配置文件加载顺序 2. yaml问题导入2.1 yaml语法规则2.2 yaml数组数据2.3 yaml数据读取 3. 多环境开发配置问题导入3.1 多环境启动配置3.2 多环境启动命令格式3.3 多环…...

LabVIEWCompactRIO 开发指南25 实施LabVIEW FPGA代码的方法
LabVIEWCompactRIO 开发指南25 实施LabVIEW FPGA代码的方法 开始开发时,应在LabVIEW项目的FPGA目标下创建VI,以便使用LabVIEW FPGA选板进行编程,该选板是LabVIEW选板的子集,包括一些LabVIEW FPGA特定函数。 应该在仿真模式下开…...

如何利用Jmeter从0到1做一次完整的压测
压测,在很多项目中都有应用,是测试小伙伴必备的一项基本技能,刚好最近接手了一个小游戏的压测任务,一轮压测下来,颇有收获,赶紧记录下来,与大家分享一下,希望大家能少踩坑。 一、压测…...

蓝桥:前端开发笔面必刷题——Day1 数组(一)
文章目录 📋前言🎯数组中重复的数字📚题目内容✅解答 🎯两数之和📚题目内容✅解答 🎯替换空格📚题目内容✅解答 🎯二维数组中的查找📚题目内容✅解答 📝最后 …...
SQL 教程-入门基础篇
文章目录 SQL 简介SQL 语法SQL SELECT 语句SQL SELECT DISTINCT 语句SQL WHERE 子句SQL AND & OR 运算符SQL ORDER BY 关键字SQL INSERT INTO 语句SQL UPDATE 语句SQL DELETE 语句 SQL 简介 SQL(Structured Query Language)是一种用于管理和操作关系…...
循环自相关函数和谱相关密度(六)——信号的循环平稳性(循环自相关函数)原理及推导
在通信、遥测、雷达和声纳系统中,一些人工信号是一类特殊的非平稳信号,它们的非平稳性表现为周期平稳性。通信信号常用待传输信号对周期性信号的某个参数进行调制、如对正弦载波进行调幅、调频和调相,以及对周期性脉冲信号进行脉幅、脉宽和脉位调制,都会产生具有周期平稳性…...
C/C++:04. 多态和虚函数
不加virtual,只能访问成员变量,不能访问成员函数 文章目录 前言1 虚函数与多态不用虚函数的多态使用虚函数的多态 2 C虚函数注意事项 构成多态的条件C虚函数注意事项构成多态的条件什么时候声明虚函数 3 C虚析构函数的必要性总结 前言 本节阐述C中的多态…...

拿下多个定点/比亚迪要上!这项技术要「降维打击」单目感知
2008年,斯巴鲁在全球首次推出了搭载有立体视觉摄像头的主动安全解决方案,并具有紧急制动功能的“EyeSight”。2010年,斯巴鲁推出升级版的“EyeSight”,成为世界上首个可以在全车速范围内避免碰撞的量产技术系统。 2014年ÿ…...
Go 的时间操作
Go 的时间操作 1. time 包 1.1. 时间类型 Go 语言中时间类型有两种: time.Time:表示时间的类型,常见的有两种方式: time.Now():获取当前的时间time.Date():根据指定的年、月、日、时、分、秒、纳秒等创…...
ThreeJS进阶之矩阵变换
ThreeJS的矩阵变换 Three.js使用matrix编码3D变换 —— 平移(位置),旋转和缩放。Object3D的每个实例都有一个matrix,用于存储该对象的位置,旋转和比例。这里介绍如何更新对象的变换。 三维物体(Object3D) 这是Three.js中大部分对象的基类,提供了一系列的属性和方法来对…...

分布式锁概念
什么是分布式锁 方案一:SETNX EXPIRE 方案二:SETNX value值是(系统时间过期时间) 方案三:使用Lua脚本(包含SETNX EXPIRE两条指令) 方案四:SET的扩展命令(SET EX PX NX) 方案五…...

PMP课堂模拟题目及解析(第10期)
91. 在项目执行阶段,一名项目干系人要求项目经理加入一个新过程的优化。项目经理应该怎么做? A. 执行实施整体变更控制过程。 B. 与过程专家一起审查项目。 C. 将优化项目分配给团队。 D. 拒绝范围蔓延企图。 92. 项目经理要求团队提供对项目应急计…...

Arm微架构分析系列3——Arm的X计划
1. 引言 前文介绍了Arm公司近几年在移动处理器市场推出的Cortex-A系列处理器。Cortex-A系列处理器每年迭代,性能和能效不断提升,是一款非常成功的产品。但是,Arm并不满足于Cortex-A系列每年的架构小幅度升级,又推出了X计划&#x…...

Kubernetes(K8S)的基础概念
文章目录 一、Kubernetes介绍1、什么是Kubernetes?2、为什么要用K8S?3、k8s的特性 二、k8s集群架构与组件1、Master组件2、配置存储中心——etcd3、Worker Node 组件 三、k8s核心概念●Pod●Pod 控制器(五大控制器)●Label●Label选择器(Label selector )●Service…...
【Linux进阶命令 04】lsof (看看是谁动了我的文件?)
文章目录 一、简介二、lsof语法2.1 基本格式2.2 选项2.3 输出字段解释 三、常用 lsof 操作3.1 查看某文件的相关进程3.2 网络相关:-i3.3 指定进程号打开的文件:-p3.4 指定用户打开的文件:-u3.5 某进程打开的文件:-c3.6 复合查询 四…...

华为OD机试真题 Java 实现【数字加减游戏】【2023Q1 200分】
一、题目描述 小明在玩一个数字加减游戏,只使用加法或者减法,将一个数字s变成数字t。 每个回合,小明可以用当前的数字加上或减去一个数字。 现在有两种数字可以用来加减,分别为a,其中b没有使用次数限制。 请问小明…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...

vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合
在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...
【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解
一、前言 在HarmonyOS 5的应用开发模型中,featureAbility是旧版FA模型(Feature Ability)的用法,Stage模型已采用全新的应用架构,推荐使用组件化的上下文获取方式,而非依赖featureAbility。 FA大概是API7之…...