当前位置: 首页 > news >正文

【音视频】ffmpeg音视频处理基本流程

一、ffmpeg音视频处理基本流程

首先先看两条命令

ffmpeg -i 1.mp4 -acodec copy -vcodec libx264 -s 1280x720 2.flv
ffmpeg -i 1.mp4 -acodec copy -vcodec libx265 -s 1280x720 3.mkv
  • -i :表示输入源,这里是1.mp4,是当前路径下的视频文件
  • -acodec copy: 用于指定音频编码方式。copy 表示直接复制输入文件的音频流,不进行重新编码。这样可以节省处理时间,同时保留原始音频的质量和编码格式。
  • -vcodec libx264/libx265:-vcodec 用于指定视频编码方式,这里使用libx264/libx265编码器进行H264/H265编码
  • -s 1280x720:指定视频的分辨率,这里使用1280 x 720的分辨率
  • .flv/.mkv:指定输出文件的容器(文件)格式,flv和mkv都是常见的音视频容器

生成后的文件:

使用ffprobe查看转换后的视频参数:

ffprobe 2.flv

这里的编码是H.264+AAC 分辨率是1200x720:

在这里插入图片描述

ffprobe 3.mkv

这里的hevc就是H265,音频使用AAC,分辨率是1280x720

在这里插入图片描述

我们来看看具体的命令执行流程是怎么样的:

  • 输入文件 : 例如这里的1.mp4
  • 编码数据包:例如这里的视频编码libx264
  • 解码后的数据帧:解码后得到相应的数据帧,进行后续处理
  • 处理数据帧:比如这里的分辨率转换1280x720,通常使用的是filter来处理
  • 编码数据包:把处理后的数据帧重新编码,例如libx265和libx265
  • 输出文件:比如这里的2.flv和3.mkv

在这里插入图片描述

如果采用copy模式就不需要指定编码器了

http://www.lryc.cn/news/546333.html

相关文章:

  • 【网络编程】之TCP实现客户端远程控制服务器端及断线重连
  • 云原生容器编排:构建智能弹性应用的自动化引擎
  • centos虚拟机安装
  • 社会力模型:Social force model for pedestrian dynamics
  • 机器学习数学通关指南
  • 【Mac】2025-MacOS系统下常用的开发环境配置
  • # C# 中堆(Heap)与栈(Stack)的区别
  • ubuntu离线安装nvidia-container-runtime
  • 用Python+Flask打造可视化武侠人物关系图生成器:从零到一的实战全记录
  • 学习笔记-DeepSeek在开源第四天发布DualPipe和EPLB两项技术
  • C++入门基础知识1
  • 神经网络AI原理回顾
  • PPT 小黑第38套
  • 主时钟与虚拟时钟约束
  • K8S学习之基础六:k8s中pod亲和性
  • 如何通过rust实现自己的web登录图片验证码
  • 盛京开源社区加入 GitCode,书写东北开源生态新篇章
  • QKV 注意力机制在Transformer架构中的作用,和卷积在卷积神经网络中的地位,有哪些相似之处?
  • 高效与高并发API开发:使用FastAPI与Redis实现请求限制与速率控制
  • Centos7源码编译安装Sqlite最新版本
  • mybatis热点面试题第五弹
  • KTransformers部署 使671B DeepSeek R1成「办公桌标配」
  • sql-labs less5-8
  • 一个大型应用的云原生一般有多少个服务?
  • Linux下安装VS Code
  • 【零基础到精通Java合集】第一集:Java开发环境搭建
  • Rocky Linux 系统安装 typecho 个人博客系统(Docker 方式)
  • C++-第二十一章:特殊类设计
  • pytorch 模型测试
  • 在kali linux中kafka的配置和使用