华为云用户手册

  • 辅流管理 表5 辅流管理接口 接口 描述 startRemoteAuxiliaryStreamView 开启辅流渲染视图(发起辅流选看) stopRemoteAuxiliaryStreamView 关闭辅流渲染视图(停止辅流选看) updateRemoteAuxiliaryStreamRenderMode 设置辅流视图渲染模式,镜像模式 setRemoteAuxiliaryStreamViewRotation 设置辅流视图角度 setAuxiliaryVideoEncoderConfig 设置辅流编码能力 setAuxiliaryVideoEncodeSmooth 设置是否开启辅流的流畅度优先 pushAuxExternalVideoFrame 推送辅流数据
  • 视频管理 表4 视频管理接口 接口 描述 enableLocalVideo 设置是否开启摄像头采集视频 setVideoEncoderConfig 设置视频编码参数 enableSmallVideoStream 大小流模式设置是否开启小流并设置小流编码参数 startLocalPreview 开启本地预览 stopLocalPreview 关闭本地预览 setupLocalVideo 设置/取消本地预览视图 updateLocalRenderMode 设置本地视频显示模式和镜像模式 setupRemoteView 设置远端流视图 updateRemoteRenderMode 设置远端视图显示模式,镜像模式 setRemoteVideoStreamType 设置选看指定用户的大流或者小流 setPriorRemoteVideoStreamType 设置默认选看远端的大流或者小流 pushLocalVideo 设置是否发送本地视频流 pullRemoteVideo 订阅或取消订阅远端某个用户视频流 pullAllRemoteVideo 订阅或取消订阅全部远端用户视频流 startRemoteStreamView 设置远端用户渲染视图(发起选看-旧接口) stopRemoteStreamView 关闭远端用户的渲染视图(停止选看) setRemoteVideoAdjustResolution 设置远端下行视频流的分辨率自适应 setVideoEncoderMirror 设置视频编码镜像模式 startPublishStream 开始旁路推流 updateTransCoding 更新旁路推流 stopPublishStream 停止旁路推流 startAllRemoteView 批量设置远端流视图 appendLocalView 设置本地视频另一个窗口显示 appendRemoteView 设置远端视频另一个窗口显示
  • 房间功能 表2 房间功能接口 接口 描述 joinRoom 加入房间 changeUserRole 设置用户的角色,切换角色时使用 renewAuthorization 签名更新 leaveRoom 离开房间 changeUserName 设置用户自己的昵称 createConnection 创建 跨房(HWRtcConnection)对象,跨房前需先创建连接 addMultiRoomMediaRelay 添加单个跨房 removeMultiRoomMediaRelay 删除单个跨房 stopMultiRoomMediaRelay 停止所有跨房
  • 音频管理 表3 音频管理接口 接口 描述 muteLocalAudio 设置是否发送本地音频流 enableLocalAudioStream 设置是否开启麦克风采集音频 muteRemoteAudio 订阅或取消订阅远端某个用户音频流 muteAllRemoteAudio 订阅或取消订阅全部远端用户音频流 setVolumeNotifyInterval 设置最大音量上报频率 adjustRecordingVolume 设置麦克风采集的音量(0-100) adjustPlaybackVolume 调整扬声器播放的音量(0-100) setShareComputerSound 共享声音 (只支持macOS) sendAudioSeiMsg 发送音频SEI消息 setDefaultSpeakerModel 设置默认的声音播放模式,在房间外调用 setAudioFrameRecordParameters 设置音频采集回调参数 setAudioConfig 设置音频场景
  • 初始化等基础接口 表1 初始化等基础接口 接口 描述 sharedEngine 创建连麦引擎实例 destroy 注销引擎 initWithConfig 初始化引擎配置信息 logUpload 上传日志 setEnableRtcStats 打点开关 getVersion 获取SDK版本号 setEncrytionParam 设置端到端加密模式 setAccessResourceType 设置接入的环境 setNetworkBandwidth 设置网络带宽限制
  • setLogLevel (static) setLogLevel(level: LogLevel): void 【功能说明】 设置日志输出等级。默认输出info等级日志。 【请求参数】 level:必选,LogLevel类型,设置日志级别。 LogLevel表示日志级别,枚举取值如下: none:string类型,表示关闭SDK日志打印。 error:string类型,表示开启SDK错误日志级别。 warn:string类型,表示开启SDK警告日志级别。 info:string类型,表示开启SDK信息日志级别。 debug:string类型,表示开启SDK调试日志级别。 【返回参数】 无
  • createStream (static) createStream(config: StreamConfig): Stream 【功能说明】 创建本地流对象。 【请求参数】 config:必选,StreamConfig类型,指定创建流的参数。 StreamConfig 定义为:{ screen:可选,boolean类型,如果为true表示该流对象采集的是辅流音视频。辅流即共享屏幕的流。默认值为false,即该流对象采集的是主流音视频。 video:可选,boolean类型,指定是否采集主流的视频,主流即摄像头的流。默认值为false。 audio:可选,boolean类型,指定是否采集主流的音频。默认值为false。screen为false的时候该参数有效。 microphoneId:可选,string类型,在audio为true的时候有效,表示采集音频的源麦克风设备Id。如果不传,系统自动设置默认值。 cameraId:可选,string类型,在video为true的时候有效,表示采集视频的摄像头设备Id。如果不传,系统自动设置默认值。 facingMode:可选,string类型,在video为true的时候有效,user表示前置摄像头,environment表示后置摄像头。 screenAudio:可选,boolean类型,是否包含屏幕共享背景音。默认值为false。该功能仅支持Windows平台Chrome浏览器 74及以上版本。该字段为1.4.0版本新增。 audioSource:可选,MediaStreamTrack类型,表示输入音轨对象。通过指定Track设置音频。MediaStreamTrack为Web API基本接口。 videoSource:可选,MediaStreamTrack类型,表示输入视轨对象。通过指定Track设置主流视频。MediaStreamTrack为Web API基本接口。 mirror:可选,boolean类型,表示主流的本地视频是否镜像。默认值为false。 userId:可选,string类型,表示该流归属的userId。 } 【返回参数】 Stream:流对象。 在采集主流有两种方式: 通过“audioSource”和“videoSource”设置音频和视频主流。这种模式下不支持大小流。 通过“audio/microphoneId”和“video/cameraId/facingMode”设置音频和视频主流。 如果未指定任何的音频源和视频源,则创建的流对象不包含音频流和视频流,无法播放。 如果采集视频,同一个Stream对象不能同时采集主流和辅流。 如果需要包含屏幕共享背景音,需要设置screen和screenAudio均为true,该参数仅在1.4.0 及以上版本生效。
  • createClient (static)createClient(config: ClientConfig): Client 【功能说明】 创建一个 实时音视频 通话的客户端对象。一个客户端对象只能同时加入一个房间。可以创建多个客户端对象同时加入多个房间。 【请求参数】 config:必选,ClientConfig类型, 客户端对象配置信息。 ClientConfig定义为:{ appId:必选,string[128]类型,应用ID,只有App ID相同的应用程序才能进入同一个房间进行互动。应用的appId请参考应用管理进行获取。 domain:可选,string[128]类型,服务器的 域名 。需要与注册到SparkRTC平台的合法企业域名保持一致,该参数在SDK 1.0+版本中必填,SDK 2.0+版本中非必填。 countryCode: 可选,string[2]类型,需要满足ISO 3166-1的2位字母的国家码要求。表示业务接入点的国家码,SDK会根据设置将业务接入到对应区域的服务,如:CN表示中国大陆,US表示美国,HK表示中国香港。countryCode值的填写具体请参见国家码对照表。该参数为2.0.3版本新增,且为必选参数,从2.0.7版本开始,修改为可选参数。 } 【返回参数】 Client:客户端对象。
  • SDK集成 支持dylib和framework两种包集成。 解压Mac SDK包。 将MAC SDK包中的lib动态库libHRTCEngine.dylib或者libHRTCEngine.framework和RTC.bundle文件导入创建的XCODE工程中,如果用到混音功能,需要将hwffmpeg.framework至libHWRTCEngine.framework同级目录。 图1 lib库 将MAC SDK包中的头文件“HWRtcObject.h”、“HWRtcConstants.h”、“HRTCDefine.h”“IHRTCMediaEngine.h”、“IHRTCEngine.h”和“HWRtcEngine.h”导入工程中,集成framework在Headers下面自带头文件,无需再导入。 图2 导入头文件 在“Build Settings”页面的搜索框输入“search”,确保头文件和库文件的位置都已经在XCODE设置成功。 若“Header Search Paths ”和“Library Search Paths”中文件位置不对,可以将XCODE对应文件夹直接拖过来即可。 图3 检查文件是否加载成功 编译工程,若界面提示“Build Success”,则完成SDK集成。
  • getScreenShareSources virtual IHR TCS creenShareSourceList* getScreenShareSources(HRT CS creenShareIconType type) 【功能说明】 获取屏幕可共享对象列表。 【请求参数】 type:屏幕捕获图像类型,具体请参见HRTCScreenShareIconType。 【返回参数】 共享屏幕窗口对象列表,具体请参见共享屏幕资源管理。
  • 环境要求 OHOS SDK需要集成到APP工程中,建议您在如下推荐环境中进行集成开发。 准备DevEco,推荐使用4.0.0(10) SDK及以上。 准备Android运行环境:API 21、Android 5.0以上设备。 支持的终端CPU架构:armeabi-v7a、arm64-v8a。 手机的CPU架构可通过以下方式查询。 手机开启USB调试,连接上电脑,然后打开Windows操作系统中的cmd程序,输入如下命令: adb shell getprop ro.product.cpu.abi
  • HWRtcEngineReplayKit集成(可选) 若您需要使用屏幕共享功能,则需要导入HWRtcEngineReplayKit.framework。在导入HWRtcEngineReplayKit.framework前,您需要参考屏幕共享完成Broadcast Upload Extension的创建。 在xcode项目中的Broadcast Upload Extension中导入HWRtcEngineReplayKit.framework。 图7 导入文件 在xcode项目中的Broadcast Upload Extension中导入libc++.tbd库。 图8 导入库 导入成功后,会在Broadcast Upload Extension中的Framworks and libraries中查看到HWRtcEngineReplayKit.framework,如图9所示。 图9 查看导入结果
  • SDK集成 解压iOS SDK包。 将iOS SDK包中的HWRTCEngine动态库和RTC.bundle文件导入创建的XCODE工程中。 图1 导入HWRTCEngine动态库和RTC.bundle文件 在“General”页面将SDK中HWRTCEngine.framework文件加入到工程。如果需要使用混音功能,请添加hwffmpeg.framework库文件至HWRTCEngine.framework同级目录。 图2 添加HWRTCEngine.framework 在“Build Settings”页面关闭“Enable Bitcode”, 将其设置为“No”。 图3 设置Enable Bitcode 在“Build Settings”页面的搜索框输入“search”,查看Framework search paths路径是否正确,确保文件加载成功。 图4 检查文件是否加载成功 在“info.plist”文件中增加摄像头和麦克风权限。 图5 摄像头和麦克风权限 在“info.plist”文件中添加ATS。 图6 添加ATS 使用XCODE连接iPhone,编译工程,若界面提示“Build Success”,则完成SDK集成。
  • SDK集成 解压iOS SDK包。 将iOS SDK包中的HWRTCEngine动态库和RTC.bundle文件导入创建的XCODE工程中。 图1 导入HWRTCEngine动态库和RTC.bundle文件 在“General”页面将SDK中HWRTCEngine.framework文件加入到工程。如果需要使用混音功能,请添加hwffmpeg.framework库文件至HWRTCEngine.framework同级目录。 图2 添加HWRTCEngine.framework 在“Build Settings”页面关闭“Enable Bitcode”, 将其设置为“No”。 图3 设置Enable Bitcode 在“Build Settings”页面的搜索框输入“search”,查看Framework search paths路径是否正确,确保文件加载成功。 图4 检查文件是否加载成功 在“info.plist”文件中增加摄像头和麦克风权限。 图5 摄像头和麦克风权限 在“info.plist”文件中添加ATS。 图6 添加ATS 使用XCODE连接iPhone,编译工程,若界面提示“Build Success”,则完成SDK集成。
  • SDK集成 支持dylib和framework两种包集成。 解压Mac SDK包。 将MAC SDK包中的lib动态库libHRTCEngine.dylib或者libHRTCEngine.framework和RTC.bundle文件导入创建的XCODE工程中,如果用到混音功能,需要将hwffmpeg.framework至libHWRTCEngine.framework同级目录。 图1 lib库 将MAC SDK包中的头文件“HWRtcObject.h”、“HWRtcConstants.h”、“HRTCDefine.h”“IHRTCMediaEngine.h”、“IHRTCEngine.h”和“HWRtcEngine.h”导入工程中,集成framework在Headers下面自带头文件,无需再导入。 图2 导入头文件 在“Build Settings”页面的搜索框输入“search”,确保头文件和库文件的位置都已经在XCODE设置成功。 若“Header Search Paths ”和“Library Search Paths”中文件位置不对,可以将XCODE对应文件夹直接拖过来即可。 图3 检查文件是否加载成功 编译工程,若界面提示“Build Success”,则完成SDK集成。
  • 环境要求 编译工具推荐安装Microsoft Visual Studio Code 1.43.2或以上版本。 如果客户端用Node.js开发, 推荐安装14.19.1或以上版本。 支持的浏览器详情请参见Web浏览器适配详情。 如果客户端用TypeScript开发,TypeScript的版本不低于3.8.3。 由于浏览器安全策略限制,仅支持通过https://域名的方式访问,或者直接在本地搭建服务器,通过localhost:端口访问,否则无法获取摄像头及麦克风的权限。
  • 基本使用逻辑 创建新的项目工程,导入SDK后,需要先创建引擎。 您可以在入会前进行视频编码、声音播放模式等参数的配置。 设置本地视图。 用户加入房间后,将通过回调的方式通知房间内的其他用户,收到用户加入的回调后,可以为其设置远端视图。 在会中,也可以进行切换摄像头等参数的配置。 离开房间后,需销毁对应资源。 在时序图中,单击相应接口名称可快速跳转到相应接口位置查看其使用方法。 父主题: iOS/macOS SDK
  • 设备管理 表12 设备管理接口 接口 描述 setCameraConfig 设置摄像头参数 switchCamera 切换摄像头 setSpeakerModel 设置声音播放模式 setDefaultSpeakerModel 设置默认的声音播放模式 setLayoutDirect 设置显示模式,区分横屏还是竖屏,用于保证摄像头方向与本地界面方向一致 isSpeakerphoneEnabled 查询是否启用扬声器
  • 自定义视频采集和渲染 表10 自定义视频采集和渲染接口 接口 描述 setExternalVideoFrameOutputEnable 设置视频数据输出使能 setExternalDataFrameOutputEnable 设置共享数据输出使能 setExternalVideoCapture 设置是否开启外部视频采集 pushExternalVideoFrame 输入外部视频数据 pushAuxExternalVideoFrame 辅流输入外部视频数据
  • 音效文件播放管理 表7 音效文件播放管理接口 接口 描述 startAudioFile 开始播放音频文件 stopAudioFile 停止播放音频文件 pauseAudioFile 暂停播放音频文件 resumeAudioFile 恢复播放音频文件 isPlayMixMyself 是否只有本地可以听到混音 isMixWithMicrophone 是否需要替代采集 adjustAudioFileVolume 调整本地和远端音频播放的音量 adjustAudioFilePlayoutVolume 调整本地音频播放的音量 adjustAudioFilePublishVolume 调整远端音频播放的音量 getAudioFileVolume 获取音频播放的音量 getAudioFilePlayoutVolume 获取音频本地播放的音量 getAudioFilePublishVolume 获取音频远端播放的音量 getAudioFileDuration 获取音频文件的时长 getAudioFilePosition 获取音频文件当前播放位置 setAudioFilePosition 设置音频文件播放位置 playAudioClip 开始播放音效文件 stopAudioClip 停止播放音效文件 pauseAudioClip 暂停播放音效文件 resumeAudioClip 恢复播放音效文件 stopAllAudioClips 停止播放所有音效文件 pauseAllAudioClips 暂停播放所有音效文件 resumeAllAudioClips 恢复播放所有音效文件 setAudioClipsVolume 设置音效播放的最大音量 getAudioClipsVolume 获取音效播放的最大音量 setVolumeOfAudioClip 设置指定音效的播放音量 getVolumeOfAudioClip 获取指定音效的播放音量 setAudioClipPosition 设置指定音效文件的播放位置 getAudioClipCurrentPosition 获取指定音效文件当前的播放位置 getAudioClipDuration 获取音效的文件时长 preloadAudioClip 预加载音效文件 unloadAudioClip 删除预加载音效文件
  • 辅流管理 表6 辅流管理接口 接口 描述 setAuxiliaryVideoEncodeSmooth 设置是否开启辅流的流畅度优先。 startRemoteAuxiliaryStreamView 开始订阅辅流 stopRemoteAuxiliaryStreamView 停止订阅辅流 setRemoteAuxiliaryStreamViewRotation 设置辅流角度 updateRemoteAuxiliaryStreamRenderMode 设置辅流渲染模式,镜像模式 setAuxiliaryVideoEncoderConfig 设置辅流编码参数 setAuxExternalVideoCapture 设置是否开启视频辅流外部采集
  • 视频管理 表4 视频管理接口 接口 描述 createRenderer 创建渲染视图 updateLocalRenderMode 设置本地窗口显示模式,镜像模式 setupLocalView 设置本地窗口 pushLocalVideo 设置是否发送本地视频流 setVideoEncoderConfig 设置视频编码参数 setNonStandardVideoEncoder 设置非标视频编码参数 setRemoteVideoAdjustResolution 设置订阅视频流的分辨率自适应 startLocalPreview 开始本地预览 stopLocalPreview 停止本地预览 startRemoteStreamView 开始订阅远端视频流 stopRemoteStreamView 停止订阅远端视频流 setupRemoteView 设置远端窗口视图 updateRemoteRenderMode 设置远端窗口渲染模式,镜像模式 pullRemoteVideo 设置是否接收对应远端用户的视频流 pullAllRemoteVideo 设置是否接收所有远端用户的视频流 setVideoEncoderMirror 设置视频编码镜像模式 enableLocalVideo 设置是否开启摄像头采集视频 enableVideoSuperResolution 设置是否开启视频超分 enableSmallVideoStream 开启并设置小流编码参数 setPriorRemoteVideoStreamType 设置默认订阅的视频流类型(大流还是小流) setRemoteVideoStreamType 设置当前订阅的视频流类型 startPublishStream 开始旁路推流 updateTransCoding 更新旁路推流 stopPublishStream 停止旁路推流 startAllRemoteView 批量设置远端流视图
  • 房间功能 表2 房间功能接口 接口 描述 joinRoom 加入房间 leaveRoom 离开房间 changeUserRole 设置用户角色 renewAuthorization 更新鉴权签名 changeUserName 更新用户昵称 createConnection 创建跨房(HRTCConnection)对象 addMultiRoomMediaRelay 添加单个跨房 removeMultiRoomMediaRelay 删除单个跨房 stopMultiRoomMediaRelay 停止所有跨房
  • 音频管理 表3 音频管理接口 接口 描述 muteLocalAudio 设置是否发送本地音频流 muteRemoteAudio 设置是否接收对应远端用户的音频流 muteAllRemoteAudio 设置是否接收所有远端用户的音频流 enableLocalAudioStream 设置是否开启音频采集 adjustRecordingVolume 调整录制音量 adjustPlaybackVolume 调整播放音量 adjustPlaybackVolume 调整单个用户播放音量 sendAudioSeiMsg 发送音频SEI setAudioFrameRecordParameters 设置音频采集回调参数 setAudioConfig 设置音频场景
  • 初始化等基础接口 表1 初始化等基础接口 接口 描述 create 创建SparkRTC引擎实例 destroy 销毁SparkRTC引擎 logUpload 上传日志 disableRejoinRoom 设置是否禁用房间重连功能。 enableStats 打点功能开关 getVersion 获取当前SDK版本号 setEncryption 设置端到端加密模式 setAccessResourceType 设置接入环境 setNetworkBandwidth 设置网络带宽限制
  • 视频管理 表3 视频管理接口 接口 描述 startRemoteStreamView 按档位选看远端用户,并设置用户窗口 stopRemoteStreamView 取消订阅远端用户,并清除此用户的窗口 updateRemoteRenderMode 设置远端视频渲染填充方式,镜像模式 pullRemoteVideo 订阅或取消订阅远端用户 pullAllRemoteVideo 订阅或取消订阅全部远端用户,对未入会用户也有影响 setupRemoteView 设置远端用户窗口 setRemoteVideoAdjustResolution 远端流自动调整分辨率开关 setPriorRemoteVideoStreamType 大小流模式,设置所有订阅的远端视频流类型 setRemoteVideoStreamType 大小流模式,设置远端视频流类型 setRemoteViewRotation 设置远端视频旋转角度 setRemoteViewOrientation 设置远端视频横屏、竖屏展示
  • 辅流管理 表4 辅流管理接口 接口 描述 startRemoteAuxiliaryStreamView 开启辅流渲染视图(发起辅流选看) stopRemoteAuxiliaryStreamView 关闭辅流渲染视图(停止辅流选看) updateRemoteAuxiliaryStreamRenderMode 设置辅流视图渲染模式,镜像模式 setRemoteAuxiliaryStreamViewRotation 设置辅流视图角度 setRemoteAuxiliaryStreamViewOrientation 设置辅流横屏或竖屏显示
  • 软件包完整性校验 用户可对下载的SDK包进行完整性校验,判断下载过程中是否存在篡改和丢包现象。 详细操作如下所示: 获取SDK包及其完整性校验sha256文件。 打开本地命令提示符框,输入如下命令,在本地生成已下载SDK包的SHA256值。 其中,“D:\RtcSdk_Web_2.0.9.533.zip”为SDK包本地存放路径和SDK包名,请根据实际情况修改。 certutil -hashfile D:\RtcSdk_Web_2.0.9.533.zip SHA256 命令执行结果示例,如下所示: SHA256 的 RtcSdk_Web_2.0.9.533.zip 哈希: bca7141a498a17ee4eb1de208992c347daf65963140e614d0b3121ac62bca9be CertUtil: -hashfile 命令成功完成。 比对本地计算出的SDK包SHA256值和完整性校验sha256文件的SHA256值。 如果一致,说明下载过程中不存在篡改和丢包现象。
  • 到期与欠费 欠费:按需付费是根据每个计费项在对应的计费周期进行扣费的,若余额不足,则无法对上一个计费周期进行扣费,从而导致华为云实时音视频服务欠费。欠费后会进入资源保留期,您在实时音视频服务中配置的数据会予以保留,但无法访问及使用实时音视频服务相关功能。保留期满仍未缴清欠款,存储在实时音视频服务中的数据将被删除且无法恢复。关于保留期时长等更多详细介绍请参见宽限期保留期。为防止相关资源被停止或释放,请您及时为账户进行充值,具体请参见欠费还款。 服务到期:按需付费没有到期概念。
  • 云端合流转码费用 表8 合流转码计费价格 产品规格 单价(元/分钟) FHD(超清) H264 0.068 HD(高清) H264 0.032 SD(标清) H264 0.016 FHD(超清) H265 0.17 HD(高清) H265 0.08 SD(标清) H265 0.04 Audio(音频) 0.006 计费公式 合流转码费用 = 合流转码规格单价 × 合流转码时长用量 计费规则 转码时长分为音频时长和视频时长。 视频时长会根据用户转码视频分辨率划分视频档位,然后分别对不同档位的转码时长进行计费。 表9 视频分辨率 视频档位 视频分辨率 FHD(超清) 1280*720 - 1920*1080(含) HD(高清) 640*480 - 1280*720(含) SD(标清) 不高于640*480(含) 语音时长是指转码只有纯音频的时间。转码后输出的同一条流在同一时间内,既有视频又有音频时,只按视频时长统计,不会重复计算语音时长。 计费示例:使用H.264编码方式将A、B、C用户流合流转码输出1280 × 720分辨率的视频30分钟,则本次合流转码产生的费用为:0.032(元/分钟)*30(分钟) = 0.96(元) 用户 分辨率和时长 费用(元) A、B、C 1280 × 720(高清) 30分钟 0.032*30
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全