AudioUnit框架詳細解析(二十四) —— 使用 I/O單元(一)

版本記錄

版本號 時間
V1.0 2018.07.05

前言

AudioUnit框架作為您的應(yīng)用程序添加復(fù)雜的音頻操作和處理功能。 創(chuàng)建在主機應(yīng)用程序中生成或修改音頻的音頻單元擴展辜荠。接下來幾篇我們就一起看一下這個框架汽抚,感興趣的看上面幾篇文章。
1. AudioUnit框架詳細解析(一) —— 基本概覽
2. AudioUnit框架詳細解析(二) —— 關(guān)于Audio Unit Hosting之概覽(一)
3. AudioUnit框架詳細解析(三) —— 關(guān)于Audio Unit Hosting之如何使用本文檔和參考資料(二)
4. AudioUnit框架詳細解析(四) —— 音頻單元提供快速的模塊化音頻處理之iOS中的Audio Units(一)
5. AudioUnit框架詳細解析(五) —— 音頻單元提供快速的模塊化音頻處理之在Concert中使用兩個音頻單元API(二)
6. AudioUnit框架詳細解析(六) —— 音頻單元提供快速的模塊化音頻處理之使用標(biāo)識符來指定和獲取音頻單元(三)
7. AudioUnit框架詳細解析(七) —— 音頻單元提供快速的模塊化音頻處理之使用范圍和元素來指定音頻單元的部分(四)
8. AudioUnit框架詳細解析(八) —— 音頻單元提供快速的模塊化音頻處理之使用屬性來配置音頻單元(五)
9. AudioUnit框架詳細解析(九) —— 音頻單元提供快速的模塊化音頻處理之使用參數(shù)和UIKit為用戶提供控制(六)
10. AudioUnit框架詳細解析(十) —— 音頻單元提供快速的模塊化音頻處理之I / O單元的基本特性(七)
11. AudioUnit框架詳細解析(十一) —— 音頻處理圖管理音頻單元之音頻處理圖具有一個I / O單元(一)
12. AudioUnit框架詳細解析(十二) —— 音頻處理圖管理音頻單元之音頻處理圖提供線程安全性(二)
13. AudioUnit框架詳細解析(十三) —— 音頻處理圖管理音頻單元之音頻使用Pull通過圖表(三)
14. AudioUnit框架詳細解析(十四) —— 呈現(xiàn)回調(diào)函數(shù)將音頻饋送到音頻單元之了解音頻單元呈現(xiàn)回調(diào)函數(shù)(一)
15. AudioUnit框架詳細解析(十五) —— 音頻流格式啟用數(shù)據(jù)流之使用AudioStreamBasicDescription結(jié)構(gòu)(一)
16. AudioUnit框架詳細解析(十六) —— 音頻流格式啟用數(shù)據(jù)流之了解何處以及如何設(shè)置流格式(二)
17. AudioUnit框架詳細解析(十七) —— 從選擇設(shè)計模式開始之I / O傳遞(一)
18. AudioUnit框架詳細解析(十八) —— 從選擇設(shè)計模式開始之沒有渲染回調(diào)函數(shù)的I / O(二)
19. AudioUnit框架詳細解析(十九) —— 從選擇設(shè)計模式開始之具有渲染回調(diào)函數(shù)的I / O(三)
20. AudioUnit框架詳細解析(二十) —— 從選擇設(shè)計模式開始之僅具有渲染回調(diào)函數(shù)的輸出(四)
21. AudioUnit框架詳細解析(二十一) —— 從選擇設(shè)計模式開始之其他音頻單元Hosting設(shè)計模式(五)
22. AudioUnit框架詳細解析(二十二) —— 構(gòu)建您的應(yīng)用程序(一)
23. AudioUnit框架詳細解析(二十三) —— 故障排除提示(一)

Using Specific Audio Units - 使用特定的音頻單元

每個iOS音頻單元都有一些與所有其他音頻單元相同的東西以及某些獨特的東西伯病。 本文檔前面的章節(jié)描述了常見的方面,其中包括需要在運行時查找音頻單元午笛,實例化它,并確保其流格式設(shè)置正確告组。 本章介紹了音頻單元之間的差異癌佩,并提供了有關(guān)如何使用它們的詳細信息围辙。

本章后面的Identifier Keys for Audio Units列出了在運行時為每個音頻單元定位可動態(tài)鏈接庫所需的代碼。


Using I/O Units - 使用 I/O單元

iOS提供三個I / O(輸入/輸出)單元矫俺。 絕大多數(shù)音頻單元應(yīng)用程序使用Remote I / O單元厘托,它連接到輸入和輸出音頻硬件稿湿,并提供對各個輸入和輸出音頻樣本值的低延遲訪問。 對于VoIP應(yīng)用伊群,Voice-Processing I/O單元通過添加聲學(xué)回聲消除和其他功能來擴展Remote I / O單元策精。 要將音頻發(fā)送回應(yīng)用程序而不是輸出音頻硬件咽袜,請使用Generic Output unit


Remote I/O Unit - 遠程I/O單元

Remote I / O單元(子類型kAudioUnitSubType_RemoteIO)連接到設(shè)備硬件谜嫉,用于輸入,輸出或同時輸入和輸出哆档。 用于播放住闯,錄制或低延遲同時輸入和輸出,不需要回聲消除插佛。

設(shè)備的音頻硬件將其音頻流格式強制放置在遠程I / O單元的外側(cè)雇寇,如Understanding Where and How to Set Stream Formats 中所述蚌铜。 音頻單元提供硬件音頻格式和應(yīng)用音頻格式之間的格式轉(zhuǎn)換,通過附帶的格式轉(zhuǎn)換器音頻單元Format Converter audio unit進行格式轉(zhuǎn)換囚痴。

有關(guān)演示如何使用此音頻單元的示例代碼造壮,請參閱示例代碼項目aurioTouch耳璧。 Listing 3-1提供了此音頻單元的使用詳細信息旨枯。

Table 3-1 Using the Remote I/O unit


Voice-Processing I/O Unit - 語音處理I / O單元

Voice-Processing I/O(子類型kAudioUnitSubType_VoiceProcessingIO)具有遠程I / O單元的特性攀隔,并為雙向雙工通信添加了回聲抑制栖榨。 它還增加了自動增益校正,語音處理質(zhì)量調(diào)整和靜音功能满粗。 這是用于VoIP(互聯(lián)網(wǎng)協(xié)議語音)應(yīng)用程序的合適的I / O單元映皆。

表3-1中列出的所有注意事項也適用于語音處理I / O單元捅彻。 此外,此音頻單元還有特定的屬性从隆,如Voice-Processing I/O Audio Unit Properties中所述广料。


Generic Output Unit - 通用輸出單元

將音頻處理圖的輸出發(fā)送到應(yīng)用程序而不是輸出音頻硬件時幼驶,請使用子類型為kAudioUnitSubType_GenericOutput的音頻單元。 您通常會使用通用輸出單元進行離線音頻處理购桑。 與其他I / O單元一樣氏淑,通用輸出單元包含格式轉(zhuǎn)換器單元Format Converter unit假残。 這使通用輸出單元可以在音頻處理圖形中使用的流格式與所需格式之間執(zhí)行格式轉(zhuǎn)換。

您還可以使用通用輸出單元作為子圖中的最終節(jié)點阳惹,放入父音頻處理圖中眶俩。

后記

本篇主要講述了使用I/O單元,感興趣的給個贊或者關(guān)注~~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市线罕,隨后出現(xiàn)的幾起案子钞楼,更是在濱河造成了極大的恐慌,老刑警劉巖仅偎,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件橘沥,死亡現(xiàn)場離奇詭異,居然都是意外死亡痢艺,警方通過查閱死者的電腦和手機介陶,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門哺呜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人国撵,你說我怎么就攤上這事玻墅“南幔” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵线得,是天一觀的道長框都。 經(jīng)常有香客問我呵晨,道長熬尺,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任季二,我火速辦了婚禮胯舷,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘炊汹。我一直安慰自己逃顶,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布霸褒。 她就那樣靜靜地躺著盈蛮,像睡著了一般。 火紅的嫁衣襯著肌膚如雪昙啄。 梳的紋絲不亂的頭發(fā)上梳凛,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天梳杏,我揣著相機與錄音,去河邊找鬼叛溢。 笑死劲适,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的霞势。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼草雕,長吁一口氣:“原來是場噩夢啊……” “哼墩虹!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起旬昭,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤菌湃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后场梆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纯路,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年顶岸,在試婚紗的時候發(fā)現(xiàn)自己被綠了辖佣。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搓逾。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡霞篡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出朗兵,到底是詐尸還是另有隱情余掖,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布赁豆,位于F島的核電站找田,受9級特大地震影響着憨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜漆改,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一挫剑、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧樊破,春花似錦、人聲如沸奔滑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽梅猿。三九已至袱蚓,卻和暖如春几蜻,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背入蛆。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留枫甲,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓想幻,卻偏偏與公主長得像,于是被迫代替她去往敵國和親脏毯。 傳聞我的和親對象是個殘疾皇子幔崖,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容