J'essaie d'obtenir une file d'attente audio fonctionnant sur une application iphone, et quand AudioQueueStart est appelé, il donne le "fmt?" code de résultat (kAudioFormatUnsupportedDataFormatError). Dans le code ci-dessous, je mets le format à kAudioFormatLinearPCM, qui est sûrement supporté. Qu'est-ce que je fais mal?AudioQueueStart signalant un format non supporté
data.mDataFormat.mSampleRate = 44100;
data.mDataFormat.mFormatID = kAudioFormatLinearPCM;
data.mDataFormat.mFormatFlags = 0;
data.mDataFormat.mBytesPerPacket = 4;
data.mDataFormat.mFramesPerPacket = 1;
data.mDataFormat.mBytesPerFrame = 4;
data.mDataFormat.mChannelsPerFrame = 2;
data.mDataFormat.mBitsPerChannel = 16;
OSStatus status;
status = AudioQueueNewOutput(&data.mDataFormat, audioCallback, &data, CFRunLoopGetCurrent(), kCFRunLoopCommonModes, 0, &data.mQueue);
for (int i = 0; i < NUMBUFFERS; ++i)
{
status = AudioQueueAllocateBuffer (data.mQueue, BUFFERSIZE, &data.mBuffers[i]);
audioCallback (&data, data.mQueue, data.mBuffers[i]);
}
Float32 gain = 1.0;
status = AudioQueueSetParameter (data.mQueue, kAudioQueueParam_Volume, gain);
status = AudioQueueStart(data.mQueue, NULL);
données
est de type Audiodata qui ressemble à ceci:
typedef struct _audioData {
AudioQueueRef mQueue;
AudioQueueBufferRef mBuffers[NUMBUFFERS];
AudioStreamBasicDescription mDataFormat;
} Audiodata;
merci
Salut! J'ai le même problème. Changer les différents drapeaux ne sont pas utiles pour moi. Peut être simulateur iPad ne supporte pas l'enregistrement ??? –