You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This release improves support for metadata. This includes features for displaying content information and artworks in custom layouts, but also features that can enhance the user experience during playback.
Metadata
Player provides metadata updates through a new metadata published property. Use this metadata to easily display information about the content being played in custom user interfaces.
Chapters can be associated with content being played. Those provide markers into the content, which can be used for display purposes or to offer alternative ways to navigate the content.
Images are now retrieved by the player directly and do not need to be loaded by a PlayerItem custom publisher anymore (though they still can if this approach is more appropriate). The main artwork for a content as well as images associated with chapters must be provided as ImageSources. URL-based sources are automatically fetched by the player when actually needed, avoiding unnecessary fetches when not used.
Blocked time ranges
Optionally associate blocked time ranges with content being played. These time ranges are automatically skipped during playback. Seeking into them is prevented as well.
Blocked time ranges are displayed as interstitials in the tvOS system playback user interface.
Opening and end credits
Define time ranges associated with opening and closing credits. These time ranges can be used in custom user interfaces, e.g. to display a skip button during credits.
User interface
Add support for contextual actions to SystemVideoView.
Use LazyImage in SwiftUI layouts to display images lazily loaded from an ImageSource. Use LazyUIImage where a UIImage is required instead.
SRG SSR content support improvements
Prevent playback of time ranges blocked by SRG SSR editors, instead of preventing playback of the whole content.
Extract chapters from SRG SSR content.
Display season / episode information in the tvOS system playback user interface.
Increase artwork image quality for SRG SSR content.
Miscellaneous
Update translations.
Add Player.seek(to:completion:) method to seek to a chapter.
Add PlayerConfiguration.default to obtain default player configuration settings.
Make subscript(safeIndex:) available for all Arrays.
Breaking changes
Improve CMTime and CMTimeRange consistency in ProgressTracker, returning .invalid instead of nil when values are not available. Please update your code to check if a time or range isValid rather than testing for nullability.
PlayerItem configuration now happens with a dedicated PlayerItemConfiguration parameter, not with a closure anymore.
Fixes
Avoid undesired automatic Control Center integration on iOS when using the system playback user interface.
Fix Control Center integration on tvOS.
Fix incorrect times returned by a ProgressTracker when playing a DVR livestream at the live edge.
Demo improvements
Display chapters in the custom player user interface on iOS.
Display audio artworks in the custom player user interface on iOS.
Make satellite radio streams available (Radio Swiss Pop, Radio Swiss Jazz and Radio Swiss Classic).
Add examples for integration of a skip button during credits.
Display blocked time ranges in the custom player slider on iOS.
Improve the playlist example on tvOS.
Demo fixes
Improve interactions with the demo custom slider.
Fix custom player interface animation glitches.
Prevent the custom player user interface from being toggled while scrubbing.
Fix player settings not applied until the application is restarted.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
This release improves support for metadata. This includes features for displaying content information and artworks in custom layouts, but also features that can enhance the user experience during playback.
Metadata
Player
provides metadata updates through a newmetadata
published property. Use this metadata to easily display information about the content being played in custom user interfaces.PlayerItem
custom publisher anymore (though they still can if this approach is more appropriate). The main artwork for a content as well as images associated with chapters must be provided asImageSource
s. URL-based sources are automatically fetched by the player when actually needed, avoiding unnecessary fetches when not used.Blocked time ranges
Opening and end credits
User interface
SystemVideoView
.LazyImage
in SwiftUI layouts to display images lazily loaded from anImageSource
. UseLazyUIImage
where aUIImage
is required instead.SRG SSR content support improvements
Miscellaneous
Player.seek(to:completion:)
method to seek to a chapter.PlayerConfiguration.default
to obtain default player configuration settings.subscript(safeIndex:)
available for allArray
s.Breaking changes
CMTime
andCMTimeRange
consistency inProgressTracker
, returning.invalid
instead ofnil
when values are not available. Please update your code to check if a time or rangeisValid
rather than testing for nullability.PlayerItem
configuration now happens with a dedicatedPlayerItemConfiguration
parameter, not with a closure anymore.Fixes
ProgressTracker
when playing a DVR livestream at the live edge.Demo improvements
Demo fixes
What's changed
Full Changelog: 1.0.1...2.0.0
This discussion was created from the release Improved metadata support.
Beta Was this translation helpful? Give feedback.
All reactions