我正在开发能够建立由OpenTok支持的音频/视频通话的iOS应用程序。 我在带有iOS 7.x和iOS 8.x的设备iPhone上测试了它,并集成了OpenTok iOS SDK 2.3.0。
在应用程序使用期间的某个时刻,我们正在尝试启动新的OpenTok音频/视频会话并从OpenTok SDK获取错误(仅在DEBUG输出中,无法通过SDK处理该错误)。 正在进行视频会议时,音频将不再可用。
错误如下。 有趣的是,我们仍然可以在该错误之后在应用内录制和播放音频(我们在OpenTok会话旁边有这样的功能)。 但是所有后续的OpenTok会话都没有音频,我们必须重新启动应用才能让它再次运行。
09:55:41.768 ERROR: [0x11f55000] 1230: AUIOClient_StartIO failed (-66637)
ERROR[OpenTok]:Audio device error: AUGraphStart error: ˇ˛˚≥
09:55:41.811 ERROR: [AURemoteIO::IOThread] >aurioc> 1497: AURemoteIO@0x1684ec20: IOThread exiting with error 0x10004006
09:55:42.464 ERROR: [0x11f55000] 1230: AUIOClient_StartIO failed (-66637)
ERROR[OpenTok]:Audio device error: AUGraphStart error: ˇ˛˚≥
09:55:43.917 ERROR: [AURemoteIO::IOThread] >aurioc> 1497: AURemoteIO@0x1684ec20: IOThread exiting with error 0x10004006
09:55:44.596 ERROR: [0x11f55000] 1230: AUIOClient_StartIO failed (-66637)
ERROR[OpenTok]:Audio device error: AUGraphStart error: ˇ˛˚≥
09:55:44.612 ERROR: [AURemoteIO::IOThread] >aurioc> 1497: AURemoteIO@0x1684ec20: IOThread exiting with error 0x10004006
09:55:45.268 ERROR: [0x11f55000] 1230: AUIOClient_StartIO failed (-66637)
ERROR[OpenTok]:Audio device error: AUGraphStart error: ˇ˛˚≥
09:55:46.609 ERROR: [AURemoteIO::IOThread] >aurioc> 1497: AURemoteIO@0x1684ec20: IOThread exiting with error 0x10004006
09:55:47.261 ERROR: [0x11f55000] 1230: AUIOClient_StartIO failed (-66637)
ERROR[OpenTok]:Audio device error: AUGraphStart error: ˇ˛˚≥
09:55:48.195 ERROR: [AURemoteIO::IOThread] >aurioc> 1497: AURemoteIO@0x1684ec20: IOThread exiting with error 0x10004006
09:55:48.838 ERROR: [0x11f55000] 1230: AUIOClient_StartIO failed (-66637)
ERROR[OpenTok]:Audio device error: AUGraphStart error: ˇ˛˚≥
OpenTok会话在测试应用程序中运行良好,但在真实应用程序中,我们有其他代码管理AVAudioSession模式和类别,我们遇到上述问题。
初始化OpenTok会话的UIViewController https://dl.dropboxusercontent.com/u/83972129/OpenTokDevViewController.cs
请告知如何诊断和解决问题。
答案 0 :(得分:1)
尝试使用
[[AVAudioSession sharedInstance] setCategory:??? error:nil]
可能是您在应用中设置了与Opentok不兼容的类别。
答案 1 :(得分:0)
如果之前播放音频 然后打开音频单元(AudioOutputUnitStart)将发布此错误
我已经做到了:(先调用setCategory,然后打开音频单元,它在iOS 12.4.1上运行良好)
AVAudioSession *session = [AVAudioSession sharedInstance];
NSError *error;
[session setCategory:AVAudioSessionCategoryPlayAndRecord
withOptions:AVAudioSessionCategoryOptionDefaultToSpeaker error:&error];
OSStatus status = AudioOutputUnitStart(audioUnit);