div # Wowza Flowplayer Apple SDK release notes The Wowza Flowplayer Apple SDK includes a native media player written entirely in Swift. The SDK provides an easy-to-use API that enables developers to create iOS and tvOS applications that use the Wowza Flowplayer to play audio and video locally and over the internet. You can refer to this page for information about software updates, including new features and improved functionality. info We occasionally have internal releases that don't impact external audiences, so we don't publish release notes for internal changes. In these cases, the current version information on this page may not match the latest release note. For more information about release versions, see [GitHub releases](https://github.com/flowplayer/apple-sdk-releases/releases). * See [Wowza Flowplayer release notes](/docs/wowza-flowplayer/release-notes/) for more. * See [Wowza Flowplayer Android SDK release notes](/docs/wowza-flowplayer/android-sdk/release-notes/) for more. ## New features and functionality ### March 6, 2025 We made various improvements to better capture and enable reporting for analytics events when using the Wowza Flowplayer Apple SDK. Details of these changes are summarized as follows: * Updated `display` events for Wowza Video platform media loaded with the Apple SDK. In this context, the `display` event only fires when the player loads a new media ID for a Wowza Video live stream or video. Display events for the Apple SDK are visible under **Analytics** > **Historic** tab > **Popularity** section in Wowza Video. For more, see Historic Analytics. * Updated the `source` event to fire only when a unique source URL is loaded each time you render the player. With these changes, we added: * A new [sourceHistoryList](/docs/wowza-flowplayer/apple-sdk/manage-media-playback/#flowplayerapi) property. * The [didReceiveSource](/docs/wowza-flowplayer/apple-sdk/listen-for-events/#state-position-source-duration-and-rate-events) FlowplayerDelegate event. * The [flowplayerDidReceiveSource](/docs/wowza-flowplayer/apple-sdk/listen-for-events/#player-notifications) player notification. * Updated the Apple SDK to leverage the os.Logger class for improved log messaging with metadata details in Xcode. * Compiled the Apple SDK with Xcode 16 and confirmed compatibility with iOS 18 and tvOS 18. For more, see [About the Apple SDK](/docs/wowza-flowplayer/apple-sdk/about-the-apple-sdk/). ### August 15, 2024 * Implemented code signing for our XCFrameworks to verify the origin and enhance the security of our Apple SDK. For steps to inspect the code signature, see Verifying the origin of your XCFrameworks. We provide the fingerprint for each release in our apple-sdk repository. ### July 3, 2024 **Wowza Flowplayer Apple SDK v4.7.0** We added Google Interactive Media Ads Dynamic Ad Insertion (IMA DAI) SDK support to the Wowza Flowplayer Apple SDK. With this update, you can use the IMA DAI SDK to inject server-side ads into your player and your iOS and tvOS applications. We support both Full service and Pod serving DAI solutions from Google. info DAI Pod Serving is a beta intended for Ad Manager publishers and video technology partners who either have an in-house manifest manipulation service or are currently using third-party manifest manipulation that's already integrated with DAI. For more details about this feature and how to work with it, see the following articles: * [Load DAI media](/docs/wowza-flowplayer/apple-sdk/set-up-the-player/#add-dai-media) * [Server-side ad insertion for iOS](/docs/wowza-flowplayer/apple-sdk/ios-features/server-side-ad-insertion/) * [Server-side ad insertion for tvOS](/docs/wowza-flowplayer/apple-sdk/tvos-features/server-side-ad-insertion/) * [Listen to events with the FlowplayerDAIDelegate](/docs/wowza-flowplayer/apple-sdk/listen-for-events/#flowplayerdaidelegate) * [Listen to events with DAI stream notifications](/docs/wowza-flowplayer/apple-sdk/listen-for-events/#dai-stream-notifications) * [Manage media playback > FlowplayerAPI methods](/docs/wowza-flowplayer/apple-sdk/manage-media-playback/#methods) * [Handle DAI stream errors with the AdError type](/docs/wowza-flowplayer/apple-sdk/handle-errors/#aderror) * [Supported features > Bookmarking for iOS](/docs/wowza-flowplayer/apple-sdk/ios-features/server-side-ad-insertion/#bookmarking) * [Supported features > Snapback for iOS](/docs/wowza-flowplayer/apple-sdk/ios-features/server-side-ad-insertion/#snapback) * [Supported features > Bookmarking for tvOS](/docs/wowza-flowplayer/apple-sdk/tvos-features/server-side-ad-insertion/#bookmarking) * [Supported features > Snapback for tvOS](/docs/wowza-flowplayer/apple-sdk/tvos-features/server-side-ad-insertion/#snapback) Additionally, our iOS demo application and tvOS demo application were updated with DAI VOD and live stream examples. ### April 2, 2024 **Wowza Flowplayer Apple SDK v4.6.4** * Updated the Google IMA SDK for iOS dependency to version 3.20.0. For more, see [Client-side ad insertion for iOS](/docs/wowza-flowplayer/apple-sdk/ios-features/client-side-ad-insertion/). * Updated the Google IMA SDK for tvOS dependency to version 4.11.1. For more, see [Client-side ad insertion for tvOS](/docs/wowza-flowplayer/apple-sdk/tvos-features/client-side-ad-insertion/). ### February 16, 2024 **Wowza Flowplayer Apple SDK v4.6.2** * Fixed an issue related to the `WebViewControls` implementation that could affect memory and crash the SDK when too many events are emitted. ### January 30, 2024 **Wowza Flowplayer Apple SDK v4.6.1** * Fixed an issue related to the `WebViewControls` implementation that caused `ArrayBuffer` overflow and runtime errors. ### January 17, 2024 **Wowza Flowplayer Apple SDK v4.6.0** * Overhauled how we report ad errors and improved debugging to better identify issues that cause ads not to be displayed. * Added a new `IMAMetadata` object that contains valuable metadata about the current Interactive Media Ads (IMA) instance responsible for showing the ads. The following pages were updated due to changes in this release: * [FlowplayerAdDelegate](/docs/wowza-flowplayer/apple-sdk/listen-for-events/#flowplayeraddelegate) * [Advertisement notifications](/docs/wowza-flowplayer/apple-sdk/listen-for-events/#advertisement-notifications) * [iOS features > Client-side ad insertion](/docs/wowza-flowplayer/apple-sdk/ios-features/client-side-ad-insertion/#set-up-adschedulewaterfall) * [tvOS features > Client-side ad insertion](/docs/wowza-flowplayer/apple-sdk/tvos-features/client-side-ad-insertion/#set-up-adschedulewaterfall) * [Error handling > IMAMetadata object](/docs/wowza-flowplayer/apple-sdk/handle-errors/#imametadata-object) ### December 20, 2023 **Wowza Flowplayer Apple SDK v4.5.0** * Fixed an issue with WebView controls that prevented the mute button from reflecting the correct state when toggling the `isMuted` property. * Fixed an issue with the `AdScheduleWaterfall` and `AdScheduleRemote` initializers to make them public. For more, see [Client-side ad insertion](/docs/wowza-flowplayer/apple-sdk/ios-features/client-side-ad-insertion/). ### December 1, 2023 **Wowza Flowplayer Apple SDK v4.4.0** * Added [support for a new iOS and tvOS feature](/docs/wowza-flowplayer/apple-sdk/about-the-apple-sdk/#supported-features) that better handles multiple player instances when they're incorporated in the same view simultaneously. For more, learn how to work with [multiple players in your iOS](/docs/wowza-flowplayer/apple-sdk/ios-features/multiple-players/) or [multiple players in your tvOS](/docs/wowza-flowplayer/apple-sdk/tvos-features/multiple-player-managers/) applications. As part of this enhancement, the following changes were made to the Wowza Flowplayer Apple SDK: * Fixed an issue with incorrect progress bar displays when multiple player instances exist in the same view. * Improved the example application to include a demonstration of working with multiple player instances. * Added a new `id` property to the `FlowplayerAPI` protocol that can be used to identify a specific instance of the player. For more, see [Flowplayer API properties](/docs/wowza-flowplayer/apple-sdk/manage-media-playback/#properties). * Updated notification events sent from the `FlowplayerAPI` protocol and `FlowplayerView` and `AdService` classes to include `userInfo` with player ID that triggered the notification. * Fixed an issue causing the player to resume playback automatically after it's paused and moved to the background. As part of these changes, we: * Added a new `background` playback state to better indicate the player's paused state. * Disabled the player's previous behavior that automatically resumed playback when its `enableBackgroundPlayback` was `false` and the player was in the `pause` state. * Improved the example application to showcase this new behavior for the `background` playback state. * Updated the [Background playback](/docs/wowza-flowplayer/apple-sdk/ios-features/background-playback/#listen-to-the-background-state) page to include an example of how to listen to the new `background` playback state and resume video play when an app returns to the foreground. ### November 7, 2023 **Wowza Flowplayer Apple SDK v4.3.2** This release contains internal changes and minor fixes that don't affect the public API. For more, see the [changelog](https://github.com/flowplayer/apple-sdk/releases/tag/4.3.2). ### November 3, 2023 **Wowza Flowplayer Apple SDK v4.3.1** * Fixed an issue that cleared the player's state when it was forcefully stopped or halted. For more, read about the `stop()` method in the [Flowplayer API Methods](/docs/wowza-flowplayer/apple-sdk/manage-media-playback/#methods) section. ### October 30, 2023 **Wowza Flowplayer Apple SDK v4.3.0** * Added a new `halted` player state. This state is emitted when playback is forcefully aborted using the `stop()` method. For more, see the [FlowplayerAPI Methods](/docs/wowza-flowplayer/apple-sdk/manage-media-playback/#methods) section. * Fixed a previous limitation so there's no longer a need to use the `stop()` method when destroying the player. The player now uses Swift's Automatic Reference Counting (ARC) to automatically destroy itself. * Fixed the player so it doesn't discard the `idle` state from the `stateList` after the initial load. * Fixed the player so it reports a `failure` instead of an `idle` state when playback is unsuccessful. * Fixed the internal logger which was creating a zombie object that could lead to memory leaks or unexpected behaviors. ### October 19, 2023 **Wowza Flowplayer Apple SDK v4.2.2** * Fixed an issue with the `WebViewControls` class that caused controls to freeze when returning from the background to the foreground. * Fixed an issue with some player events that were not properly triggered on iOS 16 and iOS 17. ### October 12, 2023 **Wowza Flowplayer Apple SDK v4.2.1** * Fixed an issue with `ControlsConfig.Builder.setMuteControl()` method since it did not respect the set value. * Deprecated the `ControlsConfig.Builder.setVolumeControl()` method that toggles volume control visibility for the player's built-in controls. ### October 3, 2023 **Wowza Flowplayer Apple SDK v4.2.0** * Added a new error case to capture when the player fails if used with `MediaOVP`. * Fixed an issue with a memory leak caused by an internal service. ### September 28, 2023 **Wowza Flowplayer Apple SDK v4.1.1** * Fixed an issue with the controls where the subtitles and audio picker didn't display. * Fixed an issue with `FlowplayerDelegate` not being called for certain `mute`, `volume`, and `rate` events. ### September 21, 2023 **Wowza Flowplayer Apple SDK v4.1.0** * Updated the Apple SDK to be compatible with Xcode 15. For updates, see [About the Apple SDK](/docs/wowza-flowplayer/apple-sdk/about-the-apple-sdk/). * Updated the Apple SDK to allow developers to use the Wowza Flowplayer while creating applications for iOS 17 and tvOS 17. * Updated the Google IMA SDK for tvOS from version 4.8.2 to version 4.9.2. For updates, see [iOS > Client-side ad insertion](/docs/wowza-flowplayer/apple-sdk/ios-features/client-side-ad-insertion/) and [tvOS > Client-side ad insertion](/docs/wowza-flowplayer/apple-sdk/tvos-features/client-side-ad-insertion/). * Fixed AdService to report the proper `AdType` during the `load` event. ### August 23, 2023 **Wowza Flowplayer Apple SDK v4.0.0** We released version 4.0 of our updated Wowza Flowplayer Apple SDK, which fully leverages Swift for seamless platform integration with your iOS and tvOS applications. The redesigned SDK architecture promises enhanced stability, fewer bugs, and improved maintainability while delivering an optimized user experience. Specific improvements include: * **Optimization and efficiency** — New multi-platform architecture for more efficient code deployments and a reduction in our code base. * **Enhanced development experience** — Improved clarity and quality of documentation, with out-of-the-box support for DocC reference documentation. Developers can also leverage a richer, more intuitive API, using a multi-faceted SDK setup. * **Flexibility and compatibility** — Proper segregation of the core player and UI framework, with enhanced event observation. * **Integrated tools and support** — Plug-and-play development setup with demo applications and integration of Swift Package Manager support. To get started with the new Apple SDK, see [About the Apple SDK](/docs/wowza-flowplayer/apple-sdk/about-the-apple-sdk/). ### May 8, 2023 **Wowza Flowplayer iOS v3.5.0 and Flowplayer tvOS v1.2.0 SDK** * Improved the experience for iOS SDK users by better differentiating between a live stream and other types of media. As part of these enhancements, we fixed an issue with the iOS SDK that incorrectly displayed a progress bar with seeking ability when playing a live stream. * Integrated the embed service API to work seamlessly with the iOS and tvOS SDKs. This change allows the SDK to accurately fetch player configurations. It also enables long-term stability for the SDK when relying on Wowza Video as the media source.