La risposta in alto qui funziona, ma non per tutti i dispositivi audio bluetooth. Alcuni dispositivi hanno nomi di profilo diversi rispetto a quelli di quel poster con i suoi altoparlanti bluetooth. Ad esempio, nel seguente codice, originariamente pubblicato da quella persona, apparentemente ha profili nominati a2dpe hsp. Nessuno di questi è disponibile con i miei toni LG, ad esempio, ma lo sono con altri dispositivi come il mio auricolare Sony.
#!/bin/bash
BLUEZCARD=`pactl list cards short | egrep -o bluez.*[[:space:]]`
pactl set-card-profile $BLUEZCARD a2dp
pactl set-card-profile $BLUEZCARD hsp
pactl set-card-profile $BLUEZCARD a2dp
Questo codice funzionerà per la maggior parte dei dispositivi bluetooth che sembra, ma per farlo funzionare correttamente per quei dispositivi che non hanno il profilo a2dp o il profilo hsp, digitare:
pactl list | grep -Pzo '.*bluez_card(.*\n)*'
Questo restituirà tutto dopo dove trova un dispositivo bluetooth. Ad esempio, con l'auricolare LG Tone Ultra, ottengo questo:
Name: bluez_card.B8_AD_3E_**_**_**
Driver: module-bluez5-device.c
Owner Module: 36
Properties:
device.description = "LG HBS810"
device.string = "B8:AD:3E:**:**:**"
device.api = "bluez"
device.class = "sound"
device.bus = "bluetooth"
device.form_factor = "headset"
bluez.path = "/org/bluez/hci0/dev_B8_AD_3E_**_**_**"
bluez.class = "0x240404"
bluez.alias = "LG HBS810"
device.icon_name = "audio-headset-bluetooth"
device.intended_roles = "phone"
Profiles:
a2dp_sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 10, available: yes)
headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 20, available: yes)
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
Active Profile: a2dp_sink
Ports:
headset-output: Headset (priority: 0, latency offset: 0 usec)
Part of profile(s): a2dp_sink, headset_head_unit
headset-input: Headset (priority: 0, latency offset: 0 usec)
Part of profile(s): headset_head_unit
Siamo interessati alla profilessezione. In questa sezione, vediamo tre profili, che sono a2dp_sink, headset_head_unite off. I due profili di cui abbiamo bisogno dovrebbero avere in loro (lavello A2DP) e (HSP / HFP). In questo caso, sono a2dp_sinkper il profilo a2dp e headsethead_unitper il profilo hsp. Si noti che questo è diverso da quello del poster originale a2dpe hsp.
Ora, con il codice sopra, lo modificheremo e lo inseriremo in un file. Ho chiamato il file bluezswitch.sh.
Passare alla directory in cui si desidera inserire il file. Può essere ovunque.
touch bluezswitch.sh
Poi
nano bluezswitch.sh
Copia e incolla il codice nella parte superiore di questo commento e sostituisci a2dpe hspcon i valori che hai ottenuto quando hai eseguito il comando sopra e incollalo in quel file. Ad esempio, questo è l'aspetto del mio file per i miei toni LG.
#!/bin/bash
BLUEZCARD=`pactl list cards short | egrep -o bluez.*[[:space:]]`
pactl set-card-profile $BLUEZCARD a2dp_sink
pactl set-card-profile $BLUEZCARD headset_head_unit
pactl set-card-profile $BLUEZCARD a2dp_sink
Ora, ctrl-xquindi yper salvare il file ed uscire da nano, quindi rendere eseguibile il file:
chmod +x bluezswitch.sh
Quindi follow-up impostando una scorciatoia da tastiera come è stato spiegato.
Vai su Impostazioni ... Tastiera ... Collegamenti e crea un collegamento personalizzato; chiamalo come preferisci, con il comando come /home/brillout/bluezswitch.sh (sostituisci il nome utente appropriato nel percorso!). Fai clic su Applica, quindi fai clic sulla destra dove dice Disabilitato per impostare una scorciatoia da tastiera per eseguire lo script.
Questo dovrebbe essere tutto ciò che c'è da fare. Questo dovrebbe funzionare per tutti quelli per cui non ha funzionato prima.
mplayer, lo fai premendo i tasti+e-. In VLC, non so come impostare il ritardo, ma sarei sorpreso se VLC non avesse tale opzione.