包 | org.osmf.elements |
类 | public class ParallelElement |
继承 | ParallelElement CompositeElement MediaElement EventDispatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | OSMF 1.0 |
运行时版本: | Flash Player 10, AIR 1.5 |
组成 ParallelElement 的媒体元素被视为单个统一的媒体元素。例如,如果 ParallelElement 封装一个图像和一段音频,则 ParallelElement 的行为等同于它是一个具有音频文件的音频特征以及图像文件的显示特征的 MediaElement 的行为。
通常,ParallelElement 的特征是其所有子级的特征的组合或合并后的组合。当将新媒体元素添加为媒体组合的子级时,将调整其特征或组合的特征以使媒体组合的特征与其子级的特征保持一致。
请考虑将 AudioTrait 作为第一种情况的示例。如果客户端将新 MediaElement(其 AudioTrait 音量为 0.5)添加到 ParallelElement(其 AudioTrait 音量为 0.3),则会将子级 MediaElement 的 AudioTrait 音量设置为 0.3 以与 ParallelElement 的特征保持一致。
请考虑将 BufferTrait 作为第二种情况的示例。如果添加的 MediaElement 具有 BufferTrait,则当新 MediaElement 的缓冲区大于任何其它子级的缓冲区时,ParallelElement 的 BufferTrait 可能需要“增大”。在这种情况下,ParallelElement 的缓冲区将调整到其新子级的大小。
以下是平行排列的各个特征的表示方式:- AudioTrait – 组合特征使所有子级的有声属性保持同步。更改子元素(或组合元素)的音量时,将同时更改所有有声子级(和组合特征)的音量。
- BufferTrait – 在缓冲任何子级时,都将缓冲组合特征。其长度和大小是缓冲区最长的子级的长度和大小。其起始位置是所有其子级中起始位置的最小值(最早起始位置)。
-
DisplayObjectTrait – 如果组合的一个或多个子级具有 DisplayObjectTrait,则组合特征的空间尺寸由该组合的 DisplayObjectTrait 的
displayObject
属性引用的 DisplayObject 的边界框定义。如果任何组合的子级都不具有 DisplayObjectTrait,则组合特征的mediaWidth
是其最宽的子级的宽度,其mediaHeight
是其最高的子级的高度。 - DRMTrait – 组合特征尝试使所有子级的 DRM 状态保持同步。对一个子元素进行身份验证时,将同时对所有启用 DRM 的子级进行身份验证。
- DVRTrait - 组合特征尝试使所有子级的 DVR 状态保持同步。
-
DynamicStreamTrait – 组合特征尝试使所有子级的动态流状态保持同步。具体而言,它尝试使所有元素的
autoSwitch
属性都相同,且当前流项位于相似的比特率范围内。 - LoadTrait - 组合特征尝试使所有子级的加载状态保持同步。加载子元素(或组合元素)时,将同时加载所有可加载的子级(和组合元素)。
- PlayTrait - 组合特征使所有子级的暂停和播放状态保持同步。暂停一个子元素(或组合元素)时,将同时暂停所有可暂停的子级(和组合元素)。播放一个子元素(或组合元素)时,将同时播放所有可播放的子级(和组合元素)。
- SeekTrait - 组合特征使所有子级的搜索状态保持同步。对一个子元素(或组合元素)执行搜索时,将同时对所有可搜索的子级(和组合元素)执行相同搜索。
- TimeTrait – 组合特征表示一个时间轴,它可以封装所有子级的时间轴。其持续时间是所有子级持续时间的最大值。其位置对所有子级保持同步,显而易见的是子级的位置绝不会大于其持续时间。
公共方法
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | ParallelElement | ||
将指定的子级添加到列表的末尾。 | CompositeElement | ||
将子级添加到列表的指定索引处。 | CompositeElement | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将 Metadata 对象添加到指定命名空间 URL 下的此 MediaElement 中。 | MediaElement | ||
将事件调度到事件流中。 | EventDispatcher | ||
获取指定索引处的子级。 | CompositeElement | ||
如果子级位于列表中(这样的话 getChildAt(index) == child),则返回该子级的索引。 | CompositeElement | ||
返回存储在此 MediaElement 下具有指定命名空间 URL 的 Metadata 对象。 | MediaElement | ||
返回指定类型的媒体特征。 | MediaElement | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
确定此媒体元素是否包含指定类型的媒体特征。 | MediaElement | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
删除指定的子级并返回该子级。 | CompositeElement | ||
删除指定索引处的子级并返回该子级。 | CompositeElement | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
删除存储在此 MediaElement 下具有指定命名空间 URL 的 Metadata 对象。 | MediaElement | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
受保护的方法
构造函数详细信息
ParallelElement | () | 构造函数 |
public function ParallelElement()
语言版本: | ActionScript 3.0 |
产品版本: | OSMF 1.0 |
运行时版本: | Flash Player 10, AIR 1.5 |
构造函数。
示例 如何使用本示例
ParallelElementExample.as
package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import org.osmf.elements.LightweightVideoElement; import org.osmf.elements.ParallelElement; import org.osmf.elements.VideoElement; import org.osmf.layout.LayoutMetadata; import org.osmf.layout.LayoutMode; import org.osmf.media.MediaPlayer; import org.osmf.media.MediaPlayerSprite; import org.osmf.media.URLResource; public class ParallelElementExample extends Sprite { public function ParallelElementExample() { super(); stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; var mediaPlayerSprite:MediaPlayerSprite = new MediaPlayerSprite(); var parallelElement:ParallelElement = new ParallelElement(); var videoElement:LightweightVideoElement = new LightweightVideoElement(); videoElement.resource = new URLResource("http://mediapm.edgesuite.net/strobe/content/test/AFaerysTale_sylviaApostol_640_500_short.flv"); var videoElement2:LightweightVideoElement = new LightweightVideoElement(); videoElement2.resource = new URLResource("http://mediapm.edgesuite.net/strobe/content/test/elephants_dream_768x428_24_short.flv"); parallelElement.addChild(videoElement); parallelElement.addChild(videoElement2); // Add a vertical layout var layout:LayoutMetadata = new LayoutMetadata(); layout.layoutMode = LayoutMode.VERTICAL; parallelElement.addMetadata(LayoutMetadata.LAYOUT_NAMESPACE, layout); addChild(mediaPlayerSprite); mediaPlayerSprite.media = parallelElement; } } }
Tue Jun 12 2018, 11:04 AM Z