udev 규칙 생성

udev 규칙 생성

저는 Acer 720c Chromebook에서 crouton을 사용해 왔습니다. 또한 ASUS VS247과 함께 사용하고 싶은 외부 모니터가 있습니다. 이 특정 모니터에는 오디오 패스스루가 있지만 스피커는 없습니다. 이로 인해 디스플레이를 통한 Chrome OS의 오디오 출력이 혼동됩니다.

설정에서 전환할 수 있으므로 일반적으로 전혀 문제가 되지 않습니다. 그러나 디스플레이가 Linux chroot의 기본 해상도가 아닌 한 오디오는 디스플레이를 사운드 장치로 사용하도록 다시 전환됩니다.

alsamixerChrome OS 셸과 Linux chroot에서 수정을 시도했지만 성공하지 못했습니다. 항상 Chromebook 스피커를 기본 오디오 장치로 설정할 수 있는 방법이 있나요(Chrome OS에서는 권장되지만 필수는 아님)?

답변1

재미있는 점은 alsamixer가 Chome OS에서 사용 가능한지, udev 도구도 사용 가능한지 확인할 생각조차 하지 못했다는 것입니다. 다음에 설명된 대로 이 장치를 무시하려면 udev 규칙을 생성해야 합니다.udev를 사용하여 PulseAudio에 USB 장치를 무시하도록 지시작성자: Jamie Nguyen(또는 커널 모듈 블랙리스트, 아래 추가 제안):

udev 규칙 생성

귀하의 시스템에는 이미 /lib/udev/rules.d디렉토리에 udev 규칙이 정의되어 있어야 합니다. 예를 들어, 자신만의 규칙을 정의할 수 있는 디렉토리 90-pulseaudio.rules도 있어야 합니다 ./etc/udev/rules.d

규칙은 어휘 순서로 구문 분석됩니다. /etc/udev/rules.d/89-pulseaudio-usb.rules이전에 구문 분석할 수 있도록 라는 파일을 만듭니다 90-pulseaudio.rules(물론 예상대로 작동하지 않으면 번호 매기기를 시도해야 할 수도 있음).

원하는 편집기에서 파일을 열고 규칙을 만듭니다. 이전 idVendoridProduct숫자를 사용하여 USB 장치를 고유하게 일치시킨 다음 PulseAudio가 장치를 무시하도록 환경 변수를 설정하십시오.

ATTRS{idVendor}=="1852", ATTRS{idProduct}=="5110", ENV{PULSE_IGNORE}="1"

[…]

시스템을 다시 시작하면 PulseAudio는 더 이상 USB 장치가 존재하는지 확인하지 않습니다.

… 또는재부팅하지 않고 udev 규칙을 다시 로드하는 방법은 무엇입니까? 물론 문제는 USB 장치에 대해 묻는 것이 아니라 아마도 HDMI일 것이라는 점입니다. 다음과 같은규칙작동할 수도 있지만 테스트할 HDMI 오디오 장치가 없습니다.

SUBSYSTEM=="drm", ACTION=="change", ENV{PULSE_IGNORE}="1"

이 제안에 따라 해당 커널 모듈을 블랙리스트에 올릴 수도 있습니다.. 기본적으로 Chrome OS에서는 이러한 변경을 수행할 수 없다고 생각합니다. 마운트 출력에서 ​​이러한 변경을 수행할 수 있는 상태 파티션이 없다는 것을 확인하므로 chroot에서 수행해야 합니다.

관련 정보