API Reference for web - Class: CameraVideoTrack

更新时间: 2023-10-23 16:45:52

# Class: CameraVideoTrack

track/CameraVideoTrack.CameraVideoTrack

# Hierarchy

# Properties

# defaultMaxListeners

Static defaultMaxListeners: number

# Inherited from

LocalVideoTrack.defaultMaxListeners


# errorMonitor

Static Readonly errorMonitor: typeof errorMonitor

This symbol shall be used to install a listener for only monitoring 'error' events. Listeners installed using this symbol are called before the regular 'error' listeners are called.

Installing a listener using this symbol does not change the behavior once an 'error' event is emitted, therefore the process will still crash if no regular 'error' listener is installed.

# Inherited from

LocalVideoTrack.errorMonitor

# Accessors

# enabled

get enabled(): boolean

本地轨道当前的启用状态。

# Returns

boolean

# Inherited from

LocalVideoTrack.enabled


# isPlaying

get isPlaying(): boolean

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

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

# Returns

boolean

# Inherited from

LocalVideoTrack.isPlaying


# muted

get muted(): boolean

本地媒体轨道当前的静音状态。

# Returns

boolean

# Inherited from

LocalVideoTrack.muted

# Methods

# addListener

addListener(event, listener): CameraVideoTrack

# Parameters

Name Type
event string | symbol
listener (...args: any[]) => void

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.addListener


# close

close(): void

关闭本地轨道,并释放相关采集设备。 一旦本地轨道被关闭,就无法再次使用。如需再次使用本地轨道,需要重新创建。

# Returns

void

# Inherited from

LocalVideoTrack.close


# emit

emit(event, ...args): boolean

# Parameters

Name Type
event string | symbol
...args any[]

# Returns

boolean

# Inherited from

LocalVideoTrack.emit


# eventNames

eventNames(): (string | symbol)[]

# Returns

(string | symbol)[]

# Inherited from

LocalVideoTrack.eventNames


# getCurrentFrameData

getCurrentFrameData(): ImageData

获取当前渲染的视频帧数据。

只有在播放后才能调用此方法,如果没有调用 play 则返回空数据。

# Returns

ImageData

存储了 RGBA 数据的 ImageData 对象。该对象为浏览器原生对象,详见 ImageData (opens new window).

# Inherited from

LocalVideoTrack.getCurrentFrameData


# getListeners

getListeners(event): Function[]

指定一个事件名,获取当前所有监听这个事件的回调函数。

# Parameters

Name Type Description
event string 事件名称。

# Returns

Function[]

# Inherited from

LocalVideoTrack.getListeners


# getMaxListeners

getMaxListeners(): number

# Returns

number

# Inherited from

LocalVideoTrack.getMaxListeners


# getMediaStreamTrack

getMediaStreamTrack(): MediaStreamTrack

获取浏览器原生的 MediaStreamTrack (opens new window) 对象。

# Returns

MediaStreamTrack

# Inherited from

LocalVideoTrack.getMediaStreamTrack


# getTrackId

getTrackId(): string

获取由 SDK 生成的对于媒体轨道来说的唯一 ID。

# Returns

string

媒体轨道 ID。

# Inherited from

LocalVideoTrack.getTrackId


# getTrackLabel

getTrackLabel(): undefined | string

获取本地轨道的来源描述。

# Returns

undefined | string

可能返回以下值:

# Inherited from

LocalVideoTrack.getTrackLabel


# listenerCount

listenerCount(event): number

# Parameters

Name Type
event string | symbol

# Returns

number

# Inherited from

LocalVideoTrack.listenerCount


# listeners

listeners(event): Function[]

# Parameters

Name Type
event string | symbol

# Returns

Function[]

# Inherited from

LocalVideoTrack.listeners


# off

off(event, listener): CameraVideoTrack

# Parameters

Name Type
event string | symbol
listener (...args: any[]) => void

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.off


# once

once(event, listener): CameraVideoTrack

# Parameters

Name Type
event string | symbol
listener (...args: any[]) => void

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.once


# play

play(element, config?): void

在页面上播放本地视频轨道。

# Parameters

Name Type Description
element string | HTMLElement 指定一个 DOM 元素,SDK 将在这个元素下创建 <video> 元素播放视频轨道,支持 2 种类型: - string: 指定该 DOM 元素的 ID 值。 - HTMLElement: 直接传入一个 DOM 元素对象。
config? VideoPlayerConfig 设置播放参数(镜像/显示模式)。详见 VideoPlayerConfig 对于本地视频轨道,镜像模式默认开启。

# Returns

void

# Inherited from

LocalVideoTrack.play


# prependListener

prependListener(event, listener): CameraVideoTrack

# Parameters

Name Type
event string | symbol
listener (...args: any[]) => void

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.prependListener


# prependOnceListener

prependOnceListener(event, listener): CameraVideoTrack

# Parameters

Name Type
event string | symbol
listener (...args: any[]) => void

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.prependOnceListener


# rawListeners

rawListeners(event): Function[]

# Parameters

Name Type
event string | symbol

# Returns

Function[]

# Inherited from

LocalVideoTrack.rawListeners


# removeAllListeners

removeAllListeners(event?): CameraVideoTrack

# Parameters

Name Type
event? string | symbol

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.removeAllListeners


# removeListener

removeListener(event, listener): CameraVideoTrack

# Parameters

Name Type
event string | symbol
listener (...args: any[]) => void

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.removeListener


# safeEmit

safeEmit(event, ...args): boolean

# Parameters

Name Type
event string
...args any[]

# Returns

boolean

# Inherited from

LocalVideoTrack.safeEmit


# safeEmitAsPromise

safeEmitAsPromise(event, ...args): Promise<any>

# Parameters

Name Type
event string
...args any[]

# Returns

Promise<any>

# Inherited from

LocalVideoTrack.safeEmitAsPromise


# setDevice

setDevice(deviceId): Promise<void>

设置负责采集视频数据的摄像头设备。

# Parameters

Name Type Description
deviceId string 指定设备的设备 ID,可以通过 CoreRTC.getCameras 获取。

# Returns

Promise<void>


# setEnabled

setEnabled(enabled): Promise<void>

启用/禁用该轨道。

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

  • 禁用轨道不会触发LocalTrack.on("track-ended") 事件。
  • 调用 setEnabled 禁用轨道后 SDK 会停止音频或视频采集。摄像头的指示灯会关闭。
  • 如果该轨道已发布,禁用轨道后,远端会触发 user-unpublished 事件。重新启用后,远端会触发 user-published 事件。

# Parameters

Name Type Description
enabled boolean 是否启用该轨道: - true: 启用该轨道. - false: 禁用该轨道.

# Returns

Promise<void>

# Inherited from

LocalVideoTrack.setEnabled


# setEncoderConfiguration

setEncoderConfiguration(config): void

设置视频的编码参数,包括分辨率、帧率、码率。

注意事项:移动端不支持该方法。

# Parameters

Name Type Description
config VideoEncoderConfiguration | "90p" | "90p_1" | "120p" | "120p_1" | "120p_3" | "120p_4" | "180p" | "180p_1" | "180p_3" | "180p_4" | "240p" | "240p_1" | "240p_3" | "240p_4" | "360p" | "360p_1" | "360p_3" | "360p_4" | "360p_6" | "360p_7" | "360p_8" | "360p_9" | "360p_10" | "360p_11" | "480p" | "480p_1" | "480p_2" | "480p_3" | "480p_4" | "480p_6" | "480p_8" | "480p_9" | "480p_10" | "720p" | "720p_1" | "720p_2" | "720p_3" | "720p_5" | "720p_6" | "1080p" | "1080p_1" | "1080p_2" | "1080p_3" | "1080p_5" | "1440p" | "1440p_1" | "1440p_2" | "4k" | "4k_1" | "4k_3" 你可以传入 SDK 预设的视频编码配置 [[VideoEncoderConfigurationPreset]] ,也可以传入自定义的 [[VideoEncoderConfiguration]] 对象。

# Returns

void


# setMaxListeners

setMaxListeners(n): CameraVideoTrack

# Parameters

Name Type
n number

# Returns

CameraVideoTrack

# Inherited from

LocalVideoTrack.setMaxListeners


# setMuted

setMuted(muted): Promise<void>

发送或暂停发送该轨道的媒体数据。

setEnabled 和 setMuted 不能同时调用。

调用 setMuted Mute 轨道后,SDK 不会停止音视频采集。摄像头的指示灯不会关闭。

如果该轨道已发布,调用 setMuted(true) 后,远端会触发 user-unpublished事件。再调用 setMuted(false) 后,远端会触发 user-published 事件。

# Parameters

Name Type Description
muted boolean 是否发送该轨道的媒体数据: - true: 暂停发送该轨道的媒体数据。 - false: 恢复发送该轨道的媒体数据。

# Returns

Promise<void>

# Inherited from

LocalVideoTrack.setMuted


# stop

stop(): void

停止播放。

# Returns

void

# Inherited from

LocalVideoTrack.stop


# listenerCount

Static listenerCount(emitter, event): number

deprecated since v4.0.0

# Parameters

Name Type
emitter EventEmitter
event string | symbol

# Returns

number

# Inherited from

LocalVideoTrack.listenerCount