【音视频】FLV封装格式

基本概念

文件头(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.......
相关推荐
JS-s13 小时前
Week 1:多媒体处理链路总览
音视频
知南x16 小时前
【STM32MP157 视频监控项目】(2) 移植 Nginx
stm32·nginx·音视频
却道天凉_好个秋20 小时前
音视频学习(八十四):视频压缩:MPEG 1、MPEG 2和MPEG 4
学习·音视频
却道天凉_好个秋21 小时前
音视频学习(八十三):视频压缩:MJPEG技术
学习·音视频·mjpeg·视频压缩
qianbo_insist21 小时前
基于图像尺寸的相机内参拼接视频
数码相机·音视频·拼接
水中加点糖1 天前
RagFlow实现多模态搜索(文、图、视频)与(关键字/相似度)搜索原理(二)
python·ai·音视频·knn·ragflow·多模态搜索·相似度搜索
却道天凉_好个秋1 天前
音视频学习(八十二):mp4v
学习·音视频·mp4v
winfredzhang1 天前
从零构建:基于 Node.js 的全栈视频资料管理系统开发实录
css·node.js·html·音视频·js·收藏,搜索,缩略图
行业探路者1 天前
二维码标签是什么?主要有线上生成二维码和文件生成二维码功能吗?
学习·音视频·语音识别·二维码·设备巡检
Android系统攻城狮2 天前
Android16音频之获取Record状态AudioRecord.getState:用法实例(一百七十七)
音视频·android16·音频进阶