2015-10-19 104 views
1

我有一個avaudioplayer加載一個聲音文件和循環。問題是,每次文件循環時,都會有暫停/延遲,這會使音樂聽起來很糟糕。ios刪除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秒和播放喜歡的環這是一首連續的歌曲?

+0

第一次播放文件時,是否有延遲? –

+1

如果第一次播放文件時出現延遲,請嘗試使用音頻編輯器(如audacity)編輯音頻文件,並在實際音頻前後移除空白區域。有時候會在音頻中添加淡入或淡出樣式文件。看看它是否有效。 –

回答

0

T先生在評論中其實是對的。解決方案是修復由車庫樂隊自動添加的空白區域。