What is SceneGraph?
SceneGraph is Roku's new programming framework for developing applications.
It replaces Roku's "Legacy" framework (also known as "SDK1") which will stop working on January 1, 2019.
Instant TV Channel uses SceneGraph internally.
When using Instant TV Channel is it not necessary for you to use or program with SceneGraph directly.
Instant TV Channel Classic, Vertical, Grid and Series channel types all use Roku's older Legacy / SDK1 framework.
The newer Instant TV Channel SceneGraph channel type uses Roku's new SceneGraph framework.
Existing Legacy / SDK1 channels can be converted to SceneGraph channels by using the Update button on the "Channels" page.
SceneGraph Pros:
-
SceneGraph provides "eye-candy" menu features such as "busy spinners" and posters that gradually change size when selected or unselected.
-
SceneGraph allows Instant TV Channel to more easily implement new features such as debugging screens,
fade-ins and fade-outs, backgound images, and custom fonts.
SceneGraph Cons:
-
SceneGraph channels run more slowly than equivalent non-SceneGraph channels.
Some SDK1 channels that ran acceptably fast on older Roku devices will run unacceptably slow when converted to SceneGraph.
-
SceneGraph channels use more memory that non-SceneGraph channels do,
which can cause larger channels to intermittently crash even though they ran correctly under non-SceneGraph SDK1.
This issue can often be resolved by reducing the use of unnecessarily large images in larger SceneGraph channels.
In order to reduce its memory footprint,
Instant TV Channel automatically prevents certain types of graphics,
such as background screen images,
from being used in older Roku devices with limited amounts of memory.
Channels with large numbers of MRSS feeds can set the Theme MrssPreload parameter to "False" to prevent preloaded feed files and metadata from using large amounts of memory.
The Roku Developer Documentation website has additional information about SceneGraph.