ワイドバインCDMの電子テストの例



Electron Testing Widevine Cdm Example



Electronでは、Chromeブラウザに付属のWidevineCDMライブラリを使用できます。

Widevine Content Decryption Module(CDM)は、ストリーミングサービスがFlashやSilverlightなどのNPAPIプラグインに依存せずに、HTML5ビデオを使用してコンテンツをWebブラウザーに保護する方法です。 Widevineサポートは、DRMで保護されたビデオコンテンツの再生を現在Silverlightに依存しているストリーミングサービスの代替ソリューションです。これにより、WebサイトはNPAPIプラグインを使用せずにFirefoxでDRM保護されたビデオコンテンツを表示できるようになります。 Widevine CDMはオープンソースのCDMサンドボックスで実行され、NPAPIプラグインよりも優れたユーザーセキュリティを提供します。



VMPに関する注記

現在 Electron v1.8.0(Chrome v59) 、以下の手順は、Widevineを有効にするために必要な手順の一部にすぎない場合があります。 Widevine CDMを使用する予定のそのバージョン以降のアプリは、から取得したライセンスを使用して署名する必要がある場合があります。 ワイドバイン 自体。

にとって ワイドバイン



Chrome 59(およびそれ以降)には、検証済みメディアパス(VMP)のサポートが含まれています。 VMPは、デバイスプラットフォームの信頼性を検証する方法を提供します。ブラウザの展開の場合、これにより、ブラウザベースの実装が信頼性が高く安全であるかどうかを判断するための追加のシグナルが提供されます。

プロキシ統合ガイドが更新され、VMPとライセンスの発行方法に関する情報が追加されました。

Widevineは、ブラウザーベースの統合(ベンダーおよびブラウザーベースのアプリケーション)がVMPのサポートを追加することをお勧めします。



この新しい制限でビデオ再生を有効にするには、 castLabs を作成しました フォーク 必要な変更を実装して、Widevineから必要なライセンスを取得した場合にWidevineをElectronアプリケーションで再生できるようにしました。

ライブラリの取得

開けるChromeブラウザでchrome:// components /を検索し、Widevine Content Decryption Moduleを使用して最新の状態になっていることを確認すると、アプリケーションディレクトリからライブラリファイルを見つけることができます。

Windowsの場合

ライブラリファイルwidevinecdm.dllは下になりますプログラムファイル(x86)/ Google / Chrome / Application / CHROME_VERSION / WidevineCdm / _platform_specific / win_(x86 | x64)/ディレクトリ。

macOSの場合

ライブラリファイルlibwidevinecdm.dylibは下になります/ Applications / Google Chrome.app/Contents/Versions/CHROME_VERSION/Google Chrome Framework.framework / Versions / A / Libraries / WidevineCdm / _platform_specific / mac_(x86 | x64)/ディレクトリ。

ノート: Electronが使用するクロムバージョンがChromeのwidevinecdmコンポーネントのmin_chrome_version値。値はで見つけることができますマニフェスト.jsonの下WidevineCdmディレクトリ。

ライブラリの使用

ライブラリファイルを取得したら、ファイルへのパスを次のように渡す必要があります。--widevine-cdm-pathコマンドラインスイッチ、およびライブラリのバージョン--widevine-cdm-バージョンスイッチ。コマンドラインスイッチは、の準備イベントアプリモジュールが発行されます。

コード例:

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://components` page in Chrome. app.commandLine.appendSwitch('widevine-cdm-version', '1.4.8.866') let win = null app.whenReady().then(() => { win = new BrowserWindow() win.show() }) 

WidevineCDMサポートの確認

ワイドバインが機能するかどうかを確認するには、次の方法を使用できます。