简单的音乐播放 导入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);
来源: http://www.phpxs.com/code/1004309/