iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件

步骤

  • 第一步:在 Project - TARGETS - Project名 - Build Phases - Link Binary With Libraries,添加 AVFoundation.framework。
  • 第二步:创建一个 UIViewController 的子类 PlayerViewController。
  • 第三步:在 PlayerViewController 中添加一个属性 AVAudioPlayer。
  • 第四步:在 PlayerViewController 的 viewDidLoad 方法中实现最主要的代码。

关键代码

.h

#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h> @interface PlayViewController: UIViewController @property (strong, nonatomic) AVAudioPlayer *player; @end

.m

#import "PlayerViewController.h"

@interface PlayerViewController ()

@end

@implementation PlayerViewController

- (void) viewDidLoad
{
[super viewDidLoad]; AVAudioSession *session = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
[audioSession setActive:YES error:nil]; NSString *audioPath = [[NSBundle mainBundle] pathForResource:@"rem" ofType:@"wav"];
NSURl *audioUrl = [NSURL fileURLWithPath:audioPath];
NSError *playerError;
_player = [[AVAudioPlayer alloc] initWithContentsOfURL:audioUrl error:&playerError];
if (_player === NULL)
{
NSLog(@"fail to play audio :(");
return;
} [_player setNumberOfLoops:-1];
[_player setVolume:1];
[_player prepareToPlay];
[_player play];
} - (void) didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
} @end

几个重要的点:

  • 必须要用 AVAudioSession,否则木有声音啊。
  • 不要把 AVAudioPlayer 当做局部变量(具体说在这个例子中,不要在 viewDidLoad 中定义)。
  • 要找好路径,这里用 mainBundle,不要搞错。

源码

http://download.csdn.net/detail/prevention/6816959

-

转载请注明来自:http://blog.csdn.net/prevention

iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件的更多相关文章

  1. iOS Dev (21) 用 AVPlayer 播放一个本地音频文件

    iOS Dev (21) 用 AVPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 前言 这篇文章与上一篇极其相似,要注 ...

  2. iOS中音频的录制与播放(本地音频文件的播放)

    iOS功能开发涉及到音频处理时,最常见的时进行录音,以及音频文件的播放.停止播放等的操作.在开发中还要避免同一个音频文件,或不同音频文件之间的处理,比如说正在播放A音频时,可以停止播放A音频,也可以播 ...

  3. iOS从零开始学习直播之音频1.播放本地音频文件

      现在直播越来越火,俨然已经成为了下一个红海.作为一个资深码农(我只喜欢这样称呼自己,不喜欢别人这样称呼我),我必须赶上时代的潮流,开始研究视频直播.发现视屏直播类的文章上来就讲拉流.推流.采集.美 ...

  4. S3C2416裸机开发系列19_Fatfs播放录像wav音频文件

    S3C2416裸机开发系列19 Fatfs播放录像wav音频文件 国际象棋男孩    1048272975 多媒体资源,一般都是以文件的形式存储在固化存储器中.Fatfs所支持的fat32为windo ...

  5. Android音频: 怎样使用AudioTrack播放一个WAV格式文件?

    翻译 By Long Luo 原文链接:Android Audio: Play a WAV file on an AudioTrack 译者注: 1. 因为这是技术文章,所以有些词句使用原文,表达更准 ...

  6. python打开一个本地目录文件路径

    os.path.abspath()os 模块为 python 语言标准库中的 os 模块包含普遍的操作系统功能.主要用于操作本地目录文件.path.abspath()方法用于获取当前路径下的文件. 比 ...

  7. web页面如何播放amr的音频文件

    这个需求由来已久,公司的语音订单很多,每次客服都是从服务器down下语音来听.很不方便..于是我就上网扒拉看有么有什么web播放器能播放amr格式的音频文件,amr百度百科 总之找了很久.,,然后发现 ...

  8. EasyPlayerPro windows播放器本地音频播放音量控制实现

    背景描述 作为一个播放器, 除了能播放视频和声音外,音量控制是绝对不能缺少的功能; 本文在音视频播放的基础上,增加对音量的控制: 实现流程 调用mixerGetDevCaps获取音频输出设备列表; 打 ...

  9. IOS音频1:之采用四种方式播放音频文件(一)AudioToolbox AVFoundation OpenAL AUDIO QUEUE

    本文转载至 http://blog.csdn.net/u014011807/article/details/40187737 在本卷你可以学到什么? 采用四种方法设计应用于各种场合的音频播放器: 基于 ...

随机推荐

  1. Windows I/O模型之一:Select模型

    1.概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock) 四种调用模式: 同步:所谓同步,就是在发出一个功能调用时,在没有得到结果 ...

  2. python调用ice接口

    今天用python调用ice接口,遇到如下提示 ImportError: No module named Ice 解决方案是 set PYTHONPATH=C:\Program Files\ZeroC ...

  3. 转:nginx location匹配规则

    location匹配命令 ~      #波浪线表示执行一个正则匹配,区分大小写~*    #表示执行一个正则匹配,不区分大小写^~    #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配 ...

  4. win7 Oracle 11g安装及安装中遇到的问题

    根据自己的系统从oracle官方下载安装包,官方地址:http://www.oracle.com/index.html win7的oracle 11g 安装包(2个): http://223.20.2 ...

  5. 【原创整理,基于JavaScript的创建对象方式的集锦】

    以下4种方式,是我在项目中最常见的JavaScript的面向对象的方式的开发. 测试一般在微软的工具:http://www.typescriptlang.org/Playground 进行测试,或者使 ...

  6. Roy the Robber

    Problem Description The aspiring Roy the Robber has seen a lot of American movies, and knows that th ...

  7. Maximum Subarray 解答

    Question Find the contiguous subarray within an array (containing at least one number) which has the ...

  8. 剑指offer-面试题4.替换空格

    题目:请实现一个函数,把字符串中的每个空格都替换成"%20".例如输入"We are happy." 则输出"We%20are%20happy.&qu ...

  9. 安全运维之:Linux系统账户和登录安全

    一.合理使用Shell历史命令记录功能 在Linux下可通过history命令查看用户所有的历史操作记录,同时shell命令操作记录默认保存在用户目录下 的.bash_history文件中,通过这个文 ...

  10. Robert Penner's Easing Functions

    Robert Penner's Easing Functions Robert Penner's Easing Functions A collection of swappable function ...