Search code examples
memoryroku

Roku: How to detect a slow device from a fast one


I have a channel that I want stop animations from happening if running on a slower device like Roku Express and keep them on a faster device like Roku Premiere. Except I'm not sure what's the best way to go about it.

I wanted to filter by the amount of available ram, but I couldn't find an api that gives me available ram for the system that I could run in my code.

I could filter by model name, but I would then need to keep an update list of model names, which I prefer not to do.

Any help/insight appreciated.


Solution

  • Re graphic capabilities, try roDeviceInfo.getGraphicsPlatform() - if it returns opengl, that high performing engine that can do arbitrary rotations vs directfb being limited.

    Re CPU, you can run a mini benchmark on start of your program, something like

    ti = createObject("roTimeSpan"): s=""
    for i = 1 to 1000: s = s + right((i^3).toStr(),2): end for
    time = ti.totalMilliSeconds()