Objetivo c: mostrar el progreso del búfer al reproducir audio desde el server remoto

Estoy usando AVPlayer para reproducir audio desde el server remoto.

Quiero mostrar una barra de progreso que muestre el progreso del búfer y el progreso del "time reproducido", como lo hace el MPMoviePlayerController cuando reproduce una película.

¿El AVPlayer tiene algún componente de interfaz de usuario que muestre esta información? Si no, ¿cómo puedo get esta información (estado de almacenamiento intermedio)?

Gracias

¿El AVPlayer tiene algún componente de interfaz de usuario que muestre esta información?

No, no hay ningún componente de interfaz de usuario para AVPlayer.

Si no, ¿cómo puedo get esta información (estado de almacenamiento intermedio)?

Debe AVPlayerItem.loadedTimeRanges

 [yourPlayerItem addObserver:self forKeyPath:@"loadedTimeRanges" options:NSKeyValueObservingOptionNew context:nil]; 

luego usando KVO para mirar

 - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if(object == player.currentItem && [keyPath isEqualToString:@"loadedTimeRanges"]){ NSArray *timeRanges = (NSArray*)[change objectForKey:NSKeyValueChangeNewKey]; if (timeRanges && [timeRanges count]) { CMTimeRange timerange=[[timeRanges objectAtIndex:0]CMTimeRangeValue]; } } } 

timerange.duration es lo que usted espera.

Y tiene que dibujar el progreso del búfer manualmente.

Refs aquí .