Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
build: [m67] enable widevine support (#14519)
* build: [m67] enable widevine support * fix: remove plugin cache reset hack It was added in (#8907) to make widevine cdm shows up in navigator.plugins, since widevine support is no longer enabled by a plugin it can be removed safely.
- Loading branch information
1 parent
52791e2
commit 96b695d
Showing
7 changed files
with
81 additions
and
148 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
# Testing Widevine CDM | ||
|
||
In Electron you can use the Widevine CDM library shipped with Chrome browser. | ||
|
||
## Getting the library | ||
|
||
Open `chrome://components/` in Chrome browser, find `Widevine Content Decryption Module` | ||
and make sure it is up to date, then you can find the library files from the | ||
application directory. | ||
|
||
### On Windows | ||
|
||
The library file `widevinecdm.dll` will be under | ||
`Program Files(x86)/Google/Chrome/Application/CHROME_VERSION/WidevineCdm/_platform_specific/win_(x86|x64)/` | ||
directory. | ||
|
||
### On MacOS | ||
|
||
The library file `libwidevinecdm.dylib` will be under | ||
`/Applications/Google Chrome.app/Contents/Versions/CHROME_VERSION/Google Chrome Framework.framework/Versions/A/Libraries/WidevineCdm/_platform_specific/mac_(x86|x64)/` | ||
directory. | ||
|
||
**Note:** Make sure that chrome version used by Electron is greater than or | ||
equal to the `min_chrome_version` value of Chrome's widevine cdm component. | ||
The value can be found in `manifest.json` under `WidevineCdm` directory. | ||
|
||
## Using the library | ||
|
||
After getting the library files, you should pass the path to the file | ||
with `--widevine-cdm-path` command line switch, and the library's version | ||
with `--widevine-cdm-version` switch. The command line switches have to be | ||
passed before the `ready` event of `app` module gets emitted. | ||
|
||
Example code: | ||
|
||
```javascript | ||
const {app, BrowserWindow} = require('electron') | ||
|
||
// You have to pass the directory that contains widevine library here, it is | ||
// * `libwidevinecdm.dylib` on macOS, | ||
// * `widevinecdm.dll` on Windows. | ||
app.commandLine.appendSwitch('widevine-cdm-path', '/path/to/widevine_library') | ||
// The version of plugin can be got from `chrome://plugins` page in Chrome. | ||
app.commandLine.appendSwitch('widevine-cdm-version', '1.4.8.866') | ||
|
||
let win = null | ||
app.on('ready', () => { | ||
win = new BrowserWindow() | ||
win.show() | ||
}) | ||
``` | ||
|
||
## Verifying Widevine CDM support | ||
|
||
To verify whether widevine works, you can use following ways: | ||
|
||
* Open https://shaka-player-demo.appspot.com/ and load a manifest that uses | ||
`Widevine`. | ||
* Open http://www.dash-player.com/demo/drm-test-area/, check whether the page | ||
says `bitdash uses Widevine in your browser`, then play the video. |
This file was deleted.
Oops, something went wrong.