패키지 | org.osmf.elements |
클래스 | public class SerialElement |
상속 | SerialElement ![]() ![]() ![]() ![]() |
언어 버전: | ActionScript 3.0 |
제품 버전: | OSMF 1.0 |
런타임 버전: | 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.
속성 | 정의 주체 | ||
---|---|---|---|
![]() | constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다. | Object | |
currentChild : MediaElement [읽기 전용]
The currently active child of this SerialElement. | SerialElement | ||
![]() | metadataNamespaceURLs : Vector.<String> [읽기 전용]
A Vector containing the namespace URLs for all Metadata
objects stored within this MediaElement. | MediaElement |
메서드 | 정의 주체 | ||
---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
리스너에서 이벤트 알림을 받을 수 있도록 EventDispatcher 객체에 이벤트 리스너 객체를 등록합니다. | EventDispatcher | |
![]() |
이벤트를 이벤트 흐름으로 전달합니다. | EventDispatcher | |
![]() |
EventDispatcher 객체에 특정 유형의 이벤트에 대한 리스너가 등록되어 있는지 여부를 확인합니다. | EventDispatcher | |
![]() |
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다. | Object | |
![]() |
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다. | Object | |
![]() |
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다. | Object | |
![]() |
EventDispatcher 객체에서 리스너를 제거합니다. | EventDispatcher | |
![]() |
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다. | Object | |
![]() |
로캘별 규칙에 따라 서식이 지정된 이 객체의 문자열 표현을 반환합니다. | Object | |
![]() |
지정된 객체의 문자열 표현을 반환합니다. | Object | |
![]() |
지정된 객체의 프리미티브 값을 반환합니다. | Object | |
![]() |
이 EventDispatcher 객체 또는 조상 객체에 지정한 이벤트 유형에 대한 이벤트 리스너가 등록되어 있는지 여부를 확인합니다. | EventDispatcher |
currentChild | 속성 |
currentChild:MediaElement
[읽기 전용] The currently active child of this SerialElement.
구현
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; } } }
Tue Jun 12 2018, 03:17 PM Z