Flashで複数カメラ
2009.7.2 木曜日
以前、Flashでは複数のマイク入力を同時に取得できないと書きましたが、Webカメラからの映像は普通に複数取得することが可能です。巧く使えれば3次元的な位置とかを検出できそう。接続されているWebカメラの台数分、ステージにVideoオブジェクトを配置するサンプルプログラム。
追記 2009.9.24
同じメーカーの同じWebカメラ(ドライバ)を使った場合、うまく認識しない場合がありました。また、別々のメーカーのWebカメラの場合、3台まで同時表示は確認しました。
同じメーカーの同じWebカメラ(ドライバ)を使った場合、うまく認識しない場合がありました。また、別々のメーカーのWebカメラの場合、3台まで同時表示は確認しました。
//Main.as
package {
import flash.display.Sprite;
import flash.media.Camera;
import flash.media.Video;
public class Main extends Sprite {
public function Main():void {
//初期化
var camera = new Array();
var video = new Array();
//接続されているカメラの数を取得
var l:int = Camera.names.length - 1;
//カメラが1台以上接続されている場合
while (l >= 0) {
//カメラを取得
camera[l] = Camera.getCamera(String(l));
//CameraとVideoを連携
video[l] = new Video(camera[l].width, camera[l].height);
video[l].attachCamera(camera[l]);
//ステージに追加、位置調整
this.addChild(video[l]);
video[l].x = video[l].width * l;
l --;
}
}
}
}
Posted by tmdf|ActionScript