为啥PyQtWebEngine写出的浏览器无法播放包含视频的网页?
网友回复
根本原因解析
PyQtWebEngine 的底层是谷歌的开源项目 Chromium。
开源格式(原生支持):官方通过 pip install PyQtWebEngine 下载的预编译版本,只包含了免费开源的音视频解码器(如 WebM, VP8, VP9, Ogg)。
受版权保护的格式(不支持):像 MP4、H.264 视频和 AAC 音频 这些绝大多数商业视频网站都在使用的标准格式,是受严格商业专利保护的(MPEG-LA 专利池)。
因为 Qt 官方和 PyQt 的作者不希望为免费提供的开源预编译包支付高昂的专利费,所以他们在编译打包时,默认去除了专有解码器(Proprietary Codecs)。
解决方案
方案一:替换带解码器的现成 DLL 文件(最快、最实用 - 仅限 Windows)
既然官方的预编译包把解码器阉割了,万能的开源社区早就有人自己用源码把带解码器的版本编译出来了。你只需要狸猫换太子,替换掉你电脑里的一个底层文件即可。操作步骤:
找到你当前 Python 环境中 PyQt5 的安装路径。一般在:
C:\Users\你的用户名\AppData\Local\Programs\Pytho...
点击查看剩余70%


