Недавно мой аудиоплеер сошел с ума и начал хаотично переключать аудиодорожки во время воспроизведения, когда я использую его в движении. После непродолжительного расследования я обнаружил, что причиной упомянутой проблемы является разъем для наушников - похоже, из-за каких-то неизвестных электрических проблем плеер думает, что получает фантомные сигналы от несуществующих кнопок воспроизведения/паузы на гарнитуре, используя описанный электрический протоколздесь.
Хотя у меня нет хороших идей, как исправить этот глюк на аппаратном уровне, у меня есть идея, как решить эту проблему с помощью программного обеспечения - попробуйте полностью отключить управление гарнитурой через конфигурацию звуковой карты плеера. У меня нет таких кнопок на наушниках, и я не планирую ими пользоваться.
Плеер — Cayin N3, он поставляется с звуковой микросхемой AK4490. Плеер использует кастомную прошивку на базе Linux, а звуковая подсистема — ALSA. Похоже, что основное пользовательское приложение GUI плеера напрямую взаимодействует с подсистемой ALSA через libasound
библиотеку шлюза.
Я хочу настроить звуковую карту плеера asound.conf
или что-то подобное, чтобы полностью отключить управление гарнитурой, чтобы приложение пользовательского пространства не получало никаких обратных вызовов, вызванных фантомными электрическими сигналами.
Есть идеи, как это реализовать? Не эксперт в ALSA, не знаю, с чего начать. Единственное, что я нашел, этокак ALSA сопоставляет элементы управления jack с пользовательским пространством, но понятия не имею, как это может помочь.