ef-video

Renders a video clip with optional source trim.

Renders a video clip. Use sourcein and sourceout to trim the source file.

Use CSS object-fit: cover | contain | fill to control how the video fills its box.

Interactive example

Playback speed

In Elements 0.60.34 or later, set playback-rate from 0.25 to 4 to slow down or speed up the source. It defaults to 1, and the video's audio keeps its pitch in preview and export.

html
<ef-video
  src="https://assets.editframe.com/bars-n-tone.mp4"
  sourcein="2s"
  sourceout="10s"
  playback-rate="2"
></ef-video>

This four-second clip uses source seconds 2 through 10. In JavaScript and React, use the numeric playbackRate property. Invalid HTML attribute values fall back to 1; invalid property assignments throw a RangeError.

See media speed and source time for duration rules. Video also supports volume and the volumeAtTime fade callback described under audio volume and fades.

Attributes

19 of 19

duration

React prop
duration
Type
string
Default
—
Description
How long this element is active (CSS time, e.g. "5s").

fft-decay

React prop
fftDecay
Type
number
Default
8
Description
Decay frames averaged into getFrequencyData (default 8).

fft-gain

React prop
fftGain
Type
number
Default
3
Description
Linear gain applied before frequency analysis (default 3.0).

fft-size

React prop
fftSize
Type
number
Default
128
Description
FFT window size for getFrequencyData/getTimeDomainData (rounded to a power of two, default 128).

file-id

React prop
fileId
Type
string | null
Default
—
Description
Cloud file identifier — resolves to ${apiHost}/api/v1/files/${fileId}, taking priority over src/variants.

interpolate-frequencies

React prop
interpolateFrequencies
Type
boolean
Default
false
Description
Smooths getFrequencyData bins by interpolating between FFT bands instead of nearest-neighbor sampling.

loop

React prop
loop
Type
boolean
Default
false
Description
Loop attribute — when this temporal is a self-driving root under a PlaybackController, the controller wraps back to 0 instead of pausing at duration.

mute

React prop
muted
Type
boolean
Default
false
Description
Mutes the video's audio track.

offset

React prop
offset
Type
number
Default
—
Description
Start offset (seconds) within a parallel (fixed/contain/fit) parent timegroup.

play-role

React prop
playRole
Type
low | high
Default
"high"
Description
Preferred variant-ladder quality tier during playback (as opposed to scrub).

playback-rate

React prop
playbackRate
Type
number
Default
1
Description
Source speed relative to the composition clock; pitch is preserved.

sourcein

React prop
sourcein
Type
string
Default
—
Description
Start time within the source file (CSS time, e.g. "1.5s").

sourceout

React prop
sourceout
Type
string
Default
—
Description
End time within the source file (CSS time, e.g. "1.5s").

src

React prop
src
Type
string
Default
—
Description
URL of the source video file.

trimend

React prop
trimend
Type
string
Default
—
Description
Trims this much off the end of the source (CSS time).

trimstart

React prop
trimstart
Type
string
Default
—
Description
Trims this much off the start of the source (CSS time).

variant-mode

React prop
variantMode
Type
single-high | scrub-upgrade | multi-bitrate | scrub-plus-ladder
Default
"scrub-upgrade"
Description
Variant-ladder role-selection strategy when variants is set.

variants

React prop
variants
Type
string
Default
""
Description
URL of a variant-ladder manifest (multiple resolutions/bitrates), used instead of src.

volume

React prop
volume
Type
number
Default
1
Description
Audio volume (0.0 to 1.0).

CSS Parts

Events