iOS 音频录音和格式转换

1.AVAudioRecorder原生录音-参数设置压缩大小

PCM 即脉冲编码调制 (Pulse Code Modulation)。在PCM 过程中,将输入的模拟信号进行采样、量化和编码,用二进制进行编码的数来代表模拟信号的幅度 ;接收端再将这些编码还原为原来的模拟信号。即数字音频的 A/D 转换包括三个过程 :采样,量化,编码。

数据大小=采样频率 * 采样位数 * 声道 * 秒数/8

AVSampleRateKey采样率 8000/11025/22050/44100/96000(影响音频的质量)
AVNumberOfChannelsKey音频通道数 1 或 2 单声道和立体声;
AVEncoderAudioQualityKey录音质量 设置高低无明显变化
AVLinearPCMBitDepthKey采样位数 8、16、24、32;

AVFormatIDKey采用kAudioFormatLinearPCM格式,录音之后保存为wav格式
通常取值为:8000,1,16。5秒音频大概80KB 16KB/S

2.格式转换

2.1 amr和wav音频格式转换

苹果原生不支持amr,录制音频文件为wav格式,需要将wav格式转换为amr减少大小(编译三方C++库再进行二次封装)
将格式转换为amr 可以极大的减少音频文件的大小(10倍左右),比如80KB->8KB 314KB->31KB
播放时需要将amr再次转换为wav才能播放。
amr和wav音频格式转换

2.2 mp3和wav音频格式转换
将wav转换为mp3需要使用到libmp3lame三方开源库lame网站,不过需要编译成静态库才能使用。这里仅提供转换mp3的方法,具体使用可自行查找。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容