GapController
Constructor Summary
Public Constructor | ||
public |
|
Member Summary
Public Members | ||
public |
config: * |
|
public |
|
|
public |
hls: * |
|
public |
media: * |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
stalled: * |
Method Summary
Public Methods | ||
public |
Checks if the playhead is stuck within a gap, and if so, attempts to free it. |
Private Methods | ||
private |
_reportStall(bufferLen: undefined) Triggers a BUFFER_STALLED_ERROR event, but only once per stall period. |
|
private |
_tryFixBufferStall(bufferInfo: BufferInfo, stalledDurationMs: number) Detects and attempts to fix known buffer stalling issues. |
|
private |
Attempts to fix buffer stalls by advancing the mediaElement's current time by a small amount. |
|
private |
_trySkipBufferHole(partial: undefined): number Attempts to fix buffer stalls by jumping over known gaps caused by partial fragments |
Public Constructors
public constructor() source
Public Members
public config: * source
public fragmentTracker: * source
public hls: * source
public media: * source
public stalled: * source
Public Methods
public poll(lastCurrentTime: number) source
Checks if the playhead is stuck within a gap, and if so, attempts to free it. A gap is an unbuffered range between two buffered ranges (or the start and the first buffered range).
Params:
Name | Type | Attribute | Description |
lastCurrentTime | number |
Private Methods
private _reportStall(bufferLen: undefined) source
Triggers a BUFFER_STALLED_ERROR event, but only once per stall period.
Params:
Name | Type | Attribute | Description |
bufferLen | undefined |
private _tryFixBufferStall(bufferInfo: BufferInfo, stalledDurationMs: number) source
Detects and attempts to fix known buffer stalling issues.
Params:
Name | Type | Attribute | Description |
bufferInfo | BufferInfo | ||
stalledDurationMs | number |
private _tryNudgeBuffer() source
Attempts to fix buffer stalls by advancing the mediaElement's current time by a small amount.