视频文件头解析--wmv-解析流程

本文详细介绍了WMV视频文件的解析流程,从Header Object开始,重点解析File Properties Object、Stream Properties Object,特别是如何识别不同类型的Stream,如ASF_Video_Media、ASF_Audio_Media等,并详细阐述了不同类型Stream的Type-Specific Data结构,如WAVEFORMATEX和BITMAPINFOHEADER。
摘要由CSDN通过智能技术生成

1、第一层,Header Object,这个结构一般不解析。没什么用。跳过这30字节的结构

2、第二层,File Properties Object 、Header ExtensionObject和Stream Properties Object,前两个也没解析,直接跳过了。Header Object是一个容器,它里面必须包含一个File PropertiesObject, 一个Header Extension Object 和至少一个Stream Properties Object。

a)  用while循环从读入的数据中查找每个Stream Properties Object类型的128bit的Object ID,(Stream Properties Object是流属性对象,定义一个媒体流和其属性),如果找到,返回找到的位置pos。ff_asf_stream_header(B7DC0791-A9B7-11CF-8EE6-00C00C205365(guid),16进制guid的顺序是9107DCB7-B7A9-CF11-8EE6-00C00C205365)这个标志代表了Stream Properties Object类型的Object ID。

b)  获取16字节的Stream Type字段,判断当前stream的类型(video、audio)

i.  如果当前stream是ASF_Video_Media型,即Stream Type是BC19EFC0-5B4D-11CF-A8FD-00805F5C442B(guid),16进制guid的顺序是C0EF19BC-4D5B-CF11-A8FD-00805F5C442B,那么进行Video media type类型的Type-Specific Data数据解析。转第三层,BITMAPINFOHEADER 类型结构。

ii.  如

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值