Interface ILocalTrack

LocalTrack 为本地轨道的基础类,为音频轨道 LocalAudioTrack 和视频轨道 LocalVideoTrack 提供一些公共的方法。

Hierarchy

Index

Events

track-ended

  • track-ended(): void
  • 音频或视频轨道被终止,终止的原因可能是:

    • 摄像头被拔出
    • 麦克风被拔出
    • 用户主动停止了屏幕共享
    • 该轨道被主动关闭
    • 媒体设备故障

    Returns void

Properties

isPlaying

isPlaying: boolean

媒体轨道是否正在页面上播放。

  • true: 媒体轨道正在页面上播放。
  • false: 媒体轨道没有在页面上播放。

trackMediaType

trackMediaType: "audio" | "video"

媒体轨道的类型:

  • "audio": 音频轨道。
  • "video": 视频轨道。

Methods

close

  • close(): void
  • 关闭本地轨道,并释放相关采集设备。

    一旦本地轨道被关闭,就无法再次使用。如需再次使用本地轨道,需要重新创建。

    Returns void

getListeners

  • getListeners(event: string): Function[]
  • 指定一个事件名,获取当前所有监听这个事件的回调函数。

    Parameters

    • event: string

      事件名称。

    Returns Function[]

getMediaStreamTrack

  • getMediaStreamTrack(): MediaStreamTrack

getStats

getTrackId

  • getTrackId(): string
  • 获取由 SDK 生成的对于媒体轨道来说的唯一 ID。

    Returns string

    媒体轨道 ID。

getTrackLabel

  • getTrackLabel(): string
  • 获取本地轨道的来源描述。

    Returns string

    可能返回以下值:

    • 如果是通过 createMicrophoneAudioTrackcreateCameraVideoTrack 创建的轨道,返回 MediaDeviceInfo.label 字段。
    • 如果是通过 createScreenVideoTrack 创建的轨道,返回屏幕共享的 sourceId
    • 如果是 createCustomAudioTrackcreateCustomVideoTrack 创建的轨道,返回 MediaStreamTrack.label 字段。

off

  • off(event: string, listener: Function): void
  • 取消一个指定事件的监听。

    Parameters

    • event: string

      指定事件的名称。

    • listener: Function

      监听事件时传入的回调函数。

    Returns void

on

  • Parameters

    Returns void

once

  • once(event: string, listener: Function): void
  • 监听一个指定的事件,当事件触发时会调用传入的回调函数。

    当监听后事件第一次触发时,该监听和回调函数就会被立刻移除,也就是只监听一次指定事件。

    Parameters

    • event: string

      指定事件的名称。

    • listener: Function

      传入的回调函数。

    Returns void

play

  • play(element?: string | HTMLElement): void
  • 在页面上播放媒体轨道。

    Parameters

    • Optional element: string | HTMLElement

      指定一个 DOM 元素,SDK 将在这个元素下创建 <video> 元素播放视频轨道,支持 2 种类型:

      • string: 指定该 DOM 元素的 ID 值。
      • HTMLElement: 直接传入一个 DOM 元素对象。

    Returns void

removeAllListeners

  • removeAllListeners(event?: undefined | string): void
  • 指定一个事件,取消其所有的监听。

    Parameters

    • Optional event: undefined | string

      指定事件的名称,如果没有指定事件,则取消所有事件的所有监听。

    Returns void

setEnabled

  • setEnabled(enabled: boolean): Promise<void>
  • 自从
       4.0.0

    启用/禁用该轨道。

    轨道禁用后,播放和发布都将被停止。

    禁用轨道不会触发 LocalTrack.on("track-ended") 事件。 如果该轨道已发布,禁用轨道后,远端会触发 user-unpublished 事件。重新启用后,远端会触发 user-published 事件。

    Parameters

    • enabled: boolean

      是否启用该轨道:

      • true: 启用该轨道。
      • false: 禁用该轨道。

    Returns Promise<void>

stop

  • stop(): void
  • 停止播放。

    Returns void