Browser plugins (简体中文) - ArchWiki

# Browser plugins (简体中文)

本文主题是浏览器插件。其中涉及的浏览器插件在Firefox、Opera以及其他webkit核心浏览器上均可使用。

## Flash Player

### Gnash

GNU Gnash 是 Adobe Flash Player 的自由软件替代。可以作为单独的播放器，也可以嵌入浏览器。可以通过软件包 gnash-gtk 进行安装。

### Adobe Flash Player

[extra]仓库提供了i686和x86_64平台的Adobe Flash Player：

    # pacman -S flashplugin

警告: Chromium 不再支持 Netscape plugin API (NPAPI)，官方软件仓库中的 flashplugin 已经无法工作。

可以使用 Google Chrome (新Pepper API)提供的 Flash。

请参见Chromium#Flash Player plugin以获得更详细的信息。

#### 杂项

某些时候文本显示不太正常，可能需要从AUR安装ttf-ms-fonts。

#### 配置

在浏览器中打开Flash，右键即可看到配置菜单。或者访问Macromedia网站，通过这里显示的一个Flash可以调整设置。

也可以自己编写mms.conf配置Flash。在/etc/adobe目录创建mms.cfg，内容范例如下：

     # Adobe player settings
     AVHardwareDisable = 0
     FullScreenDisable = 0
     LocalFileReadDisable = 1
     FileDownloadDisable = 1
     FileUploadDisable = 1
     LocalStorageLimit = 1
     ThirdPartyStorage = 1
     AssetCacheSize = 10
     AutoUpdateDisable = 1
     LegacyDomainMatching = 0
     LocalFileLegacyAction = 0
     AllowUserLocalTrust = 0
     # DisableSockets = 1
     OverrideGPUValidation = 1

要使用硬件加速, 在 `/etc/adobe/mms.cfg` 文件中加入下面这一行:

    EnableLinuxHWVideoDecode=1

亦可参考Gentoo的mms.cfg。

#### 使用nVidia显卡时Flash很卡

试试在mms.cfg或配置菜单关闭硬件加速。参见：https://bugs.archlinux.org/task/22878。

## PDF浏览器

### Evince

Firefox中现已可以直接打开PDF

### Adobe Reader

由于许可证问题，官方软件仓库不能提供 Adobe Reader。但在AUR中可以找到这些包。

AUR中亦提供了多语言支持包localizations。

#### 32位（i686）

32位安装包：acroread。

该包也提供Firefox插件。硬件渲染功能在Linux平台貌似不可用。

第三方软件仓库提供了预编译版本。打开`/etc/pacman.conf`，添加如下内容：

    [archlinuxfr]
    Server = http://repo.archlinux.fr/i686

然后更新软件信息，并安装Adobe Reader：

    # pacman -Syu acroread

#### 64位（x86_64）

Adobe Reader是闭源软件。除非官方提供支持，否则我们无法使用原生64位版本。

作为代替，可以安装AUR中的bin32-acroread[broken link: package not found]，并使用32位软件库。该包的可选依赖也最好一并安装。注意该包的Firefox插件无法在64位浏览器直接使用。要使用插件，安装nspluginwrapper-flash[broken link: package not found]，然后以普通用户身份执行：

    $ nspluginwrapper -v -a -i

## Citrix

参见：Citrix

## Java

### IcedTea

    # pacman -S icedtea-web-java7

### Weird symlink

开源和闭源Java软件包都提供了浏览器插件支持。官方仓库提供了开源版本：

    # pacman -S jre7-openjdk

AUR中有闭源版本：jre。

两个版本不能同时使用。开源版本目前已经相当完美，无需刻意使用闭源版本。闭源版本有个小问题，由于从Firefox3.6开始，浏览器不再从`/usr/lib/mozilla/plugins`查找插件，而jre插件默认安装在这里，需要调整一下：

    # ln -s /opt/java/jre/lib/i386/libnpjp2.so ~/mozilla/plugins/libnpjp2.so

## 视频播放插件

### Gecko Media Player

mplayer用户可以使用该插件：

    # pacman -S gecko-mediaplayer

### Totem Plugin

gstreamer用户可以使用该插件：

    # pacman -S totem-plugin

## 其他

### Mozplugger

从AUR安装mozplugger。

## 疑难解答

### Flash独占了声音设备

如果发现播放Flash时其他程序无法正常播放声音，那么可能是由于没有加载`snd_pcm_oss`模块：

    $ lsmod | grep snd_pcm_oss

重新加载：

    # rmmod snd_pcm_oss

并重启浏览器即可。

### Flash无声音

Flash Player只通过默认的ALSA设备输出音频（编号0）。如果使用多个声音设备（比如，除了声卡外，使用了显卡的HDMI输出），可能你要使用的声音设备编号不是0，从而导致Flash无声音。

例如：

    $ aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 1: DX [Xonar DX], device 0: Multichannel [Multichannel]
      Subdevices: 0/1
      Subdevice #0: subdevice #0
    card 1: DX [Xonar DX], device 1: Digital [Digital]
      Subdevices: 1/1
      Subdevice #0: subdevice #0

上面的示例中，HDMI设备编号为0，而声卡编号为1。要将该声卡作为ALSA默认输入，创建`~/.asoundrc`，内容如下：

    pcm.!default {
    type hw
    card 1
    }

    ctl.!default {
    type hw
    card 1
    }

### Flash性能

Adobe的Flash插件有严重的性能问题，尤其是在CPU使用自动降频功能时。参见：cpufrequtils#Changing the ondemand governor's threshold。

### 插件安装后无法使用

这通常是因为第一次安装插件后，用户未重登录，插件路径还未设置。测试如下变量：

    echo $MOZ_PLUGIN_PATH

若未设置，请尝试重新登录。

### Gecko Media Player 无法播放 Apple Trailers

设置浏览器的用户代理（user agent）为：

    QuickTime/7.6.2 (qtver=7.6.2;os=Windows NT 5.1Service Pack 3)

### Flash中webcam分辨率低

尝试使用如下命令启动浏览器：

    LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so chromium

### Black bars in fullscreen video playback on multiheaded desktops

Follow the instructions on this page: link

Category:

- Web Browser (简体中文)