StreamController
Extends:
Constructor Summary
Public Constructor | ||
public |
|
Member Summary
Public Members | ||
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public get |
currentLevel: * |
|
public get |
|
|
public |
fragCurrent: * |
|
public |
|
|
public |
|
|
public |
fragPlaying: * |
|
public |
fragPrevious: * |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
levels: * |
|
public |
|
|
public |
mediaBuffer: * |
|
public get |
|
|
public get |
nextLevel: * |
|
public |
|
|
public |
onvplaying: * |
|
public |
onvseeked: * |
|
public |
|
|
public |
|
|
public |
|
|
public |
state: * |
|
public |
transmuxer: * |
|
public |
videoBuffer: * |
Private Members | ||
private |
|
Method Summary
Public Methods | ||
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
doTick() |
|
public |
|
|
public |
flushMainBuffer(startOffset: number, endOffset: number) |
|
public |
followingBufferedFrag(frag: undefined): * |
|
public |
getAppendedFrag(position: undefined): * |
|
public |
getBufferedFrag(position: undefined): * |
|
public |
|
|
public |
loadFragment(frag: Fragment, levelDetails: LevelDetails, targetBufferTime: number) |
|
public |
|
|
public |
try to switch ASAP without breaking video playback: in order to ensure smooth but quick level switching, we need to find the next flushable buffer range we should take into account new segment fetch time |
|
public |
onAudioTrackSwitched(event: undefined, data: AudioTrackSwitchedData) |
|
public |
onAudioTrackSwitching(event: undefined, data: AudioTrackSwitchingData) |
|
public |
onBufferCreated(event: undefined, data: BufferCreatedData) |
|
public |
onBufferFlushed(event: undefined, undefined: BufferFlushedData) |
|
public |
|
|
public |
onFragBuffered(event: undefined, data: FragBufferedData) |
|
public |
|
|
public |
|
|
public |
onLevelLoaded(event: undefined, data: LevelLoadedData) |
|
public |
onLevelLoading(event: undefined, data: LevelLoadingData) |
|
public |
onLevelsUpdated(event: undefined, data: LevelsUpdatedData) |
|
public |
|
|
public |
onManifestParsed(event: undefined, data: ManifestParsedData) |
|
public |
onMediaAttached(event: undefined, data: MediaAttachedData) |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
Seeks to the set startPosition if not equal to the mediaElement's current time. |
|
public |
|
|
public |
stopLoad() |
|
public |
|
Private Methods | ||
private |
_bufferInitSegment(currentLevel: Level, tracks: TrackSet, frag: Fragment, chunkMeta: ChunkMetadata) |
|
private |
_getAudioCodec(currentLevel: undefined): * |
|
private |
_handleFragmentLoadProgress(data: FragLoadedData) |
|
private |
_handleTransmuxComplete(transmuxResult: TransmuxerResult) |
|
private |
_loadBitrateTestFrag(frag: Fragment) |
|
private |
|
|
private |
|
Public Constructors
public constructor() source
Public Members
public get currentLevel: * source
public get forceStartLoad: * source
public fragCurrent: * source
public fragPlaying: * source
public fragPrevious: * source
public gapController: * source
public lastCurrentTime: * source
public levelLastLoaded: * source
public levels: * source
public mediaBuffer: * source
public get nextBufferedFrag: * source
public get nextLevel: * source
public nextLoadPosition: * source
public onvplaying: * source
public onvseeked: * source
public startPosition: * source
public state: * source
public transmuxer: * source
public videoBuffer: * source
Private Members
Public Methods
public abortCurrentFrag() source
public checkBuffer() source
public checkFragmentChanged() source
public doTick() source
public doTickIdle() source
public followingBufferedFrag(frag: undefined): * source
Params:
Name | Type | Attribute | Description |
frag | undefined |
Return:
* |
public getAppendedFrag(position: undefined): * source
Params:
Name | Type | Attribute | Description |
position | undefined |
Return:
* |
public getBufferedFrag(position: undefined): * source
Params:
Name | Type | Attribute | Description |
position | undefined |
Return:
* |
public immediateLevelSwitch() source
public loadFragment(frag: Fragment, levelDetails: LevelDetails, targetBufferTime: number) source
Params:
Name | Type | Attribute | Description |
frag | Fragment | ||
levelDetails | LevelDetails | ||
targetBufferTime | number |
public nextLevelSwitch() source
try to switch ASAP without breaking video playback: in order to ensure smooth but quick level switching, we need to find the next flushable buffer range we should take into account new segment fetch time
public onAudioTrackSwitched(event: undefined, data: AudioTrackSwitchedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | AudioTrackSwitchedData |
public onAudioTrackSwitching(event: undefined, data: AudioTrackSwitchingData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | AudioTrackSwitchingData |
public onBufferCreated(event: undefined, data: BufferCreatedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | BufferCreatedData |
public onBufferFlushed(event: undefined, undefined: BufferFlushedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
undefined | BufferFlushedData |
public onError(event: undefined, data: ErrorData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | ErrorData |
public onFragBuffered(event: undefined, data: FragBufferedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | FragBufferedData |
public onFragLoadEmergencyAborted() source
public onHandlerDestroying() source
public onLevelLoaded(event: undefined, data: LevelLoadedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | LevelLoadedData |
public onLevelLoading(event: undefined, data: LevelLoadingData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | LevelLoadingData |
public onLevelsUpdated(event: undefined, data: LevelsUpdatedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | LevelsUpdatedData |
public onManifestLoading() source
public onManifestParsed(event: undefined, data: ManifestParsedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | ManifestParsedData |
public onMediaAttached(event: undefined, data: MediaAttachedData) source
Params:
Name | Type | Attribute | Description |
event | undefined | ||
data | MediaAttachedData |
public onMediaDetaching() source
public onMediaPlaying() source
public onMediaSeeked() source
public onTickEnd() source
public resetTransmuxer() source
public seekToStartPos() source
Seeks to the set startPosition if not equal to the mediaElement's current time.
public startLoad(startPosition: number) source
Params:
Name | Type | Attribute | Description |
startPosition | number |
public stopLoad() source
public swapAudioCodec() source
Private Methods
private _bufferInitSegment(currentLevel: Level, tracks: TrackSet, frag: Fragment, chunkMeta: ChunkMetadata) source
Params:
Name | Type | Attribute | Description |
currentLevel | Level | ||
tracks | TrackSet | ||
frag | Fragment | ||
chunkMeta | ChunkMetadata |
private _getAudioCodec(currentLevel: undefined): * source
Params:
Name | Type | Attribute | Description |
currentLevel | undefined |
Return:
* |
private _handleFragmentLoadProgress(data: FragLoadedData) source
Params:
Name | Type | Attribute | Description |
data | FragLoadedData |
private _handleTransmuxComplete(transmuxResult: TransmuxerResult) source
Params:
Name | Type | Attribute | Description |
transmuxResult | TransmuxerResult |
private _loadBitrateTestFrag(frag: Fragment) source
Params:
Name | Type | Attribute | Description |
frag | Fragment |