ios删除avaudioplayer循环延迟

ios删除avaudioplayer循环延迟,ios,objective-c,audio,avaudioplayer,Ios,Objective C,Audio,Avaudioplayer,我有一个avaudioplayer,可以加载声音文件并循环播放。问题是每次文件循环时,都会出现暂停/延迟,这会使音乐听起来很糟糕 我发现这个问题也有类似的问题,但只针对两名球员。我有一个播放器,每个循环有1秒的暂停: 以下是我的音频播放器设置: @interface HomeViewController () @property (strong, nonatomic) DataController *dataController; @end @implementation HomeView

我有一个avaudioplayer,可以加载声音文件并循环播放。问题是每次文件循环时,都会出现暂停/延迟,这会使音乐听起来很糟糕

我发现这个问题也有类似的问题,但只针对两名球员。我有一个播放器,每个循环有1秒的暂停:

以下是我的音频播放器设置:

@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];


}

我如何停止这一秒的停顿,像播放一首连续的歌曲一样播放循环?

评论中的T先生实际上是对的。解决方案是修复车库乐队自动添加的空白。

评论中的T先生实际上是对的。解决方案是修复garage band自动添加的空白。

第一次播放文件时,是否也有延迟?如果第一次播放文件时有延迟,尝试使用音频编辑器(如audacity)编辑音频文件,并删除实际音频前后的空白。有时会在音频文件中添加淡入或淡出样式。查看是否有效。首次播放文件时,是否也有延迟?如果首次播放文件时有延迟,请尝试使用音频编辑器(如audacity)编辑音频文件,并删除实际音频前后的空白。有时会在音频文件中添加淡入或淡出样式。看看它是否有效。