套件 | org.osmf.elements |
類別 | public class ParallelElement |
繼承 | ParallelElement CompositeElement MediaElement EventDispatcher Object |
語言版本: | ActionScript 3.0 |
產品版本: | OSMF 1.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
The media elements that make up a ParallelElement are treated as a single, unified media element. For example, if a ParallelElement encapsulates a image and a piece of audio, the ParallelElement will behave as if it's a single MediaElement with the audio characteristics of the audio file and the display characteristics of the image file.
Typically, a trait on a ParallelElement is a composite or merged combination of that trait on all its children. When a new media element is added as a child of the media composition, either its traits or the composite's traits are adjusted to make the traits of the media composition and its children consistent.
As an example of the first case, consider AudioTrait. If a client adds a new MediaElement that has its AudioTrait volume at 0.5 to a ParallelElement that has its AudioTrait volume at 0.3, the AudioTrait volume for the child MediaElement is set to 0.3 to be consistent with ParallelElement's trait.
As an example of the second case, consider BufferTrait. If the added MediaElement has a BufferTrait, the ParallelElement's BufferTrait may need to "grow" if the new MediaElement has a larger buffer than any of its other children. In this case, the buffer of the ParallelElement adjusts to the size of its new child.
Here is how each trait is expressed when in parallel:- AudioTrait - The composite trait keeps the audible properties of all children in sync. When the volume of a child element (or the composite element) is changed, the volume is similarly changed for all audible children (and for the composite trait).
- BufferTrait - The composite trait is buffering if any child is buffering. Its length and size are the length and size of the child with the longest buffer. Its starting position is the minimum (earliest) starting position of all of its children.
-
DisplayObjectTrait - If one or more of the composite’s children has the DisplayObjectTrait,
the composite trait’s spatial dimensions are defined by the bounding box
of the DisplayObject referenced by
the
displayObject
property of the composite's DisplayObjectTrait. If none of the composite’s children has the DisplayObjectTrait, the composite trait'smediaWidth
is the width of its widest child and itsmediaHeight
is the height of its tallest child. - DRMTrait - The composite trait attempts to keep the DRM state of all children in sync. When a child element is authenticated, all DRM-enabled children are simultaneously authenticated.
- DVRTrait - The composite trait attempts to keep the DVR state of all children in sync.
-
DynamicStreamTrait - The composite trait attempts to keep the dynamic streaming
state of all children in sync. Specifically, it attempts to keep the
autoSwitch
property the same for all elements, and the current stream items within a similar bitrate range. - LoadTrait - The composite trait keeps the load state of all children in sync. When a child element (or the composite element) is loaded, all loadable children (and the composite element) are simultaneously loaded.
- PlayTrait - The composite trait keeps the pause and play states of all children in sync. When a child element (or the composite element) is paused, all pausable children (and the composite element) are simultaneously paused. When a child element (or the composite element) is played, all playable children (and the composite element) are simultaneously played.
- SeekTrait - The composite trait keeps the seek state of all children in sync. When a child element (or the composite element) performs a seek, all seekable children (and the composite element) simultaneously perform that same seek.
- TimeTrait - The composite trait represents a timeline that encapsulates the timelines of all children. Its duration is the maximum of the durations of all children. Its position is kept in sync for all children, with the obvious caveat that a child's position will never be greater than its duration.
方法 | 定義自 | ||
---|---|---|---|
Constructor. | ParallelElement | ||
Adds the specified child to the end of the list. | CompositeElement | ||
Adds the child to the list at the specified index. | CompositeElement | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
會在 EventDispatcher 物件註冊事件偵聽程式,以便讓偵聽程式收到事件的通知。 | EventDispatcher | ||
Adds a Metadata object to this MediaElement under the specified namespace URL. | MediaElement | ||
會將事件傳送到事件流程。 | EventDispatcher | ||
Gets the child at the specified index. | CompositeElement | ||
Returns the index of the child if it is in the list such that
getChildAt(index) == child. | CompositeElement | ||
Returns the Metadata object that is stored under this MediaElement with
the specified namespace URL. | MediaElement | ||
Returns the media trait of the specified type. | MediaElement | ||
會檢查 EventDispatcher 物件是否有對特定的事件類型註冊偵聽程式。 | EventDispatcher | ||
指出物件是否有已定義的指定屬性。 | Object | ||
Determines whether this media element has a media trait of the
specified type. | MediaElement | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
Removes the specified child and returns it. | CompositeElement | ||
Removes the child at the specified index and returns it. | CompositeElement | ||
會從 EventDispatcher 物件移除偵聽程式。 | EventDispatcher | ||
Removes the Metadata object that was stored under this MediaElement with
the specified namespace URL. | MediaElement | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object | ||
檢查此 EventDispatcher 物件是否已註冊事件偵聽程式,或者此物件的任何祖系已為特定事件類型註冊事件偵聽程式。 | EventDispatcher |
ParallelElement | () | 建構函式 |
public function ParallelElement()
語言版本: | ActionScript 3.0 |
產品版本: | OSMF 1.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
Constructor.
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, 03:47 PM Z