97干视频,99国产精品懂色,亚洲精品99久久久久中文字幕,伊人五月丁香综合AⅤ,国产精品成人免费999

  您的位置:華清遠(yuǎn)見教育科技集團(tuán) >> 新聞動(dòng)態(tài) >> Android資料 >> Android音頻處理的基本接口  
 
Android音頻處理的基本接口

Android開發(fā)中,根據(jù)不同的場(chǎng)景,出于沖突處理策略的考慮,開發(fā)者需要利用不同的接口來進(jìn)行音頻資源的播放。對(duì)于音樂類型的音頻資源,可以通過MediaPlayer來播放;對(duì)于音調(diào),可以通過ToneGenerator來播放;對(duì)于提示音,可以通過Ringtone來播放;對(duì)于游戲中的音頻資源,可以通過SoundPool來播放。

對(duì)于錄音功能,則需要通過MediaRecorder和AudioRecord等來進(jìn)行音頻記錄。

除了這些直接的音頻類外,對(duì)于音量調(diào)節(jié)、音頻設(shè)備的管理等,Android還提供了相關(guān)的類來處理。

AudioManager通過音頻服務(wù),為上層提供了音量和鈴聲模式控制的接口,鈴聲模式控制包括揚(yáng)聲器、耳機(jī)、藍(lán)牙等是否打開,麥克風(fēng)是否靜音等。在開發(fā)多媒體應(yīng)用時(shí)會(huì)經(jīng)常用到AudioManager,關(guān)于Android AudioManager音量控制流程,我們會(huì)在后續(xù)的免費(fèi)資料中講到。

AudioSystem提供了音頻系統(tǒng)的基本類型定義,以及基本操作的接口,對(duì)應(yīng)的JNI接口文件為android_media_AudioSystem.cpp。音頻系統(tǒng)的主要類型包括:STREAM_VOICE_CALL、STREAM_SYSTEM、STREAM_RING、STREAM_MUSIC、STREAM_ALARM、STREAM_ NOTIFICATION、STREAM_BLUETOOTH_SCO、STREAM_SYSTEM_ENFORCED、STREAM_DTMF、STREAM_TTS等。

AudioTrack直接為PCM數(shù)據(jù)提供支持,對(duì)應(yīng)的JNI接口文件為android_media_ AudioTrack.cpp。
AudioRecord為音頻系統(tǒng)的錄音接口。默認(rèn)的編碼格式為PCM_16_BIT,對(duì)應(yīng)的JNI接口文件為android_media_AudioRecord.cpp。

Ringtone和RingtoneManager為鈴聲、提示音、鬧鐘等提供了快速播放,以及管理接口。實(shí)質(zhì)是對(duì)媒體播放器提供了一個(gè)簡(jiǎn)單的封裝。

ToneGenerator提供了對(duì)DTMF音(ITU-T Q.23),以及呼叫監(jiān)督音(3GPP TS 22.001)、專用音(3GPP TS 31.111)中規(guī)定的音頻的支持,根據(jù)呼叫狀態(tài)和漫游狀態(tài),該文件產(chǎn)生的音頻路徑為下行音頻或者傳輸給揚(yáng)聲器或耳機(jī)。對(duì)應(yīng)的JNI接口文件為android_media_ToneGenerator.cpp。需要說明的是,DTMF音為WAV格式,相關(guān)的音頻類型定義位于ToneGenerator.h文件中。

SoundPool能夠播放音頻流的組合音,這對(duì)游戲應(yīng)用而言顯然非常有用。對(duì)應(yīng)的JNI接口為android_media_SoundPool.cpp。

SoundPool可以從APK包中的資源文件或者文件系統(tǒng)中的文件將音頻資源加載到內(nèi)存中。在底層的實(shí)現(xiàn)上,SoundPool通過媒體播放服務(wù)可以將音頻資源解碼為一個(gè)16bit的單聲道或者立體聲的PCM流,這使得應(yīng)用避免了在回放過程中進(jìn)行解碼造成的延遲。

除了回放過程中延遲小的優(yōu)點(diǎn)外,SoundPool還能夠?qū)σ欢〝?shù)量的音頻流進(jìn)行同時(shí)播放。當(dāng)要播放的音頻流數(shù)量超過SoundPool所設(shè)定的大值時(shí),SoundPool將會(huì)停止已播放的一條低優(yōu)先級(jí)的音頻流。SoundPool大播放音頻流數(shù)量的設(shè)置,可以避免CPU過載和影響UI體驗(yàn)。

在Android 2.3中,還增加了android.media.audiofx包對(duì)單曲和全局的音效提供支持,包括重低音、環(huán)繞音、均衡器、混響和可視化等聲音特效。

 
 更多相關(guān)文章

·Android編譯過程詳解(三)
·Android編譯過程詳解(二)
·Android平板電腦的設(shè)計(jì)
·在Android中使用VideoView播放視頻
·Android編譯過程詳解(一)