GZZAudioConverter
一个用于转换音频格式的简单库(支持 MP3)
描述
大多数代码来自于 ExtAudioFileConverter,因为网上关于音频格式转换的资源很少,而且还特别麻烦,所以将其封装为 Cocoapods
库,方便使用。
安装
仅支持 CocoaPods
,将以下代码添加到 Podfile
文件中。
pod 'GZZAudioConverter'
用法
// 例如:转换为 MP3
dispatch_async(dispatch_queue_create(NULL, DISPATCH_QUEUE_SERIAL), ^ {
GZZAudioConverter *converter = [[GZZAudioConverter alloc] init];
converter.inputFile = @"/var/mobile/Containers/Data/Application/xxx/Documents/xxx.wav";
converter.outputFile = @"/var/mobile/Containers/Data/Application/xxx/Documents/xxx.mp3";
converter.outputFileType = kAudioFileMP3Type;
converter.outputFormatID = kAudioFormatMPEGLayer3;
BOOL success = [converter convert];
dispatch_async(dispatch_get_main_queue(), ^ {
if (success) {
NSLog(@"转换成功");
} else {
NSLog(@"转换失败");
}
});
});
方法
注意:文件格式和数据格式要根据你要转换的音频格式来设置,不同的文件格式对应不同的数据格式,这是关于文件格式和数据格式的 说明文档。
// 采样率
converter.outputSampleRate = 44100;
// 声道数
converter.outputNumberChannels = 2;
// 位深
converter.outputBitDepth = BitDepth_16;
// 文件格式
converter.outputFileType = kAudioFileWAVEType;
// 数据格式
converter.outputFormatID = kAudioFormatLinearPCM;