web-dev-qa-db-ja.com

AndroidのOpenSL ESのチュートリアル

私はAndroid 2.3でネイティブオーディオを実行するために利用可能なOpenSL ESライブラリを使用しようとしていますが、仕様のヘッダーファイルと600ページのpdfは利用可能なドキュメントのみ。

例、チュートリアル、または機能の簡単な概要はどこで探すべきですか?

39
mjr

NativeAudio と呼ばれるNDKに付属するサンプルアプリがあります。エフェクト、ストリーミング、合成など、実装したいほぼすべての例があります。コードを見ると、良いスタートを切ることができます。

21
Phonon

また、victor lazzariniのオーディオプログラミングブログも確認できます。Androidセクション: http://audioprograming.wordpress.com/category/Android/

そこには実用的な例があります。openSLを始めるのに非常に役立ち、ndkでオーディオアプリケーションを開発するためのベースとして使用できます。

また、仕様書を見逃さないでください。それほど長くはありません。最初の部分は50ページ以下であり、すべてがどのように機能するかを理解するために必要な視点を提供します。残りは参照用です。 Android openSL実装の一部が仕様と異なることに注意してください。詳細については、your-ndk-directory/docs/opensles/index.htmlを参照してください。

16
athos

私が見つけたより価値のある情報をかなり検索した後:

11
gergonzalez

単一のサウンドファイルを再生したり、短いスナップショットを(単一のバッファーに)記録したい場合は、NDKプロジェクトで十分です。 「Android NDK初心者向けガイド」をご覧になりましたが、実際にはサンプルのNDKプロジェクト以上の説明は行っていません。

しかし、実際には、これらのアプリケーションの場合、おそらくJavaAPI。OpenSLESをそれらに使用するのはちょっとやり過ぎです。もっと多くのコードを書いて、本当のゲインはありません。

OpenSLの利点は、オーディオ合成と処理の低レイテンシ(これらが利用可能になったとき)に関心がある人にとって、おそらく、単一のバッファを再生/記録するのではなく、オーディオをストリーミングすることです。本の章とNDKの例では、それについては説明しません。オーディオプログラミングブログのブログ投稿は、これらの目的のためにより有益です。

7
R F

AndroidセクションのVictor Lazzariniのオーディオプログラミングブログの1つは、本当に良いスタートです。 http://audioprograming.wordpress.com/category/Android/

また、このブログ用にbitbucket gitリポジトリから直接ダウンロード可能なサンプルコードがあります。これは最も歓迎すべき部分です。

ビルドと実行は非常に簡単です。私にとって、この例をビルドして実行するには、次の手順が必要です。

  1. SWIGのインストール: swig-3.0.2 。 3ステップでインストールします。

    $ configure $ make $ Sudo make install。

  2. Build.shを編集して、NDKの場所を反映します。そして、最上位ディレクトリでbuild.shスクリプトを実行します。
  3. Build.xmlの生成方法:

    $ Android update project --name opensl-es-audiotest --target 1 --path ./

  4. Antでビルド:$ ant debug
  5. 次に、デバイスにインストールしてテストできます。

    $ adb install bin/opensl-es-audiotest-debug.apk

0
gary