OSX/iOS 播放系统声音
方法1:
系统会自带了些声音,有时候一些操作用必要自己播放一下声音提醒一下,用bash的直接say something就ok了,写代码的时候呢?原来很简单的,一句:
[[NSSound soundNamed:@"Hero"] play];
就ok了, 其中Hero是文件名,具体都有啥文件名去这里找
/System/Library/Sounds
一般的文件名列表:
Basso
Blow
Bottle
Frog
Funk
Glass
Hero
Morse
Ping
Pop
Purr
Sosumi
Submarine
Tink
哎,so easy
译自:Playing system sounds, 转自Rainbird的个人博客
方法二:
There are some predefined system sounds, for the system sound ID in the range 1000 to 2000 (decimal), as shown below (from 2.0 to 5.0 beta). The system sounds are all stored in
/System/Library/Audio/UISounds/
| Sound ID | File name (iPhone) | File name (iPod Touch) | Category | Note |
|---|---|---|---|---|
| 1000 | new-mail.caf | new-mail.caf | MailReceived | |
| 1001 | mail-sent.caf | mail-sent.caf | MailSent | |
| 1002 | Voicemail.caf | Voicemail.caf | VoicemailReceived | |
| 1003 | ReceivedMessage.caf | ReceivedMessage.caf | SMSReceived | |
| 1004 | SentMessage.caf | SentMessage.caf | SMSSent | |
| 1005 | alarm.caf | sq_alarm.caf | CalendarAlert | |
| 1006 | low_power.caf | low_power.caf | LowPower | |
| 1007 | sms-received1.caf | sms-received1.caf | SMSReceived_Alert | |
| 1008 | sms-received2.caf | sms-received2.caf | SMSReceived_Alert | |
| 1009 | sms-received3.caf | sms-received3.caf | SMSReceived_Alert | |
| 1010 | sms-received4.caf | sms-received4.caf | SMSReceived_Alert | |
| 1011 | - | - | SMSReceived_Vibrate | |
| 1012 | sms-received1.caf | sms-received1.caf | SMSReceived_Alert | |
| 1013 | sms-received5.caf | sms-received5.caf | SMSReceived_Alert | |
| 1014 | sms-received6.caf | sms-received6.caf | SMSReceived_Alert | |
| 1015 | Voicemail.caf | Voicemail.caf | - | Available since 2.1 |
| 1016 | tweet_sent.caf | tweet_sent.caf | SMSSent | Available since 5.0 |
| 1020 | Anticipate.caf | Anticipate.caf | SMSReceived_Alert | Available since 4.2 |
| 1021 | Bloom.caf | Bloom.caf | SMSReceived_Alert | Available since 4.2 |
| 1022 | Calypso.caf | Calypso.caf | SMSReceived_Alert | Available since 4.2 |
| 1023 | Choo_Choo.caf | Choo_Choo.caf | SMSReceived_Alert | Available since 4.2 |
| 1024 | Descent.caf | Descent.caf | SMSReceived_Alert | Available since 4.2 |
| 1025 | Fanfare.caf | Fanfare.caf | SMSReceived_Alert | Available since 4.2 |
| 1026 | Ladder.caf | Ladder.caf | SMSReceived_Alert | Available since 4.2 |
| 1027 | Minuet.caf | Minuet.caf | SMSReceived_Alert | Available since 4.2 |
| 1028 | News_Flash.caf | News_Flash.caf | SMSReceived_Alert | Available since 4.2 |
| 1029 | Noir.caf | Noir.caf | SMSReceived_Alert | Available since 4.2 |
| 1030 | Sherwood_Forest.caf | Sherwood_Forest.caf | SMSReceived_Alert | Available since 4.2 |
| 1031 | Spell.caf | Spell.caf | SMSReceived_Alert | Available since 4.2 |
| 1032 | Suspense.caf | Suspense.caf | SMSReceived_Alert | Available since 4.2 |
| 1033 | Telegraph.caf | Telegraph.caf | SMSReceived_Alert | Available since 4.2 |
| 1034 | Tiptoes.caf | Tiptoes.caf | SMSReceived_Alert | Available since 4.2 |
| 1035 | Typewriters.caf | Typewriters.caf | SMSReceived_Alert | Available since 4.2 |
| 1036 | Update.caf | Update.caf | SMSReceived_Alert | Available since 4.2 |
| 1050 | ussd.caf | ussd.caf | USSDAlert | |
| 1051 | SIMToolkitCallDropped.caf | SIMToolkitCallDropped.caf | SIMToolkitTone | |
| 1052 | SIMToolkitGeneralBeep.caf | SIMToolkitGeneralBeep.caf | SIMToolkitTone | |
| 1053 | SIMToolkitNegativeACK.caf | SIMToolkitNegativeACK.caf | SIMToolkitTone | |
| 1054 | SIMToolkitPositiveACK.caf | SIMToolkitPositiveACK.caf | SIMToolkitTone | |
| 1055 | SIMToolkitSMS.caf | SIMToolkitSMS.caf | SIMToolkitTone | |
| 1057 | Tink.caf | Tink.caf | PINKeyPressed | |
| 1070 | ct-busy.caf | ct-busy.caf | AudioToneBusy | There was no category for this sound before 4.0. |
| 1071 | ct-congestion.caf | ct-congestion.caf | AudioToneCongestion | There was no category for this sound before 4.0. |
| 1072 | ct-path-ack.caf | ct-path-ack.caf | AudioTonePathAcknowledge | There was no category for this sound before 4.0. |
| 1073 | ct-error.caf | ct-error.caf | AudioToneError | There was no category for this sound before 4.0. |
| 1074 | ct-call-waiting.caf | ct-call-waiting.caf | AudioToneCallWaiting | There was no category for this sound before 4.0. |
| 1075 | ct-keytone2.caf | ct-keytone2.caf | AudioToneKey2 | There was no category for this sound before 4.0. |
| 1100 | lock.caf | sq_lock.caf | ScreenLocked | |
| 1101 | unlock.caf | sq_lock.caf | ScreenUnlocked | |
| 1102 | - | - | FailedUnlock | |
| 1103 | Tink.caf | sq_tock.caf | KeyPressed | |
| 1104 | Tock.caf | sq_tock.caf | KeyPressed | |
| 1105 | Tock.caf | sq_tock.caf | KeyPressed | |
| 1106 | beep-beep.caf | sq_beep-beep.caf | ConnectedToPower | |
| 1107 | RingerChanged.caf | RingerChanged.caf | RingerSwitchIndication | |
| 1108 | photoShutter.caf | photoShutter.caf | CameraShutter | |
| 1109 | shake.caf | shake.caf | ShakeToShuffle | Available since 3.0 |
| 1110 | jbl_begin.caf | jbl_begin.caf | JBL_Begin | Available since 3.0 |
| 1111 | jbl_confirm.caf | jbl_confirm.caf | JBL_Confirm | Available since 3.0 |
| 1112 | jbl_cancel.caf | jbl_cancel.caf | JBL_Cancel | Available since 3.0 |
| 1113 | begin_record.caf | begin_record.caf | BeginRecording | Available since 3.0 |
| 1114 | end_record.caf | end_record.caf | EndRecording | Available since 3.0 |
| 1115 | jbl_ambiguous.caf | jbl_ambiguous.caf | JBL_Ambiguous | Available since 3.0 |
| 1116 | jbl_no_match.caf | jbl_no_match.caf | JBL_NoMatch | Available since 3.0 |
| 1117 | begin_video_record.caf | begin_video_record.caf | BeginVideoRecording | Available since 3.0 |
| 1118 | end_video_record.caf | end_video_record.caf | EndVideoRecording | Available since 3.0 |
| 1150 | vc~invitation-accepted.caf | vc~invitation-accepted.caf | VCInvitationAccepted | Available since 4.0 |
| 1151 | vc~ringing.caf | vc~ringing.caf | VCRinging | Available since 4.0 |
| 1152 | vc~ended.caf | vc~ended.caf | VCEnded | Available since 4.0 |
| 1153 | ct-call-waiting.caf | ct-call-waiting.caf | VCCallWaiting | Available since 4.1 |
| 1154 | vc~ringing.caf | vc~ringing.caf | VCCallUpgrade | Available since 4.1 |
| 1200 | dtmf-0.caf | dtmf-0.caf | TouchTone | |
| 1201 | dtmf-1.caf | dtmf-1.caf | TouchTone | |
| 1202 | dtmf-2.caf | dtmf-2.caf | TouchTone | |
| 1203 | dtmf-3.caf | dtmf-3.caf | TouchTone | |
| 1204 | dtmf-4.caf | dtmf-4.caf | TouchTone | |
| 1205 | dtmf-5.caf | dtmf-5.caf | TouchTone | |
| 1206 | dtmf-6.caf | dtmf-6.caf | TouchTone | |
| 1207 | dtmf-7.caf | dtmf-7.caf | TouchTone | |
| 1208 | dtmf-8.caf | dtmf-8.caf | TouchTone | |
| 1209 | dtmf-9.caf | dtmf-9.caf | TouchTone | |
| 1210 | dtmf-star.caf | dtmf-star.caf | TouchTone | |
| 1211 | dtmf-pound.caf | dtmf-pound.caf | TouchTone | |
| 1254 | long_low_short_high.caf | long_low_short_high.caf | Headset_StartCall | |
| 1255 | short_double_high.caf | short_double_high.caf | Headset_Redial | |
| 1256 | short_low_high.caf | short_low_high.caf | Headset_AnswerCall | |
| 1257 | short_double_low.caf | short_double_low.caf | Headset_EndCall | |
| 1258 | short_double_low.caf | short_double_low.caf | Headset_CallWaitingActions | |
| 1259 | middle_9_short_double_low.caf | middle_9_short_double_low.caf | Headset_TransitionEnd | |
| 1300 | Voicemail.caf | Voicemail.caf | SystemSoundPreview | |
| 1301 | ReceivedMessage.caf | ReceivedMessage.caf | SystemSoundPreview | |
| 1302 | new-mail.caf | new-mail.caf | SystemSoundPreview | |
| 1303 | mail-sent.caf | mail-sent.caf | SystemSoundPreview | |
| 1304 | alarm.caf | sq_alarm.caf | SystemSoundPreview | |
| 1305 | lock.caf | sq_lock.caf | SystemSoundPreview | |
| 1306 | Tock.caf | sq_tock.caf | KeyPressClickPreview | The category was SystemSoundPreview before 3.2. |
| 1307 | sms-received1.caf | sms-received1.caf | SMSReceived_Selection | |
| 1308 | sms-received2.caf | sms-received2.caf | SMSReceived_Selection | |
| 1309 | sms-received3.caf | sms-received3.caf | SMSReceived_Selection | |
| 1310 | sms-received4.caf | sms-received4.caf | SMSReceived_Selection | |
| 1311 | - | - | SMSReceived_Vibrate | |
| 1312 | sms-received1.caf | sms-received1.caf | SMSReceived_Selection | |
| 1313 | sms-received5.caf | sms-received5.caf | SMSReceived_Selection | |
| 1314 | sms-received6.caf | sms-received6.caf | SMSReceived_Selection | |
| 1315 | Voicemail.caf | Voicemail.caf | SystemSoundPreview | Available since 2.1 |
| 1320 | Anticipate.caf | Anticipate.caf | SMSReceived_Selection | Available since 4.2 |
| 1321 | Bloom.caf | Bloom.caf | SMSReceived_Selection | Available since 4.2 |
| 1322 | Calypso.caf | Calypso.caf | SMSReceived_Selection | Available since 4.2 |
| 1323 | Choo_Choo.caf | Choo_Choo.caf | SMSReceived_Selection | Available since 4.2 |
| 1324 | Descent.caf | Descent.caf | SMSReceived_Selection | Available since 4.2 |
| 1325 | Fanfare.caf | Fanfare.caf | SMSReceived_Selection | Available since 4.2 |
| 1326 | Ladder.caf | Ladder.caf | SMSReceived_Selection | Available since 4.2 |
| 1327 | Minuet.caf | Minuet.caf | SMSReceived_Selection | Available since 4.2 |
| 1328 | News_Flash.caf | News_Flash.caf | SMSReceived_Selection | Available since 4.2 |
| 1329 | Noir.caf | Noir.caf | SMSReceived_Selection | Available since 4.2 |
| 1330 | Sherwood_Forest.caf | Sherwood_Forest.caf | SMSReceived_Selection | Available since 4.2 |
| 1331 | Spell.caf | Spell.caf | SMSReceived_Selection | Available since 4.2 |
| 1332 | Suspense.caf | Suspense.caf | SMSReceived_Selection | Available since 4.2 |
| 1333 | Telegraph.caf | Telegraph.caf | SMSReceived_Selection | Available since 4.2 |
| 1334 | Tiptoes.caf | Tiptoes.caf | SMSReceived_Selection | Available since 4.2 |
| 1335 | Typewriters.caf | Typewriters.caf | SMSReceived_Selection | Available since 4.2 |
| 1336 | Update.caf | Update.caf | SMSReceived_Selection | Available since 4.2 |
| 1350 | - | - | RingerVibeChanged | |
| 1351 | - | - | SilentVibeChanged | |
| 4095 | - | - | Vibrate | There was no category for this sound before 2.2. In the SDK this is the constant kSystemSoundID_Vibrate. |
SystemSoundID myAlertSound;
NSURL *url = [NSURL URLWithString:@"/System/Library/Audio/UISounds/begin_video_record.caf"];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)(url), &myAlertSound);
AudioServicesPlaySystemSound(myAlertSound);
调用方法二:
NSString *path = [[NSBundle bundleWithIdentifier:@"com.apple.UIKit"] pathForResource:@"Tock" ofType:@"aiff"];
if (path) {
SystemSoundID theSoundID;
OSStatus error = AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:path], &theSoundID);
if (error == kAudioServicesNoError) {
AudioServicesPlaySystemSound(theSoundID);
}else{
NSLog(@"Failed to create sound ");
}
}
OSX/iOS 播放系统声音的更多相关文章
- iOS播放系统声音和震动
在需要声音的类的.h文件中添加 #import <AudioToolbox/AudioToolbox.h>static SystemSoundID shake_sound_male ...
- iOS 之播放系统声音
导入框架: 代码: #import <UIKit/UIKit.h> #import <AudioToolbox/AudioToolbox.h> @interface MsgPl ...
- iOS调用系统声音与振动
如何调用系统声音?[iphone 调用系统铃声与震动功能] 首先要在工程里加入Audio Toolbox framework这个库,然后在需要调用的文件里#import <AudioToolbo ...
- IOS调用系统声音(键盘声音)
#import <AudioToolbox/AudioToolbox.h> AudioServicesPlaySystemSound(1106); 注:括号中为系统声音的id,详见 htt ...
- iOS 播放系统自带铃声
播放声音代码例子 https://github.com/baitongtong/git-.git 给一个国外网址,苹果系统铃声以及自定义铃声免登陆免费下载:http://www.zedge.net/r ...
- iOS 实现后台 播放音乐声音 AVAudioPlayer 以及铃声设置(循环播放震动)
1.步骤一:在Info.plist中,添加"Required background modes"键,value为:App plays audio 或者: 步骤二: - (BOOL) ...
- iOS系统声音服务(System Sound Services)
系统声音服务(System Sound Services)提供了一个接口,用于播放不超过30秒的声音.它支持的文件格式有限,具体地说只有CAF.AIF和使用PCM或IMA/ADPCM数据的WAV文件. ...
- ios开发——实用技术篇Swift篇&系统声音
系统声音 // MARK: - 系统声音 /*----- 系统声音 ------*/ @IBAction func systemSound() { //建立的SystemSoundID对象 var s ...
- iOS 接收新消息通知调用系统声音 震动
添加系统框架: #import <AudioToolbox/AudioToolbox.h> 调用震动代码: AudioServicesPlaySystemSound(kSystemSoun ...
随机推荐
- node 上传文件 路径 重命名等问题
最近在学习node,想做一个简单的网站.首先想到的是上传文件的功能,查了下,发现有一个formidable模块,操作方便,便拿来尝试了一下,结果很纠结. 下载安装的就不用说了,用npm即可.说一下,自 ...
- Advanced Replication同步复制实验(基于Trigger&基于Materialized View)
1. 高级复制和流复制介绍 1.1 高级复制(Advanced Replication) 高级复制也称为对称复制,分为多主体站点复制(Multiple Master Rplication).物化视图站 ...
- jquery简单判断PC端还是移动端
$(function(){ if (!navigator.userAgent.match(/mobile/i)) { //PC端 }else{ //移动端 } })
- iOS设计模式——单例模式
单例模式用于当一个类只能有一个实例的时候, 通常情况下这个“单例”代表的是某一个物理设备比如打印机,或是某种不可以有多个实例同时存在的虚拟资源或是系统属性比如一个程序的某个引擎或是数据.用单例模式加以 ...
- XMLHttpRequest对象的使用
1.首先要创建XMLHttpRequest对象,这个对象是前台与后台进行异步的重要对象,现在的浏览器有很多种,创建 XMLHttpRequest 的方法也不相同,所以为了兼容各种浏览器,在创建XMLH ...
- BZOJ 1483: [HNOI2009]梦幻布丁( 链表 + 启发式合并 )
把相同颜色的串成一个链表, 然后每次A操作就启发式合并, 然后计算对答案的影响. ----------------------------------------------------------- ...
- 记录:sea.js和require.js配置 与 性能对比
最近有点忙,很久无写博客,记录一下之前的配置require.js和sea.js的配置.(有误有望提出 require.js 文件目录 /app(项目使用js) /lib(require.js jq存放 ...
- hdu 4638 Group 莫队算法
题目链接 很裸的莫队, 就不多说了... #include<bits/stdc++.h> using namespace std; #define pb(x) push_back(x) # ...
- KVO 的使用和举例
KVO(key-value Observer),通过命名可以联想到,一个监视着监视着键值配对,让一个对象A来监视另一个对象B中的键值,一旦B中的受监视键所对应的值发生了变化,对象A会进入一个回调函数, ...
- SumoLogic
SumoLogic>>>Loggly. https://diyunpeng.loggly.com/setup MonitorWare http://www.monitorware.c ...