Pilot na słuchawki w gnieździe dźwięku jako wejście X.


28

Mam nowe słuchawki, a dokładniej AKG K318 i mają jeden z tych pilotów. Na smartfonie, takim jak telefon z Androidem lub iPhone, przyciski są przypisane do działań odtwarzacza muzyki, takich jak odtwarzanie / pauza, zwiększanie / zmniejszanie głośności, pomijanie, poprzedni, masz pomysł.

Zastanawiałem się, jak mogę replikować tę samą funkcję na moim komputerze.

Wyobrażam sobie, że proces polega na tym, aby X rozpoznał dane wejściowe, a następnie jakoś zmapować te dane wejściowe do użycia przez aplikację.

„Urządzenie” (które łączyłoby się przez gniazdo dźwiękowe) nie znajduje się na liście xinput, podobnie jak przyciski nie uruchamiają regularnych zdarzeń klawiatury.

Jak używać słuchawek podłączonych do wyjściowego gniazda dźwiękowego jako klawiszy X?



1
Czy zaakceptowana odpowiedź („nie można tego zrobić”) jest nadal poprawna po 3 latach? Słuchawki My Bose są dostarczane z różnymi kablami do iPhone'a i Androida (szczególnie Samsung); Mam kabel do Androida i zastanawiam się, czy uda mi się go uruchomić z Linuksem.
Darren Cook

Mam wrażenie, że jest to bardziej prośba o funkcję, która na razie nie jest obsługiwana.
jonallard

Odpowiedzi:


41

Te „specjalne” słuchawki lub słuchawki, których można używać na wyspecjalizowanych urządzeniach do sterowania odtwarzaczami multimedialnymi, głośnością i wyciszeniem, zwykle mają CZTERY złącza na wtyczce, w przeciwieństwie do typowego TRZY, jakie ma normalne gniazdo wyjściowe słuchawek.

Zwykle trzy to lewy kanał, prawy kanał i uziemienie (wspólny), podczas gdy czwarty jest często konfigurowany jako rezystancja wielowartościowa, każdy przycisk po naciśnięciu przedstawia szczególną rezystancję na czwartym przewodzie (+ masa), które urządzenie medialne wyczuwa i na tej podstawie określa, która funkcja jest potrzebna. Dość sprytna metoda zmuszenia kilku przycisków do pracy na jednym przewodzie bez uciekania się do drogich cyfrowych generatorów sygnałów i innych rzeczy (wszystkie spakowane w tę małą kroplę na przewodach!).

Cztery przyciski mogą wykorzystywać cztery rezystancje (dowolnej jednostki):

volume up:   1 ohm
volume down: 2 ohms
stop:        4 ohms
play:        8 ohms

Jeśli wygląda to podejrzanie jak binarny schemat kodowania ... to jest !! (Jesteś taki inteligentny !!) Używając wartości o podobnej proporcji, możesz wyczuć 16 różnych wyjść, nawet obsługując wiele klawiszy wciśniętych jednocześnie. Taa Daa!

Starzy ludzie mogą pamiętać pierwsze iPody, które miały małe gniazdo 4-konektorowe obok wtyku wyjścia audio, do którego podłączało się wiele urządzeń wraz z wtyczką audio, co umożliwiało przesyłanie sygnałów sterujących tam iz powrotem. Zostało to wycofane na korzyść (imho cooler!) Systemu czwartego drutu ... standardowe słuchawki będą działać zgodnie z oczekiwaniami, a słuchawki skonfigurowane do współpracy z metodą czwartego drutu są również akceptowane.

Ale aby odpowiedzieć na twoje pytanie (wreszcie !!) ... nie, nie ma „standardowego” sposobu włączenia poszukiwanej funkcjonalności. Zestawy słuchawkowe Bluetooth będą najlepszym rozwiązaniem. (moje są fajne!)


8
i tak,
rozebrałem

5
„... obsługuje nawet wiele klawiszy wciśniętych jednocześnie”. Tyle że w tym momencie nie jest zgodny ze schematem binarnym, np. Naciśnięcie play i Vdown daje (8 * 2) / (8 + 2) lub 1,6 omów.
Ignacio Vazquez-Abrams

2
Będzie 16 różnych wartości, niekoniecznie rosnących lub malejących ... różne wartości można wyczuć. Jest tylko „binarny” w tym sensie, że jest matrycą 4 przycisków z pozycjami włączania / wyłączania. Miło wiedzieć, że ktoś mnie sprawdza.
lornix

1
Utrzymanie uczciwości odpowiedzi to wszystko.
Ignacio Vazquez-Abrams

1
Jeśli masz szczęście, że masz notebooka / netbooka z połączonym gniazdem słuchawek i mikrofonu, może być możliwe napisanie skryptu, który będzie nasłuchiwał różnych wzorców szumów na przychodzącym sygnale mikrofonu wytwarzanym przez każde naciśnięcie przycisku i zareaguje odpowiednio do nich.
Poundex,

5

O ile wiem, obecnie nie ma znormalizowanego sposobu używania przewodowego zestawu słuchawkowego jako wejścia w systemie Linux. Oznacza to, że nie będziesz w stanie używać zestawu słuchawkowego do sterowania odtwarzaczem muzyki - zestawy słuchawkowe Bluetooth z drugiej strony powinny działać natychmiast po wyjęciu z pudełka.


1

Nie jest to rozwiązanie dla wszystkich, ale moje słuchawki są zapinane na jeden guzik. Najwyraźniej niektóre z tych prostych przycisków słuchawek używają pewnego rodzaju mechanizmu sygnalizacji mikrofonu, który sprawdza, czy wejście mikrofonu jest „wysokie” (zobacz ten post i ten post ). Korzystając z audacity, byłem w stanie zweryfikować, że kliknięcie przycisku wygenerowało charakterystyczny szczyt nieosiągalny za pomocą mowy (chociaż nie próbowałem krzyczeć!). Rozglądając się po Internecie, wymyśliłem następujące rozwiązanie przy użyciu sox rec:

#!/usr/bin/sh

while true; do 
    rec -n stat trim 0 .5 2>&1 | awk '/^Maximum amplitude/ && $3 > 0.89' | grep -q 'M' && playerctl play-pause
done

playerctlto program sterujący odtwarzaniem multimediów. .5W kodzie wskazuje MIC rozdzielczość pol. Możesz pobawić się tą wartością, jeśli chcesz zastosować podwójne stukanie. 0.89wskazuje próg naciśnięcia przycisku. (mój jest w zasadzie równy 1 po wciśnięciu)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.