iPad 응용 프로그램에 kAudioFormatMPEG4AAC 형식을 기록하려고 시도했지만 기록은 iPad2 & iPad3에서는 제대로 작동하지만 iPad1에서는 제대로 작동하지 않습니다. 여기 iPad1 & iPad3에는 iOS 5.1이 있고 iPad2에는 iOS 5.0.1이 있습니다.iPad 1에서 MPEG4AAC 녹화를 녹화 할 수 없습니까?
녹화에 대한 코드 같은 것입니다 ..
if(recordEncoding == ENC_PCM)
{
[recordSettings setObject:[NSNumber numberWithInt: kAudioFormatLinearPCM] forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithFloat:44100.0] forKey: AVSampleRateKey];
[recordSettings setObject:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];
[recordSettings setObject:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSettings setObject:[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsBigEndianKey];
[recordSettings setObject:[NSNumber numberWithBool:NO] forKey:AVLinearPCMIsFloatKey];
}
else
{
NSNumber *formatObject;
switch (recordEncoding) {
case (ENC_AAC):
formatObject = [NSNumber numberWithInt: kAudioFormatMPEG4AAC];
break;
case (ENC_ALAC):
formatObject = [NSNumber numberWithInt: kAudioFormatAppleLossless];
break;
case (ENC_IMA4):
formatObject = [NSNumber numberWithInt: kAudioFormatAppleIMA4];
break;
case (ENC_ILBC):
formatObject = [NSNumber numberWithInt: kAudioFormatiLBC];
break;
case (ENC_ULAW):
formatObject = [NSNumber numberWithInt: kAudioFormatULaw];
break;
default:
formatObject = [NSNumber numberWithInt: kAudioFormatAppleIMA4];
}
[recordSettings setObject:formatObject forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithFloat:44100.0] forKey: AVSampleRateKey];
[recordSettings setObject:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];
[recordSettings setObject:[NSNumber numberWithInt:12800] forKey:AVEncoderBitRateKey];
[recordSettings setObject:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSettings setObject:[NSNumber numberWithInt: AVAudioQualityHigh] forKey: AVEncoderAudioQualityKey];
}
사람이 문제를 도와 줄 수 있습니다. 하나 확실하다, MPEG4AAC는
this post가 제안한대로
어떻게됩니까? 오류 메시지? 충돌? –
없음, AudioFile은 생성되지만 디스크의 크기는 oo : oo 초이며 크기는 보통 29KB입니다. 이것은 iPad 1에만 해당됩니다. iPad2 & 3에서는 모든 것이 잘 작동합니다. –