云服务器内容精选

  • on on(event: string, handler: function, withTimeout?: boolean): void 【功能说明】 注册客户端对象事件回调接口。 【请求参数】 event:必选,string类型,事件名称。具体请参见HWLLSClientEvent。 handler:必选,function类型,事件处理方法。 withTimeout:选填,boolean类型,是否超时报错 【返回参数】 无
  • streamStatistic streamStatistic(enable: boolean, interval: number): void 【功能说明】 设置是否开启流信息统计。 【请求参数】 enable:必选,boolean类型,是否开启流信息统计,true表示开启统计。 interval:必选,number类型,设置统计间隔,单位为秒,取值范围为[1, 60],默认值为1。 【返回参数】 无
  • enableStreamStateDetection enableStreamStateDetection(enable: boolean, interval: number, interruptRetry:StreamInterruptRetry): boolean 【功能说明】 开启/关闭音、视频码流状态探测功能,开启后可探测推流侧是否处于断流的状态。 【请求参数】 enable:必选,boolean类型,true表示开启音视频码流状态探测,false表示关闭音视频码流状态探测。默认值为false。 interval:必选,number类型,单位为秒,取值范围为[1,60]。音视频无码流状态的判断时间。默认值为3,推荐设置为3。 interruptRetry:可选,StreamInterruptRetry类型。断流重试播放配置参数,StreamInterruptRetry定义为:{ enable:boolean类型,开启断流后尝试自动恢复播放。默认值为false,即不开启自动重试。 retryInterval:number类型,拉流播放的重试周期,单位为秒。最小值10,最大值建议不超过60,默认值为30。 retryTimes:number类型,尝试重新恢复播放的最大重试次数。最小值1,默认值为30。 } 【返回参数】 boolean:是否成功,true表示成功,false表示失败。
  • 降级方式 包含下述2种降级方式: 如果指定降级和自动降级都设置了,仅指定降级会生效。 示例代码如下所示: const client = HWLLSPlayer.createClient() client.startPlay(url, { ... hlsUrl: // 填写hls的播放地址 flvUrl: // 填写flv的播放地址 autoDowngrade: true, // true表示启用自动降级播放,false表示不启用自动降级播放 ... }) 指定降级 设置HWLLSClient中的startPlay接口,指定options里面参数downgradeUrl的flv或hls地址,即可实现异常时的降级播放。 如果hlsUrl和flvUrl播放地址只选填一个,会降级至指定地址;如果两个播放地址都填,则降级后的播放顺序为先HLS后FLV。 const client = HWLLSPlayer.createClient() client.startPlay(url, { ... downgradeUrl: { hlsUrl: // 填写hls的播放地址 flvUrl: // 填写flv的播放地址 } ... }) 自动降级 设置HWLLSClient中的startPlay接口,指定options里面参数autoDowngrade的值为true,即可实现接口异常时的自动降级播放。 const client = HWLLSPlayer.createClient() client.startPlay(url, { ... autoDowngrade: true, // true表示启用自动降级播放,false表示不启用自动降级播放 ... })
  • 常见问题 如果业务上App只能使用http协议,是否能够集成使用华为低时延直播Web SDK ? 部分浏览器(chrome)可以集成使用,但不推荐。由于浏览器兼容性识别是根据浏览器暴露的WebRTC对象判断的,在非https协议下,对象可能不存在。 Firefox浏览器中无法使用华为低时延直播Web SDK? Firefox浏览器使用之前需要安装H264的编解码插件。浏览器中输入about:addons,跳转到插件安装页面,查看H264插件是否安装完成,如未安装请在该页面更新安装。 集成华为低时延直播Web SDK后,无法正常使用,可能原因? 需要检查用户自定义的 域名 配置是否完成,如:推、拉流域名,权威机构签发的https证书等。 推流端设置及推流是否正常。 播放地址是否填写正确,如:appName、streamName等。 网络连接是否正常、网络防火墙配置是否有限制,如:UDP端口(8000-8063)是否放通。 华为低时延直播Web SDK,支持哪些类型浏览器? 浏览器支持详情请参见浏览器适配。 推流端推流成功后,华为低时延直播Web SDK拉流播放失败? 需要确认推流端的推流编码参数,是否为H264+无B帧。目前华为低时延直播Web SDK仅支持H264+无B帧的流,所以如果原始流为H265或者带B帧,则需要提前在租户Console上配置对应转码模板,开启转码服务,但这样会引入额外的转码延迟,并且会产生转码费用。建议推流端尽量推H264+不包含B帧的流,可以通过调整推流端软件(如OBS)的视频编码参数去除B 帧。如果使用OBS推流,可以通过设置,关闭B帧。如下图所示: 华为低时延直播Web SDK,播放报错:NotAllowedError:xxx? 由于浏览器自动播放安全策略的限制,浏览器直接拉起App并启动播放会返回该错误,在应用层需要根据该错误码,引导用户通过手动触发页面UI控件,并调用replay接口恢复播放。 开启认证策略,该如何获取token信息? 认证策略不开启不影响功能正常使用,也不影响打点和日志上传的能力。 认证策略开启可以保证打点数据和日志上传数据的安全性。 如果当前需要认证策略能力,请提交工单,联系技术支持获取appid和token。 父主题: Web SDK
  • setParameter setParameter(parameterKey: string, parameterValue: any): boolean 【功能说明】 设置全局配置参数。 【请求参数】 参数名称 参数值 LOADING_CONFIG LoadingConfig类型,定义如下: { netQualityLoading:可选,boolean类型。true表示开启根据网络质量进行loading效果展示,默认值为false,关闭。 netQualityLoadingThreshold:可选,number类型。展示loading效果的网络质量(network-quality)的阈值,默认网络质量等级为5。 frameStuckLoading:可选,boolean类型。true表示开启根据帧卡顿时长进行loading效果展示,默认值为false frameStuckThreshold:可选,number类型。展示loading效果帧卡顿时长的阈值,单位为100ms。默认值为10,表示帧卡顿时长为1000ms。 } 注意: 需要在起播之前进行设置。 DNS_QUERY_ENABLE boolean类型,可选,默认为false,true表示开启DNS结果解析,false表示关闭DNS结果解析。 AC CES S_DOMAIN string类型,可选,默认为空,主要用于拉流环境配置,沟通华为工程师填入。 GLSB_DOMAIN string类型,可选,默认为空,主要用于GSLB环境配置,沟通华为工程师填入。 BACKGROUND_PLAY boolean类型,可选,默认为false,true表示开启后台播放,false表示关闭后台播放 【返回参数】 boolean:配置参数设置结果。true表示参数设置成功,false表示参数设置失败。
  • on on(event: string, handler: function, withTimeout?: boolean): void 【功能说明】 注册客户端对象事件回调接口。 【请求参数】 event:必选,string类型,事件名称, 注册Error事件,监听打点或者日志上传的错误信息。 handler:必选,function类型,事件处理方法。 withTimeout:选填,boolean类型,是否超时报错 【返回参数】 无
  • createClient createClient(type: string): HWLLSClient | HWFlvClient | HWHlsClient 【功能说明】 创建一个直播拉流客户端对象,如果需要拉取多个直播流则需要创建多个客户端对象。 【请求参数】 type:string类型,可选。创建的拉流客户端类型。 低时延直播拉流客户端类型:webrtc。 flv直播拉流客户端类型:flv。 HLS直播拉流客户端类型:hls(预留,暂未开放)。 缺省值:webrtc。 【返回参数】 client:拉流客户端对象。
  • setLogLevel setLogLevel(level: string): boolean 【功能说明】 设置Console上打印的日志级别,如不设置日志级别,则console日志打印级别默认为error。 【请求参数】 level:string类型,必选,日志级别标识。 none:关闭全部级别的日志打印。 error:打印error级别日志。 warn:打印warn级别及更高级别日志。 info:打印info级别及更高级别日志。 debug:打印debug级别及更高级别日志。 【返回参数】 boolean:设置日志级别结果。true表示日志级别设置成功,false表示日志级别设置失败。
  • setReportConfig setReportConfig(reportConfig:ReportConfig):boolear 【功能说明】 设置打点能力以及打点和日志上传的认证策略。 【请求参数】 reportConfig:ReportConfig类型,必选。ReportConfig定义如下所示: enable:必选,布尔类型,true表示开启打点,false表示关闭打点。默认true。 tokenConfig:可选,对象定义如下所示: enable:布尔类型,true表示开启认证,false表示关闭认证。默认false。 tokenInfo:数组类型,数组内部ReportTokenInfo类。ReportTokenInfo定义如下所示: appid:string类型。传入appid。 expTimestamp:string类型。过期时间戳,系统当前UNIX时间戳加上鉴权过期时间(推荐7200秒,最长需要小于43200秒,即12个小时)。 例如:当前UNIX时间戳为:1708531200,鉴权过期时间自定义为7200秒,那么过期的时间戳为:1708538400,即表示该校验字符串在2024-02-22 02:00:00过期。 token:string类型。hmac_sha256生成的字符串。hmac_sha256(共享密钥, 过期的时间戳 + appID)。共享密钥由用户控制获取。 【返回参数】 返回值布尔值, true表示设置成功,false表示设置失败。 开启了认证策略,实际请求状态会通过on函数注册Error回调获得。
  • 浏览器适配 本章节介绍低时延直播Web SDK支持的浏览器类型、版本以及使用限制。 表1 浏览器适配详情 操作系统类型 浏览器类型 浏览器版本 Windows Chrome浏览器 67+ QQ浏览器(极速内核) 10.4+ 360安全浏览器(极速模式) 12 微信内嵌浏览器 - Firefox浏览器 90+ Edge浏览器 80+ Opera浏览器 54+ macOS Chrome浏览器 67+ 微信内嵌浏览器 - Safari浏览器 13+ Firefox浏览器 90+ Opera浏览器 56+ Android 微信内嵌浏览器( TBS内核) - 微信内嵌浏览器( XWEB内核) - 移动版Chrome浏览器 83+ 移动版QQ浏览器 12+ 华为系统浏览器 11.0.8+ iOS 微信内嵌浏览器 iOS 14.3+ 微信6.5+版本 移动版Chrome浏览器 iOS 14.3+ 移动版Safari浏览器 13+ 表2 浏览器使用限制 浏览器类型 使用限制 Chrome浏览器 1、在华为移动端设备上,Chrome浏览器(包括华为浏览器)支持WebRTC的版本为91+。 2、Android移动端WebView对WebRTC能力的支持参差不齐,受影响的因素很多,如设备厂家、浏览器内核、版本等,使用的兼容性较差,因此可用性不能保证,不建议使用这类浏览器。 Safari浏览器 Safari 13的用户可能听不到远端用户的声音。 iOS Safari 14.2和macOS Safari 14.0.1上音频可能断断续续。 Firefox浏览器 Apple M1芯片的Mac设备上Firefox不支持H.264编解码。 Opera浏览器 在华为移动端设备上,Opera浏览器支持SDK的版本为64+。 其他浏览器 由于Android设备各厂家的浏览器内核、webview、版本等因素,移动端浏览器对WebRTC的支持度不一,除可以使用表1 浏览器适配详情中列举的明确支持的浏览器外,还可以集成使用Native SDK(Andriod / iOS)。 父主题: Web SDK
  • 公网地址 表1 公网地址列表 公网地址 信息 log-collection-new.hwcloudlive.com 国内日志和打点环境地址。 log-collection-ap-southeast-3.rocket-cdn.com 海外日志和打点环境地址。 global-lll.huaweicloud.com 默认拉流主环境地址。 global-lll.huaweicloud.cn 默认拉流备用环境地址。 hcdnl-pull302-global-gslb.livehwc3.cn 默认GSLB环境地址。 父主题: 接口参考
  • 直播业务媒体流应对防火墙限制? 直播业务媒体流的信令和媒体访问方式为“IP+端口”或“域名+端口”的方式,您的防火墙需要开通如下权限: 解除所有IP访问的限制。 为端口和域名配置防火墙白名单。 配置防火墙端口白名单,如表1所示。 表1 防火墙端口白名单 端口类型 端口 TCP端口 443、6447 UDP端口 20000-20063 配置防火墙域名白名单,如表2所示。 表2 防火墙域名白名单 序号 域名 1 *.dbankcdn.com 2 *.dbankcdn.cn 3 *.dbankcloud.ru 4 *.dbankcloud.cn 5 *.dbankcloud.com 6 *.hicloud.cn 7 *.hicloud.com 8 *.dbankedge.cn 父主题: 视频直播
  • 注意事项 录制规则配置支持域名级、应用级和流级,优先生效细粒度配置(即流级别最优先),同级配置不支持多种录制类型。 直播服务不支持清理录制内容,仅记录直播录制事件,且直播录制事件的数据只保留30天。您可根据业务的实际需求,在OBS中手动清理录制文件或通过OBS生命周期管理功能实现录制文件的存留期限和策略。 直播录制过程中,若直播推流因网络抖动等问题中断,则直播服务将中止录制。当推流重新启动时,直播服务将重新开启新的录制任务。 配置录制后,启动推流即开始录制,结束推流才可停止录制,暂无法按需停启;若在推流过程中删除录制规则,录制仍然会继续,直到推流结束 。 OBS服务会因欠费停服,从而导致直播录制失败,建议您购买OBS存储包。 仅支持对接收到的源直播流进行录制,暂不支持录制直播转码流。
  • 注意事项 直播服务所在区域与存储截图的OBS桶需在同一区域。 推荐将OBS桶设置为私有桶,效果如下所示: 如果将OBS桶设置为私有桶,必须添加鉴权信息,才能访问并下载OBS截图文件。鉴权信息可参考OBS生成带授权信息的URL文档生成。 如果将OBS桶设置为公开桶,则可直接访问并下载OBS截图文件。 一个域名可配置多个截图模板,与推流地址中的AppName相同的截图模板生效。 暂只支持截图生成JPG格式的图片文件。 华为云视频直播服务计划于2024年8月15日,下线截图回调地址携带鉴权信息功能,届时截图回调地址将不再携带鉴权信息。