I've been searching for this issue for days now and tried various solutions suggested, without any success.

Basically, I have a laptop with built-in audio (the output goes either to the headphone jack or to the built-in speaker) and HDMI. I'm running Debian 7.5 with KDE.

Previously, I was running ALSA only and I was able to configure Skype to ring on the HDMI, but use the headphones for the calls themselves. I'd like to achieve something similar using Pulse.

I'm not sure if Skype still separates ringing and call audio when it sends them to PulseAudio, but as the Linux version of Skype can run arbitrary scripts on events, I would be happy if I could use e.g. aplay to play something on the HDMI port. However, whatever I do, I always see (and can use) a single output device only.

aplay -l:

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC269VB Analog [ALC269VB Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

aplay -L:

    Playback/recording through the PulseAudio sound server
    HDA Intel PCH, ALC269VB Analog
    Default Audio Device
    HDA Intel PCH, ALC269VB Analog
    Front speakers
    HDA Intel PCH, ALC269VB Analog
    4.0 Surround output to Front and Rear speakers
    HDA Intel PCH, ALC269VB Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
    HDA Intel PCH, ALC269VB Analog
    5.0 Surround output to Front, Center and Rear speakers
    HDA Intel PCH, ALC269VB Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
    HDA Intel PCH, ALC269VB Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
    HDA Intel PCH, HDMI 0
    HDMI Audio Output

When I try to use the hdmi device directly, I get the following error:

$ aplay -D hdmi alert.wav
Playing WAVE 'alert.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Mono
aplay: set_params:1087: Channels count non available

In pavucontrol, under the Configuration tab, I see a Profile drop-down with the following options:

Analog Stereo Duplex
Analog Stereo Output
Analog Stereo (HDMI) Output + Analog Stereo Input
Analog Stereo (HDMI) Output
Analog Stereo Input

As far as I can tell, all of these work as (probably) expected: the ones that say HDMI will direct audio output to the HDMI port; the others to the built-in audio card. No matter which one I select, I always see a single output device only under the Output Devices tab.

I've tried adding either the built-in or the HDMI device to /etc/pulse/default.pa using load-module module-alsa-sink device=hw:0,0 and load-module module-alsa-sink device=hw:0,3 - these either seemed to have no effect, or made pulseaudio not display any profiles at all.

2 Answers 2


I just managed to configure exactly this thanks to the instructions in the ArchLinux wiki :

Set the one sink - HDMI - in pavucontrol/Configuration, and the other - analog output - you specify in default.pa :

load-module module-alsa-sink device=hw:0,0
load-module module-combine-sink sink_name=combined
set-default-sink combined

Maybe you were missing the last two lines?

Addendum: This is OK to add the analog output to HDMI, but what if you want it the other way around? (I want to keep analog input, Pulse calls that "duplex"...) Unfortunately, load-module module-alsa-sink device=hw:0,3 did not work to add HDMI output to Pulse's "Analog Stereo Duplex" configuration. Pulse would start, but no HDMI output.

I compared the output of pacmd list-sinks in the two situations. When I added device=hw:0,3, that one would show up without ports. When HDMI output was chosen in pavucontrol, there would be ports. Looking at the output details, I came up with device=hdmi:0.

Choose "Analog Stereo Duplex" as your pavucontrol configuration, and add to default.pa :

load-module module-alsa-sink device=hdmi:0
load-module module-combine-sink sink_name=combined
set-default-sink combined

Works like a charm. I keep my microphone input, and on pavucontrol/Output Devices I have all options for analog output and for HDMI.

  • What do you think about this proposal? askubuntu.com/a/78179/25388 - - I could not get it work, still trying to get your proposal work in Debian 8.7. Commented Mar 16, 2017 at 20:32
  • I coud not get the last proposal work. I see now two options for simultaneous output but none of them work. Commented Mar 17, 2017 at 8:23
  • This is just to play same app/source to different sinks? Or to play one app on analog and another app on HDMI? I know the last one is possible...
    – Pablo A
    Commented Apr 26, 2020 at 7:45
  • This worked for me after restarting pulseaudio via killall pulseaudio.
    – ealfonso
    Commented Apr 26, 2020 at 20:27

PipeWire reached version 1.0 in 2023, and distros are gradually replacing PulseAudio with PipeWire. I've written a blog post about having Multiple ports simultaneously in PipeWire. A short summary is:

  1. Edit the 9999-custom.conf file, located under the alsa-card-profiles directory structure.

  2. Uncomment the example in that file, and adapt it to your needs:

     [Profile output:analog-stereo+output:hdmi-stereo+input:analog-stereo]
     description = Multiple ports (custom profile)
     output-mappings = analog-stereo hdmi-stereo
     input-mappings = analog-stereo
  3. Restart PipeWire.

  4. Depending on your distro and depending on the configuration file location, your changes may be overwritten whenever your distro updates the installed packages.

With those changes, both the HDMI output and the analog output will be available simultaneously. With that, it's easy to use a tool like qpwgraph to route applications to each of those outputs on-the-fly. It's also possible to create a virtual device that would become the new default output device, and that would forward the audio to multiple physical devices.

PipeWire is extremely flexible, and there are many possibilities and multiple solutions. Old PulseAudio-based solutions should still continue working, but they can also be migrated to the newer pipewire modules.

  • For ARCH users this file is located at: /usr/share/alsa-card-profile/mixer/profile-sets/9999-custom.conf Commented May 9 at 14:25
  • Any idea how I could pactl set-sink-volume @DEFAULT_SINK@ +10% (volume up) simultaneously too? Commented May 9 at 14:34
  • 1
    @GiorgosXou : that's certainly a different question. But I'll give a short answer as a comment here: pactl is the old PulseAudio tool. You may want to use wpctl (from WirePlumber), where you can specify a single device. Then you can create a trivial shell script that will callwpctl twice, one for each device. Commented May 9 at 17:27

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .