• 关于ios下录音


    http://blog.csdn.net/silencetq/article/details/8447400

    我是采用的AVAudioRecorder这个框架来进行录音

    这个录音跟官方网站上的speakHere有些区别,最大的区别是,这个必须要录制完成才能处理文件,而speakhere示例是可以实现边录制边上传的效果。

    #import <AVFoundation/AVFoundation.h>

    #import <CoreAudio/CoreAudioTypes.h>

    引入框架,这是使用录音功能的基本配备

    先说明一点,默认AVAudioRecorder录制后的格式是.caf,而大部分的播放器都是不支持这个格式的,下面一段设置是可以让录制格式是wav的格式

    NSDictionary *recordSetting = [[NSDictionary alloc] initWithObjectsAndKeys:

                                      [NSNumber numberWithFloat: 44100.0],AVSampleRateKey, //采样率

                                      [NSNumber numberWithInt: kAudioFormatLinearPCM],AVFormatIDKey,

                                      [NSNumber numberWithInt:16],AVLinearPCMBitDepthKey,//采样位数 默认 16

                                      [NSNumber numberWithInt: 2], AVNumberOfChannelsKey,//通道的数目

                                      [NSNumber numberWithBool:NO],AVLinearPCMIsBigEndianKey,//大端还是小端 是内存的组织方式

                                      [NSNumber numberWithBool:NO],AVLinearPCMIsFloatKey,nil];//采样信号是整数还是浮点数

     

    NSURL *recordedTmpFile = [NSURL fileURLWithPath:[NSTemporaryDirectory()stringByAppendingPathComponent: [NSString stringWithFormat@"%.0f.%@", [NSDatetimeIntervalSinceReferenceDate] * 1000.0@"wav"]]];  //文件名的设置

    //Setup the recorder to use this file and record to it.

    AVAudioRecorder *recorder = [[ AVAudioRecorder alloc] initWithURL:recordedTmpFile settings:recordSettingerror:&error];

     

    [recorder prepareToRecord];

    [recorder record];

    下面代码应该是当前.m文件加载时候就设置

     

    AVAudioSession * audioSession = [AVAudioSession sharedInstance];

    [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error: &error]; //设置音频类别,这里表示当应用启动,停掉后台其他音频

    [audioSession setActive:YES error: &error];//设置当前应用音频活跃性

  • 相关阅读:
    excel 读取
    MSDN异步编程概述 [C#] zzhttp://www.cnblogs.com/hxhbluestar/articles/60023.html
    window.opener showModelessDialog showModalDialog 获取|控制父窗体的区别
    MySql中文乱码解决方法
    关于随机数
    javascript 日期处理(注意事项)
    一个简单访问office程序的控件,不依赖officedll
    关于12306的bug
    回车提交
    js动态添加外部js(顶)
  • 原文地址:https://www.cnblogs.com/yangmx/p/4205660.html
Copyright © 2020-2023  润新知