我一直在努力在录音期间发现沉默。
我成功录制和播放录制的音频,但却不知道静音检测。
录音时,我使用过:https://github.com/darcyliu/CocoaSampleCode/tree/master/AVCaptureToAudioUnitOSX 适用于核心音频api。
任何帮助都对我有利。
谢谢
答案 0 :(得分:1)
您可以使用AVAudioRecorder
,但这不是解决问题的完美方式。
NSDictionary *settings =@{AVSampleRateKey:@(22050.0),
AVFormatIDKey:@(kAudioFormatLinearPCM),
AVNumberOfChannelsKey:@(1),
AVEncoderAudioQualityKey:@(AVAudioQualityMax),
AVLinearPCMBitDepthKey:@(32),
AVLinearPCMIsBigEndianKey:@(NO),
AVLinearPCMIsFloatKey:@(NO)};
AVAudioRecorder *recorder = [[AVAudioRecorder alloc] initWithURL:[NSURL fileURLWithPath:@"/dev/null"] settings:setting error:nil];
[recorder prepareToRecord];
[recorder setMeteringEnabled:YES];
[recorder record];
NSTimer *levelTimer = [NSTimer scheduledTimerWithTimeInterval:0.3f target:self selector:@selector(levelTimerCallback:) userInfo:nil repeats:YES];
然后在levelTimerCallback:
方法
[recorder updateMeters];
CGFloat peak = [recorder peakPowerForChannel:0]
CGFloat average = [recorder averagePowerForChannel:0];