录像机适用于iPhone 3GS但不适用于iPhone 3G

时间:2010-08-18 07:43:13

标签: iphone avaudiorecorder 3g iphone-3gs

我有一个AVAudioRecorder,它被初始化为:

_recorder = [AVAudioRecorder alloc];
NSMutableDictionary *recordSettings = [[[NSMutableDictionary alloc] initWithCapacity:2] autorelease];
[recordSettings setObject:[NSNumber numberWithInt:kAudioFormatMPEG4AAC] forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithInt:AVAudioQualityLow] forKey: AVEncoderAudioQualityKey]; 
NSURL *url = [NSURL fileURLWithPath:[self getActualSoundPath]];
[_recorder initWithURL:url settings:recordSettings  error:nil];    
[_recorder setDelegate:self];

此代码在我的模拟器和我的iPhone 3GS上完美运行,但在较旧的iPhone 3G上却没有...

有什么问题?

由于 马库斯

1 个答案:

答案 0 :(得分:6)

iPhone 3G并不支持3GS / 4 / 4S等硬件AAC编码。你可以使用线性PCM,但那不是压缩的。

请参阅此主题以获取支持的格式:How can I record AMR audio format on the iPhone?

Apple无损(kAudioFormatAppleLossless)和iLBC(kAudioFormatiLBC)似乎在iPhone 3G上运行良好。

建议使用kAudioFormatAppleIMA4,但移动Safari无法识别它。

/马库斯