带你读《多媒体行业质量成本优化及容灾方案白皮书》3. 点播质量优化(2)

简介: 带你读《多媒体行业质量成本优化及容灾方案白皮书》3. 点播质量优化(2)

带你读《多媒体行业质量成本优化及容灾方案白皮书》3. 点播质量优化(1) https://developer.aliyun.com/article/1351888?groupCode=supportservice


HTTPDNS产品介绍

 

b 视频降码率

在保证画质或对画质要求不高的业务场景下,通过降低视频码率,减轻播放器端对上行带宽的承载压力,从而确保播放流畅。注意在相同帧率、分辨率、编码格式等情况下,码率的降低意味着画质的降低,可能会影响终端用户的播放体验,需要客户根据业务场景综合评估。下面将展开阿里云目前已有转码能力的介绍。

 

传统低码率转码(可能损失画质)可根据需求选择不同的封装格式和清晰度将视频转码播放,适用于长视频。视频点播产品预置了流畅、标清、清、超清、2K、4K、原画(转封装)共7种清晰度,以及普通音质、高音质两档音质。您可以对不同清晰度进行码率、分辨率、格式等自定义设置,同时使用转码模板组进行不同转码模板的分组及管理。

 

窄带高清:窄带高清技术对编码算法进行优化,可以实现在同等画质下更省流、在同等带宽下更高清的观看体验。阿里云直播产品已支持窄带高清配置,参考链接


d) 客户端优化

buffer缓存调整, 具体可以参考直播质量优化-下行播放优化-终端播放器buffer缓冲区中的介绍

 

低帧率检测,具体可以参考直播质量优化-下行播放优化-终端播放器低帧率/0帧识别 自动切换线路介绍

 

播放地址预加载,具体可以参考直播质量优化-下行播放优化-预加载策略介绍

2 云厂商内部链路优化

a) 命中率优化

CDN命中率提升,可以让终端用户请求就近缓存命中,减少回源,回源的减少意味着链路的缩短,链路越短相对稳定性越高,同时也可以缩短交互时间,故需要提升命中率,下面展开介绍命中率提升的方式。

 

闲时预热

非业务高峰时期,及时通过API接口或者控制台,提交预期会被高频访问的资源URL进行预热,提前将文件拉取到CDN L2节点上

 

预热方法可以参考这里

 

配置优化

 

image.png

 

b) 覆盖调整

CDN的节点调度一般是同大区内调度,当出现长期跨大区调度,客户可以提交相关信息申请调整覆盖节点。对于区域运营商限制跨省情况,阿里云CDN产品也可增加调度限制实现尽量本省,或者限制跨某省覆盖;

 

调整非即时生效,和客户本地DNS过期时长有关。

c) 协议栈优化

点播业务下,首屏秒开、卡顿缩减,大文件下载下,下载速度稳定,下载速度上限尽可能调高等等。不同业务类别下,基于产品侧带宽利用率,带宽成本等的考量,需要采用不同的协议栈优化策略。

 

为了应对不同业务的不同需求,产品侧提供有多种场景下的拥塞控制算法,比如传统的基于丢包的拥塞控制、基于时序的拥塞控制、硬性控制滑动窗口上下限、动态调整滑动窗口上下限、主动丢包探测和发现机制、自适应初始化滑动窗口、连接超时RTT控制、分时段控制滑动窗口等等;通过调整协议栈拥塞控制算法,来满足不同业务需求场景下,请求在节点建连,丢包重传,数据包传输时的逻辑。

相关文章
|
安全 编译器 Swift
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
989 2
|
移动开发 小程序 JavaScript
(一)、项目介绍及知识点概述【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
(一)、项目介绍及知识点概述【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
315 0
|
Linux
`grep`命令搜索当前目录及其子目录下的所有文件
`grep`命令搜索当前目录及其子目录下的所有文件
5425 1
|
9月前
|
机器学习/深度学习 人工智能 物联网
MiniMind:2小时训练出你的专属AI!开源轻量级语言模型,个人GPU轻松搞定
MiniMind 是一个开源的超小型语言模型项目,帮助开发者以极低成本从零开始训练自己的语言模型,最小版本仅需25.8M参数,适合在普通个人GPU上快速训练。
1662 10
MiniMind:2小时训练出你的专属AI!开源轻量级语言模型,个人GPU轻松搞定
|
小程序 JavaScript
微信小程序使用echarts图表(ec-canvas)
这篇文章介绍了在微信小程序中使用`ec-canvas`集成echarts图表的方法,包括解决加载时报错的问题、配置图表组件、以及在小程序页面中引入和使用这些图表组件的步骤。
1983 1
微信小程序使用echarts图表(ec-canvas)
|
Oracle 关系型数据库 数据库
实时计算 Flink版操作报错合集之错误信息"ORA-65040: operation not allowed from within a pluggable database"如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
803 2
|
存储 缓存 监控
一文搞懂绍Servlet规范。
Servlet规范是JavaEE规范中的一种。在servlet规范中,指定【动态资源文件】开发步骤,在servlet规范中,指定Http服务器调用动态资源文件的规则,在servlet规范中,指定Http服务器管理动态资源文件实例对象规则。
|
数据库
MyBatisPlus - 实体类 的 常用注解
举例说明MyBatisPlus中实体类的常用注解,包括@TableName、@TableId、@TableField、@TableLogic
509 0
Java 8 的异步利器:CompletableFuture源码解析(建议精读)
实现了俩接口,本身是个class。这个是Future的实现类,使用 completionStage 接口去支持完成时触发的函数和操作。