戻る 05. サウンドを鳴らす 次へ

今回は音楽の再生です。
ある程度ゲームを作りこんでくるとやはり音楽がないと何か物足りないですね。
同じゲームでも音楽があるだけで面白くなったりするものです。

さてMIDPには音楽再生系の命令はありません。
ですからこれはJ-PHONE拡張命令になります。


auのezplusでもKDDI独自拡張として実装されていますので
J-PHONEのJAVAアプリとauのezplusの両方で動作する物を
作る場合はこの部分は専用に作り直す必要があります。




必要なパッケージはcom.jblend.mediaです。
jblendって書いていますけどJ-PHONE用の拡張パッケージです。

J-PHONEのJAVAで再生可能なのはSMAF/Phraseデータと呼ばれるものと
ADPCMデータと呼ばれるものがあります。
SMAF/Phraseは音階データで再生されますがADPCMは録音された音を再生できますので声を出したりも出来ます。


再生の命令には「メディアプレイヤー」と「フレーズプレイヤー」と言った物があります。
メディアプレーヤーはauのezplusとソースレベルでは互換性があります。
しかしフレーズプレーヤーはJ-PHONEだけです。
その分機能が協力になっていて複数のメロディや音声を同時に再生することができるのです。
これはゲームを作る人には大事なことだと思います。

さらにJ-PHONEは親切なことにサウンドデータをいくつか用意されています。
J-PHONE Developer Program のサウンドライブラリを参照してください。


ソース

SmafData smafData;//曲データの読み込む場所を確保します
SmafPlayer player=new SmafPlayer();//曲データの操作用

try {
	smafData=new SmafData("/test.mmf");//曲データの読み込み
	player.setData(smafData);//曲データのセット
	player.play(true);//曲データの再生
} catch(Exception e) {
}