Builder
Functions
Hides every hideable control: scrub bar, time labels, buttons and ad markers. Play/pause and the LIVE chip are never hidden — a viewer can always stop playback and always sees live status. Call setShow* setters after this to selectively re-enable pieces.
Icon for the ad chrome's pause button.
Icon for the ad chrome's play (resume-ad) button.
Replaces the built-in audio-track icon with a drawable resource.
Moves the cast button to a different corner/edge of the player.
Replaces the cast icon shown while connected to a receiver.
Replaces the built-in cast icon with a drawable resource.
How long the rating icons stay before fading out.
Overrides dimension tokens of the built-in controls.
How long the controls stay visible without interaction while playing.
Up to 8 host icon buttons rendered inline in the top-end control row, left of the Cast button. They follow the controls' show/hide logic; use OGPlayerView's overlay slots for persistent elements (watermarks) instead.
Overrides colour tokens of the built-in controls.
Text style (font, size, weight, color) for the error-overlay message. Null keeps the SDK default.
Replaces the built-in fullscreen enter/exit icons with drawable resources.
Drives the chrome with a TV remote instead of touch — see OGInputMode.REMOTE. Explicit by design: the SDK never infers a television; isTelevision is the one-line check for hosts that ship a single APK to phones and TVs.
Remote mode only (ignored otherwise): publish a system MediaSession that mirrors the player, so voice assistants, the now-playing row and media buttons pressed while another surface is up reach it. Default false.
Replaces the built-in pause icon with a drawable resource.
Replaces the built-in play icon with a drawable resource.
Colors for the progress bar: played portion, remaining track, and scrubber thumb.
Custom Retry label, any language; wins over OGStrings.retry (default "Retry").
Styles the error overlay's Retry button. Any argument left null keeps that aspect's SDK default (brand-yellow container, near-black content, 14sp label).
Replaces the built-in seek-backward icon with a drawable resource.
Replaces the built-in seek-forward icon with a drawable resource.
Hides the content-rating icons entirely.
Shows or hides the scrub bar (including its thumbnail preview).
Hides the error overlay's Retry button (shown by default).
Shows or hides the seek forward/backward buttons (VOD and LIVE_DVR only).
Hides the title overlay entirely.
Shows/hides the playlist "Up next" countdown card; hidden means silent auto-advance.
Replaces the playlist next glyph of the remote (TV) chrome with a drawable resource. Drawn as-is (not tinted), like the other custom icons.
Replaces the playlist previous glyph of the remote (TV) chrome with a drawable resource. Drawn as-is (not tinted), like the other custom icons.
Every text the chrome shows or speaks, in any language — build one from a key → text map with OGStrings.fromMap. English by default; nothing is picked from the device locale. The explicit options keep precedence: setErrorMessageProvider over errorGeneric, setRetryButtonLabel over retry, setUpNextText over upNext.
Custom text style (font, size, weight, color) for the title overlay.
How long the title stays on screen before fading out.
Seconds before an item's end at which the card appears.
Styles the card: background color and/or text style. Null keeps that aspect's SDK default.
Card text template; {seconds} and {title} are substituted. Wins over OGStrings.upNext.