An AVPlayer играет a AVPlayerItem. AVPlayerItem поддерживаются объектами класса AVAsset. Когда вы используете метод playerWithURL:AVPlayer, он автоматически создает AVPlayerItem, поддерживаемый активом, который является подклассом AVAsset с именем AVURLAsset. AVURLAsset имеет свойство URL.
Итак, да, в данном случае вы можете легко получить NSURL текущего воспроизводимого элемента. Вот пример функции, как это сделать:
-(NSURL *)urlOfCurrentlyPlayingInPlayer:(AVPlayer *)player{
// get current asset
AVAsset *currentPlayerAsset = player.currentItem.asset;
// make sure the current asset is an AVURLAsset
if (![currentPlayerAsset isKindOfClass:AVURLAsset.class]) return nil;
// return the NSURL
return [(AVURLAsset *)currentPlayerAsset URL];
}
Не быстрый специалист, но, похоже, это можно сделать быстрее.