Pregunta

Es la intención de devolver un OSType, sino que sólo estoy -50. ¿Alguien tiene alguna idea de lo que esto representa el error? No puedo encontrar en cualquier lugar.

Un fragmento de código para el contexto (el error es tan ambigua que no sé qué fragmento de código para pegar, aquí está casi todo):

ExtAudioFileRef cafFile;
AudioStreamBasicDescription cafDesc;

cafDesc.mBitsPerChannel = 16;
cafDesc.mBytesPerFrame = 4;
cafDesc.mBytesPerPacket = 4;
cafDesc.mChannelsPerFrame = 2;
cafDesc.mFormatFlags = 0;
cafDesc.mFormatID = 'ima4';
cafDesc.mFramesPerPacket = 1;
cafDesc.mReserved = 0;
cafDesc.mSampleRate = 44100;

OSType status = ExtAudioFileCreateWithURL(
                   fileURL,                    // inURL
                   'caff',                     // inFileType
                   &cafDesc,                   // inStreamDesc
                   NULL,                       // inChannelLayout
                   kAudioFileFlags_EraseFile,  // inFlags
                   &cafFile                    // outExtAudioFile
                   );    // returns 0xFFFFFFCE
¿Fue útil?

Solución

ExtAudioFileCreateWithURL() devuelve un OSStatus, no un OSType. Ver el MacErrors.h archivo para los distintos códigos de error. En este caso, es -50 paramErr (error en la lista de parámetros de usuario), por lo que estás pasando uno o más de los parámetros de forma incorrecta a la función.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top