After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 745017 - Gnome Control Center Sound hide many sound card profile settings.
Gnome Control Center Sound hide many sound card profile settings.
Status: RESOLVED NOTGNOME
Product: gnome-control-center
Classification: Core
Component: Sound
3.15.x
Other Linux
: Normal normal
: ---
Assigned To: Control center sound maintainer(s)
Control-Center Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-02-23 14:15 UTC by Airlangga Cahya Utama
Modified: 2015-03-12 16:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
pacmd list-cards output (7.91 KB, text/x-log)
2015-02-23 14:15 UTC, Airlangga Cahya Utama
Details

Description Airlangga Cahya Utama 2015-02-23 14:15:07 UTC
Created attachment 297647 [details]
pacmd list-cards output

Distribution: Fedora 21
Gnome: 3.14.2
Gnome Control Center: 3.14.2 and 3.15.90
Pulse Audio: 5.0 and 6.0

I have two detected audio output, Graphic Card HDMI and PCI-E based card Asus Xonar DX.

Problem:
Gnome Control Center Sound only show one hardware profile, which is Digital Stereo Output. If I click it, sound changes to SPDIF and all analog output is muted. Since there is no other profile, I can't set it back to analog output.

I have tried to upgrade into pa 6.0 and gnome control center 3.15.90 with no avail. All packages are installed from rawhide repository.

To fix it, I have to install pavucontrol, and then manually switch to Analog Stereo or Analog Duplex.
All available profile is listed in pavucontrol. But only one shows up in Control Center Sound.

Attached output of pacmd list-cards.
Comment 1 Airlangga Cahya Utama 2015-02-23 14:23:27 UTC
Probably related https://bugzilla.gnome.org/show_bug.cgi?id=707944
Comment 2 Patrick Griffis (tingping) 2015-03-12 07:55:15 UTC
I have the exact same sound card and have been annoyed by this for years.

So I finally looked into it a bit. gnome[0] only looks at the profiles listed by the card, pavucontrol[1] on the other hand lists all profiles for all ports on the card.

Changing this should not be terribly difficult.

[0] - https://github.com/GNOME/libgnome-volume-control/blob/e14dbe8aa6dfaeea4a9f3405cf2f3e238e88623b/gvc-mixer-control.c#L2081
[1] - https://github.com/pulseaudio/pavucontrol/blob/762cca55198b2376ab32ac3a8c0e9801c0c9e4f0/src/mainwindow.cc#L365
Comment 3 David Henningsson 2015-03-12 08:38:18 UTC
Judging from The problem is that PulseAudio does not create a "analog output" port. This is a PulseAudio bug and I think we should fix it there rather than working around it in g-c-c.

It wouldn't surprise me if we already have such a bug in PulseAudio's bug tracker but if we don't, there should be one.

> gnome[0] only looks at the profiles listed by the card, pavucontrol[1] on the 
> other hand lists all profiles for all ports on the card.
> Changing this should not be terribly difficult.

This will not make a difference. All profiles that the port points to are profiles of the card. (This can be verified with "pactl list cards" (not pacmd) if you don't believe me.)
Comment 4 Patrick Griffis (tingping) 2015-03-12 08:41:38 UTC
(In reply to David Henningsson from comment #3)
> Judging from The problem is that PulseAudio does not create a "analog
> output" port. This is a PulseAudio bug and I think we should fix it there
> rather than working around it in g-c-c.
> 
> It wouldn't surprise me if we already have such a bug in PulseAudio's bug
> tracker but if we don't, there should be one.
> 
> > gnome[0] only looks at the profiles listed by the card, pavucontrol[1] on the 
> > other hand lists all profiles for all ports on the card.
> > Changing this should not be terribly difficult.
> 
> This will not make a difference. All profiles that the port points to are
> profiles of the card. (This can be verified with "pactl list cards" (not
> pacmd) if you don't believe me.)

So how is pavucontrol showing everything?
Comment 5 David Henningsson 2015-03-12 08:51:16 UTC
> So how is pavucontrol showing everything?

Maybe you meant to say "gnome only looks at the profiles listed by the port", rather than "card"? In that case it makes more sense, but IMO Gnome should still hide profiles irrelevant to the port.

The Gnome UI is focused on ports because that's more intuitive and user friendly. pavucontrol is focused on exposing objects the way PulseAudio sees them.
Comment 6 Patrick Griffis (tingping) 2015-03-12 08:59:53 UTC
(In reply to David Henningsson from comment #5)
> > So how is pavucontrol showing everything?
> 
> Maybe you meant to say "gnome only looks at the profiles listed by the
> port", rather than "card"? In that case it makes more sense, but IMO Gnome
> should still hide profiles irrelevant to the port.

Maybe I read the code wrong but I don't think so. My issue is these profiles are not irrelevant for my usage. All sound literally becomes unusable for me if I select the one profile gnome shows. I have to use pavucontrol to then select a profile. (also this crashes g-c-c since it doesn't know of the profile)
 
> The Gnome UI is focused on ports because that's more intuitive and user
> friendly. pavucontrol is focused on exposing objects the way PulseAudio sees
> them.

I am not really familiar with PA but the current profile gnome does show doesn't make sense for me as a user. It has one digital profile yet I have absolutely no digital equipment. Showing everything maybe verbose but it will always have what the user wants at least.
Comment 7 Airlangga Cahya Utama 2015-03-12 09:15:23 UTC
Hello..

Sorry to jump in to discussion.

I have read the code and gnome show profile based on port reported by pulseaudio. And that understandable, as gnome tries to easier changing up profile based on card port. It's logical from one point of view. You can only select profile that supported by active/selected port.

Unfortunately for some card that not perfectly supported by pulseaudio, at least on port reporting, we got this problem.

I have reported to pulseaudio upstream, and they kind enought to create workaround patch for my card. Unfortunately it seems hard to include the patch on mainline pulseaudio since it's not a real solution.

See here for the patch for Xonar Family card: https://bugs.freedesktop.org/show_bug.cgi?id=84983
Comment 8 David Henningsson 2015-03-12 09:50:19 UTC
Thanks for the pointer. I've posted a quick workaround patch here: https://bugs.freedesktop.org/show_bug.cgi?id=84983#c41
Comment 9 Bastien Nocera 2015-03-12 14:39:13 UTC
(In reply to David Henningsson from comment #8)
> Thanks for the pointer. I've posted a quick workaround patch here:
> https://bugs.freedesktop.org/show_bug.cgi?id=84983#c41

Is that a the bug report for the original problem problem in this bug?
So I can close this as a PulseAudio bug...
Comment 10 David Henningsson 2015-03-12 16:44:44 UTC
> I can close this as a PulseAudio bug...

I think this is a PulseAudio bug, yes.
Comment 11 Bastien Nocera 2015-03-12 16:47:23 UTC
Thanks. Closing as per comment 10.