Multi Camera
Quickplay player now supports Multi camera mode for live channel/events where user can switch to different angles of the event and watch it in all available angles.
Pre-requisites
- Datastore API call returns content metadata with
mcf
flag set totrue
for the multi camera enabled content. - Client App will decide to call Multicam Datastore API, based on the
mcf
flag in channel/liveevent, to get the list of secondary camera angles metadata. - The secondary camera angles metadata holds prid of the associated primary content and catalogType of it will be multicam.
trackViewersCount
should be set to true for all LIVE assets ifmcf
is enabled( i.e. primary angle content) or catalogType is mutlicam(i.e. secondary angle content).
Content Authorization
A PlatformAsset
for the content with catalogType = "multicam"
should be constructed with an additional param primaryContentId
.
Key | Type | Value |
---|---|---|
primaryContentId | String | The unique identifier of the primary content to which the selected content (i.e. secondary angle content) to play is associated with. This is applicable only for multi-camera enabled content. |
Create live asset
' create live streaming asset
platformAsset = FLContentAuthorizerFactory().liveAsset(contentId, catalogType, FLMediaFormat().DASH, FLDrmTypes().WIDEVINE, ssaiDisabled, primaryContentId)
Heartbeat
To extend support for Multi Camera feature, HeartbeatManager
will now accept couple of additional params.
Key | Type | Value |
---|---|---|
catalogType | String | The value of the Catalog type of content. |
primaryContentId | String | The unique identifier of the primary content to which the selected content (i.e. secondary angle content) to play is associated with. This is applicable only for multi-camera enabled content. |
Create heartbeat manager
heartbeatConfig = FLHeartbeatFactory().heartbeatConfiguration(heartbeatEndPoint, streamConcurrencyEndpoint, syncInterval, maxAllowedFailures, postSlateDuration, recordBookmark, stopOnPlaybackEnd, trackViewersCount)
m.heartbeatManager = FLHeartbeatFactory().heartbeatManager(heartbeatConfig, deviceId, playbackAsset, platformAuthorizer, liveEventType, overflowEventMode, headers, catalogtype, primaryContentId)
note
primaryContentId
should only be set for the content with catalogType = "multicam".- When initiating a new camera angle playback, always wait until the current player is stopped before authorising the playback with new camera angle.