Overview
Understanding your options when choosing which video format to use and what captions to apply, is essential for ensuring your application will deliver the desired video experience to viewers.
The Brightcove Native Player SDKs for mobile platforms strive to ensure your application reaches a wider audience and meets FCC guidelines by ensuring that your content provides an exceptional caption experience.
For more information about standards and techniques for using captions, check out the Zencoder's blog post on closed captioning.
Review the video formats and captions for each category:
Progressive Download
Video formats using this scheme force the content to download from start to finish with no gaps and results in the full piece of content being downloaded to the device. This behavior means that viewers will be unable to seek to any area that has not already been buffered.
Based on this functionality, we advise that mid-roll advertisements are not used in combination with progressive download video formats. In addition to this, application publishers should be aware that any action that clears the video buffer will result in the client buffering from the start of the content should they attempt to resume playback afterwards.
Table for MP4/M4V support
Video format | iOS SDK | Android SDK |
---|---|---|
MP4/M4V | ||
Caption format | ||
Sidecar WebVTT | ||
Sidecar TTML (DFXP) | ||
608-over-708 |
Adaptive Bitrate Streaming
Video formats using this scheme are broken up into short segments that are downloaded when needed by the player. This allows users to seek anywhere in the content and only need to download the segment that they’ve jumped into. Generally, formats following this scheme use a “manifest” that contains all the details of the video such as the number of segments and where to find them.
Table for HTTP Live Streaming (HLS) support
Video format | iOS SDK | Android SDK |
---|---|---|
HTTP Live Streaming (HLS) | ||
Caption format | ||
In-Manifest WebVTT | ||
Sidecar WebVTT | ||
Sidecar TTML (DFXP) | ||
608-over-708 |
Similar to HLS, MPEG-DASH enables high quality streaming of media content over HTTP. It also works by breaking content into a sequence of file segments.
Table for Dynamic Adaptive Streaming over HTTP (MPEG-DASH) support
Video format | iOS SDK | Android SDK |
---|---|---|
Dynamic Adaptive Streaming over HTTP (MPEG-DASH) | ||
Caption format | ||
In-Manifest WebVTT | ||
Sidecar WebVTT | ||
Sidecar TTML (DFXP) |
Digital Rights Management (DRM)
A third set of formats worth noting are those proprietary formats that some DRM partners use.
The Brightcove Native Player SDKs can not access or control the properties and functionality of these formats. Issues found with these formats may need to be addressed to their proprietors directly.
Table for Widevine Media (.wvm) support
Video format | iOS SDK | Android SDK |
---|---|---|
Widevine Modular (DASH-CENC) | ||
Caption format | ||
Sidecar WebVTT | ||
Sidecar TTML (DFXP) | ||
608-over-708 |
Apple's FairPlay Streaming (FPS) technology can be used to deliver secure content when using HTTP Live Streaming (HLS).
Table for FairPlay Streaming (FPS) support
Video format | iOS SDK | tvOS SDK |
---|---|---|
HTTP Live Streaming (HLS) | ||
Caption format | ||
Sidecar WebVTT |
For more information about content protection with the Native SDKs, check out the Digital Rights Integrations page.