diff --git a/docs/REFERENCES/brightscript/interfaces/ifdeviceinfo.md b/docs/REFERENCES/brightscript/interfaces/ifdeviceinfo.md
index 27a0cd71..6daabb16 100644
--- a/docs/REFERENCES/brightscript/interfaces/ifdeviceinfo.md
+++ b/docs/REFERENCES/brightscript/interfaces/ifdeviceinfo.md
@@ -1078,7 +1078,7 @@ An associative array that includes a flag indicating whether the video format ca
If the Roku Player cannot play that video format, it will return false, and return the closest video format it can play, with the changed fields, such as:
-`{"codec":["hevc","mpeg1","mpeg2","h263","mpeg4 avc","vp9"],"result":false,"updated":"codec"}`
+`{"codec":["hevc","mpeg1","mpeg2","h263","mpeg4 avc"],"result":false,"updated":"codec"}`
The return value shows the Roku Player cannot play requested video format, shows the updated keys of the requested video format (level and profile) that it can support, and the all the key values of the requested video format supported by the Roku Player.
diff --git a/docs/REFERENCES/brightscript/interfaces/ifvideoplayer.md b/docs/REFERENCES/brightscript/interfaces/ifvideoplayer.md
index 5779f4fc..5e024e44 100644
--- a/docs/REFERENCES/brightscript/interfaces/ifvideoplayer.md
+++ b/docs/REFERENCES/brightscript/interfaces/ifvideoplayer.md
@@ -318,7 +318,7 @@ An roArray, where each element in the array represents a single audio track that
| Format |
String |
-Contains the format of the currently playing video stream.
| Value | Meaning |
|---|
| "" | No stream playing | | none | Stream contains no playable video | | unknown | Stream contains unknown video | | hevc | ISO/IEC 23008-2, H.265, HEVC | | hevc_b | ISO/IEC 23008-2 Annex-B, H.265, HEVC | | mpeg1 | ISO/IEC 11172-2, MPEG-1 part 2, H.261 | | mpeg2 | ISO/IEC 13818-2, MPEG-2 part 2, H.262 | | mpeg4_2 | ISO/IEC 14496-2, MPEG-4 part 2, H.263 | | mpeg4_10b | ISO/IEC 14496-10, MPEG-4 part 10 Annex-B, H.264, vc-1 | | mpeg4_15 | ISO/IEC 14496-15, MPEG-4 part 15, H.264, vc-1 | | AVC vc1 | vc-1 | | wmv | Microsoft Windows Media Video | | vp8 | VP8 codec | | vp9 | VP9 codec |
|
+Contains the format of the currently playing video stream.
| Value | Meaning |
|---|
| "" | No stream playing | | none | Stream contains no playable video | | unknown | Stream contains unknown video | | hevc | ISO/IEC 23008-2, H.265, HEVC | | hevc_b | ISO/IEC 23008-2 Annex-B, H.265, HEVC | | mpeg1 | ISO/IEC 11172-2, MPEG-1 part 2, H.261 | | mpeg2 | ISO/IEC 13818-2, MPEG-2 part 2, H.262 | | mpeg4_2 | ISO/IEC 14496-2, MPEG-4 part 2, H.263 | | mpeg4_10b | ISO/IEC 14496-10, MPEG-4 part 10 Annex-B, H.264, vc-1 | | mpeg4_15 | ISO/IEC 14496-15, MPEG-4 part 15, H.264, vc-1 | | AVC vc1 | vc-1 | | wmv | Microsoft Windows Media Video |
|
| HasAccessibi;ityDescription |
diff --git a/docs/REFERENCES/scenegraph/media-playback-nodes/video.md b/docs/REFERENCES/scenegraph/media-playback-nodes/video.md
index 4c5a1c17..fd7421a6 100644
--- a/docs/REFERENCES/scenegraph/media-playback-nodes/video.md
+++ b/docs/REFERENCES/scenegraph/media-playback-nodes/video.md
@@ -355,7 +355,7 @@ The `control` field includes a `prebuffer` option, which allows the video to beg
|
READ\_ONLY |
- Contains the format of the currently playing video stream.
| Value | Meaning |
|---|
| "" | No stream playing | | none | Stream contains no playable video | | unknown | Stream contains unknown video | | hevc | ISO/IEC 23008-2, H.265, HEVC | | hevc\_b | ISO/IEC 23008-2 Annex-B, H.265, HEVC | | mpeg1 | ISO/IEC 11172-2, MPEG-1 part 2, H.261 | | mpeg2 | ISO/IEC 13818-2, MPEG-2 part 2, H.262 | | mpeg4\_2 | ISO/IEC 14496-2, MPEG-4 part 2, H.263 | | mpeg4\_10b | ISO/IEC 14496-10, MPEG-4 part 10 Annex-B, H.264, vc-1 | | mpeg4\_15 | ISO/IEC 14496-15, MPEG-4 part 15, H.264, vc-1 | | AVC vc1 | vc-1 | | wmv | Microsoft Windows Media Video | | vp8 | VP8 codec | | vp9 | VP9 codec |
|
+ Contains the format of the currently playing video stream.
| Value | Meaning |
|---|
| "" | No stream playing | | none | Stream contains no playable video | | unknown | Stream contains unknown video | | hevc | ISO/IEC 23008-2, H.265, HEVC | | hevc\_b | ISO/IEC 23008-2 Annex-B, H.265, HEVC | | mpeg1 | ISO/IEC 11172-2, MPEG-1 part 2, H.261 | | mpeg2 | ISO/IEC 13818-2, MPEG-2 part 2, H.262 | | mpeg4\_2 | ISO/IEC 14496-2, MPEG-4 part 2, H.263 | | mpeg4\_10b | ISO/IEC 14496-10, MPEG-4 part 10 Annex-B, H.264, vc-1 | | mpeg4\_15 | ISO/IEC 14496-15, MPEG-4 part 15, H.264, vc-1 | | AVC vc1 | vc-1 | | wmv | Microsoft Windows Media Video |
|
| pauseBufferStart |
diff --git a/docs/SPECIFICATIONS/media/index.md b/docs/SPECIFICATIONS/media/index.md
index 9d1c3126..1393b14a 100644
--- a/docs/SPECIFICATIONS/media/index.md
+++ b/docs/SPECIFICATIONS/media/index.md
@@ -25,7 +25,7 @@ Roku devices support several audio/video container formats. These formats encaps
- supported video codecs: AVC, HEVC
- supported audio codecs: AAC, AC3, EAC3, AC4, ALAC, MP3, PCM
- MKV, WebM
- - supported video codecs: AVC, HEVC, VP9
+ - supported video codecs: AVC, HEVC
- supported audio codecs: AAC, AC3, EAC3, Dolby Atmos, ALAC, DTS, DTSE, FLAC, MP3, OPUS, PCM, VORBIS
**Additional Notes:**
@@ -69,7 +69,7 @@ Roku supports the following widely-used standard formats for adaptive bit rate s
| Video Codecs |
AVC, HEVC |
- AVC, HEVC, VP9 |
+ AVC, HEVC |
AVC, HEVC |
@@ -129,24 +129,20 @@ For trickplay of live streams, apps should seek to a position of 999,999 seconds
## Supported video codecs
-Videos can be encoded using `H.264`, `HEVC (H.265)`, `VP9`, or `AV1` (DASH only) codecs.
-
-
+Videos can be encoded using `H.264`, `HEVC (H.265)`, or `AV1` (DASH only) codecs.
|
AVC (H.264) |
- HEVC (H.265)[^1] |
- VP9[^2] |
+ HEVC (H.265)1 |
AV1 (DASH only) |
- | Aspect Ratio 2[^3] |
- Various |
+ Aspect Ratio2 |
Various |
Various |
|
@@ -155,14 +151,12 @@ Videos can be encoded using `H.264`, `HEVC (H.265)`, `VP9`, or `AV1` (DASH only)
Dimension |
Various up to 1920x1080 |
Various up to 3840x2160 |
- Various up to 3840x2160 |
Various up to 7680 x 4320 |
- | Input Frame Rate[^4] |
+ Input Frame Rate3 |
24p, 25p, 30p, 50p, 60p |
24p, 25p, 30p, 50p, 60p |
- 24p, 25p, 30p, 60p[^6] |
24p,25p,30p,50p,60p |
@@ -170,20 +164,17 @@ Videos can be encoded using `H.264`, `HEVC (H.265)`, `VP9`, or `AV1` (DASH only)
| Rec.709 |
Rec.709, Rec.2020 |
Rec.709, Rec.2020 |
- Rec.709, Rec.2020 |
| Profile |
main, high |
main, main 10 |
- profile 0, profile 2 |
main, main 10 |
| Level |
4.1, 4.2 |
4.1, 5.0, 5.1 |
- |
4.1, 5.0, 5.1 |
@@ -191,25 +182,21 @@ Videos can be encoded using `H.264`, `HEVC (H.265)`, `VP9`, or `AV1` (DASH only)
| Constrained VBR |
Constrained VBR |
Constrained VBR |
- Constrained VBR |
| Video Bitrate |
Up to 10Mbps |
Up to 40Mbps |
Up to 40Mbps |
- Up to 40Mbps |
| Peak Video Bit rate |
1.5x average |
1.5x average |
1.5x average |
- 1.5x average |
- | Key Frame Interval [^5] |
- < 10s |
+ Key Frame Interval3 |
< 10s |
< 10s |
< 10s |
@@ -218,7 +205,6 @@ Videos can be encoded using `H.264`, `HEVC (H.265)`, `VP9`, or `AV1` (DASH only)
HDR support |
Dolby Vision: dvav.09 |
Dolby Vision: dvhe.05 HDR10 (HEVC profile Main 10) HLG |
- HDR10 |
Dolby Vision HDR10 HDR10+ |
@@ -227,12 +213,11 @@ Videos can be encoded using `H.264`, `HEVC (H.265)`, `VP9`, or `AV1` (DASH only)
Some decoder and security features are device specific. For details, see [Roku Models and Features](doc:hardware).
-[^1]: Only supported on **Roku 4K capable** devices.
-[^2]: Only supported on **Roku 4K capable** devices.
-[^3]: The dimensions vary on a title-by-title basis depending on the source material and the target aspect ratio for the encoding (such as 4:3 or 16:9). Content should always be encoded at full width, and the height is adjusted. For example, a 1.66 aspect ratio source is encoded as a 720x432 video and displayed as letterboxed for a 4:3 display.
-[^4]: All segments should start with an IDR frame and align across all bit rate variants. The recommended segment size is < 10 seconds for VOD and < 5 seconds for live content, and the segment size should be constant.
-[^5]: All segments should start with an IDR frame and align across all bit rate variants. The recommended segment size is < 10 seconds for VOD and < 5 seconds for live content, and the segment size should be constant.
-[^6]: Only supported on HDR10 capable Roku devices.
+
+ - Only supported on Roku 4K capable devices.
+ - The dimensions vary on a title-by-title basis depending on the source material and the target aspect ratio for the encoding (such as 4:3 or 16:9). Content should always be encoded at full width, and the height is adjusted. For example, a 1.66 aspect ratio source is encoded as a 720x432 video and displayed as letterboxed for a 4:3 display.
+ - All segments should start with an IDR frame and align across all bit rate variants. The recommended segment size is < 10 seconds for VOD and < 5 seconds for live content, and the segment size should be constant.
+
## Supported audio codecs
@@ -374,13 +359,11 @@ function CanPlay4K() as Boolean
return false 'HDCP version is not 2.2
end if
- ' Check if the Roku player can decode 4K 60fps HEVC streams or 4K 30fps vp9 streams
+ ' Check if the Roku player can decode 4K 60fps HEVC streams
hevc_video = { Codec: "hevc", Profile: "main", Level: "5.1" }
- vp9_video = { Codec: "vp9", Profile: "profile 0" }
can_decode_hevc = dev_info.CanDecodeVideo(hevc_video)
- can_decode_vp9 = dev_info.CanDecodeVideo(vp9_video)
- if can_decode_hevc.result <> true OR can_decode_vp9.result <> true
- return false 'device cannot decode 4K HEVC AND VP9 streams
+ if can_decode_hevc.result <> true
+ return false 'device cannot decode 4K HEVC streams
end if
' (Optional) Check if the Roku player decrypts inside a TEE
@@ -393,7 +376,7 @@ function CanPlay4K() as Boolean
end function
```
-> This example returns true only if both 4K HEVC and 4K VP9 decoding is supported. If your 4K UHD content is only encoded in one of these codecs, modify the third conditional statement as necessary.
+> This example returns true only if 4K HEVC decoding is supported. If your 4K UHD content is only encoded in one of these codecs, modify the third conditional statement as necessary.
### HDR10 video streaming requirements