360 Degree Camera Mode
Quickplay player now supports 360 degree camera mode for live channel/events.
Content Authorization
A PlatformAsset for the 360 degree camera supported content should be constructed with playbackMode = "live360".
// create asset
val platformAsset = PlatformAsset(
...,
playbackMode = "live360"
)
Playback Auth Response
The live360 mode enabled content will get additional params in playback auth response.
| Name | Type | Description |
|---|---|---|
| live360StartTime | string | The start time for 360 degree stream in ISO8601 format |
| live360EndTime | string | The end time for 360 degree stream in ISO8601 format. |
| live360Enabled | boolean | The flag indicates whether the 360 degree camera is enabled for the content. |
| live360ContentId | string | The unique identifier of the 360 degree content or the resource identifier. |
Setup Heartbeat
To extend support for 360 degree camera feature, HeartbeatBuilder will now accept couple of additional params.
| Name | Type | Description |
|---|---|---|
| live360StartTime | string | The start time for 360 degree stream in ISO8601 format. |
| live360EndTime | string | The end time for 360 degree stream in ISO8601 format. |
const heartbeatConfiguration = {
heartbeatEndPointUrl: heartbeatEndPointUrl,
streamConcurrencyEndPointUrl: streamConcurrencyEndPointUrl,
syncIntervalMS: heartbeatFreq,
};
const heartbeatManager = flHeartbeat
.createHeartbeatBuilder(
...
)
...
.setLive360StartTime("2023-08-10T10:00:00Z")
.setLive360EndTime("2023-08-10T12:00:00Z")
.build();
Listen for stream events
Client application will be notified with LIVE_360_AVAILABLE and LIVE_360_UNAVAILABLE events from player.
player.addEventListener(StreamTimelineEvent.LIVE_360_AVAILABLE, () => {
// switch to your 360 content
});
player.addEventListener(StreamTimelineEvent.LIVE_360_UNAVAILABLE, () => {
// switch to your regular content
});