ActionScript 3
Werken met video
Zoeken…
Laad en speel extern videobestand
referentie : NetConnection
, NetStream
, Video
gerelateerde onderwerpen : Werken met geluid
Eenvoudig voorbeeld van het afspelen van een extern videobestand (FLV, MP4, F4V). Code speelt ook M4A-audiobestanden af.
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");
Let op de gebruikte code een nc.connect.null
? Dit komt omdat het in dit geval niet nodig is om een tweeweg-peer-to-peer-verbinding te maken (bijvoorbeeld: zoals verwacht in een videochat-app) omdat we een opgeslagen bestand afspelen.
Door een nc.connect.null
te stellen, moet u een koppeling naar een bestand op een webserver of een lokaal (dezelfde locatie / map) naar de actieve SWF opgeven.
- Voor een web-bestand gebruik:
ns.play("http://www.yourwebsite.com/somefile.mp4");
- Gebruik voor een lokaal bestand:
ns.play("somefile.mp4");
Met 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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow