Есть ли способ записать звук только из определенной программы, чтобы другие звуки (например, уведомления) не записывались?
Я использую Archlinux с pulseaudio.
Есть ли способ записать звук только из определенной программы, чтобы другие звуки (например, уведомления) не записывались?
Я использую Archlinux с pulseaudio.
Вы можете использовать pacat, который является частью pulseaudio.
Сначала откройте свое приложение. Затем запустите список pactl и найдите ваше устройство. в моем примере я буду использовать хром
snipet:
Client #229
Driver: protocol-native.c
Owner Module: 8
Properties:
application.name = "Chrome input"
native-protocol.peer = "UNIX socket client"
native-protocol.version = "28"
application.process.id = "16404"
application.process.user = "robert"
application.process.host = "HS"
application.process.binary = "chrome"
application.language = "en_US.UTF-8"
window.x11.display = ":0.0"
application.process.machine_id = "15d4d55cf80e320acb892977520d0894"
application.process.session_id = "c1"
Я возьму название приложения и запустите pacat.
pacat -r -n "Chrome input" | sox -t raw -r 44100 -s -L -b 16 -c 2 - "output.wav"
Вы также можете использовать pacat для захвата с устройства и т.д. Страница man pacat содержит дополнительную информацию