[编辑:这是一个确认的iOS模拟器错误。出现在5.0并保持在5.1。请参阅我自己的答案中的链接]。
我们。这是我的第一个问题。我真的迷路了......
我在使用AudioQueue在iOS中播放声音时遇到了一些麻烦。当我使用AudioQueueNewOutput创建一个AudioQueue时,我得到一个EXC_BAD_ACCESS。它似乎发生在一些音频线程中(Xcode显示线程4)。
AudioQueue的创建方式如下:
AudioQueueNewOutput(&desc, audioQueueCallback, this, CFRunLoopGetCurrent(),
kCFRunLoopDefaultMode, 0, &audioQueue);
(desc包含iOS规范播放格式)。
这是编辑显示的内容:
AudioToolbox`PowerMeter::PowerMeter():
0x16ee92: pushl %ebp
0x16ee93: movl %esp, %ebp
0x16ee95: movl 8(%ebp), %eax
0x16ee98: movb $0, (%eax)
0x16ee9b: movl $0, 8(%eax)
0x16eea2: movl $0, 4(%eax)
0x16eea9: movl $1064866676, 24(%eax)
0x16eeb0: movl $3161095930, 20(%eax)
0x16eeb7: movl $1066426957, 40(%eax)
0x16eebe: movl $3539053052, 36(%eax)
0x16eec5: movl $0, 92(%eax)
0x16eecc: movl $0, 88(%eax)
0x16eed3: movl $0, 108(%eax)
0x16eeda: movl $0, 104(%eax)
0x16eee1: movl $0, 100(%eax)
0x16eee8: movl $0, 96(%eax)
0x16eeef: pxor %xmm0, %xmm0
0x16eef3: movaps %xmm0, 64(%eax)
0x16eef7: movl $0, 60(%eax)
0x16eefe: movl $0, 56(%eax)
0x16ef05: movb $0, 52(%eax)
0x16ef09: movb $0, 53(%eax)
0x16ef0d: movl $0, 48(%eax)
0x16ef14: movl $0, 80(%eax)
0x16ef1b: movl $4294967295, 44(%eax)
0x16ef22: movl $0, 84(%eax)
0x16ef29: popl %ebp
0x16ef2a: ret
0x16ef2b: nop
0x16ef2c: nop
0x16ef2d: nop
0x16ef2e: nop
0x16ef2f: nop
Xcode 4.3.1
iOS模拟器5.1
Mac OS X Lion 10.7.3
我非常感谢你的帮助。 有什么想法吗?