3 votes

Diffusion RTMP avec OSMF - AS3

Nouveau sur OSMF et essayant de lire un streaming mp4 sur notre serveur Limelight. Selon ce tutoriel http://www.adobe.com/devnet/flash/articles/video_osmf_streaming.html, vous devez simplement passer le lien RTMP à URLResource. J'ai essayé cela et ça ne fonctionne pas. Ça marche bien si je passe un URL local. J'utilise OSMF 1.5 SWC et mon code est

package 
{
    import flash.display.*;
    import flash.events.*;
    import org.osmf.media.*;

    public class Main extends Sprite
    {
        private var mps:MediaPlayerSprite;

        public function Main()
        {
            stage.align     = StageAlign.TOP_LEFT;
            stage.scaleMode = StageScaleMode.NO_SCALE;

            mps             = new MediaPlayerSprite();
            mps.width       = 640;
            mps.height      = 360;
            mps.resource    = new URLResource("rtmp://my.limelight.host.net/mp4:dyk_seatbelts_high.mp4");
            addChild(mps);
        }
    }
}

Je ne reçois aucune erreur, seulement un canvas vierge. Des idées?

2voto

ExtremeBt Points 86

Vous devriez ajouter le streamer et l'URL de la vidéo pour le streaming RTMP. Par exemple:

var resource:DynamicStreamingResource = new DynamicStreamingResource(videoStreamer);
resource.urlIncludesFMSApplicationInstance = true;
var vector:Vector. = new Vector.(1);
vector[0] = new DynamicStreamingItem(videoUrl, 1200);
resource.streamItems = vector;
element = new VideoElement(resource);

player.media = element;

Vous pouvez ajouter quelques éléments de streaming dynamique. Fichiers vidéo avec différents débits.

Exemple pour videoStreamer: rtmp://streamer_url

Exemple pour videoUrl: mp4:chemin_vers_video.mp4

2voto

S.Raaj Nishanth Points 182

Ceci est juste une mise à jour. Le DynamicStreamingItem n'est plus disponible. Vous pouvez simplement ajouter votre URL de flux rtmp à une StreamingURLResource. Joue comme un charme. (Corrigez-moi si je me trompe.... je suis nouveau sur OSMF)

var videoElement:VideoElement = new VideoElement();
videoElement.resource = new StreamingURLResource("rtmp://cp140972.XXXXX",StreamType.LIVE,NaN,NaN,null,false);
player.media = videoElement;

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X