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

ffmpeg(三):处理原始数据命令

FFmpeg 可以直接处理原始音频和视频数据(Raw PCM、YUV 等),常见场景包括:

  • 将原始 YUV 图像编码为 H.264 视频
  • 将 PCM 音频编码为 AAC 或 MP3
  • 对原始音视频数据进行封装(如封装为 MP4、TS)

处理原始 YUV 视频数据

有一个 YUV420P 格式的原始视频帧文件 input.yuv,分辨率为 1280x720,帧率为 25fps:

编码为 H.264:

ffmpeg -f rawvideo -pix_fmt yuv420p -s 1280x720 -r 25 -i input.yuv -c:v libx264 output.mp4

说明:

  • -f rawvideo:输入是原始视频流
  • -pix_fmt yuv420p:指定像素格式
  • -s:分辨率
  • -r:帧率
  • -i input.yuv:输入文件
  • -c:v libx264:使用 H.264 编码器

处理原始 PCM 音频数据

有一个 16-bit 小端 PCM 原始音频 input.pcm,采样率 44100,双声道:

编码为 AAC:

ffmpeg -f s16le -ar 44100 -ac 2 -i input.pcm -c:a aac output.m4a

说明:

  • -f s16le:16 位小端 PCM 格式
  • -ar:采样率
  • -ac:声道数
  • -c:a aac:使用 AAC 编码器

原始音视频合并封装(如裸流封装为 MP4)

有:

  • 视频帧文件:input.yuv
  • 音频帧文件:input.pcm

可以同步编码并封装为 MP4:

ffmpeg \-f rawvideo -pix_fmt yuv420p -s 1280x720 -r 25 -i input.yuv \-f s16le -ar 44100 -ac 2 -i input.pcm \-c:v libx264 -c:a aac \output.mp4

解码为原始数据(反向)

解码 MP4 为 YUV:

ffmpeg -i input.mp4 -c:v rawvideo -pix_fmt yuv420p output.yuv

解码 MP3/AAC 为 PCM:

ffmpeg -i input.mp3 -f s16le -ar 44100 -ac 2 output.pcm

格式参数表

数据类型FFmpeg 格式参数 (-f)说明
YUV420Prawvideo原始视频帧数据
PCM 16bits16le原始音频数据
RGB24rawvideo, rgb24RGB 帧数据
http://www.lqws.cn/news/128575.html

相关文章:

  • 网络编程之TCP编程
  • Ethernet IP转Modbus网关在热泵机组中的协议转换技术实现
  • webpack打包学习
  • Linux操作系统Shell脚本概述与命令实战
  • 标识符关键字
  • 论文阅读笔记——Large Language Models Are Zero-Shot Fuzzers
  • 【读代码】从预训练到后训练:解锁语言模型推理潜能——Xiaomi MiMo项目深度解析
  • NLP常用工具包
  • 打卡第36天:模型可视化以及推理
  • [Linux] Linux GPIO应用编程深度解析与实践指南(代码示例)
  • 乘用车自动驾驶和非乘用车(矿车,卡车)自动驾驶区别
  • 从传统 RAG 到知识图谱 + Agent
  • MySQL补充知识点学习
  • Java中Git基础操作详解(clone、commit、push、branch)
  • 高防IP可以防护什么攻击类型?企业网络安全的第一道防线
  • 【投稿优惠】2025年人工智能与图像处理国际会议(AIIP 2025)
  • (eNSP)配置WDS手拉手业务
  • Python绘图库及图像类型
  • Linux系统-基本指令(6)
  • 纹理压缩格式优化
  • 保险丝选型
  • 防火墙设置实战操作案例(小白的“升级打怪”成长之路)
  • java的迭代器
  • 【推荐算法】推荐系统核心算法深度解析:协同过滤 Collaborative Filtering
  • 如何在 HTML 中添加按钮
  • 《复制粘贴的奇迹:原型模式》
  • Devops自动化运维---py基础篇一
  • TypeScript 编译 ES6+ 语法到兼容的 JavaScript介绍
  • C++性能优化指南
  • vue源码解析——diff算法