Suche…


Externe Videodatei laden und abspielen


Referenz : NetConnection , NetStream , Video

Verwandte Themen : Mit Sound arbeiten


Grundlegendes Beispiel für die Wiedergabe einer externen Videodatei (FLV, MP4, F4V). Code spielt auch M4A-Audiodateien ab.

var nc:NetConnection = new NetConnection();
nc.connect(null);

var ns:NetStream = new NetStream(nc);

var myVideo:Video = new Video();
addChild(myVideo);

myVideo.attachNetStream(ns);

ns.play("http://www.yourwebsite.com/somefile.mp4");

Beachten Sie, dass der Code eine nc.connect.null ? Dies liegt daran, dass in diesem Fall keine bidirektionale Peer-to-Peer-Verbindung erstellt werden muss (z. B. wie in einer Video-Chat-App erwartet), da eine gespeicherte Datei abgespielt wird.

Durch das Festlegen einer nc.connect.null es erforderlich, einen Link zu einer Datei bereitzustellen, die sich entweder auf einem Webserver oder lokal (gleicher Speicherort / Ordner) zur laufenden SWF-Datei befindet.

  • Für eine Web - Datei Verwendung: ns.play("http://www.yourwebsite.com/somefile.mp4");
  • Für eine lokale Datei verwenden Sie: ns.play("somefile.mp4");

Mit NetStatusEvent

package {
    import flash.events.NetStatusEvent;
    import flash.net.NetStream;
    import flash.net.NetConnection;
    import flash.events.Event;
    import flash.media.Video;
    import flash.display.Sprite;
    public class VideoWithNetStatus extends Sprite {
        private var video:Video = new Video();
        private var nc:NetConnection;
        private var ns:NetStream;
        
        public function VideoWithNetStatus() {
            nc = new NetConnection();
            nc.addEventListener(NetStatusEvent.NET_STATUS, onStatus);
            nc.connect(null);//or media server url
        }
 
         private function onStatus(e:NetStatusEvent):void{
             switch(e.info.code){
                 case 'NetConnection.Connect.Success':
                     connectStream();
                 break;
                 default:
                     trace(e.info.code);//to see any unhadled events   
             }
         }
         private function connectStream():void{
             ns = new NetStream(nc);
             ns.addEventListener(NetStatusEvent.NET_STATUS, onStatus);
             addChild(video);
             video.attachNetStream(ns);
             ns.play('url/to/video.flv');
         }
    }
}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow