第三周 AVI文件格式解析

一、AVI文件简介

  AVI英文全称为Audio Video Interleaved,Audio/Video Interleaved(视音频交织),用于采集、编辑、播放的RIFF文件,由信息块,数据块,索引块组成。
  AVI文件将音频(语音)和视频(影像)数据包含在一个文件容器中,允许音视频同步回放。类似DVD视频格式,AVI文件支持多个音视频流。AVI信息主要应用在多媒体光盘上,用来保存电视、电影等各种影像信息。

AVI文件格式是基于RIFF(资源交换文件格式)文档格式。RIFF文件由RIFF标头组成,后跟零个或多个列表和区块

  • RIFF标头具有以下形式:

    'RIFF' fileSize fileType (data)

    其中,“RIFF"是文本 FOURCC 代码"RIFF”,是一个 4 字节值,表示文件中数据的大小,是标识特定文件类型的fileSize fileType FOURCC。 的值包括 FOURCC 的大小以及以下数据的大小,但不包括 fileSize fileType "RIFF"FOURCC 的大小或 的大小 fileSize 。 文件数据按任何顺序由区块和列表组成。

  • RIFF区块具有以下形式:

    ckID ckSize ckData

    其中,“ckID”是标识区块中包含的数据的 FOURCC,是一个 4 字节值,表示 中数据的大小,是 ckID ckSize ckData ckData 零个或多个数据字节。 数据始终填充到最近的 WORD 边界。 ckSize 提供区块中有效数据的大小;它不包括填充、的大小 ckID 或 的大小 ckSize

  • RIFF列表具有以下形式:

    'LIST' listSize listType listData

    其中,“LIST"是文本 FOURCC 代码"LIST”,是提供列表大小的 4 字节值,是 FOURCC 代码,由区块或列表组成( listSize listType 按任何 listData 顺序)。"LIST"的值包括 listSize 的大小加上 的大小 listType listData ;它不包括 “LIST” FOURCC 或 的大小 listSize

本部分的其余部分使用下列表示法来描述 RIFF 区块:

ckID ( ckData )

其中区块大小是隐式的。 使用此表示法,列表可以表示为:

'LIST' ( listType ( listData ) )

可选元素位于方括号中: [ optional element ]

AVI文件结构

RIFF ('AVI '
      LIST ('hdrl'
            'avih'(<Main AVI Header>)
            LIST ('strl'
                  'strh'(<Stream header>)
                  'strf'(<Stream format>)
                  [ 'strd'(<Additional header data>) ]
                  [ 'strn'(<Stream name>) ]
      
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值