
FFmpeg
文章平均质量分 97
note
lvy-
学习的使命是见识各种设计
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[FFmpeg] AVFormatContext、AVInputFormat、AVOutputFormat | libavformat
本章深入解析了媒体文件的"包装盒"机制。我们了解到FFmpeg通过容器处理层()实现文件结构解析(解封装)与新建结构化文件(封装)。该层负责识别数据流、读写元数据,并管理压缩数据的封装逻辑。通过简单重新封装操作,我们实现了容器格式转换而无需修改内容本身。现在我们已经掌握FFmpeg如何从容器中提取结构化数据(数据包),下一步将探索这些数据包在解码为原始视频帧或音频样本前的本质。下一章将深入解析压缩媒体数据包。压缩媒体数据包补充:类似包装盒的网络部分Linux网络实验也是各种协议包的层层封装。原创 2025-07-19 20:08:05 · 1105 阅读 · 0 评论 -
[FFmpeg] 输入输出访问 | 管道系统 | AVIOContext 与 URLProtocol | 门面模式
数据流获取:- AVIOContext 是上层抽象,提供统一的 I/O 接口。- URLProtocol 是底层实现,处理具体协议的细节。- 开发者通常只需操作 AVIOContext,无需直接调用 URL抽象和协议的重要性:在FFmpeg解码、编码或处理多媒体数据前,必须首先读取数据,处理完成后写出数据。通过协议处理器为多样化数据提供统一处理方式现在我们理解FFmpeg如何`获取原始字节`,下一步是`解析这些字节`。多媒体数据通常封装在容器格式==(如`MP4`、`MKV`、`AVI`)中原创 2025-07-19 17:45:22 · 1098 阅读 · 0 评论