I would go for NSTimer. Schedule it to run every second while the media is playing, and you can update your interface with the remaining time.
// Place this where you start to play NSTimer * myTimer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateTimeLeft) userInfo:nil repeats:YES];
And create a way to update the interface:
- (void)updateTimeLeft { NSTimeInterval timeLeft = self.player.duration - self.player.currentTime;
source share