サウンドを鳴らそう

[目次|前回|次回|携帯Javaのページ ] Time-stamp: "2003/11/20 Thu 09:03 hig"
押されたキーに応じて, サウンド(効果音)を鳴らすサンプルです.

サウンドのファイル形式について

いずれの場合も, サウンドのファイルをres フォルダにいれておきます. 例えば, 鉄メロのページ の着メロを使わせていただきましょう.

i αppli development ツールでは MIDI ファイルを res フォルダーにいれて使います. しかし, 実機では, MFi 形式(i-melody) の MLD ファイルを使います. どちらで実行するかに応じて, 読み込むファイル名を変えることが必要です.

Vアプリの場合, 独自拡張ライブラリJSCLでサポートされる SMAF/Phrase という独自形式を用います. Vodafone の開発者サイトのページで 多くのサウンドファイルが配布されており, ほとんどの目的にはこれで十分でしょう. 特定の端末がサポートする SMAF のバージョンは Yamaha のページ でわかります. また, Yamaha の配布している ツールで, 他の形式のファイルから SMAF ファイルを生成できます.

ただし, 大問題として, JSCL は k toolbar の中からは使えず, コマンドプロンプトで作業することになります.

C:>cd wtk104\apps\SoundSample
C:\wtk104\apps\SoundSample>javac -d tmpclasses -g:none -bootclasspath C:\J-PHONE-SDK\lib\stubclasses.zip src\SoundSample.java

C:\wtk104\apps\SoundSample>c:\wtk104\bin\preverify -classpath C:\J-PHONE-SDK\lib\stubclasses.zip -d classes tmpclasses
C:\wtk104\apps\SoundSample>jar cfm bin\SoundSample.jar bin\MANIFEST.MF -C classes . -C res .
C:\wtk104\apps\SoundSample>notepad bin\SoundSample.jad midlet-jar-size: の行に, jar ファイルのサイズ(byte)を記入

その他にもMIDI, MLD, WAV, SMD, MMF などを生成したり相互に変換したりするツールは多数あります. たとえば, Vector で探してみましょう. 例えば, Kana さんの 着メロコンバータ などが使えそうです. また,インターネット上を探すと種々の形式の フリーの音楽データを見つけることができます. 例えば, フリー, MIDI, 素材などをキーワードに検索してみましょう.

課題

これまで作った動きのあるアプリにサウンドを追加しよう.