(视频点播中的应用)AVI 文件解析

本文详细介绍了AVI文件的RIFF结构,包括RIFF块、LIST块和普通子块的组成。并提供了解析AVI头信息的代码示例,涉及到AVIStreamHeader和AVIMainHeader等关键结构,对于实现视频点播中的快速定位和播放至关重要。
摘要由CSDN通过智能技术生成

相对于点播 来说,解析一个视频文件结构格式必不可少,它关系到点播 的播放、快速定位等等。

AVI文件采用的是RIFF文件结构方式,RIFF(Resource Interchange File Format,资源互换文件格式)
是微软公司定义的一种用于管理windows环境中多媒体数据的文件格式,波形音频wave,MIDI和数字视频AVI都采用这种格式存储。

整个RIFF文件可以看成一个数据块,其数据块ID为RIFF,称为RIFF块。一个RIFF文件中只允许存在一个RIFF块。所有其他块都是RIFF块的子块,子块有两类,其中有一种子块的ID为"LIST",称为LIST,LIST块中可以再包含一系列的子块。另一类不能包含子块的,暂且称为普通子块。可见RIFF文件是按树形结构被组织

    下面是一个RIFF文件结构的例子
          + RIFF
          |    + LIST
          |    |    + sub chunk
          |    |    + LIST
          |    |    |    + sub chunk
          |    |    |    + sub chunk
          |    |    |    + sub chunk
          |    |    + LIST
          |    |    |    + sub chunk
          |    |    |    + sub chunk
          |    |    |    + sub chunk
          |    |    + sub chunk
          |    + LIST
          |    + sub chunk

 

    RIFF和LIST块分别比普通的数据块多一个被称为形式类型(Form Type)和列表类型(List Type)的数据域,其组成如下:

  1、4字节的数据块标记(Chunk ID)

  2、数据块的大小

  3、4字节的形式类型或者列表类型

  4、数据

 

所以,我们可以进行如下定义
  TIndexHeader = record
    Name

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值