Roku Developer Program

Join our online forum to talk to Roku developers and fellow channel creators. Ask questions, share tips with the community, and find helpful resources.
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Level 7

Older Rokus not correctly reporting display mode

We just published an update to our app that provides customers with an SD stream in addition to our HD stream. This is to avoid letterboxing on devices set to 4:3 mode or 16:9 mode, and reduces unnecessary bandwidth for the customer.

Since "quality" is set to true for the HD stream, if I attempt to play that stream on a device in SD mode, it will fail to play. This is the expected behavior.

After publishing the update, we have received a number of complaints of videos not working (attempting to play HD streams in SD display mode). After some troubleshooting, I found that if I have customers switch their display mode (say 4:3 to 16:9) and then back again, it works fine. This looks like a bug in the Roku firmware to me, where these devices are getting into a state where they are not properly reporting the video mode.

Here is the function I am using to determine which stream to use:

Function CanPlayHD()
device = createobject("rodeviceinfo")
vm = device.getvideomode()
if vm = "480i" or vm = "480p" or vm = "576p60"
return false
return true
end if
End Function

Roku already told us we can just play HD streams in letterbox mode by setting the quality to false, but that is not our desired behavior.
0 Kudos
Level 11

Re: Older Rokus not correctly reporting display mode

Any idea in what way the reported mode is wrong? I.e. what do the "bad" devices report. Is it possible to coax complainer into running a beta that reports you back roDeviceInfo tidbits
0 Kudos
Level 7

Re: Older Rokus not correctly reporting display mode

I considered begging a customer to ship me one while in the bad state. I'm going to play around next week and see if I can replicate. Will post back with results.
0 Kudos
Level 10

Re: Older Rokus not correctly reporting display mode

Not sure why the Roku would be reporting the wrong display mode, but is there any reason you couldn't use one of the other roDeviceInfo methods to determine if the device supports HD or not? e.g.,
displayIsHD = (deviceInfo.GetDisplayType() = "HDTV")
My Channels: - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
Level 7

Re: Older Rokus not correctly reporting display mode

@TheEndless: Because, for whatever reason, Roku didn't update GetDisplayType to cover 4K (and our channel offers 4K).

Just tested it again to be sure: on my Roku 4K TV -> GetDisplayType() = "HDTV". I didn't show all of the code in my example, but with GetVideoMode, you can figure out if you are in SD, HD, or 4K mode in one call.

0 Kudos