// // VoiceConverter.m // Jeans // // Created by Jeans Huang on 12-7-22. // Copyright (c) 2012年 __MyCompanyName__. All rights reserved. // #import "VoiceConverter.h" //#import "interf_dec.h" //#import "dec_if.h" //#import "interf_enc.h" #import "amrFileCodec.h" @implementation VoiceConverter //转换amr到wav + (int)ConvertAmrToWav:(NSString *)aAmrPath wavSavePath:(NSString *)aSavePath{ if (! DecodeAMRFileToWAVEFile([aAmrPath cStringUsingEncoding:NSASCIIStringEncoding], [aSavePath cStringUsingEncoding:NSASCIIStringEncoding])) return 0; return 1; } //转换wav到amr + (int)ConvertWavToAmr:(NSString *)aWavPath amrSavePath:(NSString *)aSavePath{ if (! EncodeWAVEFileToAMRFile([aWavPath cStringUsingEncoding:NSASCIIStringEncoding], [aSavePath cStringUsingEncoding:NSASCIIStringEncoding], 1, 16)) return 0; return 1; } //获取录音设置 + (NSDictionary*)GetAudioRecorderSettingDict{ NSDictionary *recordSetting = [[NSDictionary alloc] initWithObjectsAndKeys: [NSNumber numberWithFloat: 8000.0],AVSampleRateKey, //采样率 [NSNumber numberWithInt: kAudioFormatLinearPCM],AVFormatIDKey, [NSNumber numberWithInt:16],AVLinearPCMBitDepthKey,//采样位数 默认 16 [NSNumber numberWithInt: 1], AVNumberOfChannelsKey,//通道的数目 // [NSNumber numberWithBool:NO],AVLinearPCMIsBigEndianKey,//大端还是小端 是内存的组织方式 // [NSNumber numberWithBool:NO],AVLinearPCMIsFloatKey,//采样信号是整数还是浮点数 // [NSNumber numberWithInt: AVAudioQualityMedium],AVEncoderAudioQualityKey,//音频编码质量 nil]; return recordSetting; } @end