This service is a api layer that handles the communication with the video element regarding playback.

Note This service is created by the HlsPlayer on startup and should never be instantiated elsewhere.

Hierarchy

  • Service
    • ProgressiveService

Constructors

  • Note Should only be used from within the player.

    Parameters

    • master: HTMLVideoElement

      The video element.

    • eventCallback: (<T>(event) => void)

      Callback to control internal event handling.

        • <T>(event): void
        • Type Parameters

          • T extends PlayerEvent

          Parameters

          • event: T

          Returns void

    • internalEventBus: EventMixin

      Event bus for internal communication.

    • Optional settings: PlayerSettings

      Basic settings controlling the behavior.

    Returns ProgressiveService

Properties

plugin: PluginApi

An object containing all currently registered plugins. Access a specific plugin using the Plugins static property Name.

Example

const hotkeyPlugin = player.api.plugin[HotkeyPlugin.Name];

Accessors

  • get ended(): boolean
  • Returns true if the video playback has ended, false otherwise

    Returns boolean

  • get isSeeking(): boolean
  • Returns true if a seek is in progress, false otherwise

    Returns boolean

  • get master(): HTMLMediaElement
  • The video element used for playback.

    Returns HTMLMediaElement

Methods

  • Destroys the service, should only be called from within the player.

    Returns Promise<void>

  • Returns the active video file or undefined if no video file is loaded.

    Returns VideoFile

  • Parameters

    • format: Frame

    Returns number

  • Parameters

    • format: Milliseconds

    Returns number

  • Parameters

    • format: Percent

    Returns number

  • Parameters

    • format: Seconds

    Returns number

  • Parameters

    • format: Time

    Returns string

  • Parameters

    • format: Timecode

    Returns string

  • Parameters

    • format: TimeFormat

    Returns string | number

  • Returns number

  • Parameters

    • format: Frame

    Returns number

  • Parameters

    • format: Milliseconds

    Returns number

  • Parameters

    • format: Percent

    Returns number

  • Parameters

    • format: Seconds

    Returns number

  • Parameters

    • format: Time

    Returns string

  • Parameters

    • format: Timecode

    Returns string

  • Parameters

    • format: TimeFormat

    Returns string | number

  • Returns number

  • Returns PlayerStatus

  • Parameters

    • videoFile: VideoFile

    Returns void

  • Load videoFiles i.e multiple representations of the same video.

    Parameters

    • files: VideoFile[]

      The files to be loaded.

    Returns void

  • Helper method to make sure that playback is resumed correctly. Should only be used from within the player.

    Returns void

  • Pauses playback and makes sure that the player is stopped at an exact frame.

    Parameters

    • Optional pauseOn: SeekEvent

      (Optional) Seek to specific time when pausing.

    • Optional userPause: boolean

    Returns Promise<void>

  • Starts playback. Queues requests if the player is seeking or loading to achieve autoplay behavior.

    Returns Promise<void>

  • Parameters

    • event: SeekEvent
    • Optional roundingMode: RoundingMode

    Returns Promise<void>

  • Update frameOffset value for all loaded videoFiles. Equivalent to load videoFile with a specific frameOffset.

    Parameters

    • offset: number

      Frame offset to set.

    Returns void

  • Set the volume of the player.

    Parameters

    • volume: number

      A number between 0 and 1.

    Returns void

  • Sets the default controller for the volume

    Parameters

    • volumeController: VolumeController

      the volume controller

    Returns void

  • Switch between already loaded video files i.e representations of the same video. The file must be with the 'loadVideoFiles' method.

    Parameters

    • file: VideoFile

      The desired representation.

    Returns void

  • Toggles playback.

    Returns Promise<void>

  • Parameters

    • videoFile: VideoFile

    Returns void

  • Update the dropFrame value for all loaded videoFiles. Equivalent to load videoFile with dropFrame property set.

    Parameters

    • dropFrame: boolean

      Drop frame value to set.

    Returns void