私は、ローカル メディア (Web カメラやマイクなど) にアクセスし、リモート ブラウザー間でオーディオ ビデオを送信するために、Flash とインターフェイスする必要がある HTML5 アプリに取り組んでいます。しかし、このアプリでは、リモート Web カメラ ディスプレイからのさまざまな HTML 要素で区切られた、画面の一部にローカル Web カメラ ディスプレイを配置する必要があります。これは、Flash アプリの複数のインスタンスを実行する必要があることを意味していると確信しています。しかし、一度に取得できる Web カメラのインスタンスは 1 つだけだと思います。つまり、これらの Web カメラとマイク オブジェクトを Flash インスタンス間で共有できるようにする必要があります。リモート ウェブカメラ。それは可能ですか?例えば、
つまり、次のような ActionScript クラスを作成することを考えています (もちろん、かなり単純化されています)。
public class MediaController
{
public function MediaController()
{
ExternalInterface.addCallback('getUserMedia', this.getUserMedia);
ExternalInterface.addCallback('getCamera', this.getCamera);
ExternalInterface.addCallback('setCamera', this.setCamera);
ExternalInterface.addCallback('getMicrophone', this.getMicrophone);
ExternalInterface.addCallback('setMicrophone', this.setMicrophone);
}
private var _mic:Microphone;
private var _cam:Camera;
public function getUserMedia()
{
_mic = Microphone.getMicrophone();
_cam = Camera.getCamera();
}
public function getCamera():Camera
{
return this._cam;
}
public function setCamera(cam:Camera):void
{
this._cam = cam;
}
public function getMicrophone():Microphone
{
return this._mic;
}
public function setMicrophone(mic:Microphone):void
{
this._mic = mic;
}
}
そして、次のように JavaScript でそれらを取得します。
var localUser = $('#localUser')[0];
localUser.getUserMedia();
var mic = localUser.getMicrophone();
var cam = localUser.getCamera();
次に、リモート ユーザーと実際に通信しているインスタンスに、次のように戻します。
var remoteUser = $('#remoteUser')[0];
remoteUser.setMicrophone(mic);
remoteUser.setCamera(cam);
そのようにすることに関連する既知の落とし穴はありますか? これを処理するより良い方法はありますか?(そして、あなたが尋ねる前に、そうです、そうでなければアドバイスがない場合は、私はこれをコード化する予定です。私が見つけたものをみんなに知らせます - 私が得る前に既知の落とし穴や代替手段があるかどうか知りたいだけです)始めました。:-)