格式化

廣告

廣告2

2013年10月26日 星期六

[Android SDK特色教學] SoundPool播放音效

參考文章:[Android] SoundPool 音效 (一)-http://style77125tech.pixnet.net/blog/post/152442867
  1. 使用SoundPool有限制,播放的音檔不可以超過 「1mb」大小,所以要放音樂就不能使用這一個方法,要使用MediaPlay
  2. SoundPool很容易莫名其妙的自動終止,在使用pause和stop方法時很常很莫名其妙。
  3. SoundPool優點為CPU資源使用率低,反應延遲較少。
  4. 用來播放一些短短的音效、急促的效果音很好用。
  5. 建議使用ogg檔案為音效檔,請先建立資料夾raw放置音效檔案進去。

只要重點3行程式碼就可以播放音效:

  1. soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 5);
    • 第一個參數 SoundPool 內總共放置的音效數目。
    • 第二個參數 串流類型。
    • 第三個參數 音效品質,預設為1我設5,可以試聽看看有一點點差。
  2. alertId = soundPool.load(this, R.raw.pixiedust, 1); 
    • 當前activity的context指標
    • 讀取效果音resource的檔案,檔名記得要小寫並且小於1mb
    • 權值現在先固定為1(好像沒甚麼作用...)
  3. soundPool.play(alertId, 1.0F, 1.0F, 0, 0, 1.0F);
    • 第一個參數 播放哪個音效檔
    • 第二個參數 左喇叭音量
    • 第三個參數 右喇叭音量
    • 第四個參數 固定用 0
    • 第五個參數 0 為不重複,-1 為無限重複
    • 第六個參數 播放速度,可用 0.5 到 2

沒有留言 :