Playing 4K Ultra HD Videos

Only Amazon Fire TV (Gen 2, Gen 3) and Fire TV Edition support playback of 4K UHD media. To support 4K playback, you must adhere to the supported output resolutions, DRM systems, and codecs for 4K UHD content.

For details on Amazon Fire TV device naming conventions, see Naming Conventions for Fire TV Devices.

Certification and Performance Testing

Apps that support Ultra HD video will be certified by Amazon to ensure they meet the required customer experience. Typically, certification takes a couple of weeks.

When you submit your app, add a note that it is 4K-enabled. Most likely in your app's description, you would already highlight to users that your app offers 4K Ultra HD media playback. But adding a manual note will also let Amazon know to apply 4K performance testing on the app during the certification process.

4K Ultra HD Specifications

This section provides information on the following specifications:

Resolution and Refresh Rate

The following output resolutions are supported:

Feature Fire TV Edition Fire TV (Gen 2)
Supported output resolutions
  • 4K UHD at 24 FPS
  • 4K UHD at 25 FPS
  • 4K UHD at 30 FPS
  • Full HD (1080p) up to 60 FPS
  • 4K UHD at 60fps
  • AVC up to 4K @ 30fps
  • 4K UHD at 24 FPS
  • 4K UHD at 25 FPS
  • 4K UHD at 30 FPS
  • Full HD (1080p) up to 60 FPS

Special Notes for Amazon Fire TV Gen 2

Amazon Fire TV (Gen 2) is expected to stay mostly in Full HD (1080p) mode at 60 FPS, even on TVs that support 4K UHD format. Fire TV (Gen 2) switches to 4K UHD mode only for 4K UHD content playback.

The following frame rates are recommended when playing content:

  • For Full HD (1080p) and HD (720p) content, leave the device in Full HD (1080p) 60 FPS mode and use frame rate conversion from the content’s native frame rate (as in Fire TV - Gen 1).
  • For 4K UHD content, switch to the nearest 4K UHD mode before starting playback. For example, switch to 4K UHD at 24 FPS to play 4k UHD content of 24 FPS or 23.97 FPS, switch to 4K UHD at 25 FPS to play content of 25 FPS, and switch to 4K UHD at 30 FPS to play content of 30 FPS or 29.97 FPS.
  • Initiate a mode switch only if the user enters the playback window or if the next title in the queue requires a different playback resolution / frame rate.

HDMI Mode switch

By default, Amazon Fire TV (Gen 2) operates at 1080p at 60 FPS mode even when connected to a 4K UHD TV. Hence, in order to play 4K UHD content, you must switch the TV to 4K UHD display mode. This switching between HDMI display modes is referred to as an HDMI Mode switch. The HDMI Mode switch is triggered by the application when it needs to play 4K UHD content. For more details about HDMI Mode switch, see APIs for HDMI Mode Switch (Fire TV Gen 2 only).

Amazon Extension Library for 4K

Amazon developed an Amazon Extension Library for 4K that provides high level APIs to trigger this HDMI Mode switch and show a user-friendly overlay message before the TV starts switching the display mode. This overlay message improves the overall customer experience.

Special Notes for Fire TV Edition

Fire TV Edition's hardware decoder supports playback of 4K @ 60 FPS. To play 4K @ 60 FPS, the timing requirement of media pipeline is aggressive and the app may not be able to render 4K frames at 16 msec interval due to thread and process scheduling limitations of the kernel. This may result into frame drops and a sub-par movie experience. To get the best out of the hardware, use Tunnel Mode playback. For details, see Tunnel Mode Playback.

DRM Systems

The following DRM solutions are supported:

Feature Fire TV Edition Fire TV (Gen 2)
DRM
  • Widevine L1/L3 DRM
  • PlayReady DRM (2.5 max)
  • HDCP 2.2 link to compatible panels
  • Widevine L1/L3 DRM
  • PlayReady DRM (2.5 max)
  • HDCP 2.2 link to compatible panels

Codecs

The following codecs are supported:

Feature Fire TV Edition Fire TV (Gen 2)
Codecs
  • MediaCodec that supports HEVC main and high profiles up to L5.1
  • MediaCodec that supports HEVC main10 L5 profile (The output will be in 8-bit Rec 709 color space for both 8-bit and 10-bit* color input.)
  • MediaCodec that supports HEVC main L5 profile
  • MediaCodec that supports HEVC main10 L5 profile (The output will be in 8-bit Rec 709 color space for both 8-bit and 10-bit color input.)

* Currently, 10-bit HEVC support on Fire TV Edition has known issue. The issue will be fixed in an upcoming release.

Input/Output Color Formats

The following color specs are supported:

Feature Fire TV Edition Fire TV (Gen 2)
Input Color Formats / Output Color Formats
  • 8-bit Rec709 (HEVC Main profile L5) / 8-bit Rec709
  • 10-bit* Rec709 (HEVC Main10 profile L5) / 8-bit Rec709
  • 10-bit* Rec2020 (HEVC Main10 profile L5) / 8-bit Rec709
  • 8-bit Rec709 (HEVC Main profile L5) / 8-bit Rec709
  • 10-bit Rec709 (HEVC Main10 profile L5) / 8-bit Rec709
  • 10-bit Rec2020 (HEVC Main10 profile L5) / 8-bit Rec709

* Currently, 10-bit HEVC support on Fire TV Edition has known issue. The issue will be fixed in an upcoming release.

10-bit color input is supported by the codec, but the output does not support 10-bit output.

Power Consumption

The following table specifies the maximum allowed power consumption for Amazon Fire TV devices:

Fire TV
Edition
Fire TV Stick
(Gen 2)
Fire TV
(Gen 2)
Fire TV Stick
(Gen 1)
Fire TV
(Gen 1)
N/A -- Varies with the dimensions of the TV.* 2.1 Watts 3.8 Watts 1.7 Watts 3.6 Watts

* Note: Power constraints should not be an issue for Fire TV Edition. The only limits are those set by the Consumer Electronics Commission (CEC). Fire TV Edition draws most of its power through the screen, and the max power consumption depends on the screen size and brightness (it's in the 100W range). You can calculate out the max power according to size using the formula "Power < 0.12 x Amps + 25Watts".

Run the app 10 minutes before measuring the power consumption on the Fire TV Stick. For Fire TV, run the app for at least 30 minutes before taking the power measurement. Your power measurement can continue for 5 minutes.

If the power consumption from your app exceeds the limits in the previous table, Fire TV will throttle the performance of your app. If throttling is not enough, Fire TV will reset the system.

In your code, you can check for the device (whether Fire TV Stick or Fire TV) by looking for the amazon.hardware.low_power feature. See Identifying Amazon Fire TV Devices for more details.