Bug 1955921 - Sound doesnt work after upgrade to fedora 34
Summary: Sound doesnt work after upgrade to fedora 34
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: pipewire
Version: 34
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Wim Taymans
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-05-01 13:47 UTC by BradErz
Modified: 2021-05-09 23:07 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug


Attachments (Terms of Use)
output from: alsa-info.sh --no-upload (50.34 KB, text/plain)
2021-05-01 13:47 UTC, BradErz
no flags Details

Description BradErz 2021-05-01 13:47:06 UTC
Created attachment 1778129 [details]
output from: alsa-info.sh --no-upload

Description of problem:
After upgrading to fedora 34 audio on my system is no longer working. I believe pipewire was previously installed on my system and therefore i followed the steps provided:
https://fedoraproject.org/wiki/Common_F34_bugs#Audio_may_not_work_after_upgrade_to_Fedora_34_if_pipewire_was_previously_installed

However after these steps the issue is still present.

No sound devices input/output show up in the sound menu. Audio was working before the upgrade to fedora 34.

Version-Release number of selected component (if applicable):


How reproducible:
Unknown

Expected results:
Working audio.

Additional info:

I have also followed the steps from here:
https://fedoraproject.org/wiki/How_to_debug_sound_problems#:~:text=If%20your%20problem%20is%20that,mixer%20(volume%20control)%20settings.&text=In%20GNOME%20on%20Fedora%2011,Control%20in%20the%20menu%20system.

alsa-plugins-pulseaudio is not installed on my system to start with. And nothing shows up when searching for the model parameter didnt return any results.

Comment 1 BradErz 2021-05-01 13:50:35 UTC
Also just to note i didn't have any custom settings for pipewire as far as im aware and havent made any changes to the config file both before and after reinstalling pipewire. I believe in the past i simply installed pipewire to have screensharing working with wayland.

Comment 2 BradErz 2021-05-01 14:09:39 UTC
After some more digging in journalctl logs it seems pipewire-pulse is complaining it can't find the client.conf/pipewire-pulse.conf file.

May 01 14:55:59 bwilsonhunt-xps systemd[1659]: Started Multimedia Service.
May 01 14:55:59 bwilsonhunt-xps systemd[1659]: Started PipeWire PulseAudio.
May 01 14:55:59 bwilsonhunt-xps pipewire-pulse[1970]: context 0x5589fdeb98d0: can't load config pipewire-pulse.conf: No such file or di>
May 01 14:55:59 bwilsonhunt-xps pipewire-pulse[1970]: context 0x5589fdeb98d0: can't load config client.conf: No such file or directory
May 01 14:55:59 bwilsonhunt-xps pipewire-pulse[1970]: context 0x5589fdeb98d0: can't load config client.conf: Success
May 01 14:55:59 bwilsonhunt-xps pipewire-pulse[1970]: failed to create context: Success
May 01 14:55:59 bwilsonhunt-xps systemd[1659]: pipewire-pulse.service: Main process exited, code=exited, status=255/EXCEPTION
May 01 14:55:59 bwilsonhunt-xps systemd[1659]: pipewire-pulse.service: Failed with result 'exit-code'.


However when checking the directory i only have these files.
➜  ~ tree /etc/pipewire 
/etc/pipewire
├── media-session.d
│   ├── alsa-monitor.conf
│   ├── bluez-monitor.conf
│   ├── media-session.conf
│   └── v4l2-monitor.conf
└── pipewire.conf

I assume there is a missmatch in the config file which is installed vs the default config file the binary is looking for?

Comment 3 BradErz 2021-05-01 14:22:04 UTC
Ok i guess credit to this guy https://fedoramagazine.org/announcing-fedora-34/#comment-514622


Doing these steps fixed my issue:
sudo mv /etc/pipewire /etc/pipewire.old
sudo dnf reinstall pipewire-alsa.x86_64 pipewire-gstreamer.x86_64 pipewire-pulseaudio.x86_64 pipewire
systemctl –user restart pipewire pipewire-pulse

Maybe its worth changing the steps under the known issues?

Comment 4 BradErz 2021-05-01 14:25:44 UTC
>  If this happens to you, we recommend moving all *.conf files out of /etc/pipewire and reinstalling pipewire with sudo dnf reinstall pipewire. 

Removing all conf files from the /etc/pipewire directory removes also the `pipewire-pulse.conf` file. However without the `dnf reinstall pipewire-pulseaudio.x86_64` the `pipewire-pulse.conf` is not replaced..

Comment 5 BradErz 2021-05-01 14:50:54 UTC
I was also missing a client.conf file.. who knows what else im missing out of those config directories.

Ive taken the client.conf from here:
https://github.com/PipeWire/pipewire/blob/master/src/daemon/client.conf.in

Placing that into /etc/pipewire/client.conf seems to have stopped some applications from crashing and creating core dumps..

Comment 6 BradErz 2021-05-01 15:02:24 UTC
Ok final soloution if like me you removed all the config files in /etc/pipewire.

Run `sudo dnf reinstall "pipewire*"` and it will replace all config files to their defaults.

 pipewire                                           i686                   0.3.26-3.fc34                  updates                 131 k
 pipewire                                           x86_64                 0.3.26-3.fc34                  updates                 134 k
 pipewire-alsa                                      x86_64                 0.3.26-3.fc34                  updates                  57 k
 pipewire-gstreamer                                 x86_64                 0.3.26-3.fc34                  updates                  54 k
 pipewire-jack-audio-connection-kit                 x86_64                 0.3.26-3.fc34                  updates                 108 k
 pipewire-libs                                      i686                   0.3.26-3.fc34                  updates                 1.1 M
 pipewire-libs                                      x86_64                 0.3.26-3.fc34                  updates                 1.1 M
 pipewire-pulseaudio                                x86_64                 0.3.26-3.fc34                  updates                  23 k
 pipewire-utils                                     x86_64                 0.3.26-3.fc34                  updates                 307 k


The default structure should look something like this 

➜  appimages tree /etc/pipewire
/etc/pipewire
├── client.conf
├── client-rt.conf
├── jack.conf
├── media-session.d
│   ├── alsa-monitor.conf
│   ├── bluez-monitor.conf
│   ├── media-session.conf
│   ├── v4l2-monitor.conf
│   ├── with-alsa
│   ├── with-jack
│   └── with-pulseaudio
├── pipewire.conf
└── pipewire-pulse.conf

I hope that helps some future person get their audio back working.

Comment 7 Rex Dieter 2021-05-01 16:46:01 UTC
Triaging -> pipewire (previously assigned to pulseaudio component)

Comment 8 Wim Taymans 2021-05-03 07:41:05 UTC
Is this fixed now?


Note You need to log in before you can comment on or make changes to this bug.