...now that YaST2 sound is dead?
Both DisplayPort display and HDMI-1 display have speakers. I want audio on the DisplayPort, but it's on HDMI-1. # pinxi -GSAaz --vs --zl --hostname pinxi 3.3.25-01 (2023-02-07) System: Host: ab560 Kernel: 6.2.1-1-default arch: x86_64 bits: 64 compiler: gcc v: 12.2.1 parameters: BOOT_IMAGE=/boot/vmlinuz root=LABEL=<filter> noresume ipv6.disable=1 net.ifnames=0 drm.debug=0x1e log_buf_len=1M 5 Desktop: Trinity v: R14.0.13 tk: Qt v: 3.5.0 info: kicker wm: Twin v: 3.0 vt: 7 dm: 1: TDM 2: XDM Distro: openSUSE Tumbleweed 20230306 Graphics: Device-1: Intel RocketLake-S GT1 [UHD Graphics 730] vendor: ASUSTeK driver: i915 v: kernel arch: Gen-12.1 process: Intel 10nm built: 2020-21 ports: active: DP-1,HDMI-A-1,HDMI-A-2 empty: HDMI-A-3 bus-ID: 00:02.0 chip-ID: 8086:4c8b class-ID: 0300 Display: x11 server: X.Org v: 21.1.7 driver: X: loaded: modesetting unloaded: fbdev,vesa alternate: intel dri: iris gpu: i915 display-ID: :0 screens: 1 Screen-1: 0 s-res: 3600x2640 s-dpi: 120 s-size: 762x558mm (30.00x21.97") s-diag: 944mm (37.18") Monitor-1: DP-1 pos: primary,bottom-l model: Acer K272HUL serial: <filter> built: 2018 res: 2560x1440 hz: 60 dpi: 109 gamma: 1.2 size: 598x336mm (23.54x13.23") diag: 686mm (27") ratio: 16:9 modes: max: 2560x1440 min: 720x400 Monitor-2: HDMI-A-1 mapped: HDMI-1 pos: top-left model: NEC EA243WM serial: <filter> built: 2011 res: 1920x1200 hz: 60 dpi: 94 gamma: 1.2 size: 519x324mm (20.43x12.76") diag: 612mm (24.1") ratio: 16:10 modes: max: 1920x1200 min: 640x480 Monitor-3: HDMI-A-2 mapped: HDMI-2 pos: top-right model: Dell P2213 serial: <filter> built: 2012 res: 1680x1050 hz: 60 dpi: 90 gamma: 1.2 size: 473x296mm (18.62x11.65") diag: 558mm (22") ratio: 16:10 modes: max: 1680x1050 min: 720x400 API: OpenGL v: 4.6 Mesa 23.0.0 renderer: Mesa Intel Graphics (RKL GT1) direct-render: Yes Audio: Device-1: Intel Tiger Lake-H HD Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel alternate: snd_sof_pci_intel_tgl bus-ID: 00:1f.3 chip-ID: 8086:43c8 class-ID: 0403 Sound API: ALSA v: k6.2.1-1-default running: yes Sound Server-1: PipeWire v: 0.3.65 running: no # zypsei wire puls alsa jack pauv i | alsa | package | 1.2.8-1.1 | x86_64 | OSS i | alsa-ucm-conf | package | 1.2.8-1.1 | noarch | OSS i | alsa-utils | package | 1.2.8-1.1 | x86_64 | OSS i | libjack0 | package | 1.9.21-1.4 | x86_64 | OSS i | libpipewire-0_3-0 | package | 0.3.65-1.3 | x86_64 | OSS i | libpulse0 | package | 16.1-2.1 | x86_64 | OSS i | libwireplumber-0_4-0 | package | 0.4.13-2.1 | x86_64 | OSS i | pipewire-modules-0_3 | package | 0.3.65-1.3 | x86_64 | OSS i | pipewire-spa-plugins-0_2 | package | 0.3.65-1.3 | x86_64 | OSS i | pipewire-spa-tools | package | 0.3.65-1.3 | x86_64 | OSS i | pipewire-tools | package | 0.3.65-1.3 | x86_64 | OSS i+ | pipewire | package | 0.3.65-1.3 | x86_64 | OSS i+ | wireplumber | package | 0.4.13-2.1 | x86_64 | OSS
W dniu 8.03.2023 o 06:49, Felix Miata pisze:
...now that YaST2 sound is dead?
Both DisplayPort display and HDMI-1 display have speakers. I want audio on the DisplayPort, but it's on HDMI-1. # pinxi -GSAaz --vs --zl --hostname [...] Audio: [...] Sound API: ALSA v: k6.2.1-1-default running: yes Sound Server-1: PipeWire v: 0.3.65 running: no
With bare ALSA that can be a bit of challenge. Is it intentional that you use it?
With pulseaudio or pipewire-pulseaudio it's quite easy to just select the default output. In KDE it's few mouse clicks away: https://kde.org/content/plasma-desktop/plasma-systemtray.png
On 08.03.2023 08:49, Felix Miata wrote:
I assume "display" here means physical hardware and not X11 $DISPLAY.
...now that YaST2 sound is dead?
And how did you do it with YaST2 sound? I am really curious.
Both DisplayPort display and HDMI-1 display have speakers. I want audio on the DisplayPort, but it's on HDMI-1.
Your desktop environment should normally provide GUI to control it. E.g. in GNOME I can select between output to internal speakers or HDMI connected TV. This has advantage of (theoretically) working with any backend, supported by DE.
De-facto standard for audio output today is PulseAudio (even pipewire recommends using PulseAudio on client side) so if you need more fine grained control - install pavucontrol.
If you are on bare metal with nothing above kernel - I do not know. I assume it is possible to configure ALSA directly but it was always mystery to me.
...
# zypsei wire puls alsa jack pauv i | alsa | package | 1.2.8-1.1 | x86_64 | OSS i | alsa-ucm-conf | package | 1.2.8-1.1 | noarch | OSS i | alsa-utils | package | 1.2.8-1.1 | x86_64 | OSS i | libjack0 | package | 1.9.21-1.4 | x86_64 | OSS i | libpipewire-0_3-0 | package | 0.3.65-1.3 | x86_64 | OSS i | libpulse0 | package | 16.1-2.1 | x86_64 | OSS i | libwireplumber-0_4-0 | package | 0.4.13-2.1 | x86_64 | OSS i | pipewire-modules-0_3 | package | 0.3.65-1.3 | x86_64 | OSS i | pipewire-spa-plugins-0_2 | package | 0.3.65-1.3 | x86_64 | OSS i | pipewire-spa-tools | package | 0.3.65-1.3 | x86_64 | OSS i | pipewire-tools | package | 0.3.65-1.3 | x86_64 | OSS i+ | pipewire | package | 0.3.65-1.3 | x86_64 | OSS i+ | wireplumber | package | 0.4.13-2.1 | x86_64 | OSS
Well, some software (like mpv) supports pipewire directly, but I guess using pulseaudio as client would be easier.
On 2023-03-08 10:59, Andrei Borzenkov wrote:
On 08.03.2023 08:49, Felix Miata wrote:
I assume "display" here means physical hardware and not X11 $DISPLAY.
...now that YaST2 sound is dead?
And how did you do it with YaST2 sound? I am really curious.
You can set one card as default, or disable another.
On 2023-03-08 06:49, Felix Miata wrote:
...now that YaST2 sound is dead?
Both DisplayPort display and HDMI-1 display have speakers. I want audio on the DisplayPort, but it's on HDMI-1.
Using XFCE, I click on the volume icon in the panel, which in my case it is the "pulse audio plugin". Clicking on it displays the volume slider itself plus controls for each application that sent sound recently (or not recently, it displays amarok which I used a year ago). The bottom item is "audio mixer" which opens as "Volume Control" with several tabs.
The rightmost tab is "Configuration", in which I see two sound hardwares:
Ellesmere HDMI Audio [Radeon 470/580/590] Profile -> Off
Starship/Matisse HD Audio Controller Profile -> Analog Stereo Output
On 3/8/23 16:19, Felix Miata wrote:
...now that YaST2 sound is dead?
Both DisplayPort display and HDMI-1 display have speakers. I want audio on the DisplayPort, but it's on HDMI-1.
The package pavucontrol is probably the best solution if you don't want to use the stuff built into your desktop, in the "Playback" tab you can choose which device each app goes to.
On 08.03.2023 13:30, Carlos E. R. wrote:
On 2023-03-08 10:59, Andrei Borzenkov wrote:
On 08.03.2023 08:49, Felix Miata wrote:
I assume "display" here means physical hardware and not X11 $DISPLAY.
...now that YaST2 sound is dead?
And how did you do it with YaST2 sound? I am really curious.
You can set one card as default, or disable another.
This could only work when using ALSA directly which was not the case for I lost count of how many years. And in this case there is just one card with multiple outputs, so none of the above applies.
On 2023-03-08 06:49, Felix Miata wrote:
Both DisplayPort display and HDMI-1 display have speakers. I want audio on the DisplayPort, but it's on HDMI-1.
On ALSA you need to redirect through $HOME/.asoundrc, or the system wide config file. You would be best off with an sound server like pulsaudio. But jackd/jackdbus works too. You have pipewire installed, just enable it. Anyway, for ALSA, try this.
Check your? $ aplay -L
If the card is called PCH and HDMI-1 is 1 put this in $HOME/.asoundrc
defaults.pcm.!card PCH defaults.pcm.!device 1 defaults.ctl.!card PCH
If not change the card name and the device number accordingly.
You can also test your way through the cards and ports with: aplay -D hw:0,0 yoursoundtestfile.wav aplay -D hw:0,1 yoursoundtestfile.wav
and so on.