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

    problem with osmf and edgecast

    Nick Denic

      Hi,

      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
          Brian Riggs Community Member

          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!

          • 2. Re: problem with osmf and edgecast
            Brian Riggs Community Member

            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 Community Member

              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
                Brian Riggs Community Member

                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 Community Member

                  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.

                   

                  Ryan

                  • 6. Re: problem with osmf and edgecast
                    sebpatu2000 Community Member

                    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:

                    "mp4:videofile.mp4"

                    "mp4:videofile.f4v"

                    "mp4:videofile.mov"

                    "flv:videofile"

                    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!