This interface is deprecated.

Beginning July 1st, 2017, any new channels using this component will be rejected during certification.

Beginning January 1st, 2018, any updates to existing channels using this component will be rejected during certification.

Implemented By

Supported Methods

Description of Methods

SetContent(content as Object) as Void

Set the content to be played in the roVideoScreen. The content is passed by the caller as an roAssociativeArray describing the attributes for the title (Content Meta-Data).  You can call roVideoScreen.SetContent() while playing video, and it will use the new data (release date, length, and title) when showing the program info in the HUD (Heads Up Display).

SetPositionNotificationPeriod(period as Integer) as Void

Set interval to receive playback position events from the roVideoScreen. The notification period is specified in seconds. Notification events sent to the script specify the position in seconds relative to the beginning of the stream. If the value is zero, position notifications are never sent. The default value is zero.

SetPreviewMode(enable as Boolean) as Void

Set preview mode on/off. In preview mode, trick play operations (fast forward and rewind) are disabled.

SetCGMS(level as Integer) as Void

Set CGMS (Copy Guard Management System) on analog outputs to the desired level.

  • 0 - No Copy Restriction
  • 1 - Copy No More
  • 2 - Copy Once Allowed
  • 3 – No Copying Permitted

Show() as Boolean

Display or refresh the screen after creation or state changes.

Close() as Void

Close the screen and delete the associated object. Useful for avoiding screen flicker when the display order of your screens does not resemble a stack.

Pause() as Void

Programmatically pause the video.

Behaves as if the user hit the pause button.

Resume() as Void

Programmatically resume the video.

Behaves as if the user resumed the video.

PreBuffer() as Boolean

Available since firmware version 7.2

Begins downloading and buffering of a video that may be selected by a user. This can be used to reduce buffering delays after a user has selected a video for playback. A typical use would be to call PreBuffer() when the user is in the roSpringboardScreen (or equivalent), anticipating that the user will select a video on the springboard screen for download.

Seek(milliSeconds as Integer) as Void

Set the play start offset to the specified milliseconds.

SetDestinationRect(rect as Object) as Void

Set the target display window for the video.

rect is an Associative Array containing the values: {x:Integer, y:Integer, w:Integer, h:Integer}

Default value is: {x:0, y:0, w:0, h:0}, which is full screen

Only useful if you'd like to zoom your video content (maybe to remove letterboxing) and you know the pixel offsets. For example, you may know that your 4:3 content has letterboxing for 16:9 video and your app is trying to display on an HD 16:9 display. In this case a rect value of {-135,-132, w:1440, h:1136} may crop out the letter boxing and zoom the video content to fit the screen. (Actual rect values are content dependent).

SetDestinationRect(x as Integer, y as Integer, w as Integer, h as Integer)

This is an alternate way to call SetDestinationRectangle with each parameter passed separately instead of in an Associative Array.

SetMaxVideoDecodeResolution(Integer width, Integer height) as Void

Set the max resolution required by your video.

Video decode memory is a shared resource with OpenGL texture memory. The BrightScript 2D APIs are implemented using OpenGL texture memory on Roku models that support the Open GL APIs (please see the Roku Models and Features section of the Developer Guide for a list of these models).

On models that do not support Open GL APIs this method exists for API compatiblity but has no effect on actual memory allocations.

Video decode memory allocation is based on a resolution of 1920x1080 as the maximum supported resolution.

This API enables applications that want to use both the 2D APIs and video playback with a lower resolution than 1080p. Without this call, these applications are likely to not have enough memory for either video playback or roScreen rendering.

SetMacrovisionLevel(Integer level) as Void

Deprecated stub function which does nothing. Roku no longer supports Macrovision and this function exists as a no-op so that legacy scripts do not break.

SetLoop(enable as Boolean) as Void

If enable is true, after playing to the end of the content, the player will immediately start playing again from the beginning. The default is false.

EnableTrickPlay(enable as Boolean) as Void

Enables or disables trick play during playback.

SetTimedMetaDataForKeys(keys[] as Dynamic) as Void

This method is called to specify the timedMetaData keys that the BrightScript application is interested in receiving from the timedMetaData event.  If the keys array is empty, all the timed metadata associated with the current stream is sent with the isTimedMetaData event.  If the keys array is invalid, then do not return any keys to the BrightScript application.  Any keys not specified with this method are deleted by the firmware and never returned to the BrightScript application.

SetGuidedTrickPlay(enable as Boolean) as Void

Enables or disables guided trickplay mode. By default guided trickplay mode is disabled and roVideoScreen will behave as it currently does. When guided trickplay mode is enabled the BrightScript channel takes control of resuming playback after trickplay, roVideoScreen no longer resumes playback autonomous but waits for an acknowledgment from the channel. 

ResumeAck(Integer trickplayid) as Void

Acknowledges the previously generated resume request event with id ‘trickplayId’.  When roVideoScreen receives this message it will resume playback, unless a more recent trickplay session has started. In the latter case, the ResumeAck message is ignored and playback is not resumed.