以前の記事では、AWS Elemental MediaConvert(以下、単にMediaConvert)で動画をパッケージングする方法について紹介しましたが、本記事では、Widevine DRMで配信するまでの流れを簡単に紹介していきます。

※前提

  • クライアントは、ブラウザを使用する前提となります。
  • DRMプロバイダーとは契約済みで、キーサーバやライセンスサーバが使用できる状態である前提となります。

MediaConvertで動画をパッケージング

こちらの手順については、以前手順を説明していますので、詳細は省きます。詳細について興味がある方は、以前の記事を参照ください。MediaConvertで動画をパッケージングすると、MPEG-DASHマニフェストファイル(*.mpd)と暗号化された動画がストレージに出力されていますので、そちらをオリジン(配信ストレージ)に配置してください。

DRMコンテンツを再生する

この節では、ブラウザでDRMコンテンツを再生するまでの流れについて簡単に説明していきます。WidevineはGoogleのDRMとなりますので、Google Chromeや、または、FirefoxなどWidevineに対応したブラウザを使用します。

まずは簡単にDRMコンテンツが再生されるまでの流れについて確認しておきましょう。

DRMコンテンツが再生されるまでの流れ

上図は、ブラウザが再生ページにアクセスしてDRMコンテンツを再生しようとしたときの流れを簡単に表したものとなります[1]。いろいろな処理が実行されますが、簡単に言いますと、DRMコンテンツを取得した後、再生のために必要なライセンスを取得する、という流れとなっています。

これらの処理は自前で実装する必要はなく、大抵の有償/無償のHTML5プレイヤを使えば上述の流れを実現することができます。自身でやることは、必要な情報をHTML5プレイヤに設定するのみとなります。

ただ、この例では③のライセンス要求をWebサーバ経由で実行していますので、クライアントデバイスから飛んできたライセンス要求を認証した上で、ライセンスサーバに要求を通す実装が必要となります。[2]

無事ライセンスが取得できれば、DRMコンテンツは再生することができます。

さいごに

DRMの実装は難しいと思われている方が多いですが、本記事で見てきましたように、実際には非常に単純なものであるということが、お分かりいただけましたでしょうか。弊社のDRMソリューション「Multi DRM Kit」では、本記事を実施いただけるサンプルコードも用意していますので、ご興味のある方は是非弊社までお問合せください。



  1. より細かな流れとしてはライセンス要求の前に証明書要求があったりします。[]
  2. この例のような方式を弊社ではプロキシ認証と呼んでいます。もう一つの方式として、クライアントデバイスからライセンスサーバにダイレクトに要求するダイレクト認証があります。どちらの方式を使用するかは、クライアントデバイスからの要求をどこまで制御したいかによります。[]