华为云用户手册

  • 前提条件 已添加推流域名和播放域名,且已完成域名关联。 已在域名DNS服务商处完成CNAME解析配置。 为保障直播资源不被非法盗播, 华为云直播 服务提供防盗链功能,对播放地址进行加密鉴权。若有需要,请先配置Key防盗链,然后使用鉴权地址进行播放。加密鉴权方法请参见Key防盗链。 直播服务支持将推送的直播流转码成多种分辨率和码率规格的视频流,以满足不同网络环境的播放需求。若有需要,请在对应推流域名中配置转码模板,然后使用转码播放地址进行播放。
  • 功能列表 您可以在 视频直播 控制台的左侧导航栏中,选择相应的功能使用。 表1 控制台功能介绍 分类 功能 功能介绍 直播管理 直播管理 支持用户对直播在线流、历史流及录制文件的管理,也可以对直播流进行禁止和恢复推流等操作。 录制文件管理 支持用户获取录制文件基本信息。 域名管理 域名配置 支持用户添加并管理自有的加速域名,并对域名进行CNAME配置,Key防盗链、Referer防盗链、IP黑白名单配置,支持对直播视频进行录制、截图、转码模板配置。 推流配置 转码模板配置 支持将推送的直播流转码成多种分辨率和码率规格的,以满足不同网络环境的用户观看需求。 录制配置 支持为直播配置录制规则,直播流将按照录制规则进行录制,并存储到OBS桶或VOD中。 截图模板配置 支持按配置截图模板在推流过程中截取直播画面,并存储在OBS桶中。 直播推断流通知配置 支持为推流域名配置回调地址,用于接收直播推流和断流通知,从而实时获取直播状态。 推流鉴权配置 提供了Key防盗链和IP黑白名单鉴权机制,对访问者的身份进行识别和过滤,符合规则的才可进行直播推流。 播流配置 修改直播延时 支持RTMP、HTTP-FLV协议播放的延时配置。 直播拉流回源 支持用户将自建源站中的直播内容拉取到华为云直播源站进行加速分发。 安全加速 支持对播放域名开启HTTPS安全加速,保障您的直播数据在传输过程中受到加密保护。 鉴权机制配置 提供了Referer防盗链、Key防盗链和IP黑白名单鉴权机制,对访问者的身份进行识别和过滤,符合规则的才可使用直播服务。 用量统计 用量统计 支持查看所有播放域名的下行带宽/流量使用统计信息,还支持查看所有推流域名的转码时长、录制最大并发数和截图数量统计信息。 说明:暂不支持“华北-北京一”区域。 业务监控 业务监控 支持查看播放域名的下行带宽/流量使用量、播放画像信息、请求响应返回的所有状态码及对应直播流的在线观看人数等数据,还支持查看对应推流域名的上行带宽/流量使用量、总推流路数、历史推流详情及推流帧率/码率等监控信息。 说明:暂不支持“华北-北京一”区域。 大屏监控 大屏监控 支持对所有直播资源的用量及分布情况进行实时监控。 日志管理 离线日志下载 支持查看播放域名被网络用户访问的详细日志,可查询下载最近90天的日志文件。 说明:暂不支持“华北-北京一”区域。 实时日志配置 支持实时查看播放域名被网络用户访问的详细日志记录。 说明:暂只支持“华北-北京四”区域。 工具库 防盗地址生成 支持使用该工具快速生成推流域名和播放域名的鉴权URL。 说明:暂不支持“华北-北京一”区域。
  • 概览 登录视频直播控制台,进入“概览”页面。 图1 概览 在该页面可查看如下信息,也可以单击右上角的“使用指南”,查看操作文档。 今日数据 下行流量:今日所有播放域名使用播放加速产生的下行流量总和。 下行带宽峰值:今日所有播放域名使用播放加速产生的下行带宽峰值。 使用趋势:查询近期的直播用量趋势。 下行流量:所有播放域名在查询时间段内,使用播放加速消耗的总下行流量。 下行带宽:所有播放域名在查询时间段内,使用播放加速消耗的总下行带宽峰值。 上行带宽:所选播放域名在查询的时间段内,对应推流端产生的总上行带宽。 可将鼠标放置在图表上,查看具体数值,滚动鼠标滚轮可整体加长或缩短展示横轴的时间段。 计费模式:用户当前的CDN计费方式。可以单击“变更”,变更CDN计费方式。也可以单击“购买套餐包”,购买价格更优惠的套餐包使用。 客户等级为V0和V1的账户暂不支持变更计费方式,只能按流量计费。
  • 配置流程 消息订阅的配置流程,如图1所示。 图1 消息订阅配置流程图 创建消息主题:在 消息通知 服务控制台新建消息主题,用于消息发送和订阅通知。 添加订阅:将消息主题添加到订阅中接收发布至主题的消息,在订阅主题且确认订阅后,终端节点能够接收到向该主题发布的所有消息。 设置主题策略:授权直播服务可对该主题发布消息。 配置直播消息订阅:在直播控制台配置消息订阅,在直播推流开始和结束,以及录制时收到对应的消息通知。
  • 录制通知消息模板 录制通知的消息模板如下所示,消息中各字段说明如表3所示。 Live Record Notify, domain: {domain}, app_name: {app_name}, stream_name: {stream_name}, download_url: {download_url}, filename: {filename},asset_id: {asset_id}, duration: {duration}, event: {event}, timestamp: {timestamp} 表3 RecordNotifyTemplate字段说明 字段 描述 domain 推流域名。 app_name 应用名称,与推流地址中的AppName保持一致。 stream_name 直播流名称。 download_url 录制文件的下载地址,当event的值不为RECORD_NEW_FILE时,该字段为空。 filename 录制文件的名称,当event的值不为RECORD_NEW_FILE时,该字段为空。 asset_id 录制文件的媒资ID,点播服务分配给该录制文件的唯一标识,当event的值不为RECORD_NEW_FILE时,该字段为空。 duration 录制文件的时长,当event的值不为RECORD_NEW_FILE时,该字段为0。 event 录制事件,包括: RECORD_START: 录制任务开始。 RECORD_NEW_FILE:产生新的录制文件。 RECORD_OVER:录制任务结束。 RECORD_FAIL:录制任务失败。 timestamp 录制时间戳。
  • 推流 下面以OBS推流工具为例进行低时延直播推流演示。 获取低时延直播推流地址。 登录视频直播控制台,在左侧导航树中选择“域名管理”,进入域名管理页面。 在对应的低时延直播推流域名行单击“管理”,进入基本信息页面获取低时延直播推流地址。 示例如图1所示,其中“StreamName”为自定义的,如推流地址: rtmp://livepush-test.huaweicloud.com/live/huawei09。 图1 推流地址 图中域名仅为示例,实际使用时,您需要使用已配置的低时延直播推流域名。 运行OBS工具,单击右下角的“设置”。 在左侧菜单栏中选择“输出”。 请您按照要求设置以下参数,其余参数保持默认值即可。 “输出模式”设置为“高级”。 “码率控制”设置为“ABR”。 “比特率”设置为“2000 Kbps”。 “关键帧间隔”设置为“1”。 “CPU 使用预设”设置为“ultrafast”。 “配置”设置为“baseline”。 “微调”设置为“zerolatency”。 由于低时延直播推流端不推包含B帧的流,所以您需要在OBS推流端中关闭B帧。 在左侧菜单栏选择“流”,输入步骤1获取的直播推流URL。 推流地址分两部分输入“URL”和“流名称”中。具体填写规则如下: “服务器”:填写包含AppName前的地址,如"rtmp://livepush-test.huaweicloud.com/live/"。 “串流密钥”:填写包含“StreamName”后的地址,如“huawei01”。 由于使用的OBS工具版本不同,界面参数的名称可能会不同,但填写规则是相同的。 单击“确定”,完成低时延直播推流地址的配置。 在“来源”区域单击右键,选择直播流来源。 媒体流:表示本地媒体文件。 视频捕获设备:表示摄像头,若PC有配套摄像头,会直接启用摄像头。 单击右下角的“开始推流”,开始推送低时延直播流。
  • 播放(Web接入方式) 获取播放地址。 登录视频直播控制台,在左侧导航树中选择“域名管理”,进入域名管理页面。 在对应的低时延直播播放域名行单击“管理”,进入基本信息页面获取低时延直播播放地址。 其中“StreamName”为自定义的,但需要与低时延直播推流地址中的“StreamName”一致,否则会播放失败。 如示例,可拼接为如下格式的低时延直播播放地址: webrtc://exampletest.huaweicloud.com/live/huawei09 其中,exampletest.huaweicloud.com为配置的低时延直播域名。 您可以使用Web端Demo测试直播流是否能正常播放。 打开低时延直播Web测试链接,播放地址中填写低时延直播的播放URL,进行播放体验。
  • 原始推流地址 拼接规则 推流地址格式: rtmp://推流域名/AppName/StreamName 推流域名:在视频直播控制台添加的推流域名。 AppName:应用名,默认为“live”,您也可以根据实际需求进行自定义,支持大小写字母、数字、下划线(_)中划线(-)。 StreamName:直播流名,每个应用可创建多个直播流,您可以根据实际需求进行自定义,例如,huawei1,但不支持中文字符。 拼接示例 若添加的推流域名为“test-push.example.com”,“StreamName”为“huawei1”,“AppName”为“livetest”,则推流地址如下所示: rtmp://test-push.example.com/livetest/huawei1
  • 注意事项 一个域名可以配置多个转码模板,当收到转码流请求时,与请求地址中的AppName一致的转码模板生效,开始进行转码,若不需要转码,请在直播推流前删除转码模板。 直播流的转码规则生效配置为直播流启动时的配置内容,若修改了转码配置,则正在直播的在线直播流不会生效,仅对修改配置后新推送的直播流生效。 转码模板中的高清低码默认是关闭的,若您开启,直播转码将按高清低码标准计费,价格详情请参见产品价格详情。 暂不支持上采样转码,若转码模板中设置的分辨率高于推流分辨率,对应分辨率的播放地址可以成功播放,但播放视频的分辨率为原始分辨率。
  • 管理转码 转码模板配置完成后,您还可以根据实际需要进行如下操作。 修改转码模板 转码模板创建完成后,若您需要修改部分参数,可以通过单击操作列的“修改”,修改转码模板中的相关参数。其中,AppName不支持修改。 直播流的转码规则生效配置为直播流启动时的配置内容,若修改了转码配置,则正在直播的在线直播流不会生效,仅对修改配置后新推送的直播流生效。 删除转码模板 转码模板创建完成后,若您需要删除转码模板,可以通过单击操作列的“删除”,删除该转码模板。
  • 截图流程 直播服务截图模板的配置流程,如图1所示。 图1 截图模板配置流程图 创建桶(可选):创建用于存储直播截图文件的OBS桶,若已有OBS桶,可直接跳转到2。 存储直播截图的OBS桶必须与使用的直播服务在同一区域,如使用“华北-北京四”的直播服务,则直播截图只能存储在“华北-北京四”区域的OBS桶。 桶授权:在直播服务中对存储截图的OBS桶进行授权,允许直播服务将截图存储在对应的OBS桶中。 配置截图模板:直播视频将按照设定的间隔时间对正在直播的视频进行画面截图操作,并以.jpg文件保存至指定的OBS存储位置。 查看直播截图:直播截图模板配置成功后,启动直播推流,可以通过截图的输出路径快速进入到OBS桶中查看存储的直播截图,还可以通过回调消息查看直播截图。
  • 步骤二:OBS桶授权 OBS桶创建后,您需要按照如下步骤在直播服务中对相关的桶进行授权,允许直播服务将截图存储在对应的OBS桶中。 OBS桶授权完成后,视频直播服务可以正常访问该OBS桶。请确保该桶仅处理直播相关业务,切勿在桶中存放涉密文件。 登录视频直播控制台。 在左侧导航树中选择“云资源授权”,进入桶授权页面。 在“直播授权“页签,选择需要存储直播截图的OBS桶,单击“授权”即可。 图2 云资源授权
  • 回调示例 录制文件生成事件回调示例如下。回调消息体字段如表2所示。 { "project_id": "70b76xxxxxx34253880af501cdxxxxxx", "job_id": "dc0a1773-0cef-xxxx-xxxx-9a38fdb095d2", "task_id": "51126d0ebe94b1da00d2e21a10xxxxxx", "event_type": "RECORD_FILE_COMPLETE", "publish_domain": "push.example.com", "app": "live", "stream": "mystream", "record_format": "HLS", "download_url": "https://obs.cn-north-4.myhuaweicloud.com/live/record-xxxx-mystream-1589967495/record-push.example.com-live-mystream-1589967495.m3u8", "asset_id": "1a0d8e9bfaexxxxxxbe5021e62aa1e96", "file_size": 3957964, "record_duration": 120, "start_time": "2020-03-08T14:10:25Z", "end_time": "2020-03-08T14:12:25Z", "width": 1280, "height": 720, "auth_sign": "4f97f46759axxxxxx7ad21e9935dc175", "auth_timestamp": 1583676745 }
  • 日志说明 日志命名规则:播放域名_日志时间.log.gz 日志生成规则:日志默认按5分钟粒度进行分割,若域名无请求,则不会产生日志数据包。正在进行拉流的直播日志一般4个小时后才能获取到最完整的日志文件。 日志格式: 标准直播场景: [time_local]|play_domain|client_ip|cdn_ip|url|http_code|cache_hit|scheme|method|period_bytes_sent|period_duration|ua|refer|app|stream 低时延直播场景: [time_local]|play_domain|client_ip|cdn_ip|url|http_code|cache_hit|scheme|method|period_bytes_sent|period_duration|ua|refer|app|stream 若某字段不涉及或为空时,用-表示;若字段信息中存在空格,则空格需带上英文双引号""。 日志示例: 标准直播场景 [06/Mar/2023:06:51:26 +0800]|pullexample.huaweicloud.com|49.1.1.*|42.11.1.2|http://pullexample.huaweicloud.com/live/stream-123.flv|200|HIT|HTTP|GET|1024|4|Lavf/58.12.100|-|live|stream-123 低时延直播场景: [06/Mar/2023:06:51:26 +0800]|pullexample.huaweicloud.com|49.1.1.*|42.11.1.2|webrtc://pullexample.huaweicloud.com/live/stream-123.sdp|200|HIT|WebRTC|GET|1024|4|Lavf/58.12.100|-|live|stream-123 各字段的含义如表1所示。 表1 日志字段含义说明 字段名 字段含义 字段示例 time_local 通用日志格式下的本地时间,标记本次统计的时间值。 [06/Mar/2023:06:51:26 +0800] play_domain CDN加速 域名。 pullexample.huaweicloud.com client_ip 客户端IP。 49.1.1.* cdn_ip 播放用户接入的CDN节点IP。 42.11.1.2 url 完整的访问url。 标准直播 http://pullexample.huaweicloud.com/live/stream-123.flv 低时延直播 webrtc://pullexample.huaweicloud.com/live/stream-123.sdp http_code HTTP状态码。 200 cache_hit 缓存命中状态,有如下两种: HIT MISS HIT scheme 访问协议,有如下四种: HTTP HTTPS RTMP WebRTC 标准直播:HTTP、HTTPS或RTMP 低时延直播:WebRTC method HTTP方法 GET period_bytes_sent 周期内发送字节数,对应的统计周期时间为period_duration。 1024 period_duration 统计周期,单位:s,精度到秒。 4 ua User - Agent信息。 Lavf/58.12.100 refer Referer信息。 - app 挂载点 live stream 流名 stream-123
  • 入门指引 若您需要用自己的域名体验完整的云直播功能,可以参考本节快速实现,具体的操作流程,如图1所示。 图1 云直播入门流程 云直播入门操作流程说明,如表1所示。 表1 云直播入门流程说明 序号 操作方法 操作说明 1 添加直播域名 将准备的已备案的域名添加到视频直播服务,包括推流域名和播放域名。您可以注册备案一个一级域名(如example.com),然后使用两个不同的二级域名(如live-play.example.com和live-push.example.com)作为直播推流域名和播放域名。 2 关联域名 推流域名和播放域名添加完成后,您需要在播放域名中关联对应的推流域名,否则将会导致播放失败。 3 配置CNAME 推流域名和播放域名添加成功后,视频直播会为其分配对应的CNAME地址。您需要在域名DNS服务商处为推流域名和播放域名配置CNAME解析,开启直播推流加速和播放加速。 4 开启HTTPS安全加速 您可以为低时延直播开启HTTPS安全加速,保障您的直播数据在传输过程中受到加密保护。 仅低时延直播场景,需要执行此操作。 4 配置推流(可选) 配置转码模板 配置录制模板 配置截图模板 配置推流鉴权 配置播流(可选) 配置延时 配置拉流回源 配置HTTPS 配置播放鉴权 若您需要对直播进行录制、转码、截图、鉴权等操作,您可以在直播开始前,进行相关的配置。 5 推流 您可以使用第三方推流工具OBS进行推流。 标准直播场景,请参考推流操作。 低时延直播场景,请参考推流操作。 6 播放 标准直播场景:您可以使用第三方播放工具VLC进行播放。操作请参考播放。 低时延直播场景:您可以使用华为云低时延在线Demo或根据API接口开放web端播放。操作请参考播放(Web接入方式)。 父主题: 快速入门
  • 注意事项 此功能仅支持“华北-北京四”区域使用。 录制规则配置支持域名级、应用级和流级,优先生效细粒度配置(即流级别最优先),同级配置不支持多种录制类型。 直播服务不支持清理录制内容,仅记录直播录制事件,且直播录制事件的数据只保留30天。 直播录制过程中,若直播推流因网络抖动等问题中断,则直播服务将中止录制。当推流重新启动时,直播服务将重新开启新的录制任务。 配置录制后,启动推流即开始录制,结束推流才可停止录制,暂无法按需停启;若在推流过程中删除录制规则,录制仍然会继续,直到推流结束 。 仅支持对接收到的源直播流进行录制,暂不支持录制直播转码流。
  • 产品特性 全球加速 全球节点2800+,带宽储备能力大于100Tbps。 极致体验 支持千万级并发,自研拥塞控制算法与智能调度策略,保证超清、流畅的直播效果,卡顿率低于1%。高清低码使用更符合人眼主观的率失真决策模型,能在同等画质基础上降低30-40%直播码率。 稳定可靠 支持多中心和跨区域的集群保障和容灾能力,7*24小时服务支持。基于华为20年实践经验的云原生2.0搭建的直播服务架构安全可信、敏捷智能,可快速弹性扩容,为您的直播业务保驾护航。 数据统计 提供包含直播用量统计、增值服务统计、流播放画像等多维度、全景数据查询。支持全量访问日志下载,方便客户进行业务分析,助力业务发展。
  • 注意事项 目前暂只支持直播协议为RTMP和HTTP-FLV,且AppName为live的播放配置延时,若其它App需修改延时配置请提交工单申请。 推流端GOP值不能大于配置的延时,播放的实际延时受播放端的网络情况等因素影响。 播放延时修改后,需重新推流才可生效。 直播延时时间配置过短(2s),会影响HLS视频的播放体验,如:秒开。为避免不好的体验,请配置较长的延时时间(4s或6s)。 低时延直播场景下,不建议使用此功能。
  • 鉴权方式D 鉴权方式D主要通过Key、timestamp和StreamName计算鉴权串。 鉴权URL格式 原始URL?hwSecret=hmac_sha256(Key, StreamName + hwTime)&hwTime=hex(timestamp) 表5 鉴权字段描述 字段 描述 hwTime 播放URL的有效时间,为Unix时间戳的十六进制结果。 如果当前hwTime+时长的值大于当前请求的时间则可以正常播放,否则播放会被后台拒绝。 示例:5eed5888(即2020.06.20 08:30:00) Key 在控制台设置的防盗链Key值,具体请参见开启Key防盗链。 hwSecret URL中的加密参数。 以Key和StreamName+hwTime为参数进行HMAC-SHA256加密算法得出。 hwSecret = hmac_sha256(Key, StreamName + hwTime) 时长 鉴权URL的有效时间长度。 若hwTime设置为当前时间,有效时间设置为1249s,则播放URL过期时间为当前时间+ 1249s。 鉴权URL示例 标准直播场景 以生成播放鉴权地址为例,推流鉴权地址的生成与播放鉴权地址的生成同理。 原始URL:http://test-play.example.com/livetest/huawei1.flv Key:GCTbw44s6MPLh4GqgDpnfuFHgy25Enly StreamName:huawei1 hwTime:5eed5888 时长:1249s 根据计算公式,得到hwSecret。 hwSecret = hmac_sha256(GCTbw44s6MPLh4GqgDpnfuFHgy25Enly, huawei15eed5888) = ce201856a0957413319e883c8ccae13602f01d3d91e21daf5161964cf708a6a8 则鉴权播放地址为: http://test-play.example.com/livetest/huawei1.flv?hwSecret=ce201856a0957413319e883c8ccae13602f01d3d91e21daf5161964cf708a6a8&hwTime=5eed5888
  • 鉴权方式B 鉴权方式B主要通过Key、timestamp和StreamName计算鉴权串。 鉴权URL格式 原始URL?txSecret=md5(Key + StreamName + txTime)&txTime=hex(timestamp) 表3 鉴权字段描述 字段 描述 txTime 播放URL的有效时间,为Unix时间戳的十六进制结果。 如果当前txTime的值大于当前请求的时间则可以正常播放,否则播放会被后台拒绝。 示例:5eed5888(即2020.06.20 08:30:00) Key 在控制台设置的防盗链Key值,具体请参见开启Key防盗链。 txSecret URL中的加密参数。 通过将key,StreamName,txTime依次拼接的字符串进行MD5加密算法得出。 txSecret = md5(Key + StreamName + txTime) 时长 鉴权URL的有效时间长度。 若txTime设置为当前时间,有效时间设置为1249s,则播放URL过期时间为当前时间+ 1249s。 鉴权URL示例 标准直播场景 以生成播放鉴权地址为例,推流鉴权地址的生成与播放鉴权地址的生成同理。 原始URL:http://test-play.example.com/livetest/huawei1.flv Key:GCTbw44s6MPLh4GqgDpnfuFHgy25Enly StreamName:huawei1 txTime:5eed5888 时长:1249s 根据计算公式,得到txSecret。 txSecret = md5(GCTbw44s6MPLh4GqgDpnfuFHgy25Enlyhuawei15eed5888) = 5cdc845362c332a4ec3e09ac5d5571d6 则鉴权播放地址为: http://test-play.example.com/livetest/huawei1.flv?txSecret=5cdc845362c332a4ec3e09ac5d5571d6&txTime=5eed5888
  • 鉴权方式A 鉴权方式A主要通过Key、timestamp、rand(随机数)、uid(设置为0)和URL计算鉴权串。 鉴权URL格式 原始URL?auth_key={timestamp}-{rand}-{uid}-{md5hash} md5hash的计算公式: sstring = "{URI}-{Timestamp}-{rand}-{uid}-{Key}" HashValue = md5sum(sstring) 表2 鉴权字段描述 字段 描述 timestamp 用户定义的有效访问时间起始点,值为1970年1月1日以来的当前时间秒数 。十进制或者十六进制整数。 示例:1592639100(即2020-06-20 15:45) 时长 鉴权URL有效的时间长度。 若设置的有效时间为1800s,则用户可在从timestamp开始的1800s内允许访问直播地址。超出该区间,鉴权失败。 示例:若设置的访问时间为2020-6-30 00:00:00,则链接真正失效时间为2020-6-30 00:30:00。 rand 随机数,建议使用UUID,不能包含中划线"-"。 示例:477b3bbc253f467b8def6711128c7bec uid userID。暂未使用,直接设置成0即可。 md5hash 通过md5算法计算出来的验证串,数字0-9和小写英文字母a-z混合组成,固定长度32。 sstring = "{URI}-{Timestamp}-{rand}-{uid}-{Key}" HashValue = md5sum(sstring) URI 指原始URL中从域名后开始到最后的路径。 标准直播场景 示例:/livetest/huawei1.flv 低时延直播场景 示例:/livetest/huawei1.sdp Key 在控制台设置的防盗链Key值,具体请参见开启Key防盗链。 鉴权URL示例 标准直播场景 以生成播放鉴权地址为例,推流鉴权地址的生成与播放鉴权地址的生成方法相同。 原始URL:http://test-play.example.com/livetest/huawei1.flv timestamp:1592639100 时长:1800s Key:GCTbw44s6MPLh4GqgDpnfuFHgy25Enly rand:477b3bbc253f467b8def6711128c7bec uid:0 URI:/livetest/huawei1.flv 根据计算公式,得到md5hash。 HashValue = md5sum("/livetest/huawei1.flv-1592639100-477b3bbc253f467b8def6711128c7bec-0-GCTbw44s6MPLh4GqgDpnfuFHgy25Enly") = dd1b5ffa00cf26acec0c169ae1cfabea 则鉴权播放地址为: http://test-play.example.com/livetest/huawei1.flv?auth_key=1592639100-477b3bbc253f467b8def6711128c7bec-0-dd1b5ffa00cf26acec0c169ae1cfabea
  • 注意事项 该功能为可选项,默认不启用。启用该功能后,原始直播加速URL将无法使用,需要按规则生成合法的防盗链URL。 建议推流与播放鉴权使用不同的Key值,以增强安全性。若防盗链URL过期,或者签名不能通过,直播流将播放失败,并返回“403 Forbidden”信息。 使用HLS鉴权播放时,如果鉴权参数过期,二级CNAME地址仍可继续播放。如需二级CNAME也遵循鉴权过期时,返回“403 Forbidden”,需要提交工单,联系技术支持进行后台配置后生效。 针对RTMP、FLV这类长连接业务,只有服务端收到用户请求时,才进行防盗链参数校验,校验通过后可以持续播放。 针对HLS这类业务,用户播放后会携带相同的防盗链参数,持续发起请求。一旦防盗链参数过期,服务端便会因校验不通过,而拒绝访问,导致播放中断。 所以建议这类业务,适当调整鉴权过期时间,避免因时间过短,而中途就播放失败。示例:如果预估HLS播放时长每次都在1小时以内,可设置过期时间为3600秒。
  • 回调示例 录制文件生成事件回调示例如下。回调消息体字段如表2所示。 { "project_id": "70b76xxxxxx34253880af501cdxxxxxx", "job_id": "dc0a1773-0cef-xxxx-xxxx-9a38fdb095d2", "task_id": "51126d0ebe94b1da00d2e21a10xxxxxx", "event_type": "RECORD_FILE_COMPLETE", "publish_domain": "push.example.com", "app": "live", "stream": "mystream", "record_format": "HLS", "download_url": "https://obs.cn-north-4.myhuaweicloud.com/live/record-xxxx-mystream-1589967495/record-push.example.com-live-mystream-1589967495.m3u8", "asset_id": "1a0d8e9bfaexxxxxxbe5021e62aa1e96", "file_size": 3957964, "record_duration": 120, "start_time": "2020-03-08T14:10:25Z", "end_time": "2020-03-08T14:12:25Z", "width": 1280, "height": 720, "obs_location": "https://obs.cn-north-4.myhuaweicloud.com", "obs_bucket": "mybucket", "obs_object": "live/record-xxxx-mystream-1589967495/record-hwpublish.myun.tv-live-mystream-1589967495.m3u8", "auth_sign": "4f97f46759axxxxxx7ad21e9935dc175", "auth_timestamp": 1583676745 }
  • 注意事项 启用开停播通知功能后,直播活动中的每一次推流和断流都将会接收到相应的直播状态通知消息。但在推流和断流时间比较相近的情况下,由于网络传输等原因可能会影响服务端接收到消息的时序,即可能会导致接收到的推流和断流通知消息的先后顺序无法对应上。您需要通过查看通知消息中的推流Unix时间戳参数publish_timestamp,确定推流和断流消息是否属于同一次推流活动(同一次推流活动产生的推流和断流通知消息的时间戳是相同的)。
  • 回调示例 直播推流和断流生成事件通知示例如下。通知消息体字段如表1所示。 { "domain":"push.example.com", "app":"live", "stream":"example_stream", "user_args":"auth_info=yz1TG0PVN/5isfyrGrRj10gKPCWqSS2X02t6QsRrocH+mEq0gQ0g8k6KhalS84sQ+kDprFyqI0yajbYiFmUO8e45B7ryaS+MpJBlYkhwnuFLnRiKK/IXG7.33436b625354564f6e4d4d434f55&cdn=hw", "client_ip":"100.111.*.*", "node_ip":"112.11.*.*", "publish_timestamp":"1587954134", "event":"PUBLISH", "auth_timestamp":1587954140, "auth_sign":"ff3b2bxxx5cfd56e76d72bed4c4aa2dxxxca8c2e46467d205a6417d4fc" }
  • 相关链接 若您使用自有域名进行直播推流或播放,您可以在直播开始前配置直播其它相关功能,具体如下所示: 若您需要使用直播录制功能,请在直播推流前,配置直播录制规则。 若您需要使用直播截图功能,请在直播推流前,配置直播截图模板。 若您需要对直播资源进行转码,以便适应不同播放场景,请在直播推流前,配置直播转码功能,并使用转码播放地址进行播放。 若您需要配置安全机制保障直播资源的安全,请在直播推流前,配置直播鉴权。
  • 推流 获取推流地址。 登录视频直播控制台,在左侧导航树中选择“域名管理”,进入域名管理页面。 在对应的推流域名行单击“管理”,进入基本信息页面获取推流地址。 示例如图1所示,其中“StreamName”为自定义的,如推流地址: rtmp://livepush-test.huaweicloud.com/live/huawei09。 图1 推流地址 图中域名仅为示例,实际使用时,您需要使用已配置的推流域名。 运行OBS工具,单击右下角的“设置”。 在左侧菜单栏选择“输出”,将“输出模式”配置为“高级”,“关键帧间隔”配置为“2”。 在左侧菜单栏选择“流”,输入步骤1获取的直播推流URL。 推流地址分两部分输入“URL”和“流名称”中。具体填写规则如下: “服务器”:填写包含AppName前的地址,如"rtmp://livepush-test.huaweicloud.com/live/"。 “串流密钥”:填写包含“StreamName”后的地址,如“huawei09”。 由于使用的OBS工具版本不同,界面参数的名称可能会不同,但填写规则是相同的。 单击“确定”,完成直播推流地址的配置。 在“来源”区域单击右键,选择直播流来源。 媒体流:表示本地媒体文件。 视频捕获设备:表示摄像头,若PC有配套摄像头,会直接启用摄像头。 单击右下角的“开始推流”,开始推送直播流。
  • 使用限制 单账号跟踪的事件可以通过 云审计 控制台查询。多账号的事件只能在账号自己的事件列表页面去查看,或者到组织追踪器配置的OBS桶中查看,也可以到组织追踪器配置的 CTS /system日志流下面去查看。 用户通过云审计控制台只能查询最近7天的操作记录。如果需要查询超过7天的操作记录,您必须配置转储到 对象存储服务 (OBS),才可在OBS桶里面查看历史文件。否则,您将无法追溯7天以前的操作记录。 云上操作后,1分钟内可以通过云审计控制台查询管理类事件操作记录,5分钟后才可通过云审计控制台查询数据类事件操作记录。
  • 带宽/流量 选择需要查看的时间、播放域名及计费大区,即可在带宽用量趋势或流量用量趋势区域查看到相关数据。 您可以单击,将下行带宽/流量详情导出到本地。 带宽用量趋势图中呈现的是所选域名的总带宽趋势。 将鼠标放置在图表上,可查看具体数值,滚动鼠标滚轮可整体加长或缩短展示横轴的时间段。 图1 下行带宽趋势 流量用量趋势图中展示的是所选域名的总流量趋势。 将鼠标放置在图表上,可查看具体数值,滚动鼠标滚轮可整体加长或缩短展示横轴的时间段。 图2 下行流量详情
  • 录制用量 系统每5分钟统计1个录制并发总路数,每小时得到12个值,取其中最大值作为该小时内的统计点,即该小时内的录制用量。 选择需要查看的时间,即可在录制峰值趋势区域查看到相关数据。 录制峰值趋势中呈现的是该账户每小时直播流录制的最大并发数,如图5所示。 将鼠标放置在图表上,可查看具体数值,滚动鼠标滚轮可整体加长或缩短展示横轴的时间段。 将鼠标指针停留在趋势图上,滚动鼠标滚轮可针对某时间跨度范围内的趋势图时间横轴进行拉大或缩小整体占比。 图5 录制峰值趋势
共100000条