ブラウザプラグイン

提供: ArchWiki
2021年7月23日 (金) 23:00時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (→‎他のプラグイン: 一部削除)
ナビゲーションに移動 検索に移動

関連記事

ブラウザプラグインには使用しているプラグイン API によって2種類のタイプがあります:

このページに書かれているほとんどのプラグインは NPAPI オンリーです。そうでない場合は特記します。

Flash Player

Adobe Flash Player

インストール

使用しているブラウザによってインストールするパッケージは異なります。

ノート:
  • Flash アプリの中にはテキストを正しく表示するために ttf-ms-fontsAUR パッケージを必要とするものがあります。
  • freshplayerpluginAUR プラグインは Firefox などの NPAPI を使用するブラウザで pepper-flash を使用するための実験的なアダプタです。/usr/share/freshplayerplugin/freshwrapper.conf.example~/.config/freshwrapper.conf にコピーすることで設定できます (ハードウェアアクセラレーションの有効化など)。

アップグレード

Firefox を使用している場合、Firefox#Firefox によって認識されるプラグインのバージョンが間違っているを見てください。

設定

Flash Player の設定 (プライバシー設定やリソースの使用量など) を変更したい場合、埋め込まれた Flash コンテンツ (例えば Adobe の flash ホームページ) を右クリックして、メニューから設定を選択してください。

Flash の設定ファイル /etc/adobe/mms.cfg を使うこともできます。Gentoo は注釈が豊富にある サンプル mms.cfg を提供しています。

VDPAU による動画デコードを有効にするには、以下の行を追加・アンコメントしてください:

EnableLinuxHWVideoDecode = 1

以下の行も追加・アンコメントする必要があるかもしれません:

OverrideGPUValidation = 1

マルチモニターでのフルスクリーンの問題

マルチモニターを使っている場合や仮想デスクトップを切り替えると、フルスクリーンの Flash ウィンドウのフォーカスが外れてしまうことがあります。そのような場合、Adobe の Flash プラグインは自動的にフルスクリーンモードを解除します。

残念ながら、この挙動はバイナリにハードコードされています。挙動を変更するにはバイナリの改造が必要です。

修正することができるのは NPAPI プラグインだけであり、修正方法は2つ存在します。

  • 手動でパッチをあてる [1]:
パッケージをインストールしたら、libflashplayer.so をバックアップしてください:
# cp /usr/lib/mozilla/plugins/libflashplayer.so /usr/lib/mozilla/plugins/libflashplayer.so.backup
その後、ghex などのバイナリエディタを使ってファイルを改変してください。root 権限でファイルを開く必要があります:
# ghex /usr/lib/mozilla/plugins/libflashplayer.so
バイナリエディタを使って _NET_ACTIVE_WINDOW という文字列を探してください。ghex ではウィンドウの右側に文字列が表示され、バイナリは左側に表示されます。検索機能を使えば簡単に見つかります。
_NET_ACTIVE_WINDOW を発見したら行を書き換えます。行の長さを変えてしまってはいけません。例えば _NET_ACTIVE_WINDOW_XET_ACTIVE_WINDOW に置き換えます。
バイナリを保存して、プラグインを使用しているプロセスを全て再起動してください。

DRM で保護されたコンテンツを再生

Flash DRM コンテンツを見て下さい。

Gnash

GNU Gnash は Adobe Flash Player のフリー (libre) の代替です。ブラウザプラグインだけでなく、デスクトップコンピュータや携帯デバイスのためのスタンドアロンのプレイヤーとしても利用でき、バージョン7までの SWF フォーマットに対応しています (バージョン8と9は開発中です)。また、ActionScript 2.0 を80%サポートしています。

AUR に複数のパッケージが存在します: gnash-gitAUR

Lightspark

Lightspark は Adobe Flash のフリーな代替を提供しようとしているもうひとつの試みであり、新しい Flash フォーマットのサポートを目指しています。まだ開発途上ですが、人気のサイトをいくつかサポートしています。

Lightspark は AUR にある lightspark-gitAUR パッケージでインストールできます。

Ruffle

Ruffle is a Flash Player emulator written in Rust. It runs natively as a standalone application, and on all modern browsers through the use of WebAssembly. While still being under active development, basic ActionScript 1.0/2.0 support is in place and improving; ActionScript 3.0 support is forthcoming.

Ruffle can be installed with one of the ruffle-gitAUR or ruffle-nightly-binAUR packages.

Java (IcedTea)

ノート: Java プラグインは NPAPI プラグインしか存在せず Chromium, Opera, Firefox (52 以上) では動作しません。Firefox ESR は2018年まで NPAPI プラグインをサポートします。

ブラウザの Java サポートを有効にする方法は2つあります: オープンソースの OpenJDK (推奨) と Oracle のプロプライエタリバージョンです。OpenJDK がなぜ推奨なのかはこれを見て下さい。

OpenJDK を使うには、IcedTea ブラウザプラグイン icedtea-web をインストールする必要があります。

Oracle の JRE を使いたい場合は、AUR にある jreAUR パッケージをインストールしてください。

Pipelight

Pipelight を見て下さい。

マルチメディアの再生

多くのブラウザは GStreamer フレームワークをサポートしており HTML5 の <audio><video> エレメントでマルチメディアを再生できます。GStreamer がサポートされているかは、ブラウザのパッケージの任意の依存パッケージを確認してください (webkit ベースのブラウザを使っている場合 webkitgtk2AUR または qt5-webkit を確認してください)。それぞれのプラグインの説明は GStreamer#インストール を見て下さい。

  • Rosa Media Player Plugin — Qt と MPlayer を利用するブラウザプラグイン。
https://abf.rosalinux.ru/uxteam/ROSA_Media_Player || rosa-media-player-pluginAUR
  • VLC Plugin — NPAPI ベースのプラグイン、VLC を使用。
https://code.videolan.org/videolan/npapi-vlc || npapi-vlcAUR

Open-with Firefox 拡張

  1. Open-with アドオンをインストール。
  2. about:openwith を開いて Add... を選択。
  3. ダイアログの中で動画をストリーミングできるプレイヤーを選択 (例: /usr/bin/mpv)。
  4. (オプション) プレイヤーに必要な引数を追加 (例: mpv の場合は --force-window --ytdl)。
  5. (オプション) 左パネルを使用してダイアログを表示する方法を選択。
  6. 動画が存在するページを開く、あるいはリンクを右クリック。サイトが対応していれば、プレイヤーが開くはずです。

上記の方法で youtube-dl などの動画ダウンローダーを使うこともできます。

youtube-dl

Watch with MPV をインストールすることで サポートされているサイト をお好きなプレイヤーで視聴できるようになります (デフォルトでは mpv)。音声ストリームだけのウェブサイトの場合 Additional player parameters--player-operation-mode=pseudo-gui を追加してください。

MozPlugger

MozPlugger は mozpluggerAUR パッケージでインストールできます。

MozPlugger はブラウザの中で多種のマルチメディアを表示できる Mozilla プラグインです。表示のために MPlayer, xine, Evince, OpenOffice, TiMidity などの外部プログラムを使用します。MozPlugger によって使用するアプリケーションを変更・追加するには /etc/mozpluggerrc ファイルを修正してください。

例えば、doc ファイルを開くのに MozPlugger はデフォルトで OpenOffice を使います。LibreOffice を使うように変更させるには、OpenOffice のセクションを見て下さい:

/etc/mozpluggerrc
...
### OpenOffice
define([OO],[swallow(VCLSalFrame) fill: ooffice2.0 -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: soffice -nologo $1 "$file"])
...

そして LibreOffice をリストの一番最初に加えて下さい:

/etc/mozpluggerrc
...
### LibreOffice/OpenOffice
define([OO],[swallow(VCLSalFrame) fill: libreoffice --nologo --norestore --view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice2.0 -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: soffice -nologo $1 "$file"])
...
ノート: doc ファイルを開く規定のアプリケーションとして LibreOffice が選択されることを確認してください。

もう一つの例として、シンタックスハイライトを使うためにお気に入りのテキストエディタで (ここでは Kate を使います)、cpp ファイルを開きたい場合、mozpluggerrc ファイルに新しいセクションを追加します:

/etc/mozpluggerrc
text/x-c++:cpp:C++ Source File
text/x-c++:hpp:C++ Header File
    repeat noisy swallow(kate) fill: kate -b "$file"

mpv が代わりに使われるようにデフォルトの MPlayer を変更するには、以下のように適切な行を変更してください:

/etc/mozpluggerrc
...
### MPlayer

#define(MP_CMD,[mplayer -really-quiet -nojoystick -nofs -zoom -vo xv,x11 -ao esd,alsa,oss,arts,null -osdlevel 0 $1 </dev/null])
define(MP_CMD,[mpv -really-quiet $1 </dev/null])

#define(MP_EMBED,[embed noisy ignore_errors: MP_CMD(-xy $width -wid $window $1)])
define(MP_EMBED,[embed noisy ignore_errors: MP_CMD(--autofit=$width -wid $window $1)])

#define(MP_NOEMBED,[noembed noisy ignore_errors maxaspect swallow(MPlayer): MP_CMD($1)])
define(MP_NOEMBED,[noembed noisy ignore_errors maxaspect swallow(mpv): MP_CMD($1)])

...

#define(MP_AUDIO,[mplayer -quiet -nojoystick $1 </dev/null])
define(MP_AUDIO,[mpv -really-quiet $1 </dev/null])

#define(MP_AUDIO_STREAM,[controls stream noisy ignore_errors: mplayer -quiet -nojoystick $1 "$file" </dev/null])
define(MP_AUDIO_STREAM,[controls stream noisy ignore_errors: mpv -really-quiet $1 "$file" </dev/null])
...

MozPlugger のオプションの完全なリストは このページ を見て下さい。

トラブルシューティング

インストールしたプラグインが動作しない

プラグインのパスが設定されていないのが共通の問題です。インストールした後 Firefox を起動する前にユーザーが再ログインをしていないときに発生します。パスが設定されていないかどうかテストしてください:

$ printenv MOZ_PLUGIN_PATH

設定されていない場合は、再ログインするか、/etc/profile.d/mozilla-common.sh を読み込んで同じシェルから Firefox を起動してください:

$ source /etc/profile.d/mozilla-common.sh && firefox