2016-09-14 17 views
2

AVPlayerを使用してサーバーからオーディオをストリーミングする音楽プレーヤーがありますが、オーディオは再生されますが、オーディオの完了後に新しいオーディオの再生ボタンをクリックすると、ほぼ35〜40秒新しいオーディオを開始します。誰でも助けてくれますか?AVPlayerはオーディオ再生を開始するのに時間がかかります

+2

ポストいくつかのコードあなたは遅れを取っているか.. .. – vaibhav

答えて

1

プレーヤーの状態を知るためにオブザーバーを使用します。 KVOを使用して 、それはプレイヤーのステータスの変化を通知することが可能です:

playButton.enabled = NO; player = [AVPlayer playerWithURL:fileURL]; [player addObserver:self forKeyPath:@"status" options:0 context:nil];

、このメソッドが呼び出されますと、ステータスの変更:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object 
        change:(NSDictionary *)change context:(void *)context { 
if (object == player && [keyPath isEqualToString:@"status"]) { 
    if (player.status == AVPlayerStatusReadyToPlay) { 
     playButton.enabled = YES; 
    } else if (player.status == AVPlayerStatusFailed) { 
     // something went wrong. player.error should contain some information 
    } 
} 

}

+0

AVPlayerStatusReadyToPlayでも、私はオーディオを再生します、私は遅延と時間が5秒あります... NANです...それは正常ですか? –

+0

私はこのために迅速なバージョンを持ってください –

関連する問題