GNU/Linux >> Linux Esercitazione >  >> Linux

Come dire a Firefox di utilizzare un altro dispositivo Alsa?

Ho una scheda audio integrata e anche un auricolare bluetooth collegato. Ho configurato il dispositivo bluetooth in /etc/asound.conf :

# cat /etc/asound.conf

pcm.bluetooth {
    type bluetooth
    device 12:34:56:78:9a:bc
    profile "auto"
}

ctl.bluetooth {
    type bluetooth
}

Per impostazione predefinita, la scheda integrata viene utilizzata per tutti i suoni (apparentemente, la scheda integrata predefinita non ha nemmeno bisogno di essere elencata in asound.conf)

Quando voglio che un'applicazione utilizzi il mio dispositivo bluetooth alsa, devo specificarlo, ad esempio:

mplayer -ao alsa:device=bluetooth file.mp3

Va bene per me. Ma ho bisogno di un modo per dire ai miei browser di utilizzare anche il dispositivo bluetooth alsa.

Ho trovato un modo per avviare chromium usando il --alsa-output-device opzione della riga di comando:

chromium --alsa-output-device=bluetooth

Ho bisogno di un modo simile per avviare Firefox, ma non sono riuscito a trovarne.

Come posso dire a Firefox di utilizzare il mio dispositivo bluetooth alsa, senza dover modificare /etc/asound.conf o ~/.asoundrc ogni volta?

AGGIORNAMENTO:

Ho seguito il consiglio di @lgeorget e il mio /etc/asound.conf ora appare così:

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
}

Quando avvio Firefox utilizzando ALSAPCM=bluetooth firefox , Ottengo l'audio nel mio auricolare Bluetooth, ma Firefox funziona al 100% della CPU (sui miei 4 core) e il video di YouTube viene riprodotto a una velocità 10x (e il suono è corrispondentemente (confuso). Non capisco cosa sta succedendo. Quando Avvio Firefox senza ALSAPCM=bluetooth , è tutto a posto e l'audio viene riprodotto sul dispositivo alsa predefinito.

Risposta accettata:

Apparentemente non ci sono opzioni per Firefox, ma puoi manipolare l'output di ALSA tramite le variabili di ambiente.

Prova ad esempio:

ALSA_PCM_CARD=bluetooth firefox

In alternativa, se questo non funziona, prova a creare un po' di script il tuo .asoundrc

pcm.!default {
type plug
slave.pcm {
        @func getenv
        vars [ ALSAPCM ]
        default "hw:hdmi"
    }
}

(sostituisci "hw:hdmi" con il tuo normale pcm). Quindi se vuoi che un programma utilizzi un PCM specifico, usa:

ALSAPCM=bluetooth firefox

Fonti:

  • Archlinux-wiki
  • Stackoverflow.com

Linux
  1. Come usare BusyBox su Linux

  2. Come uso cron in Linux

  3. Come usare il comando Su in Linux

  4. Utilità Bluetooth di basso livello?

  5. Come trovare quale porta seriale è in uso?

Come utilizzare un'unità USB su Debian 10

Come utilizzare il Bluetooth su Ubuntu per il trasferimento di file

Che cosa sono i contenitori multi-account di Firefox? Perché e come usarlo?

Come usare il comando PS

Come usare il comando TOP

Come utilizzare Idm su Mozilla Firefox Quantum?