Video Player

ESM:
Use dark colors for code blocksCopy
1
import "@arcgis/map-components/components/arcgis-video-player";
CDN:
No specific import is needed for this component.

The Video Player component provides a user interface for interacting with a VideoLayer. It displays the original video content and provides controls for playing, pausing, seeking, and changing the video speed and quality.

The Video Player component provides the following capabilities:

  • Control operations (play, pause, seek)
  • Time and duration display
  • Customizable graphics colors
  • Following options (sensor, frame, video)
  • Adjustable speed and quality
  • Access to frame metadata

The VideoPlayerViewModel class provides the logic for the Video Player.

Known limitations

  • Not supported in 3D Scenes.
  • Not supported on macOS and iOS devices.

Properties

PropertyAttributeType
auto-destroy-disabled
boolean
following-mode
"follow-both" | "follow-frame" | "follow-sensor" | "none"
hide-header
boolean
icon
string
label
string
Record<string, unknown>
position
"bottom-leading" | "bottom-left" | "bottom-right" | "bottom-trailing" | "manual" | "top-leading" | "top-left" | "top-right" | "top-trailing"
reference-element
state
readonly
state
"can-play" | "data-loaded" | "error" | "not-ready" | "paused" | "playing" | "ready" | "waiting"

autoDestroyDisabled

Property
autoDestroyDisabled: boolean

If true, the component will not be destroyed automatically when it is disconnected from the document. This is useful when you want to move the component to a different place on the page, or temporarily hide it. If this is set, make sure to call the destroy method when you are done to prevent memory leaks.

Attribute
auto-destroy-disabled
Default value
false

followingMode

Property
followingMode: "follow-both" | "follow-frame" | "follow-sensor" | "none"

Determines which telemetry elements to follow when the video layer is playing.

Attribute
following-mode
Default value
"follow-both"

hideHeader

Property
hideHeader: boolean

Indicates whether to display the video player's header information.

Attribute
hide-header
Default value
false

icon

Property
icon: string

Icon which represents the component. Typically used when the component is controlled by another component (e.g. by the Expand component).

See also
Attribute
icon
Default value
"video-web"

label

reflected

Attribute changes are reflected on the DOM.

Property
label: string

The component's default label.

Attribute
label

layer

Property
layer: VideoLayer

The VideoLayer to use as the data source for the video player.

Example
Use dark colors for code blocksCopy
1
2
// Create a new Video Player with a VideoLayer
videoPlayer.layer = videoLayer;
Default value
null

messageOverrides

Property
messageOverrides: Record<string, unknown>

Replace localized message strings with your own strings.

Note: Individual message keys may change between releases.

position

reflected

Attribute changes are reflected on the DOM.

Property
position: "bottom-leading" | "bottom-left" | "bottom-right" | "bottom-trailing" | "manual" | "top-leading" | "top-left" | "top-right" | "top-trailing"
Attribute
position
Default value
"top-left"

referenceElement

Property

By assigning the id attribute of the Map or Scene component to this property, you can position a child component anywhere in the DOM while still maintaining a connection to the Map or Scene.

See also
Attribute
reference-element

state

readonlyreflected

Attribute changes are reflected on the DOM.

Property
state: "can-play" | "data-loaded" | "error" | "not-ready" | "paused" | "playing" | "ready" | "waiting"

The current state of the component.

Attribute
state

Slots

No slots to display.

Events

arcgisPropertyChange

Event
arcgisPropertyChange: CustomEvent<{ name: "state" | "layer"; }>

Emitted when the value of a property is changed. Use this to listen to changes to properties.

bubbles

Events triggered on this element will be propagated to their outermost elements.

composed

The event is composable and will propagate across the shadow DOM into the standard DOM.

cancelable

The event's default behavior can be canceled, allowing for custom behavior to be implemented instead.

arcgisReady

Event
arcgisReady: CustomEvent<void>

Emitted when the component associated with a map or scene view is is ready to be interacted with.

bubbles

Events triggered on this element will be propagated to their outermost elements.

composed

The event is composable and will propagate across the shadow DOM into the standard DOM.

cancelable

The event's default behavior can be canceled, allowing for custom behavior to be implemented instead.

arcgisVideoReady

Event
arcgisVideoReady: CustomEvent<void>
bubbles

Events triggered on this element will be propagated to their outermost elements.

composed

The event is composable and will propagate across the shadow DOM into the standard DOM.

cancelable

The event's default behavior can be canceled, allowing for custom behavior to be implemented instead.

Methods

MethodSignature
componentOnReady(): Promise<void>
destroy(): Promise<void>

componentOnReady

Method
componentOnReady(): Promise<void>

Create a promise that resolves once component is fully loaded.

Example
Use dark colors for code blocksCopy
1
2
3
4
const arcgisVideoPlayer = document.querySelector("arcgis-video-player");
document.body.append(arcgisVideoPlayer);
await arcgisVideoPlayer.componentOnReady();
console.log("arcgis-video-player is ready to go!");
Returns
Promise<void>

destroy

Method
destroy(): Promise<void>

Permanently destroy the component.

Returns
Promise<void>

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.