每當 Google Cast 推出新版本,我們都會在下方說明變更內容,並更新 API 參考資料。如要瞭解設計檢查清單的變更,請參閱異動記錄。
2024 年 10 月 28 日
Android Sender 22.0.0 和 Android TV 接收器 21.1.1
- 已修正 Protobuf Java Lite 程式庫中可能出現的阻斷服務安全漏洞。
- 已刪除 MediaNotificationService。應用程式不應直接使用此方法。
- 修正搭載 Android R 或更舊版本的裝置發生的錯誤,在 Google Cast 通知中嘗試顯示過小圖片時,可能會導致系統 UI 當機。
2024 年 9 月 4 日:2024 年 11 月 1 日
網路接收端 3.0.0133 3.0.0135 3.0.0137
- CAF 使用的預設 Shaka Player 版本已從 4.3.4 更新至 4.9.2。如需完整的變更清單,請參閱 Shaka Player 異動記錄。
- 為 Shaka 播放器啟用內容預先載入功能。這樣一來,媒體項目或廣告插播就能順暢切換。
- 修正了 Shaka 切換編解碼時發生的錯誤。
- 新增欄位
ErrorSeverity
以便處理 Shaka 錯誤。如果嚴重性為RECOVERABLE
,則不應停止播放。 - 修正並行載入要求的內容載入失敗問題。
- 在內部,CAF 現在使用
shaka.Player#attach
附加媒體元素,而不是將媒體元素傳遞至shaka.Player
建構函式 (在 Shaka API 中淘汰)。 - 已將
frameType
和frameDescription
欄位新增至cast.framework.events.Id3Event
。透過 Shaka Player 播放時,這些欄位會填入資料。 - 新增
REQUEST_GET_STATUS
和REQUEST_PRELOAD
事件。您可以使用PlayerManager#addEventListener
監聽這些事件。 - 針對含有錯誤的
requestId
的載入要求新增錯誤回應,而非顯示任何訊息失敗 - 已修正 Shaka Player
jumpLargeGaps
設定的警告記錄,後者已在 Shaka v4 中淘汰。 - 開始在
MediaStatus
訊息中填入requestId
,以便顯示LOADING
狀態。 - 載入新內容時再度使用 Shaka 播放器例項。
- 停止支援已淘汰的
QUEUE_SHUFFLE
媒體指令。改用QUEUE_UPDATE
。 - 修正 VAST 廣告連播的支援功能,其中每個
<Ad>
代碼都具有sequence
屬性和巢狀<Wrapper>
代碼。 - 修正
crossorigin
屬性從<cast-media-player>
到巢狀<video>
元素的值傳播問題。 - 在 MPL 中公開在頻道內的音訊語言。
2024 年 8 月 22 日
iOS 寄件者 4.8.3
- 修正了 Cast 按鈕在收到輕觸時不會開啟裝置挑選器的錯誤。
- 修正會影響搭載 iOS 17 以上版本裝置且與 AV 轉送相關的當機問題。
2024 年 4 月 18 日
iOS 寄件者 4.8.1
- Cast SDK 目前支援的最低版本為 iOS 14。
- 套件中包含的隱私權資訊清單,以及已簽署的 xcframework。
- 訪客模式已淘汰並遭到移除。這個版本將提供單一版本的 SDK。
- 修正投放時偶爾會播放短廣告的異常終止問題。
2023 年 12 月 11 日
Web Receiver 3.0.0122
- 新增對 VAST 的廣告 Pod 和廣告緩衝區的支援。
- 更新 Google TV 裝置的 Cast 媒體播放器媒體控制項 UI。
- 在
Track
物件中新增audioTrackInfo
欄位。 - 新增了
cast.framework.system.Message
,代表訊息傳送給寄件者或傳送給傳送者。 - 變更了尋找暫停邏輯。現在,只有在
BreakManager#setBreakSeekInterceptor
傳回超過 1 個廣告插播時,Web Receiver 才會建立合成的seek-{timestamp}
休息時間,否則跳轉符號會維持在時間軸中的原始廣告插播。 - 新增
CastReceiverOptions#shakaVariant
選項,以便在 CAF 中載入 Shaka Player 的偵錯版本。 -
已修正使用 AES-128 加密時,HLS 無法透過 Shaka 辨識
PlaybackConfig#licenseRequestHandler
和PlaybackConfig#licenseResponseHandler
的問題 - 已修正使用 Shaka Player 時無法觸發
ID3Event
的問題 - 修正使用片頭廣告後的側載文字軌。
- 修正使用
UITextDisplayer
時發生的文字算繪問題。 - 修正 VAST、MIME 類型和內容保護系統名稱的各種大小寫問題。
- 修正強製字幕功能的各種問題。
- 修正為
BREAK_CLIP_ENDED
事件填入EndedReason
代碼的問題。
2023 年 12 月 4 日
Android Sender 21.4.0 和 Android TV 接收器 21.0.1
-
已發布 play-services-cast:21.4.0 和 play-services-cast-framework:21.4.0
- 已將 minSdkVersion 從 16 提高至 19。
-
已更新為依附於 androidx.mediarouter:mediarouter:1.6.0-beta01。這會讓
MediaRouteButtons
預設為一律可見。此做法有助於減少使用者不需採取任何動作,就能自動開始探索投放裝置的情況。 -
新增
CastOptions.Builder#setSessionTransferEnabled
,設定在啟用輸出切換器時,傳送端應用程式是否應顯示投放裝置。預設值為 true。 -
在應用程式未設定
CastMediaOptions
或 CastMediaOptions 設為空值時,系統不會再建立MediaSessions
。 -
已修正使用
FragmentContainerViews
時可能發生的MiniControllerFragment
android.view.InflateException
錯誤 -
新增會傳回
Tasks
的CastButtonFactory#setUpMediaRouteButton
新版本,讓應用程式能監聽成功或擲回例外狀況。未採用Executor
引數的舊版本將忽略 ModuleUnavailableExceptions,並會在不顯示通知的情況下失敗。
-
已發布 play-services-cast-tv:21.0.1
- 將 minSdkVersion 從 16 提高至 19。
- 這個版本包含品質改善
2023 年 7 月 20 日
iOS Sender 4.8.0
- iOS SDK 目前支援的最低版本為 iOS 13。
- 第一個穩定版 XCFramework。
- 可透過 Cocoapods 取得 XCFrameworks。
- 恢復在媒體播放期間使用實體音量按鈕控制音量的功能。
- 在導覽列中使用投放按鈕時,現在會套用色調顏色。
- 現在可以使用 GCKUIStyle API 自訂導覽標題顏色。
- 修正媒體音軌字幕清單檢視中的透明導覽列問題
- 已修正 XCFramework Beta 版中的當機問題。
- 新增 API,將 UIControl 與快轉或倒轉動作繫結。
- 為 Pixel Tablet 新增投放支援功能。
2023 年 7 月 6 日
Web Receiver 3.0.0111
-
新增使用
BreakManager
addBreak(breakData, breakClips, broadCastMediaStatus)
和removeBreakById(breakId)
進行動態廣告插播的支援 -
已將
Subtype
字串剖析新增至 Smooth 資訊清單。 -
新增對 Shaka Player 中
manifestRequestHandler
、segmentRequestHandler
和licenseRequestHandler
的非同步要求支援。 - 新增強製字幕支援。
- 將 CAF 的預設 Shaka 版本提升至 v4.3.4。
-
清楚闡釋
setActiveByIds
參數說明。 - 修正 CAF 選擇不同音軌的方式。
- 修正 Shaka 要求篩選器的要求主體類型轉換。
-
新增查詢
CreativeInformation
的功能,以便查詢與BreakClip
相關的BreakManager
getCreativeInfoByClipId(breakClipId)
。 - 修正在 D-Pad 控制裝置上載入媒體元素時,媒體中繼資料遺漏的問題。
-
將屬性
hlsSegmentFormat
和hlsVideoSegmentFormat
新增至BreakClip
。 - 已修正使用 MPL 進行區分大小寫的 MIME 類型比較。
- 修正使用 Shaka Player 時,直播 HLS (以 TS 為基礎) 載入時無限緩衝的問題。
-
修正
IS_AT_LIVE_EDGE_CHANGED
事件的PlayerDataBinder
行為 - 修正使用 MPL 時,TS 區段中提供的資料不足而導致無限迴圈的問題。
-
新增
error.stack
以處理 Shaka Player 錯誤。 -
已變更為使用
audioMimeType
欄位 (而不是 Shaka 播放器追蹤物件中的audioCodec
),為變化版本軌的cast.framework.messages.Track.trackContentType
欄位填入資料。 -
為 Shaka Player 曲目新增
shaka.extern.track.label
至cast.framework.messages.Track.name
。 -
擴充
cast.framework.stats.Stats
物件,以便處理shaka.extern.Stats
中的現有欄位。 - 修正含有擴大嵌入式插播的內容的媒體時間計算方式。
2023 年 3 月 28 日
Android Sender 21.3.0 和 Android TV 接收器 21.0.0
-
已發布 play-services-cast:21.3.0 和 play-services-cast-framework:21.3.0
-
NotificationManager
現已用於發布投放媒體通知,而不是Foreground Service
。 -
新增
CastReasonCodes#CAST_CANCELLED
,表示要取消投放工作階段。
-
-
已發布 play-services-cast-tv:21.0.0
- 修正
MediaManager
的 nullable 註解。
- 修正
2022 年 10 月 17 日
網路接收端 3.0.0105
- 將 Shaka Player 升級至 3.2.11 版。
-
新增了
cast.framework.PlaybackConfig#enableUITextDisplayer
,以便使用 DOM 在 Shaka Player 中算繪字幕。 -
新增
cast.framework.CastReceiverOptions#shakaVersion
和cast.framework.CastReceiverOptions#useShakaForHls
,讓接收器可使用 Shaka Player 播放 HLS。 -
PlaybackConfig#manifestHandler
、PlaybackConfig#segmentHandler
和PlaybackConfig#licenseHandler
現在可以存取 HTTP 回應標頭。 -
當
LOAD_BY_ENTITY
訊息因發生錯誤而解決時,會將customData
新增至CommandAndControlManager#ErrorResponseData
。
2022 年 10 月 10 日
Android Sender 21.2.0
-
發布 play-services-cast:21.2.0 和 play-services-cast-framework:21.2.0
-
推出
Output Switcher
功能。 -
新增 API
Cast.Listener#onDeviceNameChanged()
,以通知stream transfer
的裝置名稱變更。 -
淘汰了
CastOptions.Builder#setVolumeDeltaBeforeIceCreamSandwich(double)
和CastOptions#getVolumeDeltaBeforeIceCreamSandwich()
。 -
已透過
MediaNotificationService
修正ForegroundServiceStartNotAllowedException
-
已使用
Media controls in System UI
更新MediaNotificationService
。 -
更新
RemoteMediaClient
API,以便接受可為空值的customData
。 -
已更新
MediaInfo.Builder
,以便接受contentId
或contentURL
。 -
已更新
ImagePicker#onPickImage
,以便接受可為空值的MediaMetadata
。 -
已將
com.google.android.datatransport:transport-api
依附元件更新為最新版本。
-
推出
2022 年 8 月 8 日
Android Sender 21.1.0 和 Android TV 接收器 20.0.0
-
已發布 play-services-cast:21.1.0 和 play-services-cast-framework:21.1.0
-
淘汰了
CastContext#getSharedInstance(Context)
。請改用CastContext#getSharedInstance(Context, Executor)
,該 API 會傳回 Task API,並在 Cast SDK 無法載入內部 Cast 模組時,使用ModuleUnavailableException
處理例外狀況。 -
淘汰了
ApplicationMetadata#getImages()
。請改用ApplicationMetadata#getIconUrl()
,該指令會傳回在 Cast 開發人員控制台中設定的應用程式圖片。 -
已修正註冊及取消註冊
MediaQueue.Callbacks
時可能發生的ConcurrentModificationException
錯誤 -
已修正直播的
MediaInfo#getStreamDuration()
。 -
已修正 Android S 上
MediaNotificationService
的通知彈跳床限制 -
已修正
CastContext
外洩活動參照的問題。 - 修正廣告播放期間顯示清晰背景圖片,而非模糊版本的錯誤。
-
淘汰了
-
已發布 play-services-cast-tv:20.0.0
minSdkVersion
已從 14 升至 16。-
修正
MediaManager#setSessionCompatToken(MediaSession.CompatToken)
未正確支援空值引數的問題。
2022 年 3 月 31 日
Web Receiver 3.0.0103、MPL Player 1.0.0.113
- 將預設的 Shaka 播放器版本升級至 3.2.2 版。
-
新增了
cast.framework.PlaybackConfig#shakaConfig
這個新的 API,可讓您覆寫 Shaka 播放器版本和其他 Shaka 選項。 -
新增了
cast.framework.ui.Controls#hasMediaControlsOverlay()
這個新的 API,用於查詢媒體控制項疊加畫面是否會在應用程式上方顯示。 -
已針對「按讚」使用者動作新增
cast.framework.ui.ControlsButton.LIKE_HEART
樣式。 -
cast.framework.events.EventType.BREAK_CLIP_ENDED
事件資料的currentMediaTime
值現在代表事件發生時,最新廣告插播片段的目前時間。 -
新增方法
cast.framework.PlayerManager#getRawCurrentTimeSec
,用於傳回媒體元素的媒體時間。 -
新增
cast.framework.NetworkRequestInfo#timeoutInterval
,指定玩家要求的 HTTP 要求逾時。 - 修正為 demuxed A/V 串流解碼 CEA 608/708 字幕時會發生的 MPL 錯誤。
- 修正 MPL WebVTT 時間戳記剖析邏輯,以便接受超過 2 位數的小時值。
2021 年 12 月 9 日
Android Sender 21.0.0
- 針對 Kotlin 是否可為空值提供更完善的支援,將空值安全性違規行為改為錯誤。Java 開發人員不會受到影響。如果 Kotlin 開發人員的現有程式碼不安全,就可能會發生新的建構失敗。
2021 年 11 月 19 日
iOS Sender 4.7.0
- 修正 iOS 傳送端支援 搭配 Cast Connect 使用 ATV 憑證的問題。
- 修正使用 Xcode 13 建構時,導覽列背景會變成透明的錯誤。
-
修正透過
GCKUICastButton.
回報的無障礙功能問題 - 修正了在 Wi-Fi 和行動網路之間切換時,會中斷投放工作階段,而非暫停的錯誤。
- 已停止支援 iOS10 和 iOS11,因此支援 32 位元架構。
- 修正其他錯誤並提升效能。
2021 年 11 月 16 日
Android 寄件者 20.1.0
- 注意:指定 Android 12 為目標版本的應用程式必須更新至 Android Sender 20.1.0,才能避免執行階段當機。
- 改善佇列
-
為 MediaQueue 新增
itemsReorderedAtIndexes
回呼,系統會在佇列重新排序後呼叫回呼。 - 開始支援將佇列指令序列化。
-
將
RemoteMediaClient#queueSetRepeatMode
中的customData
參數設為可為空值。 - 遠端顯示功能已淘汰。
minSdkVersion
已從 14 提升至 16。
2021 年 10 月 26 日
Web Receiver 3.0.0102
- 升級至 Shaka 播放器 3.0.13 版 (這會修正先前回報的許多問題)。
- 新增支援智慧螢幕和 Chromecast 上的次要圖片。
- 修正問題:用於偵測重複音軌的邏輯發生錯誤,導致緩衝串流無法顯示字幕
-
修正
LOAD_BY_ENTITY
傳回錯誤時,接收器的錯誤回呼未觸發的問題。 - 支援傳輸串流的高效率 AAC (HE-AAC) 音訊轉碼器。
-
修正
PlayerManager.getStats()
未傳回正確高度和寬度值的錯誤。 -
從
MediaStatus
訊息中移除 VAST 和 VMAP 資訊,以免發生溢位,導致寄件者與收件者之間的連線中斷。 -
修正廣告略過時,系統未將
endedReason
提供給傳送者的問題。 - 修正廣告插播在播放前從載入佇列中移除的問題。
-
新增
cast.framework.message.QueueChange#reorderItemIds
欄位,其中包含受QUEUE_CHANGE
作業影響的佇列項目清單。 - 減少切換音軌時,以 MPL 格式進行 HTTP 即時串流串流的緩衝處理,因此音訊和視訊現在會保持同步。
- 修正 MPL 中內嵌 CEA608/CEA708 字幕的 HLS 串流剖析問題。
- 當媒體暫停超過 5 秒時,系統會隱藏 Chromecast (支援 Google TV) 的媒體控制項。
2021 年 5 月 26 日
iOS Sender 4.6.1
- 修正了針對允許背景執行的應用程式,背景投放工作階段會遭到暫停的問題。
2021 年 5 月 17 日
iOS Sender 4.6.0
- 變更「投放」按鈕的預設行為,讓按鈕在連上 Wi-Fi 時一律顯示。
- 新增了一個說明對話方塊,當使用者輕觸投放按鈕但找不到裝置時,系統會顯示這個對話方塊。
-
已淘汰的
GCKUICastButton::triggersDefaultCastDialog
API。 -
針對透過新的 API
GCKUICastButtonDelegate
實作自訂 UI 的應用程式,新增更統一的對話方塊自訂支援功能。 - 為 iOS 13 以上版本新增深色模式支援。
-
已將廣告標記自訂新增至
GCKUIStyleAttributes
。 -
媒體現在支援
hlsSegmentFormat
和hlsVideoSegmentFormat
。 - 修正多項錯誤並提升執行效能。
2021 年 4 月 29 日
Web Receiver 3.0.0096
- 修正圖片投放功能損毀的錯誤。
2021 年 4 月 20 日
Android Sender 20.0.0 和 Android TV 接收器 18.0.0
-
已發布 play-services-cast:20.0.0 和 play-services-cast-framework:20.0.0。
- 已刪除 GameManager 和相關 API。並已於 2017 年淘汰。
-
將
SessionState
類別新增至投放用戶端程式庫。 -
新增了
CastReasonCodes
以提供CastStatusCodes
的詳細說明。請使用CastContext#getCastReasonCodeForCastStatusCode(int)
方法,從CastStatusCodes
翻譯成CastReasonCodes
。 -
已將
HlsSegmentFormat
和HlsVideoSegmentFormat
新增至MediaInfo.Builder
。 -
將
MediaNotificationService
的foregroundServiceType
標示為mediaPlayback
。 -
已將
com.google.android.datatransport:transport-api
的依附元件更新為最新版本。 -
新增
MediaLoadRequestData.Builder
建構函式,以便透過MediaLoadRequestData
物件進行建構。 - 修正從隨選影片改為直播時,迷你播放器上的播放/暫停按鈕問題。
-
已針對投放媒體通知實作
MediaIntentReceiver#ACTION_DISCONNECT
。
-
已發布 play-services-cast-tv:18.0.0:
-
已將
StoreSessionRequestData
類別和StoreSessionResponseData
類別新增至 Cast 電視程式庫。
-
已將
2021 年 4 月 5 日
Web Receiver 3.0.0095
- 已將 Shaka Player 升級至 3.0.10 版。
-
系統現在支援
STREAM_TRANSFER
媒體指令時,預設會顯示「投放」按鈕。 - 在媒體瀏覽 UI 的底部新增「建議」列。建議列包含互動式方塊,選取後即可播放媒體項目或捲動瀏覽可用的媒體項目。各個方塊也會對應至可用的 Google 助理指令。目前系統語言必須設為英文或日文,系統才會支援建議方塊。
- 修正 Chromecast (支援 Google TV) 中的錯誤,當使用者將相片內容投放至預設接收器時,會顯示媒體控制項重疊畫面。
- 新增對
TRACKS_CHANGED
事件的支援。
2020 年 12 月 18 日
Web Receiver 3.0.0085
-
已新增選項至
CastReceiverOptions
,可停用 Shaka 和 MPL 的載入作業。
2020 年 12 月 3 日
iOS 寄件者 4.5.3
-
已修正
GCKCredentialsData
的載入時間錯誤「架構 arm64 的未定義符號」 -
修正
GCKCredentialsData
上發生的衝突可為空值錯誤的編譯器錯誤。 -
如果
Info.plist
缺少必要的 Bonjour 服務項目,現在會記錄警告訊息。
2020 年 11 月 4 日
iOS 寄件者 4.5.2
-
在 CocoaPods 中將
Protobuf
程式庫的最低版本更新為 3.13。使用舊版Protobuf
版本會導致 SDK 當機。 - 這個版本專屬於 CocoaPods,並使用與 4.5.1 版相同的二進位檔。
2020 年 10 月 13 日
iOS 寄件者 4.5.1
-
修正問題:自訂裝置挑選器的
GCKUICastButton
無法更新以反映正確的投放狀態 - 修正「Conflicting nullability specifier on return types」的警告。
2020 年 9 月 14 日
網路接收端
- 升級至 Shaka Player 2.5.16。
iOS 寄件者 4.5.0
- 新增支援 iOS 14 中的投放裝置探索變更,首次投放時需要使用者明確授權。詳情請參閱「在 iOS 14 中首次投放」。
- 將 SDK 最低支援版本更新為 iOS 10。
2020 年 9 月 8 日
Web Sender
- 推出 Cast Connect,讓 Chrome 應用程式能夠將內容投放到 Android TV 應用程式。詳情請參閱 Android TV 接收器說明文件。
2020 年 8 月 31 日
Web Receiver
- 新增對 DASH 中 HLS/EventStream 中的 #EXT-X-DATERANGE 的支援。
2020 年 8 月 3 日
iOS 傳送器 4.4.8
- 推出 Cast Connect,讓 iOS 應用程式能夠投放到 Android TV 應用程式。詳情請參閱 Android TV 接收器說明文件。
2020 年 7 月 29 日
Android Sender 19.0.0 和 Android TV Receiver 17.0.0
-
推出 Cast Connect,讓 Android TV 應用程式符合 Cast 通訊協定,以便以接收器應用程式的方式運作。詳情請參閱 Android TV Receiver 說明文件。
- 發布 play-services-cast-tv:17.0.0,做為 Android TV 應用程式的接收器 SDK。
- 發布 play-services-cast:19.0.0 和 play-services-cast-framework:19.0.0,包括 play-services-cast-tv 使用的 Cast Connect 傳送端 API 和 API。
-
API 更新:
-
已淘汰
AdBreakStatus#AD_BREAK_CLIP_NOT_SKIPPABLE
,請改用AdBreakClipInfo#AD_BREAK_CLIP_NOT_SKIPPABLE
。 -
將
CastRemoteDisplayLocalService#getDisplay()
重新命名為CastRemoteDisplayLocalService#getCastRemoteDisplay()
,以避免在 Android 11 上發生 API 衝突。 -
已在
MediaError
中新增getCustomData()
和getType()
。 -
在
MediaStatus
中新增了詳細的支援指令位元常數 (MediaStatus#COMMAND_*
)。 -
已公開的
MediaTrack#getRoles()
。 -
已公開的
RemoteMediaClient.Callback#onMediaError()
。
-
已淘汰
2020 年 7 月 13 日
Web Receiver
- 改善預設 UI 的媒體類別偵測功能 (影片與音訊)。
- 新增 Shaka Player 的即時絕對時間支援功能。
- 修正 Nest Hub Max 裝置的音訊錯誤問題。
- 已將 Shaka Player 升級至 2.5.12。
2020 年 5 月 4 日
網路接收端
- 現在可以設定 Google 助理指令的逾時值。
- 系統現在會在錯誤事件中顯示詳細的 MPL 錯誤代碼。
-
只要使用
enforceSupportedCommands
標記,即可強制執行支援的媒體指令。 - 修正播放中斷時回報的支援指令。
- 修正 Google 助理重組載入要求的問題。
- 已修正
getStats
值中的錯誤。
2020 年 3 月 12 日
網路接收端
-
已將裝置功能
IS_CBCS_SUPPORTED
新增至deviceCapabilities
。 - 已將 Shaka Player 升級至 2.5.8。
2020 年 2 月 27 日
iOS 傳送器 v4.4.7
- 修正了未使用 SDK 任何 UI 元件的應用程式,可使用實體音量鍵。
-
修正重複按下向前或向後按鈕時,在展開控制器中發生
currentTime
標籤的問題 -
應用程式移至背景後,
GCKMediaQueue
中的媒體項目會保留。 -
使用者介面自訂更新:
- 您現在可以自訂迷你控制器的進度列。
- 您現在可以自訂投放對話方塊的導覽列和工具列背景顏色。
- 修正 iPhone X 特有的使用者介面問題。
- 修正了幾個導致停滯和當機的問題。
2020 年 2 月 24 日
Android 寄件者 18.1.0
-
已為
MediaError
詳細錯誤代碼和錯誤原因新增預先定義的常數。
2020 年 1 月 22 日
網路接收端
- 已修正在變更支援的指令時播送多個媒體狀態的問題
接收端 v2
- 改善 VAST 廣告的比特率選擇。
MPL
- 新增支援工作階段鍵預先擷取功能。詳情請參閱 HTTP 即時串流第 2 版草稿。
2020 年 1 月 7 日
Web Receiver
-
已在
cast.framework.events.EmsgEvent
中新增 ID3 時間中繼資料支援。此外,EmsgEvent
現已可用於 HLS/CMAF 內容。 -
修正了以下問題:轉換至新的媒體工作階段時,
PLAYER_LOAD_COMPLETE
期間會缺少玩家資料 - 修正媒體圖示與廣告插播片段編號和倒數計時重疊的問題
- 修正問題:第一個廣告插播片段的倒數計時一律顯示 0:00。
- 已將 Shaka Player 升級至 2.5.6。
Web Receiver v2
-
已將新的裝置功能
IS_DEVICE_REGISTERED
新增至deviceCapabilities
。如果已設定,系統就會在 Cast 開發人員控制台註冊投放裝置,以便進行偵錯。 - 修正載入停滯問題。
- 現在起,佇列中的每個失敗項目都會傳送個別媒體錯誤訊息。
MPL
- 修正直播中收到停止訊息後,音訊會繼續播放一段時間的問題
- 修正了影片壓縮成果在品質等級變更期間會顯示的問題。
- 修正使用 *.m4s 區段的 HLS 串流失敗的問題。
2019 年 12 月 5 日
Android 寄件者 18.0.0
-
新增
setMediaSessionEnabled
,讓開發人員啟用及停用 Cast SDK 建立的媒體工作階段。 - 變更投放工作階段期間顯示媒體通知的方式。啟用媒體通知後,通知一律會在投放工作階段中顯示。先前只會在應用程式於背景運作時顯示。
-
變更部分媒體相關類別,以便實作
Parcelable
介面。
2019 年 11 月 11 日
iOS 傳送器 v4.4.6
- 修正與 iOS 9 最低支援版本相關的問題。
2019 年 10 月 7 日
Web Receiver
- 已公開的曲目角色做為曲目中繼資料的一部分。
- 已將 Shaka Player 版本升級至 2.5.5。
2019 年 9 月 23 日
iOS 傳送工具 v4.4.5
- 改善對投放裝置探索和工作階段管理的支援。
-
已將新的媒體指令新增至
GCKMediaStatus
。 -
已將
whenSkippable
屬性新增至GCKAdBreakStatus
。 - 修正 Google Ads 和 iOS 13 的使用者介面問題。
2019 年 9 月 11 日
Android Sender 17.1.0
-
已將
MediaError
欄位新增至 RemoteMediaClient.MediaChannelResult,可用於存取失敗的媒體指令詳細錯誤代碼。 -
MediaStatus.COMMAND_SKIP_FORWARD
和MediaStatus.COMMAND_SKIP_BACKWARD
已淘汰。應用程式應改用MediaStatus.COMMAND_QUEUE_NEXT
和MediaStatus.COMMAND_QUEUE_PREVIOUS
。 -
已在
com.google.android.datatransport:transport-api:2.0.0
中新增依附元件。
2019 年 9 月 9 日
Web Receiver
-
如果預先載入下一個項目,
TV_SHOW
中繼資料類型現在會在預設播放器中顯示「播放下一個」預覽畫面。 -
將
ContentRating
類別新增至cast.framework.messages
命名空間。 -
已更新預設 UI 音訊標題,讓
metadata.artist
的優先順序高於metadata.albumArtist
。 - 新增對負 startTime 值的支援,以表示相對於內容結束或即時邊緣的開始時間。
- 媒體瀏覽:
- 系統現在會在使用者閒置 30 秒後自動隱藏媒體瀏覽導覽匣。
- 已將「播放/暫停」按鈕和媒體項目縮圖新增至 MediaBrowse 疊加畫面的右上角。
- 更新媒體瀏覽清單行為。如今,每次設定媒體瀏覽內容時,系統都會將水平捲動重設為初始最左邊的位置。
- 修正錯誤:
-
延遲解析
BasePlayer
結束承諾,以便觸發媒體元素事件。 - 處理廣告預先載入的載入錯誤。
- 浮水印現在會與其他中繼資料一併顯示。
-
Chromecast 上的預設音訊 UI 會遵循
.progressBar
樣式。 - 在載入前和播放後續媒體項目之間,移除閒置畫面的彈出畫面。
- 修正 Dash 內容的尋軌停頓問題。
網路接收端 v2
-
已將
ContentRating
類別新增至cast.receiver.media
命名空間。 - 修正在佇列中有多個項目時,錯誤資料會傳播不正確的錯誤。
媒體播放器程式庫
- 已將 HLS #EXT-X-MEDIA 屬性新增至 API。
- 錯誤修正:
- 修正導致音軌切換至當機播放失敗的 SourceBuffer remove() 作業的問題。
- 修正了指定封裝音訊格式類型 (例如 *.ec3) 但使用 MPEG-4 式片段 (例如 *.mp4、*.mp4a 等) 時發生的剖析問題。
- 修正顯示頻內 CEA608 字幕時,會明顯延遲顯示的 HLS 問題。
- 修正 HLS 和 Smooth 內容無法載入音訊的問題。
2019 年 8 月 27 日
Web Sender
- Web Sender 現在採用新的自訂元素 v1 語法。這個版本取代了已淘汰的 v0。
-
已修正在 Chrome M77 中新增
getEstimatedBreakTime
、getEstimatedBreakClipTime
和getLiveSeekableRange
函式的breakTime
、breakClipTime
和liveSeekableRange
已變更事件。
2019 年 8 月 12 日
iOS 傳送工具 v4.4.4
- 改善 iOS 13 的使用體驗。
- 改善對 Cast 裝置探索功能的支援。
2019 年 7 月 30 日
Web Receiver
- 已將 Shaka Player 版本升級至 2.5.1。
- 修正問題:在內容載入期間,中繼資料重疊圖層消失的速度過快。
- 修正載入攔截器中拒絕處理的情形,以便清除載入狀態。
- 將
setBrowseContent
更新為可為空值。 - 修正搜尋廣告插播時回報的目前時間不正確的問題。
- 新增對 ignoreTtmlPositionInfo 的支援,以忽略 TTML 字幕定位。
- 改善載入錯誤處理的支援功能:
- 避免觸發多個
MediaFinishedEvent
。 - 觸發媒體管理員錯誤回呼,以在發生載入錯誤時清除播放器。
2019 年 7 月 22 日
iOS 傳送器 v4.4.3
- 透過提供 error_reason,改善對載入錯誤的處理支援。
- 發布不含訪客模式的 SDK 版本。
2019 年 6 月 17 日
Android Sender 17.0.0
- 最新的 SDK 會從 Android 支援資料庫切換至 Jetpack (AndroidX) 程式庫。您必須在應用程式中進行下列變更,程式庫才能運作:
-
將
com.android.tools.build:gradle
升級至 3.2.1 以上版本。 - 將
compileSdkVersion
升級至 28 以上版本。 - 更新應用程式以使用 Jetpack (AndroidX)。按照遷移至 AndroidX 中的指示操作。
- 詳情請參閱 Google API for Android 版本資訊。
2019 年 6 月 10 日
網路接收端
- 推出支援媒體瀏覽功能,這是智慧螢幕上用來探索內容的新功能。
- 在預設 UI 中新增 9 種語言的本地化:
- 丹麥文
- 英文 (英國)
- 英文 (印度)
- 英文 (新加坡)
- 法文 (加拿大)
- 義大利文
- 挪威文
- 荷蘭文
- 瑞典文
- 為遙控器 UI 移除相簿封面的圓角。
- 修正直播和其他區域的錯誤。
iOS 寄件者 4.4.2 版
- 訪客模式
- 支援 Cast 開發人員控制台的「啟用訪客模式」選項。
- 修正訪客模式工作階段管理問題。
- 修正錯誤
- 已修正 4.4.1 版中的本地化問題。
2019 年 4 月 24 日
iOS 傳送工具 v4.4.1
- 引進了直播的 Alpha 版支援。詳情請參閱開發人員指南。
- 新增直播狀態的新資料結構和屬性。
- 已新增 GCKMediaMetadata 金鑰。
- 新增直播媒體指令:
- [GCKRemoteMediaClient loadMediaWithLoadRequestData:]
- [GCKRemoteMediaClient findWithOptions:]
- 改善展開控制器使用者介面,支援直播:
- 變更展開控制器的版面配置和外觀。
- 修正錯誤
- 修正 iPhone X 上的 GCKUICastContainerViewController 底部。
- 修正 OS 正在執行大量網路活動時發生的重新連線問題。
- 修正使用 GCKUICastButton 時,無障礙標籤初始化發生當機的問題。
2019 年 4 月 23 日
Web Receiver
- 推出直播的 Alpha 版支援功能。詳情請參閱開發人員指南。
- 更新使用者介面,支援直播功能,包括直播指標。
- 新增媒體類別欄位至媒體狀態,用於指出媒體是影片、音訊或相片。
- 修正錯誤
- 修正 playConfig.segmentHandler 回傳值的用法。
媒體播放器程式庫
- 為採用 MPL 的 HTTP 即時串流新增 HEVC 轉碼器支援。
Web Sender
Android Sender 16.2.0
- 引進了直播的 Alpha 版支援。詳情請參閱開發人員指南。
- 新增直播狀態的新資料結構和屬性。
- 新增 MediaMetadata 鍵。
- 新增直播媒體指令:
- RemoteMediaClient#load(MediaLoadRequestData)
- RemoteMediaClient#seek(MediaSeekOptions)
- 改善展開控制器使用者介面,支援直播:
- 為展開式控制器 UI 小工具新增直播支援。
- 變更展開控制器的版面配置和外觀。
- 推出與直播相容的 CastSeekBar 小工具,取代原生 SeekBar。
- 已修改 ExpandedControllerActivity,以便使用 CastSeekBar 取代 SeekBar,以維持直播相容性。ExpandedControllerActivity#getSeekBar() 已淘汰,會傳回虛擬執行個體。
- 新增 MediaStatus#PLAYER_STATE_LOADING 播放器狀態:
- 當網路接收器開始載入媒體時,MediaStatus 中的 playerState 屬性會設為 MediaStatus#PLAYER_STATE_LOADING,直到開始緩衝或播放內容為止。
- 在大多數情況下,應用程式會以處理 MediaStatus#PLAYER_STATE_BUFFERING 相同的方式處理這個狀態。
- 緩衝和載入狀態不一定可以互換。
- 在載入期間,網路接收端尚未解析所有媒體資訊,因此唯一可用的媒體資訊是傳送方載入媒體要求中包含的內容。
- 緩衝期間,媒體資訊可能會包含接收器解析的其他資訊。
- 修改 MediaMetadata 以支援有聲書:
- 新增 MediaMetadata 鍵。
- 新增有聲書的中繼資料類型。
2019 年 3 月 25 日
網路接收端
-
將
document.registerElement()
替換為customElements.define()
,讓 Web 接收器 SDK 與較新版本的 Cast 平台相容。 -
MediaStatus.breakStatus
現在會在內容含有廣告插播,但目前並未播放廣告插播時,傳回空白物件。 - 修正內嵌 VAST 代碼剖析的問題。
媒體播放器程式庫
- 修正切換音軌時延遲約 20 秒的問題。
2019 年 2 月 13 日
網路接收端
- 修正觸控使用者介面的「略過廣告」按鈕突然出現的問題。
- 修正了遙控器顯示中斷資訊的問題。
媒體播放器程式庫
- 修正預先載入媒體的 licenseUrl 處理問題。
2019 年 2 月 5 日
iOS 寄件者 4.3.5 版
- 開始支援有聲書中繼資料,詳情請參閱 GCKMediaMetadata.h。
- 在 Podspec 上為 static_framework 設定正確的值。
- 在 connection controller 中,為導覽列和工具列分割樣式屬性。
- 修正錯誤
- 修正了在特定資料庫初始化失敗時發生的異常終止問題。
- 修正網路接收器在來電或鬧鐘響鈴時音量列的問題
- 已修正探索期間對特定委派方法的多餘呼叫
- 修正問題:在隊列中最後一個項目播放完畢後,媒體佇列清單不會清除。
- 在網路無法使用時,禁止顯示無法連線的附近裝置。
- 針對無法控制音量的裝置,停用裝置 View Controller 上的音量滑桿。