简单研究利用AV Foundation框架实现模仿微信语音录制和播放功能

本文介绍了如何使用AVFoundation框架在iOS上实现模仿微信的语音录制和播放功能,涉及AVAudioSession的设置、录音器和播放器的初始化、音频格式及编码要求等关键步骤。通过设置音频会话类别、初始化AVAudioRecorder和AVAudioPlayer,以及处理录音和播放的控制逻辑,实现了类似微信的语音功能。

参考博客:(http://blog.youkuaiyun.com/rhljiayou/article/details/15339335)

上图:

 

在优快云看到一篇关于模仿微信语音录制和播放功能实现的博客,由于现在语音在App中使用的相当频繁,在微信、QQ等社交软件中语音功能几乎是必备的,酷狗音乐、唱吧等音乐软件也都有音频录制和播放的需要,所以我在网上又搜集了一些相关的Demo查看,简单学习一下别人是如何使用AVFoundation这个框架处理录音和播放音频的,下面我就总结一下自己所学到的知识,如有理解错误或分析不到位还希望能得到各位大神的指点纠正。

ios为我们提供了处理音频的基础技术:核心音频(core Audio)

   有5个框架:1.CoreAudio.framework

               2.AudioToolbox.framework

               3.AudioUnit.framework

               4.AVFoundation.framework

               5.OpenAL.framework

AV Foundation库文件共包括如下类:


新建项目工程,首先导入AV Foundation框架,此处使用ARC=YES,导入相关图片文件,创建ViewController,带上xib文件,把AppDelegate的rootViewController交给ViewController,通过ib文件加载视图。在ViewController中导入<AVFoundation/AVFoundation.h>库,定义如下变量和实例方法:

{

   IBOutlet UIImageView *soundLodingImageView;//从IB链接的一个UIImageView

   IBOutlet UIButton *playBtn;//从IB链接的button

   AVAudioRecorder *recorder; //录音器

   AVAudioPlayer *player; //播放器

   NSDictionary *recorderSettingsDict;//播放器的配置添加到一个字典里

   NSTimer *timer; //定时器

   NSMutableArray *volumImages; //图片组

   double lowPassResults;//创建一个double类型的lowPassResults获取最低分贝值

   NSString *playName; //录音名字

}

- (IBAction)downAction:(id)sender;//点击开始录音执行的方法

- (IBAction)upAction:(id)sender;//松手录音结束的方法

- (IBAction)playAction:(id)sender;//播放音频

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值