AVAudioPlayer , AVPlayer 播放音频

2018-12-07  本文已影响0人  浪呀么浪打浪

AVAudioPlayer 构建于Core Audio 中的C-based Audio Queue Services 的最顶层。它可以提供所有你在Audio Queue Services  中所能找到的核心功能,比如播放,循环甚至音频计量。通常 AVAudioPlayer只能播放本地音频,但是经过某些处理也是可以播放网络音频的,只是效果不如播放本地音频好。我之所以使用了AVAudioPlayer播放网络音频,是因为在我的项目中使用AVPlayer播放网络音频会造成卡顿。

音频会话分类:AV Foundation 定义了7种分类来描述应用程序所使用的音频行为。

以上分类可以满足大部分应用程序的需要,如果需要开发更复杂的功能,其中一些分类可以通过使用options和modes方法进一步自定义开发。

配置音频会话:音频会话在应用程序的生命周期中是可以修改的,通常只需要配置一次。配置的最佳位置是

配置的分类为Playback,但是如果使用AVAudioPlayer播放音频的话也可以不配置。有两种方法可以创建AVAudioPlayer,使用包含要播放音频的内存版本的NSdata,或者本地音频文件的NSURL。

播放本地音频代码如下:

播放网络音频如下:

先根据网络音频的url下载到本地,然后进行播放

还可以把url转为NSData类型的,进行播放。使用这个方法需要注意的是转化为NSData的步骤要放在异步线程,不然会阻塞主线程

使用currentTim属性,不仅可以获取到当前的播放进度,也可以调整播放进度

**************************************以下是AVPlayer播放音频***************************************

上一篇下一篇

猜你喜欢

热点阅读