版本記錄
版本號 | 時間 |
---|---|
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)注~~~