1
我正在使用MPMusicPlayerController systemMusicPlayer播放 音乐,但在跳过歌曲后,我注意到显着的延迟。MPMusicPlayerController系统音乐播放器播放skipToNextItem速度慢滞后
这里是我测量了我的 “滞后”,有时它是更快:
- 1.280796
- 1.210124
- 1.019931
- 1.167739
跳过几首歌曲之后听到声音之前的延迟相当多地增加了 。
-(void)viewDidLoad {
[[MPMusicPlayerController systemMusicPlayer] setQueueWithQuery:[MPMediaQuery songsQuery]];
[[MPMusicPlayerController systemMusicPlayer] prepareToPlay];
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
[notificationCenter addObserver:self selector:@selector(handlePlaybackStateChanged:)
name:MPMusicPlayerControllerPlaybackStateDidChangeNotification object:nil];
[notificationCenter addObserver:self
selector:@selector(handleNowPlayingItemChanged:)
name:MPMusicPlayerControllerNowPlayingItemDidChangeNotification
object:[MPMusicPlayerController systemMusicPlayer]];
[[MPMusicPlayerController systemMusicPlayer] beginGeneratingPlaybackNotifications];
}
-(IBAction)playBtn:(id)sender {
if ([MPMusicPlayerController systemMusicPlayer].playbackState != MPMusicPlaybackStatePlaying) {
[[MPMusicPlayerController systemMusicPlayer] play];
} else {
[[MPMusicPlayerController systemMusicPlayer] pause];
}
}
-(void)skipTrack {
startTrackChange = [NSDate date];
[[MPMusicPlayerController systemMusicPlayer] skipToNextItem];
}
-(void)handleNowPlayingItemChanged:(id)notification {
NSLog(@"%f",[startTrackChange timeIntervalSinceNow]);
}
更多的测试..但它需要的显著量时间。 ( 前10秒以上,你听到任何声音) – Wayne
我创建了一个示例项目,以减少变数, 量仍然问题仍然存在: -0.092157,-0.268869,-0.237229,-0.074643,-0.096063 , -1.218512,-0.189666,-0.164457 这些测量结果不能揭示何时声音实际开始变为可听见,这比测量值多。 IOS10.x有些东西是非常错误的。 – Wayne
我在iPhone6s Plus上测试了IOS音乐应用程序,打开应用程序,选择下载的音乐,然后选择所有歌曲。然后一首歌开始按预期播放,然后我迅速点击下一个按钮几次,然后在一段时间内没有播放。这可能是一个IOS错误。我已经向苹果提交了一个bug,但我不知道他们需要多长时间才能做出回应,如果有的话。 – Wayne