首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >FLV视频文件格式图示

FLV视频文件格式图示

原创
作者头像
chengkunkou
修改2018-08-28 20:26:02
修改2018-08-28 20:26:02
2.1K0
举报
文章被收录于专栏:直播开发直播开发

1  背景介绍

        FLV协议是一种常见的视频文件格式,现在很多的直播中经常使用到http-flv协议,即在http上传送flv格式数据。由于笔者从事直播系统后台开发,对flv格式的学习是必不可少的。在笔者对flv文件格式的学习过程中,将flv格式用图的方式画出来,希望对大家学习flv格式有帮助。

      学习flv最靠谱的方案是看Adobe公司的文档,非常详细,百度搜索video_file_format_spec_v10_1.pdf文件即可。

2  flv格式

2.1  文件

      flv整体可以分为两部分,FLV Header和FLV Body。其中FLV Body由多个PreviousTagSize和Tag组成,PreviousTagSize表明了前一个Tag的大小。结构如下图:

2.2  FLV Header

      flv header中包含了flv的版本号,是否包含音频,视频等信息。详细定义请参照

flv_v10_1_adobe.pdf文档中的定义,结构如下图:

2.3  Tag

      Tag由tag header和data两部分组成。结构如下图:

2.3.1  Tag Header

      Tag header中定义了Tag对应的Data的类型(音频、视频,脚本等),时间戳等信息。

详细定义请参照flv_v10_1_adobe.pdf文档中的定义,结构如下图:

2.3.2  Data

      Data中主要关注三种类型:音频、视频,脚本。

2.3.2.1  Video

     Video类型表明Data中存储的是视频数据,由Video Tag Header和Video Data组成。视频的编码类型可以是H264、H265等等。详细定义请参照flv_v10_1_adobe.pdf文档中的定义,结构如下图:

2.3.2.2  Audio

     Audio类型表明Data中存储的是音频数据,由Audio Tag Header和Audio Data组成。音频的编码类型可以是aac、mp3等。详细定义请参照flv_v10_1_adobe.pdf文档中的定义,结构如下图:

2.3.2.3  Script

     Script类型表明Data中存储的是脚本数据,存储的格式是AMF格式。AMF格式的定义参考amf0_spec_121207.pdf和amf3_spec_121207.pdf两个文档。

2.4  FLV格式整体图

      flv格式整体如下图,看不清的可以点击查看清晰大图:

3  总结

      本文主要通过图示的方式介绍了FLV文件格式,希望有助于大家理解学习FLV文件格式。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1  背景介绍
  • 2  flv格式
    • 2.1  文件
    • 2.2  FLV Header
    • 2.3  Tag
      • 2.3.1  Tag Header
      • 2.3.2  Data
      • 2.3.2.1  Video
      • 2.3.2.2  Audio
      • 2.3.2.3  Script
    • 2.4  FLV格式整体图
  • 3  总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档