Roku has been a dominant streaming-stick platform in the US for over a decade and the dominant smart-TV OS in the US for several years. The only supported development language for Roku apps (called "channels") is BrightScript — a proprietary, BASIC-like language with no other use case. To ship on Roku, OTT operators must maintain a BrightScript codebase alongside their iOS, Android, web and TV apps.
The Video playback model in BrightScript uses a Video SceneGraph node. Point it at an HLS or DASH URL, set DRM parameters, and Roku's native player handles the rest. The native player supports HLS (live and VOD), DASH, Widevine, PlayReady, multi-audio, captions, content steering (since Roku OS 12) and most other features OTT services need. The ABR algorithm and decoder are baked into Roku OS, similar to AVPlayer on Apple.
The pain for OTT engineering teams is that BrightScript is a single-vendor language with limited tooling, no shared ecosystem with other platforms, and a learning curve unrelated to anything else. Some teams use abstraction frameworks (Roku Developer SDK, third-party tools) to share logic with other platforms; others maintain Roku separately. The strategic question — given Roku's US market share — is whether to invest in first-class Roku support or to skip it.

