HLS limitations without Brightcove's Native SDK

Product(s)
Brightcove Player
Video Cloud
Role(s)
Device SDK Developer
Task(s)
Create & Configure Players
Topic(s)
Playback
SDK
Android

In this topic, you will learn about the limitations with HLS playback on Android devices when you DO NOT use the Native SDK for Android.

Overview

The Brightcove Player SDK for Android solves most of the issues around HLS video playback on Android devices. For details about this solution, see the HLS Playback with the Player SDK for Android document.

If you need to use Android's MediaPlayer for HLS playback, you may run into some limitations. See the section below for details about these limitations.

Known limitations

If you are using HLS Playback with the Player SDK for Android, the limitations in this section do not apply.

You will only experience the issues in this section if you choose to use Android's MediaPlayer for HLS playback without Brightcove's solution. Here are the limitations:

  • Android 2.3
    • HLS and Widevine playback not supported by SDK due to OS limitations.
  • Android 3.x
    • Not supported
  • Android 4.x
    • HLS streams only seek to the beginning of segments due to an OS bug.

      As a result, midroll ads are only supported with non-HLS streams, or with the Brightcove Player SDK (Android 4.1 or newer).

    • HLS streams do not consistently report the correct video duration due to an OS bug.

      The Brightcove Player SDK (Android 4.1 or newer) does not have this limitation.

    • The timer, counter, Learn More button overlay and some AdEvent events are missing with Google IMA midrolls due to a reported bug in the Google IMA SDK.

    • We have seen issues with Widevine content on some Samsung devices. The Widevine teams advise upgrading to the latest Android version.
  • Android 4.4.2
    • Playback will start, pause after a few seconds and then play from the start again.

FAQ

How can I get HLS to work on Android?

To be able to provide adaptive streaming on Android, Brightcove's Player SDK provides HLS playback functionality for Android 4.1 and newer.

What about HLSe?

HLSe has the same limitations and recommendations as above.