pulseaudioなしでFirefox52で音声を再生する: apulseを使う

2017年8月21日

公開: 2017-03-14, 更新: 2017-07-04

はじめに

Linux上のFirefoxは 52からpulseaudio経由でないと音が出なくなりました。Jackなど他のサウンドサーバーもあるのに特定のサウンドサーバーを決め打ちなのは、どうかと思います。とはいえ、pulseaudioが無くてもFirefoxでも音を出せるようにしなければ、他のブラウザに乗り換えるしかありません。

apulse

ALSAでpulseaudioをエミュレートしてくれるapulse があります。今回はこれを使ってみました。

インストールは簡単です。Debian パッケージはないので自分でコンパイルします。

  1. ソースをapulseのgithub からもらってきます。
  2. ソースをunzipして
    $ mkdir build && cd build
    $ cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ..
    $ make
    $ sudo make install
    
    を実行します。
  3. Firefoxを起動するには
    $ apulse firefox
    
    とします。

おまけ: fbpanel

私はランチャーにfbpanelを使っています。launchbarのconfigは

        button {
            image = /usr/local/share/firefox/browser/chrome/icons/default/default32.png
            tooltip = Web Browser
            action = apulse firefox
    	}
で動きます。

追加のおまけ: XMODIFIERS=@im を使う場合

XMODIFIERS=@imを使う場合は、以下のようにします。下はfcitxを使う例です:

XMODIFIERS=@im=fcitx apulse firefox  &

おわりに

pulseaudioのflame warがネット上では起こっているようです。 しかし大多数の人はpulseaudioを使っているようで、pulseaudioを敢えて使わない人は非常に少数なのでしょう。 今回のFirefoxの一件は、オープンソースの世界に御仕着せな仕様が入ってきたことに違和感を感じました。 オープンソースとフリーなソフトウェアとは違うことは理解しているつもりですが、こういうことを感じるのは年寄りだけなのかも知れません。

自分の好きなものを使う自由が尊重されるのがGNU/Linuxだと思っていましたが、どうも今どきは違うようですね。 initもそうですが(今どきは大抵systemdがデフォルトだし)、サウンドサーバーもALSAを使う自由は残して欲しいものです。