我有一个加载音频文件并循环播放的avaudioplayer。问题在于,每次文件循环播放时,都会出现暂停/延迟,这会使音乐听起来很糟糕。
我发现这个问题也有类似的问题,但适用于2个玩家。我有一个播放器,每个播放器在每个循环中都有1秒的暂停时间:AVAudioPlayer eliminating one second pause between sound files
这是我的音频播放器设置,如下所示:
@interface HomeViewController ()
@property (strong, nonatomic) DataController *dataController;
@end
@implementation HomeViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.dataController = [DataController sharedInstance];
[self createAndStartAudioPlayer];
}
- (void) viewWillAppear:(BOOL)animated{
[self.dataController.player play];
}
- (void) createAndStartAudioPlayer {
NSTimeInterval shortStartDelay = 0.01; // seconds
NSTimeInterval now = self.dataController.player.deviceCurrentTime;
[self.dataController.player playAtTime: now + shortStartDelay];
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@"jingle-loop" ofType:@"mp3"];
NSURL *soundFileURL = [NSURL fileURLWithPath:soundFilePath];
self.dataController.player = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFileURL fileTypeHint:AVFileTypeMPEGLayer3 error:nil];
self.dataController.player.numberOfLoops = -1; //infinite
[self.dataController.player prepareToPlay];
}
如何停止这1秒钟的暂停并像连续歌曲一样播放循环?
最佳答案
T先生的评论实际上是正确的。解决方案是修复由车库乐队自动添加的空白区域。
关于ios - ios删除avaudioplayer循环延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33220023/