[flexcoders] Security sandbox violation on Bitmapdata.draw( rtmpVid ) despite crosspolicy.xml

2009-01-16 Thread jwebbsuccess
Take a look at this video player; notice there is an image on screen
before the video begins playback:

http://www.huffingtonpost.com/2009/01/14/obama-on-inauguration-
you_n_157881.html

I'm trying to create similar 'preview frame' functionality in my own
custom-built Flex/AS3-based RTMP video player... I need my the player
to seek ahead to a given point in video, grab a snapshot for display
as a preview frame, then seek back to the beginning before the user
initiates playback... Or something like that.

I've already got demo code (AS2) for taking a snapshot of a video
after it has started playing. The problem is when I try to write code
to do the same thing in my AS3 player, I get sandbox violation error
as if I were running the demo SWF and my video player SWF on different
servers. Both SWFs are in document folders on my computer... The
RTMP host and I have confirmed that the permissions for using
'BitmapData.draw( obj )' on a video stream are in place (the demo
works) so I've got no idea why I'm getting the sandbox violation
error.

Can anyone help me to get a snapshot of a video stream and then return
the stream to the beginning before the user initiates playback? I've
included the FLA for the demo in Flash CS4 and CS3 format:

http://www.futurewebstudios.com/bitMapViewer2.zip

The demo code is attached separately:

---

import flash.display.BitmapData;

var nc:NetConnection = new NetConnection();
var ns:NetStream;
var myBitmapData:BitmapData = new BitmapData( 160, 120, false,
0x00CC );
var mc_1:MovieClip = this.createEmptyMovieClip( mc,
this.getNextHighestDepth() );

btnCap.addEventListener( click, captureVid );
nc.connect( rtmp://okojcizj1r.rtmphost.com/vod );
//nc.connect( rtmp://localhost/vod );

nc.onStatus = function( p_o )
{
var code = p_o.code;
trace( code );
if ( code == NetConnection.Connect.Success )
{
playLive();
}
};

function playLive()
{
trace( playLive );
mc_1._x = 195;
mc_1._y = 15;

ns = new NetStream( nc );
myVideo.attachVideo( ns );
myVideo.attachAudio( ns );
ns.play( kaye_400 );
ns.onStatus = function( p_o )
{
trace( p_o.code );
};
mc_1.attachBitmap( myBitmapData,this.getNextHighestDepth() );
}

function captureVid()
{
trace( captureVid );
myBitmapData.draw( myVideo );
}

---

I've also attached a piece of the code in my video player app so you
can see what I'm trying to do; if you need to see more of the code,
let me know and I'll send it to you:

---

public function getScreenCaptureData( seekTime:Number,
vidWidth:Number, vidHeight:Number ):Bitmap
{
var startAt:Number = _netStream.time;

trace( this +  getScreenCaptureData -- startAt:  + startAt
+ , seekTime:  + seekTime + , vidWidth:  + vidWidth + ,
vidHeight:  + vidHeight );

_netStream.seek( seekTime );
var tempVid:Video = new Video( vidWidth, vidHeight );
tempVid.attachNetStream( _netStream );
var bd:BitmapData = new BitmapData( vidWidth, vidHeight );
bd.draw( tempVid );
_netStream.seek( startAt );

//to be continued...

return new Bitmap();
}

---

Thanks in advance for your help.






RE: [flexcoders] Security sandbox violation on Bitmapdata.draw( rtmpVid ) despite crosspolicy.xml

2009-01-16 Thread Alex Harui
Are you testing this over http:// or file://

If file:// crossdomain.xml may not be in play.

From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf 
Of jwebbsuccess
Sent: Friday, January 16, 2009 11:50 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Security sandbox violation on Bitmapdata.draw( rtmpVid ) 
despite crosspolicy.xml


Take a look at this video player; notice there is an image on screen
before the video begins playback:

http://www.huffingtonpost.com/2009/01/14/obama-on-inauguration-
you_n_157881.html

I'm trying to create similar 'preview frame' functionality in my own
custom-built Flex/AS3-based RTMP video player... I need my the player
to seek ahead to a given point in video, grab a snapshot for display
as a preview frame, then seek back to the beginning before the user
initiates playback... Or something like that.

I've already got demo code (AS2) for taking a snapshot of a video
after it has started playing. The problem is when I try to write code
to do the same thing in my AS3 player, I get sandbox violation error
as if I were running the demo SWF and my video player SWF on different
servers. Both SWFs are in document folders on my computer... The
RTMP host and I have confirmed that the permissions for using
'BitmapData.draw( obj )' on a video stream are in place (the demo
works) so I've got no idea why I'm getting the sandbox violation
error.

Can anyone help me to get a snapshot of a video stream and then return
the stream to the beginning before the user initiates playback? I've
included the FLA for the demo in Flash CS4 and CS3 format:

http://www.futurewebstudios.com/bitMapViewer2.zip

The demo code is attached separately:

---

import flash.display.BitmapData;

var nc:NetConnection = new NetConnection();
var ns:NetStream;
var myBitmapData:BitmapData = new BitmapData( 160, 120, false,
0x00CC );
var mc_1:MovieClip = this.createEmptyMovieClip( mc,
this.getNextHighestDepth() );

btnCap.addEventListener( click, captureVid );
nc.connect( rtmp://okojcizj1r.rtmphost.com/vod );
//nc.connect( rtmp://localhost/vod );

nc.onStatus = function( p_o )
{
var code = p_o.code;
trace( code );
if ( code == NetConnection.Connect.Success )
{
playLive();
}
};

function playLive()
{
trace( playLive );
mc_1._x = 195;
mc_1._y = 15;

ns = new NetStream( nc );
myVideo.attachVideo( ns );
myVideo.attachAudio( ns );
ns.play( kaye_400 );
ns.onStatus = function( p_o )
{
trace( p_o.code );
};
mc_1.attachBitmap( myBitmapData,this.getNextHighestDepth() );
}

function captureVid()
{
trace( captureVid );
myBitmapData.draw( myVideo );
}

---

I've also attached a piece of the code in my video player app so you
can see what I'm trying to do; if you need to see more of the code,
let me know and I'll send it to you:

---

public function getScreenCaptureData( seekTime:Number,
vidWidth:Number, vidHeight:Number ):Bitmap
{
var startAt:Number = _netStream.time;

trace( this +  getScreenCaptureData -- startAt:  + startAt
+ , seekTime:  + seekTime + , vidWidth:  + vidWidth + ,
vidHeight:  + vidHeight );

_netStream.seek( seekTime );
var tempVid:Video = new Video( vidWidth, vidHeight );
tempVid.attachNetStream( _netStream );
var bd:BitmapData = new BitmapData( vidWidth, vidHeight );
bd.draw( tempVid );
_netStream.seek( startAt );

//to be continued...

return new Bitmap();
}

---

Thanks in advance for your help.



[flexcoders] Security sandbox violation on Bitmapdata.draw( rtmpVid ) despite crosspolicy.xml

2009-01-15 Thread jwebbsuccess
Take a look at this video player; notice there is an image on screen 
before the video begins playback:

http://www.huffingtonpost.com/2009/01/14/obama-on-inauguration-
you_n_157881.html

I'm trying to create similar 'preview frame' functionality in my own 
custom-built Flex/AS3-based RTMP video player...  I need my the player 
to seek ahead to a given point in video, grab a snapshot for display 
as a preview frame, then seek back to the beginning before the user 
initiates playback... Or something like that.

I've already got demo code (AS2) for taking a snapshot of a video 
after it has started playing.  The problem is when I try to write code 
to do the same thing in my AS3 player, I get sandbox violation error 
as if I were running the demo SWF and my video player SWF on different 
servers.  Both SWFs are in document folders on my computer... The  
RTMP host and I have confirmed that the permissions for using 
'BitmapData.draw( obj )' on a video stream are in place (the demo 
works) so I've got no idea why I'm getting the sandbox violation 
error.

Can anyone help me to get a snapshot of a video stream and then return 
the stream to the beginning before the user initiates playback?  I've 
included the FLA for the demo in Flash CS4 and CS3 format:

http://www.futurewebstudios.com/bitMapViewer2.zip

The demo code is attached separately:

---

import flash.display.BitmapData;

var nc:NetConnection = new NetConnection();
var ns:NetStream;
var myBitmapData:BitmapData = new BitmapData( 160, 120, false, 
0x00CC );
var mc_1:MovieClip = this.createEmptyMovieClip( mc, 
this.getNextHighestDepth() );

btnCap.addEventListener( click, captureVid );
nc.connect( rtmp://okojcizj1r.rtmphost.com/vod );
//nc.connect( rtmp://localhost/vod );

nc.onStatus = function( p_o )
{
var code = p_o.code;
trace( code );
if ( code == NetConnection.Connect.Success )
{
playLive();
}
};

function playLive()
{
trace( playLive );
mc_1._x = 195;
mc_1._y = 15;

ns = new NetStream( nc );
myVideo.attachVideo( ns );
myVideo.attachAudio( ns );
ns.play( kaye_400 );
ns.onStatus = function( p_o )
{
trace( p_o.code );
};
mc_1.attachBitmap( myBitmapData,this.getNextHighestDepth() );
}

function captureVid()
{
trace( captureVid );
myBitmapData.draw( myVideo );
}

---

I've also attached a piece of the code in my video player app so you 
can see what I'm trying to do; if you need to see more of the code, 
let me know and I'll send it to you:

---

public function getScreenCaptureData( seekTime:Number, 
vidWidth:Number, vidHeight:Number ):Bitmap
{
var startAt:Number = _netStream.time;

trace( this +  getScreenCaptureData -- startAt:  + startAt 
+ , seekTime:  + seekTime + , vidWidth:  + vidWidth + , 
vidHeight:  + vidHeight );

_netStream.seek( seekTime );
var tempVid:Video = new Video( vidWidth, vidHeight );
tempVid.attachNetStream( _netStream );
var bd:BitmapData = new BitmapData( vidWidth, vidHeight );
bd.draw( tempVid );
_netStream.seek( startAt );

//to be continued...

return new Bitmap();
}

---

Thanks in advance for your help.



[flexcoders] Security sandbox violation on Bitmapdata.draw( rtmpVid ) despite crosspolicy.xml

2009-01-15 Thread jwebbsuccess
Take a look at this video player; notice there is an image on screen 
before the video begins playback:

http://www.huffingtonpost.com/2009/01/14/obama-on-inauguration-
you_n_157881.html

I'm trying to create similar 'preview frame' functionality in my own 
custom-built Flex/AS3-based RTMP video player...  I need my the player 
to seek ahead to a given point in video, grab a snapshot for display 
as a preview frame, then seek back to the beginning before the user 
initiates playback... Or something like that.

I've already got demo code (AS2) for taking a snapshot of a video 
after it has started playing.  The problem is when I try to write code 
to do the same thing in my AS3 player, I get sandbox violation error 
as if I were running the demo SWF and my video player SWF on different 
servers.  Both SWFs are in document folders on my computer... The  
RTMP host and I have confirmed that the permissions for using 
'BitmapData.draw( obj )' on a video stream are in place (the demo 
works) so I've got no idea why I'm getting the sandbox violation 
error.

Can anyone help me to get a snapshot of a video stream and then return 
the stream to the beginning before the user initiates playback?  I've 
included the FLA for the demo in Flash CS4 and CS3 format:

http://www.futurewebstudios.com/bitMapViewer2.zip

The demo code is attached separately:

---

import flash.display.BitmapData;

var nc:NetConnection = new NetConnection();
var ns:NetStream;
var myBitmapData:BitmapData = new BitmapData( 160, 120, false, 
0x00CC );
var mc_1:MovieClip = this.createEmptyMovieClip( mc, 
this.getNextHighestDepth() );

btnCap.addEventListener( click, captureVid );
nc.connect( rtmp://okojcizj1r.rtmphost.com/vod );
//nc.connect( rtmp://localhost/vod );

nc.onStatus = function( p_o )
{
var code = p_o.code;
trace( code );
if ( code == NetConnection.Connect.Success )
{
playLive();
}
};

function playLive()
{
trace( playLive );
mc_1._x = 195;
mc_1._y = 15;

ns = new NetStream( nc );
myVideo.attachVideo( ns );
myVideo.attachAudio( ns );
ns.play( kaye_400 );
ns.onStatus = function( p_o )
{
trace( p_o.code );
};
mc_1.attachBitmap( myBitmapData,this.getNextHighestDepth() );
}

function captureVid()
{
trace( captureVid );
myBitmapData.draw( myVideo );
}

---

I've also attached a piece of the code in my video player app so you 
can see what I'm trying to do; if you need to see more of the code, 
let me know and I'll send it to you:

---

public function getScreenCaptureData( seekTime:Number, 
vidWidth:Number, vidHeight:Number ):Bitmap
{
var startAt:Number = _netStream.time;

trace( this +  getScreenCaptureData -- startAt:  + startAt 
+ , seekTime:  + seekTime + , vidWidth:  + vidWidth + , 
vidHeight:  + vidHeight );

_netStream.seek( seekTime );
var tempVid:Video = new Video( vidWidth, vidHeight );
tempVid.attachNetStream( _netStream );
var bd:BitmapData = new BitmapData( vidWidth, vidHeight );
bd.draw( tempVid );
_netStream.seek( startAt );

//to be continued...

return new Bitmap();
}

---

Thanks in advance for your help.



[flexcoders] Security sandbox violation on Bitmapdata.draw( rtmpVid ) despite crosspolicy.xml

2009-01-15 Thread jwebbsuccess
Take a look at this video player; notice there is an image on screen 
before the video begins playback:

http://www.huffingtonpost.com/2009/01/14/obama-on-inauguration-
you_n_157881.html

I'm trying to create similar 'preview frame' functionality in my own 
custom-built Flex/AS3-based RTMP video player...  I need my the player 
to seek ahead to a given point in video, grab a snapshot for display 
as a preview frame, then seek back to the beginning before the user 
initiates playback... Or something like that.

I've already got demo code (AS2) for taking a snapshot of a video 
after it has started playing.  The problem is when I try to write code 
to do the same thing in my AS3 player, I get sandbox violation error 
as if I were running the demo SWF and my video player SWF on different 
servers.  Both SWFs are in document folders on my computer... The  
RTMP host and I have confirmed that the permissions for using 
'BitmapData.draw( obj )' on a video stream are in place (the demo 
works) so I've got no idea why I'm getting the sandbox violation 
error.

Can anyone help me to get a snapshot of a video stream and then return 
the stream to the beginning before the user initiates playback?  I've 
included the FLA for the demo in Flash CS4 and CS3 format:

http://www.futurewebstudios.com/bitMapViewer2.zip

The demo code is attached separately:

---

import flash.display.BitmapData;

var nc:NetConnection = new NetConnection();
var ns:NetStream;
var myBitmapData:BitmapData = new BitmapData( 160, 120, false, 
0x00CC );
var mc_1:MovieClip = this.createEmptyMovieClip( mc, 
this.getNextHighestDepth() );

btnCap.addEventListener( click, captureVid );
nc.connect( rtmp://okojcizj1r.rtmphost.com/vod );
//nc.connect( rtmp://localhost/vod );

nc.onStatus = function( p_o )
{
var code = p_o.code;
trace( code );
if ( code == NetConnection.Connect.Success )
{
playLive();
}
};

function playLive()
{
trace( playLive );
mc_1._x = 195;
mc_1._y = 15;

ns = new NetStream( nc );
myVideo.attachVideo( ns );
myVideo.attachAudio( ns );
ns.play( kaye_400 );
ns.onStatus = function( p_o )
{
trace( p_o.code );
};
mc_1.attachBitmap( myBitmapData,this.getNextHighestDepth() );
}

function captureVid()
{
trace( captureVid );
myBitmapData.draw( myVideo );
}

---

I've also attached a piece of the code in my video player app so you 
can see what I'm trying to do; if you need to see more of the code, 
let me know and I'll send it to you:

---

public function getScreenCaptureData( seekTime:Number, 
vidWidth:Number, vidHeight:Number ):Bitmap
{
var startAt:Number = _netStream.time;

trace( this +  getScreenCaptureData -- startAt:  + startAt 
+ , seekTime:  + seekTime + , vidWidth:  + vidWidth + , 
vidHeight:  + vidHeight );

_netStream.seek( seekTime );
var tempVid:Video = new Video( vidWidth, vidHeight );
tempVid.attachNetStream( _netStream );
var bd:BitmapData = new BitmapData( vidWidth, vidHeight );
bd.draw( tempVid );
_netStream.seek( startAt );

//to be continued...

return new Bitmap();
}

---

Thanks in advance for your help.