zoukankan      html  css  js  c++  java
  • iOS AVAudioRecorder 录音频率、声道、位数配置 wav格式

    iOS AVAudioRecorder 录音频率、声道、位数配置

    #pragma mark 录音设置
    - (void)setUP_VOICE_RECOARDER
    {
        NSError *error = nil;
        audioSection = [AVAudioSession sharedInstance];
        [audioSection setCategory:AVAudioSessionCategoryPlayAndRecord error:&error];
        if (error) {
            NSLog(@"录音配置错误:%@",error);
            [self showBackAlertWith:error.description];
            return;
        }
        
        //16kHZ,单通道,16位,wav
        //[NSNumber numberWithInt:AVAudioQualityHigh],AVEncoderAudioQualityKey,
        NSMutableDictionary* recordSetting = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                              [NSNumber numberWithFloat:16000], AVSampleRateKey,
                                              [NSNumber numberWithInt:kAudioFormatLinearPCM],AVFormatIDKey,
                                              [NSNumber numberWithInt:1], AVNumberOfChannelsKey,
                                              [NSNumber numberWithInt:16], AVLinearPCMBitDepthKey,
                                              [NSNumber numberWithBool:NO],AVLinearPCMIsBigEndianKey,
                                              [NSNumber numberWithBool:NO],AVLinearPCMIsFloatKey,
                                              nil];
        
        NSURL *recordedTmpFile = [NSURL fileURLWithPath:[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent: [NSString stringWithFormat: @"%.0f.%@", [NSDate timeIntervalSinceReferenceDate] * 1000.0, @"wav"]]];  //文件名的设置
        
        
        voiceURL = recordedTmpFile;
        voiceRecorder = [[AVAudioRecorder alloc] initWithURL:recordedTmpFile settings:recordSetting error:NULL];
        NSLog(@"file : %@",recordedTmpFile);
        voiceRecorder.delegate = self;
        voiceRecorder.meteringEnabled = YES;
        [voiceRecorder prepareToRecord];
        
    }
  • 相关阅读:
    C语言-数组指针
    关于知网文章下载
    SpringBoot静态资源文件存放位置
    ArchLinux安装的vscode修改插件源
    I/O复用的高级应用三:同时处理TCP和UDP服务
    Windows查看动态库/静态库位数的方法
    VS 窗口程序没有输出时
    Windows下编译Boost
    VS设置C++代码注释模板
    No Target Architecture
  • 原文地址:https://www.cnblogs.com/cocoajin/p/4525911.html
Copyright © 2011-2022 走看看