org.osmf.net.rtmpstreaming

# RTMPDynamicStreamingNetLoader - AS3 OSMF

Package | org.osmf.net.rtmpstreaming
Class | public class RTMPDynamicStreamingNetLoader
Inheritance | RTMPDynamicStreamingNetLoader NetLoader LoaderBase EventDispatcher Object
Subclasses | DVRCastNetLoader

Language Version: | ActionScript 3.0

Product Version: | OSMF 1.0

Runtime Versions: | Flash Player 10, AIR 1.5

RTMPDynamicStreamingNetLoader is a NetLoader that provides dynamic stream switching functionality for RTMP streams. It does this by creating a NetStreamSwitchManager for each LoadTrait that is loaded through this object.

This class is "backwards compatible", meaning if it is not handed an RTMP DynamicStreamingResource then it will call the base class implementation for the `load` and `unload` methods.

View the examples

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | reconnectTimeout : Number The stream reconnect timeout in milliseconds. | NetLoader

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | RTMPDynamicStreamingNetLoader(factory:NetConnectionFactoryBase = null) Constructor. | RTMPDynamicStreamingNetLoader
|  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event. | EventDispatcher
|  | canHandleResource(resource:MediaResourceBase):Boolean Indicates whether this loader is capable of handling (loading) the given MediaResourceBase. | LoaderBase
|  | dispatchEvent(event:Event):Boolean Dispatches an event into the event flow. | EventDispatcher
|  | hasEventListener(type:String):Boolean Checks whether the EventDispatcher object has any listeners registered for a specific type of event. | EventDispatcher
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | load(loadTrait:org.osmf.traits:LoadTrait):void Loads the specified LoadTrait. | LoaderBase
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void Removes a listener from the EventDispatcher object. | EventDispatcher
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String Returns the string representation of the specified object. | Object
|  | unload(loadTrait:org.osmf.traits:LoadTrait):void Unloads the specified LoadTrait. | LoaderBase
|  | valueOf():Object Returns the primitive value of the specified object. | Object
|  | willTrigger(type:String):Boolean Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. | EventDispatcher

Protected Methods
Hide Inherited Protected Methods
Show Inherited Protected Methods

| Method | Defined By
--- | --- | ---
|  | createNetStream(connection:NetConnection, resource:URLResource):NetStream The factory function for creating a NetStream. | NetLoader
|  | createNetStreamSwitchManager(connection:NetConnection, netStream:NetStream, dsResource:DynamicStreamingResource):NetStreamSwitchManagerBase The factory function for creating a NetStreamSwitchManagerBase. | NetLoader
|  | executeLoad(loadTrait:org.osmf.traits:LoadTrait):void Executes the load of the given LoadTrait. | LoaderBase
|  | executeUnload(loadTrait:org.osmf.traits:LoadTrait):void Executes the unload of the given LoadTrait. | LoaderBase
|  | reconnect(netConnection:NetConnection, resource:URLResource):void Attempts to reconnect the specified NetConnection to the specified URL. | NetLoader
|  | updateLoadTrait(loadTrait:org.osmf.traits:LoadTrait, newState:String):void Updates the given LoadTrait with the given info, and dispatches the state change event if necessary. | LoaderBase

Events
Click for more information on events
Hide Inherited Events
Show Inherited Events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | activate | [broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher
|  | deactivate | [broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher
|  | loadStateChange | Dispatched when the state of a LoadTrait being loaded or unloaded by the LoaderBase has changed. | LoaderBase

Constructor Detail

### RTMPDynamicStreamingNetLoader

()
Constructor

`public function RTMPDynamicStreamingNetLoader(factory:NetConnectionFactoryBase = null)`

Language Version: | ActionScript 3.0

Product Version: | OSMF 1.0

Runtime Versions: | Flash Player 10, AIR 1.5

Constructor.

Parameters

| `factory:NetConnectionFactoryBase` (default = `null`)`` — the NetConnectionFactoryBase instance to use for managing NetConnections. If factory is null, a NetConnectionFactory will be created and used. Since the NetConnectionFactory class facilitates connection sharing, this is an easy way of enabling global sharing, by creating a single NetConnectionFactory instance within the player and then handing it to all RTMPDynamicStreamingNetLoader instances.

Examples How to use this example
RTMPDynamicStreamingNetLoaderExample.as
Copy

    package
    {
        import flash.display.Sprite;
        import flash.display.StageAlign;
        import flash.display.StageScaleMode;

        import org.osmf.elements.VideoElement;
        import org.osmf.media.MediaPlayerSprite;
        import org.osmf.net.DynamicStreamingItem;
        import org.osmf.net.DynamicStreamingResource;
        import org.osmf.net.rtmpstreaming.RTMPDynamicStreamingNetLoader;

        public class RTMPDynamicStreamingNetLoaderExample extends Sprite
        {
            public function RTMPDynamicStreamingNetLoaderExample()
            {
                super();

                stage.scaleMode = StageScaleMode.NO_SCALE;
                stage.align = StageAlign.TOP_LEFT;

                var mediaPlayerSprite:MediaPlayerSprite = new MediaPlayerSprite();
                var netLoader:RTMPDynamicStreamingNetLoader = new RTMPDynamicStreamingNetLoader();
                var videoElement:VideoElement = new VideoElement(null, netLoader);

                var dynResource:DynamicStreamingResource = new DynamicStreamingResource("rtmp://cp67126.edgefcs.net/ondemand");
                dynResource.streamItems = Vector.<DynamicStreamingItem>(
                    [     new DynamicStreamingItem("mp4:mediapm/ovp/content/demo/video/elephants_dream/elephants_dream_768x428_24.0fps_408kbps.mp4", 408, 768, 428)
                        , new DynamicStreamingItem("mp4:mediapm/ovp/content/demo/video/elephants_dream/elephants_dream_768x428_24.0fps_608kbps.mp4", 608, 768, 428)
                        , new DynamicStreamingItem("mp4:mediapm/ovp/content/demo/video/elephants_dream/elephants_dream_1024x522_24.0fps_908kbps.mp4", 908, 1024, 522)
                        , new DynamicStreamingItem("mp4:mediapm/ovp/content/demo/video/elephants_dream/elephants_dream_1024x522_24.0fps_1308kbps.mp4", 1308, 1024, 522)
                        , new DynamicStreamingItem("mp4:mediapm/ovp/content/demo/video/elephants_dream/elephants_dream_1280x720_24.0fps_1708kbps.mp4", 1708, 1280, 720)
                    ]);

                videoElement.resource = dynResource;

                addChild(mediaPlayerSprite);
                mediaPlayerSprite.media = videoElement;
            }
        }
    }

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00