必要的组件修复flash 基于flash组件的视频点播系统三层架构设计与实现
摘要:Flash作为一个矢量动画制作软件,其工作模式是基于时间轴的延展。文章提出基于flash组件的应用系统三层架构模型,即将系统的表示层、数据层和资源层分离,降低各逻辑层间的藕合度,提高应用flash进行开发的工作效率,并以视频点播系统为例进行了三层架构的设计与实现。
关键词:flash组件 视频点播 xml
中图分类号:G434 文献标识码:A 文章编号:1007-9416(2012)10-0158-02
1、引言
Flash作为一个优秀的矢量动画制作软件,它以流式控制技术和矢量技术为核心,开发的作品具有体积小、交互性强、表现力强等特点,被广泛应用于网页动画设计和多媒体产品开发。在Flash中创作内容时,需要在Flash文档中基于时间轴进行工作,即将素材都放在Flash产品的源文件中,内容随着时间轴的延长而逐步展开。随着Action Script的应用,Flash成为动画创作与应用程序开发于一身的创作软件,在开发包含图像、声音、视频和交互性的富媒体应用程序中发挥着越来越大的作用,本文应用flash组件并结合XML 技术设计开发了一个视频点播系统。
2、基于flash组件的视频点播系统设计
基于flash组件的视频点播系统主要采用导航组件、内容呈现组件和数据组件构建系统的表示层、数据层和资源层,完成音视频文件的分类管理、存储描述和点播播放,以实现用户按需播放视音频节目(图1)。
表示层:提供用户界面,加载和显示外部数据和各种资源。主要通过两类组件来实现:导航组件和内容呈现组件。其中,导航组件有List、Menu、Tree等,其作用是显示由数据组件导入的外部XML数据,使用该组件可以快速地建立导航系统。内容呈现组件主要有FLVPlayback、Loader、ScrollPane等,其作用是加载和显示外部的各种资源,例如:FLVPlayback组件可以显示FLV视频文件。这些被加载资源的信息来自导航组件传递过来的数据。通过组件的数据绑定功能,可以轻松地实现数据在各组件之间的传递。
数据层:是对原始数据的操作层,具体为表示层提供数据服务,主要包括数据描述和数据连接。分别通过xml和XMLConnector实现。XML可以根据数据提供者的需要自行定义标记、属性名及描述法,应用xml对资源层的原始数据进行标记描述。XMLConnector组件充当其它组件和外部XML数据源之间的连接器,将外部的XML数据加载到Flash中,以供其他组件使用。
资源层:该层主要是结构化的原始数据,将包括文本、图片、动画、视音频等资源分解为相对独立的、粒度较小的多个部分,供表示层调用。
3、基于flash组件的视频点播系统的实现
以“某公司输油处员工培训”视频点播系统为例,说明三层架构的实现过程。
3.1 准备素材——资源层
拍/录视频,并利用Flash 8 Video Encoder制作为flv格式。将flv视频存放在video文件夹内。
3.2 生成xml文件——数据层
创建一个xml文件,描述要载入的视频资源的名称、URL地址。其基本格式如下:
……
XML文档形成了一种树结构,它从“根部”开始,然后扩展到“枝叶”。"root" 标记是这个XML 文档的根元素,"node" 标记是根元素下面的子元素, 一个根元素可以有多个子元素,"subnode" 标记是"node" 元素下面的子元素,每一个子元素也都可以包含多个子元素。这里用"label" 和"url"来描述视频资源的两个基本属性:名称和存放位置。如果有更多的视频,按照这种方式依次扩展。
3.3 利用xmlconnector组件实现数据绑定——数据层
(1)设置xmlconnector组件的实例参数,将url值设置为先前创建的video.xml文档,数据传送方向设为receive,意为只是将xml数据装入Flash影片。
(2)将XMLConnector组件与XML数据进行绑定。打开XMLConnector组件的组件检查器,在架构选项卡下选择”results:XML”属性,单击“从示例XML文件导入架构”,选择建立的video.XML文件导入架构。
3.4 创建系统导航——表示层
(1)创建一个list组件,并进行实例化。
(2)将XMLConnector组件与list组件进行绑定。
打开XMLConnector组件的组件检查器,在“绑定”选项卡下添加绑定,选择”node:Array”将绑定到list组件上。
选定绑定项,将”direction”值设置为”out”,因为这里是将XMLConnector组件的数据绑定到List组件。设置”bound to”字段,在Component path中选择List组件,在Schema location中选择”dataProvider”属性。这样,数据就会由XMLConnector组件传递给L ist组件,并在L ist组件中显示出来。
(3)触发XMLConnector组件。完成组件之间的数据绑定之后,还要对XMLConnector组件进行触发。这样在运行时XMLConnector组件就会将XML数据加载到程序中。其触发代码如下:
Var cnc:mx.data.components.XMLConnector;
cnc. trigger( ) ; //这里cnc为XMLConnector组件实例名
3.5 创建视频播放窗口
(1)创建一个FLVPlayback组件,并进行实例化和属性设置。
(2)将FLVPlayback组件与list组件进行绑定。
首先为list组件实例的selectedItem属性添加label和url属性。
再将url的值映射到FLVPlayback组件实例的contentPath属性。在list组件检查器中设置”bound to”,组件路径设置为:FLVPlayback组件实例,架构位置为:contentPath:string。List组件的url属性中包含到达flv视频的路径,当选择List组件的列表项时, FLVPlayback组件就会自动播放与之相对应的视频。
4、结语
基于flash组件的视频点播系统三层架构模型具有如下几个特点:
(1)表示层、数据层和资源层的三层架构模型功能完善,应用灵活,选择不同的组件及组件组合,可以快速地建立满足不同实际需求的系统。如: 使用tree组件和Loader组件构建一门课程的框架结构。
(2)表示层、数据层和资源层的分离,降低了各层间的藕合度,便于对内容进行维护、更新和扩展。维护和更新时,只需要在XML文档中添加、删除或者修改相应的item 元素,并对资源层进行更新就可以了,不用对Flash源文件进行修改。
(3)操作简单快捷、开发速度快、便于分工协作、各层的开发制作可以同步进行。制作时,只需要完成组件和数据的绑定传输,以及一些简单的脚本语言编写,就可以实现视频点播的功能。
参考文献
[1]徐绪堪等. Flash 8动画制作与ActionScript编程[M].清华大学出版社,2006:118-122.
[2]赵志靖.基于Flash+xml+fms的视频点播系统的设计与实现.中国教育信息化[J],2007(8):48-52.
[3] 潘明寒主.Flash 8动画与交互动画制作教程[M].北京航空航天大学出版社,2008:202-203.
栏目最新:
- 做好“高”和“新”两篇文章2023-03-17
- 2022年度理论不都是灰色,理论文章更应...2023-03-08
- 2022如何写好网评文章【完整版】2023-03-06
- 文章写作十二题2023-03-05
- 2022年度文章写作提纲30例(十二)【优...2023-01-26
- 如何把文章写生动(2022年)2022-12-12
- 你会“抄”文章吗(范文推荐)2022-12-12
- 怎样写好理论性文章?(精选文档)2022-11-24
- 写好文章要实现“四个升华”2022-11-24
- 文章构思要“五定”【优秀范文】2022-11-24
相关文章:
- 乐视手机x600怎么样|乐视1
- 京翰教育(鲁能教学区)怎么样 [京翰教育重庆鲁能教学区小学四年级数学培训班,暑假辅导班|补习机构电话有吗]
- qq空间说说带图片 [空间爱情说说带图片]
- [长沙岳麓区京翰教育高二文综一对一补习提升哪家好?] 岳麓区上门一对一好的机构有哪些?
- 2018年天津塘沽区中考数学试卷及答案(已公布)|2017年天津中考数学试卷及答案
- 新概念英语第二册课后练习题答案 新概念英语册课后练习题及答案81-82
- 【小学一年级作文:小眼镜找朋友】作文向一年级找朋友介绍学校的情况
- 八一建军节的意义【中国八一建军节的意义】
- 万圣节英语优秀作文带翻译:万圣节英语作文带翻译
- 【散文诗:暖冬】 暖冬
- 高一想象作文:我心中的那份期盼700字:我心中的那份期盼