您可以通过使用 CDN 服务来提高 StreamPackage 广告替换服务的效率。CDN 的优势包括内容和广告的缓存、在个性化清单中使用统一的域名,以及 CDN 的 DNS 解析功能。
当使用 CDN 时,StreamPackage SSAI 服务的请求和相应流程如下:
1. 播放器向 CDN 发送请求,获取播放清单。CDN 将该请求转发给 StreamPackage。
2. StreamPackage 从源流服务器获取源流清单,进行广告替换,并分别使用源流 CDN 前缀和 SSAI 服务的 CDN 前缀代替源流内容前缀和广告分片前缀。将个性化的清单发送给 CDN,CDN 返回到播放器。
3. 播放器向清单中的分片 URL 发起请求。
4. CDN 将源流分片请求发送给源服务器,将广告请求发送给 StreamPackage SSAI 服务。
5. 源服务器返回源流分片;SSAI 服务接收到广告请求后,触发跟踪数据的上报,并重定向获取实际的广告分片作为返回。
6. 播放器开始播放。
使用腾讯云云直播
在云直播 > 域名管理 > 开启回源模式 > 源站类型选择 StreamPackage > 勾选并保存所需广告配置,即可自动为该域名下发所需配置。 使用腾讯云 CDN
配置内容
1. 主清单请求,即以/v1/ssai/master
起始的路径,不缓存,直接透传。
GET <StreamPackageURL>/v1/ssai/master/<uniq_id>/xxx.m3u8?xxx1=p1&xxx2=p2
2. 子清单请求,即以/v1/ssai/manifest
起始的路径,按普通清单配置即可。如HLS直播场景,可参见直播.m3u8
文件的缓存配置;HLS点播场景,参见点播.m3u8
文件的缓存配置。
GET <StreamPackageURL>/v1/ssai/manifest/<uniq_id>/<session_id>/xxx.m3u8
3. 个性化广告请求,即以/v1/ssai/segment
起始的路径,按普通.ts
文件配置即可。
GET <StreamPackageURL>/v1/ssai/segment/<uniq_id>/<session_id>/<asset_id>/<seq_num>
4. 所有请求参数全部透传。
操作流程
1. 在腾讯云控制台 > 内容分发网络 > 域名管理 > 基础配置 > 源站信息中,对播放域名配置回源地址和回源 HOST。
您需要将其设置为 StreamPackage 广告插入配置的播放域名,同时也是 Playback endpoint prefix 中的域名,格式为:{appid}.{region}.streampackage.srclivepull.myqcloud.com
。
2. 在缓存配置中,设置为不忽略参数,也即是请求参数全部透传。
3. 在节点缓存过期配置中,根据路径,对不同的请求分别进行缓存配置。
使用第三方 CDN
要使用第三方 CDN 实现个性化广告替换,需要您在外部 CDN 处进行如下配置:
1. 主清单请求,即以/v1/ssai/master
起始的路径,不缓存,直接透传。
GET <StreamPackageURL>/v1/ssai/master/<uniq_id>/xxx.m3u8?xxx1=p1&xxx2=p2
2. 子清单请求,即以/v1/ssai/manifest
起始的路径,按普通清单配置即可。如 HLS 直播场景,可参见直播.m3u8
文件的缓存配置;HLS点播场景,参见点播.m3u8
文件的缓存配置。
GET <StreamPackageURL>/v1/ssai/manifest/<uniq_id>/<session_id>/xxx.m3u8
3. 个性化广告请求,即以/v1/ssai/segment
起始的路径,按普通 ts 配置即可。
GET <StreamPackageURL>/v1/ssai/segment/<uniq_id>/<session_id>/<asset_id>/<seq_num>
4. 所有请求参数全部透传。
本页内容是否解决了您的问题?