私はsparkビデオコンポーネントを使用していますが、spark videoObjectはnullであり、動的ビデオソースオブジェクトを使用する場合はnullのままです。カメラは正しく検出されていますが、変数を使用するとnullになり、Cameraオブジェクトを直接使用するとusbカメラが検出され、videoobjectはまだnullになります...アイデアはありますか?
Camera.namesを使用すると、すべての「カメラ」がnullになります。apachevirtualhostsからビデオを再生すると、うまく再生されます。これはとても奇妙です...!
要求に応じて、更新されたコード:
import mx.controls.Alert;
import mx.events.FlexEvent;
import spark.components.VideoPlayer;
private var vidPlyr:VideoPlayer = null;
protected function winAppCreated(event:FlexEvent):void {
// Video Player
vidPlyr = new VideoPlayer();
vidPlyr.width = 320;
vidPlyr.height = 240;
// Video from apache virtualhost:
vidPlyr.source = "http://flex.test.capimg/JormaKaukonenCracksInTheFinish.flv";
addElement(vidPlyr);
var cameraTV:Camera = Camera.getCamera(Camera.names[0]);
var cameraUSB:Camera = Camera.getCamera(Camera.names[1]);
if (cameraTV) {
vidPlyr.videoDisplay.videoObject.attachCamera(cameraTV);
} else {
Alert.show("no TV card - " + Camera.names[0]);
// Alert shows: "no TV card - SAA7130 Analog TV Card"
}
if (cameraUSB) {
vidPlyr.videoDisplay.videoObject.attachCamera(cameraUSB);
} else {
Alert.show("no USB camera - " + Camera.names[1]);
// Alert shows: "no USB camera - USB2.0 Grabber"
}
}
これは実行中のアプリのスクリーンショットです。