2011-02-03 44 views
5

Android用に開発を始めています。AndroidプラグインとAndroid SDKでEclipseを使用しています。eclipseから起動したAndroid SDKエミュレータの音声が聞こえない

私が何をしても、私はエミュレータでサウンドを作ることができません。

仮想デバイスの設定で音声を有効にしようとしました。

Iはまた、などの実行構成に様々なコマンドラインを試みた:これは定義されたOSSバックエンドが存在しないとエラーメッセージを取得し====

  • -audio oss
  • -useaudio ===私は私のラップトップ上で私のWindows7のオーディオコントローラを開くと、私がいることがわかり、W/Oエラーが、それでも音が出ない

始まり===ない有効なオプション

  • -audion -winaudioとしてアップしていますアンドロイド仮想マシンは独自のボリュームスライダを取得しますが、そのオーディオスライダを移動またはクリックすると何も音が鳴りません。

    私は何時間も「Androidエミュレーターなし」のサウンドを探していましたが、運がありませんでした。

    アイデア?

  • 答えて

    2

    エミュレータでサウンドが生成されないという問題はありませんでした(私のデバイスではうまくいきませんでした)。しかし、SoundPoolクラスの問題はありません。

    私はlogcatを見て、 "sample 1 not ready"のようなリファレンスを見つけました。これを調べると、私は最終的に、サウンドプールが使用可能になるまでに時間がかかるという漠然としたスレッドを見つけました。したがって、すべてのサウンドを使用する前に十分にロードする必要があります。

    soundPool.play(...)メソッド呼び出しの戻り値を監視するために私のplaySoundメソッドを変更しました。実行中のサウンドストリームのIDを返します。失敗した場合は0を返します(つまり、「サンプル1が準備できていません」)。私が何をしたか

    はループにそれを置くことだった、と soundPool.play(...)メソッド呼び出しの戻り値が0だったとき、私は1 ミリ秒のスレッドスリープを持っていた、再試行してください。この方法を使用すると、私はいつも サウンドを得ることができます。

    Android 2.2が私のデバイスであるSprint LG Optimus S LS670にインストールされているので、私は、Android 2.3.1ではなくAndroid 2.2用にSDKを設定してチュートリアルを実行しています。

    Android 2.2とAndroid 2.3.1仮想デバイスの両方で変更したコードを実行しました。

    古いAndroid 2.2 VDでコードを実行すると、通常、サウンドを再生する準備が整う前に、約10〜15ループ(10〜15ミリ秒の遅延)がかかりました。

    Android 2.3.1 VDで同じコードを実行したとき、遅くても再生が350 ms遅れて遅くなりました。

    Android 2.2を実行しているデバイスに同じコードを適用した場合、タイムデリープはエミュレータでの実行とほぼ同じでした。

    +0

    どのように動作させましたか? SoundPoolとは何ですか?私のプログラムはこのクラスを使用しませんが、私はまだ同じ問題を抱えています。つまり、エミュレータはサウンドを再生しません。私の試行を見てください:http://stackoverflow.com/questions/18143032/can-the-android-emulator-play-audio – user13267

    +0

    動作するサンプルコードはありますか?エクリプスを使って音を出すために実行することができますか?私が何かをする前に、エミュレータが全く音を出すことができないようにしたいと思っています。本当のアンドロイドデバイスがあれば、音を出すことができるようにする必要があります – user13267

    関連する問題