2012-05-12 120 views
0

我使用GameKit連接作爲基礎,並將傳輸延遲(通過藍牙)添加到我的iOS應用的語音聊天約爲4秒,這意味着轉換爲8秒即可收到對問題的回覆。iOS GKSession語音聊天延遲

雖然我不完全確定是什麼原因造成這麼大的延誤,但我有一些嫌疑人。

首先,我注意到它使用的方法voiceChatService:sendData:toParticipantID:GKVoiceChatClient而同時也有voiceChatService:sendRealTimeData:toParticipantID:可用。然而,我並沒有看到任何明顯的方法來改變這個方法,即使我實現了它。我該怎麼做,它可能會有所幫助?

此外,我改變了數據模式爲GKSendDataUnreliableGKSendDataReliable一樣我有時會聽到相同的事情兩次,因爲應用程序可能會重新發送未經確認的位。這消除了類似回聲的效果,但沒有改善滯後。

我還能做些什麼來提高實時性能?

回答

0

那麼,我已經找出了問題所在。改變相關產品:

AVAudioSession *audioSession = [AVAudioSession sharedInstance]; 
[audioSession setMode: AVAudioSessionModeVoiceChat error:NULL]; 

VoiceChat模式使得滯後急劇變小,類似於我體會有手機交談時。