DRM之Microsoft PlayReady学习入门(一)
数字内容生态背景
未来在数字媒体生态系统中有几个重要的转变。 安全性正在转向硬件,应用程序正在让位于浏览器,网络正在成为OTT内容的管道,内容交付正在转向云:
现在 |
趋势 |
基于软件的安全性 |
基于硬件的安全性 |
专用应用程序 |
基于标准的HTML5播放 |
Managed networks(托管网络) |
OTT流媒体和托管网络 |
基于内部部署的交付 |
基于混合(云和本地)的交付 |
PlayReady在整个数字媒体生态系统中经过验证,功能多样且可扩展:
Microsoft PlayReady基于一种名为“域名”的虚拟环境,人们可在自己的域名中登录多种设备,把内容传输到其他的域名登录设备上。用户可以将内容多次下载到不同设备上。SmoothStreaming是微软开发的一套用于支持流媒体传输的服务。根据客户端的CPU和网络带宽的能力,可以动态调节码率的传输。
PlayReady典型示例
PlayReady通过加密数据文件来保护内容。这些加密文件可以不受限制地移动、归档、流化、复制或分发。为了解密这些数据文件,需要一个数字密钥。这个密钥包含在许可证中。每个许可证还包含指定如何使用这些文件以及在什么条件下使用这些文件的权限和策略。
PlayReady保护和管理内容消费的典型示例:
1、在分发内容进行播放之前,必须首先通过加密步骤来保护内容。
2、编码器使用也可供许可服务器使用的加密密钥对内容进行加密。
3、在对内容进行加密之后,将其分阶段传送到回放客户端(通常通过内容分发网络)。
4、PlayReady客户端发现为该服务开发的应用程序内的内容。
5、要解密内容,PlayReady客户端会向PlayReady许可证服务器发送许可证请求。
6、PlayReady许可证服务器对客户端进行身份验证,并将许可证发回客户端。
7、当客户端使用许可证密钥解密内容时,它会根据许可证中指定的策略播放内容。使用的一些常见策略基于时间限制和输出保护(例如,限制播放到安全的HDMI端口以防止复制)。
PlayReady支持此内容消费模型的许多变体。 许可证可以嵌入到内容中,而不是通过许可证服务器分发,并且多个客户端可以共享单个许可证(域)。
PlayReady技术的主要功能
安全许可证交付
PlayReady安全地向客户端提供许可证,每个客户端都有一个唯一的证书,可以向PlayReady服务器验证客户端。
钥匙轮换
对于直播电视场景,PlayReady提供对密钥轮换的支持,在这种情况下,保护内容的加密密钥会频繁且指定地改变。 PlayReady for Live TV还支持广告插播和停电。
输出保护
PlayReady可以根据许可证策略强制限制播放设备上的输出端口。
域(Domains)
PlayReady域是一组可以共享域绑定内容许可证的设备。 PlayReady域还可以管理每个帐户的服务允许的设备数量。
计量(Metering)
PlayReady支持计量,其中播放客户端维护内容文件播放次数的计数。
网络设备流媒体(ND Streaming)
PlayReady for Network Devices(ND)专为家庭内部流媒体场景而设计,可通过DRM将托管网络的范围扩展到设备。 PlayReady ND还允许CAS到DRM在设备上进行家庭观看。
Breach Response
PlayReady积极管理设备生态系统,并在不太可能发生安全漏洞的情况下,采用行业领先的流程来管理客户。
多客户端平台
PlayReady支持一系列客户端平台,包括Windows,Xbox,iOS和Android。 PlayReady还可用于机顶盒和其他消费电子设备,如电视和媒体播放器。
多种内容类型
PlayReady的格式可扩展性基本上支持任何类型的内容,包括电影,直播电视,音乐,游戏,铃声和图像,并且通常与以下音频和视频格式一起使用:对于音频内容,支持包括AAC,AAC +和WMA编解码器。 对于视频内容,支持包括H.263,H.264和H.265编解码器。
PlayReady技术的商业模式
PlayReady技术支持广泛的商业模式,用于提供数字内容。
1、内容订阅:
基于时间长度
许可证颁发者可以指定许可证有效的时间长度,从而确保当订户取消订阅时对内容的访问到期。 订阅处于活动状态时,许可证将在到期之前续订,以便用户可以享受不间断的播放。
基于许可证链接
服务提供商可以提供包含订阅的基于时间的策略的根许可证。 为每个内容提供连接叶许可证。 如果根许可证到期且未续订,则叶子许可证将不再有效。 这简化了提供许多离线文件(例如音乐订阅)的服务的许可过程
2、按次付费
PlayReady支持预先交付内容许可证以及客户确认许可证已成功存储。 这为客户在支付和配置过程中可以使用内容的服务提供了保证。
3、租赁
PlayReady支持基于时间的许可证,支持租赁方案。 电影下载服务可以创建满足消费者观看习惯的许可,同时确保以内容所有者想要的方式使用内容。 例如,消费者可以租借电影,允许他们在第一次观看后的30天内和24小时内的任何时间开始观看。
4、一次性购买
消费者从内容服务提供商处购买和下载受PlayReady加密保护的内容文件。 该方法通常用于例如基于每首歌曲而不是通过订阅来传送音乐。 根据许可证中的业务规则,购买的歌曲可以被复制,可转移或转换为另一种保护方案。
5、基于广告
PlayReady支持所有内容类型的基于广告的方案,并支持Live TV的广告插播。
PlayReady内容分发选项
PlayReady支持两种下载方式。 无论下载方式如何,媒体播放应用程序都以完全相同的方式呈现文件:
基本下载
内容文件将完整传送到设备上的本地存储,然后播放(假设有效许可证可用).
渐进式下载
在下载文件的初始部分后开始播放。 文件的其余部分与播放并行下载。
自适应流媒体
大多数PlayReady端点都支持自适应流格式,如MPEG-Dash,Smooth Streaming和HLS。 利用自适应流传输,客户端从媒体资产的各种编码比特率请求媒体段。 客户端利用其自身的启发式选择哪个比特率来请求下一个段,例如网络和回放性能。
PlayReady产品套件由PlayReady客户端,PlayReady服务器和用于实现这些组件的软件开发工具包组成。
PlayReady客户端
PlayReady客户端获取受保护的内容,解释许可证,强制执行许可证中包含的规则以及播放内容。 PlayReady提供众多客户选项,并为开发客户提供多种软件开发工具包:
1、设备移植套件
设备移植套件通常用于机顶盒,智能电视,信息亭和移动设备等设备。 移植套件是所有客户的基础。主要包括以下内容:
(1)ANSIC源代码(针对各种流行的CPU架构),使您可以将Microsoft PlayReady客户端功能合并到任何设备中,而不管操作系统如何。(2)API文档。(3)参考实现和工具。(4)测试框架。
2、Android SDK
如果您要创建Android应用,可以使用适用于Android的PlayReady Client SDK,它具有以下功能:(1)支持Android 4. {0,1,2,3,4}和5(2)直播电视,包括key rotation,blackouts和广告插播(3)ND-Receiver功能
开发工具:(1)AndroidSDK + Eclipse IDE(2)包含的示例播放器应用程序
3、iOS SDK (如果您要创建iOS应用程序,可以使用适用于iOS的PlayReady Client SDK,)
4、Windows SDK(对于Windows 8,您可以使用PlayReady SDK for Windows Store应用程序来开发支持PlayReady的Windows应用商店应用。 在其他Windows平台上,可通过Silverlight获得PlayReady功能。 或者,您也可以开发基于Web浏览器的客户端)
5、Xbox (Xbox 360和Xbox One本身支持PlayReady。 Xbox平台与品牌服务协同工作以提供媒体应用程序)
6、Silverlight (如果要为Windows或Mac OSX创建Silverlight应用程序,Silverlight包含内置的PlayReady支持。)
7、Web 浏览器
随着HTML5中最近的EME标准化,现在可以创建能够安全地使用PlayReady smooth-streaming或DASH内容的Web浏览器。 PlayReady通过CDMi(内容解密模块接口)规范支持HTML5 EME标准。任何平台上的开源浏览器都可以使用CDM插件(在移植工具包中提供)来访问PlayReady加密的内容。 在Windows 8.1上,PlayReady是操作系统Media Foundation的一部分,因此Internet Explorer 11支持EME而无需浏览器插件。 Windows上的其他浏览器供应商可以使用Media Foundation API。
PlayReady服务器
PlayReady服务器准备用于分发,存储和内容分发的资源,管理许可证和域以及计量内容使用情况。 PlayReady服务器可以是本地的,也可以位于云端。您可以使用PlayReady Server SDK实现打包和交付PlayReady内容,颁发许可证,管理域和跟踪计量使用情况的服务。
打包服务器接收未受保护的内容并将其打包加密。 打包内容后,将其复制到分发服务器,并将许可证信息传输到许可证服务器。
分发服务器存储和分发内容。 分发服务器通常是Web服务器 - PlayReady不需要专门的服务器来进行内容存储和分发。
PlayReady支持以下服务器类型:
1、许可证服务器
存储使用内容的许可证。 在客户端可以播放受保护的内容之前,它必须获取许可证。
2、域控制器
确定给定域表示什么(例如,一个用户、一个系列或一组用户)。对于每个域,域控制器持有与该域相关联的实体列表。域控制器还强制执行定义有多少设备或计算机可能加入域的策略。
3、计量服务器
支持内容计量服务
根据您的平台,您可以通过多种方式快速开始使用PlayReady技术:
1、Windows 8,WindowsPhone,Silverlight
Windows 8,Windows Phone和Silverlight包含对PlayReady的本机支持,因此您可以立即开始在这些平台上开发和部署支持PlayReady的客户端媒体应用程序。 如果您正在开发Windows应用商店应用,可以下载以下内容以帮助您开始使用PlayReady:
· (1) PlayReady SDK for Windows Store apps
· (2)PlayReady sample application
2、Xbox
要在Xbox上部署PlayReady,您可以使用Xbox 360或Xbox One应用程序开发工具包,其中包括对PlayReady的内置支持。 您可以通过向xboxapps@microsoft.com发送查询来了解更多信息。
3、Android,iOS,Devices
要使用适用于Android,iOS或其他平台(如消费电子设备)的SDK部署或开发PlayReady技术,您必须先注册PlayReady许可证。 如果您想在购买许可证之前试用PlayReady,可以从wmla@microsoft.com申请PlayReady评估协议。 评估协议包括具有非生产SL150证书的PlayReady客户端SDK,因此您可以在购买许可证之前使用PlayReady测试客户端应用程序或设备。
如果您正在为Windows8,Windows Phone,Xbox或Silverlight开发和分发PlayReady客户端,则不需要许可证。 请注意,您需要PlayReady服务器协议(PlayReady Server Agreement)才能将服务部署到Windows端点。
对于所有其他平台,您将需要许可证。 购买许可证时,您可以下载SDK和与该许可证关联的其他软件包。 每个客户端许可证都包含生产级SL2000证书。 对于每个许可证,您还必须签署PlayReady主协议(PlayReady Master Agreement)。
Microsoft PlayReady许可证
Microsoft提供了几个PlayReady许可证,具体取决于您将如何使用和部署PlayReady技术。 下表列出了每个许可协议,并概述了适用于该许可的方案以及许可包中包含的产品。
许可协议 |
许可方案 |
包含的产品 |
Microsoft PlayReady最终产品许可证 |
用于将PlayReady客户端设备分发给最终用户,或用于在商业部署中使用PlayReady客户端。 |
PlayReady证书生成套件, 适用于iOS / Android的PlayReady Client SDK, PlayReady文件包, 使用ND的PlayReady Windows 8.1示例应用程序, 客户端SDK SL2000库, 和公司设备证书。 |
Microsoft PlayReady中间产品许可证 |
用于开发PlayReady iOS或Android客户端,或用于开发客户端设备 例如机顶盒,智能电视或媒体播放器。 |
PlayReady设备移植套件, 适用于iOS / Android的PlayReady Client SDK, PlayReady文件包, 使用ND的PlayReady Windows 8.1示例应用程序, PlayReady的CDMi示例代码, 客户端SDK SL2000测试库, 公司设备测试证书。 |
Microsoft PlayReady服务部署许可证 |
用于在商业部署或最终用户分发中使用PlayReady服务器技术。 |
PlayReady证书生成套件, PlayReady文件包, 部署证书, 高级部署证书, 域证书,计量证书。 |
Microsoft PlayReady服务器开发许可证 |
用于开发PlayReady服务器。 |
PlayReady Server SDK, PlayReady文档包, 部署测试证书, 高级部署测试证书, 域名测试证书, 计量测试证书 |
请注意,如果您正在开发和分发PlayReady客户端,则需要两个许可证:
MicrosoftPlayReady中间产品许可证。
MicrosoftPlayReady最终产品许可证。
同样,如果您正在开发和部署PlayReady服务器,则需要:
MicrosoftPlayReady服务器开发许可证。
MicrosoftPlayReady服务部署许可证。
您可以与Microsoft PlayReady Server ASP许可证持有者签订合同,而不是直接许可PlayReady服务器 - 这些公司将代表您运行PlayReady服务器。 或者,如果您有兴趣代表第三方品牌部署服务,则需要执行Microsoft PlayReady Server ASP协议。
有关Microsoft PlayReady Server ASP协议的详细信息,请参阅已批准的Microsoft PlayReady授权用户( Approved Microsoft PlayReady Licensees.)。有关PlayReady许可的详细信息,请参阅许可常见问题解答( Licensing Frequently Asked Questions)。 如果您对PlayReady许可流程有疑问,请通过wmla@microsoft.com与Microsoft联系。
DRM之Microsoft PlayReady学习入门(一)相关推荐
- Microsoft PlayReady DRM
支持在 Web 浏览器中使用加密媒体扩展和 Microsoft PlayReady DRM 本文内容 简介 实现方法 万维网联合会 (W3C) HTML5 加密媒体扩展 (EME) 为网站引入了一项功 ...
- Microsoft PlayReady DRM及其工作原理
翻译.编辑:Alex 技术审校:刘姗 本文来自OTTVerse,作者为Krishna Rao Vijayanagar. ▲扫描图中二维码了解音视频技术大会更多信息▲ Easy-Tech #022# M ...
- Microsoft Orleans 之 入门指南
Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...
- 深度学习入门(一)快速建立自己的图片数据集
机器学习或深度学习的第一步是获取数据集,一般我们使用业务数据集或公共数据集.本文将介绍使用 Bing Image Search API 和 Python 脚本,快速的建立自己的图片数据集. 1. 快速 ...
- Keras深度学习入门(一)
第一部分:机器学习基础 一.机器学习的四个分支 监督学习 分类 回归 序列生成,给定一张图像,预测描述图像的文字 语法树预测,给定一个句子,预测其分解生成的语法树 目标检测,给定一张图像,在图中特定目 ...
- Windows 11学习入门
Windows 11学习入门 目录 一.Windows 11介绍 二.Windows 11发布会 三.Windows 11网页版 四.Windows 11的19个新功能 五.参考资料 一.Window ...
- 机器学习与深度学习入门环境安装
机器学习与深度学习入门环境安装 1.编程语言 2.开发平台 3.机器学习工具包 4.深度学习框架 1.编程语言 Python:"胶水语言",集成度高,简单实用,受众面广,开发者社区 ...
- 【AI参赛经验】深度学习入门指南:从零开始TinyMind汉字书法识别——by:Link
各位人工智能爱好者,大家好! 由TinyMind发起的#第一届汉字书法识别挑战赛#正在火热进行中,比赛才开始3周,已有数只黑马冲进榜单.目前TOP54全部为90分以上!可谓竞争激烈,高手如林.不是比赛 ...
- 深度学习入门,一文讲解神经网络的构成、训练和算法
小白深度学习入门系列 神经网络的构成.训练和算法 什么是神经网络 人工神经网络(Artificial Neural Network,ANN),简称神经网络(Neural Network,NN),是一种 ...
最新文章
- linux主机常用管理命令
- 2021全球最具影响力 AI 学者榜单: 中国占比11.1%,位列第二
- 使用Feign时如何设置Feign的Header信息
- Xamarin Android布局文件没有智能提示
- erlang精要(1)-四则算术运算
- android java 延时函数,如何在Android中设置文本之间的延迟
- 关于Modernizr的使用
- 前端工具:推荐几款UI设计师好用的设计软件
- springboot2.2.9源码搭建
- iscroll.js 下拉刷新和上拉加载
- ng service(服务)
- [渝粤教育] 西安交通大学 光通信器件及系统 参考 资料
- 请教Parser Generator 开发工具中关于Lex和Yacc的问题
- c语言混响,混响插件(2cAudio Aether)
- Google Earth Engine——Landsat (数据介绍)GEE数据到底是否满足几何和辐射校正?
- 《达拉崩吧》扣哒世界版——在扣哒世界中学习编程
- 前端下载音频的两种处理方式
- 串口调试助手fx2n_安信可串口调试助手
- [wp] HITB CTF 2017 website
- 崔云php_佘家村里的“茉莉香”
热门文章
- Firefox旧版本及插件安装下载
- 网络封包分析软件-WireShark简单抓包
- 助眠的产品有哪些?失眠值得拥有和了解的助眠好物以及方法
- centos7修改主机名的方法
- Excel柱状图一个系列中各个值如何单独设置误差线
- 日本雅虎乐天商城批量上传步骤
- DELPHI bpl使用
- Object.setPrototypeOf 与 Object.create() 的区别
- 个人开发者实现微信扫码登录
- css的height,min-height,max-height,min-width.....