Flash DRM コンテンツ
Flash の DRM コンテンツを再生するには HAL が必要です。Google Play ムービー, Amazon インスタントビデオ, WatchESPN, Demand 5 (Channel 5 UK) などでそれは明らかです。DRM で保護されたコンテンツを HAL 無しで再生しようとすると、次のようなエラーが表示されます: an error occurred and your player could not be updated
。
DRM で保護されたコンテンツを届けるために、Flash は HAL デーモンやライブラリによって提供されている関数を呼び出します。Flash ベースのプレイヤーは未だに人気がありますが、HAL は既に非推奨となっており新しい環境では通常インストールされていません。そのような環境に HAL の必要な機能を入れるには、HAL の完全なパッケージをインストールして HAL デーモンを実行するか、または新しい UDisks デーモンを使用する修正済みの HAL ライブラリ"スタブ"をインストールします。
目次
HAL パッケージを使う
AUR から halAUR パッケージをインストールしてください。halAUR の依存パッケージである hal-infoAUR を先にインストールする必要があります。
HAL デーモンの実行
HAL デーモンは hal.service
によって管理され、systemctl で制御することができます。
もしくは、以下のスクリプトを使うこともできます。このスクリプトはキャッシュの消去も行います。
#!/bin/bash ## written by Mark Lee <bluerider> ## using information from <https://wiki.archlinux.org/index.php/Chromium#Google_Play_.26_Flash> ## Start and stop Hal service on command for Google Play Movie service function main () { ## run the main insertion function clear-cache; ## remove adobe cache start-hal; ## start the hal daemon read -p "Press 'enter' to stop hal"; ## pause the command line with a read line stop-hal; ## stop the hal daemon } function clear-cache () { ## remove adobe cache cd ~/.adobe/Flash_Player; ## go to Flash player user directory rm -rf NativeCache AssetCache APSPrivateData2; ## remove cache } function start-hal () { ## start the hal daemon sudo systemctl start hal.service && ( ## systemd : start hal daemon echo "Started hal service..." ) || ( echo "Failed to start hal service!") } function stop-hal () { ## stop the hal daemon sudo systemctl stop hal.service && ( ## systemd : stop hal daemon echo "Stopped hal service..." ) || ( echo "Failed to stop hal service!" ) } main; ## run the main insertion function
修正済みの libhal スタブを使う
HAL をまるごとインストールする代わりに、AUR から libhal ライブラリの修正版をインストールすることができます。廃止された HAL の代わりに近代的な UDisks デーモンを使います。この libhal は Flash でコピーガードのかかったコンテンツを再生するために必要な HAL の機能しか提供しません。HAL を必要とする他のプログラムでは、このスタブはおそらく機能が不足するので完全な hal パッケージを使うようにしてください。
UDisks と hal-flash のインストール
AUR から hal-flashAUR をインストールしてください。このパッケージは Udisks に依存しています。
UDisks の実行
libhal スタブはコールを UDisks に渡すので、DRM 保護された Flash 動画を再生する前に UDisks を実行する必要があります。
udisks2.service
が起動していることを確認してください。詳しくは systemd#ユニットを使う を見て下さい。
Flash Player のキャッシュファイルを削除
パッケージをインストールしたら新しく起動するために、Flash Player のキャッシュファイルを削除してください:
$ rm -rf ~/.adobe/Flash_Player/{NativeCache,AssetCache,APSPrivateData2}