6 Replies Latest reply on Feb 29, 2012 5:49 AM by sebpatu2000

    problem with osmf and edgecast

    Nick Denic


      for past two weeks I desperately tried to use osmf with edgecast cdn, but without any result.


      Since my client insist on osmf, "quick and easy" development turns to a never ending story.

      Is there a way to get basic playback functionality without developing additional plugin for such a thing?


      I already searched for solution, but except one guy who already notice edgecast problem with osmf, I couldn't find anything else.


      Thanks in advance.

        • 1. Re: problem with osmf and edgecast
          bringrags Level 4

          Could you send me (briggs at adobe etc.) an RTMP URL that I can try to connect to against EdgeCast?  Also, are you able to get this working with a plain NetConnection/NetStream approach (and if so, can you send me the code)?  Thanks!

          1 person found this helpful
          • 2. Re: problem with osmf and edgecast
            bringrags Level 4

            It looks like EdgeCast URLs include the FMS application instance.  (Some CDNs include this, others don’t.)  The default OSMF behavior is to assume that the FMS application instance is not used, since this is the more common case.  To support the latter, use the StreamingURLResource.urlIncludesFMSApplicationInstance param, e.g.:


            var resource:StreamingURLResource = new StreamingURLResource("rtmp://myserver/mp4:mystream.mp4");

            resource.urlIncludesFMSApplicationInstance = true;

            mediaPlayer.media = new VideoElement(resource);

            • 3. Re: problem with osmf and edgecast
              Nick Denic Level 1

              Thanks, I've miss that.


              Just wondering...

              Is there a way to detect cdn setup in osmf? In case of building something for unknown future usage?

              or it's expected for this kind of info to be provided in customized .f4m or somehow else?

              • 4. Re: problem with osmf and edgecast
                bringrags Level 4

                I think we (as in Adobe) are trying to standardize things that vary by CDN, so that player developers don't need to worry about the details.  This property for whether to use the instance or not is a good example.  For the things that truly must vary, CDN-specific plugins are a good solution.  Either way, the player developer ought to be isolated from the CDN-specific logic.  Clearly, we're not there yet.

                • 5. Re: problem with osmf and edgecast
                  rshin Level 3

                  Yes, you may need to specify "urlIncludesFMSApplicationInstance to true for such url you are trying.

                  Also if the url is a live (it seems a live by looking at your attempted url), you might want to set "StreamType" to LIVE or "LIVE_OR_RECORDED" depending on how your application does.



                  • 6. Re: problem with osmf and edgecast
                    sebpatu2000 Level 1

                    Thanks a lot for this solution, i lost a lot of time with it.

                    For those who wonder:

                    If you want to use Flex 4 VideoPlayer (which is based on OSMF) with EdgeCast or any other CDN which add FMS App in URL for RTMP streaming:

                    until its done properly in the SDK you can do that:


                    var resourceFullURL:String = "rtmp://fms.yourID.edgecastcdn.net/FMSAPP/mp4:yourvideofile.mp4";  //For EdgeCast FMSAPP is your client ID

                    var resource:StreamingURLResource = new StreamingURLResource(resourceFullURL);

                    resource.urlIncludesFMSApplicationInstance = true;

                    var videoElement:VideoElement = new VideoElement(resource);                       

                    flexVideoPlayer.source = videoElement; // also work for VideoDisplay of course


                    I also lost a lot of time trying to work with flv files so here is what i found:

                    for the resourceFullURL of previous example:

                    the base is always: "rtmp://fms.yourID.edgecastcdn.net/FMSAPP/"

                    but you must add the following according to your video format:





                    NO EXTENSION FOR FLV FILE! its stupid but it does not work if you add it. Of course your file on the server needs to have the extention!


                    For HTTP streaming its more easy to use flex 4 VideoPlayer:

                    flexVideoPlayer.source = "http://wpc.yourID.edgecastcdn.net/FMSAPP/videofileName.videofileFormatExtention";

                    extention can be mp4, f4v, mov or flv without issues!