Publish live video & play
Hi all, i use the code below to publish my cam, and i can play it in the same application. Then i copy and renamer it videoPlayer2.as then i use
displayPlaybackVideo(); method but it says "TypeError: Error #1009: Cannot access a property or method of a null object reference.". How can i get the published live video from another app.
Thanks..
videoPlayer.as // publish and play
package
{
import flash.display.MovieClip;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.media.Camera;
import flash.media.Microphone;
import flash.media.Video;
import flash.events.NetStatusEvent;
import fl.video.FLVPlayback;
public class videoPlayer extends MovieClip
{
var nc:NetConnection;
var ns:NetStream;
var nsPlayer:NetStream;
var vid:Video;
var vidPlayer:Video;
var cam:Camera;
var mic:Microphone;
public function videoPlayer()
{
nc=new NetConnection();
nc.connect("rtmp://localhost/video");
nc.addEventListener(NetStatusEvent.NET_STATUS,onNetStatus);
}
function onNetStatus(event:NetStatusEvent):void
{
trace(event.info.code);
if(event.info.code == "NetConnection.Connect.Success"){
publishCamera();
displayPublishingVideo();
displayPlaybackVideo();
}
}
function publishCamera() {
cam = Camera.getCamera();
cam.setMode(160,120,15);
cam.setQuality(100000,0);
mic = Microphone.getMicrophone();
ns = new NetStream(nc);
ns.attachCamera(cam);
ns.attachAudio(mic);
ns.publish("myCamera", "record");
}
function displayPublishingVideo():void {
vid = new Video(200,200);
vid.x = 10;
vid.y = 10;
vid.attachCamera(cam);
addChild(vid);
}
function displayPlaybackVideo():void{
nsPlayer = new NetStream(nc);
vidPlayer = new Video(200,200);
nsPlayer.client=this
nsPlayer.play("myCamera",-1,-1);
vidPlayer.x = cam.width + 80;
vidPlayer.y = 10;
vidPlayer.attachNetStream(nsPlayer);
addChild(vidPlayer);
}
}
}
