簡體   English   中英

(編輯:iOS Simulator 5.x錯誤)使用AudioQueue在iOS中播放聲音時EXC_BAD_ACCESS

[英](Edit: iOS Simulator 5.x bug) EXC_BAD_ACCESS when using AudioQueue for sound playback in iOS

[編輯:這是一個已確認的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

非常感謝您的幫助。 有什么想法嗎?

我在設備上運行應用程序時沒有此問題。 所以我一直在研究,它實際上是模擬器錯誤。 此處有更多信息: 此gdb輸出是什么意思?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM