Skip to main content

This guide shows how to set up a player with audio-only assets via the BlendVision Android Player SDK. You can also check the sample project for audio-only assets player.

For the basic player SDK integration, you may refer to Getting Started.

Obvious difference from video playback

Background Image​

When playing an audio stream, by default, the background is black. You can customize the background image with setPoster(url) method, like the following snippet:

//set poster between player and control panel
player.setPoster("YOUR_IMAGE_URL")

//If you want to remove the poster, you can do that by using
player.setPoster(null)

Quality Setting​

The quality setting applies for video streams with multiple bitrate variants and isn’t available for audio-only streams.

Custom UI and Setup

Set player layout​

<com.blendvision.player.playback.presentation.UniView
android:id="@+id/blendVisionPlayer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

Initialize player​

private fun initializePlayer() {
val playerConfig = PlayerConfig(
licenseKey = "YOUR_LICENSE_KEY"
)
val player = UniPlayer.Builder(context = context, playerConfig = playerConfig).build()

binding.blendVisionPlayer.setupControlPanel(autoKeepScreenOnEnabled = true, defaultPanelType = PanelType.EMBEDDED)
binding.blendVisionPlayer.setUnifiedPlayer(player)
}

Customize background image​

fun setPlayerBackground(imageUrl: String?) {
player.setPoster("YOUR_IMAGE_URL")
}

Load and control media​

// Media Configuration
val mediaConfig = MediaConfig(
source = MediaConfig.Source(
url = "YOUR_DASH_URL",
protocol = MediaConfig.Protocol.DASH
),
title = "TITLE",
imageUrl = "YOUR_IMAGE_URL",
thumbnailSeekingUrl = null,
playWhenReady = true,
sharedUrl = "SHARED_INFO",
description = "YOUR_DESCRIPTION_INFO"
)

// Load and Control Media
player.load(mediaConfig)
player.start()
player.pause()
player.play()
player.stop()
player.release()
Limitation
  • Audio playback might not be available on Chromecast.