There are a large number of Roku devices available. The original device was released in 2008, with many different versions released since then. There are also televisions that use the Roku OS for their core functions, which offer a similar user experience compared to a Roku player, with the addition of viewing broadcast TV.
Beginning in 2016, Roku devices began using more powerful processors, and 4K also became available. Beginning with the 6th generation devices, MPEG-2 video support was added to the players. Roku TVs have always supported MPEG-2 video, as that is the Digital TV standard (ATSC 1.0) for North America.
Roku devices only support a limited number of video and audio codecs, as well as only a few containers. You can view this page for more detailed information. But in general, the video must be the H.264/MP4/AVC codec, with H.265 for the 4K devices and MPEG-2 for 6th generation and newer devices. For audio, the codec must be AAC/PCM (stereo only)/AC3. DTS is supported only as a passthough bitstream from MKV files. As for containers, MKV, MP4 or MOV is officially listed, but TS containers (.TS, .M2TS) are also supported.
As of Sept 2023, Roku players are currently at the tenth generation, with perhaps a new generation coming this fall. Testing has shown that Roku player can play a maximum video bitrate around 230 Mbps. This is sufficient for a ripped 4K Blu Ray movie, which tend to max out in the 160-180 Mbps framerate. A 250 Mbps test video will cause buffering and not be watchable. Also, Roku devices will max out on WiFi around 230 Mbps as well. And this is under ideal conditions using 802.11AC on 5 GHz. Using the 2.4 GHz band sees speed at or below 100 Mbps. This is a limitation of the hardware Roku uses for both WiFi and video processing.
The first Roku profile included with Serviio (named “Roku Media Player”) is designed to support the earlier players. These players had a bit rate limit of around 16 Mbps, so any HD media most likely needed to be rate-limited. By default, this is always the profile assigned by Serviio to any Roku device. If your Roku is new enough to support higher bit rates and additional codecs, you must manually select a more appropriate profile from the list below.
Roku 1080 Media Player (2016+) This profile allows Serviio to stream without bit-rate limits for newer Roku devices. Most likely the oldest Roku players that would work well with this profile would be the Roku 2 (4210) and Roku 3 (4200). The Roku Stick (3600) works well with this profile as well. This profile will still transcode MPEG-2 video. DTS will passthrough to a supported AVR.
Roku TV (non 4K) As the name implies, this profile is best for the non-4K Roku TVs. MPEG-2 video is not transcoded. DTS is transcoded to Dolby Digital, as few TVs support DTS audio.
Roku 4K TV This profile is identical to the profile above, except it allows H.265 video playback without transcoding.
Roku 4K Media Player w/MPEG2 As mentioned, beginning with the 6th generation devices (2016) MPEG-2 video is supported, so no longer requires transcoding. This profile also supports H.265/HEVC without transcoding. However, if you have a 1080 player, such as the Roku Express, the use of this profile will cause H.265 video playback to fail. You could use the non-4K TV profile, but you won't get DTS passthough. You must choose one or the other.
Roku devices make a great player for your local media. With the more detailed profiles, you get the best performance from both the Roku device and Serviio.