【读书会第13期】《FFmpeg从入门到精通》学习笔记2:学习FFmpeg的视频封装格式

举报
Ania 发表于 2022/07/11 14:36:50 2022/07/11
【摘要】 前言:之前没接触过音视频处理这块的内容,刚好这次领读会分享《FFmpeg从入门到精通》这本书,借此机会了解一下相关的知识。本次笔记为领读视频第二章内容。一、FFmpeg支持的封装格式:1.视频封装格式:MP4、FLV、MKV、TS等2.音频封装格式:MP3、AAC等3.网络协议封装格式:RTMP、RTSP、HLS等二、本章主要学习MP4封装格式MP4封装格式是当前日常生活和工作中最常见的视频...

前言:
之前没接触过音视频处理这块的内容,刚好这次领读会分享《FFmpeg从入门到精通》这本书,借此机会了解一下相关的知识。本次笔记为领读视频第二章内容。
一、FFmpeg支持的封装格式:
1.视频封装格式:MP4、FLV、MKV、TS等
2.音频封装格式:MP3、AAC等
3.网络协议封装格式:RTMP、RTSP、HLS等
二、本章主要学习MP4封装格式
MP4封装格式是当前日常生活和工作中最常见的视频文件格式,适用性广泛:PC端(windows、mac、linux)、移动端(Android、iOS)
三、MP4格式标准
MP4格式标准为ISO-14496 Part 12和ISO-14496 Part 14,具体特征有:
1.MP4文件由许多Box和FullBox组成
2.FullBox是Box的扩展,在Header中增加了8位version信息和24位flags信息
3.每个Box由Header和Data两部分组成
4.Header中包含了整个Box的长度大小(size)和类型(type)
5.Data中包含了实际的数据,可以是纯数据,也可以是子Box。当Box中的Data是一系列子Box时,这个Box又被称为Container(容器)
image.png
四、MP4 ftyp Box
一般位于文件开始位置,其中包含了MP4视频文件的类型、版本、兼容协议等信息
image.png
五、MP4 moov容器
moov容器中包含了MP4视频文件的媒体数据信息,内部又包含两个子容器:mvhd和trak,前者定义文件头信息,后者定义媒体文件中的track信息
moov容器一般默认生成在MP4文件结尾,在线播放时需要加载完整个文件才能正常打开,为了能够快速打开视频,需要把moov容器放在MP4文件的前面
image.png
六、MP4 mdat Box
用来存放媒体文件的实际数据内容。
image.png
总结:
FFmpeg可以处理多种音视频封装格式,本次领读章节带领我们对常用的MP4格式进行了详细的学习,了解了MP4格式标准及其文件结构
后续空闲时间可以再对其他音视频格式增进一下了解

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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