マイク入力とセキュリティ

09.03.16 Mon 01:30
Category: actionscript

UNAGI BALL をマイク入力に対応させました。マイクを接続している方は、ぜひ試してみてください。音量によってモジャモジャ変化します。


以下、マイク入力はセキュリティ・ダイアログでやっかいだったので整理しておきます。
まず、FLASH がマイクを使おうとすると下記のようなダイアログが出ます。

privacy1

この場合の「録音」の意味って「入力」ってことなんだろうけど、なんだかよくわかならい人は拒否を押したくなるダイアログですね。。。

具体的には、setLoopBack(true) でマイクの音をスピーカーに送るタイミングでダイアログが出ます。

var mic:Microphone = Microphone.getMicrophone();
if(mic != null)
{
	mic.setLoopBack(true); //このタイミングでダイアログが出る
}

ただこれが setLoopBack を実行するたびに毎回出るわけではなくて、マイクに接続しようとした最初の一回だけです。二回目からは最初に選択した状態が保持されます。なので最初に拒否されてしまったら、二回目からは設定を変更しない限りマイクに接続されません。

設定を変更するには下記二つの方法でセキュリティダイアログを開いて変更します。

  • 右クリック > 設定
  • Security.showSettings(SecurityPanel.PRIVACY);

ただしこれは最初のダイアログと違います。

privacy2

最初のダイアログでさえ拒否を押しそうですが、この画面はまず拒否か閉じるを押しますよね。。。

なので今回はマイク接続を拒否された場合は、リロードボタンを設置することにしました。リロードすれば設定はリセットされるので、最初のダイアログになります。「このコンテンツはマイク接続の許可が必要です」的なテキストを入れて、「セキュリティパネルを開く」と「リロード」のボタン二つを置くというのも手ですね。

ちなみに UNAGI BALL は、リーロードボタンの画面で「右クリック > 設定」で許可した場合は、コンテンツがスタートするようにしてあります。

©2012 l00oo.oo00l blog | powered by WordPress with Barecity