Youtube playback issue

Hi all,

Youtube videos stopped loading and playing for me for the last 2-3 days. This is the case for both Firefox and Chromium browsers with Arch linux. The video links open and play with VLC but curiously without sound, go figure. Things were normal before then. I suspect that an update broke things, probably a kernel update but I am not sure how to troubleshoot this. Any pointers will be greatly appreciated.

A few days ago Firefox 100 was deployed. Among other things it brings a theoretical possibility of a hardware video decoding.

It could be that your setup tries to utilize that feature but fails to do so, hence the issue.

I can suggest you checking your setup and forcing back software video decoding if previously you played around with hw settings.

1 Like

Thank you for the excellent suggestion; however, disabling “Use hardware acceleration when available” at Firefox performance settings did not solve the problem. Moreover, the same issue exists for Chromium browser as well and I cannot get sound from my laptop by playing an audio file (mp3, etc.) anymore. The only time I can get a sound out of it is by plugging in and out the power supply, then comes the specific chime that makes me believe that the speakers or their wiring is not dead. Not sure where to start the more in depth troubleshooting…

Have you tried reinstalling drivers?
To rule out the possibility of a hardware issue, you could make a bootable Linux USB device and try play a video on the barebones install.

1 Like

Thank you for the reply @Marro64 ! Yes, I did boot the laptop up with Fedora Live USB and was able to confirm that both YouTube playback and audio were working well. I have been working on this since this post and also observed that when I first boot up the computer and play a local song (i.e. and mp3 file) by VLC, I have audio, no problem. Then, if I launch a browser, either Firefox or Chromium, the audio drivers(?) break; resuming the paused song does not produce any audio output anymore, despite the fact that the progress indicator shows the song is actually playing.

I’d start to figure out what audio server you’re running.

pactl info

Will give you some output, you can then troubleshoot accordingly to what you’re running. I vaguely remember wireplumber being updated in Arch recently.

Though, I’m not sure if that would impact regular pulseaudio/ pipewire setups

1 Like

Thank you @mjc for your reply. The output of the command you recommended above is posted below. It indicates alsa is used I believe, but I am quite unsure how to troubleshoot it. You are correct in the sense that wireplumber was updated recently in Arch by removing the pipewire I am pretty sure. It is a good lead but again not sure how to follow it through.

Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 5
Tile Size: 65472
User Name: user
Host Name: framework-laptop
Server Name: pulseaudio
Server Version: 15.0
Default Sample Specification: s16le 2ch 44100Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_00_1f.3.analog-stereo
Default Source: alsa_input.pci-0000_00_1f.3.analog-stereo
Cookie: 0b64:52eb

Also tried this if it would help:

$ pw-cli list-objects Device
        id 39, type PipeWire:Interface:Device/3
                object.serial = "39"
                factory.id = "14"
                client.id = "33"
                device.api = "v4l2"
                device.description = "Laptop Camera"
                device.name = "v4l2_device.pci-0000_00_14.0-usb-0_7_1.0"
                media.class = "Video/Device"
        id 40, type PipeWire:Interface:Device/3
                object.serial = "40"
                factory.id = "14"
                client.id = "33"
                device.api = "v4l2"
                device.description = "Laptop Camera"
                device.name = "v4l2_device.pci-0000_00_14.0-usb-0_7_1.0.2"
                media.class = "Video/Device"
        id 51, type PipeWire:Interface:Device/3
                object.serial = "70"
                factory.id = "14"
                client.id = "33"
                device.api = "alsa"
                device.description = "Built-in Audio"
                device.name = "alsa_card.pci-0000_00_1f.3"
                device.nick = "HDA Intel PCH"
                media.class = "Audio/Device"

@hakayova Wireplumber replaced pipewire-session-manager 3 days ago on Arch. Causing some audio and video issues.

I had the same issues, this reddit post helped me.

Basically install pipewire-pulse to resolve the issues. pacman -S pipewire-pulse.

If you still have problems read this post: Arch Linux Temporarily Steps Back From WirePlumber After Snafu - Phoronix

6 Likes

Thank you @Proximus , you are a life-saver! Just installing pipewire-pulse, which requires uninstalling pulseaudio package in Arch solves the problem, after a reboot that is. Sometimes it is hard to identify the problem, let alone solving it; thank you again so much!

Thank you @Proximus ! Not only Arch has this issue, it’s like a week when this feature was introduced to Debian testing.

BTW for other fools like me running Debian testing on their desktop. The key for Debian was in the mentioned article on Phoronix: “Those with broken audio this week can run pacman -Syu pipewire-media-session to re-install the PipeWire-Media-Session.” So don’t be shy to uninstall WirePlumber in favor of Pipewire :slight_smile:

So much friction just to get Youtube video playback going? What’s happening in Linux land lately?

Well, it’s not only about youtube but all video in Linux. OK, in VLC you can quite place the sound in wireplumber system but other software have usually fewer options.

For other seekers of this issue: this bug usually behaves like video is loading indefinitely but not playing (for example in any browser any youtube or newspaper video) and running only when muting the sound. Not in VLC, there video goes OK but without sound until you switch the sound output to wireplumber and restart the app.

1 Like

Coming into this a bit late, but it sounds like @Proximus’ suggestion has resolved your issue? :slight_smile: