quicktime是苹果公司提供的系统及代码的压缩包_第1页
quicktime是苹果公司提供的系统及代码的压缩包_第2页
quicktime是苹果公司提供的系统及代码的压缩包_第3页
quicktime是苹果公司提供的系统及代码的压缩包_第4页
quicktime是苹果公司提供的系统及代码的压缩包_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、地提升门我!QuickTime是苹果公司提供的系统及代码的压缩包,它拥有C和Pascal的编程界 而,更高级的软件可以用它来控制时基信号。在QuickTime中 时基信号被叫做影片。 应用程序可以用QuickTime来生成,显示,编辑,拷贝,压缩影片和影片数据,就 象通常操纵文本文件和静I匕图像那样。除了处理视频数据以外,QuickTime3.0还能 处理静止图像,动画图像,矢量图,多音轨,MIDI音乐,三维立体,虚拟现实全景 和虚拟现实的物体,当然还包括文本。它可以使任何应用程序中都充满各种各样的媒 体。QuickTime是建立在一些与时基数据相关的概念基础之上的:原子(Atom)、媒体 结

2、构(Media structures)、组件(Component)、时间管理仃ime management)、动画 图像(Sprites)。QuickTime是一个跨平台的多媒体架构,可以运行在Mac OS和Windows系统 上。它的构成元素包括一系列多媒体操作系统扩展(在Windows系统上实现为DLL), 一套易于理解的API, 一种文件格式,以及一套诸如QuickTime播放器,QuickTime ActiveX控件,以及QuickTime浏览器插件这样的应用程序。QuickTime不仅仅是一个媒体播放器,而是一个完整的多媒体架构,可以用来进 行多种媒体的创建,生产,和分发,并为这一过

3、程提供端到端的支持:包括媒体的实 时捕捉,以编程的方式合成媒体,导入和导出现有的媒体,还有编辑和制作,压缩, 分发,以及用户回放等多个环节。QuickTime可以用于实现如下一些具体的任务:播放电影和苴它媒体,比如Flash或者MP3音频对电影和其它媒体进行非破坏性的编辑。在不同格式的图像之间进行导入和导出,比如JPEG和PNG 对来自不同数据源的多个媒体元素进行合成,分层,和排列 把多个依赖于时间的媒体同步到单一的时间线上 捕捉和存储来自实时源的数据序列(sequence),比如音频和视频输入 以编程的方式将制作完成的数据作成电影 使用智能化和脚本化的动画制作精灵创建与阅读器,远程数据库,和

4、应用程序服务器相互交互的演示创建包含建制形状的窗口,皮肤,以及各种控件的电影在网络或者英特网上实时生成电影流广播从诸如照相机和麦克风这样的直播源得到的实时流分发位于磁盘,网络,或者英特网上的可下载媒体 原子QuickTime的原子是QuickTime用来构建等级数据结构的基本容器。新创建的Q uickTime原子就象树的根。随后的每个原子都包含在其中并且包含数据和英它原子。 如果一个QuickTime原子包含英它原子,就被叫做父原子,包含在貝中的原子就叫 做叶原子。应用程序和貝它各种软件也可以用QuickTime原子结构来存储数据。 媒体结构传统的视频由连续的数据流组成。QuickTime影片

5、可以按同样的方法构建,但它 不需要这样做:QuickTime影片可以由取自不同来源的数据流组成,例如模拟视频、 存在CDROM上的静止图像和MIDI音乐。影片不是媒体,而是媒体的组织方式。QuickTime影片通常是由许多轨道组成的。轨道不包含影片数据,它仅仅包含这 些数据的索引,而真正的数据内容则存在于其它地方。这些数拯索引组成了轨道的媒 体结构。每个轨道都包含了一个独立的媒体结构和一个编借列表,编辑列表用来以时 间顺序安排媒体结构。媒体结构和编辑列表是做为QuickTime原子来实现的。 组件QuickTime支持组件使应用程序不需要知逍QuickTime用什么技术和设备来工 作的。许多Q

6、uickTime服务,例如压缩和解压都是组件来提供的。组件包括代码, 它可以在整个系统中使用,也可以局部于一个特定的应用程序。每个QuickTime组 件都实现一个特左的功能集并且提供给它支持的技术和客户应用程序以特左的接口。 因此应用程序和不同技术的实现和管理细节隔离开来。应用已存在的组件可以创建新 的组件。例如,你能生成一个组件来支持一种特殊的数据加密算法。其它的应用程序 通过连接你的组件也可以实现这些加密算法,而不用它们自己再来实现这个加密算 法。应用程序使用组件是通过调用系统级的组件管理器。组件管理器使你可以左义和 登记组件并可以通过使用一个标准的界面来和组件进行联系。一旦应用程序连接

7、到组 件上之后,就可以直接调用组件。当你生成了一种新的组件类的时候,你可以为这种 新组件定义一种函数级接口。 时间管理时间管理是QuickTime影片实现过程中重要的一部分,有时也是比较复杂的一 部分。为了控制彫片的时间维,QuickTime 义了时间坐标系统,使影片和媒体的数 拯结构都使用共同的现实时间系统。时间坐标系统包括一个时间尺度,这个尺度提供 了在真实时间和影片中的表而时间的转换。时间尺度以时间单位表示。每秒中度过的 时间单位的数量量化了时间尺度。也就是26时间尺度是每秒中包含26个时间单位或 者每个时间单位是1/26秒。时间坐标系统也包括持续时间,它是影片的长度或以时 间单位来记数

8、的媒体结构的容量。影片中的某点可以由到那一点经过的时间单位的数 戢来确定。影片中的每个轨道都由时间偏移和持续的时间组成,这些属性决立了每道 开始的时间和长度。每个媒体结构都有自己的时间尺度。影片工具箱把每种媒体数据 从影片的时间坐标系统中映射到媒体结构的时间坐标系统。 动画图像在传统的视频动画中,你通过确泄每个象素的颜色来描述帧。而动画图像通过确 定出现在不同位置的图像来描述帧。每个动画图像都有属性,这些属性用来描述某个 时刻图像的位苣和外表。在动画过程中,应用程序修改图像的属性以使它可以改变外 表并且可以围绕屏幕移动。动画图像可以和静止图像混合,用来在内存相对较少时产 生较多的效果。1IM编

9、辑本段QuickTime的结构QuickTime包括影片工具箱、图像压缩两个管理器,加上内嵌的一套组件。 影片工具箱应用软件通过调用在影片工具箱中的函数来实现QuickTime的功能。影片工具 箱使应用程序可以储存、读取、操纵QuickTime影片中的时基数据。单独一段影片 可以容纳好几种数据。例如,一段包含视频信息的影片可以包括视频数据和伴随视频 数据的音频数据。影片工具箱也提供了编辑影片的函数。例如,有这样的函数,可以通过移去部分 视频和音轨来缩短影片,也有函数通过从其它影片中移入新数据来扩展它。 图像压缩管理器图像数据需要大量的存储空间。存储640M80的32位色彩的图像需要的空间为 1

10、.2兆比特。QuickTime 片中包含的一系列图像,需要许多倍这样的空间。图像压 缩管理器提供了独立于设备和驱动器的压缩和解压的方法,它也为实现外部的软硬件 图像压缩算法提供了一个简单的接口。它提供了系统集成函数用来存储压缩图像,作 为Macintosh机上的PICT文件和Windows下的DIB文件。它也提供了使任何可以 运行QuickTime的机器上的压缩PICT文件都可以自解压的功能。大多数情形下,通过调用影片工具箱函数或显示压缩图像来避开直接调用图像压 缩管理器。但是如果应用程序压缩图像或者用压缩图像制作影片,就可以直接调用图 像压缩管理器函数。 QuickTime组件苹果提供了许多

11、QuickTime内嵌组件。苹果左义的内嵌组件类型包括图像压缩 器、媒体处理器和各种各样的工具。(1) 数据处理器:包括有影片控制器组件、图像压缩组件、图像转换组件、视频数 字化组件、数据交换组件、声音处理组件、效果转换组件、预览组件等。(2) 媒体处理器:包括有衍生媒体处理器组件、动画媒体处理器组件、中间媒体处 理器组件等。(3) 工具:包括有时钟组件、标准声音组件、顺序抓取组件、顺序抓取通道组件、 文本轨道组件、顺序抓取而板组件等编辑本段QuickTime 架构QuickTime架构中广泛使用了构件技术,它使构件可以独立为一个模块,并具有 灵活性和可扩展性。QuickTime构件是接口泄义

12、良好的共享代码资源。人们为Quick Time增加一个新的构件,并使已有的应用程序可以自动找到和使用该构件,这很大 程度上是因为这个新构件和同属一个大类的已有构件一样,都对同样的API进行响 应。举例来说,QuickTime可以处理很多媒体类型:声音,视频,文本,精灵,Flas h, 3D模型,图片虚拟现实,还有一些其它类型。每种媒体类型的处理,都需要一个 媒体处理器构件来支持。QuickTime支持的媒体数量和类型都是不断增长的,您自己 可以通过创建一个新的媒体处理器构件,来为QuickTime增加一个新的媒体类型。 编辑本段QuickTime流媒体、广播和渐进式下载QuickTime电影通

13、常以QuickTime电影文件的形式存储在磁盘上。这些文件往 往同时包含电影引用的样本数据。QuickTime API中包含一些函数,用来将电影或者 电彫及英相关联的样本数据存储到文件中。缺省情况下,电影数据结构存储在文件的 开头(以一个mooW原子的形式进行存储),紧跟的是样本数据(通常包装在一个 mdat原子中)。各种样本数据在缺省情况下会按照某种形式进行编织,以便使同一 时刻显示的媒体数据的存储地点彼此靠近,同时,播放时间比较早的媒体首先被存储。这种典型的电影文件可以通过web服务器,或者使用诸如HTTP和FTP这种常 见的协议来分发,等同于一个HTML文件或者JPEG图像文件。只需要把

14、文件正确地 命名,并正确地将文件扩展名和服务器上对应的MIME类型关联起来,就可以了(Q uickTime电影文件正确的扩展名是.mov,其对应的MIME类型是video/quicktime)。在通过网络分发,或者通过英特网下载一个文件的时候,整个文件并不是马上就 到达本地,但是一个典型的QuickTime电影在下载的同时就可以播放。这个技术叫 做渐进式下载(Progressive Download),或者快速开始(Fast Start)。这是由于 电影原子彼存储在文件的起始部分,所以即使电影的样本数据还没有到达本地,Qui ckTime也知道如何对之进行解析;同时也因为QuickTime根据

15、显示的时间顺序对电 影数据进行智能的编织。在创建电影时,先存储电影的样本数据,紧接着再存储电影数据结构也是可以的。 但是通常都不希望使用这种做法,因为这样会使QuickTime 一直等到整个文件都下 载完成后,才能对样本数据进行解析。您可以简单地在QuickTime中打开电影文件, 并将它存储为一个新的自包含文件,来修正这种数据顺序颠倒的问题。在缺省情况下, QuickTime将电影数据结构存储在文件的起始部分。QuickTime电影文件可能只包含一个电影数据结构,而该结构指向的样本数据位 于其它文件或者URL中。在大多数情况下,这种类型的电影文件也可以在电影数据 下载的同时进行播放,这是因为

16、电影数据结构使QuickTime可以解析即将到来的数 据,也因为每个轨道的数据源都被独立指左,网络独立而又同时地进行所有轨道媒体 数据的分发,从而实现某种形式的编织。很明显,任可靠性上这种编织不如QuickTi me创建自包含电影文件时进行的深入编织,因此播放的时候可能不总是那么平滑。当连接的带宽满足或者超过电影数据率的要求时,一个组织良好的QuickTime 电影文件就可以边下载边播放。这种类型的渐进式下载电影,或者说是快速开始电影, 就可以提供与实时流媒体一样的用户体验。如果连接的速度不足以实时播放电影,则您可以等下载完成后才进行播放,或者 播放当时已经下载的部分。QuickTime甚至可

17、以估计需要的下载时间,并在它认为已 #1-1经有足够的数据可以平滑播放的时候开始播放(因为剩下的数据可以在需要的时候到 来)。QuickTime电影也可以通过诸如RTP和RTSP这种实时协议来分发。那样的话 需要一个流媒体服务器,比如QuickTime流媒体服务器,或者Darwin流媒体服务器。 为了实时生成电影流,服务器需要知适如何对电影中的务个轨道进行分包,这些信息 存放在QuickTime电影中的一个称为索引轨道(hint track)的特殊轨道中。在Qui ckTime API中有一些函数,可以在现有的电影中增加一个索引轨道,还有一个标识 可以通知QuickTime在将电影存入磁盘的时

18、候创建一个索引轨道。带有索引轨道的电影也可以通过HTTP或者FTP协议来进行渐进式下载,但是 需要额外的带宽来下载仅对流媒体起作用的索引轨道。因此,最好首先确左电影的分 发方式,然后再确立是将电影存储为索引电影,还是非索引电影。对于电影文件,除了渐进式下载和实时流媒体这两种分发方式,QuickTime还支 持直播(broadcasting)方式,即从诸如照相机或麦克风这样的实时源中取得数据, 创建一个或者多个实时流。这个过程包括捕捉来自实时源的数据,将这些数据按照期 望的带宽进行压缩,并生向外传输的数据包流,所有的这些过程都是实时的。Quick Time的广播API只支持Mac OS,不能支持

19、Windows或者Java。编辑本段QuickTime路线图QuickTime是一套大的API,有超过2000个函数及数十个构件。幸运的是,您 通常只需要使用一小部分QuickTime API就可以完成一个具体的任务。问题在于如 何才能知道应该使用QuickTime的哪个部分,以及如何才能找到可以指导自己的文 档和例子代码。这正是讨论这个路线图的目的所在。QuickTime通常会有多种方法可以实现同样的目的,一种是容易实现的方法,大 多数工作QuickTime都替您完成了;另外一种则是提供一些不同层次的底层工具箱, 您可以通过这些工具箱来自行实现想要的功能。如果您发现自己已经陷入到某些复杂 且

20、令人沮丧的问题中,而这些问题应该很简单,则很可能是因为您现在使用的是不合 适的工具箱。这时,请回到路线图上来,看看是否有更为高级的方法可供使用。QuickTime API文档分成17个主要部分,下面列举这些部分及其相关连接。开始使用QuickTime获取进入QuickTime的方向,寻找sdk及推荐读物。基础一QuickTime槪述,快速上手的教程,构件管理器,如何初始化QuickTi me,以及如何打开和播放电影。”Windows 版本的 QuickTime*Windows 版本与 Macintosh 版本的 QuickTimes 之间的不同之处。使用脚本”一用诸如 JavaScript, Visual Basic, AppleScript, HTML,以及 SM IL等髙级的脚本语言控制苹果的QuickTime应用程序(包括播放器,浏览器插件, 及ActiveX控件)o电影结构的基本知识一初始化QuickTime,打开和播放电影,编辑和保存电影, 使用QuickTime的数据类型,为应用程序设置回调函数。流媒体一使用基于实时协议的流媒体,进行现场直播,或者为流媒体服务器书 写模块。深入电影结构的内

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论