3

AudioRecordJava (クラスを使用) から OpenSL を使用してネイティブ ライブラリに オーディオ キャプチャ ループを移植しています。

この理由は、プロファイリング後、キャプチャ ループが OpenSL で約 2% 少ない CPU をテスト電話で消費しているためです。それは重要な利益です!

Java AudioRecord クラスのコンストラクターは、複数の値 (など)sourceに構成できるパラメーターを受け取ります。MIC, CAMCORDER, VOICE_DOWNLINK

これまでのところ、OpenSL のソース パラメーターに相当するもの (存在する場合) を見つけることができませんでした。

AudioRecorder オブジェクトにこの Source パラメータを指定する方法があるかどうかは誰にもわかりませんか?

乾杯!

4

1 に答える 1

4

SLES/OpenSLES_Android.hおよびで定義されている関数と定数を確認してくださいSLES/OpenSLES_AndroidConfiguration.h。OpenSLES からレコーディング オブジェクトを取得する場合は、 を使用GetInterface()して のインターフェイス ポインタを取得しますSL_IID_ANDROIDCONFIGURATION。そこから、返されたポインターでSetConfiguration()key を使用して呼び出すことができます。SL_ANDROID_KEY_RECORDING_PRESETSLAndroidConfigurationItf

于 2012-09-05T22:59:49.497 に答える