Google Chrome 浏览器和其他 Chromium 浏览器现在可以使用 HEVC 编解码器处理媒体记录,这将大大提高视频记录的质量,并略微减小其大小。
与 Windows 11(和 Windows 10)上的其他浏览器一样,基于 Chromium 的 Google Chrome 浏览器也使用了媒体录制 API,当你在 Google Meet 等网络应用程序上进行视频会议时,它负责录制你的屏幕内容。 到目前为止,Google Chrome 浏览器使用 H.264、VP8 和 VP9 编解码器处理媒体录制。
之所以使用 H.264,是因为它几乎适用于所有平台,但文件较大。 VP8 和 VP9 是Google自己的编解码器,可免费使用,但 VP8 的效率较低,而 VP9 并非在所有地方都能使用。 现在这种情况发生了变化,因为Google将在 Windows 11 上改用 HEVC 来完成所有与录制相关的工作。
Chromium Gerrit 上已经出现了多个 代码提交,其中包括一个标题为"MediaRecorder API 的 HEVC 编码支持"的提交。
为 MediaRecorder API 添加 HEVC 编码支持是一个持续的过程,但大部分基础工作已经完成,并已将其添加到 Chrome 浏览器中。
具体来说,Google正在为 Chrome 浏览器中的视频录制添加对 HEVC(也称为 H.265)的支持。 这将取代现有的编解码器,如 H.264、VP8 和 VP9。 现在,Chrome 浏览器将支持 HEVC 以 MP4 和 MKV 格式录制视频。
如果你想了解集成的工作原理,以及在录制 Google Meet 内容时视频是否确实使用 HEVC 编码,可以打开一个名为"--enable-features=MediaRecorderHEVCSupport"的实验标志:
--enable-features=MediaRecorderHEVCSupport
"这将添加 mkv/mp4 muxer 支持 HEVC 的基本部分,"Google开发人员在 Chromium Gerrit 帖子中指出。默认情况下已禁用,需要通过手动启用支持。
目前,该功能在大多数情况下默认为禁用,测试时必须手动启用。
代码只支持基本的 HEVC 编码,但不会检查硬件是否真的能进行 HEVC 编码。 这意味着,即使 MediaRecorder.isTypeSupported() 表示支持 HEVC,编码也可能在不支持的硬件上失败。
Google指出:"在完全添加硬件检测功能之前,建议开发人员在创建 MediaRecorder 实例之前,使用 MediaCapabilities.encodingInfo() 或 VideoEncoder.isConfigSupported() 等工具以及 MediaRecorder.isTypeSupported() 来检查设备是否可以编码 HEVC。"
正如开头提到的,Google仍在测试该功能,除非开发人员切换到 API 的新端点,否则默认情况下该功能无法使用。