gpt4 book ai didi

flash - 使用 Actionscript 使用网络摄像头拍摄照片

转载 作者:行者123 更新时间:2023-12-04 18:48:07 25 4
gpt4 key购买 nike

我有一个带有网络摄像头和图像的简单 actionscript 文件。我想要做的是 - 当一个按钮被点击时,我想捕捉网络摄像头和图像的瞬间,并将其呈现在浏览器的 DIV 中。我如何捕捉它?我猜需要使用位图数据。我想通过代码做到这一点

最佳答案

这是我自己写的来回答这个问题的内容。在 Chrome、FF 和 IE9 中测试。

您需要 Base64 编码器(一个是 here )和 png/jpg 编码器(例如来自 Flex 库)。

AS 代码:

package
{
import flash.display.BitmapData;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.external.ExternalInterface;
import flash.media.Camera;
import flash.media.Video;

[SWF(width="640", height="480", backgroundColor="#000000")]
public class CameraToJS extends Sprite
{
private var camera:Camera;
private var video:Video;

public function CameraToJS()
{
addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
stage.addEventListener(MouseEvent.CLICK, saveSnapshot);
}

protected function addedToStageHandler(event:Event):void
{
camera = Camera.getCamera();
video = new Video();
video.attachCamera(camera);
addChild(video);
}

protected function saveSnapshot(event:MouseEvent):void
{
var bmData:BitmapData = new BitmapData(video.width, video.height);
bmData.draw(video);

var encoder:PNGEncoder = new PNGEncoder();

ExternalInterface.call("image", Base64.encodeByteArray(encoder.encode(bmData)));
}
}
}

Javascript 代码:
function image(data)
{
document.getElementById("img").src = "data:image/png;base64,"+ data;
}

关于flash - 使用 Actionscript 使用网络摄像头拍摄照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10633313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com