VideoSource
A data source containing video. (See the Style Specification for detailed documentation of options.)
Example
// add to map
map.addSource('some id', {
type: 'video',
url: [
'https://www.mapbox.com/blog/assets/baltimore-smoke.mp4',
'https://www.mapbox.com/blog/assets/baltimore-smoke.webm'
],
coordinates: [
[-76.54, 39.18],
[-76.52, 39.18],
[-76.52, 39.17],
[-76.54, 39.17]
]
});
// update
let mySource = map.getSource('some id');
mySource.setCoordinates([
[-76.54335737228394, 39.18579907229748],
[-76.52803659439087, 39.1838364847587],
[-76.5295386314392, 39.17683392507606],
[-76.54520273208618, 39.17876344106642]
]);
map.removeSource('some id'); // remove
See
Note that when rendered as a raster layer, the layer's raster-fade-duration
property will cause the video to fade in.
This happens when playback is started, paused and resumed, or when the video's coordinates are updated. To avoid this behavior,
set the layer's raster-fade-duration
property to 0
.
Extends
Methods
getVideo()
getVideo():
HTMLVideoElement
Returns the HTML video
element.
Returns
HTMLVideoElement
The HTML video
element.
Defined in
src/source/video_source.ts:137
listens()
listens(
type
:string
):boolean
Returns a true if this instance of Evented or any forwardeed instances of Evented have a listener for the specified type.
Parameters
Parameter | Type | Description |
---|---|---|
type |
string |
The event type |
Returns
boolean
true
if there is at least one registered listener for specified event type, false
otherwise
Inherited from
Defined in
loadTile()
loadTile(
tile
:Tile
):Promise
<void
>
This method does the heavy lifting of loading a tile. In most cases it will defer the work to the relevant worker source.
Parameters
Parameter | Type | Description |
---|---|---|
tile |
Tile |
The tile to load |
Returns
Promise
<void
>
Inherited from
Defined in
src/source/image_source.ts:281
loaded()
loaded():
boolean
True if the source is loaded, false otherwise.
Returns
boolean
Inherited from
Defined in
src/source/image_source.ts:155
off()
off(
type
:string
,listener
:Listener
):VideoSource
Removes a previously registered event listener.
Parameters
Parameter | Type | Description |
---|---|---|
type |
string |
The event type to remove listeners for. |
listener |
Listener |
The listener function to remove. |
Returns
Inherited from
Defined in
on()
on(
type
:string
,listener
:Listener
):this
Adds a listener to a specified event type.
Parameters
Parameter | Type | Description |
---|---|---|
type |
string |
The event type to add a listen for. |
listener |
Listener |
The function to be called when the event is fired. The listener function is called with the data object passed to fire , extended with target and type properties. |
Returns
this
Inherited from
Defined in
onRemove()
onRemove():
void
This method is called when the source is removed from the map.
Returns
void
Inherited from
Defined in
src/source/image_source.ts:192
once()
once(
type
:string
,listener
?:Listener
):Promise
<any
> |VideoSource
Adds a listener that will be called only once to a specified event type.
The listener will be called first time the event fires after the listener is registered.
Parameters
Parameter | Type | Description |
---|---|---|
type |
string |
The event type to listen for. |
listener ? |
Listener |
The function to be called when the event is fired the first time. |
Returns
Promise
<any
> | VideoSource
this
or a promise if a listener is not provided
Inherited from
Defined in
pause()
pause():
void
Pauses the video.
Returns
void
Defined in
src/source/video_source.ts:105
play()
play():
void
Plays the video.
Returns
void
Defined in
src/source/video_source.ts:114
prepare()
prepare():
this
Sets the video's coordinates and re-renders the map.
Returns
this
Overrides
Defined in
src/source/video_source.ts:154
seek()
seek(
seconds
:number
):void
Sets playback to a timestamp, in seconds.
Parameters
Parameter | Type |
---|---|
seconds |
number |
Returns
void
Defined in
src/source/video_source.ts:123
setCoordinates()
setCoordinates(
coordinates
:Coordinates
):this
Sets the image's coordinates and re-renders the map.
Parameters
Parameter | Type | Description |
---|---|---|
coordinates |
Coordinates |
Four geographical coordinates, represented as arrays of longitude and latitude numbers, which define the corners of the image. The coordinates start at the top left corner of the image and proceed in clockwise order. They do not have to represent a rectangle. |
Returns
this
Inherited from
Defined in
src/source/image_source.ts:207
setEventedParent()
setEventedParent(
parent
?:Evented
,data
?:any
):VideoSource
Bubble all events fired by this instance of Evented to this parent instance of Evented.
Parameters
Parameter | Type |
---|---|
parent ? |
Evented |
data ? |
any |
Returns
Inherited from
Defined in
updateImage()
updateImage(
options
:UpdateImageOptions
):this
Updates the image URL and, optionally, the coordinates. To avoid having the image flash after changing,
set the raster-fade-duration
paint property on the raster layer to 0.
Parameters
Parameter | Type | Description |
---|---|---|
options |
UpdateImageOptions |
The options object. |
Returns
this
Inherited from
Defined in
src/source/image_source.ts:165
Properties
id
id:
string
The id for the source. Must not be used by any existing source.
Inherited from
Defined in
maxzoom
maxzoom:
number
The maximum zoom level for the source.
Inherited from
Defined in
minzoom
minzoom:
number
The minimum zoom level for the source.
Inherited from
Defined in
tileSize
tileSize:
number
The tile size for the source.