CloudHub 文档中心
下载中心 文档中心

RTS 实时流直播


CloudHubRTS CPP

结构体

DOWN_STREAM_CONFIGS

变量类型描述
delay_time_msint延时时间

BeautyOptions

变量类型描述
lighteningContrastLevelLIGHTENING_CONTRAST_LEVEL亮度明暗对比度,与 lighteningLevel 参数搭配使用。取值越大,明暗对比越强烈:
LIGHTENING_CONTRAST_LOW(0) 低对比度
LIGHTENING_CONTRAST_NORMAL(1)(默认)正常对比度
LIGHTENING_CONTRAST_HIGH(2) 高对比度
lighteningLevelfloat亮度,取值范围为 [0.0, 1.0],其中 0.0 表示原始亮度,默认值为 0.7。可用来实现美白等视觉效果
smoothnessLevelfloat平滑度,取值范围为 [0.0, 1.0],其中 0.0 表示原始平滑等级,默认值为 0.5。可用来实现祛痘、磨皮等视觉效果
rednessLevelfloat红色度,取值范围为 [0.0, 1.0],其中 0.0 表示原始红色度,默认值为 0.1。可用来实现红润肤色等视觉效果

VideoEffectOptions

变量类型描述
whitenLevelfloat美白,取值范围为 [0.0, 1.0],其中 0.0 表示原始效果,默认值为 0.5。可用来实现美白等视觉效果
smoothLevelfloat磨皮,取值范围为 [0.0, 1.0],其中 0.0 表示原始效果,默认值为 0.5。可用来实现祛痘、磨皮等视觉效果
sharpLevelfloat锐化,取值范围为 [0.0, 1.0],其中 0.0 表示原始效果,默认值为 0.5。可用来实现锐化等视觉效果
thinFaceLevelfloat瘦脸,取值范围为 [0.0, 1.0],其中 0.0 表示原始效果,默认值为 0.5。可用来实现瘦脸等视觉效果
bigEyesLevelfloat大眼,取值范围为 [0.0, 1.0],其中 0.0 表示原始效果,默认值为 0.5。可用来实现大眼等视觉效果
stickerVIDEO_STICKER_TYPE贴纸名称,现有10套贴纸

RtcValidWindow

变量类型描述
idintptr_t
titlechar[]

ScreenCaptureParameters

变量类型描述
extWindowIDintptr_t窗口ID
frameRateint共享区域的帧速率(fps)
bitrateint共享区域的比特率(Kbps)
captureMouseCursorbool设置是否捕获鼠标以进行屏幕共享
true :捕获鼠标,(默认)
false:不捕获鼠标

VideoFrame

变量类型描述
widthint视频帧宽度
heightint视频帧高度
yStrideintY数据缓冲区的跨度
uStrideintU数据缓冲区的跨度
vStrideintV数据缓冲区的跨度
yBuffervoid*Y数据缓冲区
uBuffervoid*U数据缓冲区
vBuffervoid*V数据缓冲区
rotationint视频的旋转角度(0、90、180、270)

RtcStats

变量类型描述
durationint通话时长,以总计值表示
txBytesint传输的总字节数,用一个合计值表示
rxBytesint接收到的字节总数,以一个聚合值表示。
txAudioBytesint已发送的音频字节总数(字节),以总计值表示
txVideoBytesint已发送的视频字节总数(字节),以总计值表示
rxAudioBytesint网络对策之前接收到的音频字节总数(字节),以总计值表示
rxVideoBytesint接收到的视频字节总数(字节),以总计值表示
txKBitRateshort传输比特率(Kbps),由瞬时值表示
rxKBitRateshort接收比特率(Kbps),由瞬时值表示
rxAudioKBitRateshort音频接收比特率(Kbps),由瞬时值表示
txAudioKBitRateshort音频传输比特率(Kbps),由瞬时值表示
rxVideoKBitRateshort视频接收比特率(Kbps),由瞬时值表示
txVideoKBitRateshort视频传输比特率(Kbps),由瞬时值表示
lastmileDelayshort服务器延迟(毫秒)
txPacketLossRateshort从本地客户端到cloudhub的边缘服务器的丢包率(%)
rxPacketLossRateshort从cloudhub的边缘服务器到本地客户端的数据包丢失率(%)
cpuTotalUsagedouble系统CPU使用率(%)

AudioFrame

变量类型描述
samplesint此帧中的样本数
bytesPerSampleint每个样本的字节数:PCM16为2
channelsint通道数(如果是立体声,则数据是交错的)
samplesPerSecint采样率
formatint格式
buffervoid*缓冲

RTSClientMixingSourceStream

变量类型描述
streamIDchar原视频IUpStream的流ID,可通过IUpStream::getStreamID获得
xint视频帧相对于左上角的水平位置(像素)
yint视频帧相对于左上角的垂直位置(像素)
widthint视频帧的宽度(像素)
heightint视频帧的高度(像素)
zOrderint视频帧的层位置, 取值范围是0到100, z值越小越底层
fitbool视频显示模式
true:均匀缩放视频,直到其尺寸之一适合边界为止(缩放以适合)。由于宽高比差异而未填充的区域将被灰色填充
false:均匀缩放视频,直到其填充可见边界(已裁剪)。视频的一维可能包含剪辑的内容

RTSClientMixingConfig

变量类型描述
destVideoWidthint目标视频帧的宽度(像素)
destVideoHeightint目标视频帧的高度(像素)
destVideoFramerateint目标视频帧的的帧率(fps)
destBackgroundColorint目标视频帧的背景颜色, 缺省值-1
destAudioChannelsint目标音频的通道数
sourceStreamCountint混流源码流的数量
sourceStreamsRTSClientMixingSourceStream混流源码流
mixingExtraInfochar保留字段

注:destVideoWidth 和 destVideoHeight, 这两个值同时=0,代表没有视频。这两个值 >0,但有效值的范围在[16-1920] 代表有视频;否则会返错。

RTSServerMixingSourceStream

变量类型描述
urlchar混流源码流的url
xint视频帧相对于左上角的水平位置(像素)
yint视频帧相对于左上角的垂直位置(像素)
widthint视频帧的宽度(像素)
heightint视频帧的高度(像素)
zOrderint视频帧的层位置, 取值范围是0到100, z值越小越底层
fitbool视频显示模式
true:均匀缩放视频,直到其尺寸之一适合边界为止(缩放以适合)。由于宽高比差异而未填充的区域将被灰色填充
false:均匀缩放视频,直到其填充可见边界(已裁剪)。视频的一维可能包含剪辑的内容

注:url的格式必须遵循:RTS 推流地址的拼装

RTSServerMixingConfig

变量类型描述
destUrlchar目标url
destVideoWidthint目标视频帧的宽度(像素)
destVideoHeightint目标视频帧的高度(像素)
destVideoBandWidthKBPSint目标视频帧的比特率(KBPS)
destVideoFramerateint目标视频帧的的帧率(fps)
destBackgroundColorint目标视频帧的背景颜色, 缺省值-1
destAudioBandWidthKBPSint目标音频帧的比特率(KBPS)
destAudioChannelsint目标音频的通道数
sourceStreamCountint混流源码流的数量
sourceStreamsRTSServerMixingSourceStream混流源码流
mixingExtraInfochar保留字段

注:destVideoWidth 和 destVideoHeight, 这两个值同时=0,代表没有视频。这两个值 >0,但有效值的范围在[16-1920] 代表有视频;否则会返错。

注:destUrl的格式必须遵循:RTS 服务器混流的输出码流地址的拼装

destVideoBandWidthKBPS 混流视频最大带宽上限表

分辨率帧率最大带宽(kbps)备注
320*240fps <= 30256分辨率 <= 320*240
640*480fps <= 30768320*240 < 分辨率 <= 640*480
1280*720fps <= 301536640*480 < 分辨率 <= 1280*720
1920*1080fps <= 3020481280*720< 分辨率 <= 1920*1080