类:Media

构造函数

媒体

new Media(sessionId, mediaSessionId)

参数

sessionId

string

会话标识符。

mediaSessionId

number

媒体标识符。

属性

activeTrackIds

可为 null 的数字数组

与有效轨道对应的 ID 列表。

breakStatus

(非 null chrome.cast.media.BreakStatus 或未定义)

接收器上播放广告插播时间点时的广告插播状态。此字段将在接收器播放插播时间点时定义;当广告插播时间点未播放时为空,但存在于内容中;如果内容不含中断内容,则未定义。

currentItemId

可为 null 的数字

媒体状态更改时队列中处于活动状态的项(可能未在播放)的项 ID。

currentTime

number

当前播放位置(以秒为单位),自媒体开始播放后计算。 此成员只会不定期更新,因此其值通常已过期。根据接收器报告的最新信息,使用 getEstimatedTime 方法估算实际播放位置。

已弃用
请改用 getEstimatedTime。

customData

可为 null 的对象

接收方应用设置的自定义数据集。

idleReason

可为 null 的 chrome.cast.media.IdleReason

空闲原因(如果接收器知道)。

items

可为 null 的非 null chrome.cast.media.QueueItem 数组

队列中已排序项的数组。

liveSeekableRange

(非 null chrome.cast.media.LiveSeekableRange 或未定义)

直播活动或事件流的可搜索范围。它使用相对媒体时间(以秒为单位)。对于 VOD 视频流,该值将是未定义的。

loadingItemId

可为 null 的数字

接收设备上当前加载的内容项 ID。如果当前没有加载任何内容,则为 null。

media

可为 null 的 chrome.cast.media.MediaInfo

媒体说明。

mediaSessionId

number

标识媒体项。

playbackRate

number

播放速率。1.0 表示正常播放。

playerState

non-null chrome.cast.media.PlayerState

播放器状态。

preloadedItemId

可为 null 的数字

下一项内容的 ID,仅当预加载该内容时可用。在接收设备上,媒体内容可以预加载并暂时缓存在内存中,因此,稍后加载时,进程速度更快(因为不必从网络中提取媒体)。

queueData

(非 null chrome.cast.media.QueueData 或未定义)

队列数据。

repeatMode

non-null chrome.cast.media.RepeatMode

用于播放队列的重复模式。

sessionId

string

用于标识托管媒体的会话。

supportedMediaCommands

non-null Array of non-null chrome.cast.media.MediaCommand

媒体播放器支持的媒体命令。

videoInfo

(非 null chrome.cast.media.VideoInformation 或未定义)

视频信息。

非 null chrome.cast.Volume

媒体流音量。 billing.level 和 Volume.muted 一律会设置。

方法

addUpdateListener

addUpdateListener(listener)

添加在媒体状态发生变化时调用的监听器。对以下属性的更改将触发监听器:currentTime、Volume、metadata、playRate、playerState、customData。成功调用媒体的 getStatus 方法也会触发监听器。

参数

监听器

function(boolean)

要添加的监听器。该参数指示媒体对象是否仍处于活动状态。

editTracksInfo

editTracksInfo(editTracksInfoRequest, successCallback, errorCallback)

修改文本轨道样式或更改轨道状态。 如果 trackId 与现有 trackId 不匹配,则整个请求将会失败,且状态不会改变。

参数

editTracksInfoRequest

chrome.cast.media.EditTracksInfoRequest

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

getEstimatedBreakClipTime

getEstimatedBreakClipTime() returns (number or undefined)

根据接收器报告的最后信息估算当前的广告插播片段位置。

返回

(number or undefined):对当前广告插播片段位置的估算,以自媒体开始播放以来的秒数表示。如果未在播放广告插播时间点时定义 breakStatus 或 currentBreakClipTime,则返回未定义。

getEstimatedBreakTime

getEstimatedBreakTime() returns (number or undefined)

根据接收器报告的最后信息估算当前的广告插播位置。

返回

(number or undefined):当前广告插播位置的估算值(以自媒体开始播放后经过的秒数表示)。如果未定义 breakStatus 或 currentBreakTime,则返回未定义(当广告插播未播放时)。

getEstimatedLiveSeekableRange

getEstimatedLiveSeekableRange() returns (chrome.cast.media.LiveSeekableRange or undefined)

根据接收器报告的最后信息估算 liveSeekableRange 的开始时间(以秒为单位)。

返回

(non-null chrome.cast.media.LiveSeekableRange or undefined):当前 liveSeekableRange 的估算值。如果内容未直播,并且未定义 liveSeekableRange、liveSeekableRange.start 或 liveSeekableRange.end 的定义,则该操作将返回未定义状态。

getEstimatedTime

getEstimatedTime() 返回数字

根据接收器报告的最新信息估算当前的播放位置。

返回

number:对当前播放位置的估计值(以自媒体开始播放后经过的秒数表示)。

getStatus

getStatus(getStatusRequest, successCallback, errorCallback)

从接收器应用获取媒体内容的状态。

当从接收器应用收到状态时,系统将调用所有添加的任何媒体更新监听器以及指定的 SuccessCallback。应用应首选在媒体发生变化时依赖于媒体更新监听器的自动调用,而不是调用此方法来轮询媒体状态。

参数

getStatusRequest

chrome.cast.media.GetStatusRequest

可选的 get 状态请求。

successCallback

function()

从接收器应用收到状态时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

暂停

pause(pauseRequest, SuccessCallback, errorCallback)

暂停媒体项。

参数

pauseRequest

chrome.cast.media.PauseRequest

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。 媒体暂停请求。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

play

play(playRequest, SuccessCallback, errorCallback)

播放媒体项。

参数

playRequest

chrome.cast.media.PlayRequest

可选的媒体播放请求。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueAppendItem

queueAppendItem(item, successCallback, errorCallback)

将新的媒体项附加到队列末尾。

参数

chrome.cast.media.QueueItem

要附加到队列末尾的项。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueInsertItems

queueInsertItems(queueInsertItemsRequest, successCallback, errorCallback)

在队列中插入新媒体项的列表。

参数

queueInsertItemsRequest

chrome.cast.media.QueueInsertItemsRequest

请求在媒体队列中插入媒体项。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueJumpToItem

queueJumpToItem(itemId, successCallback, errorCallback)

播放队列中具有 itemId 的项。

如果在队列中未找到 itemId,则无论是由于最初不在该位置还是在调用此函数前已由其他发送者移除,此函数将以静默方式返回,而不会向接收器发送请求。

参数

itemId

number

要跳转到的项的 ID。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueMoveItemToNewIndex

queueMoveItemToNewIndex(itemId, newIndex, successCallback, errorCallback)

将具有 itemId 的项移动到队列中的 newIndex 位置。

如果在队列中未找到 itemId,则无论是由于最初不在该位置还是在调用此函数前已由其他发送者移除,此函数将以静默方式返回,而不会向接收器发送请求。

如果 newIndex 为负数,则系统将调用 errorCallback。但是,如果 newIndex 因指定错误或队列被其他发送方缩减而溢出,则项将移至队列末尾。

参数

itemId

number

要移动的项的 ID。

newIndex

number

项的新索引。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueNext

queueNext(successCallback, errorCallback)

跳转到队列中的下一项。

参数

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queuePrev

queuePrev(successCallback, errorCallback)

跳至队列中的上一项。

参数

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueRemoveItem

queueRemoveItem(itemId, successCallback, errorCallback)

从队列中移除具有 itemId 的项。

如果在队列中未找到 itemId,则无论是由于最初不在该位置还是在调用此函数前已由其他发送者移除,此函数将以静默方式返回,而不会向接收器发送请求。

参数

itemId

number

要移除的商品的 ID。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueReorderItems

queueReorderItems(queueReorderItemsRequest, successCallback, errorCallback)

对队列中的媒体项列表重新排序。

参数

queueReorderItemsRequest

chrome.cast.media.QueueReorderItemsRequest

请求对媒体队列中的项重新排序。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueSetRepeatMode

queueSetRepeatMode(repeatMode, successCallback, errorCallback)

设置队列的重复模式。

参数

repeatMode

chrome.cast.media.RepeatMode

当前项结束时选择下一项的算法。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

queueUpdateItems

queueUpdateItems(queueUpdateItemsRequest, successCallback, errorCallback)

更新媒体队列的属性(例如重复模式),以及媒体队列中现有项的属性。

参数

queueUpdateItemsRequest

chrome.cast.media.QueueUpdateItemsRequest

请求更新媒体队列的属性。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

removeUpdateListener

removeUpdateListener(listener)

移除之前为此媒体添加的监听器。

参数

监听器

function(boolean)

要移除的监听器。

努力提供服务

SeekRequest、SuccessCallback、errorCallback)

寻找媒体项。

参数

seekRequest

chrome.cast.media.SeekRequest

媒体跳转请求。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

setVolume

setVolume(volumeRequest, successCallback, errorCallback)

设置媒体流音量。必须至少设置 trafficRequest.level 和 agentRequest.muted 中的一个。更改静音状态不会影响音量,反之亦然。

参数

volumeRequest

chrome.cast.media.VolumeRequest

设置音量请求。

值不能为 null。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

个经停点

stop(stopRequest, SuccessCallback, errorCallback)

停止媒体播放器。

参数

stopRequest

chrome.cast.media.StopRequest

停止请求。

successCallback

function()

成功时调用。

errorCallback

function(non-null chrome.cast.Error)

出错时调用。可能的错误包括 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

supportsCommand

SupportCommand(命令) 返回布尔值

确定媒体播放器是否支持指定的媒体命令。

参数

命令

chrome.cast.media.MediaCommand

要查询的命令。

值不能为 null。

返回

boolean:如果播放器支持该命令,则为 true。