Comment 58 for bug 1256511

Revision history for this message
In , David Henningsson (diwic) wrote :

(In reply to comment #23)
> Created attachment 96337 [details]
> Output of "pulseaudio -vvv" after killing pulseaudio, wrong profile is active

After looking at this log, I think I found it, but I'm not really sure how to fix it yet.

There is some special code that should prevent switching from analog to HDMI:

    /* Try not to switch to HDMI sinks from analog when HDMI is becoming available */
    PA_IDXSET_FOREACH(sink, profile->card->sinks, idx) {
        if (!sink->active_port)
            continue;

        if (sink->active_port->available != PA_AVAILABLE_NO)
            return false;
    }

but it has stopped working on startup. The reason is this commit:

commit 0b83787d4e844f47affbc903d97b0ca69e234570
Author: David Henningsson <email address hidden>
Date: Tue Apr 16 15:17:37 2013 +0200

    alsa: Initialize ports before sinks/sources

...this causes the current profile not to have any sinks, so the code above never returns false like it should.