cast. 架構。 PlayerManager
控制及監控媒體播放。
- 擲回
-
non-null Error
如果是直接使用建構函式。PlayerManager
只能透過呼叫 cast.framework.CastReceiverContext#getPlayerManager 存取。
方法
addEventListener
addEventListener(eventType, eventListener)
新增可監聽播放事件的事件監聽器。
參數 |
|
---|---|
eventType |
(非空值的 cast.framework.events.EventType 或非空值陣列非空值 cast.framework.events.EventType) 事件類型或陣列 |
eventListener |
function(non-null cast.framework.events.Event) |
- 擲回
-
non-null Error
如果指定的引數無效。
addSupportedMediaCommands
addSupportedMediaCommands(supportedMediaCommands, broadcastStatus)
將新的支援的指令新增至支援的媒體指令清單。
參數 |
|
---|---|
supportedMediaCommands |
號碼 應用程式支援的媒體指令位元遮罩。 |
broadcastStatus |
選用 boolean
|
broadcastStatus
broadcastStatus(includeMedia, requestId, customData, includeQueueItems)
向所有寄件者 (廣播) 傳送媒體狀態訊息。 應用程式會利用此功能傳送自訂狀態變更。
參數 |
|
---|---|
includeMedia |
選用 boolean
|
requestId |
選用 號碼 導致此回應的傳入要求 ID。 |
customData |
選用 物件 狀態訊息應用程式專屬的自訂資料。 值可以是空值。 |
includeQueueItems |
選用 boolean 是否要在狀態訊息中加入佇列項目。根據預設,不會包含在內。 |
getAbsoluteTimeForMediaTime
getAbsoluteTimeForMediaTime(mediaTime) 傳回數字
將媒體時間轉換為媒體絕對時間。 絕對時間僅適用於直播影片。
參數 |
|
---|---|
mediaTime |
號碼 媒體時間。 |
- 傳回
-
nullable number
:絕對時間,如果無法提供,則為null
。
getAudioTracksManager
getAudioTracksManager() 會傳回 cast.framework.AudioTracksManager
取得 AudioTracksManager
執行個體。
- 傳回
-
non-null cast.framework.AudioTracksManager
getBreakClipCurrentTimeSec
getBreakClipCurrentTimeSec() 傳回數字
傳回目前播放的廣告插播短片目前時間 (以秒為單位)。
- 傳回
-
nullable number
目前廣告插播片段中的目前時間 (以秒為單位)。null
(當Player
沒有播放廣告插播短片時)。
getBreakClipDurationSec
getBreakClipDurationSec() 傳回數字
傳回目前播放的廣告插播短片時間長度 (以秒為單位)。
- 傳回
-
nullable number
目前廣告插播短片的時間長度。null
(當Player
沒有播放休息短片時)。
getBreakManager
getBreakManager() 會傳回 cast.framework.breaks.BreakManager
取得 BreakManager
執行個體。
- 傳回
-
non-null cast.framework.breaks.BreakManager
getBreaks
getBreaks() 傳回非空值的 cast.framework.messages.Break
傳回中斷點清單。
- 傳回
-
non-null Array of non-null cast.framework.messages.Break
getCurrentSupportedMediaCommands
getCurrentSupportedMediaCommands() 傳回數字
取得目前接收器支援的媒體指令。與 getSupportedMediaCommands()
不同,此方法傳回的值會根據目前的播放狀態動態變更。例如,系統可能不支援在廣告播放期間使用 SEEK
指令。這個方法只能在呼叫接收器 CastReceiverContext#start
後呼叫,否則會傳回 0
。
- 另請參閱
- cast.framework.messages.Command
- 傳回
-
number
應用程式支援的媒體指令位元遮罩。
getCurrentTimeSec
getCurrentTimeSec() 傳回數字
取得目前媒體的經過播放時間。
- 傳回
-
number
經過時間,以秒為單位。如果未播放任何媒體,此值將會0
。
getDurationSec
getDurationSec() 傳回數字
取得目前播放媒體的時間長度 (以秒為單位)。
- 傳回
-
number
媒體時間長度。如果未播放任何媒體,則為NaN
。
getLiveSeekableRange
getLiveSeekableRange() 傳回 cast.framework.messages.LiveSeekableRange
傳回包含開始時間和結束時間的即時搜尋範圍 (以秒為單位)。 這些值是以媒體時間為依據。
- 傳回
getMediaInformation
getMediaInformation() 會傳回 cast.framework.messages.MediaInformation
取得目前媒體的媒體資訊。
- 傳回
getMediaTimeForAbsoluteTime
getMediaTimeForAbsoluteTime(absTime) 傳回數字
將媒體絕對時間轉換為媒體時間。絕對時間僅適用於直播影片。
參數 |
|
---|---|
absoluteTime |
號碼 媒體的絕對時間,以 UNIX Epoch 紀元時間 (從 Unix Epoch 紀元時間起算,以秒為單位)。 |
- 傳回
-
nullable number
:媒體時間;如果無法使用,則為null
。
getPlaybackConfig
getPlaybackConfig() 傳回 cast.framework.PlaybackConfig
如未覆寫預設值,會傳回播放設定或 null
。
- 傳回
-
nullable cast.framework.PlaybackConfig
getPlaybackRate
getPlaybackRate() 傳回數字
傳回目前的播放速率。在呼叫接收器 CastReceiverContext#start
之前傳回 1
。
- 傳回
-
number
目前播放速率。
getPlayerState
getPlayerState() 會傳回 cast.framework.messages.PlayerState
取得 Player
狀態。
- 傳回
-
non-null cast.framework.messages.PlayerState
目前Player
的狀態。
getPreferredPlaybackRate
getPreferredPlaybackRate() 傳回數字
設定偏好的播放速率。 可用於關閉事件,將最新的偏好播放速率儲存至永久儲存空間,以便用於下一個工作階段的投放選項。
- 傳回
-
number
getPreferredTextLanguage
getPreferredTextLanguage() 傳回字串
取得偏好的文字音軌語言。
- 傳回
-
nullable string
getPreferredTextStyle
getPreferredTextStyle() 會傳回 cast.framework.messages.TextTrackStyle
取得偏好的文字音軌樣式。
- 傳回
getQueueManager
getQueueManager() returns (cast.framework.QueueManager or undefined)
取得 QueueManager
執行個體。
- 傳回
-
(non-null cast.framework.QueueManager or undefined)
getRawCurrentTimeSec
getRawCurrentTimeSec() 傳回數字
取得目前媒體的播放時間,不會減去廣告插播時間。
- 傳回
-
number
經過時間,以秒為單位。如果未播放任何媒體,此值將會0
。
getStartAbsoluteTime
getStartAbsoluteTime() 會傳回數字
取得絕對媒體開始時間,以 UNIX Epoch 紀元時間 (從 Unix Epoch 紀元時間起算的秒數)。絕對時間僅適用於直播影片。
- 傳回
-
nullable number
getStats
getStats() returns cast.framework.stats.Stats
傳回播放統計資料。系統會視情況匯總整個播放工作階段的統計資料。
- 傳回
-
non-null cast.framework.stats.Stats
getSupportedMediaCommands
getSupportedMediaCommands() 傳回數字
取得接收者支援的媒體指令。只有在呼叫 CastReceiverContext#start()
後才能呼叫,否則會傳回 0
。支援的媒體指令值完全由接收器應用程式控管。不會根據 MediaStatus
自動更新。
- 另請參閱
- cast.framework.messages.Command
- 傳回
-
number
應用程式支援的媒體指令位元遮罩。
getTextTracksManager
getTextTracksManager() 會傳回 cast.framework.TextTracksManager
取得 TextTracksManager
執行個體。
- 傳回
-
non-null cast.framework.TextTracksManager
getTimedMetadata
getTimedMetadata() 會傳回非空值 cast.framework.TimedMetadata 的陣列
傳回剖析資訊清單時發生的定時中繼資料。在 DASH 中是 #EXT-X-DATERANGE
,在 DASH 中是 EventStream
。
- 傳回
-
non-null Array of non-null cast.framework.TimedMetadata
堆
load(loadRequest) 傳回包含 void 的 Promise
啟動載入媒體的要求。
參數 |
|
---|---|
loadRequest |
cast.framework.messages.LoadRequestData 載入媒體的要求。 值不得為空值。 |
- 傳回
-
non-null Promise containing void
:作業成功時被解決的承諾,失敗則會遭到拒絕。
暫停
暫停()
暫停目前正在播放的媒體。
play
play()
播放目前暫停的媒體。
removeEventListener
removeEventListener(eventType, eventListener)
移除為指定播放事件新增的事件監聽器。如果沒有相符的事件監聽器,系統會忽略這個呼叫。
參數 |
|
---|---|
eventType |
(非空值的 cast.framework.events.EventType 或非空值陣列非空值 cast.framework.events.EventType) eventType 或事件類型的陣列 |
eventListener |
function(non-null cast.framework.events.Event) |
removeSupportedMediaCommands
removeSupportedMediaCommands(supportedMediaCommands, broadcastStatus)
從支援的媒體指令清單中移除指令。
參數 |
|
---|---|
supportedMediaCommands |
號碼 應用程式支援的媒體指令位元遮罩。 |
broadcastStatus |
選用 boolean
|
seek
See(seekTime)
透過媒體搜尋。
參數 |
|
---|---|
seekTime |
號碼 |
sendCustomState
sendCustomState(state)
將應用程式播放邏輯中的自訂狀態傳送至 UI 邏輯。這個方法可協助分離播放邏輯和 UI。保持邏輯和 UI 之間的差異,可能會讓本機播放和遠端控制使用相同的 UI 邏輯。此方法傳送的自訂狀態可透過 PlayerData
提供給使用者介面。
參數 |
|
---|---|
state |
物件 自訂狀態物件。 值不得為空值。 |
sendError
sendError(senderId, requestId, type, reason, customData)
將錯誤訊息傳送給特定寄件者。
參數 |
|
---|---|
senderId |
字串 傳送者 ID。 |
requestId |
號碼 導致這個錯誤的傳入要求 ID。 |
類型 |
cast.framework.messages.ErrorType 錯誤類型。 值不得為空值。 |
原因 |
選用 cast.framework.messages.ErrorReason 錯誤原因。 值可以是空值。 |
customData |
選用 物件 錯誤訊息應用程式專屬自訂資料。 值可以是空值。 |
sendLocalMediaRequest
sendLocalMediaRequest(request)
傳送本機媒體要求。
參數 |
|
---|---|
申請。 |
cast.framework.messages.RequestData 值不得為空值。 |
sendStatus
sendStatus(senderId, requestId, includeMedia, customData, includeQueueItems)
將媒體狀態訊息傳送給特定寄件者。
參數 |
|
---|---|
senderId |
字串 傳送者 ID。 |
requestId |
號碼 導致此回應的傳入要求 ID。 |
includeMedia |
選用 boolean
|
customData |
選用 物件 狀態訊息應用程式專屬的自訂資料。 值可以是空值。 |
includeQueueItems |
選用 boolean 是否要在狀態訊息中加入佇列項目。根據預設,不會包含在內。 |
setIdleReason
setIdleReason(idleReason)
設定玩家處於 IDLE
狀態的原因。
這可讓想要強制執行 IDLE
狀態的應用程式指出執行這項操作原因 (例如自訂錯誤)。下一則狀態訊息中會顯示閒置原因。
注意:大多數應用程式都不需要設定這個值。只有在應用程式需要在特殊情況下,讓 Player
進入 IDLE
狀態,且預設的 activityReason 未反映預期行為時,才需要使用此方法。
參數 |
|
---|---|
idleReason |
cast.framework.messages.IdleReason 處於 值不得為空值。 |
setMediaElement
setMediaElement(mediaElement)
設定要使用的 HTMLMediaElement
。如果設定了 HTMLMediaElement
的 Promise
,媒體會在 Promise
解析後開始播放。
參數 |
|
---|---|
mediaElement |
(非空值 HTMLMediaElement 或非空值 Promise,包含非空值的 HTMLMediaElement)
|
setMediaInformation
setMediaInformation(mediaInformation, opt_broadcast)
設定媒體資訊。
參數 |
|
---|---|
mediaInformation |
cast.framework.messages.MediaInformation 值不得為空值。 |
opt_broadcast |
選用 boolean |
setMediaPlaybackInfoHandler
setMediaPlaybackInfoHandler(handler)
設定處理常式,針對特定載入要求傳回或修改 cast.framework.PlaybackConfig。處理常式參數是接收器的 LoadRequestData
和預設的 PlaybackConfig
(可在 CastReceiverOptions
中提供)。處理常式應傳回修改後的播放設定,或 null
防止媒體播放。傳回值也可能是 Promise
,以便等待伺服器的資料。
參數 |
|
---|---|
處理常式 |
function(non-null cast.framework.messages.LoadRequestData, non-null cast.framework.PlaybackConfig) 提供要求特定播放設定的函式。 值可以是空值。 |
setMediaUrlResolver
setMediaUrlResolver(resolver)
設定處理常式,以傳回 LOAD
要求媒體網址。這個處理常式可用來避免將媒體內容網址發布為媒體狀態的一部分。根據預設,系統會使用媒體 contentId
做為內容網址。
參數 |
|
---|---|
解析器 |
function(non-null cast.framework.messages.LoadRequestData) 解析媒體內容網址的函式。 值可以是空值。 |
setMessageInterceptor
setMessageInterceptor(type, interceptor)
設定傳入和外寄郵件的攔截器。
攔截器可更新要求資料,且應傳回更新的資料、包含已更新資料的 Promise
(如果無法立即傳回資料) 或 null
。注意:如果提供 LOAD
訊息攔截器,但沒有提供獨立的 PRELOAD
攔截器,則系統會針對 PRELOAD
訊息呼叫 LOAD
攔截器。
參數 |
|
---|---|
類型 |
cast.framework.messages.MessageType 值不得為空值。 |
攔截器 |
function(non-null cast.framework.messages.RequestData) 值可以是空值。 |
setPlaybackConfig
setPlaybackConfig(playbackConfig)
在 PlayerManager
上設定播放設定。
參數 |
|
---|---|
playbackConfig |
值不得為空值。 |
setSupportedMediaCommands
setSupportedMediaCommands(supportedMediaCommands, broadcastStatus)
設定接收器支援的媒體指令。
參數 |
|
---|---|
supportedMediaCommands |
號碼 應用程式支援的媒體指令位元遮罩。 |
broadcastStatus |
選用 boolean
|
轉機 1 次
stop()
停止目前正在播放的媒體。