Audio

pactl list 中的 monitor 這個詞讓我很困惑

  • June 29, 2021

我知道這些概念: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從水槽 #11獲取。從源 #15

獲取。Monitor of Sink: alsa_output.pci-0000_09_00.6.analog-stereo

1.為什麼Monitor of Sink是一種源,而不是Monitor Source一種匯?

2.我可以寫成Monitor SourceMonitor of Source副詩,我可以寫成Monitor of SinkMonitor Sink

監視器是分別與特定“父”接收器/源相關聯的“子”源/接收器。

監視器源可用於記錄其父接收正在輸出的信號的副本。

監視器接收器可用於輸出由父記錄的信號的副本。

你的 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具有自己的資訊塊作為您的 Source #15。然後該資訊塊具有相應的行:

Monitor of Sink: alsa_output.pci-0000_09_00.6.analog-stereo

這指向“父”接收設備。它指示此源設備是其監視器的音頻接收器。

引用自:https://unix.stackexchange.com/questions/656145