高性能オーディオ
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
一般的に、高性能オーディオ アプリには単に音を再生したり記録したりする以上の機能が求められます。このようなアプリには、応答性に優れたリアルタイム システム動作が必要となります。一般的なユースケースは次のとおりです。
- デジタル オーディオ ワークステーション
- シンセサイザー
- ドラムマシン
- 音楽学習アプリ
- カラオケアプリ
- DJ ミキシング
- オーディオ エフェクト
- ビデオ会議 / 音声会議
このセクションでは、オーディオ レイテンシを最小限に抑えるための一般原則について説明します。
また、最適なサンプルレートを選択できるようにオーディオのサンプリングに関するアドバイスを示し、浮動小数点数を使用してオーディオ データを示す際の長所と短所について検討します。
さらに、高性能オーディオ アプリを作成する際に利用可能な 2 つのライブラリについても説明します。
- OpenSL ES は、Khronos Group が策定した OpenSL ES™ API 仕様の Android 固有の実装です。OpenSL ES を新規の設計に使用することはおすすめできません。アプリ デベロッパーとミドルウェア プロバイダは、ネイティブ オーディオ インターフェースとして Oboe または AAudio を使用してください。
- AAudio は、OpenSL ES ライブラリの代替品となる軽量版のネイティブ Android ライブラリとして開発されました。AAudio API は OpenSL ES よりもコンパクトで使いやすくなっています。
参考情報
詳細については、以下のリソースをご覧ください。
サンプル
Codelab
動画
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2024-02-21 UTC。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"必要な情報がない"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"複雑すぎる / 手順が多すぎる"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"最新ではない"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻訳に関する問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"サンプル / コードに問題がある"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"その他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"わかりやすい"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"問題の解決に役立った"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"その他"
}]