[편집 : iOS 시뮬레이터의 확인 된 버그입니다. 5.0에 등장하고 5.1에 남아 있습니다. 내 자신의 대답은 아래 링크 참조].(편집 : iOS 시뮬레이터 5.x 버그) iOS에서 사운드 재생을 위해 AudioQueue를 사용할 때 EXC_BAD_ACCESS
나는 사람들입니다. 이것이 나의 첫 번째 질문이다. 나는 정말로 잃어버린 ...
iOS에서 소리를 재생하기 위해 AudioQueue를 사용하는 데 몇 가지 문제가 있습니다. AudioQueueNewOutput을 사용하여 AudioQueue를 만들면 EXC_BAD_ACCESS가 발생합니다. 일부 오디오 스레드에서 발생하는 것으로 보입니다 (Xcode는 스레드 4를 보여줍니다).
AudioQueue는 다음과 같이 생성됩니다 :
AudioQueueNewOutput(&desc, audioQueueCallback, this, CFRunLoopGetCurrent(),
kCFRunLoopDefaultMode, 0, &audioQueue);
(내림차순은 아이폰 OS 표준 재생 포맷을 포함). 이 에디터 보여줍니다 무엇
:
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
엑스 코드 4.3.1
iOS 시뮬레이터 5.1
맥 OS X 라이온 10.7.3
은 정말 당신의 도움을 주셔서 감사합니다. 의견이 있으십니까?