Reg*_*ter 5 sound command-line pulseaudio hdmi
我已通过 HDMI 端口将电视连接至电脑。每次打开电脑时,我都需要将 pavucontrol(在配置选项卡中)从 (HDMI) 更改为 (HDMI 3)。\n我希望制作一个可以为我更改它的 bash 脚本。
\n\n这是它在 pavucontrol 中的样子:
\n\n
pavucontrol 更改前后的命令pacmd list_sinks
输出:
pacmd list_sinks
更改前:
3 sink(s) available.\n index: 0\n name: <alsa_output.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.analog-stereo>\n driver: <module-alsa-card.c>\n flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY\n state: IDLE\n suspend cause: \n priority: 9049\n volume: front-left: 65886 / 101% / 0,14 dB, front-right: 65886 / 101% / 0,14 dB\n balance 0,00\n base volume: 65536 / 100% / 0,00 dB\n volume steps: 65537\n muted: no\n current latency: 45,38 ms\n max request: 6 KiB\n max rewind: 344 KiB\n monitor source: 0\n sample spec: s16le 2 k 44100 Hz\n channel map: front-left,front-right\n Stereo\n used by: 0\n linked by: 1\n configured latency: 40,00 ms; range is 0,50 .. 2000,00 ms\n card: 0 <alsa_card.usb-C-Media_Electronics_Inc._USB_Audio_Device-00>\n module: 6\n properties:\n alsa.resolution_bits = "16"\n device.api = "alsa"\n device.class = "sound"\n alsa.class = "generic"\n alsa.subclass = "generic-mix"\n alsa.name = "USB Audio"\n alsa.id = "USB Audio"\n alsa.subdevice = "0"\n alsa.subdevice_name = "subdevice #0"\n alsa.device = "0"\n alsa.card = "2"\n alsa.card_name = "USB Audio Device"\n alsa.long_card_name = "C-Media Electronics Inc. USB Audio Device at usb-0000:01:00.0-10, full speed"\n alsa.driver_name = "snd_usb_audio"\n device.bus_path = "pci-0000:01:00.0-usb-0:10:1.0"\n sysfs.path = "/devices/pci0000:00/0000:00:01.3/0000:01:00.0/usb1/1-10/1-10:1.0/sound/card2"\n udev.id = "usb-C-Media_Electronics_Inc._USB_Audio_Device-00"\n device.bus = "usb"\n device.vendor.id = "0d8c"\n device.vendor.name = "C-Media Electronics, Inc."\n device.product.id = "0012"\n device.product.name = "USB Audio Device"\n device.serial = "C-Media_Electronics_Inc._USB_Audio_Device"\n device.string = "front:2"\n device.buffering.buffer_size = "352800"\n device.buffering.fragment_size = "176400"\n device.access_mode = "mmap+timer"\n device.profile.name = "analog-stereo"\n device.profile.description = "Analogowe stereo"\n device.description = "USB Audio Device Analogowe stereo"\n alsa.mixer_name = "USB Mixer"\n alsa.components = "USB0d8c:0012"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-usb"\n ports:\n analog-output-speaker: G\xc5\x82o\xc5\x9bniki (priority 10000, latency offset 0 usec, available: unknown)\n properties:\n device.icon_name = "audio-speakers"\n active port: <analog-output-speaker>\n * index: 2\n name: <alsa_output.pci-0000_0a_00.3.analog-stereo>\n driver: <module-alsa-card.c>\n flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY\n state: IDLE\n suspend cause: \n priority: 9059\n volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB\n balance 0,00\n base volume: 65536 / 100% / 0,00 dB\n volume steps: 65537\n muted: no\n current latency: 31,46 ms\n max request: 6 KiB\n max rewind: 64 KiB\n monitor source: 3\n sample spec: s16le 2 k 44100 Hz\n channel map: front-left,front-right\n Stereo\n used by: 0\n linked by: 1\n configured latency: 40,00 ms; range is 0,50 .. 371,52 ms\n card: 2 <alsa_card.pci-0000_0a_00.3>\n module: 8\n properties:\n alsa.resolution_bits = "16"\n device.api = "alsa"\n device.class = "sound"\n alsa.class = "generic"\n alsa.subclass = "generic-mix"\n alsa.name = "ALC887-VD Analog"\n alsa.id = "ALC887-VD Analog"\n alsa.subdevice = "0"\n alsa.subdevice_name = "subdevice #0"\n alsa.device = "0"\n alsa.card = "1"\n alsa.card_name = "HD-Audio Generic"\n alsa.long_card_name = "HD-Audio Generic at 0xfd700000 irq 58"\n alsa.driver_name = "snd_hda_intel"\n device.bus_path = "pci-0000:0a:00.3"\n sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:0a:00.3/sound/card1"\n device.bus = "pci"\n device.vendor.id = "1022"\n device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"\n device.product.id = "1457"\n device.string = "front:1"\n device.buffering.buffer_size = "65536"\n device.buffering.fragment_size = "32768"\n device.access_mode = "mmap+timer"\n device.profile.name = "analog-stereo"\n device.profile.description = "Analogowe stereo"\n device.description = "HD-Audio Generic Analogowe stereo"\n alsa.mixer_name = "Realtek ALC887-VD"\n alsa.components = "HDA:10ec0887,1458a182,00100302"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-pci"\n ports:\n analog-output-lineout: Wyj\xc5\x9bcie liniowe (priority 9900, latency offset 0 usec, available: yes)\n properties:\n\n analog-output-headphones: S\xc5\x82uchawki (priority 9000, latency offset 0 usec, available: no)\n properties:\n device.icon_name = "audio-headphones"\n active port: <analog-output-lineout>\n index: 7\n name: <alsa_output.pci-0000_08_00.1.hdmi-stereo>\n driver: <module-alsa-card.c>\n flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY\n state: IDLE\n suspend cause: \n priority: 9050\n volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB\n balance 0,00\n base volume: 65536 / 100% / 0,00 dB\n volume steps: 65537\n muted: no\n current latency: 39,91 ms\n max request: 6 KiB\n max rewind: 64 KiB\n monitor source: 8\n sample spec: s16le 2 k 44100 Hz\n channel map: front-left,front-right\n Stereo\n used by: 0\n linked by: 1\n configured latency: 40,00 ms; range is 0,50 .. 371,52 ms\n card: 1 <alsa_card.pci-0000_08_00.1>\n module: 7\n properties:\n alsa.resolution_bits = "16"\n device.api = "alsa"\n device.class = "sound"\n alsa.class = "generic"\n alsa.subclass = "generic-mix"\n alsa.name = "HDMI 0"\n alsa.id = "HDMI 0"\n alsa.subdevice = "0"\n alsa.subdevice_name = "subdevice #0"\n alsa.device = "3"\n alsa.card = "0"\n alsa.card_name = "HDA NVidia"\n alsa.long_card_name = "HDA NVidia at 0xfd080000 irq 56"\n alsa.driver_name = "snd_hda_intel"\n device.bus_path = "pci-0000:08:00.1"\n sysfs.path = "/devices/pci0000:00/0000:00:03.1/0000:08:00.1/sound/card0"\n device.bus = "pci"\n device.vendor.id = "10de"\n device.vendor.name = "NVIDIA Corporation"\n device.product.id = "0fb9"\n device.string = "hdmi:0"\n device.buffering.buffer_size = "65536"\n device.buffering.fragment_size = "32768"\n device.access_mode = "mmap+timer"\n device.profile.name = "hdmi-stereo"\n device.profile.description = "Digital Stereo (HDMI)"\n device.description = "HDA NVidia Digital Stereo (HDMI)"\n alsa.mixer_name = "Nvidia GPU 80 HDMI/DP"\n alsa.components = "HDA:10de0080,104385c7,00100100"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-pci"\n ports:\n hdmi-output-0: HDMI / DisplayPort (priority 5900, latency offset 0 usec, available: yes)\n properties:\n device.icon_name = "video-display"\n device.product.name = "E2240\n "\n active port: <hdmi-output-0>\n
Run Code Online (Sandbox Code Playgroud)\n\npacmd list_sinks
更改后:
3 sink(s) available.\n index: 0\n name: <alsa_output.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.analog-stereo>\n driver: <module-alsa-card.c>\n flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY\n state: IDLE\n suspend cause: \n priority: 9049\n volume: front-left: 65886 / 101% / 0,14 dB, front-right: 65886 / 101% / 0,14 dB\n balance 0,00\n base volume: 65536 / 100% / 0,00 dB\n volume steps: 65537\n muted: no\n current latency: 45,35 ms\n max request: 6 KiB\n max rewind: 344 KiB\n monitor source: 0\n sample spec: s16le 2 k 44100 Hz\n channel map: front-left,front-right\n Stereo\n used by: 0\n linked by: 1\n configured latency: 40,00 ms; range is 0,50 .. 2000,00 ms\n card: 0 <alsa_card.usb-C-Media_Electronics_Inc._USB_Audio_Device-00>\n module: 6\n properties:\n alsa.resolution_bits = "16"\n device.api = "alsa"\n device.class = "sound"\n alsa.class = "generic"\n alsa.subclass = "generic-mix"\n alsa.name = "USB Audio"\n alsa.id = "USB Audio"\n alsa.subdevice = "0"\n alsa.subdevice_name = "subdevice #0"\n alsa.device = "0"\n alsa.card = "2"\n alsa.card_name = "USB Audio Device"\n alsa.long_card_name = "C-Media Electronics Inc. USB Audio Device at usb-0000:01:00.0-10, full speed"\n alsa.driver_name = "snd_usb_audio"\n device.bus_path = "pci-0000:01:00.0-usb-0:10:1.0"\n sysfs.path = "/devices/pci0000:00/0000:00:01.3/0000:01:00.0/usb1/1-10/1-10:1.0/sound/card2"\n udev.id = "usb-C-Media_Electronics_Inc._USB_Audio_Device-00"\n device.bus = "usb"\n device.vendor.id = "0d8c"\n device.vendor.name = "C-Media Electronics, Inc."\n device.product.id = "0012"\n device.product.name = "USB Audio Device"\n device.serial = "C-Media_Electronics_Inc._USB_Audio_Device"\n device.string = "front:2"\n device.buffering.buffer_size = "352800"\n device.buffering.fragment_size = "176400"\n device.access_mode = "mmap+timer"\n device.profile.name = "analog-stereo"\n device.profile.description = "Analogowe stereo"\n device.description = "USB Audio Device Analogowe stereo"\n alsa.mixer_name = "USB Mixer"\n alsa.components = "USB0d8c:0012"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-usb"\n ports:\n analog-output-speaker: G\xc5\x82o\xc5\x9bniki (priority 10000, latency offset 0 usec, available: unknown)\n properties:\n device.icon_name = "audio-speakers"\n active port: <analog-output-speaker>\n * index: 2\n name: <alsa_output.pci-0000_0a_00.3.analog-stereo>\n driver: <module-alsa-card.c>\n flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY\n state: IDLE\n suspend cause: \n priority: 9059\n volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB\n balance 0,00\n base volume: 65536 / 100% / 0,00 dB\n volume steps: 65537\n muted: no\n current latency: 38,88 ms\n max request: 6 KiB\n max rewind: 64 KiB\n monitor source: 3\n sample spec: s16le 2 k 44100 Hz\n channel map: front-left,front-right\n Stereo\n used by: 0\n linked by: 1\n configured latency: 40,00 ms; range is 0,50 .. 371,52 ms\n card: 2 <alsa_card.pci-0000_0a_00.3>\n module: 8\n properties:\n alsa.resolution_bits = "16"\n device.api = "alsa"\n device.class = "sound"\n alsa.class = "generic"\n alsa.subclass = "generic-mix"\n alsa.name = "ALC887-VD Analog"\n alsa.id = "ALC887-VD Analog"\n alsa.subdevice = "0"\n alsa.subdevice_name = "subdevice #0"\n alsa.device = "0"\n alsa.card = "1"\n alsa.card_name = "HD-Audio Generic"\n alsa.long_card_name = "HD-Audio Generic at 0xfd700000 irq 58"\n alsa.driver_name = "snd_hda_intel"\n device.bus_path = "pci-0000:0a:00.3"\n sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:0a:00.3/sound/card1"\n device.bus = "pci"\n device.vendor.id = "1022"\n device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"\n device.product.id = "1457"\n device.string = "front:1"\n device.buffering.buffer_size = "65536"\n device.buffering.fragment_size = "32768"\n device.access_mode = "mmap+timer"\n device.profile.name = "analog-stereo"\n device.profile.description = "Analogowe stereo"\n device.description = "HD-Audio Generic Analogowe stereo"\n alsa.mixer_name = "Realtek ALC887-VD"\n alsa.components = "HDA:10ec0887,1458a182,00100302"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-pci"\n ports:\n analog-output-lineout: Wyj\xc5\x9bcie liniowe (priority 9900, latency offset 0 usec, available: yes)\n properties:\n\n analog-output-headphones: S\xc5\x82uchawki (priority 9000, latency offset 0 usec, available: no)\n properties:\n device.icon_name = "audio-headphones"\n active port: <analog-output-lineout>\n index: 6\n name: <alsa_output.pci-0000_08_00.1.hdmi-stereo-extra2>\n driver: <module-alsa-card.c>\n flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY\n state: IDLE\n suspend cause: \n priority: 9050\n volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB\n balance 0,00\n base volume: 65536 / 100% / 0,00 dB\n volume steps: 65537\n muted: no\n current latency: 30,36 ms\n max request: 6 KiB\n max rewind: 64 KiB\n monitor source: 7\n sample spec: s16le 2 k 44100 Hz\n channel map: front-left,front-right\n Stereo\n used by: 0\n linked by: 1\n configured latency: 40,00 ms; range is 0,50 .. 371,52 ms\n card: 1 <alsa_card.pci-0000_08_00.1>\n module: 7\n properties:\n alsa.resolution_bits = "16"\n device.api = "alsa"\n device.class = "sound"\n alsa.class = "generic"\n alsa.subclass = "generic-mix"\n alsa.name = "HDMI 2"\n alsa.id = "HDMI 2"\n alsa.subdevice = "0"\n alsa.subdevice_name = "subdevice #0"\n alsa.device = "8"\n alsa.card = "0"\n alsa.card_name = "HDA NVidia"\n alsa.long_card_name = "HDA NVidia at 0xfd080000 irq 56"\n alsa.driver_name = "snd_hda_intel"\n device.bus_path = "pci-0000:08:00.1"\n sysfs.path = "/devices/pci0000:00/0000:00:03.1/0000:08:00.1/sound/card0"\n device.bus = "pci"\n device.vendor.id = "10de"\n device.vendor.name = "NVIDIA Corporation"\n device.product.id = "0fb9"\n device.string = "hdmi:0,2"\n device.buffering.buffer_size = "65536"\n device.buffering.fragment_size = "32768"\n device.access_mode = "mmap+timer"\n device.profile.name = "hdmi-stereo-extra2"\n device.profile.description = "Digital Stereo (HDMI 3)"\n device.description = "HDA NVidia Digital Stereo (HDMI 3)"\n alsa.mixer_name = "Nvidia GPU 80 HDMI/DP"\n alsa.components = "HDA:10de0080,104385c7,00100100"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-pci"\n ports:\n hdmi-output-2: HDMI / DisplayPort 3 (priority 5700, latency offset 0 usec, available: yes)\n properties:\n device.icon_name = "video-display"\n device.product.name = "LG TV\n "\n active port: <hdmi-output-2>\n
Run Code Online (Sandbox Code Playgroud)\n\npactl list cards
输出:
\n0. karta\n Nazwa: alsa_card.usb-C-Media_Electronics_Inc._USB_Audio_Device-00\n Sterownik: module-alsa-card.c\n W\xc5\x82a\xc5\x9bciciel modu\xc5\x82u: 6\n W\xc5\x82a\xc5\x9bciwo\xc5\x9bci:\n alsa.card = "2"\n alsa.card_name = "USB Audio Device"\n alsa.long_card_name = "C-Media Electronics Inc. USB Audio Device at usb-0000:01:00.0-10, full speed"\n alsa.driver_name = "snd_usb_audio"\n device.bus_path = "pci-0000:01:00.0-usb-0:10:1.0"\n sysfs.path = "/devices/pci0000:00/0000:00:01.3/0000:01:00.0/usb1/1-10/1-10:1.0/sound/card2"\n udev.id = "usb-C-Media_Electronics_Inc._USB_Audio_Device-00"\n device.bus = "usb"\n device.vendor.id = "0d8c"\n device.vendor.name = "C-Media Electronics, Inc."\n device.product.id = "0012"\n device.product.name = "USB Audio Device"\n device.serial = "C-Media_Electronics_Inc._USB_Audio_Device"\n device.string = "2"\n device.description = "USB Audio Device"\n module-udev-detect.discovered = "1"\n device.icon_name = "audio-card-usb"\n Profile:\n input:analog-mono: Wej\xc5\x9bcie Analogowe mono (odp\xc5\x82ywy: 0, \xc5\xbar\xc3\xb3d\xc5\x82a: 1, priorytet: 2, dost\xc4\x99pne: tak)\n output:analog-stereo: Wyj\xc5\x9bcie Analogowe stereo (odp\xc5\x82ywy: 1, \xc5\xbar\xc3\xb3d\xc5\x82a: 0, priorytet: 6000, dost\xc4\x99pne: tak)\n output:analog-stereo+input:analog-mono: Wyj\xc5\x9bcie Analogowe stereo + Wej\xc5\x9bcie Analogowe mono (odp\xc5\x82ywy: 1, \xc5\xbar\xc3\xb3d\xc5\x82a: 1, priorytet: 6002, dost\xc4\x99pne: tak)\n output:iec958-stereo: Wyj\xc5\x9bcie Cyfrowe stereo (IEC958) (odp\xc5\x82ywy: 1, \xc5\xbar\xc3\xb3d\xc5\x82a: 0, priorytet: 5500, dost\xc4\x99pne: tak)\n output:iec958-stereo+input:analog-mono: Wyj\xc5\x9bcie Cyfrowe stereo (IEC958) + Wej\xc5\x9bcie Analogowe mono (odp\xc5\x82ywy: 1, \xc5\xbar\xc3\xb3d\xc5\x82a: 1, priorytet: 5502, dost\xc4\x99pne: tak)\n off: Wy\xc5\x82\xc4\x85czone (odp\xc5\x82ywy: 0, \xc5\xbar\xc3\xb3d\xc5\x82a: 0, priorytet: 0, dost\xc4\x99pne: tak)\n Aktywny profil: output:analog-stereo+input:analog-mono\n Porty:\n analog-input-mic: Mikrofon (priority: 8700, latency offset: 0 usec)\n W\xc5\x82a\xc5\x9bciwo\xc5\x9bci:\n device.icon_name = "audio-input-microphone"\n Cz\xc4\x99\xc5\x9b\xc4\x87 profilu: input:analog-mono, output:analog-stereo+input:analog-mono, output:iec958-stereo+input:analog-mono\n analog-output-speaker: G\xc5\x82o\xc5\x9bniki (priority: 10000, latency offset: 0 usec)\n W\xc5\x82a\xc5\x9bciwo\xc5\x9bci:\n device.icon_name = "audio-speakers"\n Cz\xc4\x99\xc5\x9b\xc4\x87 profilu: output:analog-stereo, output:analog-stereo+input:analog-mono\n iec958-stereo-output: Wyj\xc5\x9bcie cyfrowe (S/PDIF) (priority: 0, latency offset: 0 usec)\n Cz\xc4\x99\xc5\x9b\xc4\x87 profilu: output:iec958-stereo, output:iec958-stereo+input:analog-mono\n\n1. karta\n Nazwa: alsa_card.pci-0000_08_00.1\n Sterownik: module-alsa-card.c\n W\xc5\x82a\xc5\x9bciciel modu\xc5\x82u: 7\n W\xc5\x82a\xc5\x9bciwo\xc5\x9bci:\n alsa.card = "0"\n alsa.card_name = "HDA NVidia"\n alsa.long_card_name = "HDA NVidia at 0xfd080000 irq 56"\n alsa.driver_name = "snd_hda_intel"\n device.bus_path = "pci-0000:08:00.1"\n sysfs.path = "/devices/pci0000:00/0000:00:03.1/0000:08:00.1/sound/card0"\n device.bus = "pci"\n device.vendor.id = "10de"\n device.vendor.name = "NVIDIA Corporation"\n device.product.id = "0fb9"\n device.str
每次重新启动 Pulse Audio 时,声音设备都会重置为HDMI
. 为了让它保持设置,HDMI3
您需要告诉它停止自动切换。
当睡眠或关机期间信号丢失时,脉冲音频会自动配置为激活默认源(您的 HDMI)。恢复或重新启动后,声音设备仍位于 HDMI 上。要覆盖此设置,请告诉 Pulse Audio 不要自动切换声音设备:
/etc/pulse/default.pa
load-module module-switch-on-port-available
#
在行首插入 a以禁用自动端口切换您可以使用重新加载pulseaudio -k
配置更改来代替重新启动。