SHOW:
|
|
- or go back to the newest paste.
1 | package | |
2 | { | |
3 | import flash.display.Sprite; | |
4 | import flash.display.StageAlign; | |
5 | import flash.display.StageScaleMode; | |
6 | import flash.events.Event; | |
7 | import flash.events.NetStatusEvent; | |
8 | ||
9 | import org.osmf.containers.MediaContainer; | |
10 | import org.osmf.elements.VideoElement; | |
11 | import org.osmf.events.LoadEvent; | |
12 | import org.osmf.events.MediaErrorEvent; | |
13 | import org.osmf.layout.LayoutMetadata; | |
14 | import org.osmf.layout.ScaleMode; | |
15 | import org.osmf.media.MediaPlayer; | |
16 | import org.osmf.net.DynamicStreamingItem; | |
17 | import org.osmf.net.DynamicStreamingResource; | |
18 | import org.osmf.net.NetStreamLoadTrait; | |
19 | import org.osmf.net.StreamType; | |
20 | import org.osmf.traits.MediaTraitType; | |
21 | ||
22 | ||
23 | - | public class SimplePlayer extends Sprite |
23 | + | public class SimpleBloombergPlayer extends Sprite |
24 | { | |
25 | private var vector:*; | |
26 | private var videoElement:VideoElement | |
27 | ||
28 | - | public function SimplePlayer() |
28 | + | public function SimpleBloombergPlayer() |
29 | { | |
30 | this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage); | |
31 | } | |
32 | ||
33 | private function onAddedToStage(event:Event):void{ | |
34 | stage.scaleMode = StageScaleMode.NO_SCALE; | |
35 | stage.align = StageAlign.TOP_LEFT; | |
36 | createSimplePlayer(); | |
37 | } | |
38 | ||
39 | private function createSimplePlayer():void{ | |
40 | ||
41 | var player : MediaPlayer = new MediaPlayer ( ) ; | |
42 | player.addEventListener(LoadEvent.LOAD_STATE_CHANGE,onLoadChange); | |
43 | var container : MediaContainer = new MediaContainer ( ) ; | |
44 | addChild ( container ) ; | |
45 | ||
46 | var resource : DynamicStreamingResource = new DynamicStreamingResource ("rtmpt://XXXX", StreamType.LIVE) ; | |
47 | resource.urlIncludesFMSApplicationInstance = true; | |
48 | ||
49 | ||
50 | vector = new Vector.<DynamicStreamingItem>(); | |
51 | vector [ 0 ] = new DynamicStreamingItem ( "REMOVED" , 1000 ) ; | |
52 | vector [ 1 ] = new DynamicStreamingItem ( "REMOVED" , 700 ) ; | |
53 | vector [ 2 ] = new DynamicStreamingItem ( "REMOVED" , 440 ) ; | |
54 | vector [ 3 ] = new DynamicStreamingItem ( "REMOVED" , 240 ) ; | |
55 | resource.streamItems = vector ; | |
56 | ||
57 | videoElement = new VideoElement( resource ) ; | |
58 | videoElement.addEventListener(MediaErrorEvent.MEDIA_ERROR, onMediaError); | |
59 | ||
60 | ||
61 | player.media = videoElement ; | |
62 | ||
63 | var layout:LayoutMetadata = new LayoutMetadata(); | |
64 | layout.scaleMode = ScaleMode.LETTERBOX; | |
65 | layout.height = 360; | |
66 | layout.width = 640; | |
67 | ||
68 | player.media.addMetadata(LayoutMetadata.LAYOUT_NAMESPACE, layout); | |
69 | ||
70 | container.addMediaElement ( videoElement ) ; | |
71 | } | |
72 | ||
73 | private function onLoadChange(event:LoadEvent):void{ | |
74 | var media:MediaPlayer = event.target as MediaPlayer; | |
75 | if(media && event.loadState == "ready"){ | |
76 | ||
77 | var loadTrait:NetStreamLoadTrait = media.media.getTrait(MediaTraitType.LOAD) as NetStreamLoadTrait; | |
78 | ||
79 | if (loadTrait){ | |
80 | loadTrait.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus); | |
81 | } | |
82 | ||
83 | if (loadTrait && loadTrait.netStream){ | |
84 | loadTrait.netStream.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus); | |
85 | } | |
86 | ||
87 | if (loadTrait && loadTrait.connection){ | |
88 | loadTrait.connection.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus); | |
89 | } | |
90 | ||
91 | if (loadTrait && loadTrait.netGroup){ | |
92 | loadTrait.netGroup.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus); | |
93 | } | |
94 | } | |
95 | } | |
96 | ||
97 | private function onNetStatus(event:NetStatusEvent):void { | |
98 | trace("***** onNetStatus ****** :"+event.info.code); | |
99 | ||
100 | } | |
101 | ||
102 | private function onMediaError(event:MediaErrorEvent):void | |
103 | { | |
104 | trace("Media error event" + event.error.name); | |
105 | } | |
106 | } | |
107 | } |