StaZhu / enable-chromium-hevc-hardware-decoding

A guide that teach you enable hardware HEVC decoding & encoding for Chrome / Edge, or build a custom version of Chromium / Electron that supports hardware & software HEVC decoding and hardware HEVC encoding.
MIT License
1.24k stars 60 forks source link

Windows平台下HEVC with Alpha的解码实现?+同步相关的编码器的更新 #79

Open qwe7989199 opened 3 months ago

qwe7989199 commented 3 months ago

过去HEVC with Alpha的生产和消费都限定在Apple的设备上 最近,在另外一位开源作者rigaya的努力下,一个基于NV硬件的命令行工具NVEncC也具备了HEVC with Alpha的编码能力 我们初步测试了一下,这个编码器的输出在macOS的Chrome下和苹果编码器输出的结果一致

在最近的x265 commit中,也出现了Alpha通道相关的代码更新,后续ffmpeg更新合进来应该只是时间问题。 上游编码器在今年都开始逐渐支持在Windows平台下的HEVC with Alpha生产,但windows下仍然缺少HEVC with Alpha的消费能力,而最有价值的应用场景就是浏览器。 在提供以上信息的基础上,想询问一下Windows平台下HEVC with Alpha的解码实现是否还在计划中。

StaZhu commented 3 months ago

Thanks, we are still discussing the availability of HEVC with Alpha's implementation on Windows, for now, due to the lack of native NV12A OS support, If it is possible still need to further debugging and investigating.

StaZhu commented 1 month ago

@taste1981 is working on this recently FYI.

https://issues.chromium.org/issues/370423037

StaZhu commented 1 month ago

@qwe7989199 https://github.com/rigaya/NVEnc/issues/571#issuecomment-2285974127

Does this issue still reproducible on Chrome Canary 131? Do you mind share some more detail and sample on the issue? So we can take a further look on it.

qwe7989199 commented 1 month ago

@qwe7989199 rigaya/NVEnc#571 (comment)

Does this issue still reproducible on Chrome Canary 131? Do you mind share some more detail and sample on the issue? So we can take a further look on it.

Chrome Canary 131 rendering result vs Safari. It seems the problem still exists.

left_chrome_canary_right_safari

Following archive contains the sample files I used. sample.zip

StaZhu commented 1 month ago

I think the video is not premultipled, and I guess the wrong result is because of that.