You are not logged in.

#1 2024-05-11 21:53:54

pepejw
Member
Registered: 2024-05-11
Posts: 14

[SOLVED] Videos on web browsers / electron apps stuttering

On any web browser, if I open up any videos, they play slowly and only around 80 frames actually get to the viewport with none dropped (source is youtube's stats for nerds). Nvidia drivers, Hardware acceleration is on, happens on both xorg and wayland. Audio works fine. OS reinstall did not fix. Waiting about 10 minutes seems to fix the issue. I'm not sure what's causing it.

https://drive.google.com/file/d/1MSk0aS … sp=sharing - video of what's happening

Last edited by pepejw (2024-05-17 20:38:11)

Offline

#2 2024-05-11 23:21:09

libXq
Member
Registered: 2024-05-08
Posts: 15

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Does your gpu provide a AV1 hardware decoder? Can you post the output of lspci -v -mm -k and lsmod?

Offline

#3 2024-05-12 04:00:19

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

lspci:

Slot:	0a:00.0
Class:	VGA compatible controller
Vendor:	NVIDIA Corporation
Device:	TU116 [GeForce GTX 1660 SUPER]
SVendor:	ASUSTeK Computer Inc.
SDevice:	Device 873a
Rev:	a1
ProgIf:	00
Driver:	nvidia
Module:	nouveau
Module:	nvidia_drm
Module:	nvidia
IOMMUGroup:	15

lsmod:

Module                  Size  Used by
snd_seq_dummy          12288  0
snd_hrtimer            12288  1
snd_seq               131072  7 snd_seq_dummy
intel_rapl_msr         20480  0
intel_rapl_common      45056  1 intel_rapl_msr
kvm_amd               204800  0
kvm                  1388544  1 kvm_amd
snd_hda_codec_realtek   204800  1
snd_hda_codec_generic   114688  1 snd_hda_codec_realtek
snd_hda_codec_hdmi     98304  1
irqbypass              12288  1 kvm
crct10dif_pclmul       12288  1
snd_hda_intel          65536  2
crc32_pclmul           12288  0
snd_intel_dspcfg       40960  1 snd_hda_intel
uvcvideo              176128  0
polyval_clmulni        12288  0
snd_intel_sdw_acpi     16384  1 snd_intel_dspcfg
snd_usb_audio         503808  2
polyval_generic        12288  1 polyval_clmulni
vfat                   20480  1
videobuf2_vmalloc      20480  1 uvcvideo
gf128mul               16384  1 polyval_generic
snd_usbmidi_lib        49152  1 snd_usb_audio
snd_hda_codec         225280  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
fat                   106496  1 vfat
ghash_clmulni_intel    16384  0
uvc                    12288  1 uvcvideo
eeepc_wmi              12288  0
snd_ump                36864  1 snd_usb_audio
ucsi_ccg               32768  0
sha512_ssse3           49152  0
videobuf2_memops       16384  1 videobuf2_vmalloc
snd_hda_core          151552  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
asus_wmi               98304  1 eeepc_wmi
snd_rawmidi            57344  2 snd_usbmidi_lib,snd_ump
sha256_ssse3           32768  0
videobuf2_v4l2         40960  1 uvcvideo
typec_ucsi             65536  1 ucsi_ccg
snd_hwdep              20480  2 snd_usb_audio,snd_hda_codec
snd_seq_device         16384  3 snd_seq,snd_ump,snd_rawmidi
asus_wmi_sensors       20480  0
sha1_ssse3             32768  0
typec                 114688  1 typec_ucsi
ledtrig_audio          12288  1 asus_wmi
videodev              393216  2 videobuf2_v4l2,uvcvideo
igb                   331776  0
aesni_intel           360448  0
snd_pcm               212992  5 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
roles                  16384  1 typec_ucsi
asus_ec_sensors        28672  0
platform_profile       12288  1 asus_wmi
crypto_simd            16384  1 aesni_intel
i8042                  57344  1 asus_wmi
ptp                    45056  1 igb
cryptd                 28672  2 crypto_simd,ghash_clmulni_intel
videobuf2_common       94208  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
snd_timer              53248  3 snd_seq,snd_hrtimer,snd_pcm
sparse_keymap          12288  1 asus_wmi
pps_core               32768  1 ptp
serio                  28672  1 i8042
i2c_algo_bit           20480  1 igb
hid_apple              24576  0
mc                     90112  5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common
snd                   159744  24 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_ump,snd_pcm,snd_rawmidi
xpad                   49152  0
rfkill                 40960  4 asus_wmi
dca                    16384  1 igb
soundcore              16384  1 snd
rapl                   20480  0
apple_mfi_fastcharge    16384  0
ff_memless             20480  1 xpad
sp5100_tco             20480  0
wmi_bmof               12288  0
mousedev               24576  0
pcspkr                 12288  0
joydev                 24576  0
k10temp                16384  0
ccp                   163840  1 kvm_amd
acpi_cpufreq           32768  0
i2c_nvidia_gpu         12288  0
i2c_piix4              32768  0
gpio_amdpt             16384  0
gpio_generic           24576  1 gpio_amdpt
mac_hid                12288  0
i2c_dev                28672  0
crypto_user            20480  0
dm_mod                225280  0
loop                   40960  0
nfnetlink              20480  1
ip_tables              36864  0
x_tables               69632  1 ip_tables
ext4                 1179648  2
crc32c_generic         12288  0
crc16                  12288  1 ext4
mbcache                16384  1 ext4
jbd2                  221184  1 ext4
uas                    32768  0
usb_storage            90112  1 uas
hid_generic            12288  0
usbhid                 81920  0
nvme                   65536  0
crc32c_intel           16384  4
nvme_core             249856  1 nvme
xhci_pci               24576  0
nvme_auth              28672  1 nvme_core
xhci_pci_renesas       24576  1 xhci_pci
nvidia_drm            122880  77
nvidia_uvm           6639616  0
nvidia_modeset       1605632  18 nvidia_drm
video                  77824  2 asus_wmi,nvidia_modeset
mxm_wmi                12288  0
wmi                    36864  5 asus_wmi_sensors,video,asus_wmi,wmi_bmof,mxm_wmi
nvidia              60502016  549 nvidia_uvm,nvidia_modeset

although videos don't work well with av1 blocked with enhanced-h264ify

Last edited by pepejw (2024-05-12 10:58:59)

Offline

#4 2024-05-12 10:53:56

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Please use [code][/code] tags, not "quote" tags. Edit your post in this regard.

Hardware acceleration is on

Sure?
https://bbs.archlinux.org/viewtopic.php?id=244031

I'd not bother.
https://archlinux.org/packages/?q=youtube
https://aur.archlinux.org/packages?K=yo … v&O=0&SO=d

Offline

#5 2024-05-12 11:33:41

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Video decoder (on brave) is Dav1dVideoDecoder; chrome://gpu says that Video Decode is hardware accelerated. Brave lags less than Firefox, e.g. buffers for a few seconds then plays fine. On firefox, forcing H264 with enhanced-h264ify does not help.
I have libva-nvidia-driver installed.
vainfo:

Trying display: wayland
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: VA-API NVDEC driver [direct backend]
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain12             :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
      VAProfileHEVCMain444            :	VAEntrypointVLD
      VAProfileHEVCMain444_10         :	VAEntrypointVLD
      VAProfileHEVCMain444_12         :	VAEntrypointVLD

Last edited by pepejw (2024-05-12 11:34:18)

Offline

#6 2024-05-12 12:03:03

libXq
Member
Registered: 2024-05-08
Posts: 15

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Acccording to https://en.wikipedia.org/wiki/Nvidia_NVDEC you gpu does not provide a AV1 decoder.

Can you verify that hardware decoding works with GStreamer/VLC/MPV or the backend of your choice by playing an H.264-encoded video locally, for example?

You can get samples at: https://test-videos.co.uk/bigbuckbunny/mp4-h264

Could you please provide the output of :

sudo dmesg | grep nvidia

After a reboot and once you notice the mentioned changes?

Last edited by libXq (2024-05-12 19:20:40)

Offline

#7 2024-05-12 12:56:00

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

AV1 and AVC1 are (unfortunately) not the same thing, and every turing chip in that list has AVC1 support, but no AV1
The demo video plays format 397 which is av01 which is AV1, not AVC1 and doesn't reflect

although videos don't work well with av1 blocked with enhanced-h264ify

Compare

 mpv --ytdl-raw-options="" --ytdl-format=397+251 'https://www.youtube.com/watch?v=v2AC41dglnM'
 mpv --ytdl-raw-options="" --ytdl-format=135+251 'https://www.youtube.com/watch?v=v2AC41dglnM'

Also the video seems to be buffering a lot?

Waiting about 10 minutes seems to fix the issue.

Try to download the video w/ yt-dlp and play it locally (in your browser)

Offline

#8 2024-05-12 19:49:29

libXq
Member
Registered: 2024-05-08
Posts: 15

Re: [SOLVED] Videos on web browsers / electron apps stuttering

I think we can conclude that this is probably not a real issue because your hardware simply doesn't support Hardware Acceleration of AV1. To clarify a few things here: First, your browser reports that you will use the software decoder called dav1d. This, alongside the link I provided containing information on the supported codecs by your hardware, is a good indicator. The output of vainfo suggests that it works properly. So, the options to fix this problem are to maybe use a different browser with a plugin/addon to prevent AV1 videos. Choosing the right browser is a hard decision you should make for yourself, not only because of multimedia. What I can confirm is that using Chromium with the plugin called "enhanced h264fy" should work. But there is a catch: you need to pass the correct parameters to Chromium. Still, I want to remind you that Chromium might not be the best choice for privacy reasons.

In my case, passing the right arguments to Chromium is sufficient. After finding the appropriate arguments, you can then modify .desktop files to better integrate it with the desktop environment of your choice. "For example: chromium --enable-feature=...

Offline

#9 2024-05-14 18:49:25

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Both mpv videos work properly: i believe sofware decoding is being used, but it still works fine, setting --hwdec=nvdec falls back on av1 and works fine on h264
yt-dlp video does not work in browser but works in mpv.
test-videos video works properly.
Also I find it important to add that this has only occurred recently, within the last 2 months.
sudo dmesg | grep nvidia

[    0.000000] Command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=7b641994-bce9-4bfd-9cdc-43d152bb27c6 rw loglevel=3 quiet nvidia-drm.modeset=1
[    0.041797] Kernel command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=7b641994-bce9-4bfd-9cdc-43d152bb27c6 rw loglevel=3 quiet nvidia-drm.modeset=1
[    3.957914] nvidia: loading out-of-tree module taints kernel.
[    3.957924] nvidia: module license 'NVIDIA' taints kernel.
[    3.957929] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[    3.957930] nvidia: module license taints kernel.
[    4.483477] nvidia-nvlink: Nvlink Core is being initialized, major device number 242
[    4.484986] nvidia 0000:0a:00.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=none:owns=none
[    4.574130] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  550.78  Sun Apr 14 06:23:31 UTC 2024
[    4.603013] nvidia_uvm: module uses symbols nvUvmInterfaceDisableAccessCntr from proprietary module nvidia, inheriting taint.
[    4.747332] nvidia-uvm: Loaded the UVM driver, major device number 240.
[    4.751018] [drm] [nvidia-drm] [GPU ID 0x00000a00] Loading driver
[    5.549022] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:0a:00.0 on minor 0
[    8.512552] nvidia-gpu 0000:0a:00.3: enabling device (0000 -> 0002)
[    9.687031] nvidia-gpu 0000:0a:00.3: i2c timeout error e0000000

Last edited by pepejw (2024-05-14 19:56:09)

Offline

#10 2024-05-14 20:01:52

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

mpv --ytdl-raw-options="" --ytdl-format=397+251 'https://www.youtube.com/watch?v=v2AC41dglnM'

uses yt-dlp to obtain the video uri and then stream that, so the problem is w/ the browser specifically - do *both* videos cause problems?

test-videos video works properly

In the browser or mpv?
What about this video (in the browser)

yt-dlp -f 135+140 'https://www.youtube.com/watch?v=v2AC41dglnM'

Offline

#11 2024-05-15 06:54:40

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

yt-dlp video in browser does not work properly.
test-videos video was in the browser and works properly.

do *both* videos cause problems?

Both work fine over software, and H.264 video works over hardware, but not the AV1 video.

Last edited by pepejw (2024-05-15 06:55:05)

Offline

#12 2024-05-15 13:45:56

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

yt-dlp video in browser does not work properly.

Did you try the one w/ the m4a audio stream?

Offline

#13 2024-05-15 14:53:11

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

seth wrote:

Did you try the one w/ the m4a audio stream?

Yep, did not work properly in browser. Works in mpv using software decoding.

Last edited by pepejw (2024-05-15 14:57:20)

Offline

#14 2024-05-15 19:15:04

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

135+140 is h264+m4a and should™ decode in HW?
What's the actual mpv output when playing that file?

Offline

#15 2024-05-15 19:57:03

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

seth wrote:

135+140 is h264+m4a and should™ decode in HW?

Just to clarify, mpv seems to use software by default unless hardware is specified (e.g. --hwdec=nvdec)
From command

mpv 'AC⧸DC - Thunderstruck (Official Video) [v2AC41dglnM].mp4' -v
[vd] Opening decoder h264
[vd] No hardware decoding requested.
[vd] Using software decoding.

And when hardware is enabled it still works fine:

[vd] Using hardware decoding (nvdec).
seth wrote:

What's the actual mpv output when playing that file?

software:

 (+) Video --vid=1 (*) (h264 640x480 25.000fps)
 (+) Audio --aid=1 --alang=eng (*) (aac 2ch 44100Hz)
AO: [pipewire] 44100Hz stereo 2ch floatp
VO: [gpu] 640x480 yuv420p
(Paused) AV: 00:00:04 / 00:04:52 (2%) A-V:  0.000

hardware:

 (+) Video --vid=1 (*) (h264 640x480 25.000fps)
 (+) Audio --aid=1 --alang=eng (*) (aac 2ch 44100Hz)
Using hardware decoding (nvdec).
AO: [pipewire] 44100Hz stereo 2ch floatp
VO: [gpu] 640x480 cuda[nv12]

Offline

#16 2024-05-15 21:12:06

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

New thing: I downloaded the fedora live iso, and youtube videos work. Switching to nouveau on arch does not change anything.

Offline

#17 2024-05-15 21:29:59

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

We're looking more at a problem w/ the browser than the driver (version difference between fedora and arch might matter, have you btw. tested eg. firefox?)
The irritating thing is that

test-videos video works properly

Which of the bigbuckbunny videos did you test (in your browser) specifically?

Offline

#18 2024-05-16 14:57:33

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

seth wrote:

Which of the bigbuckbunny videos did you test (in your browser) specifically?

https://test-videos.co.uk/vids/bigbuckb … s_30MB.mp4
(1080p, 10s, 30MB)

Also, firefox was on 126.0 on Arch, and 125.0.3 on Fedora

Last edited by pepejw (2024-05-16 15:09:41)

Offline

#19 2024-05-16 21:11:59

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

The bunny is a mute…

yt-dlp -f135 'https://www.youtube.com/watch?v=v2AC41dglnM' # this is heresy

and test the downloaded musicless sadness in the browser.
This might be down to pipewire/pulseaudio - so please post your complete system journal for the boot:

sudo journalctl -b | curl -F 'file=@-' 0x0.st

Offline

#20 2024-05-16 23:06:21

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

The musicless video works fine.

http://0x0.st/XP8v.txt

note: I seem to have similar issues to what was caused by this: https://archlinux.org/news/undone-repla … replumber/

Last edited by pepejw (2024-05-16 23:07:39)

Offline

#21 2024-05-17 06:29:47

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

The news are 2 years old.
Unfortunately your setup doesn't show any obvious errors. The journal doesn't cover a GUI session/browser video playback? Or does it? Do you start w/ startx/xinit?
In that case please see the last link below and post your xinitrc.

Offline

#22 2024-05-17 14:36:51

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

I started with 'Hyprland', but it still does not work with a display manager enabled.

http://0x0.st/XPNR.txt with sddm enabled.

Last edited by pepejw (2024-05-17 14:40:00)

Offline

#23 2024-05-17 15:22:09

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Does the issue remain w/ a fresh user account?
Try to move away ~/.config/wireplumber/

Offline

#24 2024-05-17 16:03:58

pepejw
Member
Registered: 2024-05-11
Posts: 14

Re: [SOLVED] Videos on web browsers / electron apps stuttering

~/.config/wireplumber/ does not exist.

Offline

#25 2024-05-17 19:22:53

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 71,684

Re: [SOLVED] Videos on web browsers / electron apps stuttering

Do you have ~/.local/state/wireplumber ?
Did you try the behavior w/ a fresh user account?

Offline

Board footer

Powered by FluxBB