4

ビデオのストリーミング中にバッファリングされたデータの量を検出する方法はありMPMoviePlayerControllerますか?

すでに確認しましloadStateたが、バッファリングに関する十分な情報が得られません。

Youtubeのアプリはまさに私が欲しいものを持っています...

4

1 に答える 1

7

動画の再生中に動画アクセス ログの取得を試みることができます。

- (void)calculateBufferSize
{
    NSArray *events = self.moviePlayerController.accessLog.events;
    int count = events.count;
    for (int i = 0; i < count; i++)
    {
        MPMovieAccessLogEvent *currentEvent = [events objectAtIndex:i];
        int64_t byte = currentEvent.numberOfBytesTransferred;
        int64_t bytes = currentEvent.numberOfBytesTransferred >> 10;

        NSLog(@"byte = %f M bytes = %lld", (float)byte / (1024 * 1024), bytes);
    }
}

次に、次のようにして上記を呼び出すことができます。

[NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(calculateBufferSize) userInfo:nil repeats:YES];

[self.moviePlayerController play];

https://developer.apple.com/library/ios/#DOCUMENTATION/MediaPlayer/Reference/MPMovieAccessLog_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40010561

于 2013-01-23T05:55:09.670 に答える