2011-11-29 74 views
2

一旦音頻會話已建立,以下代碼允許藍牙輸入。來自藍牙輸出的音頻會話輸入到線路輸出或揚聲器

UInt32 allowBluetoothInput = 1; 
AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryEnableBluetoothInput, sizeof (allowBluetoothInput), &allowBluetoothInput); 

此代碼看起來像只允許然而藍牙輸入該代碼也路由音頻輸出到藍牙裝置(藍牙耳機的情況下)。當輸入來自藍牙設備時,我想將音頻輸出路由出線路或揚聲器。我只想從藍牙設備獲取音頻輸入,我不想通過藍牙輸出音頻。

這種行爲可行嗎?

回答

2

爲iOS 5的這種行爲是不可能的,引述蘋果的技術支持

藍牙設備不是「用千斤頂在」設備,因此任何其他 音頻路由必須由用戶挑選,不能在代碼進行更改。要做 這個,你可以使用MPVolumeView的功能,這將會使得 有一個額外的路由小部件可​​見,允許用戶指定 路由的輸出。

有關於這個 功能,但行爲的核心音頻郵件列表上一個舊的線程並沒有改變:

http://lists.apple.com/archives/coreaudio-api/2009/Oct/msg00030.html

MPVolumeView參考:

http://developer.apple.com/library/ios/#documentation/mediaplayer/reference/MPVolumeView_Class/Reference/Reference.html

然而, MPVolumeView不允許您獨立路由輸入和輸出。

相關問題