我使用的VideoJS播放器,并有一个CMAF视频,所以我使用的HLS和破折号。我也在使用所有三种类型的DRM。公平发挥为hls,宽和可玩的破折号。
我的问题是,我是否应该在玩家中同时包括hls和dash资源,让玩家决定玩哪一个?还是我检测到浏览器,并仅在此基础上插入正确的url?同样,DRM也是一样的。我能把所有的DRM添加到玩家吗?还是我应该只添加一个应用程序?
发布于 2020-05-26 10:28:36
HLS vs破折号的使用通常由终端设备和客户端功能和规则决定。
iOS和Safari通常使用HLS和FairPlay,安卓、火狐和Chrome使用破折号和宽宽度,Windows和边缘使用破折号和PlayReady。
请注意,Widevine和PlayReady可以使用相同的破折号流- CENC,通用加密标准,允许相同的流同时包含Widevine和PlayReady DRM信息。
此时,苹果iOS设备必须在移动网络上对大于10分钟的内容使用HLS:
2.5.7超过10分钟的蜂窝网络上的视频流内容必须使用HTTP流,并包含一个基线192 kbps的HTTP流。
(https://developer.apple.com/app-store/review/guidelines/)
因此,提供给苹果设备的流通常是HLS,而DASH则用于其他设备。
CMAF通过允许为HLS和DASH使用相同的分段媒体流而大大减少了这种影响,只有“索引”或清单文件是针对每个协议的。
对于加密的内容,则要复杂一些。此时,FairPlay使用不同的AES加密模式,即AES CBC,而不是使用AES-CTR的Widevine和PlayReady。这意味着您仍然需要两个媒体副本来提供加密的内容流。
随着Widevine和PlayReady现在已经宣布支持AES-CBC以及AES-CTR,这种情况正在发生变化,但这需要一段时间才能扩展到部署的设备上。
https://stackoverflow.com/questions/61948356
复制相似问题