2011-02-03 6 views
1

フレックスアプリにビデオディスプレイがあります。カメラに取り付けられています。カメラの解像度は、ユーザーの選択によって異なりますが、ビデオ表示(プレビュー)の寸法は固定されています。私はこれをしている:フレックス、カメラの高さと幅がビデオ表示と異なるスナップショットをキャプチャします

bmd.draw(vidDisplay);

ここで、bmdはビットマップです。問題は結果のビットマップが(設定されている)カメラ設定の正しいサイズを持っていますが、ビデオからのキャプチャは常にビットマップ内のビデオディスプレイのサイズです。私は理解したいと思っています..結果は左上揃えの大きな画像内の小さな画像のように見えます。

固定の高さでビデオ表示のプレビューをしたいのですが、解像度を変えてスナップショットを撮ることができます。どんな助けもありがとう!

+0

行列を使用してスナップショットのスケールを変更することはできますが、それを探す必要がある例はありません。描画メソッドの2番目のパラメータimage.draw(obj、yourMatrix); – Neil

答えて

0

あなたはそれを作成する際にビットマップのサイズを設定することができます。

var bmd: BitmapData = new BitmapData(video.width, video.height); 

をし、それにビデオディスプレイ(ビデオiteself、ないプレビューウィンドウ)を描く:

bmd.draw(vidDisplay); 
+0

これは私がやっていることです..どのようにビデオとは異なるプレビューウィンドウのサイズを設定するのですか?私はそれが問題だと思う。 – rodrick

0

最も簡単スナップショットを撮る前にVideoDisplayのサイズを変更するだけです。あなただけのスナップショットを取得する目的のために別々のflash.media.Videoオブジェクトを使用した場合

videoDisplay.width = desiredWidth; 
videoDisplay.height = desiredHeight; 

// validate immediately to see new size  
videoDisplay.validateNow(); 

bitmapData.draw(videoDisplay); 

// now restore to original size 
videoDisplay.width = originalWidth; 
videoDisplay.height = originalHeight; 

videoDisplay.validateNow(); 

はさらに良いでしょう。

+0

hmm私はかなり速くたくさんのショットを撮っています。サイズを調整することは私の状況ではうまくいかないかもしれません。私はそれを撃つだろう。他のオプションは少しリソースを集中しているようですね?? – rodrick

関連する問題