chrome. cast。 media。 媒體
代表已載入至接收器應用程式的媒體項目。
建構函式
媒體
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 或未定義)
影片資訊。
磁碟區
媒體串流音量。 系統將一律設定 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 |
|
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 |
選用的媒體播放要求。 |
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)
將新的媒體項目附加到待播清單尾端。
參數 |
|
---|---|
項目 |
要附加到佇列結尾的項目。 值不得為空值。 |
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 |
目前項目結束時,用於選取下一個項目的演算法。 值不得為空值。 |
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 |
媒體搜尋要求。 值不得為空值。 |
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 |
停止要求。 |
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。