阿里云播放器SDK的正确打开方式 | 功能、架构与应用(一)

简介: 阿里云播放器SDK(ApsaraVideo for Player SDK)是阿里视频云端到云到端服务的重要一环,除了支持点播和直播的基础播放功能外,还深度融合视频云业务,支持视频的加密播放、安全下载、首屏秒开、低延时等业务场景,为用户提供简单、快速、安全、稳定的视频播放服务。

阿里云播放器SDK(ApsaraVideo for Player SDK)是阿里视频云端到云到端服务的重要一环,除了支持点播和直播的基础播放功能外,还深度融合视频云业务,支持视频的加密播放、安全下载、首屏秒开、低延时等业务场景,为用户提供简单、快速、安全、稳定的视频播放服务。本文将从产品特点、技术架构、点播和直播场景中播放器的应用等几个方面来介绍阿里云播放器SDK。

阿里云播放器SDK具有哪些特点?

一、 快速接入
因为面对的是不同层次的开发者,在接入成本上需要考虑的尽量全面。为此,阿里云播放器提供了详尽完备的文档和场景化的DEMO,为用户参考使用,另外,视频指导教程和针对不同问题和场景的专题介绍也能帮助用户更好、更快地接入。
二、 简单集成
Android和iOS提供统一接口和错误码,接近系统API的接口设计保证每位开发者能快速集成。
三、 分层架构 按需选配
基础功能、业务功能、UI组件等分层架构,保证最精简的包大小,根据业务需求组合选用。
四、 云和端一体化
云端加密、客户端解密,端和云的联动保证视频安全。端上采集数据、云端分析,为业务运营提供支持。
五、 安全稳定
从防盗链、URL鉴权到加密播放和安全下载,全方位保护视频安全,满足不同场景的安全需求。

下面我们来看看阿里云播放器SDK的产品架构

首先,移动端播放器的产品架构,分成基础播放器、高级播放器、业务组件这三层。在基础播放器中,播放器实现了视频流解析、音视频同步、软硬解码等基础能力,并支持url播放、播放逻辑控制、音量和亮度调节、点播/直播支持、倍数播放、首屏秒开等功能。在此之上,封装了高级播放器,这个是和业务强相关的播放器,与云服务深度融合,支持VID播放、加密播放、清晰度切换、安全下载、边播边缓存等业务相关性的功能,同时,阿里云播放器还提供一系列业务组件,包括已经推出的UI组件,和即将提供的弹幕组件、分享组件、红包组件、广告组件等。这几个模块化的划分,满足了个性化和业务化的各种场景需求。

我们再来看看web端的产品架构,也就是Flash、H5的层次结构。在最底层,其实是一个H5的原生标签,阿里云在这里封装了一个基础的H5播放器,在此之上,根据不同业务场景,做了不同播放器类型的划分。在最上面一层,提供了自适应选择播放器的功能,当用户的视频源过来的时候,可以根据终端类型、平台类型等信息自动选择最佳的播放器。

播放器所支撑的两大业务包括视频点播和视频直播,视频点播包括音视频采集、合成、上传、转码、媒资管理、分发及视频播放等一系列的功能,而视频直播是基于CDN和MTS所构建的直播平台,需要为用户提供低延时、低卡顿与视频秒开等一系列能力。这两种业务场景中,视频播放都作为最贴近观众的一环存在,提供最直观的极致体验。下面我们介绍以下这两种场景中,阿里云播放器都是如何应用的。

_1

播放器在点播服务中的应用

视频播放器在点播服务中,经过和云端服务的高度融合,实现了以下功能:

  • 加密播放

在独播剧、教育、金融等业务场景中,保护视频内容的安全非常重要,播放器通过视频加密转码和解密播放的过程,可对视频内容本身做进一步的安全保护,有效保护视频版权。

实现原理是业务方将视频上传到阿里云的服务器上的时候,可以配置加密转码,转码出来的视频是经过加密的,想要实现播放的话,需要通过业务授权、获取加密密钥来进行数据解密。这个方案的优势是服务端采用信封加密技术,传输不是直接的明文传输,比其他方案更加安全,同时只需要一个加密开关,播放器开发者无需关心特殊逻辑,传入相关参数即可,所以易用性极强,成本极底。

  • 离线下载

离线下载是将视频资源下载到本地,在没有网络的情况下实现播放,其实这个功能很常见,阿里云播放器是在基础能力之上提供了更多属性。它可以支持安全下载,把加密的视频缓存在本地,对它进行重新加密,与APP进行绑定,即使被拷贝走了也无法播放。并且支持断点下载和并行下载,当异常中断后,再次启动可以继续上次下载,节省了C端用户的流量和时间。另外,开发者可以在控制台灵活配置是否离线下载某个视频,或者是否禁止视频离线下载,灵活控制视频资源等情况。

  • 边播边缓存

对于用户来说,非常关心的是流量成本。阿里云播放器支持边播边缓存功能,当用户一次观看后视频会缓存到本地,重复观看时,用户无需再次消耗流量。另外,用户可以灵活配置缓存和自动管理缓存目录。在短视频场景中十分常用。

  • 变速播放

阿里云播放器实现了变速的同时声调不改变,保持音视频同步。在视频点播播放过程中,可以支持0.5x-2x的变速播放的动态配置,对直播场景,也能够自动判定。可以根据用户的兴趣和喜好来控制视频播放速度,比如在教育视频中,用户可以对感兴趣的地方慢速播放,对不感兴趣的内容快速跳过。

  • UI播放器

阿里云提供了一整套UI的播放器SDK,能够满足用户快速上线,整个播放的逻辑已经固化在UI之中,比如首屏、标题、进度条、全屏、锁屏、清晰度切换、手势控制等功能,它是一个完整的播放器,用户只需要调用整个VIEW的显示,将视图贴在APP上,就可以简单、快速地实现播放功能了。

  • 国际化多语言

播放器SDK也逐步走向海外,通过配置实现多语言版本。首先,它可以根据用户系统的语言自动适配选择播放器SDK的语言,其次,它可以通过添加配置文件,无需修改SDK,就灵活切换语言版本,最后,播放器SDK也支持Android、iOS、Flash、H5等多个平台的国际化多语言的需求。

播放器在直播服务中的应用

整个视频直播是通过直播SDK将音视频推流,到大规模分布式流媒体实时转码,再到CDN内容高效分发,最终到达视频直播终端播放的流程。我们需要为用户提供的是便捷接入、高清流程、低延迟、高并发的整套服务,其中播放器需要实现首帧秒开、低延时、低卡顿、超时重连等等的功能,才能让直播服务变得完整、流畅。视频播放器在直播服务中实现了以下功能:

  • 首帧秒开

在优化之前,播放器拿到解码后的数据,是需要经过一个音视频同步等待,下载一定的数据才能看到视频的。在进行了一系列优化之后,拿到数据之后,阿里云先对第一帧进行解码出来,省去了缓冲的时间,用户可以直接看到,从而实现了秒开的效果,提升了用户体验。

  • 低延时策略

当直播中网络抖动或其他因素导致延时很大的情况下,播放器SDK也要配合进行处理。在阿里云播放器中提供了一个参数,用来控制播放端延时的大小。播放器中的下载缓存区有一定的缓存视频,我们将缓存视频的长度和用户延时的长度进行对比,当缓存视频长度超过了用户延时长度的时候,采取动态丢帧策略,找到缓存区中最后一帧,将之前的帧丢弃,从而控制了延时长度,确保了终端观看直播的效果。

除了以上技术亮点,阿里云播放器SDK基础功能也是十分完备的,包括播放控制(开始结束、恢复暂停,重播,自动播放,Seek),诊断工具(环境诊断、网络诊断、切换播放器诊断),音量/亮度调节,UI设置(封面、水印、皮肤)等,另外,也有一些个性化功能正在规划开发中,包括弹幕、截图gif、进度条打点、VR全景播放、贴片广告、投屏等等。

_2

同时,阿里云播放器SDK也可以联动短视频SDK、上传SDK、视频点播、视频直播和OSS、CDN等产品,形成不同的产品组合。用户可以像搭积木一样,根据自己的业务场景选择不同的服务,一站式搭建自己的视频业务。

随着阿里云视频点播、直播的业务不断壮大,阿里云播放器SDK也已经为众多教育、社交、视频、游戏、新闻行业客户服务,我们希望能够提供易用、稳定、强大的视频服务,为更多极致的用户体验努力。

扫码免费体验播放器SDK DEMO
_3

为了扶持更多创业者,降低入行门槛,视频点播已在原有的视频点播服务五个套餐包基础上,推出了超值体验套餐包。
只需9.9元即可获得10GB流量、50GB存储、100分钟转码,可供个人、小微企业门户网站体验使用。

image

点击进入活动页面,立即购买,完成支付

下一篇,我们会介绍播放器SDK的不同版本功能对比和典型应用场景,敬请期待。

目录
相关文章
|
14天前
|
人工智能 云计算 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日~10日在江苏张家港召开的CCF ChinaNet(即中国网络大会)上,众多院士、教授和业界技术领袖齐聚一堂,畅谈网络未来的发展方向,聚焦智算集群网络的创新变革。
阿里云引领智算集群网络架构的新一轮变革
|
11天前
|
监控 Go API
Go语言在微服务架构中的应用实践
在微服务架构的浪潮中,Go语言以其简洁、高效和并发处理能力脱颖而出,成为构建微服务的理想选择。本文将探讨Go语言在微服务架构中的应用实践,包括Go语言的特性如何适应微服务架构的需求,以及在实际开发中如何利用Go语言的特性来提高服务的性能和可维护性。我们将通过一个具体的案例分析,展示Go语言在微服务开发中的优势,并讨论在实际应用中可能遇到的挑战和解决方案。
|
11天前
|
网络协议 数据挖掘 5G
适用于金融和交易应用的低延迟网络:技术、架构与应用
适用于金融和交易应用的低延迟网络:技术、架构与应用
39 5
|
12天前
|
Go 数据处理 API
Go语言在微服务架构中的应用与优势
本文摘要采用问答形式,以期提供更直接的信息获取方式。 Q1: 为什么选择Go语言进行微服务开发? A1: Go语言的并发模型、简洁的语法和高效的编译速度使其成为微服务架构的理想选择。 Q2: Go语言在微服务架构中有哪些优势? A2: 主要优势包括高性能、高并发处理能力、简洁的代码和强大的标准库。 Q3: 文章将如何展示Go语言在微服务中的应用? A3: 通过对比其他语言和展示Go语言在实际项目中的应用案例,来说明其在微服务架构中的优势。
|
9天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?
|
9天前
|
监控 持续交付 Docker
Docker容器化部署在微服务架构中的应用
Docker容器化部署在微服务架构中的应用
|
14天前
|
人工智能 运维 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日至10日,CCF ChinaNet(中国网络大会)在江苏张家港召开,众多院士、教授和技术领袖共聚一堂,探讨网络未来发展方向。阿里云研发副总裁蔡德忠发表主题演讲,展望智算技术发展趋势,提出智算网络架构变革的新思路,发布高通量以太网协议和ENode+超节点系统规划,引起广泛关注。阿里云HPN7.0引领智算以太网生态蓬勃发展,成为业界标杆。未来,X10规模的智算集群将面临新的挑战,Ethernet将成为主流方案,推动Scale up与Scale out的融合架构,提升整体系统性能。
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
|
18天前
|
JavaScript 持续交付 Docker
解锁新技能:Docker容器化部署在微服务架构中的应用
【10月更文挑战第29天】在数字化转型中,微服务架构因灵活性和可扩展性成为企业首选。Docker容器化技术为微服务的部署和管理带来革命性变化。本文探讨Docker在微服务架构中的应用,包括隔离性、可移植性、扩展性、版本控制等方面,并提供代码示例。
54 1
|
9天前
|
缓存 负载均衡 JavaScript
探索微服务架构下的API网关模式
【10月更文挑战第37天】在微服务架构的海洋中,API网关犹如一座灯塔,指引着服务的航向。它不仅是客户端请求的集散地,更是后端微服务的守门人。本文将深入探讨API网关的设计哲学、核心功能以及它在微服务生态中扮演的角色,同时通过实际代码示例,揭示如何实现一个高效、可靠的API网关。
下一篇
无影云桌面