2012-03-28 2 views
0

Я использую эти методы для воспроизведения видео с AVPlayer:AVPlayer поток статус

 audioPlayer = [[AVPlayer playerWithURL:[NSURL URLWithString:url]] retain]; 
     avPlayerLayer = [[AVPlayerLayer playerLayerWithPlayer:audioPlayer] retain]; 
     [avPlayerLayer setFrame:self.view.bounds]; 

     [audioPlayer play]; 

Я ищу способ, чтобы получить уведомление каждого время в процессе потока (что-то вроде 1%, 10%, 25% , 50%, 60% ......), могу ли я получить что-то вроде этого от AVPlayer ??

ответ

1

Посмотрите на документацию, вы должны реализовать этот метод:

http://developer.apple.com/library/mac/#documentation/AVFoundation/Reference/AVPlayer_Class/Reference/Reference.html#//apple_ref/occ/instm/AVPlayer/addPeriodicTimeObserverForInterval:queue:usingBlock:

Пример:

[mPlayer addPeriodicTimeObserverForInterval:CMTimeMake(1, 1) 
     queue:NULL 
     usingBlock:^(CMTime time){ 
      NSLog(@"%lld %d ",mPlayer.currentTime.value,mPlayer.currentTime.timescale); 
     } 
]; 

Чтобы получить общее время видео, которое вы можете сделать:

mPlayer.currentItem.duration 

Также вы можете получить текущее время от товара:

mPlayer.currentItem.currentTime 

Edit:

взглянуть на CurrentItem reference

вы, вероятно, хотите какой-то способ, как:

loadedTimeRanges

+0

ОК, это игровое время процесса, но что Я ищу процесс загрузки, который быстро от игры. – MTA

+0

Хорошо, я отредактировал ответ, вы можете получить информацию об этом предмете. Вы можете получить массивы из того, что уже загружено, и так далее. – ggrana

Смежные вопросы