本文屬于Android局域網(wǎng)內(nèi)的語音對講項目系列,《通過UDP廣播實現(xiàn)Android局域網(wǎng)Peer Discovering》實現(xiàn)了局域網(wǎng)內(nèi)的廣播及多播通信,本文將重點說明系統(tǒng)架構(gòu),音頻信號的實時錄制、播放及編解碼相關(guān)技術(shù)。

本文主要包含以下內(nèi)容:

  1. AudioRecord、AudioTrack

  2. Speex編解碼

  3. Android語音對講系統(tǒng)架構(gòu)

一、AudioRecord、AudioTrack

AudioRecorder和AudioTracker是Android中獲取實時音頻數(shù)據(jù)的接口。在網(wǎng)絡(luò)電話、語音對講等場景中,由于實時性的要求,不能采用文件傳輸,因此,MediaRecorder和MediaPlayer就無法使用。

AudioRecorder和AudioTracker是Android在Java層對libmedia庫的封裝,所以效率較高,適合于實時語音相關(guān)處理的應(yīng)用。在使用時,AudioRecorder和AudioTracker的構(gòu)造器方法入?yún)⑤^多,這里對其進行詳細(xì)的解釋。

AudioRecord

public AudioRecord(int audioSource, int sampleRateInHz, int channelConfig, int audioFormat, int bufferSizeInBytes)

其中,audioSource表示錄音來源,在AudioSource中列舉了不同的音頻來源,包括:

        		

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式