Azure 媒体服务中的 FairPlay 许可证 URL

FairPlay license URL in Azure Media Services

我正在做一个项目,我需要为我的视频设置 DRM 内容保护。它适用于 Widevine 和 PlayReady,现在我需要配置 FairPlay。

我按照 FPS 凭据创建指南中的说明操作,因此我拥有证书和 ASk。我按照本指南创建了内容密钥策略选项:Apple FairPlay license requirements and configuration。使用 CLI,我可以看到它定义了询问、fairPlayPfxfairPlayPfxPassword

我正在使用 Predefined_MultiDrmStreaming 流媒体策略并且我有一个流媒体定位器 returns 五个流媒体 URLs(两个用于 DASH,两个用于 HLS,一个用于 SmoothStreaming) .

我正在使用 video-jsvideojs-contrib-eme 播放视频。根据文档:Get Certificate/License by URL.

,要配置 FairPlay 密钥系统,我需要证书 URL 和 FairPlay 许可证 URL

我的问题是我不知道在哪里可以找到该许可证 URL。我检查了 HLS 清单文件,但它不存在。 我使用的是默认的 Azure 媒体服务许可服务,因此我没有覆盖流式传输策略中的 customLicenseAcquisitionUrlTemplate

提前致谢!

-- 编辑--

我的清单(格式=m3u8-cmaf,加密=cbcs-aapl)文件:

#EXTM3U
#EXT-X-VERSION:7
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="aac_und_2_127998_2_1",LANGUAGE="und",DEFAULT=YES,AUTOSELECT=YES,CHANNELS="2",URI="QualityLevels(127998)/Manifest(aac_und_2_127998_2_1,format=m3u8-cmaf,encryption=cbcs-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=239626,RESOLUTION=320x180,CODECS="avc1.64000d,mp4a.40.2",AUDIO="audio"
QualityLevels(90502)/Manifest(video,format=m3u8-cmaf,encryption=cbcs-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=239626,RESOLUTION=320x180,CODECS="avc1.64000d",URI="QualityLevels(90502)/Manifest(video,format=m3u8-cmaf,type=keyframes,encryption=cbcs-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=310148,RESOLUTION=480x270,CODECS="avc1.640015,mp4a.40.2",AUDIO="audio"
QualityLevels(159506)/Manifest(video,format=m3u8-cmaf,encryption=cbcs-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=310148,RESOLUTION=480x270,CODECS="avc1.640015",URI="QualityLevels(159506)/Manifest(video,format=m3u8-cmaf,type=keyframes,encryption=cbcs-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=413000,RESOLUTION=640x360,CODECS="avc1.64001e,mp4a.40.2",AUDIO="audio"
QualityLevels(260144)/Manifest(video,format=m3u8-cmaf,encryption=cbcs-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=413000,RESOLUTION=640x360,CODECS="avc1.64001e",URI="QualityLevels(260144)/Manifest(video,format=m3u8-cmaf,type=keyframes,encryption=cbcs-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=633193,RESOLUTION=960x540,CODECS="avc1.64001f,mp4a.40.2",AUDIO="audio"
QualityLevels(475597)/Manifest(video,format=m3u8-cmaf,encryption=cbcs-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=633193,RESOLUTION=960x540,CODECS="avc1.64001f",URI="QualityLevels(475597)/Manifest(video,format=m3u8-cmaf,type=keyframes,encryption=cbcs-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=138973,CODECS="mp4a.40.2",AUDIO="audio"
QualityLevels(127998)/Manifest(aac_und_2_127998_2_1,format=m3u8-cmaf,encryption=cbcs-aapl)

我的清单(格式=m3u8-aapl,加密=cbcs-aapl)文件:

#EXTM3U
#EXT-X-VERSION:5
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="aac_und_2_127998_2_1",LANGUAGE="und",DEFAULT=YES,AUTOSELECT=YES,URI="QualityLevels(127998)/Manifest(aac_und_2_127998_2_1,format=m3u8-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=239626,RESOLUTION=320x180,CODECS="avc1.64000d,mp4a.40.2",AUDIO="audio"
QualityLevels(90502)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=239626,RESOLUTION=320x180,CODECS="avc1.64000d",URI="QualityLevels(90502)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=310148,RESOLUTION=480x270,CODECS="avc1.640015,mp4a.40.2",AUDIO="audio"
QualityLevels(159506)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=310148,RESOLUTION=480x270,CODECS="avc1.640015",URI="QualityLevels(159506)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=413000,RESOLUTION=640x360,CODECS="avc1.64001e,mp4a.40.2",AUDIO="audio"
QualityLevels(260144)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=413000,RESOLUTION=640x360,CODECS="avc1.64001e",URI="QualityLevels(260144)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=633193,RESOLUTION=960x540,CODECS="avc1.64001f,mp4a.40.2",AUDIO="audio"
QualityLevels(475597)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=633193,RESOLUTION=960x540,CODECS="avc1.64001f",URI="QualityLevels(475597)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=138973,CODECS="mp4a.40.2",AUDIO="audio"
QualityLevels(127998)/Manifest(aac_und_2_127998_2_1,format=m3u8-aapl)

对于 FairPlay 许可证 URL,您可以在 HLS 顶级(或二级)播放列表中找到它,格式为:URI="skd://eventgridmediaservice.keydelivery.westus2- 2.media.azure.net/FairPlay/?kid=70d14e71-4380-470c-acff-61dea6382ccf

您需要将 skd 替换为 https。

我设法在清单文件中获得许可证 URL。我必须在 FairPlay DRM 配置中创建自定义流媒体策略并将 allowPersistentLicense 设置为 true。 Predefined_MultiDrmStreaming 流式传输策略将该值设置为 false。