【读书会第13期】视频文件的封装格式

举报
木斯佳001 发表于 2022/06/28 20:11:54 2022/06/28
【摘要】 【读书会第13期】第二章内容:视频文件的封装格式学习记录

视频文件的封装格式

FFmpeg 支持很多封装格式,包括MP4、FLV、MKV、TS 等视频封装格式、MP3、AAC 等音频封装格式以及RTMP、RTSP、HLS 等网络协议封装格式。
课程里重点介绍了MP4 视频封装格式。其中一个MP4文件由多个box组成,

每个box存储不同的信息,且box之间会出现嵌套。MP4的box有很多,但最重要的顶层box主要有如下三个:

ftyp:

File Type Box,描述文件遵从的MP4规范与版本,一般位于文件开始位置,其中包含了MP4 视频文件的类型、版本、兼容协议等信息。

moov:

Movie Box,媒体的metadata信息,有且仅有一个。moov 容器中包含了MP4 视频文件的媒体数据信息,内部又包含两个子容器:mvhd和trak,前者定义了文件头信息,后者定义了媒体文件中的track信息。moov 容器一般默认会生成在MP4 文件结尾,在线播放时需要加载完整个文件才能正常打开,为了能够快速打开视频,需要把moov 容器放在MP4 文件的前面。

mdat:

Media Data Box,存放实际的媒体数据,一般有多个
每个box有两部分组成:box header 和 box Data。

box header:

box的元数据,比如box type、box size。

box Data:

box的数据部分,实际存储的内容跟box类型有关,比如mdat中body部分存储的媒体数据。
当box body中嵌套其他box时,这样的box叫做container box。
整体讲解的还是比较详细,就是博主声音太小,听不清。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。