簡介
谷歌瀏覽器是一種可以插入電視的 HDMI 連接埠的裝置。使用智慧型手機或電腦做為遙控器,您可以使用 Chromecast 存取影片內容。Chromecast 插件使播放器能夠使用 Brightcove 本機 SDK 將視頻從您的移動設備應用程序投射到 Chromecast 設備。
此外掛程式支援所有使用 HLS 或 DASH 的視訊雲端影片或外部串流,包括使用 Widevine 的 DRM 加密串流。廣告是透過視訊雲端伺服器端廣告插入 (SSAI) 支援。不支援用戶端廣告和播放清單。
要使用插件,請執行以下步驟:
- 包括適用於 Android 和/或 iOS 的本機 SDK 的 Chromecast 插件(請參閱下面的 實施 部分)。
- 請確認 Chromecast 裝置與您的裝置位於相同的網路上,以便播放影片。
- 開始播放視訊。
- 按一下投射按鈕,然後選擇您的 Chromecast 裝置。
應用程式元件
Chromecast 背後的軟體由下列元件組成:
-
發件人應用程序:這是可以啟動強制轉換會話並與接收方通信的任何應用程序。寄件者應用程式可以被視為 Chromecast 生態系統的「用戶端」部分。
Chromecast 插件在本機 SDK 中啟用發送器應用程序。您將在本主題中了解它。
-
接收器應用程序:這是一個自定義的Web應用程序,託管在公共互聯網上,並在Chromecast設備上運行。它處理髮送方應用程序與接收方設備之間的通信。它可以被認為是一個單一的頁面 HTML 應用程序與 CSS 和 JavaScript 資產。
默認情況下,Chromecast 插件使用託管在我們 CDN 上的 Brightcove Cast Receiver 應用程序。接收器應用程序是在投射會話期間加載到 Chromecast 上的網絡應用程序。
支持的 Chromecast 設備
支持以下設備:
- Chromecast(第3代)
- Chromecast Ultra
- 帶 Google TV 的 Chromecast
這個怎麼運作
當前的實現(插件/接收器版本2.x)使用CAF(廣播應用程序框架)API。
添加Chromecast接收器插件後,如果本地網絡上有可用的Chromecast,則播放器將在播放器用戶界面中顯示一個投射按鈕。
單擊或點擊此按鈕時,將使用播放器中加載的當前視頻啟動投射會話。以下是它的工作原理:
- 插件將一組參數發送到接收器。
- 接收器通過從Brightcove的CDN加載來鏡像發送方播放器。
- 加載後,接收方播放器會從播放會話開始時發送的Playback API加載視頻ID。
- 然後,接收方播放器在發送播放器的播放頭位置開始播放。
除了沒有Playback API請求外,此過程對於非Video Cloud源是相同的。
分析
當前,從分析的角度來看,投射會話被視為全新的回放會話。
從UX角度來看,查看者將看到他們的流在發送器設備上暫停並在接收器上恢復。
從數據角度來看,由於默認情況下我們的指標是匿名的,因此將其記錄為新的查看器,並在單獨的設備上開始新的流。這是實際發生的情況。
實作
有關實施詳情,請參閱以下內容:
- Android - 適用於 Android 的 Native SDK 的 Cast 插件
- iOS - 適用於 iOS 的原生 SDK 的 Google Cast 插件
自定義數據
這customData
接口提供了一種方法,發送者可以通過該方法將任意數據傳遞到自定義 Chromecast 接收器,例如 Brightcove 的接收器應用程序。
對於 Brightcove Player(網絡)發件人,customData
完全由插件處理。集成商無事可做。
對於所有其他發送者,例如適用於 Android 或 iOS 的 Native SDK,customData
必須由發送者構建。
customData.accountId
(必需的)
類型:string
從網絡播放器投射時,這是自動的。所有其他發送者(例如本機 SDK)必須顯式設置它。
customData.analyticsParams
類型:object
此屬性應該是一個對象,可用於將參數傳遞給接收器上的分析實現,以便發送到數據收集 API 的信標。它支持以下屬性:
屬性 | 類型 | 描述 |
---|---|---|
analyticsParams.application |
string |
允許設置明文應用程序 ID。這對於像 Engage 這樣的應用程序很有用。 |
analyticsParams.user |
string |
允許為發送到數據收集 API 的信標設置明文用戶 ID。這對於跨設備恢復 (XDR) 等功能很有用。 |
customData.catalogParams
類型:object
這應該是目錄參數對象
傳遞給接收器上的 Playback API 的所有值都必須來自此對象。
customData.keySystems
類型:object
通過媒體信息對象提供媒體時,這可用於以與播放 API 返回的格式相同的格式提供 DRM 設置:
keySystems: {
'com.widevine.alpha': {
url: 'https://url/to/widevine/license'
}
}
customData.playerUrl
類型:string
這可用於提供要加載的自定義播放器 URL。
從網絡播放器投射時,默認情況下它將在發送者上鏡像播放器。可以通過傳遞來覆蓋此行為"playerUrl": "default"
在選項中(見上文)。這對測試很有用。
從本機 SDK 投射時,它將回退到默認播放器(可在 Players Prod 帳戶中使用)。