问题标签 [playready]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1258 浏览

chromecast - 播放就绪平滑流媒体的 ChromeCast 问题

我正在使用 Azure 媒体服务将视频上传、编码和加密为 PlayReady 流畅的流格式。我正在使用位于http://playready.directtaps.net/的 Play Ready 测试服务器

在编码过程中,我将 licenseAcquisitionUrl 用于 PlayReady:http ://playready.directtaps.net/pr/svc/rightsmanager.asmx

所有其他内容均按照以下说明进行配置和设置:http: //msdn.microsoft.com/en-us/library/dn189154.aspx

PlayReady 平滑流:http ://wamsstaticpoc.origin.mediaservices.windows.net/6d32a54f-ba98-4b06-8c60-bed8564c2119/interview2.ism/manifest

上述流适用于:http ://smf.cloudapp.net/healthmonitor (没有设置许可证获取网址的选项)

即使在设置/删除许可证获取 URL 之后,上述流也不起作用:http ://playready.directtaps.net/pr/doc/slee/。

另外,我正在使用 ChromeCast 根据接收器示例投射这些流:https ://github.com/googlecast/CastMediaPlayerStreamingDRM

播放就绪流似乎不适用于上述 google cast 示例,并给出“致命错误:代码 = 1”(我猜是 LOAD METADATA ERROR),即使在设置/删除许可证获取 URL 之后也是如此。

使用 PlayReady 加密的 HLS 流以及使用 PlayReady 加密的 MPEG DASH 流在 ChromeCast 接收器示例上根本不起作用。

请帮忙!

编辑:添加日志

0 投票
1 回答
240 浏览

ios - 环回服务器不再在 iOS7 上工作?

我使用环回服务器播放本地缓存的 HTTP Live Streaming 文件(m3u8、ts 等)。这曾经在 2013 年 5 月至 6 月左右的 iOS6 中完美运行。

在使用 iOS7 大约一年后重新访问该应用程序,看起来环回服务器不再工作了。我仅在一个来源中了解到,由于额外的沙盒限制,环回服务器不再工作,但互联网在这件事上的普遍沉默令人惊讶(我在 Google 中没有看到太多关于“localhost server ios7”或“环回服务器 ios7") 考虑到这是如何普遍使用的,特别是在与 PlayReady 等第 3 方(非本地)DRM 结合使用 HLS 时。

谈到这个问题,我想从 SO 社区验证一下,iOS7 绝对不支持使用以下任何语法的环回服务器:
1. localhost:port
2. 127.0.0.1:port
3. [wifi-ip -地址]:端口

PS:
1.如果有参考链接,将一如既往地受到赞赏。
2. 如果有人使用最新版本的 PlayReady 或其他等效的非本地 DRM,可以阐明他们如何能够在不使用环回代理首先解密媒体的情况下提供 HLS,这也将非常有帮助。当然,只要在这个过程中没有违反 NDA。

0 投票
1 回答
647 浏览

specifications - Playread 信封格式

我正在尝试使用 PlayReady 信封格式加密任意内容,以便将其发送到支持该格式的第 3 方应用程序。

我无法在线找到格式规范。有人知道我在哪里可以找到该规范,还是仅由 Microsoft 提供的不透明服务支持?

0 投票
1 回答
3639 浏览

html - html5 中的流畅流式传输

有没有办法使用流畅的流媒体在 html5 播放器中播放视频?我需要播放受 Playready Drm 保护的视频....我尝试使用 Dash 播放器,使用此链接 http://ie.microsoft.com/testdrive/HTML5/eme/但与这些视频不同,这些视频有 mpd 响应可用使用
url/manifest(format=mpd-time-csf) 但在我的情况下,没有可用的 mpd,只有平滑的流响应可用....有什么帮助吗?

0 投票
1 回答
670 浏览

android - 使用 Microsoft Playready SDK 在 Android 设备上离线播放

任何人都知道如何使用 Microsoft Playready SDK 在 Android 设备上播放本地视频文件?

任何代码示例?

提前非常感谢!

0 投票
1 回答
3352 浏览

encryption - 使用 aes 128 ctr 部分解密 Mega.co.nz 文件以支持流范围

您如何从中间解密 aes 128 ctr 加密文件以支持 http 范围?这是加密文件: https ://www.dropbox.com/s/8e9qembud6n3z7i/encrypted.txt?dl=0

密钥采用 base64 加密:E7VQWj3cv1JUi5pklirtDQ9SRJt1DhiqYgzPSpIiVP0

超级文档:https ://mega.co.nz/#doc

IV是通过解密给出数组的密钥来计算的:

IV 是通过在第 4 个偏移处以 2 的长度对数组进行切片而获得的,并且数组的最后两个元素用 0 填充:

然后对密钥进行异或并制成一个 128 位数组,然后由 php 函数包将其转换为字符串:

然后使用普通的 php aes 库对该文件进行解密。我正在使用 mcrypt_generic 进行解密过程。当我尝试从第二个字节或第三个或中间解密文件时,就会出现问题。如果我从第一个字节解密它就可以了。

我注意到的另一件事是,如果我从第 2 个字节解密文件,但在此之前,我解密一个随机字符串或只是数字 0,然后从第 2 个字节开始解密。我想这与 IV 块计数器有关。我解密一个随机字节,然后继续解密实际的密码,这样它就可以工作了。我需要从一开始就开始解密文件,比如说从 40mb 偏移量来支持实时流搜索。但这会消耗太多内存,因为我必须先解密 40mb 的 0,然后才能进行搜索。如何将 IV 计数器值移动到 40mb 偏移量?

我读到每个解密块的IV增加+1。但是由于我的 IV 是一个数组,所以我已经尝试了所有方法,如果我在其中添加 1,它就不起作用。我已经做了几个月了,没有结果。请帮忙

这是我之前的问题,它有助于理解这个过程:AES 128 bit CTR partial file decryption with PHP

0 投票
1 回答
324 浏览

c# - 以编程方式删除缓存的持久 Playready 许可证

我目前正在开发一个系统,该系统有一个明确的用例来覆盖播放器当前用于解密直播流的当前 Playready DRM 许可证。(使用 Silverlight 和 SMFPlayer) - 这是为了清除当前许可证以强制请求为相同内容创建新许可证。

我们可以通过销毁播放器元素并在同一个流 url 中重新加载来实现这一点。使用非持久性许可。

但是我们不希望刷新播放器对象。

有没有办法以编程方式清除缓存的 Playready 许可证?

谢谢

0 投票
1 回答
594 浏览

android - Android:使用 NdkMediaDrm 和 PlayReady 的文档

我想知道是否有人尝试过NdkMediaDrm与 PlayReady 一起使用?如果是这样,是否有任何可用的文档?

0 投票
1 回答
615 浏览

android - Chromecast Multi-language playready 未检测到语言

我正在尝试在 chromecast 上播放多语言音轨。它播放视频/音频文件,但不会从英语切换到西班牙语。我可以在 silverlight 播放器中使用相同的文件进行切换。我已将我的 chromecast 播放器语言和我的 android 手机语言设置为西班牙语。在 Google Cast SDK Developer 控制台中,我添加了西班牙语作为备用曲目。

我已经使用谷歌指南中指定的代码添加了我的自定义播放器,但是指南中的代码似乎无法直接复制和粘贴。有人可以指导我为什么 protocol.getStreamCount() 为 0 吗?通话时间是否正确?这是我正在使用的整个播放器,请特别注意 window.changeLanguage = function()... 和 changeLanguage 调用。非常感谢任何帮助!

Chromecast 控制台:

应用程序准备就绪,启动系统

启动媒体应用程序

我们有协议 .ism/manifest

启动媒体播放器库

流计数:0

我:1

当前语言:0

编辑

我进入控制台并加载调用以下命令:

this.protocol.getStreamCount()

2

所以这显然是一个时间问题。流完全加载后,我需要调用 changeLanguage。我正在调查什么时候打电话给它。我会很感激任何帮助,但我会尝试用谷歌搜索这个答案,因为我很肯定这是一个时间问题。

0 投票
1 回答
342 浏览

android - Android NDK MediaDrm getKeyRequest 不返回 URL

我正在使用 MediaDrm API 进行 PlayReady 解密。

我注意到 NDKAMediaDrm_getKeyRequest方法不返回defaultUrl用于发送请求的 。

文档中似乎存在矛盾(参见NdkMediaDrm.h 第 154 行)关于它是否被返回,可能是从 Java 文档中复制过来的。

有没有人设法获得网址AMediaDrm_getKeyRequest?还是找到了另一种获取 URL 的方法?