Initialization Configuration
During initialization, parameters such as autoplay, muted, volume, and loop attributes can be configured. However, it is also possible to modify the volume and muted attributes at a later time, as per requirements.
Media Initialization Configuration
The initialization configuration can set preferred video, caption, and audio behavior when playback starts.
These preferences are applied on supported platforms.
| Attribute | Type | Description |
|---|---|---|
| video | object | Initial ABR, bitrate, and latency settings. |
| caption | object | Initial caption display, language, and source settings. |
| audio | object | Initial audio language settings. |
let luraConfig = LuraPlayerConfiguration(
initialization: .init(
video: .init(
abrEnabled: true,
preferredBitrate: 1000000,
latencyMode: .default
),
caption: .init(
enabled: true,
preferredLanguage: "en",
source: ["manifest", "embedded"]
),
audio: .init(
preferredLanguage: "en"
)
)
)
player?.setConfig(luraConfig)
| Attribute | Type | Description |
|---|---|---|
initialization.video.abrEnabled | Bool | Enables or disables ABR on supported platforms. |
initialization.video.preferredBitrate | Int | Preferred starting bitrate on supported platforms. |
initialization.video.latencyMode | LatencyMode | Preferred latency mode on initialization. |
initialization.caption.enabled | Bool | Shows or hides captions on initialization. |
initialization.caption.preferredLanguage | String | Preferred caption language on supported platforms. |
initialization.caption.source | [String] | Caption sources to use. Defaults to ["manifest", "embedded"]. |
initialization.audio.preferredLanguage | String | Preferred audio language on supported platforms. |
Autoplay Configuration
The implementation of autoplay attribute can be done in Lura Player using the following configuration.
| Attribute | Type | Description |
|---|---|---|
| autoplay | boolean | Autoplay attribute of the player. Defaults to false |
let player = try? LuraPlayer(playerView: playerView)
player?.addListener(listener: luraListener)
let lura = Lura(appKey: "APP_KEY", assetId: "ASSET_ID")
let controls = LuraContols()
controls.autoplay = true
let luraConfig = LuraPlayerConfiguration(lura: lura, controls: controls)
player?.setConfig(luraConfig)
Mute Configuration
The implementation of initially muted attribute can be done in Lura Player using the following configuration.
| Attribute | Type | Description |
|---|---|---|
| muted | boolean | Whether to start muted when the player autoplays. Defaults to false. |
Some platforms doesn't support unmuted autoplay. So if autoplay attribute is set to true, muted attribute will be overwritten to true in platforms that doesn't support unmuted autoplay.
let player = try? LuraPlayer(playerView: playerView)
player?.addListener(listener: luraListener)
let lura = Lura(appKey: "APP_KEY", assetId: "ASSET_ID")
let controls = LuraContols()
controls.controls.muted = true
let luraConfig = LuraPlayerConfiguration(lura: lura, controls: controls)
player?.setConfig(luraConfig)
Volume Configuration
The implementation of initial volume attribute can be done in Lura Player using the following configuration.
| Attribute | Type | Description |
|---|---|---|
| volume | number | Initial volume of the player between 0.0 and 1.0. Defaults to 1.0 |
let player = try? LuraPlayer(playerView: playerView)
player?.addListener(listener: luraListener)
let lura = Lura(appKey: "APP_KEY", assetId: "ASSET_ID")
let controls = LuraControls()
controls.volume = 1.0
let luraConfig = LuraPlayerConfiguration(lura: lura, controls: controls)
player?.setConfig(luraConfig)
Loop Configuration
The implementation of loop attribute can be done in Lura Player using the following configuration.
| Attribute | Type | Description |
|---|---|---|
| loop | boolean | Loop the video when it ends. Defaults to false. |
let player = try? LuraPlayer(playerView: playerView)
player?.addListener(listener: luraListener)
let lura = Lura(appKey: "APP_KEY", assetId: "ASSET_ID")
let controls = LuraControls()
controls.loop = true
let luraConfig = LuraPlayerConfiguration(lura: lura, controls: controls)
player?.setConfig(luraConfig)
let player = try? LuraPlayer(playerView: playerView)
player?.addListener(listener: luraListener)
let lura = Lura(appKey: "APP_KEY", assetId: "ASSET_ID")
let controls = LuraControls()
controls.controls.autoplay = true
controls.controls.muted = true
controls.controls.volume = 1.0
controls.controls.loop = true
let luraConfig = LuraPlayerConfiguration(lura: lura, controls: controls)
player?.setConfig(luraConfig)