Pakket | org.osmf.elements |
Klasse | public class SerialElement |
Overerving | SerialElement ![]() ![]() ![]() ![]() |
Taalversie: | ActionScript 3.0 |
Productversie: | OSMF 1.0 |
Runtimeversies: | Flash Player 10, AIR 1.5 |
The media elements that make up a SerialElement are treated as a single, unified media element. For example, if a SerialElement encapsulates a sequence of videos, the SerialElement will behave as if it's a single VideoElement, but one which plays several videos in sequence.
Typically, a trait on a SerialElement is a reflection of the "current" child of the composition. A SerialElement plays through its children in serial order. As the current child completes its execution, the next child in the sequence becomes the "current" child. To a client of the class, the changes from one current child to the next are hidden. They are only noticeable through changes to the traits of this class.
A childless SerialElement has no notion of a "current" child, so it reflects no traits. The first child that is added to a SerialElement immediately becomes the current child of the composition. If the current child is removed, the next child in the sequence becomes the new current child, if there is a next child. If there is no next child, the first child in the sequence becomes the current child.
The only way that the "current" status can pass from one
child to another is when the state of one of the current child's
traits changes in such a way that the
SerialElement knows that it needs to change its current child. For
example, if each child in the sequence has the PlayTrait,
the "current" status advances from one child to the next when a
child finishes playing and its PlayTrait's PlayState
property changes from PLAYING
to STOPPED
.
Another example: if the client of a SerialElement with a SeekTrait
seeks from one point to another, the "current"
status is likely to change from one child to another.
Here is how each trait is expressed when in serial:
- 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 represents the bufferable trait of the current child in the sequence. Any changes apply only to the current child.
- DisplayObjectTrait - The composite trait represents the DisplayObjectTrait of the current child in the sequence.
- DRMTrait - The composite trait represents the DRMTrait of the current child in the sequence.
- DVRTrait - The composite trait represents the DVRTrait of the current child in the sequence.
- DynamicStreamTrait - The composite trait represents the DynamicStreamTrait of the current child in the sequence. Any changes apply only to the current child.
- LoadTrait - The composite trait represents the LoadTrait of the current child in the sequence. Any changes apply only to the current child.
- PlayTrait - The composite trait represents the PlayTrait of the current child in the sequence. Any changes apply only to the current child.
- SeekTrait - The composite trait represents the SeekTrait of the current child in the sequence. A seek operation can change the current child.
- TimeTrait - The reported duration of the TimeTrait of a SerialElement is the sum of the current child and any completed children only. The reported value does not reflect the sum of the duration of all the children.
Eigenschap | Gedefinieerd door | ||
---|---|---|---|
![]() | constructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie. | Object | |
currentChild : MediaElement [alleen-lezen]
The currently active child of this SerialElement. | SerialElement | ||
![]() | metadataNamespaceURLs : Vector.<String> [alleen-lezen]
A Vector containing the namespace URLs for all Metadata
objects stored within this MediaElement. | MediaElement |
Methode | Gedefinieerd door | ||
---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registreert een gebeurtenislistenerobject bij een object EventDispatcher, zodat de listener een melding van een gebeurtenis ontvangt. | EventDispatcher | |
![]() |
Verzendt een gebeurtenis naar de gebeurtenisstroom. | EventDispatcher | |
![]() |
Controleert of het object EventDispatcher listeners heeft geregistreerd voor een specifiek type gebeurtenis. | EventDispatcher | |
![]() |
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | |
![]() |
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | |
![]() |
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | |
![]() |
Verwijdert een listener uit het object EventDispatcher. | EventDispatcher | |
![]() |
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | |
![]() |
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | |
![]() |
Retourneert een tekenreeksrepresentatie van het opgegeven object. | Object | |
![]() |
Retourneert de primitieve waarde van het opgegeven object. | Object | |
![]() |
Controleert of een gebeurtenislistener is geregistreerd bij dit object EventDispatcher of een van de voorouders voor het opgegeven type gebeurtenis. | EventDispatcher |
currentChild | eigenschap |
currentChild:MediaElement
[alleen-lezen] The currently active child of this SerialElement.
Implementatie
public function get currentChild():MediaElement
package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import org.osmf.elements.LightweightVideoElement; import org.osmf.elements.SerialElement; import org.osmf.media.MediaPlayerSprite; import org.osmf.media.URLResource; public class SerialElementExample extends Sprite { public function SerialElementExample() { super(); stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; var mediaPlayerSprite:MediaPlayerSprite = new MediaPlayerSprite(); var serialElement:SerialElement = new SerialElement(); 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"); serialElement.addChild(videoElement); serialElement.addChild(videoElement2); addChild(mediaPlayerSprite); mediaPlayerSprite.media = serialElement; } } }
Wed Jun 13 2018, 11:42 AM Z