as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート
アクセスいただきありがとうございます。こちらのページは現在英語のみのご用意となっております。順次日本語化を進めてまいりますので、ご理解のほどよろしくお願いいたします。

IPlayerServerHandler

An interface for a handler that provides the service logic of the PlayerServer.

Properties

handleClearTextView()

handleClearTextView: (sessionId?) => void

Handles a request to clear the text view. This call is received when apps call IPlayerClient.clearTextView from interactive component.

Apps must implement this function to call clearCaptionViewHandle on VideoPlayer instance corresponding to sessionId.

Parameters

sessionId?

IPlayerSessionId

The session ID to target for clearing the captions surface. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Throws

if the given sessionId does not exist.


handleClearVideoView()

handleClearVideoView: (sessionId?) => void

Handles a request to clear the text view. This call is received when apps call IPlayerClient.clearVideoView from interactive component.

Apps must implement this function to call clearSurfaceHandle on VideoPlayer instance corresponding to sessionId.

Parameters

sessionId?

IPlayerSessionId

The session ID to target for clearing the text view. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Throws

if the given sessionId does not exist.


handleGetCurrentPosition()

handleGetCurrentPosition: (sessionId?) => number

Handles request for interactive component to get the current playback position of media playback. This call is received when apps call IPlayerClient.getCurrentPosition from interactive component.

Apps must implement this function to get currentTime from {Audio,Video} Player instance corresponding to sessionId and then apps must resolve promise with number indicating current playback position (in seconds).

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

number

The current playback position of media playback session corresponding to sessionId.

Throws

if the given sessionId does not exist.


handleLoad()

handleLoad: (mediaInfo, loadParams?, sessionId?) => void

Handles a request to load content by URL. This call is received when apps call IPlayerClient.load from interactive component.

Apps must implement this function to initialize MediaPlayer instance with the fields values provided in mediaInfo and loadParams for player session corresponding to sessionId.

Parameters

mediaInfo

IPlayerSessionMediaInfo

The object to describe the necessary URLs and HTTP headers to load media content.

loadParams?

IPlayerSessionLoadParams

Params required to load content by URL.

sessionId?

IPlayerSessionId

The session ID to target for loading content. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Throws

if the given sessionId does not exist.


handleMessage()

handleMessage: (message, sessionId?) => void

Handles a request to receive a custom message from interactive component. Apps can use message object to perform custom operations. This call is received when apps call IPlayerClient.sendMessage from interactive component.

Apps may implement this function to handle custom operations in service component.

Parameters

message

any

The message to be handled. To be sent as JSON object.

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Throws

if the given sessionId does not exist.


handlePause()

handlePause: (sessionId?) => void

Handles a request to pause playback. This call is received when apps call IPlayerClient.pause from interactive component.

Apps must implement this function to call pause on {Video,Audio}Player instance corresponding to sessionId.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

Receiving multiple pause requests while already in pause state is not an error and should signal success. The media server should update the corresponding IISessionStatus to reflect the new playback status.

Throws

if the given sessionId does not exist.


handlePlay()

handlePlay: (sessionId?) => void

Handles a request to resume or start playback. This call is received when apps call IPlayerClient.play from interactive component.

Apps must implement this function to call play on {Video,Audio}Player instance corresponding to sessionId.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

If the application is already playing and the playback speed is not normal (not 1.0) this may return playback to normal speed. Receiving multiple play requests while already in playing state is not an error and should signal success. The media server should update the corresponding IISessionStatus to reflect the new playback status.

Throws

if the given sessionId does not exist.


handleSeek()

handleSeek: (position, isRelative?, sessionId?) => void

Handles a request to seek to seek to a given playback position. This call is received when apps call IPlayerClient.seek from interactive component.

Apps must implement this function to change currentTime of {Video,Audio}Player instance corresponding to sessionId.

Parameters

position

number

The playback position to seek to, either relative to the current playback position (isRelative = true); or relative to the start of the media where 0 represents the start of the media (isRelative = false).

isRelative?

boolean

If the position provided is relative to the current playback position (isRelative = true) or an absolute position in the media (isRelative = false). Default value is false.

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

The media server should update the corresponding IISessionStatus to reflect the new playback position.

Throws

if the given sessionId does not exist.


handleSetActiveTrack()

handleSetActiveTrack: (trackType, trackId, sessionId?) => void

Handles a request to set the active track of media playback. This call is received when apps call IPlayerClient.setActiveTrack from interactive component.

Apps must implement this function to set audio, video or text track by ID on MSE player instance.

Parameters

trackType

ITrackType

The type of the track to set as active.

trackId

string

The track ID of the track to set as active.

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

The media sesssion should update its IISessionStatus to reflect the new playback status.

Throws

if the given sessionId does not exist.


handleSetMute()

handleSetMute: (isMuted, sessionId?) => void

Handles a request to mute playback. This call is received when apps call IPlayerClient.setMute from interactive component.

Apps must implement this function to set muted on {Video,Audio}Player instance corresponding to sessionId.

Parameters

isMuted

boolean

If true, the media should be muted;

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

The media server should update the corresponding IISessionStatus to reflect the new playback status.

Throws

if the given sessionId does not exist.


handleSetPlaybackRate()

handleSetPlaybackRate: (playbackRate, sessionId?) => void

Handles a request to set playback speed of media playback. This call is received when apps call IPlayerClient.setPlaybackRate from interactive component.

Apps must implement this function to set playbackRate on {Video,Audio}Player instance corresponding to sessionId.

Parameters

playbackRate

number

The playback speed to set, like 0.25, 0.5, 2.0 etc

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

The media sesssion should update its IISessionStatus to reflect the new playback status.

Throws

if the given sessionId does not exist.


handleSetTextView()

handleSetTextView: (handle, sessionId?) => void

Handles a request to set the text view. This call is received when apps call IPlayerClient.setTextView from interactive component.

Apps must implement this function to call setCaptionViewHandle on VideoPlayer instance corresponding to sessionId.

Parameters

handle

IViewHandle

The identifier for the shared surface.

sessionId?

IPlayerSessionId

The session ID to target for setting the captions surface. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Throws

if the given sessionId does not exist.


handleSetVideoView()

handleSetVideoView: (handle, sessionId?) => void

Handles a request to set the video view. This call is received when apps call IPlayerClient.setVideoView from interactive component.

Parameters

handle

IViewHandle

The identifier for the shared surface.

sessionId?

IPlayerSessionId

The session ID to target for setting the video surface. If not specified, the PlayerServer decides how to handle the request.

Apps must implement this function to call setSurfaceHandle on VideoPlayer instance corresponding to sessionId.

Returns

void

Throws

if the given sessionId does not exist.


handleSetVolume()

handleSetVolume: (volume, sessionId?) => void

Handles a request to set volume of media playback. This call is received when apps call IPlayerClient.setVolume from interactive component.

Apps must implement this function to set volume on {Video,Audio}Player instance corresponding to sessionId.

Parameters

volume

number

The volume to set, in the range of 0.0 to 1.0.

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the PlayerServer decides how to handle the request.

Returns

void

Details

The media sesssion should update its IISessionStatus to reflect the new playback status.

Throws

if the given sessionId does not exist.


handleStartBufferedRangesUpdates()

handleStartBufferedRangesUpdates: (sessionId?) => void

This call is received when apps make at least one IPlayerClient.registerBufferedRangesListener call for sessionId from interactive component.

Apps must start sending buffered ranges updates corresponding to sessionId by calling IPlayerServer.updateBufferedRanges API from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStartErrorUpdates()

handleStartErrorUpdates: (sessionId?) => void

This call is received when apps make at least one IPlayerClient.registerErrorListener call for sessionId from interactive component.

Apps can start sending IPlayerSessionError as JSON objects by calling IPlayerServer.sendError API corresponding to sessionId from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStartMessageUpdates()

handleStartMessageUpdates: (sessionId?) => void

This call is received when apps make at least one IPlayerClient.registerMessageListener call for sessionId from interactive component.

Apps can start sending custom messages as JSON objects by calling IPlayerServer.sendMessage API corresponding to sessionId from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStartStatusUpdates()

handleStartStatusUpdates: (sessionId?) => void

This call is received when apps make at least one IPlayerClient.registerStatusListener call for sessionId from interactive component.

Apps must start sending player session status updates corresponding to sessionId by calling IPlayerServer.updateStatus API from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStartTrackUpdates()

handleStartTrackUpdates: (sessionId?) => void

This call is received when apps make at least one IPlayerClient.registerTrackListener call for sessionId from interactive component.

Apps must start sending player session track updates corresponding to sessionId by calling IPlayerServer.addTrack or IPlayerServer.removeTrack APIs from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStopBufferedRangesUpdates()

handleStopBufferedRangesUpdates: (sessionId?) => void

This call is received when apps unsubscribe all IPlayerSessionBufferedRangesListener instances for sessionId from interactive component.

Apps must stop sending buffered ranges updates corresponding to sessionId from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStopErrorUpdates()

handleStopErrorUpdates: (sessionId?) => void

This call is received when apps unsubscribe all IPlayerSessionErrorListener instances for sessionId from interactive component. So, service component should not send any errors corresponding to sessionId as there is no receiver of these messages available.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStopMessageUpdates()

handleStopMessageUpdates: (sessionId?) => void

This call is received when apps unsubscribe all IPlayerSessionTrackListener instances for sessionId from interactive component. So, service component should not send any message corresponding to sessionId as there is no receiver of these messages available.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStopStatusUpdates()

handleStopStatusUpdates: (sessionId?) => void

This call is received when apps unsubscribe all IPlayerSessionStatusListener instances for sessionId from interactive component.

Apps must stop sending player session status updates corresponding to sessionId from service compoenent.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleStopTrackUpdates()

handleStopTrackUpdates: (sessionId?) => void

This call is received when apps unsubscribe all IPlayerSessionTrackListener instances for sessionId from interactive component.

Apps must stop sending player session track updates corresponding to sessionId from service component.

Parameters

sessionId?

IPlayerSessionId

The session ID to target with the request. If not specified, the session to target is decided by the server.

Returns

void

Throws

if the given sessionId does not exist.


handleUnload()

handleUnload: (sessionId?) => void

Unloads content from a media session in response to IPlayerClient.unload calls from the interactive component.

Applications must implement this function to release MediaPlayer and Media Source Extensions (MSE) resources for the player session associated with the given sessionId.

Parameters

sessionId?

IPlayerSessionId

The session ID of the content to unload. If not provided, the PlayerServer determines how to handle the request.

Returns

void

Throws

if the given sessionId does not exist.


handleUnloadSync()?

optional handleUnloadSync: (timeoutMsec, sessionId?) => IUnloadSyncStatus

Unloads content from a media session in response to IPlayerClient.unloadSync calls from the interactive component.

Applications must implement this function to release MediaPlayer and Media Source Extensions (MSE) resources for the player session associated with the given sessionId synchronously. For W3CMedia MediaPlayer instance, use deinitializeSync API.

Parameters

timeoutMsec

number

Maximum allowed time (in milliseconds) for unloadSync API to execute. Minimum value is 1000, maximum value is 5000.

sessionId?

IPlayerSessionId

The session ID of the content to unload. If not provided, the PlayerServer determines how to handle the request.

Returns

IUnloadSyncStatus

The status of synchronous deinitialize of mediaplayer instance corresponding to sessionId.

Throws

if the given sessionId does not exist.


Last updated: Oct 02, 2025