red5pro-webrtc-sdk
Version:
Red5 Pro HTML SDK
412 lines (206 loc) • 5.44 kB
Markdown
[**Red5 Pro WebRTC SDK v15.5.0**](../README.md)
***
[Red5 Pro WebRTC SDK](../globals.md) / SourceHandlerImpl
# Class: SourceHandlerImpl
A base implementation of the SourceHandler class.
## Extends
- [`SourceHandler`](SourceHandler.md)
## Constructors
### Constructor
> **new SourceHandlerImpl**(`view`, `type`): `SourceHandlerImpl`
Constructor for the SourceHandlerImpl class.
#### Parameters
##### view
`HTMLMediaElement`
The HTML media element to manage.
##### type
`string`
The type of the source handler.
#### Returns
`SourceHandlerImpl`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`constructor`](SourceHandler.md#constructor)
## Methods
### attemptAutoplay()
> **attemptAutoplay**(`muteOnAutoplay`): `Promise`\<`void`\>
Attempt to autoplay the media element.
#### Parameters
##### muteOnAutoplay
`boolean` = `false`
Whether to mute the media element on autoplay if the browser has a restriction.
#### Returns
`Promise`\<`void`\>
#### Overrides
[`SourceHandler`](SourceHandler.md).[`attemptAutoplay`](SourceHandler.md#attemptautoplay)
***
### disconnect()
> **disconnect**(): `void`
Disconnect the media element.
#### Returns
`void`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`disconnect`](SourceHandler.md#disconnect)
***
### getControls()
> **getControls**(): `undefined` \| [`PlaybackControls`](PlaybackControls.md)
Get the controls for the media element.
#### Returns
`undefined` \| [`PlaybackControls`](PlaybackControls.md)
#### Overrides
[`SourceHandler`](SourceHandler.md).[`getControls`](SourceHandler.md#getcontrols)
***
### getVolume()
> **getVolume**(): `number`
Get the volume of the media element.
#### Returns
`number`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`getVolume`](SourceHandler.md#getvolume)
***
### isMuted()
> **isMuted**(): `boolean`
Check if the media element is muted.
#### Returns
`boolean`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`isMuted`](SourceHandler.md#ismuted)
***
### isVOD()
> **isVOD**(): `boolean`
#### Returns
`boolean`
***
### mute()
> **mute**(): `void`
Mute the media element.
#### Returns
`void`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`mute`](SourceHandler.md#mute)
***
### off()
> **off**(`event`, `fn`): `void`
Remove an event listener from the PlaybackController.
#### Parameters
##### event
`string`
The event to remove the listener from.
##### fn
(...`args`) => `void`
The function to remove the listener from.
#### Returns
`void`
#### Inherited from
[`SourceHandler`](SourceHandler.md).[`off`](SourceHandler.md#off)
***
### on()
> **on**(`event`, `fn`): `void`
Add an event listener to the PlaybackController.
#### Parameters
##### event
`string`
The event to listen for.
##### fn
(...`args`) => `void`
The function to call when the event is triggered.
#### Returns
`void`
#### Inherited from
[`SourceHandler`](SourceHandler.md).[`on`](SourceHandler.md#on)
***
### pause()
> **pause**(): `Promise`\<`boolean`\>
Pause the media element.
#### Returns
`Promise`\<`boolean`\>
#### Overrides
[`SourceHandler`](SourceHandler.md).[`pause`](SourceHandler.md#pause)
***
### play()
> **play**(): `Promise`\<`boolean`\>
Play the media element.
#### Returns
`Promise`\<`boolean`\>
#### Overrides
[`SourceHandler`](SourceHandler.md).[`play`](SourceHandler.md#play)
***
### resume()
> **resume**(): `Promise`\<`boolean`\>
Resume the media element.
#### Returns
`Promise`\<`boolean`\>
#### Overrides
[`SourceHandler`](SourceHandler.md).[`resume`](SourceHandler.md#resume)
***
### seekTo()
> **seekTo**(`percentage`, `duration`): `void`
Seek to a specific time in the media element.
#### Parameters
##### percentage
`number`
##### duration
`undefined` = `undefined`
The duration of the media element.
#### Returns
`void`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`seekTo`](SourceHandler.md#seekto)
***
### setVolume()
> **setVolume**(`value`): `void`
Set the volume of the media element.
#### Parameters
##### value
`number`
The volume to set.
#### Returns
`void`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`setVolume`](SourceHandler.md#setvolume)
***
### stop()
> **stop**(): `Promise`\<`boolean`\>
#### Returns
`Promise`\<`boolean`\>
#### Overrides
[`SourceHandler`](SourceHandler.md).[`stop`](SourceHandler.md#stop)
***
### toggleFullScreen()
> **toggleFullScreen**(`element?`): `void`
Toggle the full screen mode of the media element.
#### Parameters
##### element?
`HTMLElement`
The element to toggle the full screen mode of.
#### Returns
`void`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`toggleFullScreen`](SourceHandler.md#togglefullscreen)
***
### trigger()
> **trigger**(`event`): `void`
Trigger an event on the PlaybackController.
#### Parameters
##### event
[`Event`](Event.md)
The event to trigger.
#### Returns
`void`
#### Inherited from
[`SourceHandler`](SourceHandler.md).[`trigger`](SourceHandler.md#trigger)
***
### unmute()
> **unmute**(): `void`
Unmute the media element.
#### Returns
`void`
#### Overrides
[`SourceHandler`](SourceHandler.md).[`unmute`](SourceHandler.md#unmute)
***
### unpublish()
> **unpublish**(): `Promise`\<`void`\>
Unpublish the media element.
#### Returns
`Promise`\<`void`\>
#### Overrides
[`SourceHandler`](SourceHandler.md).[`unpublish`](SourceHandler.md#unpublish)