Ios AVAssetWriter记录设置的工作方式与AVAudioRecorder不同
我已经成功地使用这些录音设置来创建格式化为所需格式的音频。然而,这些设置似乎只适用于AVAudioRecorder。当我用AVAssetWriter尝试它们时,我得到一个错误,指出AVLinearPCMBitDepthKey需要AVLinearPCMBitFloatKey,但当我添加它时,它表示不允许使用“ulaw”。我的问题是,为什么AVLinearPCMBitDepthKey在一台录音机中工作正常,而在另一台录音机中工作不正常Ios AVAssetWriter记录设置的工作方式与AVAudioRecorder不同,ios,audio,avassetwriter,Ios,Audio,Avassetwriter,我已经成功地使用这些录音设置来创建格式化为所需格式的音频。然而,这些设置似乎只适用于AVAudioRecorder。当我用AVAssetWriter尝试它们时,我得到一个错误,指出AVLinearPCMBitDepthKey需要AVLinearPCMBitFloatKey,但当我添加它时,它表示不允许使用“ulaw”。我的问题是,为什么AVLinearPCMBitDepthKey在一台录音机中工作正常,而在另一台录音机中工作不正常 [recordSettings setObject:[NSNum
[recordSettings setObject:[NSNumber numberWithInt: kAudioFormatULaw] forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithFloat:8000.0] forKey: AVSampleRateKey];//was 44100.0
[recordSettings setObject:[NSNumber numberWithInt:1] forKey:AVNumberOfChannelsKey];
[recordSettings setObject:[NSNumber numberWithInt:8000] forKey:AVEncoderBitRateKey];//was 64000
[recordSettings setObject:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSettings setObject:[NSNumber numberWithInt: AVAudioQualityLow] forKey: AVEncoderAudioQualityKey];
每个苹果支持:
因此,这就是bug——创建了文件,成功地编写了许多示例,然后由于未知原因,append开始失败
该错误似乎只发生在这些设置和AVAssetWriter中
AudioQueue应该用于ulaw audio