SoundPoolを使う際の注意点

Androidでサウンドを鳴らす際は、
BGM(曲)用途ならMediaPlayer、SE(効果音)用途ならSoundPoolを使うのが簡単。

今回、SEを鳴らすためにSoundPoolを使ったところ、
音声がループ回数を1回(=ループしない)でのみ再生する指定をしたにも関わらず、
2回ループしてしまう現象が発生した。

/res/rawに入れる音声データを、
WaveフォーマットからOgg Vorbisで変換することで
2回ループして再生されることはなくなった。ヾ(・∇`)ノ゙

wavに関しては、「16bitの44KHzのモノラル」でも、
「8bitの22KHzのモノラル」でも不具合が出たので
どのフォーマットでも発生しそうな気がする。
Galaxy S(GT-I9000)で発生したため、端末の問題な気もするけど、
アプリに組み込むリソースは初めからoggで用意したほうが
トラブルしなさそうだと思った。

・・・

ちなみに、Wave→Oggの変換には以下のツールが便利。

■oggdropXPd
http://rarewares.org/index.php
Downloads > Ogg Vorbis > oggdropXPd

ツールを起動してファイルをドロップすれば、
ドラッグ元に出力される。
複数ファイルもまとめて変換できる。
変換中の魚のアニメーションが可愛い・・・

2011.5.28
NECO

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA

*