Supported Media for Google Cast

Google Cast supports the following media facilities and types. Some of these require additional coding or the Cast Application Framework (CAF). See Basic CAF Receiver Applications for more information about developing your receiver application to support these media types.

All Google Cast receiver applications support the following.

Image formats

  • BMP
  • GIF
  • JPEG
  • PNG
  • WEBP

Media container formats

  • AAC
  • MP3
  • MP4
  • WAV
  • WebM

Video codecs (Chromecast 1st and 2nd Gen.)

  • H.264 High Profile up to level 4.1 (720p/60fps or 1080p/30fps)
  • VP8 (720p/60fps or 1080p/30fps)

Video codecs (Chromecast Ultra)

  • H.264 High Profile up to level 5.2 (2160p/60fps)
  • VP8 (2160p/60fps)
  • HEVC / H.265 Main and Main10 Profiles up to level 5.1 (2160p/60fps)
  • VP9 Profile 0 and Profile 2 up to level 5.1 (2160p/60fps)

    High Dynamic Range (HDR)

    • Dolby® Vision™
    • HDR10

    Dolby Vision is a trademark of Dolby Laboratories, Inc.

Audio codecs

  • HE-AAC
  • LC-AAC
  • MP3
  • Vorbis
  • WAV (LPCM)
  • FLAC (up to 96kHz/24-bit)
  • Opus

Media type strings

MP4 video and audio

Video codec Video profile Audio codec Audio profile Media type string
H.264 level 3.0 baseline AAC aac_he video/mp4; codecs="avc1.42E01E, mp4a.40.5"
aac_lc video/mp4; codecs="avc1.42E01E, mp4a.40.2"
MP3 video/mp4; codecs="avc1.42E01E, mp4a.69"
video/mp4; codecs="avc1.42E01E, mp4a.6B"
H.264 level 3.1 baseline AAC aac_he video/mp4; codecs="avc1.42E01F, mp4a.40.5"
aac_lc video/mp4; codecs="avc1.42E01F, mp4a.40.2"
MP3 video/mp4; codecs="avc1.42E01F, mp4a.69"
video/mp4; codecs="avc1.42E01F, mp4a.6B"
H.264 level 3.1 main AAC aac_he video/mp4; codecs="avc1.4D401F, mp4a.40.5"
aac_lc video/mp4; codecs="avc1.4D401F, mp4a.40.2"
MP3 video/mp4; codecs="avc1.4D401F, mp4a.69"
video/mp4; codecs="avc1.4D401F, mp4a.6B"
H.264 level 4.0 main AAC aac_he video/mp4; codecs="avc1.4D4028, mp4a.40.5"
aac_lc video/mp4; codecs="avc1.4D4028, mp4a.40.2"
MP3 video/mp4; codecs="avc1.4D4028, mp4a.69"
video/mp4; codecs="avc1.4D4028, mp4a.6B"
H.264 level 4.0 high AAC aac_he video/mp4; codecs="avc1.640028, mp4a.40.5"
aac_lc video/mp4; codecs="avc1.640028, mp4a.40.2"
MP3 video/mp4; codecs="avc1.640028, mp4a.69"
video/mp4; codecs="avc1.640028, mp4a.6B"
H.264 level 4.1 high AAC aac_he video/mp4; codecs="avc1.640029, mp4a.40.5"
aac_lc video/mp4; codecs="avc1.640029, mp4a.40.2"
MP3 video/mp4; codecs="avc1.640029, mp4a.69"
video/mp4; codecs="avc1.640029, mp4a.6B"

MP4 audio only

Format Audio codec Audio profile Media type string
M4A AAC aac_he audio/mp4; codecs="mp4a.40.5"
aac_lc audio/mp4; codecs="mp4a.40.2"
MP3 MP3 audio/mp3
MPA MP3 audio/mpeg
MP3 audio/mpeg; codecs="mp3"
MP4 MP3 audio/mp4; codecs="mp4a.69"
MP3 audio/mp4; codecs="mp4a.6B"

MP4 non-compliant audio media types

Format Audio codec Media type string
M4A HE-AAC audio/mp4; codecs="mp4a.40.05"
LC-AAC audio/mp4; codecs="mp4a.40.02"

WebM video and audio

Format Video codec Audio codec Media type string
WebM VP8 Vorbis video/webm; codecs="vp8, vorbis"
WebM (audio only) Vorbis audio/webm; codecs="vorbis"

Audio passthrough

  • AC-3 (Dolby® Digital™ audio technology)
  • E-AC-3 (EC-3, Dolby® Digital Plus™ audio technology)

The Cast Application Framework (CAF) supports AC-3 passthrough. If you're not using CAF, you can check the codec support prior to creating the source buffer by using the CastReceiverContext.canDisplayType() method and passing mp4a.a5 for AC-3 or mp4a.a6 for E-AC-3.

Dolby, Dolby Digital, and Dolby Digital Plus are trademarks of Dolby Laboratories, Inc.

Media type strings

Format Audio codec Media type string
MP4 AAC audio/mp4; codecs="mp4a.40.2"
AC-3 audio/mp4; codecs="ac-3"
audio/mp4; codecs="mp4a.a5"
E-AC-3 audio/mp4; codecs="ec-3"
audio/mp4; codecs="mp4a.a6"

Delivery methods and adaptive streaming protocols

These are available through use of the Cast Application Framework (CAF).

  • MPEG-DASH

    • DRM Support: PlayReady (SL 2000), Widevine (Level 1)
  • SmoothStreaming

    • DRM Support: PlayReady (SL 2000)
  • HTTP Live Streaming (HLS)

    • DRM Support: AES-128, SAMPLE-AES using Widevine (Level 1)
  • Progressive download without adaptive switching

With adaptive bitrate streaming protocols, you must implement CORS. To implement an encrypted protocol, including DRM, you should develop a Custom Receiver. See DRM support for more information.

Subtitles & closed captions

Your subtitle resources must implement CORS.