나는 개념을 알고 있습니다: PulseAudio의 싱크와 소스, 클라이언트는 오디오를 "싱크"로 보내고 "소스"로부터 오디오를 수신할 수 있으므로 싱크는 출력(오디오는 거기로 이동)이고 소스는 입력( 오디오는 거기에서 나옵니다) 그렇다면 모니터는 무엇입니까?
다음 텍스트는 다음에서 가져온 것입니다.pactl list
Sink #11
State: SUSPENDED
Name: alsa_output.pci-0000_09_00.6.analog-stereo
Description: Family 17h (Models 10h-1fh) HD Audio Controller Analog Stereo
Driver: module-alsa-card.c
Sample Specification: s16le 2ch 48000Hz
Channel Map: front-left,front-right
Owner Module: 7
Mute: no
Volume: front-left: 50463 / 77% / -6.81 dB, front-right: 50463 / 77% / -6.81 dB
balance 0.00
Base Volume: 65536 / 100% / 0.00 dB
Monitor Source: alsa_output.pci-0000_09_00.6.analog-stereo.monitor
Latency: 0 usec, configured 0 usec
Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY
Properties:
alsa.resolution_bits = "16"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = "ALC662 rev3 Analog"
alsa.id = "ALC662 rev3 Analog"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "0"
alsa.card = "1"
alsa.card_name = "HD-Audio Generic"
alsa.long_card_name = "HD-Audio Generic at 0xfccc0000 irq 60"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:09:00.6"
sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:09:00.6/sound/card1"
device.bus = "pci"
device.vendor.id = "1022"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
device.product.id = "15e3"
device.product.name = "Family 17h (Models 10h-1fh) HD Audio Controller"
device.string = "front:1"
device.buffering.buffer_size = "352768"
device.buffering.fragment_size = "176384"
device.access_mode = "mmap+timer"
device.profile.name = "analog-stereo"
device.profile.description = "Analog Stereo"
device.description = "Family 17h (Models 10h-1fh) HD Audio Controller Analog Stereo"
alsa.mixer_name = "Realtek ALC662 rev3"
alsa.components = "HDA:10ec0662,10ec0000,00100300"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Ports:
analog-output-lineout: Line Out (priority: 9000, available)
analog-output-headphones: Headphones (priority: 9900, not available)
Active Port: analog-output-lineout
Formats:
pcm
Source #15
State: SUSPENDED
Name: alsa_output.pci-0000_09_00.6.analog-stereo.monitor
Description: Monitor of Family 17h (Models 10h-1fh) HD Audio Controller Analog Stereo
Driver: module-alsa-card.c
Sample Specification: s16le 2ch 48000Hz
Channel Map: front-left,front-right
Owner Module: 7
Mute: no
Volume: front-left: 27537 / 42% / -22.59 dB, front-right: 27537 / 42% / -22.59 dB
balance 0.00
Base Volume: 65536 / 100% / 0.00 dB
Monitor of Sink: alsa_output.pci-0000_09_00.6.analog-stereo
Latency: 0 usec, configured 0 usec
Flags: DECIBEL_VOLUME LATENCY
Properties:
device.description = "Monitor of Family 17h (Models 10h-1fh) HD Audio Controller Analog Stereo"
device.class = "monitor"
alsa.card = "1"
alsa.card_name = "HD-Audio Generic"
alsa.long_card_name = "HD-Audio Generic at 0xfccc0000 irq 60"
alsa.driver_name = "snd_hda_intel"
device.bus_path = "pci-0000:09:00.6"
sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:09:00.6/sound/card1"
device.bus = "pci"
device.vendor.id = "1022"
device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
device.product.id = "15e3"
device.product.name = "Family 17h (Models 10h-1fh) HD Audio Controller"
device.string = "1"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
Formats:
pcm
Monitor Source: alsa_output.pci-0000_09_00.6.analog-stereo.monitor
Flume 11에서 획득했습니다. 소스 #15에서 가져왔습니다
.Monitor of Sink: alsa_output.pci-0000_09_00.6.analog-stereo
1. 왜 싱크 Monitor of Sink
가 아닌 소스인가 ? 2. as라고 쓸 수 있고 , 그 반대로 도 쓸 수 있나요 ?Monitor Source
Monitor Source
Monitor of Source
Monitor of Sink
Monitor Sink
답변1
모니터는 각각 특정 "상위" 수신기/소스와 연결된 "하위" 소스/수신기입니다.
ㅏ모니터링 소스상위 신호의 복사본을 기록하는 데 사용할 수 있습니다.싱크대출력 중.
ㅏ모니터링 수신기상위 항목에 의해 기록되는 신호의 복사본을 출력하는 데 사용할 수 있습니다.원천.
귀하의 싱크 번호 11은 입니다 alsa_output.pci-0000_09_00.6.analog-stereo
. 설명에는 다음 줄이 있습니다.
Monitor Source: alsa_output.pci-0000_09_00.6.analog-stereo.monitor
실제로는 "이 싱크에는 이름과 연결된 모니터 소스가 있습니다."라고 표시됩니다.
그러면 모니터 소스는 alsa_output.pci-0000_09_00.6.analog-stereo.monitor
소스 #15로서 자체 정보 블록을 갖게 됩니다. 이 정보 블록에는 해당 라인이 있습니다.
Monitor of Sink: alsa_output.pci-0000_09_00.6.analog-stereo
이는 "상위" 수신 장치를 가리킵니다. 소스 장치가 오디오 싱크임을 나타냅니다.감시 장치.
답변2
요컨대감시 장치수신기의 출력을 다른 장치로 보내는 데 사용할 수 있는 소스입니다.
Audacious에서 ABBA를 플레이하고 있다고 가정해 보겠습니다. Audacious는 아날로그 스테레오 출력 수신기에서 읽는 샘플을 생성합니다. (출처는 그렇지 않습니다.보내다샘플을 생성하고 수신기 입력에서 수신기를 읽는 데이터 자체입니다. )
수신기가 샘플을 읽을 때마다 해당 샘플을감시 장치.
이제 Audacity를 실행하면 모니터 미터(마이크 옆 미터)를 클릭하세요. 그럼 열어 pavucontrol
봐다음에서 캡처됨당신은 선택할 수 있습니다XXX 모니터.
완료되면 Audacity의 오디오 측정기가 활동을 표시하기 시작하는 것을 볼 수 있습니다.
그러므로 그것은샘플 읽기~에서감시 장치. 이러한 샘플은 수신기 입력에서 읽은 데이터를 통해 수신기에 의해 기록되며 헤드폰의 출력에도 기록됩니다.
IN
>----------------------------------------->
,-- [source output]
[source] --|
| '-- [source output]
| |
| |
sample sample
producer recorder
(mic, ...) (audacity, ...)
>------------------------------------------>
OUT
>------------------------------------------>
[sink input A] -.
+--> [sink] --> output + monitor
[sink input B] -' | |
| | the output device (speaker, ...)
| |
produces samples consumes and mixes samples
(mpv, ...) (clocking, latency)
>------------------------------------------>
각 싱크는 "<sink_name>.monitor"라는 싱크 모니터를 자동으로 가져옵니다. 수신기가 수신기 입력에서 블록을 읽을 때마다 해당 블록을 수신기 모니터에도 씁니다.
따라서 pulseaudio가 수신기 입력에서 읽을 때마다;
alsa_output.pci-0000_09_00.6.analog-stereo
또한 해당 데이터를 모니터 수신기에 기록합니다.
alsa_output.pci-0000_09_00.6.analog-stereo.monitor