2011/01/04

Android メモリからのサウンド再生は AudioTrack で wav のみ

 
Android でメモリからサウンドを再生する場合は AudioTrack を
利用する事で可能。
 
この場合は wav 形式のみ再生可能っぽい。エミュで確認。
 
API リファレンスによると PCM 音源としか記載されていない。 
 
mp3 はメモリから再生できないので、とにかく mp3 を再生したい場合は
MediaPlayer クラスを利用すれば可能。
 
が、このクラスはメモリ上の音源から再生は出来ない。
  ( バイナリに常に結合している必要アリ。または http からの URL 再生 )
 
携帯Java の doja/star/midp では InputStream() や byte[] を渡して音源を
再生可能なので、ローカルデータに保存( レコードストア・スクラッチパッド)
した音源から再生も可能だが、Android で同じように互換を持たせる為には、
音源は wav 形式、再生は MediaPlayer で行う必要がある。
 
 
私は「Doja 環境標準で他に移植」と言う 503 時代から育ってしまったので、
リソースデータは基本的に外だししています。
 
Softbank は 3GC 以降レコードストアは 500KB 確保できるし、リソースは
外だし設計の方が、様々なアプリケーションで都合が良い。
 
再コンパイルする必要が無いのは、小さいプロジェクト以外では重要。

0 件のコメント:

コメントを投稿