Creating spherical panorama video from regular panorama

Software: Away3D 4.x

eco_bach, Jr. Member
Posted: 22 March 2013 02:01 PM   Total Posts: 35

I’m attempting to do something in flash but don’t know if it is possible. I have a series of cameras that output a stitched horizontal video. I need to somehow convert this video feed to a spherical panorama, and have it happen LIVE. I was wondering if there was a way to do this within Away, somehow mapping the live video feed to the inside of a sphere with a camera at the center.

   

Avatar
GoroMatsumoto, Sr. Member
Posted: 22 March 2013 03:07 PM   Total Posts: 166   [ # 1 ]

You should show a image of the panorama.
Cheers.

 

   

Avatar
Fabrice Closier, Administrator
Posted: 22 March 2013 06:28 PM   Total Posts: 1265   [ # 2 ]

If you mean an eyefish stiched 360 video
Only thing required is a “videomaterial”, a sphere.scale *-1 or using Meshhelper.invertFaces and set boolean to keep uv’s to prevent image flip.

you can even test it with an old editor of mine here: (supports both 360 video and stills )www.closier.nl/downloads/sfeerz/Sfeerz.air

 

   

eco_bach, Jr. Member
Posted: 22 March 2013 06:34 PM   Total Posts: 35   [ # 3 ]

For video source I mean equirectangular projection videos, think video version of any of these still images on flickr

http://www.flickr.com/groups/equirectangular/pool/

 

   

Avatar
GoroMatsumoto, Sr. Member
Posted: 23 March 2013 01:32 AM   Total Posts: 166   [ # 4 ]

Maybe that works with Fabrice’s way.
If the Video is ok.

I tested with Flickr photo.
See attached my swf.
Cheers.

private function initMaterials():void
  {   
   
var panoramaBd:BitmapData Cast.bitmapData(PanoramaImg);
   var 
mat:Matrix = new Matrix();
   var 
texResolution:uint 2048;
   var 
scaleH:Number 1/(panoramaBd.height/texResolution);
   var 
scaleW:Number = (panoramaBd.height/panoramaBd.width)*scaleH;
   
trace(panoramaBd.height*scaleH);
   
trace(panoramaBd.width*scaleW);
   
mat.scale(scaleW,scaleH);
   var 
pow2PanoramaBd:BitmapData = new BitmapData(texResolution,texResolution,false);
   
pow2PanoramaBd.draw(panoramaBd,mat);
   
panoramaMaterial = new TextureMaterial(Cast.bitmapTexture(pow2PanoramaBd));
  
}
  
  
private function initObjects():void
  {
   panoramaMesh 
= new Mesh(new SphereGeometry(400,32,32), panoramaMaterial);
   
panoramaMesh.geometry.convertToSeparateBuffers();
   
MeshHelper.invertFaces(panoramaMesh);
   
view.scene.addChild(panoramaMesh);
   
panoramaMesh.0;
   
panoramaMesh.0;
   
panoramaMesh.0;
  

 

File Attachments
SimpleAwayTest.swf  (File Size: 1828KB - Downloads: 493)
   
   

X

Away3D Forum

Member Login

Username

Password

Remember_me



X