前端之家收集整理的这篇文章主要介绍了
Electron 使用 Widevine CDM 插件,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_
403_0@在 Electron ,你可以使用 Widevine CDM
插件装载 Chrome 浏览器 .
@H_
403_0@Electron 没有为 Widevine CDM
插件 配制许可 reasons, 为了获得它,首先需要安装官方的 chrome 浏览器,这匹配了体系架构和 Electron 构建使用的 chrome 版本 .@H_
403_0@注意: Chrome 浏览器的主要版本必须和 Electron 使用的版本一样,否则
插件不会有效,虽然 navigator.plugins 会
显示你已经安装了它 .
Windows & OS X
@H_
403_0@在 Chrome 浏览器中打开 chrome://components/ ,找到 WidevineCdm 并且确定它更新到最新版本,然后你可以从 APP_DATA/Google/Chrome/WidevineCDM/VERSION/_platform_specific/PLATFORM_ARCH/ 路径找到所有的
插件二进制
文件 .@H_
403_0@APP_DATA 是系统存放数据的地方,在 Windows 上它是%LOCALAPPDATA%, 在 OS X 上它是 ~/Library/Application Support. VERSION 是Widevine CDM
插件的版本字符串, 类似 1.4.8.866. PLATFORM 是 mac 或win. ARCH 是 x86 或 x64.@H_
403_0@在 Windows,必要的二进制
文件是 widevinecdm.dll andwidevinecdmadapter.dll, 在 OS X ,它们是 libwidevinecdm.dylib 和widevinecdmadapter.plugin. 你可以将它们复制到任何你喜欢的地方,但是它们必须要放在一起.
Linux
@H_
403_0@在 Linux ,Chrome 浏览器将
插件的二进制
文件装载在一起 , 你可以在 /opt/google/chrome 下找到,
文件名是 libwidevinecdm.so 和libwidevinecdmadapter.so.
@H_
403_0@在获得了
插件文件后,你可以使用 --widevine-cdm-path 命令行开关来将 widevinecdmadapter 的路径传递给 Electron ,
插件版本使用 --widevine-cdm-version 开关.@H_
403_0@注意: 虽然只有 widevinecdmadapter 的二进制
文件传递给了 Electron, widevinecdm 二进制
文件应当放在它的旁边.@H_
403_0@必须在 app 模块的 ready 事件触发之前使用命令行开关,并且 page 使用的
插件必须激活.@H_
403_0@示例
代码 :
// You have to pass the filename of `widevinecdmadapter` here, it is// * `widevinecdmadapter.plugin` on OS X,// * `libwidevinecdmadapter.so` on Linux,// * `widevinecdmadapter.dll` on Windows.app.commandLine.appendSwitch('widevine-cdm-path', '/path/to/widevinecdmadapter.plugin');// The version of plugin can be got from `chrome://plugins` page in Chrome.app.commandLine.appendSwitch('widevine-cdm-version', '1.4.8.866');var mainWindow = null;
app.on('ready', function() {
mainWindow = new BrowserWindow({
webPreferences: { // The `plugins` have to be enabled.
plugins: true
}
})
});
@H_
403_0@为了验证
插件是否工作,你可以使用下面的
方法 :
@H_
403_0@