Error de XCODE AVAudioPlayer con respecto a AudioQueue: solicite recortar 0 + 1676 = 1676 cuadros del búfer que contiene 1152 cuadros

Estoy intentando reproducir diferentes sonidos en diferentes momentos. basado en un button presionar o time de espera del timer, etc. Aquí está el código.

Para reproducir la function de sonido:

-(void)myPlaySound:(NSString *)mySoundFile NumberOfLoops:(int)loopsCount ofType:(NSString *)fileType { NSURL* musicFile = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:mySoundFile ofType:fileType]]; myAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:musicFile error:nil]; myAudio.volume = audioVolume; myAudio.delegate = self; myAudio.numberOfLoops = loopsCount; [myAudio prepareToPlay]; [myAudio play]; } 

para detener el sonido:

  if([myAudio isPlaying]){ [myAudio stop]; myAudio.currentTime = 0; } 

Problema: a veces aparece este error: AudioQueue: solicita recortar 0 + 1676 = 1676 fotogtwigs desde el buffer que contiene 1152 fotogtwigs

El error ocurre tan pronto como se llama [myAudio play].

Cualquier ayuda con respecto a esto es apreciada.

Estaba teniendo este problema y, como dijo Radu, el problema que parecía tener era tratar de reproducir un sonido mientras estaba tocando. No creo que sea un gran problema si el sonido se reemplaza por otro sonido, pero tenga cuidado de no intentar reproducir el mismo sonido mientras se está reproduciendo.

Interrumpiendo un poco tarde, pero si no ha resuelto su problema, esto podría ayudar.

Si detienes myAudio antes de reproducir myAudio , podrías eliminar el problema.

Entonces donde tienes:

  myAudio.numberOfLoops = loopsCount; [myAudio prepareToPlay]; [myAudio play]; 

Intente cambiarlo a:

  [myAudio stop]; myAudio.numberOfLoops = loopsCount; [myAudio prepareToPlay]; [myAudio play];