Поиск…


Загрузка и воспроизведение внешнего видеофайла


ссылка : NetConnection , NetStream , Video

связанные темы : Работа со звуком


Основной пример воспроизведения внешнего видеофайла (FLV, MP4, F4V). Код также будет воспроизводить аудиофайлы M4A.

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");

Обратите внимание, что в коде используется nc.connect.null ? Это связано с тем, что в этом случае нет необходимости создавать двустороннее одноранговое соединение (например, как ожидается в приложении видеочата), так как мы играем сохраненный файл.

Установив nc.connect.null необходимо предоставить ссылку на файл, который находится либо на веб-сервере, либо на локальном (то же местоположение / папку), что и на SWF.

  • Для использования веб- файла: ns.play("http://www.yourwebsite.com/somefile.mp4");
  • Для локального файла используйте: ns.play("somefile.mp4");

С 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
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow