直播转码

更新时间:
复制 MD 格式

直播转码功能将推送的原始直播流,在云端转换为不同编码格式、分辨率、码率的转码流推送给观众,解决推流端因码率或编码不合适导致播放卡顿、不兼容等问题。

使用场景

  • 适配不同网络带宽:当推流端码率较高而客户端带宽资源有限,会导致视频播放卡顿;当推流端码率较低时,会导致视频播放效果不好。使用直播转码服务可以快速帮您解决这些问题。

  • 支持播放器多码率切换:为同一路推流提供多种码率的播流地址,便于前端播放器根据网络环境平滑切换。

  • 降低带宽成本:支持将 H.264 推流实时转码为 H.265 格式播放,在同等画质下可节省带宽。

  • 解决浏览器兼容性:支持将 H.265 推流实时转码为 H.264,解决原生浏览器不支持 H.265 的播放问题。

功能介绍

直播转码功能分为通用转码、自定义转码、多码率转码和H5自动转码。

  • 通用转码:快速引用系统预设模板,码率由系统预设,不可修改。

  • 自定义转码:自定义转码配置,包括编码格式、分辨率、码率、帧率、GOP、加密及 SEI 透传等。

  • 多码率转码:在单个模板组内配置多路不同规格的转码流。播放器可根据终端网络状况自适应切换码率。

  • H5自动转码:专为超低延时直播(artc://)设计,解决原生浏览器不支持视频B帧和AAC编码的问题。

转码规则

  • 触发转码

    视频直播默认支持触发转码。系统检测到某一路转码流有播放请求(首次拉流)时才启动转码。转码过程中系统会根据播放状态和后台任务运行状态自动判定是否停止转码:

    • 当后台任务(录制、时移、截图、审核等)仍在运行时,即使无人播放,系统也会保持流连接并继续转码。

    • 当无任何后台任务运行,且 5 分钟内检测到无人观看时,系统自动停止转码。

    说明

    如需无视后台任务,在无人播放时即停止转码,可提交工单进行后台配置。

  • 单次执行

    对于同一路输入直播流,每一种特定规格的输出流仅执行一次转码,不因观众数量增加而重复消耗转码资源。

  • 分发协议

    转码输出流目前支持以下分发协议,以适配不同终端和网络环境:FLV、RTMP、HLS 、RTS。其中,实现多码率转码仅支持 HLS 协议。

分辨率自适应

通用转码和自定义转码支持分辨率自适应,防止画面被拉伸、压扁或变形。转码根据横屏或竖屏采用分辨率自适应的算法。

  • 若是横屏自适应转码,转码后视频将根据模板高度自适应宽度。

    例如:将1920x1080的视频套用通用转码流畅横屏模板(模板ID:ld,高度:360),转码后分辨率为640x360

  • 若是竖屏自适应转码,转码后视频将根据模板宽度自适应高度。

    例如:将1920x1080的视频套用通用转码流畅竖屏(模板ID:ld-v,宽度:360),转码后分辨率为360x203

分辨率档位与计费

分辨率档位决定转码计费价格,判定规则基于输出视频分辨率的长边和短边:

档位

分辨率范围

LD

长边 ≤640 且 短边 ≤480

SD

长边 ≤1280 且 短边 ≤720

HD

长边 ≤1920 且 短边 ≤1080

2K

长边 ≤2560 且 短边 ≤1440

4K

长边 ≤3840 且 短边 ≤2160

判定示例:以SD(1280×720)规格为例:

  • 如果输出视频的分辨率长边小于等于1280且短边小于等于720,则该视频属于SD规格。

  • 如果输出视频的长边大于1280或短边大于720,则该输出视频属于更高的输出规格。

使用直播转码功能会产生转码费用,按转码标准、分辨率档位及对应总转码时长计费。计费规则详见直播转码费用

重要

转码计费根据分辨率档位(LD、SD、HD、2K、4K)决定,与模板ID名称(如lld、ld等)无关。模板ID仅作为业务调用时的标识使用,请勿混淆。

使用限制

  • 模板类型

    同一个模板里,转码模板类型不能同时配置标准模板窄带高清TM模板

  • AppName匹配

    系统根据推流地址中的AppName匹配转码模板。推流地址中的AppName和转码模板指定的AppName一致时,转码模板才生效。如果不存在,则会匹配域名下AppName配置为通用符(*)的转码模板。

  • 子域名配置继承

    子播流域名默认复用主播流域名的转码模板配置,在子播流域名上单独配置的转码模板无效。

  • 转码并发流限制

    直播中心为北京、上海、深圳时,每个域名下最多支持300路转码并发流。其他直播中心每个域名下最多支持50路转码并发流。如果一路高清分辨率直播流输入,同时转码成标清和流畅分辨率进行输出播放,算2路转码流。当达到上限后,转码超限的播放连接会播放原始流。可前往播流域名的基础信息页了解当前用量以及提升配额。

功能配置

通用转码

通用转码支持通过控制台或 API 进行配置。完成配置后,重新推流才可生效。

控制台配置

  1. 登录视频直播控制台

  2. 在左侧导航栏选择功能管理>直播转码

  3. 选择您所需要配置的域名,在通用转码页签,单击添加,配置转码模板参数。

    参数

    说明

    AppName

    系统根据推流地址中的AppName匹配转码模板。系统优先精确匹配;无精确匹配时匹配通配符 *

    触发转码

    • 开启时:首次拉转码流时才启动转码。具体规则参见触发转码

    • 关闭时:只要有推流就启动转码,与是否有拉流无关。

    转码模板类型

    • 模板类型

      可选标准模板窄带高清TM模板。两者画质、性能和费用不同,每次配置仅能选择其中一种类型。其中,标准模板提供“原画-仅转音频”转码模板。

    • 规格配置(支持多选)

      可勾选多个预设规格。针对每种规格,可自主选择以下属性:

      • 横竖屏:横屏自适应或竖屏自适应。

      • 编码格式:H.264 或 H.265。

      • 转码模式:画质优先或时延优先(低延迟)。

      模板ID以及其他说明请参见系统预设模板

    直播加密

    开启后可选择配置阿里云视频加密DRM加密

    说明

    DRM加密仅支持上海、新加坡直播中心。

    • 阿里云视频加密

      • 阿里云视频加密仅支持输出HLSFLV格式。

      • KMS主密钥ID:KMS密钥的区域需要和域名的直播中心保持一致。如果没有密钥,请先前往KMS服务创建一个密钥, 具体操作请参见购买和启用 KMS 实例

      • Key周期:取值范围为60~3600内的整数。

      • 更多阿里云视频加密功能使用可参见阿里云视频加密

    • DRM加密

      • 开启前,需要先配置DRM密钥。具体操作请参见配置DRM加密

      • 支持播放协议为HLSWidevineFairplayDRM加密,其中Fairplay需要在DRM证书管理中上传从Apple获取的证书。具体操作请参见申请Fairplay证书

API配置

调用 AddLiveStreamTranscode API,根据域名和AppName添加通用转码配置。

完整参数说明请参见AddLiveStreamTranscode - 添加转码配置信息

自定义转码

如果通用转码模板不能满足您的要求,您可以使用自定义转码自主配置编码格式、分辨率、码率、帧率、GOP等设置。

自定义转码支持通过控制台或 API 进行配置。完成配置后,重新推流才可生效。

控制台配置

  1. 登录视频直播控制台

  2. 在左侧导航栏选择功能管理>直播转码

  3. 选择您所需要配置的域名,在自定义转码页签,单击添加,配置转码模板参数。

    基础配置

    参数

    说明

    AppName

    系统根据推流地址中的AppName匹配转码模板。系统优先精确匹配;无精确匹配时匹配通配符 *

    模板ID

    自定义设置,用于拼接转码流地址。

    同一个域名下,AppName与模板ID以复合主键的形式存在,自定义模板ID不能与系统预设模板相同。

    转码模板类型

    可选:标准模板窄带高清TM模板纯音频转码模板(只输出音频流)。

    推荐模板参数

    流畅、标清、超清、高清四种推荐模板,选中不同的模板,对应的帧率、码率、分辨率会根据系统默认的值进行填入,可在此基础上进行调整。

    视频配置(纯音频转码模式下不显示)

    参数

    说明

    编码格式

    支持H.264H.265。

    分辨率

    视频输出的分辨率,单位:像素。可选择固定分辨率或分辨率随源:

    • 固定分辨率:按指定分辨率输出,不同的分辨率档位对应不同的价格。

    • 分辨率随源:若源流分辨率宽高尺寸小于自适应尺寸宽高,按源流输出。若源流分辨率宽高尺寸大于自适应尺寸宽高,按自适应尺寸输出。可选择不同的自适应方式:

      • 短边自适应

      • 长边自适应

      • 横竖屏自适应

    说明

    控制台不支持分辨率超过1080P的自定义设置。如果您的场景需要2K、4K规格分辨率,可以提交工单申请。

    视频帧率

    • 帧率随源:若帧率在限制范围内,按源帧率输出,超过上限按上限输出,低于下限按下限输出。

    • 固定帧率:输出指定的视频帧率,单位:FPS。数值低于或等于输入帧率。

    视频码率

    • 码率随源:若码率在限制范围内,按源码率输出,超过上限按上限输出,低于下限按下限输出,同时支持按倍率输出。

    • 固定码率:使用指定的码率,单位:kbps。

      视频码率会尽量接近您设定的值,但实际的码率不能保证和设定的值完全一致,尤其当设定的码率过大或过小时。不同分辨率档位推荐的码率范围如下:

      • LD: 100-800

      • SD: 200-1500

      • HD: 500-4000

      • 2K: 2000-8000

      • 4K: 4000-30000

    视频GOP

    两个I帧之间的间隔,数值低于或等于输入视频GOP。为了保障低延时效果不能大于3秒。

    纯音频配置(仅纯音频转码模式下显示)

    参数

    说明

    编码格式

    仅支持AAC。

    音频码率

    纯音频流的输出码率。取值范围:8-1000 kbps。

    编码档次

    • LC-AAC:低复杂性高级音频编码。转码效率较高。

    • HE-AAC:高效性高级音频编码。在低音频码率(通常128 kbps以下)时音效要高于LC-AAC。

    采样率

    音频采样率(单位:Hz)。可选:22050、32000、44100、48000、96000。

    声道数

    输出音频声道。可选:1(单声道)或 2(双声道)。

    高级配置

    参数

    说明

    转码模式

    • 画质优先:在同等码率下提供更佳的视觉效果。
      时延优先:降低转码链路的延时。

    触发转码

    • 开启时:首次拉转码流时才启动转码。具体规则参见触发转码

    • 关闭时:只要有推流就启动转码,与是否有拉流无关。

    视频加密

    开启后可选择配置阿里云视频加密DRM加密

    说明

    DRM加密仅支持上海、新加坡直播中心。

    • 阿里云视频加密

      • 阿里云视频加密仅支持输出HLSFLV格式。

      • KMS主密钥:KMS密钥的区域需要和域名的直播中心保持一致。如果没有密钥,请先前往KMS服务创建一个密钥, 具体操作请参见购买和启用 KMS 实例

      • Key周期:取值范围为60~3600内的整数。

      • 更多阿里云视频加密功能使用可参见阿里云视频加密

    • DRM加密

      • 开启前,需要先配置DRM密钥。具体操作请参见配置DRM加密

      • 支持播放协议为HLSWidevineFairplayDRM加密,其中Fairplay需要在DRM证书管理中上传从Apple获取的证书。具体操作请参见申请Fairplay证书

    透传所有类型SEI

    开启后,源流中的所有类型SEI都会完整透传至转码后的输出流。不开启则不透传SEI。

    关键帧随源

    开启后,转码输出流关键帧与原始流关键帧一致。

    pts随源

    开启后,转码输出流显示时间戳(PTS)与原始输入流一致。

    去隔行

    开启后,在转码过程中自动检测并将隔行扫描转换为逐行扫描。

API配置

调用AddCustomLiveStreamTranscode API,根据域名和AppName添加自定义转码配置。

自定义转码参数设置较为复杂,控制台支持分辨率尺寸效果预览以及快捷填入流畅,标清,高清,超清模板参数。建议您先通过控制台添加一个自定义转码配置,再调用:

多码率转码

多码率转码允许在一个转码模板组内配置多种不同规格的模板。播放器可根据终端用户的实时网络带宽环境,自动、无缝切换到相应码率的直播流,从而有效提升在网络波动环境下的播放体验。

目前多码率转码只能通过视频直播控制台进行配置。完成配置后,重新推流才可生效。

控制台配置

  1. 登录视频直播控制台

  2. 在左侧导航栏选择功能管理>直播转码

  3. 选择您所需要配置的域名,在多码率转码页签,单击添加,配置转码模板组参数。

    1. 单击基本信息,编辑多码率转码模板组基本信息。

      参数

      说明

      AppName

      系统根据推流地址中的AppName匹配转码模板。系统优先精确匹配;无精确匹配时匹配通配符 *

      模板组ID

      自定义设置,用于拼接转码流地址。

      同一个域名下,AppName与模板组ID以复合主键的形式存在。

      封装格式

      目前仅支持HLS。

      触发转码

      目前仅支持推流时触发转码,推流成功即开始对组内所有子模板规格进行转码。暂不支持拉流触发转码。

      时间戳对齐

      开启后,每个模板的GOP项不可设置,采用源视频的GOP。

    2. 模板区域,点击 + 添加模板,向该组内添加一个规格的模板。不同模板类型需填写的参数可能不同。

      参数

      说明

      模板ID

      转码模板组内单个模板的ID。同一个模板组内的模板ID不能重复。

      模板类型

      可选:标准模板窄带高清TM模板纯音频转码模板(只输出音频流)。

      编码格式

      视频支持 H.264 和 H.265;音频目前仅支持 AAC。

      分辨率

      指定输出视频的分辨率,单位:像素。多码率转码不支持自适应分辨率。分辨率档位决定计费规格,详情请参见分辨率档位与计费

      视频码率

      指定输出视频的码率,单位:kbps。

      视频码率会尽量接近您设定的值,但实际的码率不能保证和设定的值完全一致,尤其当设定的码率过大或过小时。不同分辨率档位推荐的码率范围如下:

      • LD: 100-800

      • SD: 200-1500

      • HD: 500-4000

      • 2K: 2000-8000

      • 4K: 4000-30000

      视频帧率

      输出视频帧率,单位:FPS。数值低于或等于输入帧率。

      视频GOP(帧)

      两个I帧之间的间隔,数值低于或等于输入视频GOP。为了保障低延时效果不能大于3秒。

      编码档次(纯音频转码)

      • LC-AAC:低复杂性高级音频编码。转码效率较高。

      • HE-AAC:高效性高级音频编码。在低音频码率(通常128 kbps以下)时音效要高于LC-AAC。

      采样率(纯音频转码)

      音频采样率(单位:Hz)。可选:22050、32000、44100、48000、96000。

      码率(纯音频转码)

      纯音频流的输出码率。取值范围:8-1000 kbps。

      声道数(纯音频转码)

      输出音频声道。可选:1(单声道)或 2(双声道)。

      带宽上限阈值

      取值范围:100 Kbps - 100 Mbps 的整数或小数(保留两位小数)。建议设置为视频码率的1.2-1.5倍。

  4. 点击 + 添加模板,完成组内所有子模板的配置后,单击确定

效果示例:

使用Web端阿里云播放器播放多码率转码流,播放器自动根据终端网络带宽环境,播放相应码率的转码流:

image

H5自动转码

超低延时直播RTSWebRTC信令交互方式为基础,原生浏览器WebRTC不支持视频B帧和AAC编码。H5自动转码将为您实现自适应的转码,保障流畅播放:

  • 如果推流中包含B帧和AAC音频,系统将自动触发视频转码去除B帧和音频转码AACOpus,按源分辨率对应档位收取标准视频转码费

  • 如果推流中不含B帧但包含AAC音频,系统将自动触发音频转码AACOpus,按纯音频转码收费

开通超低延时直播时自动开启H5自动转码功能,具体操作请参见步骤五:开通超低延时直播功能

说明

H5自动转码可以和通用转码或自定义转码功能叠加使用。如需对视频内容进行转码(调整码率,帧率,分辨率等),仍需配置通用转码或自定义转码。系统会在该模板基础上同时进行去B帧和转Opus处理,最终按叠加后的结果收取转码费用。

转码流地址

通用转码和自定义转码支持 FLV、RTMP、HLS 和 RTS 协议,多码率转码仅支持 HLS 协议。

您可以通过以下两种方式获取转码地址:

  • 自定义拼接

    在原播流地址的StreamName后添加_转码模板ID,拼接出对应的转码流地址。详细地址拼接规则,请参见生成直播地址

    说明

    播放多码率转码流,还必须在原播流地址中追加固定必填字段: aliyunols=on

  • 控制台查看

    登录视频直播控制台,选择流管理 > 在线流,在对应的推流记录中点击操作列直播地址,查看各协议对应的转码流地址。

相关文档

附录

系统预设模板

标准模板

转码模板

画质优先模板ID-H264

画质优先模板ID-H265

时延优先模板ID-H264

时延优先模板ID-H265

分辨率

码率

流畅(横屏)

lld

lld265

lld-ll

lld265-ll

宽度自适应,高度:360

≤470

标清(横屏)

lsd

lsd265

lsd-ll

lsd265-ll

宽度自适应,高度:432

≤680

高清(横屏)

lhd

lhd265

lhd-ll

lhd265-ll

宽度自适应,高度:648

≤1500

超清(横屏)

lud

lud265

lud-ll

lud265-ll

宽度自适应,高度:1080

≤2500

标清(横屏)

lsd540

lsd265-540

lsd540-ll

lsd265-540-ll

宽度自适应,高度:540

≤680

流畅(竖屏)

lld-v

lld265-v

lld-v-ll

lld265-v-ll

宽度:360,高度自适应

≤470

标清(竖屏)

lsd-v

lsd265-v

lsd-v-ll

lsd265-v-ll

宽度:432,高度自适应

≤680

高清(竖屏)

lhd-v

lhd265-v

lhd-v-ll

lhd265-v-ll

宽度:648,高度自适应

≤1500

超清(竖屏)

lud-v

lud265-v

lud-v-ll

lud265-v-ll

宽度:1080,高度自适应

≤2500

标清(竖屏)

lsd540-v

lsd265-540-v

lsd540-v-ll

lsd265-540-v-ll

宽度:540,高度自适应

≤680

原画-仅转音频

oriopus

原画-仅转音频

oriaac

窄带高清™模板

转码模板

画质优先模板ID-H264

画质优先模板ID-H265

时延优先模板ID-H264

时延优先模板ID-H265

分辨率

码率

流畅(横屏)

ld

ld265

ld-ll

ld265-ll

宽度自适应,高度:360

≤450

标清(横屏)

sd

sd265

sd-ll

sd265-ll

宽度自适应,高度:432

≤480

高清(横屏)

hd

hd265

hd-ll

hd265-ll

宽度自适应,高度:648

≤1200

超清(横屏)

ud

ud265

ud-ll

ud265-ll

宽度自适应,高度:1080

≤1300

标清(横屏)

sd540

sd265-540

sd540-ll

sd265-540-ll

宽度自适应,高度:540

≤480

流畅(竖屏)

ld-v

ld265-v

ld-v-ll

ld265-v-ll

宽度:360,高度自适应

≤450

标清(竖屏)

sd-v

sd265-v

sd-v-ll

sd265-v-ll

宽度:432,高度自适应

≤480

高清(竖屏)

hd-v

hd265-v

hd-v-ll

hd265-v-ll

宽度:648,高度自适应

≤1200

超清(竖屏)

ud-v

ud265-v

ud-v-ll

ud265-v-ll

宽度:1080,高度自适应

≤1300

标清(竖屏)

sd540-v

sd265-540-v

sd540-v-ll

sd265-540-v-ll

宽度:540,高度自适应

≤480