Interface IRemoteVideoTrack
- React
更新时间不可用
远端视频轨道。
调用 subscribe 后通过 AgoraRTCRemoteUser.videoTrack 对象获取。
Events
video-element-visible-status
video-element-visible-status(data?: CheckVideoVisibleResult): void自从
4.8.0
提示 HTML <video> 标签的可见状态和不可见原因。SDK 每 30 秒触发一次该事件。
调用 remoteVideoTrack.play 后 SDK 会创建 HTML <video> 标签用于播放视频轨道。当 remoteVideoTrack.isPlaying 为 true 却看不到图像时,你可通过此事件来进行问题排查。
| 参数名 | 描述 |
|---|---|
optional |
|
| 返回类型 | 描述 |
|---|---|
void |
Properties
isPlaying
isPlaying: booleanInherited from IBufferSourceAudioTrack.isPlaying
媒体轨道是否正在页面上播放。
true: 媒体轨道正在页面上播放。false: 媒体轨道没有在页面上播放。
processorDestination
processorDestination: IBaseProcessor自从
4.13.0
远端视频轨道上当前媒体处理链路的最终节点。
trackMediaType
trackMediaType: "audio"|"video"Inherited from IBufferSourceAudioTrack.trackMediaType
媒体轨道的类型:
"audio": 音频轨道。"video": 视频轨道。
Methods
getCurrentFrameData
getCurrentFrameData(): ImageData自从
| 返回类型 | 描述 |
|---|---|
ImageData | 存储了 RGBA 数据的 |
getListeners
getListeners(event: string): Function[]Inherited from EventEmitter.getListeners
指定一个事件名,获取当前所有监听这个事件的回调函数。
| 参数名 | 描述 |
|---|---|
eventstring | 事件名称。 |
| 返回类型 | 描述 |
|---|---|
Function[] |
getMediaStreamTrack
getMediaStreamTrack(): MediaStreamTrackInherited from IBufferSourceAudioTrack.getMediaStreamTrack
获取浏览器原生的 MediaStreamTrack 对象。
| 返回类型 | 描述 |
|---|---|
MediaStreamTrack | 一个 MediaStreamTrack 对象。 |
getRTCRtpTransceiver
getRTCRtpTransceiver(type?: StreamType): RTCRtpTransceiver | undefinedInherited from IBufferSourceAudioTrack.getRTCRtpTransceiver
获取当前轨道的 RTCRtpTransceiver 实例。
该方法目前主要用于视频流的端到端加密(Beta)。
如果 SDK 发生断线重连,当前轨道对应的
RTCRtpTransceiver实例可能会发生变化。你可以通过以下回调来获取新的RTCRtpTransceiver实例:
| 参数名 | 描述 |
|---|---|
typeStreamType | 视频流的类型。详见 StreamType。 |
| 返回类型 | 描述 |
|---|---|
RTCRtpTransceiver | undefined | 当前轨道的 |
getStats
getStats(): RemoteVideoTrackStatsOverrides IRemoteTrack.getStats
获取远端视频轨道相关信息。
不推荐使用 请使用 AgoraRTCClient.getRemoteVideoStats 获取远端视频轨道相关信息。
| 返回类型 | 描述 |
|---|---|
一个 RemoteVideoTrackStats 对象。 |
getTrackId
getTrackId(): stringInherited from IBufferSourceAudioTrack.getTrackId
获取由 SDK 生成的对于媒体轨道来说的唯一 ID。
| 返回类型 | 描述 |
|---|---|
string | 媒体轨道 ID。 |
getUserId
getUserId(): UIDInherited from IRemoteAudioTrack.getUserId
获取发布远端轨道的远端用户 ID。
| 返回类型 | 描述 |
|---|---|
远端轨道对应的 |
getVideoElementVisibleStatus
getVideoElementVisibleStatus(): CheckVideoVisibleResult | undefined-
@自从
4.8.0
获取 HTML <video> 标签的可见状态和不可见原因。
调用 remoteVideoTrack.play 后 SDK 会创建 HTML <video> 标签用于播放视频轨道。当 remoteVideoTrack.isPlaying 为 true 却看不到图像时,你可调用该方法进行问题排查。
| 返回类型 | 描述 |
|---|---|
CheckVideoVisibleResult | undefined | CheckVideoVisibleResult 对象。如果该方法返回
|
off
off(event: string, listener: Function): voidInherited from EventEmitter.off
取消一个指定事件的监听。
| 参数名 | 描述 |
|---|---|
eventstring | 指定事件的名称。 |
listenerFunction | 监听事件时传入的回调函数。 |
| 返回类型 | 描述 |
|---|---|
void |
on
on [1/6]
on(event: "track-updated", listener: typeof event_track_updated): voidOverrides IRemoteAudioTrack.on
| 参数名 | 描述 |
|---|---|
event"track-updated" | 事件名称。 |
listenertypeof event_track_updated | 详见 track-updated。 |
| 返回类型 | 描述 |
|---|---|
void |
on [2/6]
on(event: "video-state-changed", listener: typeof event_video_state_changed): voidOverrides IRemoteAudioTrack.on
| 参数名 | 描述 |
|---|---|
event"video-state-changed" | 事件名称。 |
listenertypeof event_video_state_changed |
| 返回类型 | 描述 |
|---|---|
void |
on [3/6]
on(event: "first-frame-decoded", listener: typeof event_first_frame_decoded): voidOverrides IRemoteAudioTrack.on
| 参数名 | 描述 |
|---|---|
event"first-frame-decoded" | 事件名称。 |
listenertypeof event_first_frame_decoded |
| 返回类型 | 描述 |
|---|---|
void |
on [4/6]
on(event: "video-element-visible-status", listener: typeof event_video_element_visible_status_2): voidOverrides IRemoteAudioTrack.on
| 参数名 | 描述 |
|---|---|
event"video-element-visible-status" | 事件名称。 |
listenertypeof event_video_element_visible_status_2 |
| 返回类型 | 描述 |
|---|---|
void |
on [5/6]
on(event: "transceiver-updated", listener: typeof event_transceiver_updated_2): voidOverrides IRemoteAudioTrack.on
添加事件监听器。
| 参数名 | 描述 |
|---|---|
event"transceiver-updated" | 事件名称。 |
listenertypeof event_transceiver_updated_2 |
| 返回类型 | 描述 |
|---|---|
void |
on [6/6]
on(event: "sei-received", listener: typeof event_sei_received): voidOverrides IRemoteAudioTrack.on
添加事件监听器。
| 参数名 | 描述 |
|---|---|
event"sei-received" | 事件名称。 |
listenertypeof event_sei_received |
| 返回类型 | 描述 |
|---|---|
void |
once
once(event: string, listener: Function): voidInherited from EventEmitter.once
监听一个指定的事件,当事件触发时会调用传入的回调函数。
当监听后事件第一次触发时,该监听和回调函数就会被立刻移除,也就是只监听一次指定事件。
| 参数名 | 描述 |
|---|---|
eventstring | 指定事件的名称。 |
listenerFunction | 传入的回调函数。 |
| 返回类型 | 描述 |
|---|---|
void |
pipe
pipe(processor: IBaseProcessor): IBaseProcessor自从
4.13.0
将 Processor 注入远端视频轨道。
| 参数名 | 描述 |
|---|---|
processorIBaseProcessor |
|
| 返回类型 | 描述 |
|---|---|
IBaseProcessor |
|
play
play(element: string | HTMLElement, config?: VideoPlayerConfig): voidOverrides ILocalTrack.play
在页面上播放本地视频轨道。
| 参数名 | 描述 |
|---|---|
elementstring | HTMLElement | 指定一个 DOM 元素,SDK 将在这个元素下创建
|
configVideoPlayerConfig | 设置播放参数(镜像/显示模式)。详见 VideoPlayerConfig。对于本地视频轨道,镜像模式默认开启。 |
| 返回类型 | 描述 |
|---|---|
void |
removeAllListeners
removeAllListeners(event?: string): voidInherited from EventEmitter.removeAllListeners
指定一个事件,取消其所有的监听。
| 参数名 | 描述 |
|---|---|
eventstring | 指定事件的名称,如果没有指定事件,则取消所有事件的所有监听。 |
| 返回类型 | 描述 |
|---|---|
void |
stop
stop(): voidInherited from IBufferSourceAudioTrack.stop
停止播放。
| 返回类型 | 描述 |
|---|---|
void |
unpipe
unpipe(): void自从
4.13.0
取消远端视频轨道上注入的 Processor。
| 返回类型 | 描述 |
|---|---|
void |