使用CDN为边转边播加速

如果加速域名的源站使用的是阿里云对象存储OSS,并且OSSBucket被配置为私有模式(可以起到访问鉴权的作用,避免非授权的请求盗刷流量),该情况下建议您给加速域名开启OSS私有Bucket回源功能,可以实现通过CDNDCDN加速OSS私有Bucket资源。在视频上传至对象存储OSS后,通过边转边播功能即可实现在不同终端和网络环境下播放视频,如果您希望提高边转边播的速度和效率,可以考虑通过CDN服务进行加速,实现减少OSS带宽,降低负载的效果。

适用场景

适用于热点视频的播放,使用CDN缓存和分发机制可以减轻原始视频存储(如OSS)的负载,降低带宽成本,同时为用户提供快速、稳定的视频播放体验。

前提条件

使用方法

步骤一:使用RAM访问控制服务开启CDN回源OSS私有Bucket权限

在配置OSS私有Bucket回源时,系统会提示您授予CDN访问云资源的权限,并会自动在RAM中创建AliyunCDNAccessingPrivateOSSRole角色。您需要通过RAM访问控制服务修改AliyunCDNAccessingPrivateOSSRole的权限策略,以授予CDN访问IMM相关的权限。

下面分别介绍监控授权方式和精细化授权方式。

  1. 授予AliyunCDNAccessingPrivateOSSRole全部IMM、OSS权限。

    lQLPJwnayVIjBu3NAprNBRmw47a43DIWzK0GDrqrts9NAA_1305_666

  1. 授予AliyunCDNAccessingPrivateOSSRole 自定义精细化权限,请参考权限策略文档。下面创建策略名称为aliplayer-test,授予IMM、OSS最小权限。

    lQLPJw1pMNpkgI3NAlDNBQ6wmmdn6k_aL5YGDroSiPggAA_1294_592

{
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "oss:GetObject",
                "oss:PostProcessTask",
                "oss:ProcessImm"
            ],
            "Resource": "*"
        },
        {
            "Action": [
                "imm:GenerateVideoPlaylist",
                "imm:LiveTranscoding"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Effect": "Allow",
            "Action": "ram:PassRole",
            "Resource": "acs:ram:*:*:role/aliyunimmdefaultrole"
        }
    ],
    "Version": "1"
}

步骤二:私有回源配置边转边播

  1. 登录CDN控制台

  2. 在左侧导航栏,单击域名管理

  3. 域名管理页面,单击目标域名对应的管理

  4. 在指定域名的左侧导航栏,单击规则引擎

  5. 规则引擎页面,单击添加规则,规则为匹配文件名扩展名是".ts"。

    image

    说明

    如果您Bucket中还存在非边转边播产生的Ts文件,请添加文件路径匹配。

  6. 在指定域名的左侧导航栏,单击回源配置,在回源参数改写页面开启“功能开关”,在添加参数中填入x-oss-process=if_status_eq_404{hls/ts},在规则条件中选择刚才创建好的规则,添加“回源配置”条件。

    image

通过CDN访问直接触发边转边播

由于在配置私有回源中已经添加了ts文件的回源参数,因此对m3u8不需要再进行hls/sign处理。直接使用CDN域名添加m3u8文件路径即可触发边转边播,可参考边转边播查看。

重要

需使用支持hls播放的浏览器或者播放器访问m3u8文件,例如VLC播放器。