欢迎来到天天文库
浏览记录
ID:51101602
大小:43.00 KB
页数:11页
时间:2020-03-09
《素材文件交换格式深入研究.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、MXF素材文件交换格式深入研究 2012-09-03
2、访问次数:262
3、新闻来源:电科网 【摘要】DCI规定数字电影需采用MXF封装音视频等节目素材内容。为了深入理解MXF基础原理,本文研究了MXF素材文件交换格式,详细介绍了MXF文件的物理结构和逻辑结构,并介绍了MXF中如头部元数据、索引表、操作模式、字节对齐等重要概念。 【关键字】MXF分区索引表随机索引包头部元数据操作模式KAG 前言 根据DCI规范,数字电影数据包(DigitalCinemaPackage,DCP)中音视频等素材数据采用素材文件交换格式(MaterialExchangeFo
4、rmat,MXF)进行封装[1]。素材文件交换格式主要用于音视频素材的交换。音视频节目通常是由在时间线上同步的流式音视频素材组成的,为了交换和存储的方便,需要将这些素材用数据文件的形式进行表示,基于此目的,SMPTE377M标准定义了素材文件交换格式(MXF)[2]。 由于MXF技术是数字电影技术中的一项重要技术,有必要深入理解MXF的基础原理。MXF文件的基础单元KLV结构及装载节目内容的通用容器已经在《KLV编码协议及通用容器——MXF基础原理详解之一》文中进行了介绍,在此基础之上,本文将详细介绍MXF文件的物理结构和逻辑结构,并深入研究MXF中如头部元数据、索引表、操作模式、字节
5、对齐等重要概念。 1、MXF文件的物理结构(码流结构) MXF文件根据所含内容可分为3个部分:文件头(FileHeader)、文件体(FileBody)和文件尾(FileFooter)。包含素材数据(EssenceData)的素材容器(EssenceContainer)全都存放于文件体(FileBody)中。在文件体中可含1个或多个素材容器。文件头是对整个MXF文件的综合描述,包括对文件体内的素材及其容器以及素材之间的同步和播放关系等的描述和控制。文件尾是MXF文件的终止部分,可包含索引表、控制信息和元数据。这种分类方法将控制信息及元数据与素材内容区分开,而文件头通常比较小,
6、单独分析其中的参数,就可了解MXF文件中所含节目内容的各项特征。简单的MXF文件基本结构如图1所示。 图1简单MXF文件的数据结构 若MXF文件中有多个素材容器,需将各个素材容器进行分隔。另外,为了随机索引、访问及文件的部分存储、恢复的方便,有时需将素材容器分割成不同的小块。这些小块在内容上逻辑连续,但是物理存放位置上不一定连续。 为此,可将MXF文件划分成多个分区(partition),共有三类分区:头部分区(HeaderPartition)、主体分区(BodyPartition)和尾部分区(FooterPartition)。1个MXF文件可含1个头部分区、0个或多个主体分区、0个
7、或1个尾部分区。头部分区是在MXF文件中唯一必须要出现的分区。 每个分区都是由分区包(partitionpack)开头,紧随其后可能有头部元数据(HeaderMetadata)、1个索引表(IndexTable)的部分或全部、1个素材容器的部分或全部。分区包是1个KLV包,说明分区包本身的信息及整个分区的信息,包括分区类型、该分区在文件中的位置,以及所包含的头部元数据、索引表、素材容器、操作模式(OperationalPattern)等信息。其中操作模式限定文件的复杂程度。 在头部分区内必须包含头部元数据,在尾部分区内不得包含素材容器,从尾部分区开始表明MXF文件内没有素材内容。在
8、头部分区之前,有的MXF文件可能会有Runin部分用于伪装MXF文件为别的文件类型。尾部分区之后,可能会有随机索引包(RandomIndexPack,RIP)用于对各个分区的索引。除Runin部分外,MXF文件是由一系列KLV包组成的。 各分区的结构如图2所示。 图2各个分区(partition)的结构 图3含两个素材容器的MXF文件 1个MXF文件中可含有1个或多个素材容器,并可分割成多个小块,分别存放于除尾部分区外的头部分区或主体分区内,每个素材容器都有1个唯一标识符BodySID。每个素材容器又可创建相应的索引表,每个索引表也有相应的唯一标识符IndexSID,索引表也可
9、分割成小块存放。在素材容器元数据(EssenceContainerData)中,将素材容器的BodySID和相应索引表的IndexSID相互关联起来。图3所示即为含有两个素材容器及相应索引表的MXF文件,其中素材容器1还被分割成a、b两个部分,分别存放于头部分区和1个主体分区内,另外2个主体分区,1个仅存放了素材容器1的b部分的索引表,1个存放了素材容器2。 2、索引表和随机索引包 每个素材容器都可创建一个
此文档下载收益归作者所有