AVPlayer を使用してビデオをバッファリングしたいと思います。1 つのビデオを再生し、2 番目のビデオの開始時に遅延が発生しないようにしたいと考えています。1 つのアイデアは、次のコードで AVURLAsset を使用することです。
AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:urlNext options:nil];
NSArray *keys = [NSArray arrayWithObject:@"playable"];
[asset loadValuesAsynchronouslyForKeys:keys completionHandler:^()
{
dispatch_async(dispatch_get_main_queue(), ^
{
AVPlayerItem *nextVideo = [[AVPlayerItem alloc] initWithAsset:asset];
});
}];
このようにして、次のビデオを事前にロードし、最初のビデオが停止したら再生するという考え方です。しかし、今でもこれは機能せず、次のビデオは表示されません。私の考えが正しいかどうか、何がエラーなのか知っていますか? または、AVPlayer を使用してバッファを使用する別のアイデアはありますか? ありがとうございました。