logo
实时音视频
当前页

Struct

ZegoAIVoiceChangerSpeakerInfo

AI 变声音色信息。

Declared in ZegoExpressDefines.h

属性

id

id
public int id

音色 ID。

name

name
public std::string name

音色名称。

方法

ZegoAIVoiceChangerSpeakerInfo

ZegoAIVoiceChangerSpeakerInfo
Declared in ZegoExpressDefines.h

ZegoAccurateSeekConfig

精准seek的配置

Declared in ZegoExpressDefines.h

属性

timeout

timeout
public unsigned long long timeout

精确搜索的超时时间;如果不设置, SDK 内部默认是设置 5000 毫秒,有效值区间 [2000, 10000],单位ms

方法

ZegoAccurateSeekConfig

ZegoAccurateSeekConfig
Declared in ZegoExpressDefines.h

ZegoAudioConfig

推流音频配置

详情

配置推流的音频码率、声道数、音频编码

Declared in ZegoExpressDefines.h

属性

bitrate

bitrate
public int bitrate

音频码率,单位为 kbps,默认为 48 kbps. 该配置推流前后设置均可生效

channel

channel
public ZegoAudioChannel channel

音频编码声道,控制编码器编码的声道数。默认为 Mono 单声道。仅在推流前设置生效。

codecID

codecID
public ZegoAudioCodecID codecID

编码 ID,默认为 ZegoAudioCodecIDDefault。仅在推流前设置生效。

方法

ZegoAudioConfig

ZegoAudioConfig
public ZegoAudioConfig(ZegoAudioConfigPreset preset = ZEGO_AUDIO_CONFIG_PRESET_STANDARD_QUALITY)
Declared in ZegoExpressDefines.h

ZegoAudioEffectPlayConfig

音效播放器播放配置

Declared in ZegoExpressDefines.h

属性

playCount

playCount
public unsigned int playCount

播放次数,当设为 0 时则无限循环播放,直到用户调用 [stop],默认为 1 即仅播放一次。

isPublishOut

isPublishOut
public bool isPublishOut

是否将音效混入推流中,默认 false。

ZegoAudioFrameParam

音频帧的参数对象

详情

包括音频帧的采样率、声道数

Declared in ZegoExpressDefines.h

属性

sampleRate

sampleRate
public ZegoAudioSampleRate sampleRate

采样率

channel

channel
public ZegoAudioChannel channel

音频声道,默认为 Mono 单声道

方法

ZegoAudioFrameParam

ZegoAudioFrameParam
public ZegoAudioFrameParam:sampleRate(ZEGO_AUDIO_SAMPLE_RATE_UNKNOWN), channel(ZEGO_AUDIO_CHANNEL_MONO)
Declared in ZegoExpressDefines.h

ZegoAudioMixingData

混音数据

Declared in ZegoExpressDefines.h

属性

audioData

audioData
public unsigned char* audioData

需要混入推流的音频 PCM 数据

audioDataLength

audioDataLength
public unsigned int audioDataLength

需要混入推流的音频 PCM 数据长度。如果实际填写到 audioData 中的数据不足 audioDataLength,则可以设置 audioDataLength 为 0

param

param
public ZegoAudioFrameParam param

音频数据属性,包括采样率和声道数。目前支持 16k, 32k, 44.1k, 48k 的采样率、单声道或双声道、16 bit 位深的 PCM 数据。开发者需要显式指定音频数据属性,否则混音将不生效。

SEIData

SEIData
public unsigned char* SEIData

SEI 数据,用于传递自定义数据。当 audioData 为空时,SEIData 也将不会被发送

SEIDataLength

SEIDataLength
public unsigned int SEIDataLength

SEI 数据长度

ZegoAudioSourceMixConfig

音频输入源混音配置

详情

用于在设置音频输入源的同时,配置是否将媒体播放器、音效播放器和系统声音等混入推流中。

Declared in ZegoExpressDefines.h

属性

mediaPlayerIndexList

mediaPlayerIndexList
public int* mediaPlayerIndexList

媒体播放器实例索引列表。

mediaPlayerCount

mediaPlayerCount
public int mediaPlayerCount

媒体播放器实例个数。

audioEffectPlayerIndexList

audioEffectPlayerIndexList
public int* audioEffectPlayerIndexList

音效播放器实例索引列表。

audioEffectPlayerCount

audioEffectPlayerCount
public int audioEffectPlayerCount

音效播放器实例个数。

enableMixSystemPlayout

enableMixSystemPlayout
public bool enableMixSystemPlayout

是否将系统声卡采集的声音混入推流中。

enableMixEnginePlayout

enableMixEnginePlayout
public bool enableMixEnginePlayout

是否将 SDK 播放的声音混到推流中。

enableMixScreenCapture

enableMixScreenCapture
public bool enableMixScreenCapture

是否将屏幕采集的声音混到推流中,输入源不能设置为屏幕采集。(仅适用于 Android 和 iOS 平台)

方法

ZegoAudioSourceMixConfig

ZegoAudioSourceMixConfig
Declared in ZegoExpressDefines.h

ZegoAutoMixerTask

自动混流任务对象

详情

调用 [StartAutoMixerTask] 函数向 ZEGO RTC 服务器发起自动混流任务时,需要通过该参数配置自动混流任务,包括任务 ID、房间 ID、音频配置、输出流列表、是否开启声浪回调通知。

  • 业务场景:当向 ZEGO RTC 服务器发起自动混流任务时,需要这个配置。
  • 注意事项:作为调用 [StartAutoMixerTask] 函数时传入的参数。

Declared in ZegoExpressDefines.h

属性

taskID

taskID
public std::string taskID

自动混流任务 ID,一个房间内需要保证混流任务 ID 的唯一性。

  • 业务场景:当发起自动混流任务时,需要配置该参数。
  • 是否必填:是。
  • 建议值:根据需求设置。
  • 取值范围:长度不超过 256 字节的字符串。
  • 注意事项:一个房间内只能存在一个混流任务 ID,即保证混流任务 ID 的唯一性,建议混流任务 ID 与房间 ID 关联,可直接使用房间 ID 作为混流任务 ID。不可以包含 URL 关键字,例如 'http', '?' 等,否则推拉流会失败。仅支持数字,英文字符 和 '~', '!', '@', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', '/', '\'。

roomID

roomID
public std::string roomID

自动混流任务的房间 ID。

  • 业务场景:当发起自动混流任务时,需要配置该参数。
  • 是否必填:是。
  • 建议值:根据需求设置。
  • 取值范围:长度不超过 128 字节的字符串。
  • 注意事项:仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', '\'。如果需要与 Web SDK 互通,请不要使用 '%'。

audioConfig

audioConfig
public ZegoMixerAudioConfig audioConfig

自动混流任务的音频配置,可配置音频码率、音频声道,编码 ID、多路音频流混音模式。

  • 业务场景:如果对自动混流任务的音频有特殊需求,比如需要调整音频码率,可根据需要调整该参数,否则不用配置。
  • 是否必填:否。
  • 默认值:默认音频码率为 "48 kbps", 默认音频声道为 "ZEGO_AUDIO_CHANNEL_MONO", 默认编码 ID 为 "ZEGO_AUDIO_CODEC_ID_DEFAULT",默认多路音频流混音模式为 "ZEGO_AUDIO_MIX_MODE_RAW"。
  • 建议值:根据需求设置。

outputList

outputList
public std::vector<ZegoMixerOutput> outputList

自动混流任务的输出流列表,列表中为 URL 或者流 ID,若为 URL 格式 目前只支持 RTMP URL 格式:rtmp://xxxxxxxx。

  • 业务场景:当发起自动混流任务时,需要配置该参数指明混流输出目标。Mix stream output target
  • 是否必填:是。

enableSoundLevel

enableSoundLevel
public bool enableSoundLevel

是否开启自动混流的声浪回调通知,开启后拉混流时可通过 [onAutoMixerSoundLevelUpdate] 回调收到每条单流的声浪信息。

  • 业务场景:当发起自动混流任务时,如果需要回调流的声浪信息,需要配置该参数。
  • 是否必填:否。
  • 默认值:"false"。
  • 建议值:根据需求设置。

streamAlignmentMode

streamAlignmentMode
public ZegoStreamAlignmentMode streamAlignmentMode

混流对齐模式。

minPlayStreamBufferLength

minPlayStreamBufferLength
public int minPlayStreamBufferLength

设置混流服务器拉流缓存自适应调整的区间范围下限。在实时合唱 KTV 场景下,推流端网络轻微波动可能会导致混流的卡顿,此时观众拉混流的时候,会有比较高概率出现卡顿的问题。通过调节混流服务器拉流缓存自适应调整的区间范围下限,可优化观众端拉混流出现的卡顿问题,但会增大延迟。默认不设置,即服务端使用自身配置值。只会对新的输入流设置生效,对于已经开始混流的输入流不生效。

  • 取值范围:[0,10000],超过最大值混流会失败。在 web 平台,此属性不生效。

streamAlignmentVolumeControlMode

streamAlignmentVolumeControlMode
public ZegoStreamAlignmentVolumeControlMode streamAlignmentVolumeControlMode

混流对齐场景音量调整模式。

streamAlignmentBaselineStreamID

streamAlignmentBaselineStreamID
public std::string streamAlignmentBaselineStreamID

混流对齐场景的基准流 ID。

方法

ZegoAutoMixerTask

ZegoAutoMixerTask
public ZegoAutoMixerTask: taskID(), roomID(), audioConfig(), outputList(), enableSoundLevel(false), streamAlignmentMode(ZEGO_STREAM_ALIGNMENT_MODE_NONE), minPlayStreamBufferLength(-1), streamAlignmentVolumeControlMode(ZEGO_STREAM_ALIGNMENT_VOLUME_CONTROL_MODE_CLOSE), streamAlignmentBaselineStreamID()
构造一个自动混流任务对象
Declared in ZegoExpressDefines.h

ZegoBackgroundConfig

背景的配置。

详情

用于在开启主体分割时,配置背景。

Declared in ZegoExpressDefines.h

属性

processType

processType
public ZegoBackgroundProcessType processType

背景处理类型。

color

color
public int color

背景颜色,格式为 0xRRGGBB,默认为黑色即 0x000000

imageURL

imageURL
public std::string imageURL

背景图路径。支持本地文件绝对路径 (file://xxx)。 格式支持 png、jpg。

videoURL

videoURL
public std::string videoURL
  • 注意事项:1. 视频将循环播放。2. 支持本地文件绝对路径 (file://xxx)。 3. 格式支持 MP4、FLV、MKV、AVI。4. 分辨率最大不超过4096px,推荐1920px以内。5. 视频时长最大不超过30秒,推荐15秒以内。6. 视频大小最大不超过50MB,推荐10MB以内。

blurLevel

blurLevel
public ZegoBackgroundBlurLevel blurLevel

背景虚化级别。

方法

ZegoBackgroundConfig

ZegoBackgroundConfig
public ZegoBackgroundConfig : processType(ZEGO_BACKGROUND_PROCESS_TYPE_TRANSPARENT),color(0),imageURL(""),videoURL(""),blurLevel(ZEGO_BACKGROUND_BLUR_LEVEL_MEDIUM)
Declared in ZegoExpressDefines.h

ZegoBarrageMessageInfo

房间弹幕消息

详情

收到的房间弹幕消息对象,包括消息内容、消息 ID、发送人、发送时间

Declared in ZegoExpressDefines.h

属性

message

message
public std::string message

消息内容

messageID

messageID
public std::string messageID

消息 ID

sendTime

sendTime
public unsigned long long sendTime

消息的发送时间,UNIX 时间戳,单位为毫秒

fromUser

fromUser
public ZegoUser fromUser

消息的发送者。请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。

ZegoBroadcastMessageInfo

房间广播消息

详情

收到的房间广播消息对象,包括消息内容、消息 ID、发送人、发送时间

Declared in ZegoExpressDefines.h

属性

message

message
public std::string message

消息内容

messageID

messageID
public unsigned long long messageID

消息 ID

sendTime

sendTime
public unsigned long long sendTime

消息的发送时间,UNIX 时间戳,单位为毫秒

fromUser

fromUser
public ZegoUser fromUser

消息的发送者。请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。

ZegoCDNConfig

CDN 配置对象

详情

包括 CDN 的 URL 以及鉴权参数字符串

Declared in ZegoExpressDefines.h

属性

url

url
public std::string url

CDN 的 URL

authParam

authParam
public std::string authParam

URL 的鉴权参数。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数(可以留空或设置为空字符串)。

protocol

protocol
public std::string protocol

URL 支持的协议,可选值为 "tcp" 和 "quic",若要使用多个,用英文的逗号分割,按顺序尝试。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数(可以留空或设置为空字符串)。

quicVersion

quicVersion
public std::string quicVersion

QUIC 版本。如果 [protocol] 有 QUIC 协议,需要填写该信息。如果有多个版本号,用英文的逗号分割。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数(可以留空或设置为空字符串)。

httpdns

httpdns
public ZegoHttpDNSType httpdns

自定义使用的 httpdns 服务。目前仅支持拉流时使用该功能。

quicConnectMode

quicConnectMode
public int quicConnectMode

QUIC 建立链接模式,若为1 则会优先使用quic 0 rtt 去建立链接,否则正常建立链接。如果 [protocol] 有 QUIC 协议,此值生效。

customParams

customParams
public std::string customParams

URL 的自定义参数。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数(可以留空或设置为空字符串)。

方法

ZegoCDNConfig

ZegoCDNConfig
public ZegoCDNConfig: quicConnectMode(0)
Declared in ZegoExpressDefines.h

ZegoCanvas

视图对象

详情

配置 View 对象、视图模式、视图背景颜色

Declared in ZegoExpressDefines.h

属性

view

view
public void * view

View 对象

viewMode

viewMode
public ZegoViewMode viewMode

视图模式,默认为 ZegoViewModeAspectFit

backgroundColor

backgroundColor
public int backgroundColor

背景颜色,格式为 0xRRGGBB,默认为黑色即 0x000000

alphaBlend

alphaBlend
public bool alphaBlend

是否允许 alpha 混合图层渲染,默认为 false。

rotation

rotation
public int rotation

逆时针旋转角度,默认为 0。媒体播放器视图不支持。

mirror

mirror
public bool mirror

是否开启画面镜像,默认为 false。仅拉流视图支持,推流请使用 [setVideoMirrorMode] 接口, 媒体播放器请使用 [enableViewMirror] 接口。

viewContext

viewContext
public std::string viewContext

视图上下文,默认为空字符串。最大 63 字节的utf8编码字符串。一般无需关注,可用于混流的分切渲染,了解具体使用方法,需要联系ZEGO技术支持。

方法

ZegoCanvas

ZegoCanvas
public ZegoCanvas(void *view=nullptr, ZegoViewMode viewMode=ZEGO_VIEW_MODE_ASPECT_FIT, int backgroundColor=0x000000):view(view),viewMode(viewMode),backgroundColor(backgroundColor),alphaBlend(false),rotation(0),mirror(false)
Declared in ZegoExpressDefines.h

ZegoColorEnhancementParams

色彩增强参数。

Declared in ZegoExpressDefines.h

属性

intensity

intensity
public float intensity

色彩增强的强度。

  • 取值范围:[0,1],取值越大,色彩增强的强度越大。
  • 默认值:0。

skinToneProtectionLevel

skinToneProtectionLevel
public float skinToneProtectionLevel

肤色保护程度。

  • 取值范围:[0,1],取值越大,肤色保护程度越大。
  • 默认值:1。

lipColorProtectionLevel

lipColorProtectionLevel
public float lipColorProtectionLevel

唇色保护程度。

  • 取值范围:[0,1],取值越大,唇色保护程度越大。
  • 默认值:0。

方法

ZegoColorEnhancementParams

ZegoColorEnhancementParams
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicConfig

版权音乐配置

Declared in ZegoExpressDefines.h

属性

user

user
public ZegoUser user

用户对象实例,配置用户 ID、用户名。 注意此处设置的用户 ID 需要与登录房间时设置的用户 ID 保持一致,否则会出现请求版权音乐后台服务失败的情况。

ZegoCopyrightedMusicGetLyricConfig

获取歌词的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

vendorID

vendorID
public int vendorID

版权方。

方法

ZegoCopyrightedMusicGetLyricConfig

ZegoCopyrightedMusicGetLyricConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicGetSharedConfig

获取分享资源的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

vendorID

vendorID

版权方。

roomID

roomID
public std::string roomID

房间 ID, 单房间模式可不传,多房间模式时必须传对应房间的 ID。指明在哪个房间获取资源。

方法

ZegoCopyrightedMusicGetSharedConfig

ZegoCopyrightedMusicGetSharedConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicGetSharedConfigV2

获取分享资源的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

vendorID

vendorID
public int vendorID

版权方。参考 [ZegoCopyrightedMusicVendorID] 的值。

roomID

roomID
public std::string roomID

房间 ID, 单房间模式可不传,多房间模式时必须传对应房间的 ID。指明在哪个房间获取资源。

resourceType

resourceType
public int resourceType

版权音乐资源类型。

方法

ZegoCopyrightedMusicGetSharedConfigV2

ZegoCopyrightedMusicGetSharedConfigV2
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicQueryCacheConfig

查询缓存的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

resourceType

resourceType

版权音乐资源类型。

resourceQualityType

resourceQualityType
public ZegoCopyrightedMusicResourceQualityType resourceQualityType

版权音乐资源音质类型。

vendorID

vendorID

版权方。

方法

ZegoCopyrightedMusicQueryCacheConfig

ZegoCopyrightedMusicQueryCacheConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicQueryCacheConfigV2

查询缓存的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

resourceType

resourceType
public int resourceType

版权音乐资源类型。参考 [ZegoCopyrightedMusicResourceType] 的值。

resourceQualityType

resourceQualityType
public int resourceQualityType

版权音乐资源音质类型。参考 [ZegoCopyrightedMusicResourceQualityType] 的值。

vendorID

vendorID
public int vendorID

版权方。参考 [ZegoCopyrightedMusicVendorID] 的值。

方法

ZegoCopyrightedMusicQueryCacheConfigV2

ZegoCopyrightedMusicQueryCacheConfigV2
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicRequestConfig

获取资源的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

mode

mode

计费模式。

vendorID

vendorID

版权方。

roomID

roomID
public std::string roomID

房间 ID, 单房间模式可不传,多房间模式时必须传对应房间的 ID。指明在哪个房间进行点歌/点伴奏/点高潮片段。

masterID

masterID
public std::string masterID

房主 ID, 当计费模式为按房主计费时必传。指明按哪个房主进行点歌/点伴奏/高潮片段

sceneID

sceneID
public int sceneID

场景 ID, 指明实际业务,详情可咨询 ZEGO 技术支持。

方法

ZegoCopyrightedMusicRequestConfig

ZegoCopyrightedMusicRequestConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicRequestConfigV2

获取资源的配置。

Declared in ZegoExpressDefines.h

属性

songID

songID
public std::string songID

歌曲 ID。

mode

mode
public int mode

计费模式。参考 [ZegoCopyrightedMusicBillingMode] 的值。

vendorID

vendorID
public int vendorID

版权方。参考 [ZegoCopyrightedMusicVendorID] 的值。

roomID

roomID
public std::string roomID

房间 ID, 单房间模式可不传,多房间模式时必须传对应房间的 ID。指明在哪个房间进行点歌/点伴奏/点高潮片段。

masterID

masterID
public std::string masterID

房主 ID, 当计费模式为按房主计费时必传。指明按哪个房主进行点歌/点伴奏/高潮片段

sceneID

sceneID
public int sceneID

场景 ID, 指明实际业务,详情可咨询 ZEGO 技术支持。

resourceType

resourceType
public int resourceType

版权音乐资源类型。参考 [ZegoCopyrightedMusicResourceType] 的值。

方法

ZegoCopyrightedMusicRequestConfigV2

ZegoCopyrightedMusicRequestConfigV2
Declared in ZegoExpressDefines.h

ZegoCrossAppInfo

跨 APP 拉流配置

Declared in ZegoExpressDefines.h

属性

appID

appID
public unsigned int appID

跨 App 拉流的 AppID。

token

token
public std::string token

需要设置的 token。

方法

ZegoCrossAppInfo

ZegoCrossAppInfo
public ZegoCrossAppInfo: appID(0), token("")
Declared in ZegoExpressDefines.h

ZegoCustomAudioConfig

自定义音频配置

Declared in ZegoExpressDefines.h

属性

sourceType

sourceType
public ZegoAudioSourceType sourceType

音频采集源类型

ZegoCustomAudioProcessConfig

自定义音频处理配置对象

详情

包括自定义音频采集类型,采样率,通道数,采样数等参数

Declared in ZegoExpressDefines.h

属性

sampleRate

sampleRate
public ZegoAudioSampleRate sampleRate

采样率,App 中音频前处理模块期望的输入数据采样率。如果为 0,则默认为 SDK 内部采样率。

channel

channel
public ZegoAudioChannel channel

声道数,App 中音频前处理模块期望的输入数据声道数。如果为 0,则默认为 SDK 内部声道数

samples

samples
public int samples

编码一帧所需要的采样数;如果 samples = 0,则使用 SDK 内部采样数,SDK 将音频数据传递给外部前处理模块;如果 samples != 0(则samples 的有效取值在 [160, 2048] 间),SDK 会传递设定采样数长度的音频数据给外部预处理模块。

ZegoCustomPlayerResourceConfig

自定义拉流资源类型配置。

详情

自定义拉流资源类型配置。

Declared in ZegoExpressDefines.h

属性

beforePublish

beforePublish
public ZegoResourceType beforePublish

开始推流前拉流选择的资源类型。

publishing

publishing
public ZegoResourceType publishing

推流中拉流选择的资源类型。

afterPublish

afterPublish
public ZegoResourceType afterPublish

停止推流后拉流选择的资源类型。

方法

ZegoCustomPlayerResourceConfig

ZegoCustomPlayerResourceConfig
public ZegoCustomPlayerResourceConfig: beforePublish(ZEGO_RESOURCE_TYPE_RTC), publishing(ZEGO_RESOURCE_TYPE_RTC), afterPublish(ZEGO_RESOURCE_TYPE_RTC)
Declared in ZegoExpressDefines.h

ZegoCustomVideoCaptureConfig

自定义视频采集配置

详情

自定义视频采集,即由开发者负责采集视频数据,并将采集到的视频数据发送给 SDK 进行视频数据的编码与推送到 ZEGO RTC 服务器。该功能一般为使用第三方美颜功能或游戏录屏直播的开发者使用。 当需要使用自定义采集功能时需要将该类的实例作为参数设置给 [enableCustomVideoCapture] 函数。 由于使用自定义视频采集时,SDK 将不再启动摄像头去采集视频数据,开发者需自行对视频采集源进行视频数据的采集。

Declared in ZegoExpressDefines.h

属性

bufferType

bufferType
public ZegoVideoBufferType bufferType

自定义视频采集视频帧数据类型

ZegoCustomVideoProcessConfig

自定义视频前处理配置

Declared in ZegoExpressDefines.h

属性

bufferType

bufferType
public ZegoVideoBufferType bufferType

自定义视频前处理帧数据类型。默认值为 [Unknown]。

ZegoCustomVideoRenderConfig

自定义视频渲染配置

详情

当需要使用自定义渲染功能时需要将该类的实例作为参数设置给 [enableCustomVideoRender] 函数。

Declared in ZegoExpressDefines.h

属性

bufferType

bufferType
public ZegoVideoBufferType bufferType

自定义视频渲染视频帧数据类型

frameFormatSeries

frameFormatSeries
public ZegoVideoFrameFormatSeries frameFormatSeries

自定义视频渲染视频帧数据格式。当 bufferType 设置为 [EncodedData] 时,此成员无效

enableEngineRender

enableEngineRender
public bool enableEngineRender

是否在自定义视频渲染的同时,引擎也渲染,默认为 [false]。当 bufferType 设置为 [EncodedData] 时,此成员无效

ZegoDataRecordConfig

录制配置

Declared in ZegoExpressDefines.h

属性

filePath

filePath
public std::string filePath

录制文件保存路径,绝对路径,需要包含文件名, 文件名需指明后缀,目前支持 .mp4/.flv/.aac 格式文件。若多次录制为同一个路径,会覆盖同名的文件。最大长度应小于 1024 字节。

recordType

recordType
public ZegoDataRecordType recordType

录制文件媒体类型

ZegoDataRecordProgress

文件录制进度

Declared in ZegoExpressDefines.h

属性

duration

duration
public unsigned long long duration

当前录制时长, 单位为毫秒

currentFileSize

currentFileSize
public unsigned long long currentFileSize

当前录制文件大小, 单位为字节

quality

quality

当前录制文件的质量信息

ZegoDeviceInfo

设备信息

详情

包括设备的 ID 与名称

Declared in ZegoExpressDefines.h

属性

deviceID

deviceID
public std::string deviceID

设备 ID

deviceName

deviceName
public std::string deviceName

设备名称

deviceExtraInfo

deviceExtraInfo
public std::string deviceExtraInfo

设备附加信息, 格式:key="value" key2="value2"..., 以换行符 分隔键值对,以等号=分隔key和"value", value的前后还有双引号

ZegoDummyCaptureImageParams

虚拟采集图片参数。

Declared in ZegoExpressDefines.h

属性

path

path
public std::string path

图片路径。

mode

mode

虚拟采集图片模式。

方法

ZegoDummyCaptureImageParams

ZegoDummyCaptureImageParams
Declared in ZegoExpressDefines.h

ZegoDumpDataConfig

转储数据配置。

Declared in ZegoExpressDefines.h

属性

dataType

dataType
public ZegoDumpDataType dataType

数据类型。

ZegoEffectsBeautyParam

美颜配置参数

详情

配置美颜的美白、红润、磨皮、锐化参数。

Declared in ZegoExpressDefines.h

属性

whitenIntensity

whitenIntensity
public int whitenIntensity

美白强度参数,取值范围[0,100],默认 50。

rosyIntensity

rosyIntensity
public int rosyIntensity

红润强度参数,取值范围[0,100],默认 50。

smoothIntensity

smoothIntensity
public int smoothIntensity

磨皮强度参数,取值范围[0,100],默认 50。

sharpenIntensity

sharpenIntensity
public int sharpenIntensity

锐化强度参数,取值范围[0,100],默认 50。

ZegoEngineConfig

引擎进阶配置

Declared in ZegoExpressDefines.h

属性

logConfig

logConfig
deprecated
public ZegoLogConfig* logConfig

日志配置,未设置时使用默认配置(详见 [ZegoLogConfig])。

已废弃
此属性在版本 2.3.0 以后已废弃,请使用 [setLogConfig] 函数代替。

advancedConfig

advancedConfig
public std::unordered_map<std::string, std::string> advancedConfig

进阶功能配置,未设置时默认不使用任何特殊功能,如需使用,请联系 ZEGO 技术支持。

方法

ZegoEngineConfig

ZegoEngineConfig
Declared in ZegoExpressDefines.h

ZegoEngineProfile

创建引擎的配置

详情

创建引擎的配置

Declared in ZegoExpressDefines.h

属性

appID

appID
public unsigned int appID

ZEGO 为开发者签发的应用 ID,请从 ZEGO 管理控制台 https://console-express.zego.im 申请。appID 取值范围 0~4294967295。

appSign

appSign
public std::string appSign
  • 取值范围:'0' ~ '9', 'a' ~ 'z'。例:"9dc9a25bh2f2137446897071c8c033fa33b91c3dd2a85e0c000ae82c0dad3"。2.17.0 及以上版本 appSign 允许传空或者不传。如果传空或者不传,则必须在调用 [loginRoom] 接口登录房间时将 token 填入 [ZegoRoomConfig] 参数中,用于鉴权。token 的生成方式请参考 使用 Token 鉴权

scenario

scenario
public ZegoScenario scenario

房间场景,SDK 会针对指定的场景的做一些音视频配置优化以达成在此场景下最优的效果。指定场景后,开发者可以使用 [setRoomScenario] 来实现在不销毁引擎 [destroyEngine] 的前提下切换其他场景。指定场景后,开发者可以调用其他 API 来继续调整音视频配置。各个场景之间的差异以及如何选择合适的场景请参考 https://doc-zh.zego.im/article/16316

callbackSwitchToMainThread

callbackSwitchToMainThread
public bool callbackSwitchToMainThread

仅windows 和mac 平台回调线程切ui 线程

方法

ZegoEngineProfile

ZegoEngineProfile
public ZegoEngineProfile:appID(0), appSign(""), callbackSwitchToMainThread(true)
Declared in ZegoExpressDefines.h

ZegoExpLowlightEnhancementParams

低照度增强参数。

Declared in ZegoExpressDefines.h

属性

mode

mode

低照度增强模式。

  • 默认值:Off。

type

type

低照度增强类型。

  • 默认值:Normal。

方法

ZegoExpLowlightEnhancementParams

ZegoExpLowlightEnhancementParams
Declared in ZegoExpressDefines.h

ZegoFontStyle

字体风格。

详情

字体风格配置,可用于配置字体类型、字体大小、字体颜色、字体透明度。

  • 业务场景:手动混流场景时,设置文字水印,比如多人连麦直播。

Declared in ZegoExpressDefines.h

属性

type

type
public ZegoFontType type
  • 是否必填:否。
  • 默认值:思源黑体 [ZegoFontTypeSourceHanSans]。

size

size
public int size
  • 是否必填:否。
  • 默认值:24。
  • 取值范围:[12,100]。

color

color
public int color
  • 是否必填:否。
  • 默认值:16777215(白色)。
  • 取值范围:[0,16777215]。

transparency

transparency
public int transparency
  • 是否必填:否。
  • 默认值:0。
  • 取值范围:[0,100],100 为完全不透明,0 为完全透明。

border

border
public bool border
  • 是否必填:否。
  • 默认值:否。
  • 取值范围:是/否。

borderColor

borderColor
public int borderColor
  • 是否必填:否。
  • 默认值:0。
  • 取值范围:[0,16777215]。

方法

ZegoFontStyle

ZegoFontStyle
public ZegoFontStyle:type(ZEGO_FONT_TYPE_SOURCE_HAN_SANS),size(24),color(16777215),transparency(0),border(false),borderColor(0)
构造一个默认字体风格对象。
Declared in ZegoExpressDefines.h

ZegoImageBuffer

图像数据内容

Declared in ZegoExpressDefines.h

属性

buffer

buffer
public unsigned char * buffer

BGRA32 格式的图像内容。

length

length
public unsigned int length

图像内容大小。

width

width
public unsigned int width

图像内容宽度。

height

height
public unsigned int height

图像内容高度。

ZegoItemParam

物品参数。

Declared in ZegoExpressDefines.h

属性

itemID

itemID
public long long itemID

物品 ID。

capacity

capacity
public unsigned int capacity

物品的允许绑定用户人数。

position

position
public ZegoPosition position

物品在范围场景中的初始位置坐标。

createMode

createMode
public ZegoCreateItemMode createMode

创建物品模式。

方法

ZegoItemParam

ZegoItemParam
Declared in ZegoExpressDefines.h

ZegoLabelInfo

文本信息。

详情

文本信息配置,可用于配置文本内容、文本位置、文本风格。

  • 业务场景:手动混流场景时,设置文字水印,比如多人连麦直播。

Declared in ZegoExpressDefines.h

属性

text

text
public std::string text
  • 是否必填:是。
  • 取值范围:最大支持显示100个中文字符,300 个英文字符。

left

left
public int left
  • 是否必填:否。
  • 默认值:0。

top

top
public int top
  • 是否必填:否。
  • 默认值:0。

font

font
public ZegoFontStyle font
  • 是否必填:否。

方法

ZegoLabelInfo

ZegoLabelInfo
public ZegoLabelInfo(std::string text):text(text),left(0),top(0),font()
通过 text 构造一个文本信息对象。
Declared in ZegoExpressDefines.h

ZegoLayerBorderConfig

图层边框配置。

详情

自定义设置视图边框的大小、颜色等。

Declared in ZegoExpressDefines.h

属性

width

width
public unsigned int width

边框大小,默认值 4, 最大值为 100。

color

color
public int color

边框颜色,格式为 0xRRGGBB,默认为绿色即 0x00FF00

方法

ZegoLayerBorderConfig

ZegoLayerBorderConfig
Declared in ZegoExpressDefines.h

ZegoLogConfig

日志配置

详情

调用 [setLogConfig] 自定义日志配置时,需要通过该参数配置。

  • 业务场景:当需要自定义日志存储路径或日志文件大小上限时,需要这个配置。
  • 注意事项:无。

Declared in ZegoExpressDefines.h

属性

logPath

logPath
public std::string logPath

用于自定义日志文件的存储路径。

  • 业务场景:当需要自定义日志存储路径时,需要这个配置。
  • 是否必填:否。
  • 默认值:各平台的默认路径有所不同,具体参考官网文档 https://doc-zh.zego.im/faq/express_sdkLog
  • 注意事项:开发者需要确保对该路径下文件的读写权限。

logSize

logSize
public unsigned long long logSize

用于自定义日志文件大小上限。

  • 业务场景:当需要自定义日志文件大小上限时,需要这个配置。
  • 是否必填:否。
  • 默认值:5MB (5 * 1024 * 1024 Bytes)。
  • 取值范围:最小1MB (1 * 1024 * 1024 Bytes),最大100M (100 * 1024 * 1024 Bytes),0表示不需要写日志。
  • 注意事项:日志文件大小上限越大,承载的日志信息越多,但是日志上传时间也会更长。

logCount

logCount
public unsigned int logCount

日志文件个数。默认是 3 个。取值范围是 [3, 20]

方法

ZegoLogConfig

ZegoLogConfig
Declared in ZegoExpressDefines.h

ZegoMediaDataPublisherConfig

用于媒体数据推流器配置。

详情

用于在创建媒体数据推流器时,配置创建参数。

Declared in ZegoExpressDefines.h

属性

channel

channel
public int channel

用于指定推流器的推流通道号。

mode

mode

用于指定推流的模式。

ZegoMediaPlayerMediaInfo

媒体文件媒体信息。

详情

媒体文件视频分辨率等媒体信息。

Declared in ZegoExpressDefines.h

属性

width

width
public int width

视频分辨率高度。

height

height
public int height

视频分辨率高度。

frameRate

frameRate
public int frameRate

视频帧率。

方法

ZegoMediaPlayerMediaInfo

ZegoMediaPlayerMediaInfo
Declared in ZegoExpressDefines.h

ZegoMediaPlayerResource

用于指定播放器的多媒体资源。

详情

用于在加载多媒体资源时,配置加载参数。

Declared in ZegoExpressDefines.h

属性

loadType

loadType
public ZegoMultimediaLoadType loadType

用于指定多媒体资源的加载类型。

startPosition

startPosition
public unsigned long long startPosition

开始播放的进度。

alphaLayout

alphaLayout
public ZegoAlphaLayoutType alphaLayout

如果指定的资源带透明特效,需要指定 alpha 数据的布局位置。

filePath

filePath
public std::string filePath

文件资源的路径。本地资源路径或网络资源的 URL,不能传入 nil 或 ""。Android 可通过 Uri 方式进行传参。

memory

memory
public unsigned char * memory

二进制数据内存。

memoryLength

memoryLength
public int memoryLength

二进制数据内存长度。

resourceID

resourceID
public std::string resourceID

从版权音乐模块获取的资源 ID。

onlineResourceCachePath

onlineResourceCachePath
public std::string onlineResourceCachePath

在线资源缓存路径,utf8 编码格式。

maxCachePendingLength

maxCachePendingLength
public long long maxCachePendingLength

在线资源最大的缓存待使用长度,单位 byte,最小设置 10M(10 * 1024 * 1024),默认0-不做限制,尝试缓存整个文件。

方法

ZegoMediaPlayerResource

ZegoMediaPlayerResource
Declared in ZegoExpressDefines.h

ZegoMediaPlayerStatisticsInfo

播放器播放统计信息。

详情

播放器播放统计信息。

Declared in ZegoExpressDefines.h

属性

videoSourceFps

videoSourceFps
public double videoSourceFps

视频读取帧率。

videoDecodeFps

videoDecodeFps
public double videoDecodeFps

视频解码帧率。

videoRenderFps

videoRenderFps
public double videoRenderFps

视频渲染帧率。

audioSourceFps

audioSourceFps
public double audioSourceFps

音频读取帧率。

audioDecodeFps

audioDecodeFps
public double audioDecodeFps

音频解码帧率。

audioRenderFps

audioRenderFps
public double audioRenderFps

音频渲染帧率。

方法

ZegoMediaPlayerStatisticsInfo

ZegoMediaPlayerStatisticsInfo
Declared in ZegoExpressDefines.h

ZegoMediaSideInfo

SEI 回调信息

Declared in ZegoExpressDefines.h

属性

streamID

streamID
public std::string streamID

流 ID

SEIData

SEIData
public const unsigned char* SEIData

SEI 数据

SEIDataLength

SEIDataLength
public unsigned int SEIDataLength

SEI 数据的长度

timestampNs

timestampNs
public long long timestampNs

时间戳

moduleType

moduleType
public int moduleType

SEI 来源模块,请联系 ZEGO 技术支持。

ZegoMixerAudioConfig

混流音频配置

详情

配置混流任务的音频码率、声道数、音频编码

Declared in ZegoExpressDefines.h

属性

bitrate

bitrate
public int bitrate

音频码率,单位为 kbps,默认为 48 kbps,开始混流任务后不能修改

channel

channel
public ZegoAudioChannel channel

音频声道,默认为 Mono 单声道

codecID

codecID
public ZegoAudioCodecID codecID

编码 ID,默认为 ZegoAudioCodecIDDefault

mixMode

mixMode
public ZegoAudioMixMode mixMode

多路音频流混音模式。若 [ZegoAudioMixMode] 选择为 [Focused],SDK 将会选择 4 路已设置 [isAudioFocus] 的输入流作为焦点语音突出,若未选择或选择少于 4 路,则会自动补齐 4 路。在 web 平台,此属性不生效。

方法

ZegoMixerAudioConfig

ZegoMixerAudioConfig
public ZegoMixerAudioConfig:bitrate(48), channel(ZEGO_AUDIO_CHANNEL_MONO), codecID(ZEGO_AUDIO_CODEC_ID_DEFAULT), mixMode(ZEGO_AUDIO_MIX_MODE_RAW)
Declared in ZegoExpressDefines.h

ZegoMixerAudioConfig

ZegoMixerAudioConfig
public ZegoMixerAudioConfig(int bitrate, ZegoAudioChannel channel, ZegoAudioCodecID codecID): bitrate(bitrate), channel(channel), codecID(codecID), mixMode(ZEGO_AUDIO_MIX_MODE_RAW)
Declared in ZegoExpressDefines.h

ZegoMixerImageInfo

设置混流中单条输入流的图片信息。

详情

为单条输入流的内容设置图片,用于替代视频,即当使用图片时不显示视频。图片复用的 [ZegoMixerInput] 中的 layout 布局。

  • 业务场景:开发者在视频连麦过程中,需要暂时关闭摄像头显示图像,或音频连麦时,显示图片等。
  • 支持版本:2.19.0 及以上。
  • 使用限制:图片大小限制在 1M 以内。

Declared in ZegoExpressDefines.h

属性

url

url
public std::string url

图片路径,不为空显示图片,否则显示视频。支持 JPG 和 PNG 格式。支持 2 种使用方式:1. URI:将图片提供给 ZEGO 技术支持进行配置,配置完成后会提供图片 URI,例如:preset-id://xxx.jpg。2. URL:仅支持 HTTP 协议。

displayMode

displayMode
public int displayMode

图片显示模式。0:默认值。当 url 不为空时,覆盖视频内容,显示图片。1:根据摄像头状态,判断是否显示图片。摄像头关闭,显示图片。摄像头打开,显示视频内容(无需手动清空 url 参数)。2:根据输入流是否有视频数据,判断是否显示图片。输入流连续3秒无视频数据时,显示图片。判断无视频数据时长默认为3秒,若需额外配置请联系 ZEGO 技术支持。输入流有视频数据时,显示视频内容。

方法

ZegoMixerImageInfo

ZegoMixerImageInfo
public ZegoMixerImageInfo(std::string url):url(url), displayMode(0)
通过 url 构造一个图片信息对象。
Declared in ZegoExpressDefines.h

ZegoMixerImageInfo

ZegoMixerImageInfo
public ZegoMixerImageInfo(std::string url, int displayMode):url(url), displayMode(displayMode)
通过 url 和 displayMode 构造一个图片信息对象。
Declared in ZegoExpressDefines.h

ZegoMixerInput

混流输入

详情

配置混流输入的流 ID、输入类型、流的布局

Declared in ZegoExpressDefines.h

属性

streamID

streamID
public std::string streamID
  • 注意事项:不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '-', '_'。

contentType

contentType
public ZegoMixerInputContentType contentType

混流内容类型

layout

layout
public ZegoRect layout

流的布局。当混入的流为音频流时(即 ContentType 参数设置为音频混流类型),开发者无需对该字段赋值,使用 SDK 默认的即可。

soundLevelID

soundLevelID
public unsigned int soundLevelID

当混流任务开启了声浪回调时,需要为每条输入流指定唯一的 soundLevelID

volume

volume
public unsigned int volume

输入流音量, 有效范围 [0, 200], 默认是 100。在 web 平台,此属性不生效。

isAudioFocus

isAudioFocus
public bool isAudioFocus

当前输入流是否开启焦点语音,开启了会突出此路流的声音。在 web 平台,此属性不生效。

audioDirection

audioDirection
public int audioDirection

声音的朝向。有效的朝向是 [0, 360]。-1 表示关闭该功能。默认是 -1。在 web 平台,此属性不生效。

label

label
public ZegoLabelInfo label

文字水印。

renderMode

renderMode
public ZegoMixRenderMode renderMode

视频画面渲染模式。

imageInfo

imageInfo
public ZegoMixerImageInfo imageInfo

用户图片信息。

cornerRadius

cornerRadius
public unsigned int cornerRadius

视频画面圆角半径,单位 px。

  • 是否必填:否。
  • 取值范围:不超过 [layout] 参数设置的视频画面的宽高。
  • 默认值:0。

advancedConfig

advancedConfig
public std::map<std::string, std::string> advancedConfig

设置高级配置。请联系 ZEGO 技术支持。在 web 平台,此属性不生效。

方法

ZegoMixerInput

ZegoMixerInput
public ZegoMixerInput : streamID(), contentType(ZEGO_MIXER_INPUT_CONTENT_TYPE_VIDEO), layout(), soundLevelID(0), volume(100), isAudioFocus(false), audioDirection(-1), label(""), renderMode(ZEGO_MIX_RENDER_MODE_FILL), imageInfo(""), cornerRadius(0)
Declared in ZegoExpressDefines.h

ZegoMixerInput

ZegoMixerInput
public ZegoMixerInput(std::string streamID, ZegoMixerInputContentType contentType, ZegoRect layout, unsigned int soundLevelID): streamID(streamID), contentType(contentType), layout(layout), soundLevelID(soundLevelID), volume(100),isAudioFocus(false), audioDirection(-1), label(""), renderMode(ZEGO_MIX_RENDER_MODE_FILL), imageInfo(""), cornerRadius(0)
Declared in ZegoExpressDefines.h

ZegoMixerOutput

混流输出对象,目前一个混流任务最多只支持 4 路不同分辨率的视频流。

详情

配置混流输出的目标 URL 或流 ID

Declared in ZegoExpressDefines.h

属性

target

target
public std::string target

混流输出目标,URL 或者流 ID,若为 URL 格式 目前只支持 RTMP URL 格式:rtmp://xxxxxxxx, 且不能传入两个相同的混流输出的地址。

videoConfig

videoConfig
public ZegoMixerOutputVideoConfig videoConfig

混流输出视频设置。在 web 平台,此属性不生效。

targetRoom

targetRoom
public ZegoMixerOutputRoomInfo targetRoom

指定输出流的房间信息。

方法

ZegoMixerOutput

ZegoMixerOutput
public ZegoMixerOutput : videoConfig(), targetRoom("", "")
Declared in ZegoExpressDefines.h

ZegoMixerOutput

ZegoMixerOutput
public ZegoMixerOutput(std::string target) : target(target), videoConfig, targetRoom("", "")
Declared in ZegoExpressDefines.h

ZegoMixerOutputRoomInfo

混流中输出流的房间信息。

详情

为单条输出流设置房间信息;能将混流输出流增加到指定房间,让房间内的用户接收到房间内流增加的通知。

  • 业务场景:手动混流场景,比如多人连麦直播。
  • 支持版本:3.18.0 及以上。
  • 使用限制:不支持混流过程中动态更新。

Declared in ZegoExpressDefines.h

属性

roomID

roomID
public std::string roomID

指定输出流的房间ID。需要保证开始混流时房间已存在。

userID

userID
public std::string userID

指定输出流的用户ID。虚拟用户id,仅用于流新增通知,不会触发 [onRoomUserUpdate]。不建议使用与房间内实际用户相同的 userID,避免与 SDK 的流新增行为产生冲突。

方法

ZegoMixerOutputRoomInfo

ZegoMixerOutputRoomInfo
public ZegoMixerOutputRoomInfo(const std::string& roomID, const std::string& userID):roomID(roomID), userID(userID)
通过 roomID 和 userID 构造一个混流中输出流的房间信息。
Declared in ZegoExpressDefines.h

ZegoMixerOutputVideoConfig

混流输出视频配置。

详情

配置混流输出的视频参数,编码格式、码率。

  • 业务场景:手动混流场景,比如多人连麦直播。

Declared in ZegoExpressDefines.h

属性

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

混流输出视频编码格式,支持 H.264, H.265 编码。

bitrate

bitrate
public int bitrate

混流输出视频码率,单位为 kbps。默认值为 [ZegoMixerVideoConfig] 中配置的 bitrate。

encodeProfile

encodeProfile
public ZegoEncodeProfile encodeProfile

混流输出视频编码规格。默认值为 [ZegoEncodeProfileDefault]。

encodeLatency

encodeLatency
public int encodeLatency

混流输出视频编码延时,有效值范围 [0, 2000], 单位毫秒。默认值为 0。

enableLowBitrateHD

enableLowBitrateHD
public bool enableLowBitrateHD

开启高清低码,默认值为 false

方法

ZegoMixerOutputVideoConfig

ZegoMixerOutputVideoConfig
public ZegoMixerOutputVideoConfig: videoCodecID(ZEGO_VIDEO_CODEC_ID_DEFAULT), bitrate(0), encodeProfile(ZEGO_ENCODE_PROFILE_DEFAULT), encodeLatency(0), enableLowBitrateHD(false)
Declared in ZegoExpressDefines.h

ZegoMixerOutputVideoConfig

ZegoMixerOutputVideoConfig
public ZegoMixerOutputVideoConfig(ZegoVideoCodecID codecID, int bitrate): videoCodecID(codecID), bitrate(bitrate), encodeProfile(ZEGO_ENCODE_PROFILE_DEFAULT), encodeLatency(0), enableLowBitrateHD(false)
Declared in ZegoExpressDefines.h

ZegoMixerOutputVideoConfig

ZegoMixerOutputVideoConfig
public ZegoMixerOutputVideoConfig(ZegoVideoCodecID codecID, int bitrate, ZegoEncodeProfile profile, int encodeLatency): videoCodecID(codecID), bitrate(bitrate), encodeProfile(profile), encodeLatency(encodeLatency), enableLowBitrateHD(false)
Declared in ZegoExpressDefines.h

ZegoMixerTask

混流任务对象

详情

本类为混流任务的配置类,当向 ZEGO RTC 服务器发起混流任务的请求时,需要这个混流任务的配置。 本类即描述这次混流任务的详细配置信息。

Declared in ZegoExpressDefines.h

属性

taskID

taskID
public std::string taskID

混流任务 ID

audioConfig

audioConfig
public ZegoMixerAudioConfig audioConfig

混流任务的音频配置

videoConfig

videoConfig
public ZegoMixerVideoConfig videoConfig

混流任务的视频配置

inputList

inputList
public std::vector<ZegoMixerInput> inputList

混流任务的输入流列表

outputList

outputList
public std::vector<ZegoMixerOutput> outputList

混流任务的输出流列表

watermark

watermark
public ZegoWatermark* watermark

混流任务的水印

whiteboard

whiteboard
public ZegoMixerWhiteboard* whiteboard

混流任务的白板输入信息

backgroundColor

backgroundColor
public int backgroundColor

混流任务的背景色,颜色值对应 RGBA 为 0xRRGGBBAA,目前不支持设置背景色的透明度,0xRRGGBBAA 中的 AA 为 00 即可。例如:选取 RGB 为 #87CEFA 作为背景色,此参数传 0x87CEFA00。

backgroundImageURL

backgroundImageURL
public std::string backgroundImageURL

混流任务的背景图 URL

enableSoundLevel

enableSoundLevel
public bool enableSoundLevel

是否开启混流的声浪回调通知,开启后拉混流时可通过 [onMixerSoundLevelUpdate] 回调收到每条单流的声浪信息

streamAlignmentMode

streamAlignmentMode
public ZegoStreamAlignmentMode streamAlignmentMode

混流对齐模式

userData

userData
public const unsigned char* userData

用户自定义数据,长度不超过 1000 字节,设置后拉流方可通过监听 [onPlayerRecvSEI] 的回调获取 SEI 内容。

userDataLength

userDataLength
public unsigned int userDataLength

用户自定义数据长度,不超过 1000。注意 SDK 只读取长度为 userDataLength 的数据,如果 userDataLength 大于 userData 实际长度,则 SDK 按照 userData 实际长度读取数据

advancedConfig

advancedConfig
public std::unordered_map<std::string, std::string> advancedConfig

设置高级配置,如可用于指定视频编码等功能。如需使用,联系 ZEGO 技术支持。

minPlayStreamBufferLength

minPlayStreamBufferLength
public int minPlayStreamBufferLength

设置混流服务器拉流缓存自适应调整的区间范围下限。在实时合唱 KTV 场景下,推流端网络轻微波动可能会导致混流的卡顿,此时观众拉混流的时候,会有比较高概率出现卡顿的问题。通过调节混流服务器拉流缓存自适应调整的区间范围下限,可优化观众端拉混流出现的卡顿问题,但会增大延迟。默认不设置,即服务端使用自身配置值。只会对新的输入流设置生效,对于已经开始混流的输入流不生效。

  • 取值范围:[0,10000],超过最大值混流会失败。在 web 平台,此属性不生效。

mixImageCheckMode

mixImageCheckMode
public ZegoMixImageCheckMode mixImageCheckMode

混流对齐模式

方法

ZegoMixerTask

ZegoMixerTask
public ZegoMixerTask(std::string taskID=""): taskID(taskID), watermark(nullptr), whiteboard(nullptr), backgroundColor(0), enableSoundLevel(false), streamAlignmentMode(ZEGO_STREAM_ALIGNMENT_MODE_NONE), userData(nullptr), userDataLength(0), minPlayStreamBufferLength(-1), mixImageCheckMode(ZEGO_MIX_IMAGE_CHECK_MODE_NORMAL)
Declared in ZegoExpressDefines.h

ZegoMixerVideoConfig

混流视频配置

详情

配置混流任务的视频参数,帧率、码率、分辨率

Declared in ZegoExpressDefines.h

属性

width

width
public int width

视频分辨率宽

height

height
public int height

视频分辨率高

fps

fps
public int fps

视频帧率,开始混流任务后不能修改

bitrate

bitrate
public int bitrate

视频码率,单位为 kbps

quality

quality
public int quality

视频质量,视频码率控制模式参数设置为恒定质量时此设置值有效,有效值范围 [0,51],默认值是 23。若想视频质量好点,在 23 的基础上降低质量值测试调整。若想文件大小小一点,在 23 的基础上升高质量值测试调整。以 x 值下的文件大小为例, x + 6 值下的文件大小是 x 值下文件大小的一半,x - 6 值下的文件大小是 x 值下文件大小的两倍。在 web 平台,此属性不生效。

rateControlMode

rateControlMode
public ZegoVideoRateControlMode rateControlMode

视频码率控制模式。在 web 平台,此属性不生效。

方法

ZegoMixerVideoConfig

ZegoMixerVideoConfig
public ZegoMixerVideoConfig: width(640), height(360), fps(15), bitrate(600), quality(23), rateControlMode(ZEGO_VIDEO_RATE_CONTROL_MODE_CONSTANT_RATE)
Declared in ZegoExpressDefines.h

ZegoMixerVideoConfig

ZegoMixerVideoConfig
public ZegoMixerVideoConfig(int width, int height, int fps, int bitrate): width(width), height(height), fps(fps), bitrate(bitrate), quality(23), rateControlMode(ZEGO_VIDEO_RATE_CONTROL_MODE_CONSTANT_RATE)
Declared in ZegoExpressDefines.h

ZegoMixerWhiteboard

混流输入白板对象

详情

配置混流输入的白板 ID、宽高比、布局。

Declared in ZegoExpressDefines.h

属性

whiteboardID

whiteboardID
public unsigned long long whiteboardID

白板 ID。

horizontalRatio

horizontalRatio
public int horizontalRatio

白板原始宽高比(宽),默认宽高比为 16:9。

verticalRatio

verticalRatio
public int verticalRatio

白板原始宽高比(高),默认宽高比为 16:9。

isPPTAnimation

isPPTAnimation
public bool isPPTAnimation

白板是否会加载动态 PPT 文件,默认值为 false。

layout

layout
public ZegoRect layout

白板的布局。

zOrder

zOrder
public int zOrder

白板视图层级。

backgroundColor

backgroundColor
public int backgroundColor

白板的背景颜色。默认是 0xF1F3F400 (灰色)。 颜色值对应 RGBA 为 0xRRGGBBAA,目前不支持设置背景色的透明度,0xRRGGBBAA 中的 AA 为 00 即可。例如:选取 RGB 为 #87CEFA 作为背景色,此参数传 0x87CEFA00。

方法

ZegoMixerWhiteboard

ZegoMixerWhiteboard
Declared in ZegoExpressDefines.h

ZegoNetWorkResourceCache

媒体播放器网络缓存信息

Declared in ZegoExpressDefines.h

属性

time

time
public unsigned int time

已缓存的可播放时长, 单位 ms

size

size
public unsigned int size

已缓存的可播放大小, 单位 byte

ZegoNetworkProbeConfig

网络探测配置

Declared in ZegoExpressDefines.h

属性

enableTraceroute

enableTraceroute
public bool enableTraceroute

是否进行路由跟踪,开启路由跟踪将会显著增加网络探测时间

ZegoNetworkProbeHttpResult

http探测结果

Declared in ZegoExpressDefines.h

属性

errorCode

errorCode
public int errorCode

http 探测错误码,0表示连接正常

requestCostTime

requestCostTime
public unsigned int requestCostTime

http 请求消耗时常,单位毫秒

ZegoNetworkProbeResult

网络探测结果

Declared in ZegoExpressDefines.h

属性

httpProbeResult

httpProbeResult
public ZegoNetworkProbeHttpResult* httpProbeResult

http 探测结果

tcpProbeResult

tcpProbeResult
public ZegoNetworkProbeTcpResult* tcpProbeResult

tcp 探测结果

udpProbeResult

udpProbeResult
public ZegoNetworkProbeUdpResult* udpProbeResult

udp 探测结果

tracerouteResult

tracerouteResult
public ZegoNetworkProbeTracerouteResult* tracerouteResult

路由跟踪结果

ZegoNetworkProbeTcpResult

tcp探测结果

Declared in ZegoExpressDefines.h

属性

errorCode

errorCode
public int errorCode

tcp 探测错误码,0表示连接正常

rtt

rtt
public unsigned int rtt

tcp rtt,单位毫秒

connectCostTime

connectCostTime
public unsigned int connectCostTime

tcp 建立连接消耗时常,单位毫秒

ZegoNetworkProbeTracerouteResult

路由跟踪结果

详情

最多jump 30次。traceroute 结果供参考,不代表最终网络连通结果,优先已http,tcp,udp为准。

Declared in ZegoExpressDefines.h

属性

errorCode

errorCode
public int errorCode

路由跟踪错误码,0表示正常

tracerouteCostTime

tracerouteCostTime
public unsigned int tracerouteCostTime

路由跟踪所消耗的时常,单位毫秒

ZegoNetworkProbeUdpResult

udp探测结果

Declared in ZegoExpressDefines.h

属性

errorCode

errorCode
public int errorCode

udp 探测错误码,0表示连接正常

rtt

rtt
public unsigned int rtt

SDK 向服务器发送 udp 数据并收到回复所消耗的时常,单位毫秒

ZegoNetworkSpeedTestConfig

网络测速配置

Declared in ZegoExpressDefines.h

属性

testUplink
public bool testUplink

是否进行上行测速

expectedUplinkBitrate

expectedUplinkBitrate
public int expectedUplinkBitrate

单位 kbps。用于确定网络上行环境是否适合推送指定码率的数据,建议用推流的码率来测试。

testDownlink
public bool testDownlink

是否进行下行测速

expectedDownlinkBitrate

expectedDownlinkBitrate
public int expectedDownlinkBitrate

单位 kbps。用于确定网络下行环境是否适合拉取指定码率的数据,建议用推流的码率来测试。

ZegoNetworkSpeedTestQuality

网络测速质量

Declared in ZegoExpressDefines.h

属性

connectCost

connectCost
public unsigned int connectCost

连接服务器耗时,单位毫秒。测速过程中如果网络连接断开会自动发起重连,此变量会相应更新。

rtt

rtt
public unsigned int rtt

rtt,单位毫秒

packetLostRate

packetLostRate
public double packetLostRate

丢包率,单位为百分比,0.0 ~ 1.0

quality

quality
public ZegoStreamQualityLevel quality

网络质量,优良中差

ZegoNetworkTimeInfo

网络时间戳信息

Declared in ZegoExpressDefines.h

属性

timestamp

timestamp
public unsigned long long timestamp

同步后的网络时间戳,0表示尚未同步

maxDeviation

maxDeviation
public int maxDeviation

最大误差

ZegoObjectSegmentationConfig

主体分割的配置。

详情

用于在开启主体分割时,配置参数。

Declared in ZegoExpressDefines.h

属性

objectSegmentationType

objectSegmentationType
public ZegoObjectSegmentationType objectSegmentationType

主体分割类型。

backgroundConfig

backgroundConfig
public ZegoBackgroundConfig backgroundConfig

背景配置。

方法

ZegoObjectSegmentationConfig

ZegoObjectSegmentationConfig
public ZegoObjectSegmentationConfig : objectSegmentationType(ZEGO_OBJECT_SEGMENTATION_TYPE_ANY_BACKGROUND)
Declared in ZegoExpressDefines.h

ZegoPerformanceStatus

系统性能监控状态

Declared in ZegoExpressDefines.h

属性

cpuUsageApp

cpuUsageApp
public double cpuUsageApp

当前 App 的 CPU 使用率,取值范围 [0, 1]

cpuUsageSystem

cpuUsageSystem
public double cpuUsageSystem

当前系统的 CPU 使用率,取值范围 [0, 1]

memoryUsageApp

memoryUsageApp
public double memoryUsageApp

当前 App 的运行内存使用率,取值范围 [0, 1]

memoryUsageSystem

memoryUsageSystem
public double memoryUsageSystem

当前系统的运行内存使用率,取值范围 [0, 1]

memoryUsedApp

memoryUsedApp
public double memoryUsedApp

当前 App 的运行内存使用量,单位为 MB

ZegoPlayStreamQuality

拉流质量对象

详情

音视频参数与网络质量等

Declared in ZegoExpressDefines.h

属性

videoRecvFPS

videoRecvFPS
public double videoRecvFPS

视频接收帧率,单位为 f/s

videoDejitterFPS

videoDejitterFPS
public double videoDejitterFPS

视频抗抖动帧率,单位为 f/s (1.17.0 及以上版本支持)

videoDecodeFPS

videoDecodeFPS
public double videoDecodeFPS

视频解码帧率,单位为 f/s

videoRenderFPS

videoRenderFPS
public double videoRenderFPS

视频渲染帧率,单位为 f/s

videoKBPS

videoKBPS
public double videoKBPS

视频码率,单位为 kbps

videoBreakRate

videoBreakRate
public double videoBreakRate

视频卡顿率,单位为(卡顿次数/每10秒)(1.17.0 及以上版本支持)

audioRecvFPS

audioRecvFPS
public double audioRecvFPS

音频接收帧率,单位为 f/s

audioDejitterFPS

audioDejitterFPS
public double audioDejitterFPS

音频抗抖动帧率,单位为 f/s (1.17.0 及以上版本支持)

audioDecodeFPS

audioDecodeFPS
public double audioDecodeFPS

音频解码帧率,单位为 f/s

audioRenderFPS

audioRenderFPS
public double audioRenderFPS

音频渲染帧率,单位为 f/s

audioKBPS

audioKBPS
public double audioKBPS

音频码率,单位为 kbps

audioBreakRate

audioBreakRate
public double audioBreakRate

音频卡顿率,单位为(卡顿次数/每10秒) (1.17.0 及以上版本支持)

mos

mos
public double mos

音频 MOS (平均主观意见分) 评估方法对拉流音频的质量评分,取值范围 [-1, 5],其中 -1 表示未知,[0, 5] 表示有效的评分,分数越高,音频质量越好。评分对应的主观感受请查阅 https://doc-zh.zego.im/article/1074#4_4 (2.16.0 及以上版本支持)

rtt

rtt
public int rtt

服务端至本端的延迟,单位为毫秒

packetLostRate

packetLostRate
public double packetLostRate

丢包率,单位为百分比,0.0 ~ 1.0

peerToPeerDelay

peerToPeerDelay
public int peerToPeerDelay

端到端延迟,单位为毫秒

peerToPeerPacketLostRate

peerToPeerPacketLostRate
public double peerToPeerPacketLostRate

端到端丢包率,单位为百分比,0.0 ~ 1.0

level

level

拉流质量级别

delay

delay
public int delay

本端接收到数据后到播放的延迟,单位为毫秒

avTimestampDiff

avTimestampDiff
public int avTimestampDiff
  • 支持版本:1.19.0 及以上

isHardwareDecode

isHardwareDecode
public bool isHardwareDecode

是否开启硬件解码

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

视频编码格式 (1.17.0 及以上版本支持)

totalRecvBytes

totalRecvBytes
public double totalRecvBytes

已接收的总字节数,包括音频、视频和 SEI 等

audioRecvBytes

audioRecvBytes
public double audioRecvBytes

已接收的音频字节数

videoRecvBytes

videoRecvBytes
public double videoRecvBytes

已接收的视频字节数

audioCumulativeBreakCount

audioCumulativeBreakCount
public unsigned int audioCumulativeBreakCount

累计音频卡顿次数 (2.9.0 及以上版本支持)

audioCumulativeBreakTime

audioCumulativeBreakTime
public unsigned int audioCumulativeBreakTime

累计音频卡顿时长,单位为毫秒 (2.9.0 及以上版本支持)

audioCumulativeBreakRate

audioCumulativeBreakRate
public double audioCumulativeBreakRate

累计音频卡顿率,单位为百分比,0.0 ~ 100.0 (2.9.0 及以上版本支持)

audioCumulativeDecodeTime

audioCumulativeDecodeTime
public unsigned int audioCumulativeDecodeTime

累计音频解码时长,单位为毫秒 (2.9.0 及以上版本支持)

videoCumulativeBreakCount

videoCumulativeBreakCount
public unsigned int videoCumulativeBreakCount

累计视频卡顿次数 (2.9.0 及以上版本支持)

videoCumulativeBreakTime

videoCumulativeBreakTime
public unsigned int videoCumulativeBreakTime

累计视频卡顿时长,单位为毫秒 (2.9.0 及以上版本支持)

videoCumulativeBreakRate

videoCumulativeBreakRate
public double videoCumulativeBreakRate

累计视频卡顿率,单位为百分比,0.0 ~ 1.0 (2.9.0 及以上版本支持)

videoCumulativeDecodeTime

videoCumulativeDecodeTime
public unsigned int videoCumulativeDecodeTime

累计视频解码时长,单位为毫秒 (2.9.0 及以上版本支持)

muteVideo

muteVideo
public int muteVideo

禁用视频, (3.13.0 及以上版本支持)

muteAudio

muteAudio
public int muteAudio

禁用音频, (3.13.0 及以上版本支持)

ZegoPlayerConfig

拉流进阶配置。

详情

配置资源策略模式、CDN 配置以及其他高级配置。

Declared in ZegoExpressDefines.h

属性

resourceMode

resourceMode
public ZegoStreamResourceMode resourceMode

拉流资源策略模式。

cdnConfig

cdnConfig
public ZegoCDNConfig * cdnConfig

拉流的 CDN 配置,若设置后,则按照 URL 拉流而不是按照 streamID 拉流,此后 streamID 仅作为 SDK 内部回调的标识。

roomID

roomID
public std::string roomID

房间 ID。仅在多房间模式下需要填写,即指明这条流需要跟哪个房间绑定。单房间模式下此参数将被忽略。

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

该流的视频编码类型,若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

sourceResourceType

sourceResourceType
public ZegoResourceType sourceResourceType

源流的资源类型,若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

codecTemplateID

codecTemplateID
public int codecTemplateID

预配置的编解码器模板,若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

resourceSwitchMode

resourceSwitchMode
public ZegoStreamResourceSwitchMode resourceSwitchMode

拉流资源切换策略模式,默认为 ZegoStreamResourceSwitchModeDefault

resourceWhenStopPublish

resourceWhenStopPublish
public ZegoStreamResourceType resourceWhenStopPublish

下麦时切换的拉流资源类型,默认为 ZegoStreamResourceTypeDefault。只有用户设置 [resourceMode] 为 ZegoStreamResourceModeDefaut 时,且 [resourceSwitchMode] 为 ZegoStreamResourceSwitchModeDefault 或者 ZegoStreamResourceSwitchModeSwitchToRTC,该设置生效。

adaptiveSwitch

adaptiveSwitch
public int adaptiveSwitch

是否开启流的自适应切换,1 表示开启,0 表示关闭。仅 [resourceMode] 为 ZegoStreamResourceModeOnlyL3 时有效。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

adaptiveTemplateIDList

adaptiveTemplateIDList
public std::vector<int> adaptiveTemplateIDList

流的自适应转码模板ID列表。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

customResourceConfig

customResourceConfig
public ZegoCustomPlayerResourceConfig customResourceConfig

当 [resourceMode] 为 ZegoStreamResourceModeCustom 时的拉流资源类型配置。

switchStreamConfig

switchStreamConfig
public ZegoSwitchPlayingStreamConfig switchStreamConfig

供 [switchPlayingStream] 接口使用的扩展参数。

方法

ZegoPlayerConfig

ZegoPlayerConfig
public ZegoPlayerConfig: resourceMode(ZEGO_STREAM_RESOURCE_MODE_DEFAULT), cdnConfig(nullptr), roomID(""), videoCodecID(ZEGO_VIDEO_CODEC_ID_UNKNOWN), sourceResourceType(ZEGO_RESOURCE_TYPE_RTC), codecTemplateID(0),resourceSwitchMode(ZEGO_STREAM_RESOURCE_SWITCH_MODE_DEFAULT),resourceWhenStopPublish(ZEGO_STREAM_RESOURCE_TYPE_DEFAULT), adaptiveSwitch(0)
Declared in ZegoExpressDefines.h

ZegoPosition

用户位置坐标

Declared in ZegoExpressDefines.h

属性

coordinate

coordinate
public float[3] coordinate

自身在世界坐标系中的坐标,参数是长度为 3 的 float 数组,三个值依次表示前、右、上的坐标值。

motionOrientation

motionOrientation
public ZegoPositionOrientation motionOrientation

运动朝向。

cameraOrientation

cameraOrientation
public ZegoPositionOrientation cameraOrientation

摄像机朝向,用于 3D 音效。

ZegoPositionOrientation

朝向。

Declared in ZegoExpressDefines.h

属性

axisForward

axisForward
public float[3] axisForward

自身坐标系前轴的单位向量,参数是长度为 3 的 float 数组,三个值依次表示前、右、上的坐标值。

axisRight

axisRight
public float[3] axisRight

自身坐标系右轴的单位向量,参数是长度为 3 的 float 数组,三个值依次表示前、右、上的坐标值。

axisUp

axisUp
public float[3] axisUp

自身坐标系上轴的单位向量,参数是长度为 3 的 float 数组,三个值依次表示前、右、上的坐标值。

ZegoProxyInfo

代理信息。

详情

配置代理信息。

Declared in ZegoExpressDefines.h

属性

ip

ip
public std::string ip

ip 地址。本地代理下:由开发者配置的本地代理 ip。云代理下:由 ZEGO 提供的代理 ip(域名、ip 二选一即可)。

port

port
public unsigned int port

port 端口。本地代理下:由开发者配置的本地代理端口。云代理下:由 ZEGO 提供的代理端口。

hostName

hostName
public std::string hostName

域名。本地代理下:由开发者配置的本地代理域名。云代理下:由 ZEGO 提供的代理域名 (域名、ip 二选一即可)。

userName

userName
public std::string userName

代理鉴权用户名。本地代理下:由开发者配置的本地代理的鉴权用户名,如没有可忽略。云代理下:可忽略。

password

password
public std::string password

代理鉴权密码。本地代理下:由开发者配置的本地代理的鉴权密码,如没有可忽略。云代理下:可忽略。

方法

ZegoProxyInfo

ZegoProxyInfo
public ZegoProxyInfo:ip(""), port(0), hostName(""), userName(""), password("")
Declared in ZegoExpressDefines.h

ZegoPublishDualStreamConfig

大小流的配置信息

Declared in ZegoExpressDefines.h

属性

streamType

streamType
public ZegoVideoStreamType streamType

流类型

encodeWidth

encodeWidth
public int encodeWidth

需要调整的视频分辨率宽度

encodeHeight

encodeHeight
public int encodeHeight

需要调整的视频分辨率高度

fps

fps
public int fps

需要调整的视频帧率

bitrate

bitrate
public int bitrate

需要调整的视频码率,单位为 kbps

ZegoPublishStreamQuality

推流质量对象

详情

音视频参数与网络质量等

Declared in ZegoExpressDefines.h

属性

videoCaptureFPS

videoCaptureFPS
public double videoCaptureFPS

视频采集帧率,单位为 f/s

videoEncodeFPS

videoEncodeFPS
public double videoEncodeFPS

视频编码帧率,单位为 f/s

videoSendFPS

videoSendFPS
public double videoSendFPS

视频发送帧率,单位为 f/s

videoKBPS

videoKBPS
public double videoKBPS

视频码率,单位为 kbps

audioCaptureFPS

audioCaptureFPS
public double audioCaptureFPS

音频采集帧率,单位为 f/s

audioSendFPS

audioSendFPS
public double audioSendFPS

音频发送帧率,单位为 f/s

audioKBPS

audioKBPS
public double audioKBPS

音频码率,单位为 kbps

rtt

rtt
public int rtt

本端至服务端的延迟,单位为毫秒

packetLostRate

packetLostRate
public double packetLostRate

丢包率,单位为百分比,0.0 ~ 1.0

level

level

推流质量级别

isHardwareEncode

isHardwareEncode
public bool isHardwareEncode

是否开启硬件编码

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID
  • 支持版本:1.17.0 及以上

totalSendBytes

totalSendBytes
public double totalSendBytes

已发送的总字节数,包括音频、视频和SEI等

audioSendBytes

audioSendBytes
public double audioSendBytes

已发送的音频字节数

videoSendBytes

videoSendBytes
public double videoSendBytes

已发送的视频字节数

ZegoPublisherConfig

推流进阶配置

详情

配置房间 ID

Declared in ZegoExpressDefines.h

属性

roomID

roomID
public std::string roomID

房间 ID, 单房间模式可不传,多房间模式时必须传对应房间的 ID

forceSynchronousNetworkTime

forceSynchronousNetworkTime
public int forceSynchronousNetworkTime

推流时是否同步网络时间,1-同步 0-不同步。且必须与 setStreamAlignmentProperty配合使用。用于在混流服务或拉流端对多条流进行对齐,比如 KTV 的合唱场景。

streamCensorshipMode

streamCensorshipMode
public ZegoStreamCensorshipMode streamCensorshipMode

推流时,审查流的模式。默认不审查。如需要使用此功能,需要联系ZEGO技术支持。

streamCensorFlag

streamCensorFlag
public int streamCensorFlag

审查标记,使用此功能需要联系 ZEGO 技术支持

codecNegotiationType

codecNegotiationType
public ZegoCapabilityNegotiationType codecNegotiationType

编解码能力协商模式。默认不参考能力协商结果。如需要使用此功能,需要联系ZEGO技术支持。

streamTitle

streamTitle
public std::string streamTitle

流标题,长度不超过 255 字节的utf8编码字符串。

方法

ZegoPublisherConfig

ZegoPublisherConfig
public ZegoPublisherConfig: roomID(""), forceSynchronousNetworkTime(0), streamCensorshipMode(ZEGO_STREAM_CENSORSHIP_MODE_NONE), streamCensorFlag(0), codecNegotiationType(ZEGO_CAPABILITY_NEGOTIATION_TYPE_NONE)
Declared in ZegoExpressDefines.h

ZegoPublisherTakeSnapshotConfig

推流画面截图配置。

Declared in ZegoExpressDefines.h

属性

position

position
  • 默认值:。

方法

ZegoPublisherTakeSnapshotConfig

ZegoPublisherTakeSnapshotConfig
Declared in ZegoExpressDefines.h

ZegoReceiveRangeParam

接收范围配置。

Declared in ZegoExpressDefines.h

属性

min

min
public float min

3D 音效具有衰减效果的最小距离值,该值需 >= 0 且 <= max, 默认值为 0。

max

max
public float max

接收的最大范围,该值需 >= min, 默认值为 0。

方法

ZegoReceiveRangeParam

ZegoReceiveRangeParam
Declared in ZegoExpressDefines.h

ZegoRect

视图相关所使用的坐标

Declared in ZegoExpressDefines.h

属性

x

x
public int x

矩形左上角在坐标系 X 轴上的值

y

y
public int y

矩形左上角在坐标系 Y 轴上的值

width

width
public int width

矩形宽度

height

height
public int height

矩形高度

方法

ZegoRect

ZegoRect
public ZegoRect : x(0), y(0), width(0), height(0)
Declared in ZegoExpressDefines.h

ZegoRect

ZegoRect
public ZegoRect(int x, int y, int w, int h) : x(x), y(y), width(w), height(h)
Declared in ZegoExpressDefines.h

ZegoReverbAdvancedParam

音频混响高级参数

详情

开发者可以使用 SDK 的内置预置来改变混响的参数。

Declared in ZegoExpressDefines.h

属性

roomSize

roomSize
public float roomSize

房间大小(百分比),取值范围 [0.0, 100.0],用于控制产生混响模拟的 “房间” 的大小,房间越大,混响越强

reverberance

reverberance
public float reverberance

余响(百分比),取值范围 [0.0, 100.0],用于控制混响的拖尾长度

damping

damping
public float damping

混响阻尼(百分比),取值范围 [0.0, 100.0],控制混响的衰减程度,阻尼越大,衰减越大

wetOnly

wetOnly
public bool wetOnly

只有湿信号。设置只输出混响声音,不叠加原始输入声音,默认是false。

wetGain

wetGain
public float wetGain

湿信号增益(dB),取值范围 [-20.0, 10.0]

dryGain

dryGain
public float dryGain

干信号增益(dB),取值范围 [-20.0, 10.0]

toneLow

toneLow
public float toneLow

低频衰减,默认为不衰减(100%)

toneHigh

toneHigh
public float toneHigh

高频衰减,默认为不衰减(100%)

preDelay

preDelay
public float preDelay

初始延迟时间(ms)。取值范围[0, 200]

stereoWidth

stereoWidth
public float stereoWidth

立体声宽度(百分比),默认值为 0%

方法

ZegoReverbAdvancedParam

ZegoReverbAdvancedParam
public ZegoReverbAdvancedParam : roomSize(.0f), reverberance(.0f), damping(.0f), wetOnly(false), wetGain(.0f), dryGain(.0f), toneLow(100.0f), toneHigh(100.0f), preDelay(.0f), stereoWidth(.0f)
Declared in ZegoExpressDefines.h

ZegoReverbEchoParam

音频混响回声参数

Declared in ZegoExpressDefines.h

属性

inGain

inGain
public float inGain

输入音频信号的增益,取值范围 [0.0, 1.0]

outGain

outGain
public float outGain

输出音频信号的增益,取值范围 [0.0, 1.0]

numDelays

numDelays
public int numDelays

回声数量,取值范围 [0, 7]

delay

delay
public int[7] delay

回声信号分别的延时,单位为毫秒,取值范围 [0, 5000] ms

decay

decay
public float[7] decay

回声信号分别的衰减系数,取值范围 [0.0, 1.0]

ZegoReverbParam

音频混响参数

详情

开发者可以使用 SDK 的内置预置来改变混响的参数。

Declared in ZegoExpressDefines.h

属性

roomSize

roomSize
public float roomSize

房间大小,取值范围 [0.0, 1.0],用于控制产生混响模拟的 “房间” 的大小,房间越大,混响越强

reverberance

reverberance
public float reverberance

余响,取值范围 [0.0, 0.5],用于控制混响的拖尾长度

damping

damping
public float damping

混响阻尼,取值范围 [0.0, 2.0],控制混响的衰减程度,阻尼越大,衰减越大

dryWetRatio

dryWetRatio
public float dryWetRatio

干湿比,取值范围大于等于 0.0,控制混响与直达声和早期反射声之间的比 例,干(dry)的部分默认定为1,当干湿比设为较小时,湿(wet)的比例较大,此时混响较强

ZegoRoiRect

ROI 功能所使用的矩形坐标。

Declared in ZegoExpressDefines.h

属性

x

x
public int x

矩形左上角在坐标系 X 轴上的值

y

y
public int y

矩形左上角在坐标系 Y 轴上的值

width

width
public int width

矩形宽度

height

height
public int height

矩形高度

strength

strength
public int strength

ROI 强度,当前支持的取值范围是 [0, 4],0 为无效果,4 为最强。

ZegoRoomConfig

房间进阶配置

详情

配置房间的最大用户数量、鉴权 token 等

Declared in ZegoExpressDefines.h

属性

maxMemberCount

maxMemberCount
public unsigned int maxMemberCount

房间最大用户数量,传 0 视为不限制,默认无限制

isUserStatusNotify

isUserStatusNotify
public bool isUserStatusNotify

是否开启用户进出房间回调通知 [onRoomUserUpdate],默认关闭。若开发者需要使用 ZEGO 房间用户广播通知,请确保每个登录的用户都将此标记设置为true

token

token
public std::string token

由开发者业务服务器下发的 token,用以保证安全性,生成规则请参考 使用 Token 鉴权,默认为空字符串,即不鉴权。2.17.0 及以上版本如果调用 [createEngine] 接口创建引擎时未传入appSign,或者appSign为空,则登录房间时必须设置此参数用于鉴权。

capabilityNegotiationTypes

capabilityNegotiationTypes
public unsigned int capabilityNegotiationTypes

能力协商使能掩码标记位,参考 [ZegoRoomCapabilityNegotiationTypesBitMask] 枚举;当转换为二进制时,0b01 即 1 << 0 表示开启房间内全员协商, 0b10 即 1 << 1 表示开启麦上用户协商。掩码可组合以使不同的协商方式同时开启。

roomType

roomType
public unsigned int roomType

房间类型,默认传0

方法

ZegoRoomConfig

ZegoRoomConfig
public ZegoRoomConfig:maxMemberCount(0), isUserStatusNotify(false), token(""), capabilityNegotiationTypes(0), roomType(0)
Declared in ZegoExpressDefines.h

ZegoRoomExtraInfo

房间附加消息

Declared in ZegoExpressDefines.h

属性

key

key
public std::string key

房间附加消息的键

value

value
public std::string value

房间附加消息的值

updateUser

updateUser
public ZegoUser updateUser

更新房间附加消息的用户。请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。

updateTime

updateTime
public unsigned long long updateTime

房间附加消息的更新时间,UNIX 时间戳,单位为毫秒

ZegoRoomRecvTransparentMessage

收到房间的透传消息

详情

房间透传消息,包括消息内容,发送用户,发送类型,发送模式。

Declared in ZegoExpressDefines.h

属性

sendUser

sendUser
public ZegoUser sendUser

发送该消息的用户

content

content
public std::string content

收到的内容

ZegoRoomSendTransparentMessage

房间透传消息

详情

房间透传消息,包括房间id, 消息内容,发送用户,发送类型,发送模式,超时时间。

Declared in ZegoExpressDefines.h

属性

sendMode

sendMode

发送模式

sendType

sendType

发送类型

content

content
public std::string content

发送的内容

recvUserList

recvUserList
public std::vector<ZegoUser> recvUserList

消息接收者列表,当sendType 指定为ZegoRoomTransparentMessageModeOnlyServer 可不填。当指定为 ZegoRoomTransparentMessageModeClientAndServer 或 ZegoRoomTransparentMessageModeOnlyClient 时,为空将发送给房间所有在线用户。

timeOut

timeOut
public int timeOut

消息的发送超时时间,单位s, 默认10s。

方法

ZegoRoomSendTransparentMessage

ZegoRoomSendTransparentMessage
public ZegoRoomSendTransparentMessage:sendMode(ZEGO_ROOM_TRANSPARENT_MESSAGE_MODE_ONLY_CLIENT), sendType(ZEGO_ROOM_TRANSPARENT_MESSAGE_NORMAL), timeOut(10)
Declared in ZegoExpressDefines.h

ZegoRoomStreamList

房间内的流列表

详情

房间内的流列表

Declared in ZegoExpressDefines.h

属性

publishStreamList

publishStreamList
public std::vector<ZegoStream> publishStreamList

推流列表。

playStreamList

playStreamList
public std::vector<ZegoStream> playStreamList

拉流列表。

ZegoRtcStatsInfo

RTC 网络统计信息

Declared in ZegoExpressDefines.h

属性

totalTxBandwidth

totalTxBandwidth
public double totalTxBandwidth

上行总带宽,单位kbps

avgTxRtt

avgTxRtt
public unsigned int avgTxRtt

上行平均 rtt,单位毫秒

avgTxPacketLostRate

avgTxPacketLostRate
public double avgTxPacketLostRate

上行平均丢包率,单位为百分比,0.0 ~ 1.0

totalRxBandwidth

totalRxBandwidth
public double totalRxBandwidth

下行总带宽,单位kbps

avgRxRtt

avgRxRtt
public unsigned int avgRxRtt

下行平均 rtt,单位毫秒

avgRxPacketLostRate

avgRxPacketLostRate
public double avgRxPacketLostRate

下行平均丢包率,单位为百分比,0.0 ~ 1.0

avgPeerToPeerDelay

avgPeerToPeerDelay
public unsigned int avgPeerToPeerDelay

平均端到端延迟,单位毫秒

ZegoSEIConfig

SEI 配置

详情

用于设置媒体增强补充信息的相关配置。

Declared in ZegoExpressDefines.h

属性

type

type
public ZegoSEIType type

SEI 类型

方法

ZegoSEIConfig

ZegoSEIConfig
public ZegoSEIConfig(ZegoSEIType type = ZEGO_SEI_TYPE_ZEGO_DEFINED) : type(type)
Declared in ZegoExpressDefines.h

ZegoSceneConfig

场景配置。

Declared in ZegoExpressDefines.h

属性

channelCount

channelCount
public unsigned int channelCount

state_channel 通道数。

方法

ZegoSceneConfig

ZegoSceneConfig
Declared in ZegoExpressDefines.h

ZegoSceneParam

场景参数。

Declared in ZegoExpressDefines.h

属性

user

user
public ZegoUser user

用户对象实例,配置用户 ID、用户名。 注意用户 ID 需要在相同的 appID 下全局唯一,否则会出现后登录的用户踢掉先登录的用户的情况。

sceneID

sceneID
public long long sceneID

场景 ID。

templateID

templateID
public unsigned int templateID

场景模板 ID。

position

position
public ZegoPosition position

用户位置

broadcastMode

broadcastMode
public ZegoBroadcastMode broadcastMode
  • 默认值:ALL。

token

token
public std::string token

鉴权 token。

方法

ZegoSceneParam

ZegoSceneParam
Declared in ZegoExpressDefines.h

ZegoScenePlayerConfig

场景拉流进阶配置。

Declared in ZegoExpressDefines.h

属性

rangeSceneHandle

rangeSceneHandle
public int rangeSceneHandle

范围场景句柄,通过 ZegoRangeScene 对象的 [getHandle] 获取。

resourceMode

resourceMode
public ZegoStreamResourceMode resourceMode

拉流资源策略模式。

cdnConfig

cdnConfig
public ZegoCDNConfig * cdnConfig

拉流的 CDN 配置,若设置后,则按照 URL 拉流而不是按照 streamID 拉流,此后 streamID 仅作为 SDK 内部回调的标识。

方法

ZegoScenePlayerConfig

ZegoScenePlayerConfig
public ZegoScenePlayerConfig: rangeSceneHandle(-1), resourceMode(ZEGO_STREAM_RESOURCE_MODE_DEFAULT), cdnConfig(nullptr)
Declared in ZegoExpressDefines.h

ZegoScenePublisherConfig

场景推流进阶配置。

Declared in ZegoExpressDefines.h

属性

rangeSceneHandle

rangeSceneHandle
public int rangeSceneHandle

范围场景句柄,通过 ZegoRangeScene 对象的 [getHandle] 获取。

方法

ZegoScenePublisherConfig

ZegoScenePublisherConfig
public ZegoScenePublisherConfig: rangeSceneHandle(-1)
Declared in ZegoExpressDefines.h

ZegoSceneStreamConfig

场景推拉流模式。

Declared in ZegoExpressDefines.h

属性

enablePlayInRange

enablePlayInRange
public bool enablePlayInRange

是否允许拉范围内的流。

enablePublishToWorld

enablePublishToWorld
public bool enablePublishToWorld

是否允许推流到世界。

方法

ZegoSceneStreamConfig

ZegoSceneStreamConfig
Declared in ZegoExpressDefines.h

ZegoScreenCaptureConfig

屏幕采集配置参数。

Declared in ZegoExpressDefines.h

属性

captureVideo

captureVideo
public bool captureVideo

屏幕共享时是否采集视频。默认为 true。

captureAudio

captureAudio
public bool captureAudio

屏幕共享时是否采集音频。默认为 true。

microphoneVolume

microphoneVolume
public unsigned int microphoneVolume

设置屏幕录制时 Microphone 音频音量。范围为 0 ~ 200,默认为 100。(仅适用 iOS 平台)

applicationVolume

applicationVolume
public unsigned int applicationVolume

设置屏幕录制时 Application 音频音量。范围为 0 ~ 200,默认为 100。(适用于 iOS 和 Android 平台)

audioParam

audioParam
public ZegoAudioFrameParam audioParam

设置屏幕录制时音频采集参数。(仅适用 Android 平台)

cropRect

cropRect
public ZegoRect cropRect

设置屏幕录制时裁剪矩形,裁剪矩形必须被原始数据的矩形包含,单位为像素。(仅适用 iOS/Android 平台)

orientation

orientation
public ZegoScreenCaptureOrientation orientation

设置屏幕录制时采集画面的朝向,将会对采集画面做固定朝向。(仅适用 iOS/Android 平台)

muteExtensMicrophone

muteExtensMicrophone
public bool muteExtensMicrophone

设置是否屏蔽扩展进程的麦克风的声音,默认为 false。(仅适用于 iOS 平台)

方法

ZegoScreenCaptureConfig

ZegoScreenCaptureConfig
Declared in ZegoExpressDefines.h

ZegoScreenCaptureSourceInfo

屏幕采集源信息。

Declared in ZegoExpressDefines.h

属性

sourceType

sourceType
public ZegoScreenCaptureSourceType sourceType

屏幕采集的目标类型。(仅适用于桌面端)

sourceID

sourceID
public void * sourceID

采集源的 ID。

sourceName

sourceName
public std::string sourceName

采集源名称(采用 UTF8 编码)。

thumbnailImage

thumbnailImage
public ZegoImageBuffer thumbnailImage

采集窗口的缩略图。

iconImage

iconImage
public ZegoImageBuffer iconImage

图标的图像内容。

ZegoSoundLevelConfig

启动声浪监控的配置

详情

用于 startSoundLevelMonitor 函数,其中的 enableVAD 参数用于设置声浪回调是否检测 VAD,开启后结果将从 [onCapturedSoundLevelInfoUpdate] 和 [onRemoteSoundLevelInfoUpdate] 回调中体现。

  • 业务场景:开发者需要判断用户说话音量是否太小时,可开启 VAD 声音检测。
  • 支持版本:2.10.0 及以上。
  • 注意事项:VAD 算法有性能开销,建议按需设置。

Declared in ZegoExpressDefines.h

属性

millisecond

millisecond
public unsigned int millisecond

声浪的监控时间周期,单位为毫秒,取值范围 [100, 3000]。默认 100 ms。

enableVAD

enableVAD
public bool enableVAD

设置声浪回调是否包含 VAD 检测结果。

ZegoSoundLevelInfo

声浪信息对象

Declared in ZegoExpressDefines.h

属性

soundLevel

soundLevel
public float soundLevel

音浪值

vad

vad
public int vad

StreamID 对应的流是否包含声音,0: 表示噪声,1: 表示正常声音;调用 [startSoundLevelMonitor] 时设置的 ZegoSoundLevelConfig 配置中的 enableVAD 参数设为 true 后此值才有效。

ZegoStream

音视频流对象

详情

标识一条音视频流

Declared in ZegoExpressDefines.h

属性

user

user
public ZegoUser user

用户对象实例。请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。

streamID

streamID
public std::string streamID
  • 注意事项:不可以包含 URL 关键字,否则推拉流失败。仅支持数字,英文字符 和 '-', '_'。

extraInfo

extraInfo
public std::string extraInfo

流附加信息

ZegoStreamRelayCDNInfo

转推 CDN 信息

详情

包括转推 CDN 的 URL、转推状态等

Declared in ZegoExpressDefines.h

属性

url

url
public std::string url

CDN 推流的 URL

state

state

转推状态

updateReason

updateReason
public ZegoStreamRelayCDNUpdateReason updateReason

转推状态变更的原因

stateTime

stateTime
public unsigned long long stateTime

状态发生的时间,UNIX 时间戳,单位为毫秒

ZegoSwitchPlayingStreamConfig

供 [switchPlayingStream] 接口使用的扩展参数。

详情

供 [switchPlayingStream] 接口使用的扩展参数。

Declared in ZegoExpressDefines.h

属性

switchType

switchType
public ZegoSwitchPlayingStreamType switchType

切换拉流类型。

方法

ZegoSwitchPlayingStreamConfig

ZegoSwitchPlayingStreamConfig
public ZegoSwitchPlayingStreamConfig: switchType(ZEGO_SWITCH_PLAYING_STREAM_TYPE_DEFAULT)
Declared in ZegoExpressDefines.h

ZegoTeamParam

小队参数。

Declared in ZegoExpressDefines.h

属性

teamID

teamID
public unsigned int teamID

小队 ID。

方法

ZegoTeamParam

ZegoTeamParam
Declared in ZegoExpressDefines.h

ZegoTestNetworkConnectivityResult

网络连通性测试结果

Declared in ZegoExpressDefines.h

属性

connectCost

connectCost
public unsigned int connectCost

连接耗时

ZegoTrafficControlInfo

外部编码的流控信息

Declared in ZegoExpressDefines.h

属性

width

width
public int width

需要调整的视频分辨率宽度

height

height
public int height

需要调整的视频分辨率高度

fps

fps
public int fps

需要调整的视频帧率

bitrate

bitrate
public int bitrate

需要调整的视频码率,单位为 kbps

ZegoUser

用户对象

详情

配置用户 ID 和用户名,用于标识房间内的用户。 注意 userID 在同一个 appID 下需唯一,否则登录房间时会出现互踢的情况。 强烈建议 userID 与业务 APP 的用户 ID 一一对应,即一个 userID 与一个真实用户是固定且唯一的,而不应该是以随机的 userID 的方式传给 SDK 的方式。因为唯一且固定的 userID 可以让 ZEGO 技术人员快速定位线上问题。

Declared in ZegoExpressDefines.h

属性

userID

userID
public std::string userID
  • 隐私保护声明:请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
  • 注意事项:仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', '\'。如果需要与 Web SDK 互通,请不要使用 '%'。

userName

userName
public std::string userName

用户名,最大长度不超过 256 字节的utf8编码字符串。请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。

方法

ZegoUser

ZegoUser
public ZegoUser
Declared in ZegoExpressDefines.h

ZegoUser

ZegoUser
public ZegoUser(std::string userID, std::string userName):userID(userID),userName(userName)
Declared in ZegoExpressDefines.h

ZegoVideoConfig

视频配置

详情

配置码率、帧率、分辨率等推流用到的参数。 开发者应该注意的是,移动端与桌面端的宽高分辨率是相反的,例如,360p,移动端的分辨率为 360x640,而桌面端为 640x360。 使用外部采集时,RTC的采集和编码分辨率不能设置为0*0,不然会导致整个引擎生命周期里的推流,都没有视频数据。

Declared in ZegoExpressDefines.h

属性

captureWidth

captureWidth
public int captureWidth

采集分辨率宽度,控制摄像头图像采集的宽度。SDK 要求设置此成员为偶数。仅摄像头启动前且没有使用自定义视频采集时,设置有效。出于性能考虑,SDK 在采集摄像头画面后、渲染预览画面之前,就将视频帧缩放为编码分辨率,因此预览画面的分辨率是编码分辨率,如果您需要预览画面的分辨率为此值,请先调用 [setCapturePipelineScaleMode] 将采集缩放模式改为 [Post]

captureHeight

captureHeight
public int captureHeight

采集分辨率高度,控制摄像头图像采集的高度。SDK 要求设置此成员为偶数。仅摄像头启动前且没有使用自定义视频采集时,设置有效。出于性能考虑,SDK 在采集摄像头画面后、渲染预览画面之前,就将视频帧缩放为编码分辨率,因此预览画面的分辨率是编码分辨率,如果您需要预览画面的分辨率为此值,请先调用 [setCapturePipelineScaleMode] 将采集缩放模式改为 [Post]

encodeWidth

encodeWidth
public int encodeWidth

编码分辨率宽度,控制编码器编码推流的图像宽度。SDK 要求设置此成员为偶数。推流前后设置均可生效

encodeHeight

encodeHeight
public int encodeHeight

编码分辨率高度,控制编码器编码推流的图像高度。SDK 要求设置此成员为偶数。推流前后设置均可生效

fps

fps
public int fps

帧率,控制摄像头采集帧率以及编码器编码帧率的大小。推流端设置60帧,拉流端生效需联系技术支持

bitrate

bitrate
public int bitrate

码率,单位为 kbps。推流前后设置均可生效。SDK 会根据开发者选择的场景,自动设置适配该场景的码率。若开发者手动设置的码率超出合理范围,SDK会自动按照合理区间处理码率。如因业务需要配置高码率,请联系 ZEGO 商务。

codecID

codecID
public ZegoVideoCodecID codecID

要使用的编码器,默认为 default。仅在推流前设置生效

keyFrameInterval

keyFrameInterval
public int keyFrameInterval

视频关键帧间隔,单位秒。

  • 是否必填:否。
  • 默认值:2秒。
  • 取值范围:[2, 5]。
  • 注意事项:仅在推流前设置有效。

方法

ZegoVideoConfig

ZegoVideoConfig
public ZegoVideoConfig(ZegoVideoConfigPreset preset = ZEGO_VIDEO_CONFIG_PRESET_360P)
Declared in ZegoExpressDefines.h

ZegoVideoEncodedFrameParam

编码视频帧的参数对象

详情

包括视频帧的格式、宽高等

Declared in ZegoExpressDefines.h

属性

format

format

视频帧的格式

isKeyFrame

isKeyFrame
public bool isKeyFrame

是否为关键帧

rotation

rotation
public int rotation

视频帧的逆时针旋转角度

width

width
public int width

视频帧的画面宽

height

height
public int height

视频帧的画面高

SEIData

SEIData
public const unsigned char* SEIData

SEI 数据 (可选,若不需要传输则设置为空。不推荐使用,推荐使用 [sendSEI] 替代 )。当 format 设置为 [AVCC] 或者 [AnnexB] 时,此成员有效

SEIDataLength

SEIDataLength
public unsigned int SEIDataLength

SEI 数据的长度 (可选,若不需要传输则设置为 0 。不推荐使用,推荐使用 [sendSEI] 替代 )。当 format 设置为 [AVCC] 或者 [AnnexB] 时,此成员有效

isExternalClock

isExternalClock
public bool isExternalClock

自定义视频采集时,是否由开发者自行控制外部时间戳进行音画同步。默认为 false。当设置为 false 时,SDK 会结合音频帧和视频帧的外部时间戳进行调整,以保证音视频同步。当设置为 true 时,SDK 不会调整外部时间戳,由开发者自行结合音频帧和视频帧的外部时间戳进行调整,以保证音视频同步。

方法

ZegoVideoEncodedFrameParam

ZegoVideoEncodedFrameParam
public ZegoVideoEncodedFrameParam:format(ZEGO_VIDEO_ENCODED_FRAME_FORMAT_AVCC), isKeyFrame(false), rotation(0), width(0), height(0), SEIData(nullptr), SEIDataLength(0), isExternalClock(false)
Declared in ZegoExpressDefines.h

ZegoVideoFrameParam

视频帧的参数对象

详情

包括视频帧的格式、宽高等

Declared in ZegoExpressDefines.h

属性

format

format
public ZegoVideoFrameFormat format

视频帧的格式

strides

strides
public int[4] strides

每个平面上单行像素的字节数(此参数为 int 数组,数组长度为4,BGRA 只需考虑 strides[0],I420 需考虑 strides[0,1,2])

width

width
public int width

视频帧的画面宽。自定义视频采集时,满足32位对齐的视频帧可获得获取最大性能,以 BGRA 为例,即期望 width * 4 是 32 的整数倍。

height

height
public int height

视频帧的画面高

rotation

rotation
public int rotation

视频帧的旋转角度,SDK 以顺时针方向旋转

ZegoVocalRangeParam

发声范围配置。

Declared in ZegoExpressDefines.h

属性

min

min
public float min

3D 音效具有衰减效果的最小距离值,该值需 >= 0 且 <= max, 默认值为 0。

max

max
public float max

发声的最大范围,该值需 >= min, 默认值为 0。

方法

ZegoVocalRangeParam

ZegoVocalRangeParam
Declared in ZegoExpressDefines.h

ZegoVoiceChangerParam

变声器参数

详情

开发者可以使用 SDK 的内置预置来改变变声器的参数。

Declared in ZegoExpressDefines.h

属性

pitch

pitch
public float pitch

音调参数,取值范围 [-12.0, 12.0],数值越大声音越尖,设为 0.0 即关闭变声器。注意在 2.18.0 及更老版本上,取值范围为 [-8.0, 8.0]。

ZegoWatermark

水印对象

详情

配置一个水印的图片 URL 以及该水印在画面中的大小方位。

Declared in ZegoExpressDefines.h

属性

imageURL

imageURL
public std::string imageURL

水印图片路径。支持本地文件绝对路径 (file://xxx)。 格式支持 png、jpg。最大长度要小于 512 字节。

layout

layout
public ZegoRect layout

水印图片的大小方位

方法

ZegoWatermark

ZegoWatermark
Declared in ZegoExpressDefines.h

ZegoWatermark

ZegoWatermark
public ZegoWatermark(std::string imageURL, ZegoRect layout) :imageURL(imageURL), layout(layout)
Declared in ZegoExpressDefines.h

Previous

Interface

Next

Enum

当前页

返回到顶部