FLV, Adobe的轻量级流媒体格式,凭借其紧凑封装和互联网友好特性,深受开发者青睐。这个小巧的文件后缀.flv由header和body两大部分构成,body由Tag和Previous Tag Size(4字节)串联起视频、音频和脚本信息的脉络。
每个Tag由11字节的header引领,tag data则根据内容分为视频、音频和脚本。其中,Script Tag Data独具特色,包含两个AMF包,一个封装字符串"onMetaData",另一个封装元数据数组,如duration和audiodatarate等关键参数。
深入解析:
实例演示:
FLV的开头,即9字节header,涵盖了音频和视频信息。视频Tag的第一个tag头(0x09000022)标记了AVC数据的存在,紧接着是sps和pps的具体数据。音频方面,首个tag长度为4字节,表示AAC格式,采样率为44kHz,16位,单声道;第二个tag则携带AAC的raw数据,长度为752字节。
若想深入学习FLV解析,更多技术细节和C/C++、Linux、FFmpeg等实用资源,可以参考以下链接获取资料包:[链接](https://www.jianshu.com/p/651deb57a6b4)。这里还有群组福利,免费分享更多相关知识和资源。