Passing parameters to Red5 application with OSMF

Recently working on a Flex project i had the need to implement a video player in my Flex application. Although my needs did not involve media streaming, rather only playing live streams, i still needed a  industry standard code to my solution. Thats where OSMF (Strobe)  came handy. Tracking OSMF for a few months, seems like we finally have a usable version – OSMF 1.0  (0.93).

The second hurdle was passing parameters to RTMP application. As the traditional Netconnection class allows connection params in the constructor, i was unable  to find a example on the web involving OSMF and passing parameters to RTMP applications. Finally after some struggle , god’s grace 🙂 i think i nailed it. Here is the code snippet showing you how to connect to a RTMP application and passing parameters when connecting.

Note: Make sure you have latest OSMF revision from trunk added to your project classpath.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application applicationComplete="application1_applicationCompleteHandler(event)" xmlns:mx="" layout="absolute" minWidth="1024" minHeight="768">

import org.osmf.containers.MediaContainer;
import org.osmf.elements.VideoElement;

private static const REMOTE_STREAMING:String = "rtmp://localhost/RtmpAuthenticate/DarkKnight.flv";
private var mediaElement:VideoElement;
private var mediaPlayer:MediaPlayer;
private var container:MediaContainer;

protected function application1_applicationCompleteHandler(event:FlexEvent):void
var vector:Vector.<Object> = new Vector.<Object>();
vector[0] = "rajdeep";
vector[1] = "xyz123";

// TODO Auto-generated method stub

mediaElement = new VideoElement(new StreamingURLResource(REMOTE_STREAMING,StreamType.RECORDED,NaN,NaN,vector),new NetLoader);
container = new MediaContainer();
container.addMediaElement( mediaElement );

// Flex requires a DisplayObject to be wrapped in Flex Framework UI Abstraction
videoParent.addChild( container );

// MediaPlayer is a virtual controller. Assign it a media element and it will autoplay the media by default.
mediaPlayer = new MediaPlayer(mediaElement);

container.width = 320;
container.height = 240;

private function onMediaPlayerState(me:MediaPlayerStateChangeEvent):void

<mx:UIComponent x="144" y="110" width="409" height="325" id="videoParent" />
No Comments - Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *