"AS3.0 FLV播放器制作教程,包括前期准备、使用FlvModel类存储数据、状态及资源、控制视频播放以及应用Cairngorm框架"
本文将详细探讨如何使用ActionScript 3.0 (AS3.0) 创建一个FLV播放器,重点在于理解和应用Cairngorm框架。FLV格式因其高压缩比、小文件大小和渐进式缓冲播放的特性,成为网络视频的首选格式。在Flex 3.0中,VideoDisplay组件专门用于播放此类视频。
**3.1 前期准备**
在开发FLV播放器之前,首先需要进行必要的准备工作,这包括合理规划项目文件结构和引入Cairngorm框架。
**3.1.1 组织文件结构**
良好的文件结构对于项目的可维护性和可扩展性至关重要。参考Cairngorm框架的推荐,我们可以设立如"business"(业务逻辑)、"commands"(命令)和"control"(控制)等文件夹,分别存放不同类型的源代码,使得代码组织清晰,便于查找和管理。
**3.1.2 导入Cairngorm框架**
Cairngorm是Adobe公司推出的一个轻量级MVC框架,适用于Flex和Flash应用程序。为了使用Cairngorm,我们需要将"Cairngorm.swc"库文件导入到项目中。具体步骤可以在Cairngorm相关文档中找到。
**3.2 使用FlvModel类存储数据、状态及资源**
在FLV播放器的实现中,我们创建了一个名为FlvModel的类,该类继承自Cairngorm的ModelLocator。这个类主要用来存储播放器的数据、状态信息和相关资源。例如,当前播放的视频URL、全屏状态的开关,以及其他的图像资源。FlvModel类提供了一个静态方法getInstance(),以便在程序的任何地方访问和更新这些信息。
```actionscript
package com.xi.flvPlayer.model {
import com.adobe.cairngorm.model.ModelLocator;
import mx.controls.ToolTip;
public class FlvModel implements ModelLocator {
private static var flvModel:FlvModel = new FlvModel(); // 创建FlvModel实例
public static function getInstance():FlvModel { return flvModel; } // 获取FlvModel实例
public static var currVideoUrl:String; // 存储当前视频URL
public static var isFullScreen:Boolean; // 存储全屏状态
// 其他资源和状态变量...
}
}
```
**未完待续...**
接下来的内容可能涉及如何使用VideoDisplay组件播放视频,以及如何利用Cairngorm的命令模式来处理播放控制事件,例如播放、暂停、停止、快进、快退等操作。此外,可能还会讲解如何设计用户界面,实现播放进度条、控制面板等功能,以及如何响应用户的交互事件。Cairngorm框架的使用将帮助我们实现松耦合的代码结构,提高代码的可测试性和可维护性。然而,由于原文档内容不完整,这部分无法详细展开。