LiveLike

The LiveLike Developer Hub

Welcome to the LiveLike developer hub. You'll find comprehensive guides and documentation to help you start working with LiveLike as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    

Spoiler Prevention

Enabling Sync

This feature enables you to publish spoiler-free content with the Engagement SDK. When enabled, all published content from the Producer Suite (see Stream Requirements) and chat messages will be synced with Live video. Note that we don't currently support VOD. To enable sync, you will need to provide a value that represents the date/time of your media player's current playback position.

To enable sync, include a method to the createSession that returns the current live timecode.

val session = engagementSDK.createContentSession("<program-url>", object:LiveLikeSDK.TimecodeGetter{
  override fun getTimecode(): EpochTime {
    return EpochTime(player.bufferedPosition)
    }
})
LiveLikeContentSession session = liveLikeSDK.createContentSession("<program-url>", new LiveLikeSDK.TimecodeGetter() {
  @NotNull
  @Override
  public EpochTime getTimecode() {
    return new EpochTime(player.getEpochTime());
  }
});

ExoPlayer Sync Plugin

While the overriding mechanism described above is fairly simple, we also provide an ExoPlayer plugin that automatically handles the sync override. The plugin has the following stream prerequisites:

Add the following to your build.gradle to install the plugin:

implementation 'com.livelike.android-engagement-sdk:pluginexoplayer:<<current-android-version>>'

Once the session is initialized, you can pass your Exoplayer instance directly and get your HLS stream synchronized with widgets and chat. The plugin will get the timecode from the Program-Date-Time tags included in your HLS manifest.

val session = engagementSDK.createExoplayerSession(
  object : PlayerProvider {
    override fun get(): SimpleExoPlayer? {
      return getPlayer()
    }
  },
  "<program-url>"
)
import static com.livelike.livelikepreintegrators.ExoplayerPreintegratorKt.createExoplayerSession;

LiveLikeContentSession session = createExoplayerSession(liveLikeSDK, () -> getPlayerInstance(), "<program-url>");

Updated 6 months ago

Spoiler Prevention


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.