Jump to Content
Developer DocsHome
Guides
Developer Docs
Guides
Jump to Content
Developer Docs
Guides
  • Roku platform overview
  • How apps work
  • App development models
  • Developer Dashboard
    • User access management in the Developer Dashboard
    • Email preferences
  • Content engagement
    • Streaming Store
    • Roku Search
    • Self-serve app promotion tool
    • Roku Voice
  • Monetization
    • Subscriptions and one-time purchases
    • Publisher payouts
    • Video advertisements
  • Analytics Reports
    • App Engagement Report
    • App Health Report
    • App Stability Report
    • Payout Audit Report
    • Sales Activity Report
    • Tax Withholding Report
    • Transaction Report
    • Viewership Summary Report
  • Security on the Roku platform
  • Legal
  • Specifications overview
  • Hardware specifications
  • Streaming Specs
    • Streaming specifications
    • Roku OS support for DASH-IF
    • DRM & content protection
  • Roku Search feed (JSON)
  • Streaming Store graphics
  • Getting started
    • First steps
    • Activating developer mode
    • Building your first app
    • Creating a content feed
    • Taking the online video course
    • Samples
    • App localization
    • Architecture
      • Manifest file
      • Content metadata
      • Development environment overview
      • File system
  • Certification
    • Certification criteria
    • Certification testing
      • Static Analysis tests
      • App Behavior Analysis tests
      • Authenticated app testing
  • Design
    • Designing for devices
    • UI philosophy
    • Key Design Principles
    • Roku's master UI
    • Remote control buttons
    • Ideal app features
    • Best practices
  • SceneGraph core concepts
    • SceneGraph XML
      • SceneGraph coordinate systems
      • Other inherited properties
      • Node field observers
      • Remote control events
    • SceneGraph data scoping
    • SceneGraph BrightScript
      • BrightScript support
      • BrightScript/XML markup equivalence
    • XML components overview
      • Defining SceneGraph components
      • SceneGraph compilation
      • Component initialization order
      • Creating custom components
    • Threads
    • Developing SceneGraph applications
    • Specifying display resolution
    • Handling application events
    • Event loops
    • Controlling screen layout
    • Controlling screen program flow
    • Downloading server content
    • Playing Videos
    • SceneGraph localization
    • Transitioning to SceneGraph
  • Media playback
    • Screensavers
    • Closed caption
    • Trick mode
      • BIF file creation using the Roku BIF tool
      • HLS and DASH
    • Bookmarking
    • Instant Resume
    • Fast video start
    • Autoplay
    • Text to speech
    • Voice controls
      • Implementing voice controls
      • Selecting user profiles with Roku Voice
  • Discovery
    • Roku Search
      • Implementing Roku Search
      • Prioritizing authenticated apps
    • Deep linking
    • Instant Signup
    • Continue Watching
    • Direct to Play
  • Advertising
    • Integrating the Roku Advertising Framework
    • Roku advertising requirements
    • Implementing client-side ad stitching
    • Implementing Server-Side Ad Insertion Using Roku Adapters
    • Implementing the Demand API
    • Roku Advertising Watermark
    • API reference
    • Implementing Nielsen Digital Content Ratings (DCR) measurement
  • Roku Pay
    • Getting started
      • Enrolling in the Roku Partner Payouts Program
      • Setting the monetization method
      • Creating the product catalog
      • Catalog 2.0 API integration guide
      • Price tier reference guide
      • Creating test users
      • Setting up Roku Pay web services
    • Implementing Roku Pay
      • SceneGraph ChannelStore
      • Roku Pay web services reference
      • Roku Pay push notifications reference
      • Receiving secured Roku Pay push notifications
      • On-device upgrade and downgrade
      • Tracking signup abandonment
      • Creating TVOD apps (Catalog 1.0)
      • Creating TVOD apps (Catalog 2.0)
    • Introduction to Subscription Recovery
      • Basic Subscription Recovery
      • Enhanced Subscription Recovery
      • Settings
      • Testing
    • Testing Roku Pay
      • Testing a Roku Pay app
      • Enabling billing testing
    • Roku Pay integration requirements
    • Roku Pay best practices
    • Roku Pay reports
    • Sign-in requirements and best practices
    • Signup requirements and best practices
  • Authentication
    • On-Device Authentication
    • Automatic Account Link
    • Rendezvous linking
  • Roku Analytics Component Library (RACL)
  • Debugging
    • Capturing and decrypting SSL packets
    • BrightScript debug protocol
  • Publishing
    • Packaging Roku apps
    • App Publishing
  • Developer Tools
    • Roku Remote Tool
    • Roku SceneGraph XML schema (XSD)
    • Eclipse IDE support
    • SGDEX
    • RALE
    • Roku Resource Monitor
      • Using Roku Resouce Monitor in Data Collection Mode
      • Roku Resource Monitor session file specification
    • Roku app tracing (with Perfetto)
    • BrightScript Profiler
    • BrightScript Profiler file format specification
    • External Control Protocol (ECP)
    • BrightScriptDoc
    • Static Analysis Tool
      • Command line utility
    • Automated App Testing
      • Roku WebDriver
      • Roku Robot Framework Library
      • Roku JavaScript Library
    • Certification testing tool
  • Performance
    • Data management
    • Memory management
    • Optimization techniques
    • Optimized data transfer and reference handling
    • Measuring app performance
  • Release notes
    • Reverting Roku beta OS to production on devices
    • Roku Advertising Framework release notes
  • Development partners
  • Reference overview
  • SceneGraph
    • Component functions
      • init()
      • onKeyEvent()
    • Xml Elements
      • children
      • component
      • interface
      • script
    • Node
    • Scene
    • Abstract nodes
      • AnimationBase
      • ArrayGrid
    • Renderable nodes
      • Poster
      • Rectangle
      • SimpleLabel
    • Label nodes
      • InfoPane
      • LabelBase
      • Label
      • MonospaceLabel
      • MultiStyleLabel
    • Animation nodes
      • Animation
      • ColorFieldInterpolator
      • FloatFieldInterpolator
      • ParallelAnimation
      • SequentialAnimation
      • Vector2DFieldInterpolator
    • Typographic nodes
      • Font
      • ScrollableText
      • ScrollingLabel
    • Control nodes
      • ChannelStore
      • ComponentLibrary
      • ContentNode
      • MaskGroup
      • Task
      • Timer
    • Layout group nodes
      • ButtonGroup
      • Group
      • LayoutGroup
      • TargetGroup
    • Dynamic voice keyboard nodes
      • DynamicCustomKeyboard
      • DynamicKeyGrid
      • DynamicKeyboardBase
      • DynamicKeyboard
      • DynamicMiniKeyboard
      • DynamicPinPad
      • Key Definition File
      • VoiceTextEditBox
    • Standard dialog framework
      • StandardDialog
      • StandardKeyboardDialog
      • StandardMessageDialog
      • StandardPinPadDialog
      • StandardProgressDialog
      • StdDlgActionCardItem
      • StdDlgAreaBase
      • StdDlgBulletTextItem
      • StdDlgButtonArea
      • StdDlgButton
      • StdDlgContentArea
      • StdDlgCustomItem
      • StdDlgDeterminateProgressItem
      • StdDlgGraphicItem
      • StdDlgItemBase
      • StdDlgItemGroup
      • StdDlgKeyboardItem
      • StdDlgMultiStyleTextItem
      • StdDlgProgressItem
      • StdDlgSideCardArea
      • StdDlgTextItem
      • StdDlgTitleArea
    • Dialog Nodes
      • Dialog
      • KeyboardDialog
      • PinDialog
      • ProgressDialog
    • Widget Nodes
      • BusySpinner
      • Button
      • Keyboard
      • MiniKeyboard
      • ParentalControlPinPad
      • PinPad
      • TextEditBox
    • Lists and grids
      • CheckList
      • LabelList
      • MarkupGrid
      • MarkupList
      • PosterGrid
      • RadioButtonList
      • RowList
      • TargetList
      • TargetSet
      • TimeGrid
      • ZoomRowList
    • Sliding panels
      • GridPanel
      • ListPanel
      • Overhang
      • OverhangPanelSetScene
      • Panel
      • PanelSet
    • Media playback nodes
      • Audio
      • SoundEffect
      • Video
  • BrightScript
    • Components
      • roAppInfo
      • roAppManager
      • roAppMemoryMonitor
      • roArray
      • roAssociativeArray
      • roAudioGuide
      • roAudioMetadata
      • roAudioPlayer
      • roAudioResource
      • roBitmap
      • roBoolean
      • roByteArray
      • roCECStatus
      • roChannelStore
      • roCompositor
      • roDataGramSocket
      • roDateTime
      • roDeviceCrypto
      • roDeviceInfo
      • roDouble
      • roDsa
      • roEVPCipher
      • roEVPDigest
      • roFileSystem
      • roFloat
      • roFont
      • roFontRegistry
      • roFunction
      • roHdmiStatus
      • roHMAC
      • roHttpAgent
      • roImageMetadata
      • roInput
      • roInt
      • roInvalid
      • roList
      • roLocalization
      • roLongInteger
      • roMessagePort
      • roMicrophone
      • roPath
      • roProgramGuide
      • roRegex
      • roRegion
      • roRegistry
      • roRegistrySection
      • roRemoteInfo
      • roUtils
      • roRSA
      • roScreen
      • roSGNode
      • roSGScreen
      • roSocketAddress
      • roSprite
      • roStreamSocket
      • roString
      • roSystemLog
      • roTextToSpeech
      • roTextureManager
      • roTextureRequest
      • roTimespan
      • roUrlTransfer
      • roUtils
      • roVideoPlayer
      • roXMLElement
      • roXMLList
    • Events
      • roAppMemoryNotificationEvent
      • roAudioPlayerEvent
      • roCECStatusEvent
      • roChannelStoreEvent
      • roDeviceInfoEvent
      • roFileSystemEvent
      • roHdmiStatusEvent
      • roInputEvent
      • roMicrophoneEvent
      • roSGNodeEvent
      • roSGScreenEvent
      • roSocketEvent
      • roSystemLogEvent
      • roTextToSpeechEvent
      • roTextureRequestEvent
      • roUniversalControlEvent
      • roUrlEvent
      • roVideoPlayerEvent
    • Interfaces
      • ifAppInfo
      • ifAppManager
      • ifAppMemoryMonitor
      • ifArray
      • ifArrayGet
      • ifArrayJoin
      • ifArraySet
      • ifArraySizeInfo
      • ifArraySlice
      • ifArraySort
      • ifAssociativeArray
      • ifAudioGuide
      • ifAudioMetadata
      • ifAudioPlayer
      • ifAudioResource
      • ifBoolean
      • ifByteArray
      • ifCECStatus
      • ifChannelStore
      • ifCompositor
      • ifDateTime
      • ifDeviceCrypto
      • ifDeviceInfo
      • ifDouble
      • ifDraw2D
      • ifDsa
      • ifEnum
      • ifEVPCipher
      • ifEVPDigest
      • ifFileSystem
      • ifFloat
      • ifFont
      • ifFontRegistry
      • ifFunction
      • ifGetMessagePort
      • ifHdmiStatus
      • ifHMAC
      • ifHttpAgent
      • ifImageMetadata
      • ifInput
      • ifInt
      • ifIntOps
      • ifList
      • ifListToArray
      • ifLocalization
      • ifLongInt
      • ifMessagePort
      • ifMicrophone
      • ifPath
      • ifProgramGuide
      • ifRegex
      • ifRegion
      • ifRegistry
      • ifRegistrySection
      • ifRemoteInfo
      • Ifrenderthreadqueue
      • ifRSA
      • ifScreen
      • ifSetMessagePort
      • ifSGNodeBoundingRect
      • ifSGNodeChildren
      • ifSGNodeDict
      • ifSGNodeField
      • ifSGNodeFocus
      • ifSGNodeHttpAgentAccess
      • ifSGScreen
      • ifSocket
      • ifSocketAddress
      • ifSocketAsync
      • ifSocketCastOption
      • ifSocketConnection
      • ifSocketConnectionOption
      • ifSocketConnectionStatus
      • ifSocketOption
      • ifSocketStatus
      • ifSourceIdentity
      • ifSprite
      • ifString
      • ifStringOps
      • ifSystemLog
      • ifTextToSpeech
      • ifTextureManager
      • ifTextureRequest
      • ifTimeSpan
      • ifToStr
      • ifUrlTransfer
      • IfUtils
      • ifVideoPlayer
      • ifXMLElement
      • ifXMLList
    • Language
      • BrightScript language reference
      • Component architecture
      • Conditional compilation
      • Error handling in BrightScript
      • Expressions, variables, and types
      • Format strings
      • Global math functions
      • Global string functions
      • Global utility functions
      • Program statements
      • Reserved words
      • Runtime functions
      • Statement summary
  • Deprecated APIs
  • Development courses
    • Getting started
      • Streaming overview
      • Creating an SVOD app: First steps
      • Roku development overview
      • Enabling Developer Mode
    • SceneGraph Developers: Build an App
      • Introduction to the course
      • Development setup
      • Core concepts
      • Creating the content feed
      • Creating a Grid Screen
      • Adding the Video Player
      • Debugging apps
      • Creating a Details Screen
      • Creating an Episodes Screen
      • Displaying video ads
      • Offering subscriptions
      • Deep linking
      • Certification testing
  • Demos
    • Developer Summit 2025
    • Catalog 2.0 Webinar
    • Developer Summit 2024
    • Enhanced Subscription Recovery Webinar
    • Roku Resource Monitor Memory Management Webinar
    • Roku Resource Monitor 3.0 Webinar
    • Roku OS 13.0 Developer Features Webinar
    • Roku Pay JWT-secured Push Notifications Webinar
    • Developer Summit 2023
    • Developer Summit 2022
    • Roku Resource Monitor Webinar
    • Roku Advertising Watermark Webinar
    • Roku Voice Webinar
    • Trickplay Thumbnail Webinar
    • Developer Summit 2021
    • Distributing an App in Germany Webinar
    • BrightScript Profiler Webinar
    • Developer Summit 2020
    • BrightScript Remote Network Debug Protocol
    • Automated app testing
    • Managing user access
    • App Tracing (with Perfetto) Webinar
    • Submitting a Roku Search feed
  • Platform features
    • Roku Pay: Simplifying customer payments
    • Running App Behavior Analysis testing on authenticated apps
    • Distributing apps in Europe
    • Roku Voice
  • The Roku Channel overview
  • Video on Demand
    • Premium Subscriptions
    • Roku Originals
      • Branded production guidelines
      • Alternative & documentary production guidelines
      • Scripted production guidelines
      • Alternative production legal guidelines
      • Scripted production legal guidelines
      • Branded delivery specifications
      • Alternative media delivery specifications
      • Scripted media delivery specifications
      • Spanish language - alternative media delivery specifications
      • Feature - scripted & alternative media delivery specifications
      • Acquired content - scripted media delivery specifications
    • Content delivery
      • Especificaciones para la ingesta
    • Avails and Committed Title List specifications
  • Linear
    • The Roku Channel live linear ingest specifications (OVP)
    • EPG on The Roku Channel
  • FAQs
  1. REFERENCES
  2. BrightScript
  3. Components

roVideoPlayer

The roVideoPlayer component implements a video player with programmatic controls.

This object is created with no parameters:

CreateObject("roVideoPlayer")

Supported interfaces

  • ifVideoPlayer
  • ifHttpAgent
  • ifSetMessagePort
  • ifGetMessagePort

Supported events

  • roVideoPlayerEvent

Updated 3 months ago


roUtils
roXMLElement
Terms and Conditions B2B Privacy Notice Developer Site About ads & cookies My Privacy ChoicesCalifornia Consumer Privacy Act (CCPA) Opt-Out Icon Developer Terms & Agreements CA B2B Privacy Notice
© 2008-2026 Roku, Inc.