Achei um exemplo na internet para capturar imagem de uma WEBCAM.
WebCam.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="{this.startUp()}" >
<mx:Script>
<![CDATA[
import mx.graphics.ImageSnapshot;
public function startUp():void
{
var cam:Camera = Camera.getCamera();
myVideo.attachCamera(cam);
}
public function onClickFoto():void
{
var imageBitmapData:BitmapData = ImageSnapshot.captureBitmapData(myVideo);
myImage.source = new Bitmap(imageBitmapData);
}
]]>
</mx:Script>
<mx:Button click="{this.onClickFoto()}" x="10" y="10" label="Foto"/>
<mx:Box id="myTile" x="10" y="40" direction="horizontal">
<mx:VideoDisplay id="myVideo" width="300" height="200"/>
<mx:Image id="myImage" width="300" height="200"/>
</mx:Box>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="{this.startUp()}" >
<mx:Script>
<![CDATA[
import mx.graphics.ImageSnapshot;
public function startUp():void
{
var cam:Camera = Camera.getCamera();
myVideo.attachCamera(cam);
}
public function onClickFoto():void
{
var imageBitmapData:BitmapData = ImageSnapshot.captureBitmapData(myVideo);
myImage.source = new Bitmap(imageBitmapData);
}
]]>
</mx:Script>
<mx:Button click="{this.onClickFoto()}" x="10" y="10" label="Foto"/>
<mx:Box id="myTile" x="10" y="40" direction="horizontal">
<mx:VideoDisplay id="myVideo" width="300" height="200"/>
<mx:Image id="myImage" width="300" height="200"/>
</mx:Box>
</mx:Application>
Exemplo com botão salvar :
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="{this.startUp()}" >
<mx:Script>
<![CDATA[
import mx.graphics.codec.JPEGEncoder;
import mx.graphics.ImageSnapshot;
private var cam:Camera = Camera.getCamera();
[Bindable]private var imageBitmapData:BitmapData;
public function startUp():void
{
myVideo.attachCamera(cam);
}
public function onClickFoto():void
{
imageBitmapData = ImageSnapshot.captureBitmapData(myVideo);
myImage.source = new Bitmap(imageBitmapData);
}
public function SalvarImagem():void
{
var encoder:JPEGEncoder = new JPEGEncoder();
var rawBytes:ByteArray = encoder.encode(imageBitmapData);
new FileReference().save(rawBytes,"teste.jpg");
}
]]>
</mx:Script>
<mx:Button click="{this.onClickFoto()}" x="10" y="10" label="Foto"/>
<mx:Button click="{SalvarImagem()}" x="70" y="10" label="Salvar"/>
<mx:Box id="myTile" x="10" y="40" direction="horizontal">
<mx:VideoDisplay id="myVideo" width="300" height="200"/>
<mx:Image id="myImage" width="300" height="200"/>
</mx:Box>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="{this.startUp()}" >
<mx:Script>
<![CDATA[
import mx.graphics.codec.JPEGEncoder;
import mx.graphics.ImageSnapshot;
private var cam:Camera = Camera.getCamera();
[Bindable]private var imageBitmapData:BitmapData;
public function startUp():void
{
myVideo.attachCamera(cam);
}
public function onClickFoto():void
{
imageBitmapData = ImageSnapshot.captureBitmapData(myVideo);
myImage.source = new Bitmap(imageBitmapData);
}
public function SalvarImagem():void
{
var encoder:JPEGEncoder = new JPEGEncoder();
var rawBytes:ByteArray = encoder.encode(imageBitmapData);
new FileReference().save(rawBytes,"teste.jpg");
}
]]>
</mx:Script>
<mx:Button click="{this.onClickFoto()}" x="10" y="10" label="Foto"/>
<mx:Button click="{SalvarImagem()}" x="70" y="10" label="Salvar"/>
<mx:Box id="myTile" x="10" y="40" direction="horizontal">
<mx:VideoDisplay id="myVideo" width="300" height="200"/>
<mx:Image id="myImage" width="300" height="200"/>
</mx:Box>
</mx:Application>
Veja funcionando em outro endereço : http://files.riacodes.com/flash_capture-webcam/
Fonte : http://groups.google.com.br/group/flexdev/browse_thread/thread/99ad40c7e7b031/8ee3f06b2a802176?hl=pt-BR&lnk=gst&q=webcam#8ee3f06b2a802176
0 comentários:
Postar um comentário