Releases: SRGSSR/srgmediaplayer-apple
Maintenance release
- Fix background video playback incorrectly paused (#113).
Picture in picture opt-in
- Picture in picture is now a controller opt-in, enabled with the
pictureInPictureEnabled
property. This fixes an issue appeared with iOS 14, and which could lead to picture in picture enabled unnecessarily when moving the app to the background (#111).
Lock screen playback and picture and picture fixes for iOS 15
This release fixes two regressions experienced on iOS 15:
- Fix
SRGMediaPlayerViewBackgroundBehaviorDetachedWhenDeviceLocked
view behavior so that playback correctly continues when the device is locked while the view is still visible. - The picture in picture overlay stays visible when locking the device (playback continues on iOS 15 but pauses on earlier versions of iOS).
Maintenance release
- The tvOS 15 player UX has been modernized by Apple, with better overall behavior. As a result some code could be cleanup internally.
Maintenance release
- Fix infinite seek loop issue occurring when a blocked segment covers the end of a media (#103).
iOS 14 compatibility improvement
The workaround for an iOS 14 regression has been improved to support a modal presentation at application launch (#100).
Assertion removal in release builds
Ensure assertions are never fired in release builds.
Reason for segment selection
- In segment and playback notifications, the reason why segment selection occurred is now provided. See
SRGMediaPlayerSelectionReason
.
Swift Package Manager, Catalyst support and tvOS picture in picture
- This release introduces Swift Package Manager (SPM) support, replacing Carthage entirely. To migrate your project please follow instructions for migrating to version 6 of our Letterbox library.
- The library is compatible with Catalyst.
Improved iOS and tvOS 14 compatibility
This release improves compatibility with iOS and tvOS 14, most notably:
- The time slider appearance has been fixed when displayed on a modal with a custom transition animation.
- A potential route detection deadlock has been fixed.
- Picture in picture is available for tvOS.
Note that background video playback does not work on iOS 14.0 and 14.1 because of an iOS bug. This bug will be fixed in iOS 14.2 without requiring any SRG Media Player update.
iOS 14 emergency compatibility
Apple took us by surprise this year. We had reported an iOS 14 regression (player leak due to PiP changes in iOS 14), but this bug was not addressed and iOS 14 released. As a result, playing a video on iOS 14 with SRGMediaPlayerController
is internally leaking an AVPlayer
instance for reasons outside our control.
This release provides a workaround for this issue until we can discuss with Apple about it (if we ever can). It first internally presents an invisible AVPlayerViewController
instance, which magically fixes the issue.
About Xcode 12 support
A proper iOS / tvOS 14 release will be made later. Until then, we recommend you ship your application with Xcode 11.7 if you can. The library can be compiled with Xcode 12 but has not been fully tested yet.
If you still intend to use Xcode 12, note there is an issue with Carthage with a workaround available. The next official release we will deliver will support Xcode 12 and replace Carthage with SPM.
Known issues
iOS 14 breaks background video playback support. This is either desired behavior or a regression. Until we know more the API will be kept as is but will not produce the expected behavior (video playback is paused when transitioning to the background, even if the player layer is detached).
Finally, note that picture in picture is not working for tvOS 14 yet. This feature is planned for a later release.