iOS - AudioServicesPlay 短频音效播放
前言
extern void AudioServicesPlayAlertSound(SystemSoundID inSystemSoundID) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
@available(iOS 2.0, *) public func AudioServicesPlayAlertSound(inSystemSoundID: SystemSoundID)
系统声音服务(System Sound Services)提供了一个接口,用于播放不超过 30 秒的声音。它支持的文件格式有限,具体地说只有 CAF、AIF 和使用 PCM 或 IMA/ADPCM 数据的 WAV 文件。由于这些函数没有提供操纵声音和控制音量的功能,所以当你为多媒体或者游戏创建专门的配乐时,不要使用系统声音服务。
iOS 使用系统声音服务来支持三种不同的通知:
- 1、声音:立刻播放一个简单的声音文件。如果手机被设置为静音,用户什么也听不到。
- 2、提醒:播放一个声音文件,如果手机被设置为静音或震动,将通过震动提醒用户。
- 3、震动:震动手机,而不考虑其他设置。
短频音效播放(系统提示音):
- 添加库文件:AudioToolbox.framework
- 包含头文件:#import <AudioToolbox/AudioToolbox.h>
1、短频音效播放
Objective-C
// 添加库文件:AudioToolbox.framework
// 包含头文件:#import <AudioToolbox/AudioToolbox.h> // 声明要保存音效文件的变量
SystemSoundID soundID; // 加载文件
NSURL *fileURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"音效" ofType:@"caf"]];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)(fileURL), &soundID); // 播放短频音效
AudioServicesPlayAlertSound(soundID); // 增加震动效果,如果手机处于静音状态,提醒音将自动触发震动
AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);
Swift
// 添加库文件:AudioToolbox.framework
// 包含头文件:import AudioToolbox // 声明要保存音效文件的变量
var soundID:SystemSoundID = 0 // 加载文件
let fileUrl = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("音效", ofType: "caf")!)
AudioServicesCreateSystemSoundID(fileUrl, &soundID) // 播放短频音效
AudioServicesPlayAlertSound(soundID) // 增加震动效果,如果手机处于静音状态,提醒音将自动触发震动
AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate));
iOS - AudioServicesPlay 短频音效播放的更多相关文章
- iOS开发拓展篇—音效的播放
iOS开发拓展篇—音效的播放 一.简单介绍 简单来说,音频可以分为2种 (1)音效 又称“短音频”,通常在程序中的播放时长为1~2秒 在应用程序中起到点缀效果,提升整体用户体验 (2)音乐 比如游戏中 ...
- iOS开发——音频篇——音效的播放
一.简单介绍 简单来说,音频可以分为2种 (1)音效 又称“短音频”,通常在程序中的播放时长为1~2秒 在应用程序中起到点缀效果,提升整体用户体验 (2)音乐 比如游戏中的“背景音乐”,一般播放时间较 ...
- iOS开发,音效的播放简单实现以及音效播放的简单封装
一.音效的播放简单实现 二.音效播放的封装 -- 封装思路:将生成的SystemSoundID存放到字典中,每次播放的时候从字典中取出对应的SystemSoundID,没有的话再创建 头文件中定义类方 ...
- OC-系统音效播放
一.介绍 AudioToolbox.framework是一套基于C语言的框架,使用它来播放音效其本质是将短音频注册到系统声音服务(System Sound Service).System Soun ...
- 干货|浅谈iOS端短视频SDK技术实现
短视频SDK主要包含"视频录制"和"视频编辑"这两个核心功能. 视频录制包括:视频采集.美颜.滤镜.摄像头切换.视音频采集参数设置等功能: 视频编辑包括:视频导 ...
- iOS 微信 音频 视频自动播放
iOS 微信 音频 视频自动播放 http://www.w3ctech.com/topic/1165
- Unity3d之音效播放和调用手机震动
http://blog.csdn.net/sunshine_1984/article/details/12943979 今天研究了下Unity3d音效播放相关内容,整理下实现细节. 1,添加音效文件到 ...
- iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件
iOS Dev (20) 用 AVAudioPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 步骤 第一步:在 Proj ...
- iOS Dev (21) 用 AVPlayer 播放一个本地音频文件
iOS Dev (21) 用 AVPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 前言 这篇文章与上一篇极其相似,要注 ...
随机推荐
- 使用percona xtradb cluster的IST方式添加新节点
使用percona xtradb cluster的IST(Incremental State Transfer)特性添加新节点,防止新节点加入时使用SST(State SnapShop Transfe ...
- [ios]离屏渲染优化
原文链接:https://mp.weixin.qq.com/s?__biz=MjM5NTIyNTUyMQ==&mid=2709544818&idx=1&sn=62d0d2e9a ...
- Linux上部署Tomcat(包括JAVA环境的配置)
一. 用FTP工具,把apache-tomcat-7.0.64.tar.gz,jdk-7u79-linux-x64.tar.gz 上传到目录/home/zwl/Tomcat/命令下 因为Tomcat运 ...
- [团队项目]第二个冲刺 看板和燃尽图 Sprint2 6.8/6.9/6.10/6.11/6.12/6.13/6.14
1.开始一个新的冲刺: 起止:2016.6.1~2016.6.14 按照以下过程进行 ProductBacklog:继续向下细化 Sprint 计划会议:确定此次冲刺要完成的目标 Sprint Bac ...
- mysql一些常用命令总结
mysql时间戳转日期格式SELECT FROM_UNIXTIME(add_time,'%Y-%m-%d %H:%i:%s') FROM `wh5_username` where id=23; 按in ...
- 周赛-Clique in the Divisibility Graph 分类: 比赛 2015-08-02 09:02 23人阅读 评论(3) 收藏
Clique in the Divisibility Graph time limit per test1 second memory limit per test256 megabytes inpu ...
- 单链表操作B 分类: 链表 2015-06-07 12:42 15人阅读 评论(0) 收藏
数据结构上机测试2-2:单链表操作B TimeLimit: 1000ms Memory limit: 65536K 题目描述 按照数据输入的相反顺序(逆位序)建立一个单链表,并将单链表中重复的元素删除 ...
- 对“Java”的诞生历史、特点、定义等HR常问的简单题
本人是一个学习Java的新手,在学习了Java以后,对Java的一些总结. 这里共有12点对Java的简单的阐述,如果解释的不怎么样请大家谅解哈. 1.首先我们来看一看,在Java之前的有那些打牌语言 ...
- HTTP 错误 404.2 - Not Found
前几天刚安装Windows Server 2008 r2 sp1 遇到问题之后,昨天我又遇到一个问题(但我不害怕有问题),提示: HTTP 错误 404.2 - Not Found由于 Web 服务器 ...
- 学习java annotation
Annotation介绍 内置注解 自定义注解 元注解 /** * 测试自定义注解的使用 * */ @SxtAnnotation01 public class Demo02 { @Annotation ...