FLV封装格式

基本概念

文件头(Header)+文件体(Body)

FLV封装格式_第1张图片

flv文件头

主要是看signture和typeflags

FLV封装格式_第2张图片

flv文件体

重点:Tag包数据

FLV封装格式_第3张图片

Tag结构详细说明

FLV封装格式_第4张图片
注意:

  • 每个Tag的头字段DataSize只是该Tag下data部分的大小,不包括Tag的header部分的大小

音频 AudioTag Data

所在位置
FLV封装格式_第5张图片FLV封装格式_第6张图片

⾳频Tag Data区域开始:

  • 第⼀个字节包含了⾳频数据的参数信息
    FLV封装格式_第7张图片

  • 第⼆个字节以后为⾳频流数据
    FLV封装格式_第8张图片

视频 Video Tag Data

所在位置
FLV封装格式_第9张图片

FLV封装格式_第10张图片
视频Tag Data区域开始:

  • 第⼀个字节包含了视频数据的参数信息
    FLV封装格式_第11张图片

  • 第⼆个字节以后为视频流数据
    FLV封装格式_第12张图片

总结

时间戳存放位置

位置:
Timestamp:每一个Tag的头信息第5个字节-第7个字节,一共三个字节
TimestampExtended:还有一个扩展字节
一共4个字节

时间戳占4个字节 其中第四个字节是⾼位 前三个字节是低位(每个tag的5~8字节),毫秒级

数据存放位置

位置:
音频Tag Data:
	● 第⼀个字节包含了⾳频数据的参数信息,
	● 第⼆个字节开始为⾳频流数据。
视频Tag Data:
    ● 第⼀个字节包含视频数据的参数信息——帧类型4+编码器4
    ● 第⼆个字节开始为视频流数据

怎么区别 音频 视频数据

位置:
TagType

视频码流包序列

当前序列:
其中TS、flv⼀般按照编码顺序排列
编码顺序 I P P B B B......
对应帧号 0 1 5 3 2 4.......

你可能感兴趣的:(音视频,音视频)