【音视频】FLV封装格式

本文详细解释了FLV文件的头部结构,特别是Tag的signature和typeflags,以及音频和视频数据在Tag中的位置。重点讲解了时间戳和数据存放的位置,以及如何通过TagType区分音频和视频数据,以及视频码流包的编码顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基本概念

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

在这里插入图片描述

flv文件头

主要是看signture和typeflags

在这里插入图片描述

flv文件体

重点:Tag包数据

在这里插入图片描述

Tag结构详细说明

在这里插入图片描述
注意:

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

音频 AudioTag Data

所在位置
在这里插入图片描述在这里插入图片描述

⾳频Tag Data区域开始:

  • 第⼀个字节包含了⾳频数据的参数信息
    在这里插入图片描述

  • 第⼆个字节以后为⾳频流数据
    在这里插入图片描述

视频 Video Tag Data

所在位置
在这里插入图片描述

在这里插入图片描述
视频Tag Data区域开始:

  • 第⼀个字节包含了视频数据的参数信息
    在这里插入图片描述

  • 第⼆个字节以后为视频流数据
    在这里插入图片描述

总结

时间戳存放位置

位置:
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.......
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值