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

chrome/edge硬解265无法播放Mp4 #80

Closed mxzhou closed 2 months ago

mxzhou commented 3 months ago

chrome/edge硬解265无法播放Mp4,safari硬解265可以播放,mac和1win10系统都无法播放, 能帮给分析下原因吗? https://github.com/user-attachments/assets/4910d755-f441-4572-a3c3-1acc966deba4

StaZhu commented 3 months ago

码流有问题, 有一个 TRAIL_R 帧的 Slice Header 的 num_long_term_pics 有问题,这里的校验没通过:https://source.chromium.org/chromium/chromium/src/+/main:media/parsers/h265_parser.cc;l=1258;bpv=0

mxzhou commented 3 months ago

码流有问题, 有一个 TRAIL_R 帧的 Slice Header 的 num_long_term_pics 有问题,这里的校验没通过:https://source.chromium.org/chromium/chromium/src/+/main:media/parsers/h265_parser.cc;l=1258;bpv=0

感谢给找出问题。 能帮给一下正确的 TRAIL_R 帧的 Slice Header 的 num_long_term_pics 值吗? 还有就是safari播放也是正常的,有支持兼容这种码流播放的打算吗?

StaZhu commented 3 months ago

码流有问题, 有一个 TRAIL_R 帧的 Slice Header 的 num_long_term_pics 有问题,这里的校验没通过:https://source.chromium.org/chromium/chromium/src/+/main:media/parsers/h265_parser.cc;l=1258;bpv=0

感谢给找出问题。 能帮给一下正确的 TRAIL_R 帧的 Slice Header 的 num_long_term_pics 值吗? 还有就是safari播放也是正常的,有支持兼容这种码流播放的打算吗?

我不知道正确的是多少,从我这里看就是超了。

Chromium完全对齐H265规范,校验比FFmpeg,Safari这些的更严格,码流自身的问题还是需要编码器自己解决的。

StaZhu commented 2 months ago

抱歉,看起来确实是 Chromium 的实现的问题,本地验证了下,这个 CL:https://chromium-review.googlesource.com/c/chromium/src/+/5840356 已经修复了,感谢反馈。