オンボードのサウンドカードと、接続されたBluetoothヘッドセットを持っています。 /etc/asound.conf
でBluetoothデバイスを設定しました:
# cat /etc/asound.conf
pcm.bluetooth {
type bluetooth
device 12:34:56:78:9a:bc
profile "auto"
}
ctl.bluetooth {
type bluetooth
}
デフォルトでは、すべてのサウンドにオンボードカードが使用されます(明らかに、デフォルトのオンボードカードはasound.confにリストする必要さえありません)。
アプリケーションでbluetooth alsaデバイスを使用する場合は、次のように指定する必要があります。
mplayer -ao alsa:device=bluetooth file.mp3
それで結構です。しかし、ブラウザーにbluetooth alsaデバイスも使用するように指示する方法が必要です。
--alsa-output-device
コマンドラインオプションを使用してchromiumを起動する方法を見つけました:
chromium --alsa-output-device=bluetooth
同様の方法でFirefoxを起動する必要がありますが、見つかりませんでした。
毎回/etc/asound.conf
または~/.asoundrc
を変更する必要なしに、FirefoxにBluetooth alsaデバイスを使用するように指示するにはどうすればよいですか?
@lgeorgetのアドバイスに従い、/etc/asound.conf
は次のようになります。
pcm.!default {
type plug
slave.pcm {
@func getenv
vars [ ALSAPCM ]
default "hw:0,0"
}
}
pcm.bluetooth {
type bluetooth
device 12:34:56:78:9a:bc
profile "auto"
}
ctl.bluetooth {
type bluetooth
}
ALSAPCM=bluetooth firefox
を使用してFirefoxを起動すると、Bluetoothヘッドセットで音が聞こえますが、Firefoxは100%CPU(4コア)で動作し、YouTubeビデオは10倍の速度で再生されます(それに応じて音が歪む) 。何が起こっているのか理解できません。ALSAPCM=bluetooth
なしでFirefoxを起動すると、すべて問題なく、デフォルトのalsaデバイスでサウンドが再生されます。
どうやらfirefoxのオプションはありませんが、環境変数を介してALSA出力を操作できます。
たとえば、次のことを試してください。
ALSA_PCM_CARD=bluetooth firefox
または、これが機能しない場合は、.asoundrcを少しスクリプト化してみてください
pcm.!default {
type plug
slave.pcm {
@func getenv
vars [ ALSAPCM ]
default "hw:hdmi"
}
}
(「hw:hdmi」を通常のpcmに置き換えてください)。次に、プログラムで特定のPCMを使用する場合は、次を使用します。
ALSAPCM=bluetooth firefox
出典:
このバグ の化身のようです。 ソリューション がいくつか提案されていますが、それらはIntel固有のもののようです。
PulseAudioを使用してみてください。動作する場合は、次のasound.conf
を使用して、ALSAプログラムをpulseaudioにリダイレクトできます。
pcm.Pulse {
type Pulse
}
ctl.Pulse {
type Pulse
}
pcm.!default {
type Pulse
}
ctl.!default {
type Pulse
}
それでも解決しない場合は、rate 44100
のrate 48000
セクションにpcm.bluetooth
またはasound.conf
を追加してみてください。おそらく、ALSAはその意味を理解するでしょう。
Html5 Youtube Video Speed Controller を試してみることもできますが、役に立たないと思います。
備考:Firefoxの現在のバージョンでは、不明な理由により〜/ .asound.confを無視しているようです。
Pulseaudioを使用しない場合(ほとんどのディストリビューションがインストールするにもかかわらず、主にalsa上の不要なレイヤーです)、ほとんどの場合、デフォルトのオーディオ出力を別のものに選択するだけで済みます。
これは次のようにして行うことができます.asound.conf
あなたの家で:
pcm.!default {
type hw
card N
}
ctl.!default {
type hw
card N
}
N
を小さな整数に置き換え、0は最初のサウンドカード(デフォルト)、1は2番目のサウンドカード、というようになります。
!
!default
はここで否定ではありません!これは、以前に(システム全体で定義された)グローバルalsa.confをオーバーライドします。
よりトリッキーな設定を読むことができます ここ 。