videogular2
Version:
Videogular is a video application framework for desktop and mobile powered by Angular
188 lines (187 loc) • 6.66 kB
TypeScript
export interface IMediaElement {
/**
* Returns the id of the element.
*/
id: string;
/**
* Returns the node name. Only available on native HTML tags.
*/
readonly nodeName?: string;
/**
* Returns the node element. Only available on Angular classes.
*/
readonly elem?: any;
/**
* Returns an AudioTrackList object with the audio tracks for a given video element.
*/
readonly audioTracks: AudioTrackList;
/**
* Gets or sets a value that indicates whether to start playing the media automatically.
*/
autoplay: boolean;
/**
* Gets a collection of buffered time ranges.
*/
readonly buffered: TimeRanges;
/**
* Gets or sets a flag that indicates whether the client provides a set of controls for
* the media (in case the developer does not include controls for the player).
*/
controls: boolean;
crossOrigin: string | null;
/**
* Gets the address or URL of the current media resource that is selected by IHTMLMediaElement.
*/
readonly currentSrc: string;
/**
* Gets or sets the current playback position, in seconds.
*/
currentTime: number;
defaultMuted: boolean;
/**
* Gets or sets the default playback rate when the user is not using fast forward or reverse for a video or audio resource.
*/
defaultPlaybackRate: number;
/**
* Returns the duration in seconds of the current media resource. A NaN value is returned if duration
* is not available, or Infinity if the media resource is streaming.
*/
readonly duration: number;
/**
* Gets information about whether the playback has ended or not.
*/
readonly ended: boolean;
/**
* Returns an object representing the current error state of the audio or video element.
*/
readonly error: MediaError;
/**
* Gets or sets a flag to specify whether playback should restart after it completes.
*/
loop: boolean;
readonly mediaKeys: MediaKeys | null;
/**
* Specifies the purpose of the audio or video media, such as background audio or alerts.
*/
msAudioCategory: string;
/**
* Specifies the output device id that the audio will be sent to.
*/
msAudioDeviceType: string;
readonly msGraphicsTrustStatus: MSGraphicsTrust;
/**
* Gets the MSMediaKeys object, which is used for decrypting media data, that is associated with this media element.
*/
readonly msKeys: MSMediaKeys;
/**
* Gets or sets whether the DLNA PlayTo device is available.
*/
msPlayToDisabled: boolean;
/**
* Gets or sets the path to the preferred media source. This enables the Play To target device to
* stream the media content, which can be DRM protected, from a different location, such as a cloud media server.
*/
msPlayToPreferredSourceUri: string;
/**
* Gets or sets the primary DLNA PlayTo device.
*/
msPlayToPrimary: boolean;
/**
* Gets the source associated with the media element for use by the PlayToManager.
*/
readonly msPlayToSource: any;
/**
* Specifies whether or not to enable low-latency playback on the media element.
*/
msRealTime: boolean;
/**
* Gets or sets a flag that indicates whether the audio (either audio or the audio track on video media) is muted.
*/
muted: boolean;
/**
* Gets the current network activity for the element.
*/
readonly networkState: number;
onencrypted: (this: HTMLMediaElement, ev: MediaEncryptedEvent) => any;
onmsneedkey: (this: HTMLMediaElement, ev: MSMediaKeyNeededEvent) => any;
/**
* Gets a flag that specifies whether playback is paused.
*/
readonly paused: boolean;
/**
* Gets or sets the current rate of speed for the media resource to play. This speed is
* expressed as a multiple of the normal speed of the media resource.
*/
playbackRate: number;
/**
* Gets TimeRanges for the current media resource that has been played.
*/
readonly played: TimeRanges;
/**
* Gets or sets the current playback position, in seconds.
*/
preload: string;
readyState: number;
/**
* Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked.
*/
readonly seekable: TimeRanges;
/**
* Gets a flag that indicates whether the the client is currently moving to a new playback position in the media resource.
*/
readonly seeking: boolean;
/**
* The address or URL of the a media resource that is to be considered.
*/
src: string;
srcObject: MediaStream | null;
readonly textTracks: TextTrackList;
readonly videoTracks: VideoTrackList;
/**
* Gets or sets the volume level for audio portions of the media element.
*/
volume: number;
addTextTrack(kind: string, label?: string, language?: string): TextTrack;
/**
* Returns a string that specifies whether the client can play a given media resource type.
*/
canPlayType(type: string): string;
/**
* Resets the audio or video object and loads a new media resource.
*/
load(): void;
/**
* Clears all effects from the media pipeline.
*/
msClearEffects(): void;
msGetAsCastingSource(): any;
/**
* Inserts the specified audio effect into media pipeline.
*/
msInsertAudioEffect(activatableClassId: string, effectRequired: boolean, config?: any): void;
msSetMediaKeys(mediaKeys: MSMediaKeys): void;
/**
* Specifies the media protection manager for a given media pipeline.
*/
msSetMediaProtectionManager(mediaProtectionManager?: any): void;
/**
* Pauses the current playback and sets paused to TRUE. This can be used to test whether the media is
* playing or paused. You can also use the pause or play events to tell whether the media is playing or not.
*/
pause(): void;
/**
* Loads and starts playback of a media resource.
*/
play(): Promise<any>;
setMediaKeys(mediaKeys: MediaKeys | null): Promise<void>;
readonly HAVE_CURRENT_DATA: number;
readonly HAVE_ENOUGH_DATA: number;
readonly HAVE_FUTURE_DATA: number;
readonly HAVE_METADATA: number;
readonly HAVE_NOTHING: number;
readonly NETWORK_EMPTY: number;
readonly NETWORK_IDLE: number;
readonly NETWORK_LOADING: number;
readonly NETWORK_NO_SOURCE: number;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void;
}