Subtitles for iOS
Subtitles enhance the viewing experience by providing text-based translations or transcriptions for audio content.
In the Wowza Flowplayer Apple SDK, we support using WebVTT (Web Video Text Tracks) for subtitles. WebVTT files contain time-stamped text tracks that can be synchronized with video playback. By leveraging the WebVTT format and the flexibility of the Apple SDK, you can manage subtitles within your video playback experience while providing multilingual support and accessibility options to users.
The subtitle approach you pick depends on the type of media you're integrating into your application. For iOS projects, you need to provide a valid WebVTT URL and enable the HTML Subtitles plugin for the player to display subtitles.
For information related to listening to events, managing media playback, and handling errors, see the following pages:
Add subtitles for Wowza Video media
If you're using the MediaOVP
media type, subtitle configuration occurs through our Wowza Video platform. In Wowza Video, you can configure and associate WebVTT subtitle files with your media content. The Apple SDK automatically retrieves and displays the appropriate subtitles based on the selected language or user preferences. For more, see Add subtitles to a video and Manage subtitles in the files list.
Add subtitles for external media
When using the MediaExternal type to load external media files, you must provide a valid WebVTT URL within your master file. This URL should point to the WebVTT file location containing the subtitle tracks for your media. The SDK fetches the WebVTT file, handles everything behind the scenes, and displays subtitles during video playback.
info
For proper rendering and synchronization of the subtitle tracks, ensure that your WebVTT files comply with the WebVTT specification. WebVTT files typically include time intervals and text entries that indicate each subtitle's display duration and content.
Enable the subtitles plugin
Applies to: iOS
When you enable the HTML Subtitles plugin, users can see subtitles and the subtitles menu as part of the player's controls. They can toggle subtitles on or off and select different subtitle tracks if available.
In the following example, we use the ControlsConfig
configuration class to manage the subtitle controls for our player instance. This sets the controls configuration for the flowplayerView
object and enables the subtitle controls in the player.
Example
// Create an instance of ControlsConfig with the create() method
// Assign it to configBuilder constant
let configBuilder = ControlsConfig.create()
// Enable the subtitles plugin by calling the enablePlugins() method
// Pass an array with the plugin name as a parameter
configBuilder.enablePlugins(["subtitles"])
// Build the configuration object by calling the build() method on the configBuilder object
// Assign it to the flowplayerView.controlsConfig property
flowplayerView.controlsConfig = configBuilder.build()
More resources
For more information, see these resources: