org.osmf.traits 包提供用于创建特定媒体特性的构造块。特性定义媒体元素的功能。
媒体元素的不同实现聚合不同的特性集,具体取决于媒体元素所代表的媒体的特性。例如,音频元素可聚合 IAudible、IPlayable、ITemporal 和 ILoadable 特性。这些不同的特性定义媒体元素的功能,与特定媒体元素实现无关。对于具有 ILoadable 特性的媒体元素,该特性提供媒体元素的加载和卸载功能。类似的,IPlayable 特性的实现使媒体元素能够播放自身。
特性是通过元素的 MediaElement.addTrait()
方法添加到媒体元素的。
媒体元素的实现以下列原则为基础:
- 各特性之间相互独立。因此,一个媒体特性不会扩展另一个媒体特性。
- 各特性调度自己的事件。特性实现可从 MediaTraitBase 类派生来处理事件调度,MediaTraitBase 类扩展 EventDispatcher 并实现 IMediaTrait。
- 特性由 MediaTraitType 枚举类标识。
- 特性应作为单独的类实现。
特性接口是为供媒体元素类使用设计的。特性接口是泛型向外实体,主要特征是有 getter 无 setter,只有那些要求外部可设置的属性(例如,IAudible 的 volume 或 pan 属性)的特性除外。
基特性类是为供子类化 MediaElement 的实现使用设计的。它们通常既有 setter 又有 getter。
类
类 | 说明 | |
---|---|---|
AlternativeAudioTrait | AlternativeAudioTrait 为支持替代音频流的媒体定义特征接口。 | |
AudioTrait | AudioTrait 定义包含音频的媒体的特征界面。 | |
BufferTrait | BufferTrait 为可以使用数据缓冲区的媒体定义特征界面。 | |
DisplayObjectTrait | DisplayObjectTrait 定义可公开 DisplayObject 和具有固有尺寸的媒体的特征界面。 | |
DRMState | DRMState 是媒体片段可能处于的特定 DRM 状态的枚举。 | |
DRMTrait | DRMTrait 定义受数字权限管理 (DRM) 技术保护的媒体的特征界面。 | |
DVRTrait | DVRTrait 定义可在录制(假设使用的是数码录像机 (DVR))过程中播放的媒体的特征界面。 | |
DynamicStreamTrait | DynamicStreamTrait 定义支持动态流切换的媒体的特征界面。 | |
LoaderBase | LoaderBase 是能够加载和卸载 LoadTrait 的对象的基类。 | |
LoadState | LoadState 是 LoadTrait 的可能状态的枚举。 | |
LoadTrait | LoadTrait 定义必须加载才能显示的媒体的特征界面。 | |
MediaTraitBase | MediaTraitBase 是 MediaElement 固有的特征或功能的封装。 | |
MediaTraitType | MediaTraitType 是所有可能媒体特征类型的枚举。 | |
PlayState | PlayState 是 PlayTrait 的可能状态的枚举。 | |
PlayTrait | PlayTrait 定义可开始和停止播放的媒体的特征界面。 | |
SeekTrait | SeekTrait 定义可指示其及时跳到某位置的媒体的特征界面。 | |
TimeTrait | TimeTrait 定义具有持续时间和 currentTime 的媒体的特征界面。 | |
TraitEventDispatcher | TraitEventDispatcher 是一个实用程序类,它公开统一的界面,用于从 MediaElement 接收特征事件。 |
Tue Jun 12 2018, 11:18 AM Z