ASF是Advanced Streaming Format的简称,由微软公司开发。ASF格局用于播放网上全动态影像,让用户能够鄙人载的同时同步播放影像,无需等待下载完毕。 用Windows MediaPlayer 能够翻开。
Microsoft公司的Windows Media的核心是ASF(Advanced Stream Format)。
微软将ASF 定义为同步媒体的同一容器文件格局。ASF是一种数据格局,音频、视频、图像以及掌握号令脚本等多媒体信息通过那种格局,以收集数据包的形式传输,实现流式多媒体内容发布。
ASF更大长处就是体积小,因而合适收集传输,利用微软公司的最新媒体播放器(Microsoft Windows Media Player)能够间接播放该格局的文件。
用户能够将图形、声音和动画数据组合成一个ASF格局的文件,当然也能够将其他格局的视频和音频转换为ASF格局,并且用户还能够通过声卡和视频捕获卡将诸如麦克风、录像机等等外设的数据保留为ASF格局。别的,ASF格局的视频中能够带有号令代码,用户指定在抵达视频或音频的某个时间后触发某个事务或操做。
ASF的特征 可扩展的媒体类型- ASF文件容许造造者很随便地定义新的媒体类型。ASF格局供给了十分有效的乖巧地定义契合ASF文件格局定义的新的媒体流类型。任一存储的媒体流逻辑上都是独立于其他媒体流的,除非在文件头部门明显地定义了其与另一媒体流的关系。
部件下载-特定的有关播放部件的信息(如,解压缩算法和播放器)可以存储在ASF 文件头部门,那些信息可以为客户机用来找到适宜的所需的播放部件的版本---假设它们没有在客户机上安拆。
可伸缩的媒体类型- ASF是设想用来表达可伸缩的媒体类型的"带宽"之间的依靠关系。
ASF存储各个带宽就像一个零丁的媒体流。媒体流之间的依靠关系存储在文件头部门,为客户机以一个独立于压缩的体例阐明可伸缩的选项供给了丰富的信息流的优先级化- 现代的多媒体传输系统可以动态地调整以适应收集资本严重的情状(如,带宽不敷)。多媒体内容的造造者要可以根据流的优先级表达他们的参考信息,如更低包管音频流的传输。
跟着可伸缩媒体类型的呈现,流的优先级的安放变得复杂起来,因为在造造的时候很难决定各媒体流的挨次。ASF容许内容造造者有效地表达他们的定见(有关媒体的优先级),以至在可伸缩的媒体类型呈现的情状下也能够。
多语言- ASF设想为撑持多语言。媒体流可以可选地指示所含媒体的语言。
那个功用常用于音频和文本流。一个多语言ASF文件指的是包罗差别语言版本的统一内容的一系列媒体流,其容许客户机在播放的过程中抉择最适宜的版本。
目次信息- ASF供给可陆续扩展的目次信息的功用,该功用的扩展性和乖巧性都十分好。所有的目次信息都以无格局编码的形式存储在文件头部门,而且撑持多语言,假设需要,目次信息既可预先定义(如,做者和题目),也能够是造造者自定义。
目次信息功用既能够用于整个文件也能够用于单个媒体流。
ASF文件格局 ASF 对象定义 ASF文件根本的组织单位喊做ASF 对象,它是由一个128位的全球独一的对象标识符(Object ID),一个64位整数的对象大小(Object Size)和一个可变长的对象数据(Object Data)构成。
对象大小域的值是由对象数据的大小加上24比特之和。
那个文件组织单位有点类似于RIFF(Resource Interchange File Format)字节片。RIFF字节片时AVI和WAV文件的根本单元。ASF对象在两个方面改进了RIFF的设想。
起首,无需一个权势巨子机构来治理对象标识符系统,因为计算机网卡可以产生一个有效的独一的GUID。其次,对象大小字段已定义得足够处置高带宽多媒体内容的大文件。
高层文件构造 ASF文件逻辑上是由三个高层对象构成:头对象(Header Object)、数据对象(Data Object)和索引对象(Index Object)。
。头对象是必须的而且必需放在每一个ASF文件的开头部门,数据对象也是必须的,且一般情状下紧跟在头对象之后。索引对象是可选的,但是一般选举利用。
高层ASF文件构造 在详细实现过程中可能会呈现一些文件包罗无序的(Out-Of-Order)的对象,ASF也撑持,但在特定情状下,将招致ASF 文件不克不及利用,如从特定的文件源如文件。
同样地,额外的高层对象也可能被运用并加进到ASF文件中。一般选举那些另加的对象跟在索引对象之后。
ASF数据对象可以被阐明的一个前提前提是头对象已被客户机领受到。ASF没有声明头对象信息是若何抵达客户端的,"抵达机造"是一个"当地实现问题",显然已超越了ASF 的定义范畴。
头对象先于数据对象抵达有三种体例:
包罗头对象的信息做为"会话声明"的一部门。
操纵一个与数据对象差别的"通道"发送头对象。 在发送ASF 数据对象之前发送头对象。
ASF 头对象 在ASF的三个高层对象中,头对象是独一包罗其他ASF 对象的对象。
头对象可能包罗一下对象:
文件属性对象(File Properties Object)----全局文件属性。
流属性对象(Stream Properties Object)----定义一个媒体流和其属性。
内容描述对象(Content Description Object)----包罗所有目次信息。
部件下载对象(Component Download Object)----供给播放部件信息。
流组织对象(Stream Groups Object)----逻辑上把多个媒体流组织在一路。
可伸缩对象(Scalable Object)----定义媒体流之间的可伸缩的关系。
优先级对象(Prioritization Object)----定义相关流的优先级。
彼此排斥对象(Mutual Exclusion Object)----定义排斥关系如语言抉择。
媒体彼此依靠对象(Inter-Media Dependency Object)----定义混合媒体流之间的彼此依靠关系。
级别对象(Rating Object)----根据W3C PICS定义文件的级别。
索引参数对象(Index Parameters Object)----供给需要的信息以重建ASF文件的索引。
ASF 头对象
头对象的感化是在ASF文件的起头部门供给一个寡所周知的比特序列,而且包罗所有其它头对象信息。
头对象供给了存储在数据对象中的多媒体数据的全局的信息。
ASF数据对象
数据对象包罗一个ASF 文件的所有多媒体数据。多媒体数据以ASF数据单位的形式存储,每一个ASF数据单位都是可变长的,且包罗的数据必需是统一种媒体流。数据单位在当它们起头传输的时候在数据对象中主动地排序,那种排序来自于穿插存储的文件格局。
ASF索引对象
ASF索引对象包罗一个嵌进ASF文件的多媒体数据的基于时间的索引。每以索引进进表示的时间间隔是在造造时设置的,而且存储在索引对象中。因为没有需要为一个文件的每一个媒体流成立一个索引,因而,凡是操纵一个时间间隔列表来索引一系列的媒体流。