출시되는 각 새 버전의 Google Cast에 대해 변경사항이 아래에 설명되고 API 참조가 업데이트됩니다. 디자인 체크리스트 변경사항은 changelog를 참고하세요.
2024년 10월 28일
Android Sender 22.0.0 및 Android TV Receiver 21.1.1
- Protobuf Java Lite 라이브러리에서 발견된 잠재적인 서비스 거부(DoS) 취약점이 수정되었습니다.
- MediaNotificationService가 삭제되었습니다. 애플리케이션에서 직접 사용해서는 안 됩니다.
- Google Cast 알림에 너무 작은 이미지를 표시하려고 하면 시스템 UI가 비정상 종료될 수 있는 Android R 및 이전 버전을 실행하는 기기에서 발생하는 버그를 수정합니다.
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 changelog를 참고하세요.
- Shaka 플레이어에 콘텐츠 미리 로드를 사용 설정했습니다. 이렇게 하면 미디어 항목 또는 광고 시점 간에 원활하게 전환할 수 있습니다.
- Shaka 코덱 전환으로 인한 오류가 수정되었습니다.
- Shaka 오류에 관한 새 필드
ErrorSeverity
를 추가했습니다. 심각도가RECOVERABLE
인 경우 재생이 중지되면 안 됩니다. - 동시 로드 요청의 콘텐츠 로드 실패를 수정했습니다.
- 이제 내부적으로 CAF는 미디어 요소를
shaka.Player
생성자에 전달하는 대신shaka.Player#attach
를 사용하여 미디어 요소를 연결합니다(Shaka API에서 지원 중단됨). cast.framework.events.Id3Event
에frameType
및frameDescription
필드를 추가했습니다. 이 필드는 재생에 Shaka Player가 사용될 때 채워집니다.REQUEST_GET_STATUS
및REQUEST_PRELOAD
이벤트를 추가했습니다. 이러한 이벤트는PlayerManager#addEventListener
를 사용하여 수신 대기할 수 있습니다.- 잘못된
requestId
가 있는 로드 요청에 대해 자동으로 실패하는 대신 오류 응답을 추가했습니다. - Shaka v4에서 지원 중단된 Shaka Player
jumpLargeGaps
구성의 경고 로그가 수정되었습니다. LOADING
상태의MediaStatus
메시지에requestId
를 채우기 시작했습니다.- 새 콘텐츠를 로드할 때 Shaka 플레이어 인스턴스를 재활용합니다.
- 지원 중단된
QUEUE_SHUFFLE
미디어 명령어의 지원이 중단되었습니다. 대신QUEUE_UPDATE
를 사용합니다. - 각
<Ad>
태그에sequence
속성과 중첩된<Wrapper>
태그가 있는 VAST 광고 모음 지원이 수정되었습니다. <cast-media-player>
에서 중첩된<video>
요소로 값이 없는crossorigin
속성의 전파를 수정했습니다.- MPL에서 인밴드 오디오 언어를 노출합니다.
2024년 8월 22일
iOS Sender 4.8.3
- 탭 수신 시 전송 버튼으로 기기 선택 도구가 열리지 않는 버그가 수정되었습니다.
- AVRouting과 관련하여 iOS 17 이상을 실행하는 기기에 영향을 미치는 비정상 종료 문제가 수정되었습니다.
2024년 4월 18일
iOS Sender 4.8.1
- Cast SDK에서 지원하는 최소 버전은 이제 iOS 14입니다.
- 서명된 xcframework와 함께 패키지에 포함된 개인 정보 보호 매니페스트
- 게스트 모드가 지원 중단되고 삭제되었습니다. 이번 출시부터 한 가지 버전의 SDK를 통합할 수 있습니다.
- 전송 중에 가끔 짧은 광고가 재생될 때 발생하는 비정상 종료 문제를 해결했습니다.
2023년 12월 11일
Web Receiver 3.0.0122
- VAST용 광고 모음 및 광고 뷔페 지원을 추가했습니다.
- Google TV 기기용 Cast Player 미디어 컨트롤 UI가 업데이트되었습니다.
Track
객체에 새audioTrackInfo
필드를 추가했습니다.- 발신자로부터 수신되거나 발신된 메시지를 나타내는
cast.framework.system.Message
를 추가했습니다. - 탐색 시점 로직을 변경했습니다. 이제 웹 수신기는
BreakManager#setBreakSeekInterceptor
에서 반환된 광고 시간이 두 개 이상 있을 때만 합성seek-{timestamp}
중단을 생성합니다. 그러지 않으면 탐색 중단이 타임라인의 원래 중단과 동일하게 유지됩니다. - CAF에서 Shaka Player의 디버그 버전을 로드하는
CastReceiverOptions#shakaVariant
옵션을 추가했습니다. -
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 Receiver 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
가 항상 표시됩니다. 이를 통해 사용자 작업 없이 전송 기기 검색이 자동으로 시작되는 시나리오를 줄일 수 있었습니다. -
출력 전환기가 사용 설정된 경우 전송자 애플리케이션에서 Cast 기기를 표시해야 하는지 설정하는
CastOptions.Builder#setSessionTransferEnabled
를 추가했습니다. 기본값은 true입니다. -
앱이
CastMediaOptions
를 설정하지 않거나 CastMediaOptions를 null로 설정하지 않으면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 베타에서 비정상 종료 문제가 수정되었습니다.
- UIControl을 앞으로 또는 뒤로 탐색 작업에 바인딩하는 API를 추가했습니다.
- Pixel Tablet에 전송 지원이 추가되었습니다.
2023년 7월 6일
웹 수신기 3.0.0111
-
BreakManager
addBreak(breakData, breakClips, broadCastMediaStatus)
및removeBreakById(breakId)
를 사용한 동적 광고 삽입 지원을 추가했습니다. -
Smooth 매니페스트에
Subtype
문자열 파싱을 추가했습니다. -
Shaka Player의
manifestRequestHandler
,segmentRequestHandler
,licenseRequestHandler
에 비동기 요청 지원을 추가했습니다. - 강제 자막 지원을 추가했습니다.
- CAF용 기본 Shaka 버전을 v4.3.4로 이동했습니다.
-
setActiveByIds
매개변수 설명을 명확하게 했습니다. - CAF가 고유한 오디오 트랙을 선택하는 방식이 수정되었습니다.
- Shaka 요청 필터의 요청 본문 유형 변환을 수정했습니다.
-
BreakManager
getCreativeInfoByClipId(breakClipId)
에서BreakClip
와 관련된CreativeInformation
를 쿼리하는 기능을 추가했습니다. - DPad 제어 기기에서 미디어 요소를 로드하는 중에 미디어 메타데이터가 누락되는 문제를 수정했습니다.
-
BreakClip
에hlsSegmentFormat
및hlsVideoSegmentFormat
속성을 추가했습니다. - MPL을 사용하여 대소문자를 구분하는 MIME 유형 비교를 수정했습니다.
- Shaka Player를 사용하여 로드 시 라이브 HLS(TS 기반) 무한 버퍼링을 수정했습니다.
-
IS_AT_LIVE_EDGE_CHANGED
이벤트의PlayerDataBinder
동작을 수정했습니다. - MPL을 사용하여 TS 세그먼트에 제공된 데이터가 충분하지 않을 때 발생하는 무한 루프를 수정했습니다.
-
Shaka Player 오류에 관한
error.stack
를 추가했습니다. -
대안 트랙의
cast.framework.messages.Track.trackContentType
필드를 채우기 위해 Shaka Player의 트랙 객체에서audioCodec
대신audioMimeType
필드를 사용하도록 변경되었습니다. -
Shaka Player 트랙의
cast.framework.messages.Track.name
에shaka.extern.track.label
를 추가했습니다. -
shaka.extern.Stats
의 기존 필드를 고려하도록cast.framework.stats.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을 출시했습니다.
-
이제
Foreground Service
대신NotificationManager
가 Cast 미디어 알림을 게시하는 데 사용됩니다. -
Cast 세션이 취소되고 있음을 나타내는 새로운
CastReasonCodes#CAST_CANCELLED
를 추가했습니다.
-
이제
-
play-services-cast-tv:21.0.0 출시
MediaManager
의 null을 허용하는 주석이 수정되었습니다.
2022년 10월 17일
Web Receiver 3.0.0105
- Shaka 플레이어를 버전 3.2.11로 업그레이드했습니다.
-
DOM을 사용하여 Shaka Player에서 자막을 렌더링하는
cast.framework.PlaybackConfig#enableUITextDisplayer
를 추가했습니다. -
수신기가 HLS 재생에 Shaka Player를 사용할 수 있도록
cast.framework.CastReceiverOptions#shakaVersion
및cast.framework.CastReceiverOptions#useShakaForHls
를 추가했습니다. -
이제
PlaybackConfig#manifestHandler
,PlaybackConfig#segmentHandler
,PlaybackConfig#licenseHandler
에서 HTTP 응답 헤더에 액세스할 수 있습니다. -
LOAD_BY_ENTITY
메시지가 오류로 확인될 때CommandAndControlManager#ErrorResponseData
에customData
를 추가했습니다.
2022년 10월 10일
Android Sender 21.2.0
-
play-services-cast:21.2.0 및 play-services-cast-framework:21.2.0이 출시되었습니다.
-
Output Switcher
기능을 도입했습니다. -
stream transfer
의 기기 이름 변경을 알리는 새 APICast.Listener#onDeviceNameChanged()
를 추가했습니다. -
CastOptions.Builder#setVolumeDeltaBeforeIceCreamSandwich(double)
및CastOptions#getVolumeDeltaBeforeIceCreamSandwich()
가 지원 중단되었습니다. -
MediaNotificationService
로ForegroundServiceStartNotAllowedException
을 수정했습니다. -
MediaNotificationService
을Media controls in System UI
로 업데이트했습니다. -
null 허용
customData
를 허용하도록RemoteMediaClient
API를 업데이트했습니다. -
contentId
또는contentURL
를 허용하도록MediaInfo.Builder
를 업데이트했습니다. -
nullable
MediaMetadata
를 허용하도록ImagePicker#onPickImage
를 업데이트했습니다. -
com.google.android.datatransport:transport-api
종속 항목을 최신 버전으로 업데이트했습니다.
-
2022년 8월 8일
Android Sender 21.1.0 및 Android TV Receiver 20.0.0
-
play-services-cast:21.1.0 및 play-services-cast-framework:21.1.0이 출시되었습니다.
-
CastContext#getSharedInstance(Context)
가 지원 중단되었습니다. 대신 Task API를 반환하는CastContext#getSharedInstance(Context, Executor)
와 Cast SDK가 내부 Cast 모듈을 로드하지 못할 때 예외를 처리하는ModuleUnavailableException
를 사용하세요. -
ApplicationMetadata#getImages()
가 지원 중단되었습니다. 대신 Cast 개발자 콘솔에 설정된 애플리케이션 이미지를 반환하는ApplicationMetadata#getIconUrl()
를 사용하세요. -
MediaQueue.Callbacks
를 등록 및 등록 취소할 때 발생할 수 있는ConcurrentModificationException
오류가 해결되었습니다. -
라이브 스트림의
MediaInfo#getStreamDuration()
가 수정되었습니다. -
Android S에서
MediaNotificationService
의 알림 트램펄린 제한사항을 수정했습니다. -
CastContext
에서 활동 참조가 유출되는 문제를 수정했습니다. - 광고 중에 흐리게 처리한 버전 대신 선명한 배경 이미지가 표시되는 버그를 수정했습니다.
-
-
play-services-cast-tv:20.0.0 출시
minSdkVersion
를 14에서 16으로 올렸습니다.-
null 인수가 제대로 지원되지 않는
MediaManager#setSessionCompatToken(MediaSession.CompatToken)
문제를 수정했습니다.
2022년 3월 31일
웹 수신기 3.0.0103, MPL 플레이어 1.0.0.113
- 기본 Shaka 플레이어 버전이 3.2.2로 업그레이드되었습니다.
-
Shaka 플레이어 버전 및 기타 Shaka 옵션을 재정의할 수 있는 새로운 API
cast.framework.PlaybackConfig#shakaConfig
를 추가했습니다. -
미디어 컨트롤 오버레이가 애플리케이션 위에 렌더링되는지 쿼리하는 새로운 API
cast.framework.ui.Controls#hasMediaControlsOverlay()
를 추가했습니다. -
'좋아요' 사용자 작업을 위한 새로운 스타일
cast.framework.ui.ControlsButton.LIKE_HEART
를 추가했습니다. -
이제
cast.framework.events.EventType.BREAK_CLIP_ENDED
이벤트 데이터의currentMediaTime
값은 이벤트가 발생한 시점의 최신 시점 클립의 현재 시간을 나타냅니다. -
미디어 요소의 미디어 시간을 반환하는
cast.framework.PlayerManager#getRawCurrentTimeSec
메서드를 추가했습니다. -
플레이어 요청에 HTTP 요청 제한 시간을 지정하는
cast.framework.NetworkRequestInfo#timeoutInterval
를 추가했습니다. - 디뮤싱된 A/V 스트림의 CEA 608/708 자막을 디코딩할 때 발생하는 MPL 버그를 수정했습니다.
- MPL WebVTT 타임스탬프 파싱 로직이 시간 값에 2자리 이상을 허용하도록 수정되었습니다.
2021년 12월 9일
Android Sender 21.0.0
- null 안전 위반을 오류로 만들어 Kotlin을 위한 null 허용 여부 지원이 개선되었습니다. Java 개발자는 영향을 받지 않습니다. Kotlin 개발자에게 null에 안전하지 않은 기존 코드가 있는 경우 새로운 빌드 실패가 발생할 수 있습니다.
2021년 11월 19일
iOS Sender 4.7.0
- Cast Connect에서 ATV 사용자 인증 정보를 사용하는 iOS 발신자 지원을 수정했습니다.
- Xcode 13으로 빌드할 때 탐색 메뉴의 배경이 투명해지는 버그가 수정되었습니다.
-
GCKUICastButton.
으로 보고된 접근성 문제를 수정했습니다. - Wi-Fi와 모바일 네트워크 간에 전환하면 전송 세션이 일시중지되지 않고 연결이 끊기는 버그가 수정되었습니다.
- iOS10 및 iOS11 지원이 중단되어 32비트 아키텍처 지원도 중단되었습니다.
- 기타 버그 수정 및 성능 개선사항
2021년 11월 16일
Android Sender 20.1.0
- 참고: Android 12를 타겟팅하는 앱은 런타임 비정상 종료를 방지하기 위해 Android Sender 20.1.0으로 업데이트해야 합니다.
- 큐 개선사항
-
대기열이 재정렬되면 호출되는 새
itemsReorderedAtIndexes
콜백을 MediaQueue에 추가했습니다. - 대기열 명령어의 직렬화에 대한 지원을 추가했습니다.
-
RemoteMediaClient#queueSetRepeatMode
의customData
매개변수가 null을 허용하도록 설정했습니다. - 원격 디스플레이 기능은 지원 중단되었습니다.
minSdkVersion
가 14에서 16으로 상향되었습니다.
2021년 10월 26일
웹 수신기 3.0.0102
- Shaka Player v3.0.13으로 업그레이드하여 이전에 보고된 여러 문제를 수정합니다.
- 스마트 디스플레이 및 Chromecast의 보조 이미지에 대한 지원이 추가되었습니다.
- 중복 트랙을 감지하는 데 사용되는 로직의 오류로 인해 버퍼링된 스트림에 자막이 표시되지 않는 문제가 해결되었습니다.
-
LOAD_BY_ENTITY
가 오류를 반환했을 때 수신자의 오류 콜백이 실행되지 않는 문제가 수정되었습니다. - 전송 스트림에 고효율 AAC(HE-AAC) 오디오 코덱 지원을 추가했습니다.
-
PlayerManager.getStats()
가 높이와 너비의 올바른 값을 반환하지 않는 버그가 수정되었습니다. -
발신자와 수신자의 연결이 끊어질 수 있는 오버플로를 방지하기 위해
MediaStatus
메시지에서 VAST 및 VMAP 정보를 삭제했습니다. -
광고가 건너뛰어질 때
endedReason
이 발신자에게 제공되지 않는 문제를 수정했습니다. - 재생 전에 광고 시점이 로드 대기열에서 삭제되는 문제를 수정했습니다.
-
QUEUE_CHANGE
작업의 영향을 받는 대기열 항목 목록이 포함된 새cast.framework.message.QueueChange#reorderItemIds
필드를 추가했습니다. - 오디오 트랙 간에 전환할 때 MPL에서 HLS 실시간 스트림의 버퍼링이 감소하여 이제 오디오와 동영상이 동기화된 상태로 유지됩니다.
- 삽입된 CEA608/CEA708 자막이 있는 MPL의 HLS 스트림 파싱을 수정했습니다.
- 미디어가 5초 넘게 일시중지되면 Chromecast with Google TV의 미디어 컨트롤이 숨겨집니다.
2021년 5월 26일
iOS Sender 4.6.1
- 백그라운드 실행을 허용하는 애플리케이션의 백그라운드 Cast 세션이 일시중지되는 문제를 수정했습니다.
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 Receiver 18.0.0
-
play-services-cast:20.0.0 및 play-services-cast-framework:20.0.0이 출시되었습니다.
- GameManager 및 관련 API를 삭제했습니다. 2017년부터 지원 중단되었습니다.
-
전송 클라이언트 라이브러리에
SessionState
클래스를 추가했습니다. -
CastStatusCodes
에 관한 자세한 설명을 제공하는CastReasonCodes
를 추가했습니다.CastContext#getCastReasonCodeForCastStatusCode(int)
메서드를 사용하여CastStatusCodes
에서CastReasonCodes
로 변환합니다. -
MediaInfo.Builder
에HlsSegmentFormat
및HlsVideoSegmentFormat
를 추가했습니다. -
MediaNotificationService
의foregroundServiceType
를mediaPlayback
로 표시했습니다. -
com.google.android.datatransport:transport-api
의 종속 항목을 최신 버전으로 업데이트했습니다. -
MediaLoadRequestData
객체에서 빌드할MediaLoadRequestData.Builder
생성자를 추가했습니다. - VOD에서 라이브 스트림으로 전환할 때 미니 플레이어의 재생/일시중지 버튼 문제가 해결되었습니다.
-
Cast 미디어 알림용
MediaIntentReceiver#ACTION_DISCONNECT
를 구현했습니다.
-
play-services-cast-tv:18.0.0 출시:
-
StoreSessionRequestData
클래스와StoreSessionResponseData
클래스를 Cast-tv 라이브러리에 추가했습니다.
-
2021년 4월 5일
Web Receiver 3.0.0095
- Shaka Player를 3.0.10으로 업그레이드했습니다.
-
이제
STREAM_TRANSFER
미디어 명령어가 지원되면 전송 버튼이 기본적으로 표시됩니다. - 미디어 탐색 UI 하단에 추천 표시줄을 추가했습니다. 추천 표시줄에는 선택 시 미디어 항목을 재생하거나 사용 가능한 미디어 항목을 스크롤할 수 있는 대화형 칩이 포함됩니다. 또한 각 칩은 사용 가능한 Google 어시스턴트 명령어에 매핑됩니다. 추천 검색어 칩은 현재 시스템 언어가 영어 또는 일본어로 설정된 경우에만 지원됩니다.
- 사진 콘텐츠를 기본 수신기로 전송할 때 미디어 컨트롤 오버레이가 표시되는 Chromecast with Google TV의 버그를 수정했습니다.
TRACKS_CHANGED
이벤트 지원이 추가되었습니다.
2020년 12월 18일
Web Receiver 3.0.0085
-
Shaka 및 MPL의 로드를 사용 중지하는 옵션을
CastReceiverOptions
에 추가했습니다.
2020년 12월 3일
iOS 발신자 4.5.3
-
GCKCredentialsData
의 로드 시간 오류 '아키텍처 arm64의 정의되지 않은 기호'가 수정되었습니다. -
GCKCredentialsData
의 충돌하는 null 허용 여부에 관한 컴파일러 오류가 수정되었습니다. -
이제
Info.plist
에서 필수 Bonjour 서비스 항목이 누락된 경우 경고 메시지가 로깅됩니다.
2020년 11월 4일
iOS 발신자 4.5.2
-
CocoaPods에서
Protobuf
라이브러리의 최소 버전을 3.13으로 업데이트했습니다. 이전Protobuf
버전을 사용하면 SDK가 비정상 종료됩니다. - 이 출시는 CocoaPods 전용이며 v4.5.1과 동일한 바이너리를 사용합니다.
2020년 10월 13일
iOS Sender 4.5.1
-
맞춤 기기 선택기가 있는
GCKUICastButton
가 올바른 전송 상태를 반영하도록 업데이트되지 않는 문제를 수정했습니다. - '반환 유형에서 null 허용 여부 지정자 충돌' 경고가 수정되었습니다.
2020년 9월 14일
웹 수신기
- Shaka Player가 2.5.16으로 업그레이드되었습니다.
iOS Sender 4.5.0
- iOS 14에 처음으로 전송할 때 명시적인 사용자 권한이 필요한 Cast 기기 검색 변경사항에 관한 지원이 추가되었습니다. 자세한 내용은 iOS 14에서 최초 전송을 참고하세요.
- 최소 SDK 지원이 iOS 10으로 업데이트되었습니다.
2020년 9월 8일
웹 발신자
- Chrome 앱에서 Android TV 앱으로 전송할 수 있는 Cast Connect를 도입했습니다. 자세한 내용은 Android TV Receiver 문서를 참고하세요.
2020년 8월 31일
웹 수신기
- DASH의 HLS/EventStream에 #EXT-X-DATERANGE 지원을 추가했습니다.
2020년 8월 3일
iOS 발신자 4.4.8
- iOS 앱이 Android TV 앱에 전송할 수 있는 Cast Connect를 도입했습니다. 자세한 내용은 Android TV 수신기 문서를 참고하세요.
2020년 7월 29일
Android Sender 19.0.0 및 Android TV Receiver 17.0.0
-
Android TV 앱이 Cast 프로토콜을 준수하도록 하여 수신기 앱처럼 동작할 수 있는 Cast Connect를 도입했습니다. 자세한 내용은 Android TV 수신기 문서를 참고하세요.
- play-services-cast-tv:17.0.0이 Android TV 앱용 수신기 SDK로 출시되었습니다.
- Cast Connect sender API 및 play-services-cast-tv에서 사용하는 API를 포함하여 play-services-cast:19.0.0 및 play-services-cast-framework:19.0.0을 출시했습니다.
-
API 업데이트:
-
AdBreakStatus#AD_BREAK_CLIP_NOT_SKIPPABLE
지원이 중단되었습니다.AdBreakClipInfo#AD_BREAK_CLIP_NOT_SKIPPABLE
를 대신 사용하세요. -
Android 11에서 API 충돌을 방지하기 위해
CastRemoteDisplayLocalService#getDisplay()
의 이름이CastRemoteDisplayLocalService#getCastRemoteDisplay()
로 변경되었습니다. -
MediaError
에getCustomData()
및getType()
를 추가했습니다. -
MediaStatus
에 지원되는 자세한 명령어 비트 상수(MediaStatus#COMMAND_*
)를 추가했습니다. -
MediaTrack#getRoles()
가 노출되었습니다. -
RemoteMediaClient.Callback#onMediaError()
가 노출되었습니다.
-
2020년 7월 13일
웹 수신기
- 기본 UI (동영상 또는 오디오)의 미디어 카테고리 감지가 개선되었습니다.
- Shaka Player의 실시간 절대 시간 지원을 추가했습니다.
- Nest Hub Max 기기의 오디오 글리치 문제를 해결했습니다.
- Shaka Player가 2.5.12 버전으로 업그레이드되었습니다.
2020년 5월 4일
웹 수신기
- 이제 Google 어시스턴트 명령어의 제한 시간 값을 구성할 수 있습니다.
- 이제 상세한 MPL 오류 코드가 오류 이벤트에 노출됩니다.
-
이제
enforceSupportedCommands
플래그를 사용하여 지원되는 미디어 명령어를 적용할 수 있습니다. - 재생 중단 중에 보고된 지원되는 명령어를 수정했습니다.
- 어시스턴트 셔플 로드 요청 관련 문제를 수정했습니다.
getStats
값의 버그가 수정되었습니다.
2020년 3월 12일
웹 수신기
-
새 기기 기능
IS_CBCS_SUPPORTED
를deviceCapabilities
에 추가했습니다. - Shaka Player가 2.5.8로 업그레이드되었습니다.
2020년 2월 27일
iOS Sender v4.4.7
- SDK의 UI 구성요소를 사용하지 않는 앱의 실제 볼륨 버튼을 수정했습니다.
-
앞뒤 버튼을 반복해서 누르면 펼쳐진 컨트롤러의
currentTime
라벨이 표시되지 않는 문제를 수정했습니다. -
GCKMediaQueue
의 미디어 항목은 앱이 백그라운드로 이동한 후에도 유지됩니다. -
UI 맞춤설정 업데이트:
- 이제 미니 컨트롤러의 진행률 표시줄을 맞춤설정할 수 있습니다.
- 이제 전송 대화상자의 탐색 메뉴 및 툴바 배경 색상을 맞춤설정할 수 있습니다.
- iPhone X 관련 UI 문제를 수정했습니다.
- 중단 및 비정상 종료를 일으키는 몇 가지 문제를 해결했습니다.
2020년 2월 24일
Android Sender 18.1.0
-
MediaError
자세한 오류 코드 및 오류 이유를 위한 사전 정의된 상수를 추가했습니다.
2020년 1월 22일
웹 수신기
- 지원되는 명령어를 변경할 때 여러 미디어 상태가 브로드캐스트되는 문제를 수정했습니다.
리시버 v2
- VAST 광고의 비트 전송률 선택이 개선되었습니다.
MPL
- 세션 키 미리 가져오기 지원이 추가되었습니다. 자세한 내용은 HTTP 라이브 스트리밍 2판 초안을 참고하세요.
2020년 1월 7일
웹 수신기
-
cast.framework.events.EmsgEvent
에 ID3 시간 메타데이터 지원을 추가했습니다. 또한 이제 HLS/CMAF 콘텐츠에EmsgEvent
가 전달됩니다. -
새 미디어 세션으로 전환할 때
PLAYER_LOAD_COMPLETE
중에 플레이어 데이터가 누락되는 문제를 수정했습니다. - 미디어 아이콘이 브레이크 클립 번호 및 카운트다운과 겹치는 문제를 수정했습니다.
- 첫 번째 광고 시점 클립의 카운트다운이 항상 0:00으로 표시되는 문제를 수정했습니다.
- Shaka Player가 2.5.6으로 업그레이드되었습니다.
웹 수신기 v2
-
deviceCapabilities
에 새 기기 기능IS_DEVICE_REGISTERED
를 추가했습니다. 설정하면 Cast 기기가 디버깅을 위해 Cast 개발자 콘솔에 등록됩니다. - 로드 지연 문제가 해결되었습니다.
- 이제 대기열에서 실패한 항목마다 개별 미디어 오류 메시지가 전송됩니다.
MPL
- 중지 메시지가 수신된 후에도 오디오가 계속 재생되는 라이브 스트림 문제를 수정했습니다.
- 화질 수준을 변경하는 동안 동영상 압축 아티팩트가 표시되는 문제를 수정했습니다.
- *.m4s 세그먼트를 사용하는 HLS 스트림이 실패하는 문제를 수정했습니다.
2019년 12월 5일
Android Sender 18.0.0
-
개발자가 Cast SDK에서 만든 미디어 세션을 사용 설정 및 중지할 수 있도록
setMediaSessionEnabled
를 추가했습니다. - Cast 세션 중 미디어 알림이 표시되는 방식이 변경되었습니다. 미디어 알림이 사용 설정된 경우 전송 세션 중에 항상 표시됩니다. 이전에는 앱이 백그라운드에 있을 때만 표시되었습니다.
-
Parcelable
인터페이스를 구현하도록 일부 미디어 관련 클래스를 변경했습니다.
2019년 11월 11일
iOS Sender v4.4.6
- 지원되는 최소 iOS 버전 9와 관련된 문제를 수정했습니다.
2019년 10월 7일
웹 수신기
- 트랙 메타데이터의 일부로 트랙 역할을 노출했습니다.
- Shaka Player 버전을 2.5.5로 업그레이드했습니다.
2019년 9월 23일
iOS Sender v4.4.5
- Cast 기기 검색 및 세션 관리 지원이 개선되었습니다.
-
GCKMediaStatus
에 새로운 미디어 명령어를 추가했습니다. -
GCKAdBreakStatus
에whenSkippable
속성이 추가되었습니다. - Google Ads 및 iOS 13의 UI가 수정되었습니다.
2019년 9월 11일
Android 발신자 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일
웹 수신기
-
이제 다음 항목이 미리 로드되면
TV_SHOW
메타데이터 유형의 기본 플레이어에 '다음 재생 중' 미리보기가 있습니다. -
cast.framework.messages
네임스페이스에ContentRating
클래스를 추가했습니다. -
metadata.artist
가metadata.albumArtist
보다 우선 적용되도록 기본 UI 오디오 제목을 업데이트했습니다. - 콘텐츠 종료 또는 라이브 에지에 대한 시작 시간을 나타내는 음수 startTime 값 지원을 추가했습니다.
- 미디어 탐색:
- 이제 사용자 활동이 멈춘 후 30초가 지나면 미디어 탐색 창이 자동으로 숨겨집니다.
- 미디어 둘러보기 오버레이의 오른쪽 상단에 재생/일시중지 버튼과 미디어 항목 썸네일을 추가했습니다.
- 미디어 둘러보기 목록 동작이 업데이트되었습니다. 이제 미디어 탐색 콘텐츠가 설정될 때마다 수평 스크롤이 가장 왼쪽 초기 위치로 재설정됩니다.
- 버그 수정:
-
미디어 요소 이벤트가 실행되도록 하기 위해
BasePlayer
종료 프라미스 해결이 지연됩니다. - 광고 미리 로드의 로드 오류를 처리했습니다.
- 이제 워터마크가 나머지 메타데이터와 함께 표시됩니다.
-
Chromecast의 기본 오디오 UI는
.progressBar
스타일을 따릅니다. - 로드 전 및 후속 미디어 항목 재생 사이에 IDLE 화면이 스플래시되지 않도록 했습니다.
- Dash 콘텐츠의 탐색 중단 문제를 수정했습니다.
웹 수신기 v2
-
cast.receiver.media
네임스페이스에ContentRating
클래스를 추가했습니다. - 대기열에 항목이 여러 개 있을 때 오류 데이터가 잘못 전파되는 버그가 수정되었습니다.
미디어 플레이어 라이브러리
- API에 HLS #EXT-X-MEDIA 속성을 추가했습니다.
- 버그 수정:
- SourceBuffer remove() 작업 실패로 인해 오디오 트랙 전환 시 재생이 비정상 종료되는 문제를 수정했습니다.
- 패킹된 오디오 형식 유형이 지정되었지만(예: *.ec3) MPEG-4 기반 세그먼트가 사용되는 경우(예: *.mp4, *.mp4a 등) 파싱 문제가 수정되었습니다.
- 인밴드 CEA608 자막이 눈에 띄는 지연 시간으로 표시되는 HLS 문제가 수정되었습니다.
- 오디오가 로드되지 않는 HLS 및 매끄러운 콘텐츠를 수정했습니다.
2019년 8월 27일
웹 발신자
- Web Sender는 이제 새로운 Custom Elements v1 구문을 사용합니다. 이 버전은 지원 중단된 v0을 대체합니다.
-
Chrome M77에 새로 추가된
getEstimatedBreakTime
,getEstimatedBreakClipTime
,getLiveSeekableRange
함수를 사용하여breakTime
,breakClipTime
,liveSeekableRange
의 변경된 이벤트가 수정되었습니다.
2019년 8월 12일
iOS Sender v4.4.4
- iOS 13의 환경이 개선되었습니다.
- Cast 기기 검색 지원이 개선되었습니다.
2019년 7월 30일
웹 수신기
- Shaka Player 버전이 2.5.1로 업그레이드되었습니다.
- 콘텐츠 로드 중에 메타데이터 오버레이가 너무 빨리 사라지는 문제를 해결했습니다.
- 로드 상태를 삭제하도록 로드 인터셉터에서 거부 처리를 수정했습니다.
setBrowseContent
를 null을 허용하도록 업데이트했습니다.- 광고 시점을 탐색할 때 보고된 현재 시간이 잘못된 문제를 수정했습니다.
- TTML 자막 위치 지정을 무시하기 위한 ignoreTtmlPositionInfo 지원을 추가했습니다.
- 로드 오류 처리에 대한 지원 개선:
- 여러 개의
MediaFinishedEvent
실행을 방지했습니다. - 로드 오류 시 플레이어를 삭제하도록 미디어 관리자 오류 콜백을 트리거했습니다.
2019년 7월 22일
iOS Sender v4.4.3
- error_reason을 제공하여 로드 오류 처리 지원이 개선되었습니다.
- 게스트 모드가 없는 SDK 버전을 출시했습니다.
2019년 6월 17일
Android Sender 17.0.0
- 최신 SDK가 Android 지원 라이브러리에서 Jetpack(AndroidX) 라이브러리로 전환됩니다. 앱에서 다음과 같이 변경하지 않으면 라이브러리가 작동하지 않습니다.
-
com.android.tools.build:gradle
를 v3.2.1 이상으로 업그레이드합니다. compileSdkVersion
를 28 이상으로 업그레이드합니다.- Jetpack (AndroidX)을 사용하도록 앱을 업데이트합니다. AndroidX로 이전의 안내를 따릅니다.
- 자세한 내용은 Android용 Google API 출시 노트를 참고하세요.
2019년 6월 10일
웹 수신기
- 스마트 디스플레이에서 콘텐츠를 검색하는 새로운 기능인 미디어 탐색 지원을 도입했습니다.
- 9개의 새로운 언어로 기본 UI에 현지화가 추가되었습니다.
- 덴마크어
- 영어(영국)
- 영어(인도)
- 영어(싱가포르)
- 프랑스어(캐나다)
- 이탈리아어
- 노르웨이어
- 네덜란드어
- 스웨덴어
- 원격 UI의 앨범 아트에서 모서리 둥글게 처리를 삭제했습니다.
- 라이브 및 기타 영역의 버그가 수정되었습니다.
iOS Sender v4.4.2
- 게스트 모드
- Cast 개발자 콘솔에서 '게스트 모드 사용 설정' 옵션 지원이 추가되었습니다.
- 게스트 모드 세션 관리 문제가 해결되었습니다.
- 버그 수정
- v4.4.1에서 발생한 현지화 문제가 수정되었습니다.
2019년 4월 24일
iOS Sender v4.4.1
- 라이브 스트림에 대한 알파 지원을 도입했습니다. 자세한 내용은 개발자 가이드를 참고하세요.
- 라이브 스트림 상태에 관한 새로운 데이터 구조와 속성을 추가했습니다.
- 새 GCKMediaMetadata 키를 추가했습니다.
- 라이브 스트림 미디어 명령어를 추가했습니다.
- [GCKRemoteMediaClient loadMediaWithLoadRequestData:]
- [GCKRemoteMediaClient seekWithOptions:]
- 라이브 스트림을 지원하도록 확장된 컨트롤러 UI가 개선되었습니다.
- 확장된 컨트롤러의 레이아웃과 모양을 변경했습니다.
- 버그 수정
- iPhone X에서 GCKUICastContainerViewController의 하단이 수정되었습니다.
- OS가 광범위한 네트워크 활동을 실행할 때 발생하는 재연결 문제가 수정되었습니다.
- GCKUICastButton을 사용한 접근성 라벨 초기화 중 비정상 종료가 수정되었습니다.
2019년 4월 23일
웹 수신기
- 라이브 스트림에 알파 지원이 도입되었습니다. 자세한 내용은 개발자 가이드를 참고하세요.
- 실시간 표시기를 포함하여 실시간 스트림을 지원하도록 UI를 업데이트했습니다.
- 미디어가 동영상, 오디오 또는 사진인지 나타내는 mediaCategory 필드를 미디어 상태에 추가했습니다.
- 버그 수정
- playbackConfig.segmentHandler 반환 값의 사용을 수정했습니다.
미디어 플레이어 라이브러리
- MPL의 HLS에 HEVC 코덱 지원을 추가했습니다.
웹 발신자
- 라이브 스트림에 대한 알파 지원을 도입했습니다. 자세한 내용은 개발자 가이드를 참고하세요.
- 광고 지원이 도입되었습니다. 자세한 내용은 개발자 가이드를 참고하세요.
- 건너뛸 수 있는 광고의 RemotePlayerController.skipAd()를 추가했습니다.
Android Sender 16.2.0
- 라이브 스트림에 알파 지원이 도입되었습니다. 자세한 내용은 개발자 가이드를 참고하세요.
- 라이브 스트림 상태에 관한 새로운 데이터 구조와 속성을 추가했습니다.
- 새 MediaMetadata 키가 추가되었습니다.
- 라이브 스트림 미디어 명령어를 추가했습니다.
- RemoteMediaClient#load(MediaLoadRequestData)
- RemoteMediaClient#seek(MediaSeekOptions)
- 라이브 스트림을 지원하도록 확장된 컨트롤러 UI 개선:
- 확장 컨트롤러 UI 위젯에 라이브 스트림 지원을 추가했습니다.
- 확장 컨트롤러의 레이아웃과 모양을 변경했습니다.
- 네이티브 SeekBar를 대체하는 라이브 스트림 호환 CastSeekBar 위젯을 도입했습니다.
- 라이브 스트림 호환성을 위해 SeekBar 대신 CastSeekBar를 사용하도록 ScaledControllerActivity가 수정되었습니다. ExpandedControllerActivity#getSeekBar()가 지원 중단되었으며 더미 인스턴스를 반환합니다.
- 새로운 MediaStatus#PLAYER_STATE_LOADING 플레이어 상태를 추가했습니다.
- 웹 수신기가 미디어 로드를 시작하면 MediaStatus의 playerState 속성이 콘텐츠 버퍼링 또는 재생을 시작할 때까지 MediaStatus#PLAYER_STATE_LOADING으로 설정됩니다.
- 대부분의 경우 앱은 MediaStatus#PLAYER_STATE_BUFFERING을 처리하는 것과 동일한 방식으로 이 상태를 처리합니다.
- 버퍼링과 로드 상태가 항상 상호 호환되지는 않습니다.
- 로드하는 동안 웹 수신기는 아직 모든 미디어 정보를 확인하지 못했으므로 사용할 수 있는 유일한 미디어 정보는 발신자의 미디어 로드 요청에 있는 정보입니다.
- 버퍼링하는 동안 미디어 정보에는 수신기에 의해 확인된 추가 정보가 포함될 수 있습니다.
- 오디오북을 지원하도록 MediaMetadata를 수정했습니다.
- 새 MediaMetadata 키가 추가되었습니다.
- 오디오북에 새로운 메타데이터 유형을 추가했습니다.
2019년 3월 25일
웹 수신기
-
웹 수신기 SDK가 최신 버전의 Cast 플랫폼과 호환되도록
document.registerElement()
사용을customElements.define()
로 대체했습니다. -
이제 콘텐츠에 광고 시점이 있지만 현재 광고 시점이 재생되고 있지 않은 경우
MediaStatus.breakStatus
에서 빈 객체를 반환합니다. - 인라인 VAST 태그 파싱과 관련된 문제를 해결했습니다.
미디어 플레이어 라이브러리
- 오디오 트랙을 전환할 때 약 20초의 지연 문제가 해결되었습니다.
2019년 2월 13일
웹 수신기
- 터치 UI의 광고 건너뛰기 버튼이 갑자기 표시되는 문제를 수정했습니다.
- 리모컨에 정보 표시가 중단되는 문제를 해결했습니다.
미디어 플레이어 라이브러리
- 미리 로드된 미디어의 licenseUrl을 처리하는 문제 수정
2019년 2월 5일
iOS Sender v4.3.5
- 오디오북 메타데이터 지원을 추가했습니다. 자세한 내용은 GCKMediaMetadata.h를 참고하세요.
- podspec에서 static_framework에 올바른 값을 설정합니다.
- 연결 컨트롤러에서 탐색 메뉴와 툴바의 styleAttributes를 분할합니다.
- 버그 수정
- 특정 데이터베이스 초기화 실패 시 비정상 종료 문제를 수정했습니다.
- 수신 전화나 알람이 울릴 때 발생하는 웹 수신기 볼륨 바 문제를 수정했습니다.
- 검색 중에 특정 대리 메서드가 중복으로 호출되는 문제를 수정했습니다.
- 현재 재생목록의 마지막 항목 재생이 완료된 후 미디어 현재 재생목록이 삭제되지 않는 문제를 수정했습니다.
- 네트워크를 사용할 수 없을 때 연결할 수 없는 근처 기기를 표시하는 것이 허용되지 않습니다.
- 볼륨을 제어할 수 없는 기기의 기기 뷰 컨트롤러에서 볼륨 슬라이더를 사용 중지했습니다.