簡體   English   中英

iOS上的錄音

[英]Audio Recording on iOS

我剛剛開始從事一個項目,該項目需要我在iOS上做很多音頻相關的工作。

這是我第一次在音頻領域工作,而且完全不知道該如何處理。 因此,我在Google上搜索了文檔,並且主要依靠Apple文檔。 首先,我必須提到這些文件非常混亂,而且常常會產生誤導。

無論如何,為了測試錄音,我使用了AVAudioSession和AVAudioRecorder。 據我了解,這些對於簡單的錄制和播放是可以的。 因此,這是我在做更復雜的事情時遇到的幾個問題:

  • 如果在錄制過程中希望對音頻進行任何實時處理,是否需要使用音頻隊列服務?
  • 除了音頻隊列服務,我還有什么其他選擇?
  • 什么是音頻單元?

我實際上得到了Apple的Audio Queue Services編程指南,並開始編寫一個音頻隊列進行錄制。 他們的音頻隊列服務指南中的“圖表”(PDF第19頁)顯示了使用AAC編解碼器進行的錄制。 但是,經過一番挫折和大量時間的浪費,我發現iOS上不提供AAC錄制-“核心音頻基本知識”的“核心音頻插件:音頻單元和編解碼器”部分。

這使我想到了另外兩個問題:

  • 考慮到Apple Lossless,iLBC,IMA / ADPCM,Linear PCM,uLaw / aLaw,哪種記錄格式合適? 某處可能有人可以參考的圖表嗎?
  • 另外,如果使用音頻隊列無法進行MPEG4AAC(.m4a)錄制,那么如何使用AVAudioRecorder錄制MPEG4AAC(.m4a)?

超級感謝您提前為我提供幫助。 我將非常感激任何鏈接,方向和/或智慧之詞。

再次感謝並加油!

對於第一個問題,音頻隊列服務或使用RemoteIO音頻單元是用於實時音頻處理的適當API,RemoteIO允許更低和更多的確定性延遲,但與音頻隊列相比,對實時性的要求更高。

對於創建aac錄音,一種可能性是先錄制為線性PCM原始音頻,然后再使用AV文件服務將緩沖的原始音頻轉換為所需的壓縮格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM