Bur*_*Ali 15
以下命令之一可能会为您提供所需的内容:
burhan@Ganymede:~$ lsof /dev/snd/*
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
pulseaudi 1142 burhan mem CHR 116,3 7885 /dev/snd/pcmC0D0p
pulseaudi 1142 burhan 21u CHR 116,5 0t0 7887 /dev/snd/controlC0
pulseaudi 1142 burhan 28u CHR 116,5 0t0 7887 /dev/snd/controlC0
pulseaudi 1142 burhan 36r CHR 116,33 0t0 6351 /dev/snd/timer
pulseaudi 1142 burhan 37u CHR 116,3 0t0 7885 /dev/snd/pcmC0D0p
burhan@Ganymede:~$ fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: burhan 1142 F.... pulseaudio
/dev/snd/pcmC0D0p: burhan 1142 F...m pulseaudio
/dev/snd/timer: burhan 1142 f.... pulseaudio
Run Code Online (Sandbox Code Playgroud)
在这个系统上,pulseaudio 是唯一使用声音设备的东西,但这是一个全新的 Ubuntu 11.04 VM。您可能还列出了其他内容。
小智 6
我不确定/proc 中的声音接口,但如果您正在运行PulseAudio,您可以从基于 GTK 的工具PulseAudio Volume Control获取此信息。在 Ubuntu 上,它是从pavucontrol包安装的。
它让您可以查看使用声音流的所有应用程序,并让您单独控制每个流的音量级别(除了通道本身的音量)。
小智 6
如果您的 Linux 安装使用 PulseAudio,那么可以
列出连接到您的脉冲音频的所有进程
运行这个命令pactl list clients
但是,如果您确实想要的话,它将为您提供可能的发声过程:
捕获发出声音的进程,然后运行以下命令:
watch -n0.5 'pacmd list-sink-inputs | tee -a sound-inputs.log'
一段时间后,您将看到哪些进程正在发出声音,它们可能会很快消失,这就是tee -a sound-inputs.log
命令存储/记录sound-inputs.log
所有信息的原因,并且您可以查看现在到底是哪个进程正在发出噪音。
您可以通过命令查看它less sound-inputs
,示例输出如下:
0 sink input(s) available.
0 sink input(s) available.
0 sink input(s) available.
1 sink input(s) available.
index: 277
driver: <protocol-native.c>
flags: START_CORKED
state: RUNNING
sink: 0 <alsa_output.pci-0000_00_1b.0.analog-stereo>
volume: front-left: 55420 / 85% / -4.37 dB, front-right: 55420 / 85% / -4.37 dB
balance 0.00
muted: no
current latency: 35.85 ms
requested latency: 7.52 ms
sample spec: float32le 2ch 44100Hz
channel map: front-left,front-right
Stereo
resample method: copy
module: 10
client: 1884 <Chromium>
properties:
application.icon_name = "chromium-browser"
media.name = "Playback"
application.name = "Chromium"
native-protocol.peer = "UNIX socket client"
native-protocol.version = "33"
application.process.id = "2993986"
application.process.user = "aneutrino"
application.process.host = "xiexie"
application.process.binary = "Discord"
application.language = "en_US.UTF-8"
window.x11.display = ":0"
application.process.machine_id = "13335995d81e4f4faf75ac28835b4f8c"
module-stream-restore.id = "sink-input-by-application-name:Chromium"
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,它是使用发出声音的Discord
聊天应用程序,我已输入设置并禁用其中的声音,但我也可以简单地杀死它chrome-browser
PID 2993986
kill 2993986