總覽

Cast SDK 可讓使用者使用傳送端選取串流影音內容,並在另一部稱為「接收器」的裝置上播放 (或投放內容到) 其他裝置,同時使用 Sender 控製播放。

「寄件者」一詞是指在投放工作階段中扮演控制器的應用程式。傳送者會啟動投放工作階段,並管理使用者與內容的互動。

寄件者分為多種類型,包括行動應用程式和 Google Chrome 網頁應用程式,以及支援觸控功能的 Google Home 裝置上的虛擬控制途徑。Chrome 網路瀏覽器中的媒體控制項可做為傳送者,與 Google 助理本身相同。

「接收器」一詞是指在支援 Cast 的裝置上運作的應用程式,其負責回應寄件者指令,以及將線上串流服務中的串流內容傳輸至支援 Cast 的裝置。支援 Cast 的接收器裝置範例包括 Chromecast、智慧型電視、智慧型電視和智慧音箱。

Cast SDK 也支援多個連線至投放工作階段的寄件者。舉例來說,一位傳送者可以在接收端上啟動工作階段,而另一個傳送者也可以加入同一工作階段來控製播放、載入新內容,或將更多內容排入佇列以供日後使用。

應用程式元件和架構

Google Cast 支援在 AndroidiOS支援 Cast 的網路平台 (例如 Google Chrome) 開發寄件者應用程式。

接收端應用程式必須在支援 Cast 的裝置上執行,例如:

  • 已連接高畫質電視或音響系統的 Chromecast。
  • 支援 Cast 的電視。
  • 支援 Cast 的智慧螢幕。
  • 支援 Cast 的 Android 裝置,例如 Android TV。

高階 Cast 架構

傳送者使用由 SDK 定義的媒體播放訊息控制接收器的媒體播放。如果應用程式用途需要傳送未正式在標準媒體播放訊息中定義的資料,您可以使用多種訊息類型提供的 customData 欄位傳遞輔助資料。

Cast 應用程式開發有以下兩種基本情境:

  1. 以 Cast 為基礎的端對端解決方案。在這個情境中,開發人員必須同時建構傳送端應用程式和兩個接收器應用程式:Android TV 接收器和網路接收器 (詳情請參閱下文)。
  2. 支援 Cast 的傳送端應用程式可將內容 (螢幕或多媒體串流) 投放到 Google 的預設投放接收器,這就是「預設媒體接收器」。在本情境中,開發人員只需要建構一個應用程式 (傳送者)。預設媒體接收器適合用於學習,以及相當有限的播放情境。對需要自訂商業邏輯、憑證、版權管理或分析的接收器來說,這不是實際應用。

Google Cast SDK

Google Cast SDK 是由數個 Cast API 程式庫組成。除了 API 以外,也有兩種說明文件:

Cast API 會根據平台和 Cast 應用程式類型區分。表 1 包含各種 Cast API 指南的連結。

表 1:Cast SDK 指南
平台 寄件者 接收器
Android Android 寄件者應用程式 Android TV 接收器總覽
網站 網路寄件者應用程式 網路接收端總覽
iOS iOS 寄件者應用程式 n/a

寄件者應用程式類型

寄件者應用程式可以在以下三個平台上執行:

  • 網站
  • Android
  • iOS

雖然選擇寄件者類型很有可能是由您要支援的寄件者平台所驅動,但請務必瞭解每種寄件者類型的功能和限制 (請參閱表 3)。

表 3:寄件者比較
技術能力 Android 寄件者 iOS 寄件者 網路寄件者
媒體串流中的廣告插播和隨播廣告
樣式化文字軌
將媒體音軌分組、設定樣式及啟用媒體音軌
自動播放和排入佇列 (編輯、重新排序、更新)
自訂管道
自訂操作
完整的 Cast 使用者介面,包括控制器和迷你控制器
有意加入

接收器應用程式類型

接收端應用程式會處理傳送者應用程式與投放裝置之間的通訊。 接收器主要有兩種類型:網路接收器Android TV 接收器。您至少應提供 Web 接收器,並鼓勵提供 Android TV 接收器,盡可能提升應用程式的使用者體驗。

網路接收器分成三種類型,各有專屬的特質和功能組合:

  • 自訂接收器:可用於自訂邏輯、品牌宣傳和修改控制項。
  • Styled Media Receiver 可用於自訂品牌宣傳元素。
  • 預設接收器,這是最基本的類型。這項限制無法自訂,也不適合用於正式版應用程式。

除了自訂接收器提供的功能以外,Android TV 接收器還提供 Cast Connect,這是為使用者提供原生體驗的功能,可與 Android TV 完美結合。

表 2 重點介紹不同接收器類型的功能。

表 2:接收器比較
Android TV 接收器 自訂接收器 樣式化媒體接收器 (SMR) 預設媒體接收器
平台
以 Android 為基礎 (Java/Kotlin)
網頁式 (HTML5)
需求條件
必須註冊
功能
HLS 和 DASH 媒體播放
支援觸控設定
處理支援 Google 助理裝置的語音指令
可自訂的視覺風格與品牌宣傳
處理自訂訊息
Cast Connect

根據應用程式需要支援的媒體類型、需要的 UI 自訂程度,以及任何自訂邏輯需求,這三個網路接收器選項的選擇有所不同。

決定要建構的 Web Receiver 類型

如果您的應用程式可以與 Cast 整合,請使用下列提示決定要建構的 Web Receiver 類型:

如果符合下列情況,請建立自訂接收器:
應用程式需要下列一或多項特殊功能:

  • 樣式化媒體接收器未提供樣式
  • 修改觸控設定
  • 授權或驗證
  • 接收端數據分析
  • 與資訊清單分開傳送 DRM 授權
  • 廣告前、播放期間或結束後
  • 任何其他自訂接收器功能或自訂 JavaScript 邏輯
  • 應用程式需要自訂樣式
  • 樣式化媒體接收器的樣式功能不足
如果符合下列情況,請建立樣式化媒體接收器:
  • 應用程式需要自訂樣式
  • 樣式化媒體接收器的樣式功能就已足夠
  • 應用程式不需要上述任何特殊功能
在下列情況中,請使用預設媒體接收器:
  • 支援的媒體格式
  • 應用程式不需要自訂樣式
  • 應用程式不需要上述任何特殊功能