1

こんにちはAVQueuePlayer、一連のメディア ファイル (オーディオ、ビデオ) を再生するために使用しています。必要な期間よりも短い場合がPlayItemsあります。つまり、いくつかのアイテムの間に沈黙が必要です。の組み合わせを使用するかaddPeriodicTimeObserverForInterval addBoundaryTimeObserverForTimes、独自の を実行することを検討していNSTimerます。

超正確である必要はありません + または - 1 秒は許容されます。これらのAPI呼び出しを使用してこの種の機能を実現することについて、集合的な知恵があるかどうか疑問に思っていますか?

4

1 に答える 1

1

アイテムの終わりを観察してから、必要に応じて、一定の遅延の後にのみ再生を開始してみませんか?

AVPlayerItem次のような終わりを観察し始めます。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playEnded) name:AVPlayerItemDidPlayToEndTimeNotification object:playerItem];

次に、playEndedメソッドで、待機する必要がある時間を決定し、別のメソッドを呼び出して、遅延後に次のアイテムの再生を開始できます。

-(void)playEnded {
    [self performSelector:@selector(playNextItem) withObject:nil afterDelay:5.0];
}
于 2011-08-11T15:51:02.643 に答える