simple-hls-video
Lightweight HLS video element with minimal bundle size
Lightweight HLS video element optimized for minimal bundle size. For full hls.js feature support, use HlsJsVideo instead.
Examples
Basic Usage
import { SimpleHlsVideo } from '@videojs/react/media/simple-hls-video';
export default function BasicUsage() {
return <SimpleHlsVideo className="simple-hls-video" src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM.m3u8" autoPlay muted playsInline loop />;
}
.simple-hls-video {
width: 100%;
aspect-ratio: 16 / 9;
}
<media-container class="media-container">
<simple-hls-video
src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM.m3u8"
autoplay
muted
playsinline
loop
></simple-hls-video>
</media-container>
.media-container {
position: relative;
display: block;
width: 100%;
aspect-ratio: 16 / 9;
}
import '@videojs/html/media/container';
import '@videojs/html/media/simple-hls-video';
API Reference
Attributes
Forwards these standard media attributes to the internal <video>. See the MDN media element reference: autopictureinpictureautoplaycontrolscontrolslistcrossorigindisablepictureinpicturedisableremoteplaybackloadingloopmutedplaysinlineposterpreloadsrc
These Video.js-specific attributes configure media behavior:
| Attribute | Type | Default | Details |
|---|---|---|---|
stream-type
|
MediaStreamType | NonNullable<Target["streamType"]>
|
—
|
|
|
|||
Properties
| Property | Type | Default | Details |
|---|---|---|---|
config
|
MediaConfig
|
—
|
|
isFullscreen
|
boolean
|
—
|
|
|
|||
isPictureInPicture
|
boolean
|
—
|
|
|
|||
liveEdgeStart
|
number
|
—
|
|
|
|||
streamType
|
MediaStreamType | NonNullable<Target["streamType"]>
|
—
|
|
|
|||
targetLiveWindow
|
number
|
—
|
|
|
|||
webkitCurrentPlaybackTargetIsWireless
|
boolean | undefined
|
—
|
|
|
|||
webkitPresentationMode
|
WebKitPresentationMode | undefined
|
—
|
|
|
|||
webkitSetPresentationMode
|
((mode: WebKitPresentationMode) => void) | undefined
|
—
|
|
|
|||
Also exposes these properties from the native media API. See HTMLVideoElement for details: autoplaybufferedcontrolscrossOrigincurrentSrccurrentTimedefaultMuteddefaultPlaybackRatedisablePictureInPicturedisableRemotePlaybackdurationendederrorloopmutedpausedplaybackRateplayedplaysInlineposterpreloadreadyStateremoteseekableseekingsrctextTrackstitlevideoHeightvideoWidthvolume
Methods
Supports these media methods
. See HTMLVideoElement for details: addTextTrackcanPlayTypeexitFullscreenexitPictureInPictureloadpauseplayrequestFullscreenrequestPictureInPicture
Events
Re-dispatches these standard media events from the internal media element: abortaddtrackcanplaycanplaythroughchangedurationchangeemptiedendedenterpictureinpictureerrorleavepictureinpictureloadeddataloadedmetadataloadstartpauseplayplayingprogressratechangeremovetrackresizeseekedseekingstalledsuspendtimeupdatevolumechangewaiting
This element emits no events beyond the standard media events above.
CSS custom properties
| Variable | Details |
|---|---|
--media-video-border-radius
|
|
|
|
--media-object-fit
|
|
|
|
--media-object-position
|
|
|
|
--media-caption-track-duration
|
|
|
|
--media-caption-track-delay
|
|
|
|
--media-caption-track-y
|
|
|
|