У меня есть гарнитура, у которой есть кнопка, которая должна воспроизводить / приостанавливать звук, отвечать на вызовы и т. д., и я хотел, чтобы он работал на Ubuntu. У моего компьютера есть комбинированный порт гарнитуры (четвертый вывод), но когда я нажимаю кнопку (которая меняет сопротивление на микрофоне), все, что она делает, это следующее: существует ли какой-либо существующий способ справиться с этим и / или воздействовать на него в Ubuntu ? Если нет, с чего начать?
Кнопка работает, замыкая контакт микрофона на землю. Гарнитуры, которые имеют больше кнопок, используют разные сопротивления между микрофонным штырем и землей; см. https://source.android.com/devices/accessories/headset/plug-headset-spec
Это будет работать, только если чип кодека в вашем аудиоустройстве поддерживает обнаружение этих событий - аппаратное обеспечение должен поддерживать его, и программное обеспечение тоже должно его использовать. Некоторые драйверы кодеков Linux делают, и они создают новое устройство ввода для гнезда для микрофона с «нажатиями клавиш», соответствующими четырем возможным событиям. Именно тогда программное обеспечение определяет двойные щелчки, длинные нажатия и тому подобное. Но ни один из драйверов кодеков Intel HDA не поддерживает это, и это, вероятно, то, что вы используете. Я не знаю, поддерживает ли это оборудование, и драйвер может быть дополнен. Какой у вас кодек кодека?
Кнопка работает, замыкая контакт микрофона на землю. Гарнитуры, которые имеют больше кнопок, используют разные сопротивления между микрофонным штырем и землей; см. https://source.android.com/devices/accessories/headset/plug-headset-spec
Это будет работать, только если чип кодека в вашем аудиоустройстве поддерживает обнаружение этих событий - аппаратное обеспечение должен поддерживать его, и программное обеспечение тоже должно его использовать. Некоторые драйверы кодеков Linux делают, и они создают новое устройство ввода для гнезда для микрофона с «нажатиями клавиш», соответствующими четырем возможным событиям. Именно тогда программное обеспечение определяет двойные щелчки, длинные нажатия и тому подобное. Но ни один из драйверов кодеков Intel HDA не поддерживает это, и это, вероятно, то, что вы используете. Я не знаю, поддерживает ли это оборудование, и драйвер может быть дополнен. Какой у вас кодек кодека?