Archlinux에서 마이크가 작동하지 않습니다

Archlinux에서 마이크가 작동하지 않습니다

문맥

저는 archlinux수년 동안 노트북을 사용해 왔지만 마이크가 필요했던 적이 없습니다. 이제 필요하지만 올바르게 구성하는 방법을 찾을 수 없습니다.

나는 alsa및 를 사용합니다 pulseadio.

alsamixer사용자로 실행하면 두 개의 게이지가 있습니다.

  ||      ||
Master  Capture

모두 음소거를 해제하고 합리적인(~50%) 값으로 활성화했습니다.

루트로 실행하면 alsamixer여러 가지 도구가 있습니다.

  ||        ||        ||      ||      ||       ||
Master  Headphones  Speaker  PCM  Microphone MIC Boot 

 ||      ||       ||        ||       ||
Beep  Loopback Internal  Internal  Capture

Loopback루트를 활성화하면스피커를 통해 마이크 소리가 들립니다..

alsamixer사운드 카드를 사용자로 명시적으로 선택하면 루트로 실행한 것과 동일한 명령을 받게 됩니다( Loopback여기에서 활성화하면 스피커에서 마이크 소리도 들을 수 있습니다). 다음 메시지가 나타납니다.

여기에 이미지 설명을 입력하세요.

Internal( 오른쪽에 Loopback(활성화/비활성화) 및 변수 두 개의 게이지가 더 있습니다 Off-hook)

그러나 내가 무엇을 하고 어떻게 alsa 미터를 방해하더라도 마이크가 사용자 애플리케이션으로 전달되도록 할 수 없습니다. 기본적으로 arecord실행할 때마다 다음과 같은 출력이 표시됩니다.

$ arecord -vv -f dat /dev/null 
Recording WAVE '/dev/null' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
ALSA <-> PulseAudio PCM I/O Plugin
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 24000
  period_size  : 6000
  period_time  : 125000
  tstamp_mode  : NONE
  tstamp_type  : GETTIMEOFDAY
  period_step  : 1
  avail_min    : 6000
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 24000
  silence_threshold: 0
  silence_size : 0
  boundary     : 6755399441055744000
#+                                                 | 00%

aplay반면에 그것은 훌륭하게 작동합니다.


내 사운드 카드는 ( lspci)입니다.

# lspci| grep -i audio
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA)

나는 보았다아치스 위키다음을 설정하고 /etc/modprobe.d/modprobe.conf컴퓨터를 다시 시작해 보았습니다.

options snd-hda-intel model=dell-m6-dmic

(해당 구성이 있든 없든 마이크를 사용하여 사용자 애플리케이션에 데이터를 보낼 수 없습니다.)

내 현재 hda모듈은 다음과 같습니다

# lsmod |grep hda
snd_hda_codec_si3054    16384  1
snd_hda_codec_realtek    69632  1
snd_hda_codec_generic    69632  1 snd_hda_codec_realtek
snd_hda_intel          32768  5
snd_hda_codec         106496  4 snd_hda_codec_realtek,snd_hda_codec_si3054,snd_hda_codec_generic,snd_hda_intel
snd_hda_core           61440  5 snd_hda_codec_realtek,snd_hda_codec_si3054,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_hwdep              16384  1 snd_hda_codec
snd_pcm                86016  4 snd_hda_codec_si3054,snd_hda_codec,snd_hda_intel,snd_hda_core
snd                    65536  18 snd_hda_codec_realtek,snd_hda_codec_si3054,snd_hwdep,snd_timer,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel

완전성을 기하기 위해 내 구성은 다음과 같습니다 pulseaudio(저는 개입해 보지 않았습니다).

$ pulseaudio --dump-conf
### Read from configuration file: /etc/pulse/daemon.conf ###
daemonize = no
fail = yes
high-priority = yes
nice-level = -11
realtime-scheduling = yes
realtime-priority = 5
allow-module-loading = yes
allow-exit = yes
use-pid-file = yes
system-instance = no
local-server-type = user
cpu-limit = no
enable-shm = yes
flat-volumes = no
lock-memory = no
exit-idle-time = 20
scache-idle-time = 20
dl-search-path = /usr/lib/pulse-9.0/modules
default-script-file = /etc/pulse/default.pa
load-default-script-file = yes
log-target = 
log-level = notice
resample-method = auto
enable-remixing = yes
enable-lfe-remixing = no
lfe-crossover-freq = 0
default-sample-format = s16le
default-sample-rate = 44100
alternate-sample-rate = 48000
default-sample-channels = 2
default-channel-map = front-left,front-right
default-fragments = 4
default-fragment-size-msec = 25
enable-deferred-volume = yes
deferred-volume-safety-margin-usec = 8000
deferred-volume-extra-delay-usec = 0
shm-size-bytes = 0
log-meta = no
log-time = no
log-backtrace = 0
rlimit-fsize = -1
rlimit-data = -1
rlimit-stack = -1
rlimit-core = -1
rlimit-rss = -1
rlimit-as = -1
rlimit-nproc = -1
rlimit-nofile = 256
rlimit-memlock = -1
rlimit-locks = -1
rlimit-sigpending = -1
rlimit-msgqueue = -1
rlimit-nice = 31
rlimit-rtprio = 9
rlimit-rttime = 200000

Faheem Mitha의 의견에 따르면 pulseaudio tmpfs올바른 권한이 있다고 생각됩니다.

# ls -la /run/user/861213/pulse/
total 4
drwx------ 2 grochmal users  80 Jul  4 21:44 .
drwx------ 5 grochmal users 120 Jul  4 21:46 ..
srw-rw-rw- 1 grochmal users   0 Jul  4 21:44 native
-rw------- 1 grochmal users   4 Jul  4 21:44 pid

그리고 pavucontrol음소거되었습니다. pavucontrol이 문제의 원인이 무엇인지 모르겠습니다 .

여기에 이미지 설명을 입력하세요.


질문

아이디어가 부족해요. 나믿다오디오 Loopback인터페이스는커널 공간, 그래서 내 문제는 마이크 데이터를사용자 공간. 그러나 100% 확신할 수는 없습니다.

snd-hda-intel루프백 인터페이스에서 작동하지만 애플리케이션 계층으로 전파되지 않는 마이크와 관련될 수 있는 다른 옵션(또는 다른 모듈)에 제공할 수 있는 다른 옵션은 무엇입니까 ?

제가 뭔가 잘못하고 있는 걸까요 pulseaudio? 하지만 다시 말하지만, 항상 pulseaudio잘 작동했고 정기적으로 사용합니다.alsaaudacity

답변1

포스터와의 통신(댓글 참조)에 따르면 사운드 카드가 내부적으로 음소거되어 있는 것으로 나타났습니다 pavucontrol.

답변2

또한 Arch Linux에서 마이크가 작동하지 않는 문제도 있었습니다. 제 경우에는 "입력 장치" 아래에 장치가 표시되지 않았습니다 pavucontrol ("사용 가능한 입력 장치 없음"이라고 표시됨). Arch Wiki의 다음 조언에 따라 문제가 해결되었습니다.

  1. arecord -l예를 들어 출력이 다음과 같은 경우 기호 형식으로 마이크 ID를 찾으려면 실행하세요 .hw:CARD,DEVICE

    **** List of CAPTURE Hardware Devices ****
    card 0: PCH [HDA Intel PCH], device 0: ALC269VC Analog[ALC269VC Analog]
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    

    그럼 아이디는hw:0,0

  2. 행 추가

    load-module module-alsa-source device=hw:0,0
    

    (장치 ID 지정) /etc/pulse/default.pa이전 어딘가에

    .ifexists module-udev-detect.so
    

    철사.

  3. pulseaudio -k; pulseaudio -D PulseAudio를 다시 시작하고 변경 사항을 활성화하려면 실행하세요 .

~에서PulseAudio/문제 해결 – PulseAudio에서 마이크가 감지되지 않습니다. ArchWiki에서.

답변3

이 링크는 문제를 해결하는 데 도움이 되었습니다.PulseAudio에서 마이크가 감지되지 않았습니다.

마이크의 카드 번호와 장치 번호를 확인합니다.

$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC269VC Analog [ALC269VC Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
In hw:CARD,DEVICE notation, you would specify the above device as hw:0,0.

그런 다음 /etc/pulse/default.pa를 편집하고 다음과 같이 장치의 로드 모듈을 지정하는 줄을 삽입합니다.

load-module module-alsa-source device=hw:0,0
# the line above should be somewhere before the line below
.ifexists module-udev-detect.so

마지막으로 pulseaudio를 다시 시작하여 새 설정을 적용하십시오.

$ pulseaudio -k ; pulseaudio -D

모든 것이 잘 되었다면 이제 pavucontrol을 실행할 때 마이크가 나타나는 것을 볼 수 있습니다("입력 장치" 탭 아래).

답변4

비슷한 문제가 있었는데 내 USB 마이크가 pavucontrol의 "구성" 탭에만 표시되는 것을 발견했습니다. "입력 장치" 탭 아래에 표시되도록 하려면 구성을 "다중 채널 입력"으로 변경해야 했습니다.

이 시점에서 Kdenlive에서 녹음에 사용하려면 내장 마이크를 음소거로 변경하고(pavucontrol에서) USB 마이크에서 "Set as fallback" 버튼을 클릭해야 합니다.

참고로 이렇게 하면 Kdenlive가 기본( default:) 오디오 마이크를 사용할 수 있습니다.

관련 정보