iOS简单的音乐播放 声音播放
2018-07-20 来源:open-open
简单的音乐播放 导入AVFoundation.framework
- (void)viewDidLoad
{
[super viewDidLoad];
//路径
NSString* path = [[NSBundle mainBundle] pathForResource:@"xiguan" ofType:@"mp3"];
//路径->url
NSURL* url = [NSURL fileURLWithPath:path];
_player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
//准备播放
[_player prepareToPlay];
//支持变速
_player.enableRate = YES;
//峰值 平均值
_player.meteringEnabled = YES;
}
//进度
- (IBAction)proSlider:(id)sender{
//当前时间=总时间*slider.value;
float currentTime = _player.duration * _proSlider.value;
[_player setCurrentTime:currentTime];
}
//声道
- (IBAction)panSlider:(id)sender{
_player.pan = _panSlider.value;
}
//速度
- (IBAction)speedSlider:(id)sender{
_player.rate = _speedSlider.value;
}
//声音
- (IBAction)volSlier:(id)sender{
_player.volume = _volSlider.value;
}
- (void)play:(id)sender{
[_player play];
//播放时候开启定时器
_timer = [NSTimer scheduledTimerWithTimeInterval:1/60.0 target:self selector:@selector(refresh) userInfo:nil repeats:YES];
}
- (void)pause:(id)sender{
[_player pause];
//暂定的时候定时器失效
[_timer invalidate];
}
- (void)refresh{
//当前时间/总时间
float pro = _player.currentTime / _player.duration;
[_proSlider setValue:pro animated:YES];
//刷新峰值平均值
[_player updateMeters];
float peak = ([_player peakPowerForChannel:0] + 50) / 50;
float ave = ([_player averagePowerForChannel:0] + 50) / 50;
[_proV setProgress:peak animated:YES];
[_proV2 setProgress:ave animated:YES];
}
/////播放系统声音
SystemSoundID myAlertSound;
NSURL *url = [NSURL URLWithString:@"/System/Library/Audio/UISounds/alarm.caf"];
/*
low_power.caf alarm.caf SentMessage.caf
*/
AudioServicesCreateSystemSoundID((__bridge CFURLRef)(url), &myAlertSound);
AudioServicesPlaySystemSound(myAlertSound);
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇:PHP 图片上传并生成缩略图类
下一篇:根据年和周取得周一的日期
最新资讯
热门推荐