iOS 长短音频的播放
来源:互联网 发布:淘宝假冒商品重新开店 编辑:程序博客网 时间:2024/05/16 14:09
#import <Foundation/Foundation.h>#import <AVFoundation/AVFoundation.h>#import <AudioToolbox/AudioToolbox.h>@interface BaseAVAudioPlayer : NSObject<AVAudioPlayerDelegate>{ AVAudioPlayer *avAudioPlayer; //播放器player}+ (BaseAVAudioPlayer *)sharedManager;/** * 系统 短音频播放 时间<30s * * @param musicName 播放音频的名称 */- (void)avaudioPlayerWithName:(NSString *)musicName;/** * 系统 长音频播放 * * @param musicName 播放音频的名称 */- (void)noavaudioPlayerWithName:(NSString *)musicName;@end
#import "BaseAVAudioPlayer.h"@implementation BaseAVAudioPlayer+ (BaseAVAudioPlayer *)sharedManager{ static BaseAVAudioPlayer *sharedAccountManagerInstance = nil; static dispatch_once_t predicate; dispatch_once(&predicate, ^{ sharedAccountManagerInstance = [[self alloc] init]; }); return sharedAccountManagerInstance;}/** * 系统 短声音播放 时间<30s * * @param musicName 播放音频的名称 */- (void)avaudioPlayerWithName:(NSString *)musicName{ SystemSoundID soundID = 0; NSString *path = [[NSBundle mainBundle] pathForResource:musicName ofType:@"wav"]; if (path) { //注册声音到系统 AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:path],&soundID); AudioServicesPlaySystemSound(soundID); } AudioServicesPlaySystemSound(soundID); //播放注册的声音,(此句代码,可以在本类中的任意位置调用,不限于本方法中)}/** * 系统 长音频播放 * * @param musicName 播放音频的名称 */- (void)noavaudioPlayerWithName:(NSString *)musicName{ //从budle路径下读取音频文件 轻音乐 - 萨克斯回家 这个文件名是你的歌曲名字,mp3是你的音频格式 NSString *string = [[NSBundle mainBundle] pathForResource:musicName ofType:@"wav"]; //把音频文件转换成url格式 NSURL *url = [NSURL fileURLWithPath:string]; if (!url) return;//如果URL不存在,那么就直接返回 if (avAudioPlayer.play) { [avAudioPlayer stop]; avAudioPlayer = nil; } //初始化音频类 并且添加播放文件 avAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil]; //设置初始音量大小 avAudioPlayer.volume = 1; //设置代理 avAudioPlayer.delegate = self; //设置音乐播放次数 -1为一直循环 avAudioPlayer.numberOfLoops = 0; //播放 [avAudioPlayer play];}- (void)dealloc{ avAudioPlayer = nil;}@end
0 0
- iOS 长短音频的播放
- iOS音频的后台播放
- IOS音频的流媒体播放
- iOS开发 -- 音频的播放
- iOS音频播放 (六):简单的音频播放器实现
- iOS音频播放 (六):简单的音频播放器实现
- iOS音频播放 (六):简单的音频播放器实现
- iOS音频播放 (六):简单的音频播放器实现
- iOS音频播放 (六):简单的音频播放器实现
- ios处理播放音频时的中断
- iOS AvPlayer AvAudioPlayer音频的后台播放
- iOS 播放音频的几种方法
- iOS 播放音频的几种方法
- iOS 简单实现音频的播放
- iOS 播放音频的几种方法
- iOS 播放音频的几种方法
- iOS 播放音频的几种方法
- iOS 播放音频的几种方法
- android菜单Menu添加Icon无效问题(android4.0)
- Maven:更改项目依赖jdk的版本
- 标签滚动效果实现,完美视觉体验
- JMeter学习(四)参数化
- 安卓jdk安装
- iOS 长短音频的播放
- C++单链表(殷人昆版)
- EditText限制输入字符串长度
- Android架构须知
- (ubuntu环境下)浏览器(通过cgi)调用外部程序
- 微信支付接入遇到的问题
- java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType
- JMeter学习(五)检查点
- 混音器(AudioMixer):用Unity 5.0混合出美妙节拍