Come posso rimappare una pressione del tasto di riproduzione da un auricolare Bluetooth su OS X?


13

Ho un auricolare stereo Bluetooth LG Tone (HBS 700) e lo sto usando con OS X Lion.

L'auricolare ha un pulsante di attivazione / disattivazione della riproduzione, ma a differenza del pulsante di riproduzione della mia tastiera, che attiva / disattiva la riproduzione per, diciamo, VLC media player se è in esecuzione, il pulsante di riproduzione dell'auricolare avvierà iTunes se non è già aperto, oppure attiva / disattiva la riproduzione in iTunes se è già aperto. Non commuta la riproduzione / pausa in nessun altro lettore multimediale.

Qualcuno può spiegare quale evento di sistema viene probabilmente attivato quando premo play? È chiaro che alcuni demoni di sistema stanno ascoltando qualcosa, dal momento che iTunes viene avviato e può interpretare bene i controlli play / pause / next / prev ... C'è un modo in cui posso intercettare l'evento keypress e rimappare la sua funzione? Vorrei che avesse lo stesso comportamento del pulsante di riproduzione della tastiera.

Grazie per l'aiuto!

Risposte:


7

Stai cercando il demone telecomando situato in:

/System/Library/CoreServices/rcd.app

Può essere disabilitato con il comando

sudo chmod a-x /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd
killall -9 rcd

(Se lo uccidi, launchdlo riavvierai di nuovo). Per riattivarlo,

sudo chmod a+x /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd

Quindi disconnettersi e riconnettersi per launchdavviarlo.

Se hai abbastanza ambizioni, puoi provare a modificarlo con un editor esadecimale. Questo è al di fuori del mio regno di conoscenza, ma ho due suggerimenti.

  1. L'apertura di quicktime (solo vuoto, niente al suo interno) in background può impedire al demone di usare iTunes. Dipende se il tuo dispositivo utilizza lo stesso evento di sistema.

  2. In alternativa, è disponibile un'utilità gratuita al seguente link che corregge il demone per te. Dopo averlo eseguito, il demone utilizzerà il programma attivo, anziché iTunes. Tuttavia, ciò non rimappa VLC come programma da aprire quando si preme play. È progettato per i tasti multimediali della tastiera, ma credo che il sistema operativo veda il pulsante del tuo LG Tone come lo stesso evento di sistema. Quel link: http://lifehacker.com/5651055/free-your-macs-media-keys-from-itunes-no-manual-hacking-required

Infine, posso dirti che Apple non ha ancora fornito un modo semplice per modificare le impostazioni del telecomando. Questo è un peccato, in quanto si tratta di una domanda comune per quanto riguarda i tasti multimediali delle tastiere e altri controlli su dispositivi come il tuo. Invece di fornire una soluzione, sembra che in passato abbiano apportato modifiche al sistema operativo per garantire che iTunes sia il programma utilizzato da questo demone. Sfortunatamente, è improbabile che ci sia una soluzione migliore di queste presto.


3
Nella mia esperienza, i dispositivi bluetooth che inviano segnali di riproduzione / pausa non vengono interpretati nello stesso modo in cui vengono interpretati i tasti multimediali della tastiera. Usando la patch citata, la mia tastiera si comporta come previsto, eppure le mie cuffie bluetooth continuano ad avviare iTunes. Ho pensato di non farlo per amore dei posteri.
Wilco

Qualche consiglio su come apportare questa modifica in OS X Sierra? Hanno un sistema di protezione del sistema operativo ed è abbastanza difficile apportare tali modifiche.
AB,

3

Per prima cosa avrai bisogno di un'applicazione di rimappatura della tastiera di terze parti chiamata Karabiner (precedentemente KeyRemap4MacBook). L'applicazione è un po 'ostile per l'utente ma in teoria devi farlo solo una volta. Inoltre attualmente non funziona su MacOS Sierra ... quindi tienilo a mente.

Eccoci qui...

Installa il moschettone

https://pqrs.org/osx/karabiner/index.html.en

Esegui il moschettone

Dovresti dargli alcune autorizzazioni di accessibilità se vuoi tutte le funzionalità.

Utilizzare l'applicazione Helper "EventViewer" per ottenere i codici chiave

Apri EventViewer per ottenere codici chiave / ID applicazione / dispositivo:

inserisci qui la descrizione dell'immagine

Vai alla scheda Principale, quindi premi i tasti sulla tastiera, sul telecomando Bluetooth, ecc. Che desideri mappare nuovamente. In questo caso puoi vedere i codici chiave per Media-Forward e Media-Back sul mio telecomando bluetooth Satechi (che voglio mappare nuovamente sui tasti freccia sinistra / destra).

inserisci qui la descrizione dell'immagine

Vai avanti e "copia su pasteboard" e incollalo in un documento di testo per dopo. Ora, a seconda del caso d'uso, è possibile accedere all'app o alla scheda Dispositivi.

Se si desidera limitare il rimappatura della chiave a applicazioni specifiche, è necessario creare una regola di mappatura che sia per un ID applicazione specifico (ad esempio google chrome). Quindi andresti nella scheda dell'app e otterrai l'ID applicazione per la tua applicazione di interesse (da utilizzare in seguito quando creiamo la regola).

inserisci qui la descrizione dell'immagine

Nel mio caso, voglio solo rimappare questi tasti sul mio telecomando bluetooth Satechi e non voglio sbagliare come funzionano i miei tasti della tastiera esistenti ... quindi voglio creare una regola specifica per il dispositivo. Quindi vado alla scheda Dispositivi.

inserisci qui la descrizione dell'immagine

Nota!!! Per app e dispositivi, dovresti anche copiare e incollare in un file di testo in modo da avere le stringhe ID dispositivo / app complete da utilizzare nella nostra regola.

Costruire le regole

Ora che hai copiato e incollato in un file di testo codici chiave, app e / o ID dispositivo per riferimento in un secondo momento, puoi chiudere EventViewer e tornare all'app principale.

Le regole predefinite non sono molto interessanti per noi, quindi dobbiamo creare una regola personalizzata ma modificarla private.xml

inserisci qui la descrizione dell'immagine

Questo avvierà semplicemente una finestra del Finder che mostra private.xml. Vai avanti e apri private.xml nel tuo editor di testo preferito.

Ora sei pronto per creare regole ...

La documentazione sul formato di questo file è qui: https://pqrs.org/osx/karabiner/xml.html.en

Per ognuno <item>è necessario il minimo <name> <identifier> e <autogen>. Il nome è solo un nome per te. Anche l'identificatore è composto da te ma dovrebbe essere unico. autogen è dove si specifica la regola / mappatura (cioè la chiave di interesse dovrebbe inviare le chiavi alla barra).

Di ulteriore interesse è possibile specificare che la regola venga eseguita solo per specifiche applicazioni attive (penso che sia qui che entrano in gioco le autorizzazioni di accessibilità di MacOS ... così Karabiner può determinare la finestra attiva). Questo è fatto con <only>.

Anche di interesse (per me) è <device_only>che mi permette di stabilire una regola solo per una tastiera specifica (cioè il mio telecomando bluetooth satechi). Vedi il link sopra per maggiori dettagli.

Comunque. Usa gli ID codice chiave, gli ID dispositivo e gli ID applicazione che hai ottenuto da EventViewer per costruire le tue regole personalizzate.

Il mio assomiglia a questo:

<?xml version="1.0"?>
<root>
    <item>
        <name>Satechi Right</name>
        <identifier>private.satechi.right</identifier>
        <device_only>DeviceVendor::RawValue::0x05ac,DeviceProduct::RawValue::0x023c</device_only>
        <autogen>__KeyToKey__ ConsumerKeyCode::MUSIC_NEXT_17, KeyCode::CURSOR_RIGHT</autogen>
    </item>
    <item>
        <name>Satechi Left</name>
        <identifier>private.satechi.left</identifier>
        <device_only>DeviceVendor::RawValue::0x05ac,DeviceProduct::RawValue::0x023c</device_only>
        <autogen>__KeyToKey__ ConsumerKeyCode::MUSIC_PREV_18, KeyCode::CURSOR_LEFT</autogen>
    </item>
</root>

Riepilogo: 2 regole. Solo dispositivo remoto bluetooth Satechi. Il pulsante multimediale "successivo" è associato alla freccia destra, il pulsante multimediale "precedente" alla freccia sinistra. Si applica a tutte le applicazioni.

Carica le regole

Salva il tuo file XML. Torna all'app Karabiner. Vai alla scheda "Cambia chiave". Fai clic su "Ricarica XML" in alto a sinistra. Le tue nuove regole ora dovrebbero apparire. Seleziona le caselle per abilitare le regole. Verifica che i nuovi mapping dei tasti funzionino come previsto.

inserisci qui la descrizione dell'immagine

L'app non è sicuramente facile da usare ma mi ha permesso di configurare esattamente quello che volevo abbastanza facilmente una volta comprese le opzioni. Karabiner è un po 'difettoso ... Ho fatto in modo che alcuni eventi non venissero visualizzati nel Visualizzatore eventi anche se le regole di rimappatura stavano ancora funzionando ... Il riavvio aiuta.


1
Sembra che il successore di Karabiner, Karabiner-Elements, che è un aggiornamento necessario per le versioni più recenti di MacOS, non veda i controlli del dispositivo multimediale Bluetooth. Il nuovo EventViewer non registra affatto la pressione di tali pulsanti, ma iTunes si avvia comunque. :(
wfaulk,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.