類別:媒體

建構函式

媒體

new Media(sessionId, mediaSessionId)

參數

sessionId

字串

工作階段 ID。

mediaSessionId

號碼

媒體 ID。

屬性

activeTrackIds

可為空值的數字陣列

與使用中曲目對應的 ID 清單。

breakStatus

(非空值的 chrome.cast.media.BreakStatus 或未定義)

接收器播放休息時間的休息狀態。這個欄位會在接收器播放時段時定義;如果休息中未播放,但內容中有廣告插播,則會定義此欄位;如果內容未包含廣告插播,則會未定義。

currentItemId

可為空值的數字

媒體狀態變更發生時已排入佇列中的有效項目項目 ID (可能不會播放)。

currentTime

號碼

目前播放位置 (以秒為單位)。 這個成員只會偶爾更新,因此其值經常過時。使用 getEstimatedTime 方法,即可根據接收器回報的最新資訊,估算實際播放位置。

已淘汰
請改用 getEstimatedTime。

customData

可為空值的物件

接收端應用程式的自訂資料集。

idleReason

可為空值的 chrome.cast.media.IdleReason

如果接收方知道閒置原因,

items

非空值的 chrome.cast.media.QueueItem 非空值陣列

佇列中已排序項目的陣列。

liveSeekableRange

(非空值的 chrome.cast.media.LiveSeekableRange 或未定義)

可搜尋直播或活動串流的範圍。並使用相對媒體時間 (以秒為單位)。隨選影片串流不會定義這個欄位。

loadingItemId

可為空值的數字

目前在接收端載入的項目項目 ID。如果目前沒有載入任何項目,則為空值。

media

可為空值的 chrome.cast.media.MediaInfo

媒體說明。

mediaSessionId

號碼

用於識別媒體項目。

playbackRate

號碼

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

playerState

non-null chrome.cast.media.PlayerState

播放器狀態。

preloadedItemId

可為空值的數字

下一個項目的 ID,僅適用於已預先載入的項目。接收器媒體項目可以暫時在記憶體中預先載入並快取,因此如果稍後載入這些項目,處理速度就會更快 (因為媒體不必從網路擷取)。

queueData

(非空值的 chrome.cast.media.QueueData 或未定義)

佇列資料。

repeatMode

non-null chrome.cast.media.RepeatMode

播放佇列的重複模式。

sessionId

字串

識別代管媒體的工作階段,

supportedMediaCommands

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

媒體播放器支援的媒體指令。

videoInfo

(非空值的 chrome.cast.media.VideoInformation 或未定義)

影片資訊。

磁碟區

非空值 chrome.cast.Volume

媒體串流音量。 系統將一律設定 Volume.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

值不得為空值。

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) 從媒體開始播放以來,目前廣告插播片段位置的預估值 (以秒為單位)。如果未定義中斷狀態或 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)

從接收端應用程式取得媒體項目的狀態。

除了指定的成功 Callback,在接收端應用程式接收到狀態時,系統也會叫用所有新增的媒體更新事件監聽器。應用程式應優先採用每次媒體變更時自動叫用媒體更新事件監聽器,而不是呼叫此方法來輪詢媒體狀態。

參數

getStatusRequest

chrome.cast.media.GetStatusRequest

選用的取得狀態要求。

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

要附加到佇列結尾的項目。

值不得為空值。

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

要求將媒體項目插入媒體佇列。

值不得為空值。

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

號碼

要跳轉的項目 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

號碼

要移動的項目 ID。

newIndex

號碼

項目的新索引。

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

號碼

要移除的項目 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

要求重新排序媒體佇列中的項目。

值不得為空值。

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

目前項目結束時,用於選取下一個項目的演算法。

值不得為空值。

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

更新媒體佇列屬性的要求。

值不得為空值。

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)

要移除的事件監聽器。

seek

See(seekRequest, successCallback, errorCallback)

跳轉媒體項目。

參數

seekRequest

chrome.cast.media.SeekRequest

媒體搜尋要求。

值不得為空值。

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)

設定媒體串流音量。必須設定至少一個 VolumeRequest.level 或 VolumeRequest.muted。變更靜音狀態並不會影響音量,反之亦然。

參數

volumeRequest

chrome.cast.media.VolumeRequest

設定音量要求。

值不得為空值。

successCallback

function()

成功時叫用。

errorCallback

function(non-null chrome.cast.Error)

發生錯誤時叫用。可能的錯誤有 TIMEOUT、API_NOT_INITIALIZED、INVALID_PARAMETER、CHANNEL_ERROR、SESSION_ERROR 和 EXTENSION_MISSING。

轉機 1 次

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(command) 會傳回布林值

判斷媒體播放器是否支援指定的媒體指令。

參數

Command 鍵

chrome.cast.media.MediaCommand

要查詢的指令。

值不得為空值。

傳回

boolean 如果播放器支援這個指令,則為 True。