以下问题:
<0xb03e7000> Error '!obj' trying to fetch default input device's sample rate
<0xb03e7000> Error getting audio input device sample rate: '!obj'
<0xb03e7000> AQMEIOManager::FindIOUnit: error '!dev'
我已经在stackoverflow上找到了这个问题,但是没有一个提供的解决方案对我有用。
代码:
#import "CJTActionViewController.h"
@interface CJTActionViewController()
@property NSURL *url;
@property NSData *songFile;
@property AVAudioPlayer *audioPlayer;
@end
@implementation CJTActionViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.url = [NSURL fileURLWithPath: [NSString stringWithFormat:@"%@/cannon_01.wav", [[NSBundle mainBundle] resourcePath]]];
self.songFile = [[NSData alloc] initWithContentsOfURL:self.url];
self.audioPlayer = [[AVAudioPlayer alloc] initWithData:self.songFile error:nil];
self.audioPlayer.delegate = self;
self.audioPlayer.numberOfLoops = 0;
}
- (IBAction)firePressed(id):sender
{
[self.audioPlayer play];
}
@end
已设置代表。不知道它是否重要,但是在另一台Mac上代码运行没有问题。
我使用ios 6.1和模拟器6.1
我也遇到了同样的问题,并且能够通过the answer to this question通过在运行模拟器的Mac上调整声音设置来解决此问题。我使用的是外部声卡,并且通过以下方式更改了Mac上的音频设置就可以了:
希望这会有所帮助。我的代码与您的代码非常相似,我完全认为这与您的代码无关。
确认连接音频输入设备(并重新启动计算机)可以解决问题。将Git存储库移到Macbook Air到Mac Pro Cylinder后,出现此错误。
我安装了Bose AE蓝牙耳机,并最终从Xcode收到了有意义的消息,但它仍在中止:
16:04:10.781 WARNING: 246: Default audio device changed. Restart the simulator to have it use the newly-selected device.
2015-04-21 16:04:19.790 FatBirdsPetAdventure[1622:84473] 16:04:19.790 ERROR: 56: Start: Mach message timeout. Apparently deadlocked. Aborting now.
重新启动模拟器并执行XCode舞蹈(从模拟器中删除应用程序,清理项目,重建后,我收到了另一条消息:
16:06:13.847 ERROR: 56: Initialize: Mach message timeout. Apparently deadlocked. Aborting now.
最后重新启动机器后,没有更多错误。
我花了数小时试图弄清楚这一点,如果您没有麦克风或输入设备,则xcode将无法正确初始化AVAudioPlayer。
这就是为什么插入某种类型的输入设备的原因,AVAudioPlayer正在搜索输入设备。您可以在iPhone上运行相同的应用程序,它将运行正常。
因此,仅在模拟器上运行时插入某种类型的输入设备,我还没有找到解决此问题的方法。而且可能也不推荐。
我只是遇到了同样的问题,但是在耳机插孔上连接了扬声器。移除了插孔,摆弄了系统偏好设置,然后将音频输出回内置扬声器,然后退出Xcode和模拟器,然后重新为我修复它。
尝试插入附带麦克风的耳机,希望可以解决该问题。还重新启动xcode和模拟器。
我的解决方法是:-设置系统偏好设置,将音频输入设置为内置麦克风以外的其他设置-在模拟器中,将输入设置为Internal Mic如果它们相同,它将以某种方式“锁定”麦克风。
致所有人:感谢您的回答。我真的以为这对我的编程不好,但是实际上,这是由于Apple的错误设计所致。这个话题是6年前提出的,Apple仍然没有摆脱这个错误!