Hello actionscript wizards! Once again I call for your help in my time of...average...need!

What I want to do is pretty simple, but I'm not very good at actionscript. The following image will explain it pretty well, but I will put it in writing also.

What I want to do is put the image of the v-cam inside a movieclip, kind of like a tv screen. So whatever the vcam is looking at, it will display inside a seperate movieclip, instead of the whole stage.

Here is an example of what I want to do, on a basic level:


The code for the vcam is unaltered from the downloadable version of it, so can anyone help me with this?

Code:
visible=false;

////////////////////////////////////////////////////////////////////////////
// Get stage width and height //////////////////////////////////////////////

var oldScaleMode:String=stage.scaleMode;
stage.scaleMode="exactFit";

var sW:Number=stage.stageWidth;
var sH:Number=stage.stageHeight;

stage.scaleMode=oldScaleMode;

////////////////////////////////////////////////////////////////////////////
// Get Vcam width and height ///////////////////////////////////////////////

var bounds_obj:Object=this.getBounds(this);

var camH:Number=bounds_obj.height;
var camW:Number=bounds_obj.width;

////////////////////////////////////////////////////////////////////////////
// Creat Point for dynamic registration point //////////////////////////////

var rp:Point=new Point(x,y);

////////////////////////////////////////////////////////////////////////////
// Add Event Listeners /////////////////////////////////////////////////////

addEventListener(Event.ENTER_FRAME,camControl);
addEventListener(Event.REMOVED_FROM_STAGE,reset);

////////////////////////////////////////////////////////////////////////////
// Create BitmapData ///////////////////////////////////////////////////////

var bmp:Bitmap;
var myBitmapData:BitmapData=new BitmapData(sW,sH,true,0);
bmp=new Bitmap(myBitmapData);

camControl();

stage.addChild(bmp);

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////

function camControl(...event):void {

	parent.visible=true;

	////////////////////////////////////////////////////////////////////////////
	// Move the registration point to the vCams current position ///////////////

	rp.x=x;
	rp.y=y;

	////////////////////////////////////////////////////////////////////////////
	// Gets the current scale of the vCam //////////////////////////////////////

	var h:Number=camH * scaleY;
	var w:Number=camW * scaleX;

	////////////////////////////////////////////////////////////////////////////
	// Gets the stage to vCam scale ratio //////////////////////////////////////

	var _scaleY:Number=sH / h;
	var _scaleX:Number=sW / w;

	////////////////////////////////////////////////////////////////////////////
	// Positions the parent ////////////////////////////////////////////////////

	x2=w / 2 * _scaleX;
	y2=h / 2 * _scaleY;

	scaleX2=_scaleX;
	scaleY2=_scaleY;

	rotation2=- rotation;

	////////////////////////////////////////////////////////////////////////////
	// Draw bitmap of parent////////////////////////////////////////////////////

	myBitmapData.lock();
	myBitmapData.fillRect(myBitmapData.rect,0x00);
	myBitmapData.unlock();

	myBitmapData.draw(stage);

	////////////////////////////////////////////////////////////////////////////
	// Apply vCam filters to bitmap ////////////////////////////////////////////
	bmp.filters=this.filters;
	bmp.transform.colorTransform=this.transform.colorTransform;

	parent.visible=false;

}

function reset(e:Event):void {

	////////////////////////////////////////////////////////////////////////////
	// Cleans up data for garbage collection ///////////////////////////////////

	removeEventListener(Event.ENTER_FRAME,camControl);
	removeEventListener(Event.REMOVED_FROM_STAGE,reset);

	stage.removeChild(bmp);
	myBitmapData.dispose();
	bmp=null;

	////////////////////////////////////////////////////////////////////////////
	// Resets parent properties ////////////////////////////////////////////////

	parent.scaleX=1;
	parent.scaleY=1;
	parent.x=0;
	parent.y=0;
	parent.rotation=0;

	parent.visible=true;

}
function set x2(value:Number):void {
	var p:Point=parent.parent.globalToLocal(parent.localToGlobal(rp));
	parent.x+= value - p.x;
}
function get x2():Number {
	var p:Point=parent.parent.globalToLocal(parent.localToGlobal(rp));
	return p.x;
}
function set y2(value:Number):void {
	var p:Point=parent.parent.globalToLocal(parent.localToGlobal(rp));
	parent.y+= value - p.y;
}
function get y2():Number {
	var p:Point=parent.parent.globalToLocal(parent.localToGlobal(rp));
	return p.y;
}
function get scaleX2():Number {
	return parent.scaleX;
}
function set scaleX2(value:Number):void {
	setProperty2("scaleX",value);
}

function get scaleY2():Number {
	return parent.scaleY;
}

function set scaleY2(value:Number):void {
	setProperty2("scaleY",value);
}

function get rotation2():Number {
	return parent.rotation;
}
function set rotation2(value:Number):void {
	setProperty2("rotation",value);
}

function setProperty2(prop:String,n:Number):void {
	var a:Point=parent.parent.globalToLocal(parent.localToGlobal(rp));

	parent[prop]=n;

	var b:Point=parent.parent.globalToLocal(parent.localToGlobal(rp));

	parent.x-= b.x - a.x;
	parent.y-= b.y - a.y;
}
Any replies are greatly appreciated! You can copy/paste the code, change it, and then post it with comments if you like, I would just like to know what you changed to make it possible!