This forum has been archived. All content is frozen. Please use KDE Discuss instead.

hdmi audio doesn't work when video not connected

Tags: None
(comma "," separated)
xen111
Registered Member
Posts
9
Karma
1
Maybe there are good answers to this already, so I hope you'll be able to point me to them.

  1. nVidia HDMI graphics card
  2. Onkyo receiver that always prioritizes HDMI audo over other audio (S/PDIF)
  3. graphics card always connected to receiver
    .
  4. extra monitor (TV) connected to receiver as HDMI output
  5. Main monitor just connected to DVI/VGA
    .
  6. Unreliable audio to HDMI in general
  7. Sometimes audio to HDMI, sometimes now
  8. Receiver always dutifully preferences HDMI even if no serious signal
    .
  9. Worked fine in Windows when disabling HDMI audio device
  10. KDE phonon thing also allows turning HDMI off but doesn't consistently work
  11. Unplugging HDMI sometimes is needed to force audio over S/PDIF
  12. Problem is that turning TV off also shuts off HDMI audio but it isn't the receiver doing that.
  13. TV off --> HDMI cable still connected to receiver and xrandr -q shows it as connected
  14. Splitting audio over both HDMI and S/PDIF device would solve the problem
  15. Except that it might not because silent HDMI after TV-off still keeps channel to receiver open and receiver gives preference to HDMI but there is no sound on it.
  16. Keeping HDMI audio as "off" entirely does not consistently solve the problem, computer may still create audio channel to receiver.
    .
  17. Whole problem wouldn't exist if receiver wasn't a jack-ass, but that's just the way it is for now.
  18. On the other hand that would have implied not using HDMI and only using S/PDIF
  19. Can't find a way to get HDMI audio working at all with TV off, currently.
  20. Means HDMI audio doesn't even work if it is solely connected to receiver and no display attached to receiver.

Update: after running pulseaudio -k, I suddenly have audio. Now everything is really screwed up because the list of devices has now been replaced by "PulseAudio Sound Server". That basically destroyed my working session and now I'm worse off than ever before (for now). Last time I run random commands from the internet...

I must add a few things:

- I am not using the nVidia driver (for graphics) because of its lacking text terminal support (framebuffer)

This is what an internet document states:

However, a few things are needed from the video driver to make everything work:

* The video driver must be able to correctly set up the HDMI video signal. You must be able to connect your monitor and see the Linux X desktop (GNOME, KDE, XFCE, etc.).
* The video driver needs to configure the HDMI port to include the audio signal.
* The video driver needs to pass monitor presence and ELD information to the HD-audio controller, using a GPU-specific mechanism. The HD-audio controller then passes this information on to the ALSA driver in a standard fashion defined by the HD-audio specification.[/list]

Steps 2 and 3 above are implemented by the NVIDIA binary X driver; the nv and nouveau drivers do not support these features.

Both steps 2 and 3 should happen automatically without any need to be explicitly configured or triggered by the end-user, or any operating-system software.

Note that the NVIDIA binary X driver is specifically an X driver. For this reason, steps 2 and 3 (and indeed 1) are only activated when the X server is running, and actively controls the VT. When X is not active, or when the console is VT-switched to a text terminal, HDMI audio will not work.


Last time I installed the nVidia driver (and uninstalled it) I wrecked my system (I think) so I am not eager to try again and certainly not without a complete snapshot or backup, which is hard to get at present.

Update 2

Fixed it it seems (not sure reliably) by calling xrandr to set the HDMI display (the receiver at that point) to an available resolution (1440x576) after the monitor is turned off (by udev script) and now it works, as per the above instructions. Apparently the problem was that it didn't have a display (even though I had it configured as a clone, but I didn't set a resolution (mode)). I got very unreliable results by setting it to 1920x1080 -- first intermittent hickups and later it would give audio for a second and then it would die again.

Maybe this will work for a while, thanks.


Bookmarks



Who is online

Registered users: Bing [Bot], blue_bullet, Google [Bot], Sogou [Bot], Yahoo [Bot]