问题标签 [fairplay]
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.
avplayer - 播放受 FairPlay Streaming 保护的内容时有时会出现黑屏
我们正在使用AVPlayerLayer播放 iOS 应用程序中的内容。有时在播放内容时出现黑屏,但在播放过程中内容继续播放音频。这可以在播放过程中随机观察到,也可以在最初开始播放内容或在指定时间查找内容时观察到。这不是一直发生,而是经常发生。请注意,我们使用FairPlay Streaming 保护的内容来使用AVPlayer播放视频。
有时我们在整个播放过程中没有遇到任何此类问题,并且播放器可以流畅地播放内容。
avplayer - 有什么方法可以使用 AVPlayerLayer 镜像 fps 内容,目前黑屏有音频
我正在使用AVPlayerLayer在 iOS 应用程序中播放启用 fps/DRM ( FairPlay ) 保护的内容视频。当我们尝试使用 Airplay 或 Lightning 电缆将内容镜像到外部屏幕时,它开始显示黑屏,仅在外部屏幕和 iOS 设备中显示音频。所有其他组件都在外部屏幕和 iOS 设备上完美显示。尝试使用quick time player进行镜像时会观察到相同的行为。
ios - MacOS/Safari 上的 AVContentKeySession API 等效?
我正在 Safari 上实现 Fairplay Streaming 播放器。它需要在播放之前从 KSM 预取一组密钥。我遇到的所有示例都实现了 AvContentKeySession api,但它仅在 Swift 和 Objective-C(用于 ios)中可用。MacOS/Safari 上的 AVContentKeySession API 是什么?是否有可用于在 MacOS/Safari 上实现此类功能的参考代码?
ios - 离线 FairPlay 播放使网络请求加载 m3u8 播放列表
我们正在使用 AVAssetDownloadTask API 集在我们的应用程序中构建离线 Fairplay 播放功能。我们可以成功下载内容,但我们注意到网络活动,即在播放下载内容时对 movpkg 包中 boot.xml 中的 m3u8 播放列表的请求。
问题是加载那些 m3u8 播放列表需要 cookie 并且 cookie 设置为 1 天后过期,这会导致 cookie 过期时播放失败。我的问题是为什么播放下载的内容需要加载这些播放列表?难道不应该在没有网络的情况下播放下载的内容吗?
谢谢。
video.js - Azure 媒体服务中的 FairPlay 许可证 URL
我正在做一个需要为我的视频设置 DRM 内容保护的项目。它适用于 Widevine 和 PlayReady,现在我需要配置 FairPlay。
我按照 FPS Credential Creation Guide 中的说明进行操作,因此我拥有了证书和 ASk。我按照本指南创建了内容密钥策略选项:Apple FairPlay license requirements and configuration。使用 CLI,我可以看到它有询问fairPlayPfx
和fairPlayPfxPassword
定义。
我正在使用Predefined_MultiDrmStreaming
流式传输策略,并且我有一个流式定位器,它返回五个流式 URL(两个用于 DASH,两个用于 HLS,一个用于 SmoothStreaming)。
我正在使用video-js
和videojs-contrib-eme
播放视频。要配置 FairPlay 密钥系统,我需要证书 URL 和 FairPlay 许可证 URL,根据文档:Get Certificate/License by URL。
我的问题是我不知道在哪里可以找到该许可证 URL。我检查了 HLS 清单文件,但它不存在。我正在使用默认的 Azure 媒体服务许可服务,因此我没有覆盖customLicenseAcquisitionUrlTemplate
流式传输策略中的。
先感谢您!
- 编辑 -
我的清单(格式=m3u8-cmaf,加密=cbcs-aapl)文件:
我的清单(格式=m3u8-aapl,加密=cbcs-aapl)文件:
swift - AVAggregateAssetDownloadTask 错误域=CoreMediaErrorDomain 代码=-16657
我正在使用AVAggregateAssetDownloadTask在我的应用程序中下载HLS视频。我刚刚添加了暂停/恢复功能。简单地说,当用户想要暂停下载时,我会暂停任务。
但是,在这种情况下,实际上任务不会停止。它不断下载资产。当我按下恢复按钮时,我正在调用任务的 .resume() 方法。不知何故,这个过程非常快,直到%100,它给出了一个错误(继续阅读或转到错误消息标题)。
我该如何测试
- 开始通过 AVAggregateAssetDownloadTask 下载项目
- 在 %3 处点击暂停。
- 调用任务?.suspend()
- 等待 1 分钟或 2 分钟
- 点击恢复下载按钮
- 调用任务?.resume()
- 任务从 %29 恢复
- 任务在 %48 失败
代码
其他案例
- 在不暂停任务的情况下,它可以完美下载。
技术细节
- Xcode 版本 12.4 (12D4e)
- iOS 版本 14.4
错误信息
错误域=CoreMediaErrorDomain 代码=-16657
"(null)" UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=( "BackgroundAVAssetDownloadTask .<1>"), _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundAVAssetDownloadTask .<1>}
developer.apple.com
developer.apple.com 上也有同样的问题:
https://developer.apple.com/forums/thread/674090
报告的错误
FB9043262
如果您认为自己面临同样的问题,请考虑帮助。
最好的。
ios - Apple Fairplay 流在解析服务器播放上下文时抛出错误
我目前正在尝试在我的 iOS 应用程序中播放 Fairplay 流媒体。
当我尝试添加我的流 URL 和证书时,我将 Apple 的 HLSCatalog 作为参考。下面是我的代码
当我点击 URL 请求并尝试获取内容密钥时,它给了我以下错误:
“FPS 错误代码 = -42581 | 解析服务器播放上下文以检索资产 ID 和 HU 时出错。”
流可以通过我们的门户在苹果的 safari 浏览器中播放,所以我认为流不是问题,但我的实现缺少一些步骤。
提前致谢。
ios - XCode:使用 Apple FairPlay 实现加密 HLS
我尝试使用加密的 m3u8 实现 Apple FairPlay。我从 Apple Developer 获得了示例文件(下面的链接)并将其放入我的服务器。
这是我的代码:
我已经实现AVAssetResourceLoaderDelegate
,在设备中运行它并调用了这个方法。
问题是,当委托的方法被调用并且我试图[[loadingRequest dataRequest] respondWithData:data];
. 它什么也没发生,也没有显示任何东西。
有人可以帮我解决这个问题吗?