? ? ? 最近因?yàn)轫?xiàng)目里用到了語(yǔ)音識(shí)別,開(kāi)始用了第三方廠(chǎng)家的SDK,因?yàn)樘O(píng)果系統(tǒng)里自帶語(yǔ)音識(shí)別的功能,所以也順便研究了研究,自己也是剛剛接觸iOS開(kāi)發(fā)沒(méi)多久,所以也就當(dāng)做總結(jié)和分享了,這篇也是自己第一次寫(xiě)的文章,歡迎大家留言討論。
? ? 文章借鑒自http://www.itdecent.cn/p/a9c64ac2c586
? ? 在此基礎(chǔ)上我又加上了通過(guò)動(dòng)畫(huà)來(lái)顯示麥克風(fēng)聲音的大小;麥克風(fēng)的捕捉用到了AVFoundation,AVFoundation是蘋(píng)果的一個(gè)很強(qiáng)大的框架,自己目前也是用到什么去學(xué)習(xí)哪一部分,暫時(shí)就不做系統(tǒng)性的總結(jié)了;在這里接觸到的幾個(gè)重要的概念就是AVCaptureSession(用于協(xié)調(diào)輸入與輸出的核心),AVCaptureInput(輸入數(shù)據(jù)源),AVCaptureOutput(輸出數(shù)據(jù)源),AVCaptureDevice(輸入設(shè)備,比如說(shuō)攝像頭、麥克風(fēng)等),AVAudioRecorder(錄音),AVAudioSession(負(fù)責(zé)錄音的核心);核心代碼如下:

? ? 錄音和語(yǔ)音識(shí)別的部分設(shè)置代碼如下:

? ? 想要使用蘋(píng)果的語(yǔ)音識(shí)別的話(huà)首先要在info plist文件里申請(qǐng)權(quán)限

? ? 在語(yǔ)音識(shí)別結(jié)束之后會(huì)從下面得到語(yǔ)音識(shí)別的結(jié)果

從下面的對(duì)調(diào)方法里得到錄音數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行分析量化得到聲音的大小

Demo源碼?https://github.com/ManofSnow/recordingLearn