更新时间:2024-08-31 GMT+08:00

直播转码

视频直播支持直播转码功能,支持将推送的直播流转码成多种分辨率和码率规格的视频流,以满足不同网络环境的用户观看需求。

图1 直播转码架构图

功能介绍

转码功能可以帮助您处理如下问题:

  • 适配不同播放终端:您可以将原始音视频转码为更适应于各终端播放的格式。
  • 适配不同网络环境:您可以根据不同的网络带宽设置转码输出的码率,以适应不同的网络播放环境。
  • 降低分发成本:支持压缩率更高的H.265编码格式,您也可以在转码时开启高清低码功能,在分辨率不变的情况下,码率下降20%左右,从而降低直播流的分发成本。
  • 自定义转码模板:支持自定义配置模板ID、分辨率、码率和帧率。

注意事项

  • 一个域名可以配置多个转码模板,当收到转码流请求时,与请求地址中的AppName一致的转码模板生效,开始进行转码,若不需要转码,请在直播推流前删除转码模板
  • 直播流的转码规则生效配置为直播流启动时的配置内容,若修改了转码配置,则正在直播的在线直播流不会生效,仅对修改配置后新推送的直播流生效。
  • 转码模板中的高清低码默认是关闭的,若您开启,直播转码将按高清低码标准计费,价格详情请参见产品价格详情
  • 暂不支持上采样转码,若转码模板中设置的分辨率高于推流分辨率,对应分辨率的播放地址可以成功播放,但播放视频的分辨率为原始分辨率。

前提条件

费用说明

直播转码功能为计费项,按实际使用的编码标准、转码分辨率和转码时长收取费用。其中,标准转码和高清低码转码产生的费用不同,具体的计费转码分辨率请以产品价格详情中的转码输出分辨率为准。若您比较常使用直播转码功能,建议您优先选择购买直播转码套餐包

新增转码模板

支持通过直播控制台或直播API配置自定义转码模板。配置后,您若需要播放转码直播流,请先获取转码播放地址,具体请参见转码播放地址

  1. 登录视频直播控制台
  2. 在左侧导航栏中,选择域名管理,进入域名管理页面。
  3. 在需要配置转码模板的推流域名行,单击“管理”

    域名的“子服务类型”需要为“云直播”。

  4. 在左侧导航栏中,选择模板配置 > 转码配置,您可以查看目前推流域名下的转码模板信息。
  5. 单击“新建转码”,弹出如图2所示的新建转码页面。

    配置转码参数,参数说明如表1

    图2 新建转码
    表1 转码模板参数说明

    参数名

    描述

    模板名称

    直播转码模板名称。

    应用名

    应用名称,默认为“live”。

    可以根据实际需求进行自定义,支持大小写字母、数字、下划线(_)中划线(-)。

    触发方式

    直播转码触发方式。当收到转码流请求时,与请求地址中的AppName一致的转码模板生效,开始进行转码。

    • 拉流触发:用户播放转码流时,才会触发对应模板的转码任务。
    • 推流触发:用户推流时,就会触发对应模板的转码任务。相比拉流触发转码的方式,转码时长可能会变长,费用也会相应增多。

    默认值:拉流触发。

    注意:

    一个AppName下的转码模板触发方式仅支持一种。如果存在多个转码模板,请谨慎修改转码模板的“触发方式”。因为修改其中一个模板的“触发方式”时,如从“推流触发”修改为“拉流触发”,则AppName下的所有转码模板均会同步变更为“拉流触发”。

    转码类型

    直播转码类型。

    包含如下选项:

    • 标准转码
    • 高清低码

    高清低码相比标准转码在分辨率不变的情况下,码率降低20%左右,费用也更高。

    高清低码是指画质不变的情况下,码率更低。开启后,将按高清低码标准计费。价格详情请参见产品价格详情

    视频编码

    支持标准视频编码格式H.264H.265

    推荐参数

    屏幕分辨率。

    选择对应的分辨率后,会自动填充“视频码率”和“分辨率(宽*高)”参数,给出推荐值。用户也可以根据实际情况,自定义修改。

    视频码率

    转码视频的平均码率。单位:Kbps。

    取值范围:40-30000。

    码率控制

    码率控制策略。

    包含如下选项:

    • 关闭:关闭码率自适应,目标码率按设定的码率输出。
    • 不高于源流:目标码率按设定码率和源文件码率最小值输出(即码率不上扬)。
    • 自适应源流:目标码率按源文件码率自适应输出。

    分辨率(宽*高)

    视频的宽度和高度。单位为像素。

    若宽和高都设置为0,输出的分辨率和源保持一致;若宽和高只有一个为0时,输出的分辨率按非0项的比例进行缩放。

    取值范围

    • 宽度:0、32-3840,设置的数值必须为2的倍数或为0。
    • 高度:0、32-2160,设置的数值必须为2的倍数或为0。

    视频帧率

    转码视频的帧率。

    包含如下选项:

    • 保持原始帧率
    • 设置帧率:选择此项,需要同步输入帧率值。取值范围[0,60],若设置的数值为0,则表示自适应。

    I帧随源

    编码输出I帧策略。

    • 如果关闭,那么I帧按设置的GOP时长输出。
    • 如果开启,那么编码输出的I帧完全和源保持一致,即源是I帧则编码输出I帧,源不是I帧则编码非I帧。

    如果开启,那么GOP时长设置无效。多码率场景下建议开启I帧随源,保障多码率I帧对齐。

    GOP时长

    按时间设置I帧间隔。单位:秒。

    取值范围:[0,10],默认值:2。

    如果GOP时长不为0,则以GOP时长设置I帧间隔;GOP时长为0时,使用默认值。

    GOP时长越大,直播的延迟就越大;GOP时长越小,越可能导致卡顿。

    去B帧

    开启后转码输出的视频编码不含B帧。

  6. 配置完转码模板参数后,单击“确定”

    直播转码界面新增一行转码模板。

  7. 配置转码模板后,若您需要使用转码播放地址进行视频的播放,请参考转码播放地址获取转码播放地址。

管理转码

转码模板配置完成后,您还可以根据实际需要进行如下操作。

  • 修改转码模板

    转码模板创建完成后,若您需要修改部分参数,可以通过单击操作列的“修改”,修改转码模板中的相关参数。其中,AppName不支持修改。

    直播流的转码规则生效配置为直播流启动时的配置内容,若修改了转码配置,则正在直播的在线直播流不会生效,仅对修改配置后新推送的直播流生效。

  • 删除转码模板

    转码模板创建完成后,若您需要删除转码模板,可以通过单击操作列的“删除”,删除该转码模板。