Chrome 132+才完整支持WebCodecs和AV1硬件解码,低版本需更新并重启;启用chrome://flags中webgpu、av1等实验功能;本地开发须用HTTP服务绕过file://限制;运行时检测navigator.gpu、MediaSource等API才是真实支持依据。
谷歌浏览器默认就支持 HTML5,但“支持”不等于“全部功能可用”——很多关键特性(比如 WebGPU、Media Source Extensions、Service Worker、AV1 解码)在新版本中仍需手动开启,或依赖特定运行环境。旧版 Chrome 甚至可能完全缺失某些 API。
132.x 及以上稳定版才完整支持 WebCodecs 和硬件加速的 AV1 解码;低于 128 的版本无法启用 WebGPU。
chrome://settings/help,让浏览器自动检查更新 chrome://version,主版本号应 ≥ 132 Uncaught ReferenceError: AudioContext is not defined 等报错,大概率是版本太低,不是设置问题 chrome://flags,搜索以下关键词并逐个设为 Enabled:webgpuav1webcodecscross-origin-mediaprefer-html5-over-flash(虽 Flash 已淘汰,但该 flag 仍影响 MSE 回退逻辑) Relaunch,强制重启整个浏览器进程 chrome://flags 中的改动是全局生效的,会影响所有网站,不建议在日常办公机长期开启 webgpu 或 webcodecs,除非你明确需要它们 
index.html 时,地址栏显示 file:///...,此时以下功能会静默失效:
- fetch() 加载本地 JSON/JS/CSS(跨域错误)
- Service Worker 注册失败(报错 Only secure contexts can register a service worker)
- 某些 localStorage 行为异常
解决方法不是“改设置”,而是换协议:
Live Server 插件:右键 HTML 文件 → Open with Live Server,自动起 https://www./link/e6bebc499c445570ecbe7829ae23b881 npx http-server -c-1该命令启动一个无缓存的本地 HTTP 服务,地址为
http://127.0.0.1:8080
--disable-web-security 启动参数——它会彻底关闭同源策略,只适合离线调试,且 Chrome 131+ 已限制该参数在非用户数据目录下生效 Permission denied 却没提示。
chrome://gpu,检查 Canvas、WebGL、Rasterization 是否全为 Hardware accelerated chrome://media-internals,播放一个 后,查看 Active streams 中的 decoder 字段:若显示 FFmpegVideoDecoder,说明没走 GPU 加速;GpuVideoDecoder 才是理想状态 console.log({ webgpu: 'gpu' in navigator, mse: 'MediaSource' in window, sw: 'serviceWorker' in navigator }) 真正容易被忽略的点是:HTML5 支持不是开关式功能,而是一组分层能力。你可能启用了 WebGPU,但显卡驱动没更新,navigator.gpu.requestAdapter() 仍返回 null;也可能开了 AV1,但视频源本身是 H.264 封装,根本用不上。判断依据永远是运行时检测,不是设置页打钩。