Sta Zhu

Results 34 comments of Sta Zhu

> Windows Netfilx 4K 好像还需要 playready? Chromium 似乎不支持, Edge 是有的 Playready是微软的CDM实现,主要用于Edge。Playready 支持软件HEVC/杜比视界解密, 也支持硬件HEVC/杜比视界解密。 Widevine是Chrome的CDM实现,主要用于Chrome。Widevine 不支持软件HEVC/杜比视界解密(L3级别),并且Chrome Media Team也没有计划支持Widevine HEVC/DV的软解密(见:crbug.com/1405231),但支持HEVC硬件解密(L1级别),同时是最新的Chrome110版本,启动参数带上`--enable-features=PlatformEncryptedDolbyVision`,也支持杜比视界Profile4/5/8硬件解密(L1级别)。 我不确定Netflix 4K 是否走的是杜比视界,那么原则上他们如果想适配,那么应该从Chrome 110左右的版本已经在适配了,等到Chrome 112 - 114左右版本,当Chrome官方默认启用了Widevine 杜比视界不需要传`--enable-features=PlatformEncryptedDolbyVision`之后,Chrome就有了硬件DRM杜比视界的能力了。 综上,假定支持Netflix没支持Chrome是因为杜比视界,那么在Netflix官方会主动做适配的情况,并且Chrome 11x版本默认启用DV DRM支持后,可能这个问题就解决了。 但由于Widevine和Playready都是闭源的,我对这块进度的了解仅限于这么多了。

因为我没有Netflix会员,所以你也可以试试带上启动参数--enable-features=PlatformEncryptedDolbyVision,打开Chrome 110,然后试试打开网飞,有进展也可以在这里同步

周末确认了几个事情: 1. HardwareSecureDecryptionExperiment在Windows Chrome 110已默认开启 ([链接](https://chromium-review.googlesource.com/c/chromium/src/+/4065526)) 因此可以说HEVC Widevine L1从Chrome 110开始已经默认支持了,测试代码: ``` navigator.requestMediaKeySystemAccess("com.widevine.alpha.experiment", [{ initDataTypes: ["cenc"], distinctiveIdentifier: "required", persistentState: "required", sessionTypes: ["temporary"], videoCapabilities: [{ robustness: "HW_SECURE_ALL", contentType: "video/mp4; codecs=hev1.1.6.L120.90", }], }]);...

大概率是因为你那里VDAVideoDecoder生效了,但是VAAPIVideoDecoder没生效。前者已不在维护了,Chrome后续只会维护后者。 目前Chrome的AV1和HEVC的实现只支持了VAAPIVideoDecoder。所以你想给这俩Codec加速必须把VAAPIVideoDecoder搞好使….,然而这个东西在Linux貌似基建一直比较差劲直到最近的113版本开始支持X11才开始好装。 试一下安装下Chrome Canary 114,并传入 --enable-features=VaapiVideoDecoder,VaapiVideoDecodeLinuxGL 看下是否Ok. 目前在做Mac的杜比音频解码,后续我会编译一版带HEVC软解 + AC3/E-AC3 杜比音频支持的 Chromium 114

1. 写的all codec大概率是指的软解,这个本repo提供的chromium也是包含的(利用FFMpegVideoDecoder做软解),如果想使用硬解,chrome://gpu 必须有显示,但是有显示不代表能成功,你得自己测试,建议用Chrome Dev 113测试。 2. PlatformHEVCEncoderSupport这个启动参数是用于启动HEVC编码的,跟解码没啥关系,而且只支持Windows和Mac,所以你不需要传这个启动参数。

目前 Chromium Linux 硬解基建有问题,不是开箱即用的,需要特定配置,且仅支持 VAAPI 和 V4L2(116支持的),如果HEVC还是没法硬解(此时其他Codec应该也没法硬解),可以自己尝试编译源码 Debug,编译方式 README.md 里有写,或者用 Repo 里编译好的软解 Chromium。

抱歉,回复比较晚,其他Codec有这个问题吗

I think chromium media has a plan to completely remove the use of `VDAVideoDecoder` and finally switch to `VaapiVideoDecoder`, however since vaapi isn’t supported well on intel iGPU devices on...

> NVIDIA and AMD have now focused on VulkanVideo, unfortunately the Chrome Media team has no intention of implementing Vulkan decoding. But the situation may change in the future, as...