Player — UI Transition
The LiSA Player supports a Picture-in-Picture (PiP)-like floating mode, allowing users to continue watching while interacting with other content. Depending on the host app / environment, the player remains in place but adjusts its controls to better suit a floating experience.
Floating Player States
The following states describe the transition between fullscreen and floating mode:
requestFloatingMode
requestFloatingModeThe player is starting the transition into floating mode.
Triggered when the user or system requests the player to enter floating mode.
The player replaces its onscreen controls with a more suitable UI for floating mode.
Once the transition completes, the
floatingstate is entered.
floating
floatingThe player has fully entered floating mode.
The floating mode UI is now active, providing minimal or more compact controls.
The user can interact with other content while the video remains visible.
If the user or system requests fullscreen again, the
requestFullscreenModestate is triggered.
requestFullscreenMode
requestFullscreenModeThe player is starting the transition back to fullscreen mode.
Triggered when the user or system requests the player to return to fullscreen.
The floating mode UI begins transitioning back to the standard fullscreen controls.
Once the transition completes, the
fullscreenstate is entered.
fullscreen
fullscreenThe player has fully returned to fullscreen mode.
The default fullscreen controls are now active.
Any floating mode interactions are reset until
requestFloatingModeis triggered again.
Properties
Along with all standard Message properties, a UI Transition message includes the following additional properties:
mediaItemId
stringRequired.
The mediaItemId property uniquely identifies the Media Item from which this message originates.
mediaItemType
MediaItemTypeRequired.
The mediaItemType property specifies the type of Media Item from which this message originates.
Refer to MediaItemType for detailed information.
messageType
LiteralRequired.
lsc:player:ui-transition
playerUiState
PlayerUiStateRequired.
The playerUiState property represents the current UI mode of the video player, determining how its controls and interface are adapted.
Possible values / transitions
fullscreen— The player is in fullscreen mode with standard controls.floating— The player is in floating mode with an adapted UI.requestFloatingMode→ switches the player tofloating.requestFullscreenMode→ transitions the player back tofullscreen.
Legacy Properties
If your integration uses LiSA Player Version 1, none of the properties described above will be available.
For LiSA Player Version 2, legacy properties can be ignored.
action
LiteralRequired.
maximize or minimize
⚠️ Please use messageType instead.
target
LiteralRequired.
app
⚠️ Please use messageType instead.
Type Definition
interface PlayerUiTransitionMessage extends Omit<Message, 'messageType'> {
mediaItemId: string;
mediaItemType: MediaItemType;
messageType: 'lsc:player:ui-transition';
playerUiState:
| 'floating'
| 'fullscreen'
| 'requestFloatingMode'
| 'requestFullScreenMode';
}Examples
Host App Requests Floating Mode
{
"messageType": "lsc:player:ui-transition",
"playerUiState": "requestFloatingMode",
"recipient": "LiSA",
"sender": "HostApp",
"action": "minimize",
"target": "app"
}Host App Confirms Floating Mode Entered
LiSA Player Version 1 does not support externally confirming when the player host component has completed its transition.
{
"messageType": "lsc:player:ui-transition",
"playerUiState": "floating",
"recipient": "LiSA",
"sender": "HostApp",
}LISA Player Requests Fullscreen Mode
Triggered when the user taps the "Back to Fullscreen" CTA in the floating player’s onscreen controls.
LiSA Player Version 1 does not support requesting the host app to exit the floating state.
{
"clockDriftInMs": 0,
"mediaItemId": "9f333331-45cb-4289-8bcd-9023c1871111",
"mediaItemType": "live",
"messageType": "lsc:player:ui-transition",
"playerUiState": "requestFullscreenMode",
"recipient": "HostApp",
"sender": "LiSA",
}Host App Confirms Fullscreen Mode Entered
{
"messageType": "lsc:player:ui-transition",
"playerUiState": "fullscreen",
"recipient": "LiSA",
"sender": "HostApp",
"action": "maximize",
"target": "app"
}Last updated