58汽车 > 百科 > 厂商信息 > 厂商技术 >

ASF

ASF

返回目录↑1、概述

ASFASF电影截图ASF是(AdvancedStreamingFormat高级串流格式)的缩写,是微软公司针对real公司开发的新一代网上流式数字音频压缩技术,是Microsoft为Windows98所开发的串流多媒体文件格式。ASF是微软公司WindowsMedia的核心。这是一种包含音频、视频、图像以及控制命令脚本的数据格式。可和WMA及WMV互换使用。ASF是一个可扩展的文件格式用来存储多媒体数据同步。它支持的数据传输了各种各样的网络和协议同时还证明适合当地播放。在明确目标的ASF是提供一个基础,全行业的多媒体互操作性。每个格式的文件是由一个或多个媒体流。该文件头指定的内容整个文件,连同流的具体内容。多媒体数据,储存后的文件头,特别提到媒体流编号,以表明其类型和目的。提供和介绍的所有媒体流数据同步到一个共同的时间线。

ASFASFASF是一个开放标准,它能依靠多种协议在多种网络环境下支持数据的传送。同JPG、MPG文件一样,ASF文件也是一种文件类型,但它是专为在IP网上传送有同步关系的多媒体数据而设计的,所以ASF格式的信息特别适合在IP网上传输。ASF文件的内容既可以是熟悉的普通文件,也可以是一个由编码设备实时生成的连续的数据流,所以ASF既可以传送人们事先录制好的节目,也可以传送实时产生的节目。
  
ASF用于排列、组织、同步多媒体数据以利于通过网络传输。ASF是一种数据格式,它也可用于指定实况演示。ASF最适于通过网络发送多媒体流,也同样适于在本地播放。任何压缩/解压缩运算法则(编解码器)都可用来编码ASF流。
  
WindowsMediaService的核心是ASF。ASF是一种数据格式,音频、视频、图像以及控制命令脚本等多媒体信息通过这种格式,以网络数据包的形式传输,实现流式多媒体内容发布。其中,在网络上传输的内容就称为ASFStream。ASF支持任意的压缩/解压缩编码方式,并可以使用任何一种底层网络传输协议,具有很大的灵活性。
  
MicrosoftMediaplayer是能播放几乎所有多媒体文件的播放器,支持ASF在Internet网上的流文件格式,可以一边下载一边实时播放,无需下载完再听。ASF文件本地或网络回放;可扩充的媒体类型;部件下载、可伸缩的媒体类型;流的优先级化;多语言支持、环境独立性;丰富的流间关系以及扩展性等。

返回目录↑2、创建ASF文件

ASFASF电影截图如何生成ASF文件呢?在此提供软件和硬件的两种方式,仅供参考:
  
1、通过软件将MPEG-1格式的影像文件转换成微软最新的ASF视频流格式。使用软件工具为:SonicFoundryStreamAnywhere和WindowsMediaToolkit。具体实施步骤为:首先安装WindowsMediaToolkit或把相应版本号的ASF压缩编码驱动库拷贝到Windows/System目录。
  
接着运行软件——SonicFoundryStreamAnywhere。打开mpg文件。选择“Saveas”(另存为)→选择你要储存ASF文件的文件夹→选择“EncodeWindowsMediaFormat”项→设置你要生成的ASF文件的压缩比例。如果选250Video的话就相当于2MB/分钟的压缩速度,图像的质量不太好。同理,如果是选512Video相当于4MB/分钟的压缩速度。其实,质量好的ASF应该是在320×240和有30帧/秒的情况下,它的图像和声音仍然可以同步。最后,取消EncodeRealMediaformat选项并确认完成。
  
2、利用专用的视频采集卡(Ospres-200),借助“NetshowEcorder3.0”软件把录像机、影蝶机、摄像机等视频、音频信号转换成ASF格式。对已是数字格式的dat、mpg文件,可以通过豪杰超级解霸2000中的工具——“vcd转avi”程序,先转换成avi格式,再使用采集卡附带的软件完成转换到ASF过程。具体过程在此不作介绍。 

返回目录↑3、ASF文件功能

ASFASF电影截图ASF流文件的数据速率可以在28.8Kbps到3Mbps之间变化。用户可以根据自己应用环境和网络条件选择一个合适的速率,实现VOD点播和直播。

1、点播(VideoOnDemand)
因为ASF技术支持任意的压缩/解压缩编码,可以使用任何一种底层网络传输协议,这使它既能在高速的局域网内使用,也可以在拨号方式连接的低带宽Internet环境下使用。点播服务方式下,用户之间互不干扰,可以对点播内容的播放进行控制。这种方式最为灵活,但是占用服务器、网络资源。
  
ASF的点播内容均存放在VOD服务器上,建立VOD站点进行网页发布,在同一时间可多点同时点播相同或不同的节目,即多个计算机可在不同的地点、不同的时刻,实时、交互式地点播同一ASF流文件,用户可以通过上网查看和选择内容进行点播。播放过程中可实现播放、停止、暂停、快进、后退等功能,播放速率达到25帧/s,1小时的视频信息按照300Kb/s采集,只占108MB的空间,1张640MB的光盘可存放将近6小时的ASF文件。

2、直播
直播服务下,用户只能观看播放的内容,无法进行控制。可以使用ASF文件作为媒体内容的来源,实时的多媒体内容最适合使用直播服务方式。通过视频捕捉卡把摄像机、麦克风记录的内容输入到计算机,进行编码生成ASF流,然后通过该机把信号传送到网络,用户通过网页收看直播内容。

计算机可同时接收相同或不同的节目频道,直播计算机可作为一个小电视台,连在网上的每一台计算机都可实时接收9个不同的节目频道。

3、远程教育
这种ASF文件远程教育系统由制作计算机、vod服务器、用户机组成。
  
制作ASF文件计算机安装视频采集卡、声卡及摄像机,用于制作流媒体文件;VOD服务器用于存储和发布流媒体信息;用户机是连在网上的普通多媒体计算机,通过网页进行学习。网页上有教员授课的视频文件、多媒体课件、学习内容提要、参考资料、复习/练习题、作业等信息。

返回目录↑4、ASF1.0介绍

高级流格式是由微软公司在1995年至1998年。其主要目的是作为一个普遍的形式存储和流媒体。有两个版本的ASF。一个版本是ASF2.0,另一个版本的ASF1.0。这里介绍ASF1.0:

数据类型
UINT8,UINT16,UINT32,UINT64-无符号整数的价值观,8,16,32或64位长。在GNUC编译器它们所代表的类型‘unsigned char ’,‘unsigned short ’,‘unsigned long ’和‘unsigned long long FILETIME-无符号的64位整数,100纳秒的倍数

GUID的-128位的价值,可以产生在任何系统使用特殊的算法。该算法保证独特任何此类值(这意味着两个不同的计算机上,甚至在同一台计算机中不同时刻的时间不能产生相同的GUID)。BITMAPINFOHEADER-普遍的结构,描述格式(压缩)的形象。
typedef结构

长期biSize;//大小(BITMAPINFOHEADER)
长期biWidth;
长期biHeight;
短期biPlanes;//未使用
短期biBitCount;
长期biCompression;//fourcc的图像
长期biSizeImage;//大小的图像。对于压缩图像
                            //(biCompression0或3)可以为零。
长期biXPelsPerMeter;//未使用
长期biYPelsPerMeter;//未使用
长期biClrUsed;//只适用于调色板图像。
                       //号码的颜色在调色板。
)BITMAPINFOHEADER;//长期biClrImportant;

WAVEFORMATEX-普遍的结构,描述格式(压缩)声音流
typedef结构

短期wFormatTag;//值,确定压缩格式
短期nChannels;
长期nSamplesPerSec;
长期nAvgBytesPerSec;
短期nBlockAlign;//大小的数据样本
短期wBitsPerSample;
短期cbSize;//大小格式的具体数据
)WAVEFORMATEX;
这种结构是紧接着一系列的字节大小cbSize。

所有的时间间隔不是衡量100纳秒和代表64位类型,或以毫秒为单位衡量和代表与32位或16-位类型(每个65.5秒)。
  
基本信息
ASF1.0文件格式由‘块’。他们是块类似的AVI格式,而且大小各自领域的增加。
块:(图一)

ASF图一块型描述的内容类型中的块。见下面的名单称为块类型的GUID。块长度相当于整个块(即长度的数据仅是一块长度减去24)。其他重要的概念是‘包’。由于格式应该是流,所有的实际数据,如压缩音频或视频,是储存在‘包’。不像的ASF2.0,所有的数据包有固定的大小。每一个有效的文件应至少包含两个块。它们是文件头块和数据块。文件头块包含了所有必要的资料,开始处理实际数据,而数据块包含的数据包。

标题
1、
文件头块:(图二)
ASF图二这一块是特殊的,因为它包含其他块中的数据字段。可能有任意数量的这种大块,但我们需要了解两种特殊类型。

2、标题对象:(图三) ASF图三在0x02的flags可能意味着该文件seekable。最低与最高规模的数据包通常是一样的。这是不准确知道如何处理的ASF文件,假设它的值不是真的。

3、Stream对象:(图四) ASF图四类型的具体数据是数据的含义可以得出只能从流类型。可随后领域,也取决于价值的音频错误隐藏的类型。
第二未知的价值这个目标似乎是绝对随机的,但如果有多个流在该文件中,他们都持有同样的价值在这里。

4、输入特定的数据为视频流:(图五) ASF图五对外输入ASF的图片格式,通常包含BITMAPINFOHEADER结构,这是40字节长,但它并不是一个好方法,因为它可能含有一些较大的规模。

5、输入特定的数据为音频流:(图六)

ASF图六大小整齐的格式扩展等于cbSize的WAVEFORMATEX结构。

6、流的具体数据---音频流:(图七) ASF图七这个数据是,如果目前只有音频错误隐藏式领域中的主要结构包含相应的GUID。见节‘音频错误隐藏’的细节这一领域。

所有有效的ASF文件头包含一个对象,以及一个Stream对象流。

数据块:(图八)
ASF图八

压缩视频和音频数据通常组织成‘张’或‘物体’的一个任意大小。当一个人需要转移这种数据包一个固定的大小,就不可能有三次机会:

一)帧的大小接近大小的数据包。这将是可以接受的存放架完全在一个包垫它需要的大小。二)帧大于该数据包。然后,它需要‘支离破碎’成几个片段,并发出不同的数据包。三)帧大大低于该数据包。在这种情况下,将是一个好主意发送多帧在同一包。这就是所谓‘集团’。

可能有多种格式的标题,但在大多数包电影开始与V82_Header:(图九
ASF图九确切含义,数据包大小不知道。它很少出现在的ASF流,当它,它会显示完整的数据长度在这个数据包(从一开始分组头的最后部分)。有时候ORed与0x10或0x8,但我从来没有见过包指定非零填充规模和0x40制定flags。

部分:(图十)
ASF图十最重要的位(0x80)是在流编号,如果部分包含一个关键帧。这里的东西成为一个稍微有点复杂。分段的具体领域取决于是否这一部分是分组(即包含一个以上的范围内),或没有。这可以推导出flags的价值,这是在部分特定的领域本身。

段的具体领域,没有分组:(图十一)
ASF图十一“片段抵消”是抵消这一片段中的对象(如视频帧),其中包含它。如需完整的框架中的片段,片段抵消为0和数据长度等于物体的长度。

“flags”可以是0x01或0x08。0x01的意思是“集团(多个物体的部分)”,以及0x08的意思是“没有分组(单个对象或片段)”。

“数据长度”栏位是没有必要,如果这部分是唯一的数据包,因为在这种情况下,数据需要所有剩余的空间,包(当然,考虑到填充)。因此,这只是目前的0x01时位中设置包flags。

“片段抵消”字段大小是确定的‘群体型编号’报头值。已知可能的值后者则是0x55,0x59和0x5D,这相当于1,第2和第4字节大小。

“数据长度”字段大小是确定的数细分报头值。当数细分领域的存在,其较低的比特(大概6人)载有若干部分,设置位0x40意味着'数据长度'部分领域是1字节宽,并设置位0x80意味着'数据长度,部分领域的2字节宽。否则,这一领域的大小默认为2字节。

段的具体领域,分组:(图十二)
ASF图十二这种结构类似于一个不分组,但它不具备‘片段抵消’领域,因为分裂和分组不能同时进行。

每一部分有一个外地所谓的‘序列号’。它可用于重新支离破碎的物体。随后的物体序列号码相差1(会有较大的跳跃在‘序列号’字段分组时发生)。不同片段的同一个对象具有相同的序列号和同一个对象的开始时间。包通常是有组织的,以增加时间戳。目前尚不清楚,如果它总是如此。包可能丢失,这种情况应妥善处理。

返回目录↑5、相关词条

AVI WAV WMA MPC ASF WMV

返回目录↑6、参考资料

[1]Slackware:http://avifile.sourceforge.net/
[2]dret.net:http://dret.net/
[3]至顶网:http://www.zdnet.com.cn/

厂商信息类其他百科