Home > hls.js

hls.js package

Classes

Class

Description

AbrController

AttrList

AudioStreamController

AudioTrackController

BasePlaylistController

BaseSegment

BaseStreamController

BufferController

CapLevelController

CaptionScreen

Keep a CEA-608 screen of 32x15 styled characters

ChunkMetadata

CMCDController

Controller to deal with Common Media Client Data (CMCD)

ContentSteeringController

DateRange

Decrypter

EMEController

Controller to deal with encrypted media extensions (EME)

ErrorController

EwmaBandWidthEstimator

FPSController

Fragment

Object representing parsed data from an HLS Segment. Found in LevelDetails.fragments.

FragmentLoader

FragmentTracker

Hls

The Hls class is the core of the HLS.js library used to instantiate player instances.

HlsAssetPlayer

HlsUrlParameters

InterstitialEvent

InterstitialsController

KeyLoader

Level

LevelDetails

Object representing parsed data from an HLS Media Playlist. Found in Level.details.

LevelKey

LoadError

LoadStats

Logger

Part

Object representing parsed data from an HLS Partial Segment. Found in LevelDetails.partList.

StreamController

SubtitleStreamController

SubtitleTrackController

TaskLoop

Sub-class specialization of EventHandler base class.

TaskLoop allows to schedule a task function being called (optionnaly repeatedly) on the main loop, scheduled asynchroneously, avoiding recursive calls in the same tick.

The task itself is implemented in doTick. It can be requested and called for single execution using the tick method.

It will be assured that the task execution method (tick) only gets called once per main loop "tick", no matter how often it gets requested for execution. Execution in further ticks will be scheduled accordingly.

If further execution requests have already been scheduled on the next tick, it can be checked with hasNextTick, and cancelled with clearNextTick.

The task can be scheduled as an interval repeatedly with a period as parameter (see setInterval, clearInterval).

Sub-classes need to implement the doTick method which will effectively have the task execution routine.

Further explanations:

The baseclass has a tick method that will schedule the doTick call. It may be called synchroneously only for a stack-depth of one. On re-entrant calls, sub-sequent calls are scheduled for next main loop ticks.

When the task execution (tick method) is called in re-entrant way this is detected and we are limiting the task execution per call stack to exactly one, but scheduling/post-poning further task processing on the next main loop iteration (also known as "next tick" in the Node/JS runtime lingo).

TimelineController

TransmuxerInterface

Enumerations

Enumeration

Description

DecrypterAesMode

ElementaryStreamTypes

ErrorActionFlags

ErrorDetails

ErrorTypes

Events

FragmentState

HlsSkip

KeySystemFormats

KeySystems

MetadataSchema

NetworkErrorAction

PlaylistContextType

PlaylistLevelType

TimelineOccupancy

Interfaces

Interface

Description

AbrComponentAPI

AssetListLoadedData

AssetListLoadingData

AudioTrackLoadedData

AudioTracksUpdatedData

AudioTrackSwitchedData

AudioTrackSwitchingData

AudioTrackUpdatedData

BackBufferData

BaseTrack

BufferAppendedData

BufferAppendingData

BufferCodecsData

BufferCreatedData

BufferCreatedTrack

BufferEOSData

BufferFlushedData

BufferFlushingData

ComponentAPI

CuesInterface

CuesParsedData

DecryptData

ElementaryStreamInfo

ErrorData

FPSDropData

FPSDropLevelCappingData

FragBufferedData

FragChangedData

FragDecryptedData

FragLoadedData

FragLoadEmergencyAbortedData

FragLoadFailResult

FragLoadingData

FragmentLoaderConstructor

FragmentLoaderContext

FragParsedData

FragParsingInitSegmentData

FragParsingMetadataData

FragParsingUserdataData

HlsChunkPerformanceTiming

HlsEventEmitter

HlsListeners

Defines each Event type and payload by Event name. Used in HlsEventEmitter to strongly type the event listener API.

HlsPerformanceTiming

HlsProgressivePerformanceTiming

ILogFunction

ILogger

InitPTSFoundData

InitSegmentData

InterstitialAssetEndedData

InterstitialAssetPlayerCreatedData

InterstitialAssetStartedData

InterstitialEndedData

InterstitialEventWithAssetList

InterstitialsBufferedToBoundaryData

InterstitialsManager

InterstitialsPrimaryResumed

InterstitialStartedData

InterstitialsUpdatedData

KeyLoadedData

KeyLoaderContext

KeyLoaderInfo

KeyLoadingData

LevelAttributes

LevelLoadedData

LevelLoadingData

LevelParsed

LevelPTSUpdatedData

LevelsUpdatedData

LevelSwitchedData

LevelSwitchingData

LevelUpdatedData

LiveBackBufferData

Loader

LoaderCallbacks

LoaderConfiguration

LoaderContext

LoaderResponse

LoaderStats

ManifestLoadedData

ManifestLoadingData

ManifestParsedData

MaxAutoLevelUpdatedData

MediaAttachedData

MediaAttachingData

MediaAttributes

MediaDetachedData

MediaDetachingData

MediaEndedData

MediaFragment

MediaKeySessionContext

MediaPlaylist

MetadataSample

NetworkComponentAPI

NonNativeTextTrack

NonNativeTextTracksData

ParsedTrack

PartsLoadedData

PlaylistLoaderConstructor

PlaylistLoaderContext

RemuxedMetadata

RemuxedTrack

RemuxedUserdata

RemuxerResult

SourceBufferListener

SourceBufferTrack

SteeringManifestLoadedData

SubtitleFragProcessedData

SubtitleTrackLoadedData

SubtitleTracksUpdatedData

SubtitleTrackSwitchData

SubtitleTrackUpdatedData

Track

TrackLoadedData

TrackLoadingData

TrackSet

TransmuxerResult

UserdataSample

Variables

Variable

Description

HdcpLevels

VideoRangeValues

Type Aliases

Type Alias

Description

ABRControllerConfig

AssetListJSON

AttachMediaSourceData

AudioPlaylistType

AudioSelectionOption

BaseData

BaseTrackSet

Bufferable

BufferControllerConfig

BufferCreatedTrackSet

BufferInfo

CapLevelControllerConfig

CMCDControllerConfig

ContentSteeringOptions

DateRangeCue

DRMSystemConfiguration

DRMSystemOptions

DRMSystemsConfiguration

ElementaryStreams

EMEControllerConfig

ExtendedSourceBuffer

FPSControllerConfig

FragmentLoaderConfig

FragmentLoadProgressCallback

HdcpLevel

HlsConfig

HlsLoadPolicies

IErrorAction

InterstitialAssetErrorData

InterstitialAssetId

InterstitialAssetItem

InterstitialId

InterstitialScheduleDurations

InterstitialScheduleEventItem

InterstitialScheduleItem

InterstitialSchedulePrimaryItem

LatencyControllerConfig

LevelControllerConfig

LoaderConfig

LoaderOnAbort

LoaderOnError

LoaderOnProgress

LoaderOnSuccess

LoaderOnTimeout

LoadPolicy

MainPlaylistType

MediaDecodingInfo

MediaKeyFunc

MediaOverrides

MediaPlaylistType

MetadataControllerConfig

MP4RemuxerConfig

ParsedMultivariantPlaylist

PathwayClone

PlaybackRestrictions

PlayheadTimes

PlaylistLoaderConfig

RationalTimestamp

RetryConfig

SelectionPreferences

SnapOptions

SourceBufferName

SourceBufferTrackSet

SteeringManifest

StreamControllerConfig

SubtitlePlaylistType

SubtitleSelectionOption

TimelineControllerConfig

TSDemuxerConfig

UriReplacement

VariableMap

VideoRange

VideoSelectionOption