AudioUnit框架詳細(xì)解析(八) —— 音頻單元提供快速的模塊化音頻處理之使用屬性來配置音頻單元(五)

版本記錄

版本號 時間
V1.0 2018.06.25

前言

AudioUnit框架作為您的應(yīng)用程序添加復(fù)雜的音頻操作和處理功能。 創(chuàng)建在主機(jī)應(yīng)用程序中生成或修改音頻的音頻單元擴(kuò)展亡容。接下來幾篇我們就一起看一下這個框架,感興趣的看上面幾篇文章谅年。
1. AudioUnit框架詳細(xì)解析(一) —— 基本概覽
2. AudioUnit框架詳細(xì)解析(二) —— 關(guān)于Audio Unit Hosting之概覽(一)
3. AudioUnit框架詳細(xì)解析(三) —— 關(guān)于Audio Unit Hosting之如何使用本文檔和參考資料(二)
4. AudioUnit框架詳細(xì)解析(四) —— 音頻單元提供快速的模塊化音頻處理之iOS中的Audio Units(一)
5. AudioUnit框架詳細(xì)解析(五) —— 音頻單元提供快速的模塊化音頻處理之在Concert中使用兩個音頻單元API(二)
6. AudioUnit框架詳細(xì)解析(六) —— 音頻單元提供快速的模塊化音頻處理之使用標(biāo)識符來指定和獲取音頻單元(三)
7. AudioUnit框架詳細(xì)解析(七) —— 音頻單元提供快速的模塊化音頻處理之使用范圍和元素來指定音頻單元的部分(四)

Use Properties to Configure Audio Units - 使用屬性來配置音頻單元

音頻單元屬性audio unit property是可用于配置音頻單元的鍵值對纽甘。 屬性的key是具有關(guān)聯(lián)助記符標(biāo)識符的唯一整數(shù),例如kAudioUnitProperty_MaximumFramesPerSlice = 14掖鱼。 Apple保留從063999的屬性鍵然走。在Mac OS X中,第三方音頻單元使用此范圍以上的鍵戏挡。

每個屬性的值都是指定的數(shù)據(jù)類型芍瑞,并具有指定的讀/寫訪問權(quán)限,如Audio Unit Properties Reference中所述褐墅。 要在任何音頻單元上設(shè)置任何屬性拆檬,請使用一個靈活函數(shù):AudioUnitSetPropertyListing 1-4顯示了此函數(shù)的一個典型用法妥凳,注釋強(qiáng)調(diào)了如何指定范圍和元素scope and element以及指示屬性的鍵和值竟贯。

// Listing 1-4 Using scope and element when setting a property

UInt32 busCount = 2;
OSStatus result = AudioUnitSetProperty (
      mixerUnit,
      kAudioUnitProperty_ElementCount,  // the property key
      kAudioUnitScope_Input,  // the scope to set the property on
      0,  // the element to set the property on
      &busCount,  // the property value
      sizeof (busCount)
); 

以下是在音頻單元開發(fā)中經(jīng)常使用的一些屬性。 通過閱讀其參考文檔并探索Apple的音頻單元示例代碼項(xiàng)目(如音頻混音器(MixerHost))逝钥,熟悉其中的每一個:

  • kAudioOutputUnitProperty_EnableIO澄耍,用于啟用或禁用I / O單元上的輸入或輸出。 默認(rèn)情況下,輸出已啟用齐莲,但輸入已禁用。

  • kAudioUnitProperty_ElementCount磷箕,用于配置混音器單元上的輸入元素數(shù)量选酗。

  • kAudioUnitProperty_MaximumFramesPerSlice,用于指定音頻單元響應(yīng)于渲染調(diào)用應(yīng)該準(zhǔn)備產(chǎn)生的音頻數(shù)據(jù)的最大幀數(shù)岳枷。 對于大多數(shù)音頻單遠(yuǎn)芒填,在大多數(shù)情況下,您必須按照參考文檔中所述設(shè)置此屬性空繁。 如果你不這樣做殿衰,當(dāng)屏幕鎖定時,你的音頻將停止盛泡。

  • kAudioUnitProperty_StreamFormat闷祥,用于指定特定音頻單元輸入或輸出總線的音頻流數(shù)據(jù)格式。

大多數(shù)屬性值只能在音頻單元未初始化時設(shè)置傲诵。 這些屬性不打算由用戶改變凯砍。 盡管如此,某些iPod播放器EQ單元的kAudioUnitProperty_PresentPreset屬性和語音處理I / O單元的kAUVoiceIOProperty_MuteOutput屬性在播放音頻時會更改拴竹。

要發(fā)現(xiàn)一個屬性的可用性悟衩,訪問其值,并監(jiān)視其值的變化栓拜,請使用以下函數(shù):

  • AudioUnitGetPropertyInfo - 發(fā)現(xiàn)某個屬性是否可用; 如果是這樣座泳,你會得到數(shù)據(jù)大小的值,以及是否可以更改該值
  • AudioUnitGetProperty幕与,AudioUnitSetProperty - 獲取或設(shè)置屬性的值
  • AudioUnitAddPropertyListener挑势,AudioUnitRemovePropertyListenerWithUserData - 安裝或刪除回調(diào)函數(shù)以監(jiān)視對屬性值的更改

后記

本篇主要講述了使用屬性來配置音頻單元,感興趣的給個贊或者關(guān)注~~~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末纽门,一起剝皮案震驚了整個濱河市薛耻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌赏陵,老刑警劉巖饼齿,帶你破解...
    沈念sama閱讀 218,640評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蝙搔,居然都是意外死亡缕溉,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,254評論 3 395
  • 文/潘曉璐 我一進(jìn)店門吃型,熙熙樓的掌柜王于貴愁眉苦臉地迎上來证鸥,“玉大人,你說我怎么就攤上這事⊥鞑悖” “怎么了泉褐?”我有些...
    開封第一講書人閱讀 165,011評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鸟蜡。 經(jīng)常有香客問我膜赃,道長,這世上最難降的妖魔是什么揉忘? 我笑而不...
    開封第一講書人閱讀 58,755評論 1 294
  • 正文 為了忘掉前任跳座,我火速辦了婚禮,結(jié)果婚禮上泣矛,老公的妹妹穿的比我還像新娘疲眷。我一直安慰自己,他們只是感情好您朽,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,774評論 6 392
  • 文/花漫 我一把揭開白布狂丝。 她就那樣靜靜地躺著,像睡著了一般虚倒。 火紅的嫁衣襯著肌膚如雪美侦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,610評論 1 305
  • 那天魂奥,我揣著相機(jī)與錄音菠剩,去河邊找鬼。 笑死耻煤,一個胖子當(dāng)著我的面吹牛具壮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播哈蝇,決...
    沈念sama閱讀 40,352評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼棺妓,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了炮赦?” 一聲冷哼從身側(cè)響起怜跑,我...
    開封第一講書人閱讀 39,257評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吠勘,沒想到半個月后性芬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,717評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡剧防,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,894評論 3 336
  • 正文 我和宋清朗相戀三年植锉,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片峭拘。...
    茶點(diǎn)故事閱讀 40,021評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡俊庇,死狀恐怖狮暑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情辉饱,我是刑警寧澤搬男,帶...
    沈念sama閱讀 35,735評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站鞋囊,受9級特大地震影響止后,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜溜腐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,354評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瓜喇。 院中可真熱鬧挺益,春花似錦、人聲如沸乘寒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,936評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽伞辛。三九已至烂翰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蚤氏,已是汗流浹背甘耿。 一陣腳步聲響...
    開封第一講書人閱讀 33,054評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留竿滨,地道東北人佳恬。 一個月前我還...
    沈念sama閱讀 48,224評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像于游,于是被迫代替她去往敵國和親毁葱。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,974評論 2 355

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