0

強化されたオーディオ API

この機能は、Flash Player および AIR のサポートされているすべてのデスクトップ プラットフォームで使用できます。拡張オーディオを有効にするために、Flash プラットフォームに新しい API を追加しました。この機能は、Flash Player および AIR のモバイルプラットフォームではなく、サポートされているすべてのデスクトップ プラットフォームで利用できます。新しい API は ActionScript 3 でのみ使用できます。オーサリング環境で Flash Player 10.3 または AIR 2.7 (またはそれ以降) および SWF バージョン 12 をターゲットにする必要があり、playerglobal.swc を更新する必要があります。

次のクラスが影響を受けます。 マイク: 拡張マイクを作成し、拡張マイク オプションを構成するための読み取り/書き込みプロパティを作成するために、新しい静的メソッドがこのクラスに追加されました。MicrophoneEnhancedOptions: この新しいクラスを使用すると、拡張マイク設定を構成できます。MicrophoneEnhancedMode: この新しいクラスは、拡張されたマイク操作モードを列挙します。

これについては、Flash Player でのアコースティック エコー キャンセレーションのベスト プラクティスで確認できます。

この API (Microphone、MicrophoneEnhancedOptions、および MicrophoneEnhancedMode クラス) を使用して、FMS デスクトップ クライアントを既に開発しています。そして、このクライアントはノイズなしでうまく動作します。

しかし、最近の flex sdk (flex sdk4.6) は、モバイル プラットフォーム用のこの API をサポートしていません。ノイズ抑制など、モバイル プラットフォームでマイクを強化するにはどうすればよいですか。

ここに私のソースコードがあります:

/ ---デスクトップ------------------ /

microphone = Microphone.getEnhancedMicrophone();

if(microphone)
{
    var options : MicrophoneEnhancedOptions = new MicrophoneEnhancedOptions();
    options.mode = MicrophoneEnhancedMode.FULL_DUPLEX;
    options.autoGain = false;
    options.echoPath = 128;
    options.nonLinearProcessing = true;

    microphone.enhancedOptions = options;

    microphone.gain = 85;

    // set codec to speex
    microphone.codec = SoundCodec.SPEEX;
    microphone.encodeQuality = 5;
    microphone.framesPerPacket = 1;
    microphone.rate = 16; 
    microphone.setUseEchoSuppression(true);             
}

/ -----------------アンドロイド----------------- /

microphone = Microphone.getMicrophone();

if(microphone)
{
    //settings
    microphone.rate = 16;
    microphone.gain = 85;
    microphone.setUseEchoSuppression(false);
    microphone.setLoopBack( false );
    microphone.setSilenceLevel( 0, 20000 );                     
    microphone.codec = SoundCodec.SPEEX;
    microphone.encodeQuality = 5;
    microphone.framesPerPacket = 1;         
}

Androidコードをデスクトップのように実行するにはどうすればよいですか? MicrophoneEnhancedOptions クラスと MicrophoneEnhancedMode クラスの機能を実装するにはどうすればよいですか?

ありがとう。

4

1 に答える 1

0

ほとんどの場合、できません。これらの API は、Android のフラッシュ バージョンには存在しないネイティブ コードによって支えられています。

于 2012-06-18T11:50:54.737 に答える