문맥
저는 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
잘 작동했고 정기적으로 사용합니다.alsa
audacity
답변1
포스터와의 통신(댓글 참조)에 따르면 사운드 카드가 내부적으로 음소거되어 있는 것으로 나타났습니다 pavucontrol
.
답변2
또한 Arch Linux에서 마이크가 작동하지 않는 문제도 있었습니다. 제 경우에는 "입력 장치" 아래에 장치가 표시되지 않았습니다 pavucontrol
("사용 가능한 입력 장치 없음"이라고 표시됨). Arch Wiki의 다음 조언에 따라 문제가 해결되었습니다.
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
행 추가
load-module module-alsa-source device=hw:0,0
(장치 ID 지정)
/etc/pulse/default.pa
이전 어딘가에.ifexists module-udev-detect.so
철사.
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:
) 오디오 마이크를 사용할 수 있습니다.