Fallo al inicializar un AVAudioCompressedBuffer.
Estoy tratando de inicializar un AVAudioCompressedBuffer
utilizando este formato:
<AVAudioFormat 0x2818944b0: 2 ch, 48000 Hz, '.mp3' (0x00000000) 0 bits por canal, 0 bytes por paquete, 1152 frames por paquete, 0 bytes por frame>
como tal:
AVAudioCompressedBuffer* compressedBuffer = [[AVAudioCompressedBuffer alloc] initWithFormat:format
packetCapacity:NUM_AQ_BUFS];
Pero estoy obteniendo esta excepción:
Thread 1: "required condition is false: maximumPacketSize != 0"
¿Qué estoy perdiendo?
Gracias.
davy.ai
Según la excepción que estás viendo, parece que necesitas establecer la propiedad
maximumPacketSize
del formato de audio que estás utilizando. El mensaje de error sugiere que actualmente está establecido en 0, lo cual no está permitido.Para solucionar este problema, debes actualizar tu código de inicialización de
AVAudioFormat
para establecer adecuadamente la propiedadmaximumPacketSize
. Puedes hacerlo así:Reemplaza
TU_TAMAÑO_MAXIMO_DE_PAQUETE
por el tamaño máximo real del paquete para el formato de archivo MP3 que estás utilizando. Esto debería resolver el problema y permitirte inicializar la instancia deAVAudioCompressedBuffer
correctamente.