Android中用SoundPool播放音訊
在手機上播聽歌和看影片毫無疑問是最常見的休閒方式,Android中也有一套完整的API實現播放音訊和影片
使用SoundPool播放音效
SoundPool類可用於管理和播放應用中的音訊資源,這些音訊資源可以放在儲存檔案中也可以包含在程式中,一般來說,SoundPool用來播放比較短的音效,比如遊戲中的各種音效
首先建立一個SoundPool物件
private SoundPool sp;
然後
-
建立Builder物件,用 SoundPool.Builder builder
-
設定最大音訊數量,setMaxStreams()
-
預設音訊型別,setLegacyStreamType()
-
設定音訊型別,setAudioAttributes()
if (Build.VERSION.SDK_INT >= 21) { SoundPool.Builder builder = new SoundPool.Builder(); builder.setMaxStreams(2); AudioAttributes.Builder attrBuilder = new AudioAttributes.Builder(); attrBuilder.setLegacyStreamType(AudioManager.STREAM_MUSIC); builder.setAudioAttributes(attrBuilder.build()); sp = builder.build(); } else { sp = new SoundPool(2, AudioManager.STREAM_SYSTEM, 0); }
因為在Android中5.0也是API21以後SoundPool已經過時了,所以要判斷
然後用load載入音訊檔案,play播放
int soundId1=sp.load(this,R.raw.winlog,1); int soundId2=sp.load(this,R.raw.lesson1,2); Button button1=(Button)findViewById(R.id.button1); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { sp.play(soundId1,1,1,1,0,1); } }); Button button2=(Button)findViewById(R.id.button2); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { sp.play(soundId2,2,1,1,0,1); } });
SoundPool也有其他的方法,例如
-
pause(),暫停播放
-
release(),釋放SoundPool中載入的音訊資源
-
resume(),繼續播放暫停的影片
-
setLoop(),設定重複播放次數
-
setVlume(),設定音量
-
stop(),停止播放
-
unload(),解除安裝音訊資源
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69917874/viewspace-2680613/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用soundPool播放音訊音訊
- Android中用MediaPlay播放音訊和影片Android音訊
- android 使用 SoundPool 語音播報Android
- android 音訊播放 SoundPoolAndroid音訊
- Android soundpool release卡住Android
- Android頻繁播放簡短音訊解決方案---SoundPoolAndroid音訊
- Android中SoundPool的使用Android
- Android 音視訊開發 - 使用AudioTrack播放音訊Android音訊
- Android多媒體之SoundPool+pcm流的音訊操作Android音訊
- 微信小程式播放音訊列表微信小程式音訊
- js中用oop思想封裝輪播JSOOP封裝
- Android利用廣播攔截簡訊Android
- Android實現線上播放音樂Android
- 七、FFmpeg 4.0.2 + SDL2 播放音訊音訊
- 電腦播放音訊聽不到聲音音訊
- iOS 9音訊應用播放音訊之控制播放速度iOS音訊
- Android視訊直播、點播播放器哪家強?Android播放器
- iOS 9音訊應用播放音訊之iOS 9音訊播放進度iOS音訊
- Laravel-admin toastr 訊息提醒、播放音訊、點選跳轉LaravelAST音訊
- iOS 9音訊應用播放音訊之ios9音訊基本功能iOS音訊
- iOS 9音訊應用播放音訊之第一個ios9音訊例項iOS音訊
- iOS 9音訊應用播放音訊之音量設定與聲道設定iOS音訊
- iOS 9音訊應用播放音訊之第一個ios9音訊例項2iOS音訊
- Android開機廣播和關機廣播Android
- Android BroadcastReceiver(廣播)AndroidAST
- Android - BroadcastReceiver 廣播AndroidAST
- Android廣播動作Android
- Android複習–廣播Android
- android: 廣播機制Android
- android: 使用本地廣播Android
- 揭祕盒馬鮮生 Android 短視訊秒播優化方案Android優化
- Java中用Aeron實現UDP訊息傳遞JavaUDP
- ios平臺cocos2d-x播放音訊、視訊、音效的Demo(支援網路視訊)iOS音訊
- android開發中用到的px、dp、spAndroid
- 使用微信API實現H5頁面播放音訊檔案APIH5音訊
- python實現播放音訊和錄音功能示例程式碼Python音訊
- Android中的廣播使用Android
- Android系統廣播(轉)Android