Has the `externalMetadata` property of `AVPlayerItem` been removed?

(This only started happening as of Xcode 26.)

I know macOS and watchOS don't support this property, but all other platforms do (did?) up until I upgraded Xcode. Now when I compile I get this:

Value of type 'AVPlayerItem' has no member 'externalMetadata'

Answered by DTS Engineer in 859300022

Hey @Suges,

You haven't gone crazy :)

After doing a little more investigating, you can access the externalMetadata property on AVPlayerItem in Xcode 26 if you import AVKit.

I don't think that requirement has changed, is it possible that when you upgraded to Xcode 26 you changed something about the frameworks you were importing?

In any case, you should be unblocked by importing AVKit.

-- Greg

Accepted Answer

Hey @Suges,

Please file a bug report for this issue if you haven't already using Feedback Assistant.

--Greg

I got a very odd response from Apple stating:

Please know that AVPlayerItem never had an externalMetadata property.

...which I don't understand because I've been using it for years...and it's documented right on Apple's own site: externalMetadata.

And here's the article where I learned about the property in the first place:

https://developer.apple.com/documentation/avkit/customizing-the-tvos-playback-experience#Display-Supporting-Metadata

I'm really confused by this Apple response tbh. Got me double-checking if I haven't gone crazy... 🤣

Hey @Suges,

You haven't gone crazy :)

After doing a little more investigating, you can access the externalMetadata property on AVPlayerItem in Xcode 26 if you import AVKit.

I don't think that requirement has changed, is it possible that when you upgraded to Xcode 26 you changed something about the frameworks you were importing?

In any case, you should be unblocked by importing AVKit.

-- Greg

Heyo Greg!

That fixed it! Something has changed though, because that code block hasn't changed since 2023 according to Git...but it was importing AVFoundation. So I guess now you have to use the Kit, not the Foundation!

Cool with me as long as I know now!

Big thanks Greg I really appreciate it.

Has the `externalMetadata` property of `AVPlayerItem` been removed?
 
 
Q