NERtc Unity SDK
V4.5.907
|
Public 成员函数 | |
abstract int | Initialize (RtcEngineContext param) |
abstract void | Release (bool sync) |
abstract int | SetClientRole (RtcClientRole role) |
abstract int | SetChannelProfile (RtcChannelProfileType profile) |
abstract int | JoinChannel (string token, string channelName, ulong uid) |
abstract int | SwitchChannel (string token, string channelName) |
abstract int | LeaveChannel () |
abstract int | EnableLocalAudio (bool enabled) |
abstract int | SetupLocalVideoCanvas (RtcVideoCanvas canvas) |
abstract int | SetupRemoteVideoCanvas (ulong uid, RtcVideoCanvas canvas) |
abstract int | EnableLocalVideo (bool enabled) |
abstract int | SubscribeRemoteVideoStream (ulong uid, RtcRemoteVideoStreamType type, bool subscribe) |
abstract int | SwitchCamera () |
abstract IRtcChannel | CreateChannel (string channelName) |
abstract IRtcChannel | GetChannel (string channelName) |
abstract RtcConnectionStateType | GetConnectionState () |
abstract int | MuteLocalAudioStream (bool mute) |
abstract int | SetAudioProfile (RtcAudioProfileType profile, RtcAudioScenarioType scenario) |
abstract int | SetAudioEffectPreset (RtcVoiceChangerType type) |
abstract int | SetVoiceBeautifierPreset (RtcVoiceBeautifierType type) |
abstract int | SetLocalVoicePitch (double pitch) |
abstract int | SetLocalVoiceEqualization (RtcVoiceEqualizationBand bandFrequency, int bandGain) |
abstract int | SubscribeRemoteAudioStream (ulong uid, bool subscribe) |
abstract int | SetSudioSessionOperationRestriction (RtcAudioSessionOperationRestriction restriction) |
abstract int | SetPlayoutDeviceMute (bool muted) |
abstract int | GetPlayoutDeviceMute (ref bool muted) |
abstract int | SetRecordDeviceMute (bool muted) |
abstract int | GetRecordDeviceMute (ref bool muted) |
abstract bool | IsCameraZoomSupported () |
abstract bool | IsCameraTorchSupported () |
abstract bool | IsCameraFocusSupported () |
abstract bool | IsCameraExposurePositionSupported () |
abstract int | SetCameraExposurePosition (float pointX, float pointY) |
abstract int | SetCameraTorchOn (bool on) |
abstract bool | IsCameraTorchOn () |
abstract int | SetCameraZoomFactor (float factor) |
abstract float | MaxCameraZoomScale () |
abstract int | SetCameraFocusPosition (float x, float y) |
abstract int | SetCameraCaptureConfig (RtcCameraCaptureConfig config) |
abstract int | SubscribeAllRemoteAudioStream (bool subscribe) |
abstract int | SetVideoConfig (RtcVideoConfig config) |
abstract int | EnableDualStreamMode (bool enable) |
abstract int | SetupLocalSubstreamVideoCanvas (RtcVideoCanvas canvas) |
abstract int | SetLocalSubstreamRenderMode (RtcVideoScalingMode scalingMode) |
abstract int | SetLocalRenderMode (RtcVideoScalingMode scalingMode) |
abstract int | SetLocalVideoMirrorMode (RtcVideoMirrorMode mirrorMode) |
abstract int | SetRemoteRenderMode (ulong uid, RtcVideoScalingMode scalingMode) |
abstract int | SetupRemoteSubstreamVideoCanvas (ulong uid, RtcVideoCanvas canvas) |
abstract int | SubscribeRemoteVideoSubstream (ulong uid, bool subscribe) |
abstract int | SetRemoteSubsteamRenderMode (ulong uid, RtcVideoScalingMode scalingMode) |
abstract int | StartVideoPreview () |
abstract int | StopVideoPreview () |
abstract int | MuteLocalVideoStream (bool mute) |
abstract int | SetLocalMediaPriority (int priority, bool isPreemptive) |
abstract int | SetParameters (string parameters) |
abstract int | SetRecordingAudioFrameParameters (RtcAudioFrameRequestFormat format) |
abstract int | SetPlaybackAudioFrameParameters (RtcAudioFrameRequestFormat format) |
abstract int | SetMixedAudioFrameParameters (int sampleRate) |
abstract int | SetAudioFrameObserver (IAudioFrameObserver observer) |
abstract int | StartAudioDump () |
abstract int | StopAudioDump () |
abstract int | SetLoudSpeakerMode (bool enable) |
abstract int | GetLoudSpeakerMode (ref bool enabled) |
abstract int | StartAudioMixing (RtcCreateAudioMixingOption option) |
abstract int | StopAudioMixing () |
abstract int | PauseAudioMixing () |
abstract int | ResumeAudioMixing () |
abstract int | SetAudioMixingSendVolume (uint volume) |
abstract int | GetAudioMixingSendVolume (ref uint volume) |
abstract int | SetAudioMixingPlaybackVolume (uint volume) |
abstract int | GetAudioMixingPlaybackVolume (ref uint volume) |
abstract int | GetAudioMixingDuration (ref ulong duration) |
abstract int | GetAudioMixingCurrentPosition (ref ulong position) |
abstract int | SetAudioMixingPosition (ulong seekPosition) |
abstract int | PlayEffect (uint effectId, RtcCreateAudioEffectOption option) |
abstract int | StopEffect (uint effectId) |
abstract int | StopAllEffects () |
abstract int | PauseEffect (uint effectId) |
abstract int | ResumeEffect (uint effectId) |
abstract int | PauseAllEffects () |
abstract int | ResumeAllEffects () |
abstract int | SetEffectSendVolume (uint effectId, uint volume) |
abstract int | GetEffectSendVolume (uint effectId, ref uint volume) |
abstract int | SetEffectPlaybackVolume (uint effectId, uint volume) |
abstract int | GetEffectPlaybackVolume (uint effectId, ref uint volume) |
abstract int | EnableEarback (bool enabled, uint volume) |
abstract int | SetEarbackVolume (uint volume) |
abstract int | EnableLoopbackRecording (bool enabled, string deviceName) |
abstract int | AdjustLoopbackRecordingSignalVolume (uint volume) |
abstract int | SetStatsObserver (IMediaStatsObserver observer) |
abstract int | EnableAudioVolumeIndication (bool enable, ulong interval) |
abstract int | StartScreenCaptureByScreenRect (RtcRectangle screenRect, RtcRectangle regionRect, RtcScreenCaptureParameters captureParams) |
abstract int | StartScreenCaptureByDisplayId (ulong displayId, RtcRectangle regionRect, RtcScreenCaptureParameters captureParams) |
abstract int | StartScreenCaptureByWindowId (IntPtr windowId, RtcRectangle regionRect, RtcScreenCaptureParameters captureParams) |
abstract int | StartScreenCapture (RtcScreenCaptureParameters captureParams, bool externalCapturer) |
abstract int | UpdateScreenCaptureRegion (RtcRectangle regionRect) |
abstract int | StopScreenCapture () |
abstract int | PauseScreenCapture () |
abstract int | ResumeScreenCapture () |
abstract int | SetExcludeWindowList (IntPtr[] windowList) |
abstract int | SetExternalVideoSource (bool enabled) |
abstract int | PushExternalVideoFrame (RtcExternalVideoFrame frame) |
abstract int | PushSubstreamExternalVideoFrame (RtcExternalVideoFrame videoFrame) |
abstract int | SetExternalAudioSource (bool enabled, int sampleRate, int channels) |
abstract int | PushExternalAudioFrame (RtcAudioFrame frame) |
abstract int | SetExternalAudioRender (bool enabled, int sampleRate, int channels) |
abstract int | PullExternalAudioFrame (byte[] data, int length) |
abstract string | GetVersion () |
abstract string | GetErrorDescription (RtcErrorCode errorCode) |
abstract int | UploadSdkInfo () |
abstract int | AddLiveStreamTask (RtcLiveStreamTaskInfo info) |
abstract int | UpdateLiveStreamTask (RtcLiveStreamTaskInfo info) |
abstract int | RemoveLiveStreamTask (string taskId) |
abstract int | SendSEIMsg (byte[] data, RtcVideoStreamType type) |
abstract int | SetLocalCanvasWatermarkConfigs (RtcVideoStreamType type, RtcCanvasWatermarkConfig config) |
abstract int | SetRemoteCanvasWatermarkConfigs (ulong uid, RtcVideoStreamType type, RtcCanvasWatermarkConfig config) |
abstract int | TakeLocalSnapshot (RtcVideoStreamType streamType, RtcTakeSnapshotCallback callback) |
abstract int | TakeRemoteSnapshot (ulong uid, RtcVideoStreamType streamType, RtcTakeSnapshotCallback callback) |
abstract int | StartAudioRecording (string filePath, int sampleRate, RtcAudioRecordingQuality quality) |
abstract int | StopAudioRecording () |
abstract int | AdjustRecordingSignalVolume (int volume) |
abstract int | AdjustPlaybackSignalVolume (int volume) |
abstract int | AdjustUserPlaybackSignalVolume (ulong uid, int volume) |
abstract int | StartChannelMediaRelay (RtcChannelMediaRelayConfig config) |
abstract int | UpdateChannelMediaRelay (RtcChannelMediaRelayConfig config) |
abstract int | StopChannelMediaRelay () |
abstract int | SetLocalPublishFallbackOption (RtcStreamFallbackOption option) |
abstract int | SetRemoteSubscribeFallbackOption (RtcStreamFallbackOption option) |
abstract int | EnableSuperResolution (bool enable) |
abstract int | EnableEncryption (bool enable, RtcEncryptionConfig config) |
abstract int | StartLastmileProbeTest (RtcLastmileProbeConfig config) |
abstract int | StopLastmileProbeTest () |
abstract int | UpdateSpatializerAudioRecvRange (int audibleDistance, int conversationalDistance, RtcDistanceRolloffModel rollOff) |
abstract int | UpdateSpatializerSelfPosition (RtcSpatializerPositionInfo info) |
abstract int | EnableSpatializerRoomEffects (bool enable) |
abstract int | SetSpatializerRoomProperty (RtcSpatializerRoomProperty roomProperty) |
abstract int | SetSpatializerRenderMode (RtcSpatializerRenderMode mode) |
abstract int | EnableSpatializer (bool enable) |
abstract int | EnableAvatar (bool enable) |
静态 Public 成员函数 | |
static IRtcEngine | GetInstance () |
Public 属性 | |
OnError | OnError |
OnWarning | OnWarning |
OnReleasedHwResources | OnReleasedHwResources |
OnJoinChannel | OnJoinChannel |
OnReconnectingStart | OnReconnectingStart |
OnConnectionStateChange | OnConnectionStateChange |
OnNetworkTypeChanged | OnNetworkTypeChanged |
OnRejoinChannel | OnRejoinChannel |
OnLeaveChannel | OnLeaveChannel |
OnDisconnect | OnDisconnect |
OnClientRoleChanged | OnClientRoleChanged |
OnUserJoined | OnUserJoined |
OnUserLeft | OnUserLeft |
OnUserAudioStart | OnUserAudioStart |
OnUserAudioStop | OnUserAudioStop |
OnUserVideoStart | OnUserVideoStart |
OnUserVideoStop | OnUserVideoStop |
OnUserSubStreamVideoStart | OnUserSubStreamVideoStart |
OnUserSubStreamVideoStop | OnUserSubStreamVideoStop |
OnScreenCaptureStatusChanged | OnScreenCaptureStatusChanged |
OnUserVideoProfileUpdate | OnUserVideoProfileUpdate |
OnUserAudioMute | OnUserAudioMute |
OnUserVideoMute | OnUserVideoMute |
OnAudioDeviceRoutingDidChange | OnAudioDeviceRoutingDidChange |
OnAudioDeviceStateChanged | OnAudioDeviceStateChanged |
OnAudioDefaultDeviceChanged | OnAudioDefaultDeviceChanged |
OnVideoDeviceStateChanged | OnVideoDeviceStateChanged |
OnCameraFocusChanged | OnCameraFocusChanged |
OnCameraExposureChanged | OnCameraExposureChanged |
OnFirstAudioDataReceived | OnFirstAudioDataReceived |
OnFirstVideoDataReceived | OnFirstVideoDataReceived |
OnFirstAudioFrameDecoded | OnFirstAudioFrameDecoded |
OnFirstVideoFrameDecoded | OnFirstVideoFrameDecoded |
OnCaptureVideoFrame | OnCaptureVideoFrame |
OnAudioMixingStateChanged | OnAudioMixingStateChanged |
OnAudioMixingTimestampUpdate | OnAudioMixingTimestampUpdate |
OnAudioEffectFinished | OnAudioEffectFinished |
OnLocalAudioVolumeIndication | OnLocalAudioVolumeIndication |
OnRemoteAudioVolumeIndication | OnRemoteAudioVolumeIndication |
OnAddLiveStreamTask | OnAddLiveStreamTask |
OnUpdateLiveStreamTask | OnUpdateLiveStreamTask |
OnRemoveLiveStreamTask | OnRemoveLiveStreamTask |
OnLiveStreamStateChanged | OnLiveStreamStateChanged |
OnAudioHowling | OnAudioHowling |
OnRecvSEIMessage | OnRecvSEIMessage |
OnAudioRecording | OnAudioRecording |
OnMediaRelayStateChanged | OnMediaRelayStateChanged |
OnMediaRelayEvent | OnMediaRelayEvent |
OnPublishFallbackToAudioOnly | OnPublishFallbackToAudioOnly |
OnSubscribeFallbackToAudioOnly | OnSubscribeFallbackToAudioOnly |
OnLastmileQuality | OnLastmileQuality |
OnLastmileProbeResult | OnLastmileProbeResult |
OnAvatarUserJoined | OnAvatarUserJoined |
OnAvatarUserLeft | OnAvatarUserLeft |
OnAvatarStatus | OnAvatarStatus |
属性 | |
abstract IAudioDeviceManager | AudioDeviceManager [get] |
abstract IVideoDeviceManager | VideoDeviceManager [get] |
RtcEngine 类提供了供 App 调用的主要接口方法。
|
inlinestatic |
获取IRtcEngine单例对象 该方法在加入房间前后都能调用。
|
pure virtual |
初始化 NERTC SDK 服务。
你必须先调用该方法进行初始化,才能使用其他方法。初始化成功后,默认处于音视频通话模式。
[in] | param | 传入的 RtcEngineContext 对象. |
|
pure virtual |
销毁 NERtc engine 实例,释放资源。
该方法释放 NERTC SDK 使用的所有资源。有些 App 只在用户需要时才进行实时音视频通信,不需要时则将资源释放出来用于其他操作,该方法适用于此类情况。
调用 Release 方法后,您将无法再使用 SDK 的其它方法和回调。
[in] | sync | 默认为 true 且只能设置为 true,表示同步调用,等待 IRtcEngine 对象资源释放后再返回。 App 不应该在 SDK 产生的回调中调用该接口,否则由于 SDK 要等待回调返回才能回收相关的对象资源,会造成死锁。SDK 会自动检测这种死锁并转为异步调用,但是检测本身会消耗额外的时间。 |
|
pure virtual |
在直播场景中设置用户角色。
用户角色支持设置为主播或观众,主播和观众的权限不同。
[in] | role | 用户角色。 RtcClientRole |
|
pure virtual |
设置房间场景。
房间场景可设置为通话或直播场景,不同的场景中 QoS 策略不同。
[in] | profile | 设置房间场景。详细信息请参考 RtcChannelProfileType 。 |
|
pure virtual |
加入音视频房间。
加入音视频房间时,如果指定房间尚未创建,云信服务器内部会自动创建一个同名房间。
[in] | token | 安全认证签名(NERTC Token)。可设置为:
|
[in] | channelName | 房间名称,设置相同房间名称的用户会进入同一个通话房间。字符串格式,长度为1~ 64 字节。支持以下89个字符:a-z, A-Z, 0-9, space, !#$%&()+-:;≤.,>? @[]^_{|}~” |
[in] | uid | 用户的唯一标识 id,房间内每个用户的 uid 必须是唯一的。 uid 可选,默认为 0。如果不指定(即设为 0),SDK 会自动分配一个随机 uid,并在 OnJoinChannel 回调方法中返回,App 层必须记住该返回值并维护,SDK 不对该返回值进行维护。 |
|
pure virtual |
快速切换音视频房间。
房间场景为直播场景时,房间中角色为观众的成员可以调用该方法从当前房间快速切换至另一个房间。
成功调用该方切换房间后,本端会先收到离开房间的回调 OnLeaveChannel ,再收到成功加入新房间的回调 OnJoinChannel 。远端用户会收到 OnUserLeft 和 OnUserJoined 的回调。
[in] | token | 安全认证签名(NERTC Token)。可设置为:
|
[in] | channelName | 期望切换到的目标房间名称。 |
|
pure virtual |
离开房间。
离开房间,即挂断或退出通话。
结束通话时,必须调用leaveChannel结束通话,否则无法开始下一次通话。
成功调用该方法离开房间后,本地会触发OnLeaveChannel回调,远端会触发OnUserLeft回调。
|
pure virtual |
开启/关闭本地音频采集
该方法可以重新开启本地语音功能,重新开始本地音频采集及处理。
该方法不影响接收或播放远端音频流。
[in] | enabled |
|
|
pure virtual |
设置本地视图。
该方法设置本地视频显示信息。只影响本地用户看到的视频画面,不影响远端。
App 通过调用此接口绑定本地视频流的显示视窗(view)。 在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。
[in] | canvas | 视频画布信息 |
|
pure virtual |
设置远端用户视图。
该方法绑定远端用户和显示视图,并设置远端用户视图在本地显示时的渲染模式和镜像模式,只影响本地用户看到的视频画面。
[in] | uid | 远端用户 ID。 |
[in] | canvas | 视频画布信息 |
|
pure virtual |
开启或关闭本地视频采集和渲染。
该方法启用本地视频采集功能。
[in] | enabled | 是否启用本地视频采集和渲染:
|
|
pure virtual |
订阅或取消订阅指定远端用户的视频流。
[in] | uid | 指定用户的用户 ID。 |
[in] | type | 订阅的视频流类型。 RtcRemoteVideoStreamType |
[in] | subscribe |
|
pure virtual |
切换前置/后置摄像头。
该方法需要在相机启动后调用,例如调用 StartVideoPreview 或 JoinChannel 后。
|
pure virtual |
创建一个 IRtcChannel 对象
[in] | channelName | 房间名。设置相同房间名称的用户会进入同一个通话房间。字符串格式,长度为1~ 64 字节。支持以下89个字符:a-z, A-Z, 0-9, space, !#$%&()+-:;≤.,>? @[]^_{|}~” |
|
pure virtual |
获取一个 IRtcChannel 对象
[in] | channelName | 房间名。设置相同房间名称的用户会进入同一个通话房间。字符串格式,长度为1~ 64 字节。支持以下89个字符:a-z, A-Z, 0-9, space, !#$%&()+-:;≤.,>? @[]^_{|}~” |
|
pure virtual |
获取当前网络状态。
|
pure virtual |
开关本地音频发送。该方法用于允许或禁止向网络发送本地音频流。
[in] | mute | 静音/取消静音:
|
|
pure virtual |
设置音频编码属性。
[in] | profile | 设置采样率,码率,编码模式和声道数: RtcAudioProfileType 。 |
[in] | scenario | 设置音频应用场景: RtcAudioScenarioType 。 |
|
pure virtual |
设置 SDK 预设的人声的变声音效。 设置变声音效可以将人声原因调整为多种特殊效果,改变声音特性。
[in] | type | 预设的变声音效。默认关闭变声音效。详细信息请参考 RtcVoiceChangerType 。 |
|
pure virtual |
设置 SDK 预设的美声效果。 调用该方法可以为本地发流用户设置 SDK 预设的人声美声效果。
[in] | type | 预设的美声效果模式。默认关闭美声效果。详细信息请参考 RtcVoiceBeautifierType 。 |
|
pure virtual |
设置本地语音音调。 该方法改变本地说话人声音的音调。
[in] | pitch | 语音频率。可以在 [0.5, 2.0] 范围内设置。取值越小,则音调越低。默认值为 1.0,表示不需要修改音调。 |
|
pure virtual |
设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。
[in] | bandFrequency | 频谱子带索引,取值范围是 [0-9],分别代表 10 个频带,对应的中心频率是 [31,62,125,250,500,1k,2k,4k,8k,16k] Hz。 |
[in] | bandGain | 每个 band 的增益,单位是 dB,每一个值的范围是 [-15,15],默认值为 0。 |
|
pure virtual |
取消或恢复订阅指定远端用户音频流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅指定远端用户的音频流。
[in] | uid | 指定用户的 ID。 |
[in] | subscribe | 是否订阅远端用户音频流。
|
|
pure virtual |
设置 SDK 对 Audio Session 的控制权限。
该方法仅适用于 iOS 平台。
该方法限制 SDK 对 Audio Session 的操作权限。在默认情况下,SDK 和 App 对 Audio Session 都有控制权,但某些场景下,App 会希望限制 SDK 对 Audio Session 的控制权限,而使用其他应用或第三方组件对 Audio Session 进行操控。调用该方法可以实现该功能。
该接口只能在入会之前调用。
restriction | SDK 对 Audio Session 的控制权限。详细信息请参考 RtcAudioSessionOperationRestriction。 |
|
pure virtual |
设置是否静音音频播放设备。
muted | 是否静音播放设备。默认为不静音状态。 |
|
pure virtual |
获取音频播放设备的静音状态。
muted | 是否静音。 |
|
pure virtual |
设置是否静音音频采集设备。
muted | 是否静音音频采集设备。默认为不静音。 |
|
pure virtual |
查询当前音频采集设备是否静音。
muted | 是否静音。 |
|
pure virtual |
检测设备当前使用的摄像头是否支持缩放功能。
该方法需要在相机启动后调用,例如调用 StartVideoPreview 或 JoinChannel 后。
|
pure virtual |
检测设备是否支持闪光灯常亮。
|
pure virtual |
检测设备是否支持手动对焦功能。
|
pure virtual |
检测设备是否支持手动曝光功能。
|
pure virtual |
设置当前摄像头手动曝光位置。
成功调用该方法后,本地会触发 OnCameraExposureChanged 回调。
pointX | 曝光位置点X坐标。 |
pointY | 曝光位置点Y坐标。 |
|
pure virtual |
设置是否打开闪光灯。
on | YES 表示开启;NO 表示关闭。 |
|
pure virtual |
查询设备是否开启了闪光灯。
|
pure virtual |
设置当前摄像头缩放比例。
factor | 摄像头缩放比例。 |
|
pure virtual |
获取摄像头支持最大缩放比例。
|
pure virtual |
设置手动对焦位置。
成功调用该方法后,本地会触发 OnCameraFocusChanged 回调。
x | 触摸点相对于视图的横坐标,范围为 0~1。 |
y | 触摸点相对于视图的纵坐标,范围为 0~1。 |
|
pure virtual |
设置本地摄像头的采集偏好等配置。
在视频通话或直播中,SDK 自动控制摄像头的输出参数。默认情况下,SDK 根据用户的 SetVideoConfig 配置匹配最合适的分辨率进行采集。但是在部分业务场景中,如果采集画面质量无法满足实际需求,可以调用该接口调整摄像头的采集配置。
[in] | config | 摄像头采集偏好配置。详细说明请参考 RtcCameraCaptureConfig 。 |
|
pure virtual |
取消或恢复订阅所有远端用户音频流。
subscribe | 是否取消订阅所有远端用户的音频流。 |
|
pure virtual |
设置本地视频的编码属性。 可以在加入房间前或加入房间后调用。设置成功后,下一次开启本端视频时生效。
[in] | config | 视频编码属性配置,详细信息请参考 RtcVideoConfig。 |
|
pure virtual |
设置是否开启视频大小流模式。
该方法设置单流或者双流模式。发送端开启双流模式后,接收端可以选择接收大流还是小流。其中,大流指高分辨率、高码率的视频流,小流指低分辨率、低码率的视频流。
[in] | enable | 指定是否开启双流模式。
|
|
pure virtual |
设置本地辅流视频画布。
[in] | canvas | 视频画布信息。 |
|
pure virtual |
设置本端的屏幕共享辅流视频显示模式。
该方法设置本地视图显示模式。 App 可以多次调用此方法更改显示模式。
[in] | scalingMode | 视频显示模式 RtcVideoScalingMode 。 |
|
pure virtual |
设置本地视图显示模式。 该方法设置本地视图显示模式。 App 可以多次调用此方法更改显示模式。
[in] | scalingMode | 视频显示模式: RtcVideoScalingMode |
|
pure virtual |
设置本地视频镜像模式。 该方法用于设置本地视频是否开启镜像模式,即画面是否左右翻转。 本地的视频镜像模式仅影响本地用户所见,不影响远端用户所见。App 可以多次调用此方法更改镜像模式。
[in] | mirrorMode | 视频镜像模式。详细信息请参考 RtcVideoMirrorMode。 |
|
pure virtual |
设置远端视图显示模式。 该方法设置远端视图显示模式。App 可以多次调用此方法更改显示模式。
[in] | uid | 远端用户 ID。 |
[in] | scalingMode | 视频显示模式: RtcVideoScalingMode |
|
pure virtual |
设置远端的辅流视频画布。
该方法绑定远端用户和辅流显示视图,即指定某个 uid 使用对应的画布显示。
[in] | uid | 远端用户 ID。 |
[in] | canvas | 视频画布设置 |
|
pure virtual |
订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据。
[in] | uid | 指定用户的用户 ID。 |
[in] | subscribe |
|
|
pure virtual |
设置远端的屏幕共享辅流视频显示模式。
在远端开启辅流形式的屏幕共享时使用。App 可以多次调用此方法更改显示模式。
[in] | uid | 远端用户 ID。 |
[in] | scalingMode | 视频显示模式。 |
|
pure virtual |
开启视频预览。
该方法用于在进入房间前启动本地视频预览。调用该 API 前,必须:
|
pure virtual |
停止视频预览。
|
pure virtual |
取消或恢复发布本地视频流。
成功调用该方法后,远端会触发 OnUserVideoMute 回调。
[in] | mute |
|
|
pure virtual |
设置本地用户的媒体流优先级。
如果某个用户的优先级为高,那么该用户媒体流的优先级就会高于其他用户,弱网环境下 SDK 会优先保证其他用户收到的、高优先级用户的媒体流的质量。
priority | 本地用户的媒体流优先级,默认为 kNERtcMediaPriorityNormal 。详细信息请参考 RtcMediaPriorityType 。 |
isPreemptive | 是否开启抢占模式。默认为 false,即不开启。
|
|
pure virtual |
设置音视频通话的相关参数。通过 JSON 配置 SDK 提供技术预览或特别定制功能。以标准化方式公开 JSON 选项。
[in] | parameters | 音视频通话的相关参数。 JSON 字符串形式。 |
|
pure virtual |
设置录制的声音格式。
该方法设置 OnAudioFrameDidRecord 回调的录制声音格式。
format | 指定 OnAudioFrameDidRecord 中返回数据的采样率和数据的通道数。允许传入 NULL,默认为 NULL。 |
|
pure virtual |
设置播放的声音格式。
该方法设置 OnAudioFrameWillPlayback 回调的播放声音格式。
format | 指定 OnAudioFrameWillPlayback 中返回数据的采样率和数据的通道数。允许传入 NULL,默认为 NULL。 |
|
pure virtual |
设置录制和播放声音混音后的采样率。
该方法设置 OnMixedAudioFrame 回调的声音格式。
sampleRate | 指定 OnMixedAudioFrame 中返回数据的采样率。仅支持 8000, 16000, 32000, 44100或48000。 |
|
pure virtual |
注册语音观测器对象。
该方法用于设置音频采集和播放PCM回调,可用于声音处理等操作。当需要引擎给出 OnAudioFrameDidRecord 或 OnAudioFrameWillPlayback 回调时,需要使用该方法注册回调。
observer | 接口对象实例。如果传入 NULL,则取消注册,同时会清理 RtcAudioFrameRequestFormat 相关设置。 |
|
pure virtual |
开始记录音频 dump。 音频 dump 可用于分析音频问题。
|
pure virtual |
结束音频dump。
|
pure virtual |
设置音频播放扬声器模式(仅iOS/Android有效)
enable | 是否使用扬声器模式 |
|
pure virtual |
获取目前是否使用扬声器模式(仅iOS/Android有效)
enabled | 是否正在使用扬声器模式 |
|
pure virtual |
开始播放音乐文件。
该方法指定本地或在线音频文件来和录音设备采集的音频流进行混音。
[in] | option | 创建混音任务配置的选项,包括混音任务类型、混音文件全路径或URL等。详细信息请参考 RtcCreateAudioMixingOption 。 |
|
pure virtual |
停止播放音乐文件及混音。
该方法停止播放伴奏。请在房间内调用该方法。
|
pure virtual |
暂停播放音乐文件及混音。
该方法暂停播放伴奏。请在房间内调用该方法。
|
pure virtual |
恢复播放伴奏。
该方法恢复混音,继续播放伴奏。请在房间内调用该方法。
|
pure virtual |
调节伴奏发送音量。
该方法调节混音里伴奏的发送音量大小。请在房间内调用该方法。
[in] | volume | 伴奏发送音量。取值范围为 0~100。默认 100 为原始文件音量。 |
|
pure virtual |
获取伴奏发送音量。
该方法获取混音里伴奏的发送音量大小。请在房间内调用该方法。
[out] | volume | 伴奏发送音量。 |
|
pure virtual |
调节伴奏播放音量。
该方法调节混音里伴奏的播放音量大小。请在房间内调用该方法。
[in] | volume | 伴奏音量范围为 0~100。默认 100 为原始文件音量。 |
|
pure virtual |
获取伴奏播放音量。
该方法获取混音里伴奏的播放音量大小。请在房间内调用该方法。
[out] | volume | 伴奏播放音量。 |
|
pure virtual |
获取伴奏时长。
该方法获取伴奏时长,单位为毫秒。请在房间内调用该方法。
[out] | duration | 伴奏时长,单位为毫秒。 |
|
pure virtual |
获取音乐文件的播放进度。
该方法获取当前伴奏播放进度,单位为毫秒。请在房间内调用该方法。
[out] | position | 伴奏播放进度,单位为毫秒。 |
|
pure virtual |
设置音乐文件的播放位置。
该方法可以设置音频文件的播放位置,这样你可以根据实际情况播放文件,而非从头到尾播放整个文件。
[in] | seekPosition | 进度条位置,单位为毫秒。 |
|
pure virtual |
播放指定音效文件。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
[in] | option | 创建音效任务配置的选项,包括混音任务类型、混音文件全路径或 URL 等。详细说明请参考 RtcCreateAudioEffectOption 。 |
|
pure virtual |
停止播放指定音效文件。
请在房间内调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
|
pure virtual |
停止播放所有音效文件。
|
pure virtual |
暂停音效文件播放。
请在房间内调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
|
pure virtual |
恢复播放指定音效文件。
请在房间内调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
|
pure virtual |
暂停所有音效文件播放。
请在房间内调用该方法。
|
pure virtual |
恢复播放所有音效文件。
请在房间内调用该方法。
|
pure virtual |
调节音效发送音量。 该方法调节音效的发送音量大小。请在房间内调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
[in] | volume | 音效音量范围为 0~100。默认 100 为原始文件音量。 |
|
pure virtual |
获取音效发送音量。 该方法获取音效的发送音量大小。请在房间内调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
[out] | volume | 音效发送音量。 |
|
pure virtual |
设置音效文件播放音量。 请在加入房间后调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
[in] | volume | 音效播放音量。范围为0~100,默认为100。 |
|
pure virtual |
获取音效文件播放音量。
请在加入房间后调用该方法。
[in] | effectId | 指定音效的 ID。每个音效均有唯一的 ID。 |
[out] | volume | 音效播放音量。 |
|
pure virtual |
开启或关闭耳返。
[in] | enabled | 开启或关闭。 |
[in] | volume | 耳返音量。 |
|
pure virtual |
设置耳返音量。 请在房间内调用该方法。
[in] | volume | 耳返音量。可设置为 0~100,默认为 100。 |
|
pure virtual |
开启或关闭声卡采集。
[in] | enabled | 是否开启声卡采集功能。
|
[in] | deviceName | 声卡的设备名。默认设为 NULL,即使用当前声卡采集。 该参数仅适用于 macOS 平台。 如果用户使用虚拟声卡,如 “Soundflower”,可以将虚拟声卡名称 “Soundflower” 作为参数,SDK 会找到对应的虚拟声卡设备,并开始采集。 |
|
pure virtual |
调节声卡采集信号音量。
[in] | volume | 声卡采集信号音量。取值范围为 [0,100]。默认值为 100,表示原始音量。 |
|
pure virtual |
注册统计信息观测器。
[in] | observer | 统计信息观测器 |
|
pure virtual |
启用说话者音量提示。
该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)的音量相关信息,即当前谁在说话以及说话者的音量。
启用该方法后,只要房间内有发流用户,无论是否有人说话,SDK 都会在加入房间后根据预设的时间间隔触发OnRemoteAudioVolumeIndication回调。
enable | 是否启用说话者音量提示。 |
interval | 指定音量提示的时间间隔,单位为毫秒。必须设置为 100 毫秒的整数倍值。 |
|
pure virtual |
开启屏幕共享,共享范围为指定屏幕的指定区域。
调用该方法时,可以选择共享整个虚拟屏、指定屏幕,或虚拟屏、整个屏幕的某些区域范围。
此方法调用成功后,远端触发 OnUserSubStreamVideoStart 和 SetExcludeWindowList 回调。
screenRect | 指定待共享的屏幕相对于虚拟屏的位置。 |
regionRect | 指定待共享区域相对于整个屏幕屏幕的位置。如果设置的共享区域超出了屏幕的边界,则只共享屏幕内的内容;如果将 width 或 height 设为 0, 则共享整个屏幕。 |
captureParams | 屏幕共享的编码参数配置。 |
|
pure virtual |
通过指定屏幕 ID 开启屏幕共享,屏幕共享内容以辅流形式发送。
此方法调用成功后,远端触发 OnUserSubStreamVideoStart 回调。
displayId | 指定待共享的屏幕 ID。开发者需要自行实现枚举屏幕 ID 的方法,并通过该参数指定需要共享的屏幕。 |
regionRect | 指定待共享的区域相对于整个窗口的位置。如果设置的共享区域超出了窗口的边界,则只共享窗口内的内容;如果宽或高为 0,则共享整个窗口。 |
captureParams | 屏幕共享的参数配置,包括码率、帧率、编码策略、屏蔽窗口列表等。 |
|
pure virtual |
通过指定窗口 ID 开启屏幕共享,屏幕共享内容以辅流形式发送。
调用该方法时需要指定待共享的屏幕 ID,共享该屏幕的整体画面或指定区域。
此方法调用成功后:
windowId | 指定待共享的窗口 ID。 |
regionRect | 指定待共享的区域相对于整个窗口的位置。如果设置的共享区域超出了窗口的边界,则只共享指定区域中窗口内的内容;如果宽或高为 0,则共享整个窗口。 |
captureParams | 屏幕共享的参数配置,包括码率、帧率、编码策略、屏蔽窗口列表等。 |
|
pure virtual |
通过外部输入视频源的方式开启辅流功能。
captureParams | 屏幕共享的编码参数配置,屏幕捕获相关的参数失效。 |
externalCapturer | 是否是外部采集。 |
|
pure virtual |
在共享屏幕或窗口时,更新共享的区域。
在 Windows 平台中,远端会触发 OnScreenCaptureStatusChanged 回调。
regionRect | 指定待共享的区域相对于整个窗口或屏幕的位置。如果设置的共享区域超出了边界,则只共享指定区域中,窗口或屏幕内的内容;如果宽或高为 0,则共享整个窗口或屏幕。 |
|
pure virtual |
停止屏幕共享。
此方法调用成功后:
|
pure virtual |
暂停屏幕共享。
|
pure virtual |
恢复屏幕共享。
在 Windows 平台中,远端会触发 OnScreenCaptureStatusChanged 回调。
|
pure virtual |
设置共享整个屏幕或屏幕指定区域时,需要屏蔽的窗口列表。
开启屏幕共享时,可以通过 RtcScreenCaptureParameters 设置需要屏蔽的窗口列表;在 Windows 平台中,开发者可以在开启屏幕共享后,通过此方法动态调整需要屏蔽的窗口列表。被屏蔽的窗口不会显示在屏幕共享区域中。
windowList | 需要屏蔽的窗口 ID 列表。 |
|
pure virtual |
开启或关闭外部视频源数据输入。
通过该方法启用外部视频数据输入功能时,需要通过 SetDevice 设置 kNERtcExternalVideoDeviceID 为外部视频输入源 ID。
[in] | enabled | 是否外部视频源数据输入:
|
|
pure virtual |
推送辅流的外部视频帧。
该方法主动将视频帧数据用 RtcExternalVideoFrame 类封装后传递给 SDK。 请确保在你调用本方法前已调用 SetExternalVideoSource ,并将参数设为 true,否则调用本方法后会一直报错。
[in] | frame | 视频帧数据。 |
|
pure virtual |
推送辅流的外部视频帧。
该方法主动将视频帧数据用 RtcExternalVideoFrame 类封装后传递给 SDK。 请确保在你调用本方法前已调用 StartScreenCapture ,并将参数设为 true,否则调用本方法后会一直报错。
[in] | videoFrame | 视频帧数据。 |
|
pure virtual |
开启或关闭外部音频源数据输入。
当该方法调用成功后,音频输入设备选择和异常重启会失效。调用成功后可以使用 PushExternalAudioFrame 接口发送音频 PCM 数据。
[in] | enabled | 是否外部数据输入:
|
[in] | sampleRate | 数据采样率,后续数据传入需要按该格式传入。 注意:调用接口关闭功能时可传入任意合法值,此时设置不会生效。 |
[in] | channels | 数据声道数,后续数据传入需要按该格式传入。注意:调用接口关闭功能时可传入任意合法值,此时设置不会生效。 可设置为:
|
|
pure virtual |
推送外部音频数据输入。
将外部音频数据帧推送给内部引擎。 通过 SetExternalAudioSource 启用外部音频数据输入功能成功后,可以使用 PushExternalAudioFrame 接口发送音频 PCM 数据。
[in] | frame | 帧数据,数据长度不能超过7680:
|
|
pure virtual |
设置外部音频渲染。
该方法适用于需要自行渲染音频的场景。默认为关闭状态。当该方法调用成功后,音频播放设备选择和异常重启失效。 调用成功后可以使用 PullExternalAudioFrame 接口获取音频 PCM 数据。
[in] | enabled | 是否外部数据输出:
|
[in] | sampleRate | 数据采样率,后续数据按该格式返回。 注意:调用接口关闭功能时可传入任意合法值,此时设置不会生效。 |
[in] | channels | 数据声道数,后续数据按该格式返回。 注意:调用接口关闭功能时可传入任意合法值,此时设置不会生效。 可设置为:
|
|
pure virtual |
拉取外部音频数据。
该方法将从内部引擎拉取音频数据。 通过 SetExternalAudioRender 启用外部音频数据渲染功能成功后,可以使用 PullExternalAudioFrame 接口获取音频 PCM 数据。
[out] | data | 数据指针,SDK内部会将数据拷贝到data中。 |
[in] | length | 待拉取音频数据的字节数,单位为 byte。
|
|
pure virtual |
查询 SDK 版本号。 该方法在加入房间前后都能调用。
|
pure virtual |
查看指定错误码的错误描述。
[in] | errorCode | RtcErrorCode 。 |
|
pure virtual |
上传 SDK 信息。
只能在加入房间后调用。
上传的信息包括 log 和 Audio dump 等文件。
|
pure virtual |
添加房间推流任务,成功添加后当前用户可以收到该直播流的状态通知。
[in] | info | 直播任务信息。详细信息请参考 RtcLiveStreamTaskInfo 。 |
|
pure virtual |
更新修改房间推流任务。
[in] | info | 直播任务信息。详细信息请参考 RtcLiveStreamTaskInfo 。 |
|
pure virtual |
删除房间推流任务。
[in] | taskId | 直播任务 ID。 |
|
pure virtual |
发送媒体补充增强信息(SEI)。
在本端推流传输视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 OnRecvSEIMessage 的回调获取 SEI 内容。
data | 自定义 SEI 数据。自定义数据最大长度不能超过4096字节。 |
type | 发送 SEI 时,使用的流通道类型。详细信息请参考 RtcVideoStreamType 。 |
|
pure virtual |
添加本地视频画布水印。
type | 视频流类型。支持设置为主流或辅流。详细信息请参考 RtcVideoStreamType 。 |
config | 画布水印设置。支持设置文字水印、图片水印和时间戳水印,设置为 null 表示清除水印。 详细信息请参考 RtcCanvasWatermarkConfig 。 |
|
pure virtual |
添加远端视频画布水印。
uid | 远端用户 ID。 |
type | 视频流类型。支持设置为主流或辅流。详细信息请参考 RtcVideoStreamType 。 |
config | 画布水印设置。支持设置文字水印、图片水印和时间戳水印,设置为 null 表示清除水印。 详细信息请参考 RtcCanvasWatermarkConfig 。 |
|
pure virtual |
本地视频画面截图。
调用 TakeLocalSnapshot 截取本地主流或本地辅流的视频画面,并通过 RtcTakeSnapshotCallback 回调返回截图画面的数据。
streamType | 截图的视频流类型。支持设置为主流或辅流。详细信息请参考 RtcVideoStreamType 。 |
callback | 截图回调。详细信息请参考 RtcTakeSnapshotCallback 。 |
|
pure virtual |
远端视频画面截图。
调用 TakeRemoteSnapshot 截取指定 uid 远端主流和远端辅流的视频画面,并通过 RtcTakeSnapshotCallback 回调返回截图画面的数据。
uid | 远端用户 ID。 |
streamType | 截图的视频流类型。支持设置为主流或辅流。详细信息请参考 RtcVideoStreamType 。 |
callback | 截图回调。详细信息请参考 RtcTakeSnapshotCallback 。 |
|
pure virtual |
开始客户端录音。
调用该方法后,客户端会录制房间内所有用户混音后的音频流,并将其保存在本地一个录音文件中。录制开始或结束时,自动触发 OnAudioRecording 回调。
指定的录音音质不同,录音文件会保存为不同格式:
filePath | 录音文件在本地保存的绝对路径,需要精确到文件名及格式。例如:sdcard/xxx/audio.aac。
|
sampleRate | 录音采样率(Hz),可以设为 16000、32000(默认)、44100 或 48000。 |
quality | 录音音质,只在 AAC 格式下有效。详细说明请参考 RtcAudioRecordingQuality 。 |
|
pure virtual |
停止客户端录音。
本端离开房间时自动停止录音,您也可以在通话中随时调用 StopAudioRecording 手动停止录音。
|
pure virtual |
调节采集信号音量。
[in] | volume | 采集录音音量,取值范围为 [0, 400]。其中:
|
|
pure virtual |
调节本地播放音量。
[in] | volume | 播放音量。取值范围为 [0, 400]。其中:
|
|
pure virtual |
调节本地播放的指定远端用户的信号音量。
加入房间后,您可以多次调用该方法设置本地播放的不同远端用户的音量;也可以反复调节本地播放的某个远端用户的音量。
uid | 远端用户 ID。 |
volume | 播放音量,取值范围为 [0,100]。
|
|
pure virtual |
开始跨房间媒体流转发。
destInfos
设置目标房间。config | 跨房间媒体流转发参数配置信息。 |
|
pure virtual |
更新媒体流转发的目标房间。
成功开始跨房间转发媒体流后,如果你希望将流转发到多个目标房间,或退出当前的转发房间,可以调用该方法。
destInfos
设置目标房间。 config | 目标房间配置信息 |
|
pure virtual |
停止跨房间媒体流转发。
主播离开房间时,跨房间媒体流转发自动停止,您也可以在需要的时候随时调用 StopChannelMediaRelay 方法,此时主播会退出所有目标房间。
|
pure virtual |
设置弱网条件下发布的音视频流回退选项。
在网络不理想的环境下,发布的音视频质量都会下降。使用该接口并将 option 设置为 kNERtcStreamFallbackAudioOnly 后:
option | 发布音视频流的回退选项,默认为不开启回退 kNERtcStreamFallbackAudioOnly。详细信息请参考 RtcStreamFallbackOption 。 |
|
pure virtual |
设置弱网条件下订阅的音视频流回退选项。
弱网环境下,订阅的音视频质量会下降。使用该接口并将 option 设置为 kNERtcStreamFallbackVideoStreamLow 或者 kNERtcStreamFallbackAudioOnly 后:
option | 订阅音视频流的回退选项,默认为弱网时回退到视频小流 kNERtcStreamFallbackVideoStreamLow。详细信息请参考 RtcStreamFallbackOption 。 |
|
pure virtual |
启用或停止 AI 超分。
enable | 是否启用 AI 超分。默认为关闭状态。 |
|
pure virtual |
开启或关闭媒体流加密。
enable | 是否开启媒体流加密。
|
config | 媒体流加密方案。详细信息请参考 RtcEncryptionConfig。 |
|
pure virtual |
开始通话前网络质量探测。
启用该方法后,SDK 会通过回调方式反馈上下行网络的质量状态与质量探测报告,包括带宽、丢包率、网络抖动和往返时延等数据。一般用于通话前的网络质量探测场景,用户加入房间之前可以通过该方法预估音视频通话中本地用户的主观体验和客观网络状态。
相关回调如下:
config | Last mile 网络探测配置。 |
|
pure virtual |
停止通话前网络质量探测。
|
pure virtual |
引擎3D音效算法距离范围设置
audibleDistance | 监听器能够听到扬声器并接收其文本消息的距离扬声器的最大距离。[0,1000] 默认值为 32。 |
conversationalDistance | 控制扬声器音频保持其原始音量的范围,超出该范围时,语音聊天的响度在被听到时开始淡出。 默认值为 1。 |
rollOff | 距离衰减模式 RtcDistanceRolloffModel ,默认值 kNERtcDistanceRolloffNone |
|
pure virtual |
引擎3D音效算法中本人坐标方位更新接口
info | 位置信息,详细信息参看 RtcSpatializerPositionInfo. |
|
pure virtual |
|
pure virtual |
引擎3D音效算法中房间混响属性
roomProperty | 房间属性 RtcSpatializerRoomProperty |
|
pure virtual |
引擎3D音效算法中渲染模式
mode | 渲染模式 RtcSpatializerRenderMode ,默认值 kNERtcSpatializerRenderBinauralHighQuality |
|
pure virtual |
引擎3D音效算法开关
enable | 是否打开3D音效算法功能 |
|
pure virtual |
虚拟人开关
enable | 是否开启虚拟人 |
OnError nertc.IRtcEngine.OnError |
所有的Engine事件
|
get |
获取音频设备管理对象 该方法在加入房间前后都能调用。
|
get |
获取音频设备管理对象 该方法在加入房间前后都能调用。