Update on VLC Codec: AOMedia's AV1 Video (av01) not working (still unresolved)

So I made another post on Nov 9th asking about the AV1 codec no longer working in VLC and it was suggested to me to install libva-nvidia-driver (which conflicts with libva-vdpau-driver which I already have installed)

However I instead changed the following setting directly from VLC which previously was previously set to “VDPAU output”
Tools > Preferences > Video > Output: XVideo output (XCB)

And suddenly the AV1 videos are playing normally again.

I would appreciate it if someone can explain to me what’s happening because i’m very confused. What’s the difference between libva-vdpau-driver which I always had installed and libva-nvidia-driver which I was instructed to install instead? (but I didn’t do because of the conflict)

Also why was VLC working before fine with the “VDPAU output” settings but stopped working after the previous update and now it works after changing it to “XVideo output (XCB)”?

What should I do now? Should I keep things as they are or am I supposed to install libva-nvidia-driver and replace the libva-vdpau-driver instead?

(sorry for the long winded questions but I wanted to explain properly what happened and also to understand what i’m doing and whether it’s right or wrong)

New “true” vaapi for Nvidia exists, libva-vdpau-driver is/was a vdpau backend for vaapi … a wrapper of sorts.

Not sure of your settings and packages.
You probably do want vdpau output. as thats more native for nvidia.
(some things only support one - like Firefox hardware accelerated is VAAPI … hence previous workarounds like the vdpau backend for vaapi on device like nvidia that did not support vaapi)

Probably always works as it does now. This is a basic output.

Yes.

Though remember this is your vaapi.
Having the package installed shouldnt affect how vdpau works.


For a whole lot more information on hardware acceleration:

https://wiki.archlinux.org/title/Hardware_video_acceleration

1 Like

Bro, that is a most thorough and awesome reply. Thank you very much for taking the time to explain everything! :+1::grin::+1:

May you live long and Arch Linux… :vulcan_salute:
(or Arch based rather?)

When I initially tried to install libva-nvidia-driver with Pamac it said it conflicts with libva-vdpau-driver i.e. I guess it will remove the vdpau driver if I install the nvidia one? in any case when I get home i’ll try it and report back with any updates.

Again thanks for the all the info. Great community we have here. :sunglasses:

Ok so I installed the libva-nvidia-driver and it replaced the libva-vdpau-driver which conflicts with it and then I restarted the computer.

I tried VLC again with “VDPAU output” settings instead of “XVideo output (XCB)” as it used to be before all this happened and unfortunately it’s still not loading the video for AV1 Video Codec files, only the sound is playing, the video is just black. This was the solution given to me in a different post as well (to install libva-nvidia-driver) and it seems not to be working as intended.

I am bewildered, confused, perplexed, at my wits end and other words that describe more of the same.

Mandatory Inxi :pensive::

  Kernel: 6.1.62-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc available: hpet,acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.1-x86_64
    root=UUID=02464895-dc4c-472d-b07a-41ae11fd7d2a rw nvidia-drm.modeset=1
    apparmor=1 security=apparmor udev.log_priority=3
  Desktop: KDE Plasma v: 5.27.9 tk: Qt v: 5.15.11 wm: kwin_x11 vt: 2 dm: SDDM
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Desktop System: ASUS product: All Series v: N/A
    serial: <superuser required>
  Mobo: ASUSTeK model: Z97I-PLUS v: Rev X.0x serial: <superuser required>
    UEFI: American Megatrends v: 2302 date: 11/04/2014
Battery:
  Message: No system battery data found. Is one present?
Memory:
  System RAM: total: 16 GiB available: 15.57 GiB used: 2.34 GiB (15.0%)
  RAM Report: permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: Intel Core i5-4690K bits: 64 type: MCP arch: Haswell gen: core 4
    level: v3 note: check built: 2013-15 process: Intel 22nm family: 6
    model-id: 0x3C (60) stepping: 3 microcode: 0x28
  Topology: cpus: 1x cores: 4 smt: <unsupported> cache: L1: 256 KiB
    desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB L3: 6 MiB
    desc: 1x6 MiB
  Speed (MHz): avg: 3815 high: 3889 min/max: 800/3900 scaling:
    driver: intel_cpufreq governor: schedutil cores: 1: 3889 2: 3762 3: 3734
    4: 3877 bogomips: 27999
  Flags: abm acpi aes aperfmperf apic arat arch_perfmon avx avx2 bmi1 bmi2
    bts clflush cmov constant_tsc cpuid cpuid_fault cx16 cx8 de ds_cpl dtes64
    dtherm dts epb ept ept_ad erms est f16c flexpriority flush_l1d fma fpu
    fsgsbase fxsr ht ibpb ibrs ida invpcid invpcid_single lahf_lm lm mca mce
    md_clear mmx monitor movbe msr mtrr nonstop_tsc nopl nx pae pat pbe pcid
    pclmulqdq pdcm pdpe1gb pebs pge pln pni popcnt pse pse36 pti pts rdrand
    rdtscp rep_good sdbg sep smep ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp
    syscall tm tm2 tpr_shadow tsc tsc_adjust tsc_deadline_timer vme vmx vnmi
    vpid x2apic xsave xsaveopt xtopology xtpr
  Vulnerabilities:
  Type: gather_data_sampling status: Not affected
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT
    disabled
  Type: mds mitigation: Clear CPU buffers; SMT disabled
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data status: Unknown: No mitigations
  Type: retbleed status: Not affected
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, IBRS_FW,
    STIBP: disabled, RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: NVIDIA GM204 [GeForce GTX 970] vendor: ASUSTeK driver: nvidia
    v: 535.129.03 alternate: nouveau,nvidia_drm non-free: 545.xx+ status: current
    (as of 2023-11; EOL~2026-12-xx) arch: Maxwell code: GMxxx
    process: TSMC 28nm built: 2014-2019 pcie: gen: 3 speed: 8 GT/s lanes: 16
    ports: active: none off: DVI-I-1 empty: DP-1,DVI-D-1,HDMI-A-1
    bus-ID: 01:00.0 chip-ID: 10de:13c2 class-ID: 0300
  Display: x11 server: X.Org v: 21.1.9 with: Xwayland v: 23.2.2
    compositor: kwin_x11 driver: X: loaded: nvidia gpu: nvidia,nvidia-nvswitch
    display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 120 s-size: 406x229mm (15.98x9.02")
    s-diag: 466mm (18.35")
  Monitor-1: DVI-I-1 note: disabled model: BenQ XL2430T serial: <filter>
    built: 2014 res: 1920x1080 dpi: 92 gamma: 1.2 size: 531x298mm (20.91x11.73")
    diag: 609mm (24") ratio: 16:9 modes: max: 1920x1080 min: 640x480
  API: EGL v: 1.5 hw: drv: nvidia platforms: gbm: drv: nvidia
  API: OpenGL v: 4.6.0 vendor: nvidia v: 535.129.03 glx-v: 1.4
    direct-render: yes renderer: NVIDIA GeForce GTX 970/PCIe/SSE2
    memory: 3.91 GiB
  API: Vulkan v: 1.3.269 layers: 8 device: 0 type: discrete-gpu
    name: NVIDIA GeForce GTX 970 driver: nvidia v: 535.129.03
    device-ID: 10de:13c2 surfaces: xcb,xlib
Audio:
  Device-1: Intel 9 Series Family HD Audio vendor: ASUSTeK 9
    driver: snd_hda_intel v: kernel bus-ID: 00:1b.0 chip-ID: 8086:8ca0
    class-ID: 0403
  Device-2: NVIDIA GM204 High Definition Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
    bus-ID: 01:00.1 chip-ID: 10de:0fbb class-ID: 0403
  Device-3: KEF X300A Speaker driver: hid-generic,snd-usb-audio,usbhid
    type: USB rev: 1.1 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-10:4
    chip-ID: 27ac:1002 class-ID: 0300
  API: ALSA v: k6.1.62-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: PipeWire v: 0.3.84 status: active with: 1: pipewire-pulse
    status: active 2: pipewire-media-session status: active 3: pipewire-alsa
    type: plugin 4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli
Network:
  Device-1: Intel Ethernet I218-V vendor: ASUSTeK driver: e1000e v: kernel
    port: f040 bus-ID: 00:19.0 chip-ID: 8086:15a1 class-ID: 0200
  IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
  IP v4: <filter> type: dynamic noprefixroute scope: global
    broadcast: <filter>
  IP v6: <filter> type: dynamic noprefixroute scope: global
  IP v6: <filter> type: noprefixroute scope: link
  Device-2: Broadcom BCM4352 802.11ac Wireless Network Adapter
    vendor: ASUSTeK driver: wl v: kernel modules: bcma pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 03:00.0 chip-ID: 14e4:43b1 class-ID: 0280
  IF: wlp3s0 state: down mac: <filter>
  WAN IP: <filter>
Bluetooth:
  Device-1: ASUSTek BCM20702A0 driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-11:5 chip-ID: 0b05:17cf
    class-ID: fe01 serial: <filter>
  Report: rfkill ID: hci0 rfk-id: 1 state: down bt-service: enabled,running
    rfk-block: hardware: no software: yes address: see --recommends
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 2.73 TiB used: 2.27 TiB (83.0%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/sda maj-min: 8:0 vendor: Crucial model: CT1000BX500SSD1
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 056 scheme: GPT
  ID-2: /dev/sdb maj-min: 8:16 vendor: Western Digital
    model: WD2003FZEX-00Z4SA0 size: 1.82 TiB block-size: physical: 4096 B
    logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 7200 serial: <filter>
    fw-rev: 1A01 scheme: GPT
  Optical-1: /dev/sr0 vendor: HL-DT-ST model: DVDRAM GH24NSC0 rev: LK00
    dev-links: cdrom
  Features: speed: 12 multisession: yes audio: yes dvd: yes
    rw: cd-r,cd-rw,dvd-r,dvd-ram state: running
Partition:
  ID-1: / raw-size: 771.09 GiB size: 757.92 GiB (98.29%)
    used: 563.24 GiB (74.3%) fs: ext4 dev: /dev/sda5 maj-min: 8:5 label: N/A
    uuid: 02464895-dc4c-472d-b07a-41ae11fd7d2a
  ID-2: /boot/efi raw-size: 400 MiB size: 399.2 MiB (99.80%)
    used: 312 KiB (0.1%) fs: vfat dev: /dev/sda4 maj-min: 8:4 label: NO_LABEL
    uuid: ABB8-0FB2
  ID-3: /run/media/sera/9CCEA022CE9FF2AE raw-size: 159.91 GiB
    size: 159.91 GiB (100.00%) used: 128.13 GiB (80.1%) fs: ntfs dev: /dev/sda3
    maj-min: 8:3 label: N/A uuid: 9CCEA022CE9FF2AE
  ID-4: /run/media/sera/New Terra raw-size: 1.82 TiB size: 1.79 TiB (98.37%)
    used: 1.59 TiB (88.8%) fs: ext4 dev: /dev/sdb1 maj-min: 8:17 label: New Terra
    uuid: 8e60aed3-da3e-4fe9-bb3c-a34cdcc1361e
Swap:
  Alert: No swap data was found.
Unmounted:
  ID-1: /dev/sda1 maj-min: 8:1 size: 100 MiB fs: vfat label: N/A
    uuid: DA9B-6C6C
  ID-2: /dev/sda2 maj-min: 8:2 size: 16 MiB fs: <superuser required>
    label: N/A uuid: N/A
USB:
  Hub-1: 1-0:1 info: full speed or root hub ports: 2 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Hub-2: 1-1:2 info: Intel ports: 6 rev: 2.0 speed: 480 Mb/s (57.2 MiB/s)
    lanes: 1 mode: 2.0 chip-ID: 8087:8009 class-ID: 0900
  Hub-3: 2-0:1 info: full speed or root hub ports: 2 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Hub-4: 2-1:2 info: Intel Integrated Hub ports: 8 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 8087:8001
    class-ID: 0900
  Hub-5: 3-0:1 info: hi-speed hub with single TT ports: 14 rev: 2.0
    speed: 480 Mb/s (57.2 MiB/s) lanes: 1 mode: 2.0 chip-ID: 1d6b:0002
    class-ID: 0900
  Device-1: 3-2:2 info: SteelSeries ApS Kana v2 Gaming Mouse type: HID,mouse
    driver: hid-generic,usbhid interfaces: 2 rev: 1.1 speed: 12 Mb/s (1.4 MiB/s)
    lanes: 1 mode: 1.1 power: 100mA chip-ID: 1038:137a class-ID: 0301
  Device-2: 3-5:3 info: Cooler Master Storm Quick Fire TK 6keys
    type: keyboard,HID driver: hid-generic,usbhid interfaces: 2 rev: 1.1
    speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 power: 100mA
    chip-ID: 2516:0011 class-ID: 0300
  Device-3: 3-10:4 info: KEF X300A Speaker type: audio,HID
    driver: hid-generic,snd-usb-audio,usbhid interfaces: 3 rev: 1.1
    speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1 power: 100mA
    chip-ID: 27ac:1002 class-ID: 0300
  Device-4: 3-11:5 info: ASUSTek BCM20702A0 type: Bluetooth driver: btusb
    interfaces: 4 rev: 2.0 speed: 12 Mb/s (1.4 MiB/s) lanes: 1 mode: 1.1
    chip-ID: 0b05:17cf class-ID: fe01 serial: <filter>
  Hub-6: 4-0:1 info: super-speed hub ports: 6 rev: 3.0
    speed: 5 Gb/s (596.0 MiB/s) lanes: 1 mode: 3.2 gen-1x1 chip-ID: 1d6b:0003
    class-ID: 0900
Sensors:
  System Temperatures: cpu: 53.0 C mobo: N/A gpu: nvidia temp: 64 C
  Fan Speeds (rpm): N/A gpu: nvidia fan: 31%
Info:
  Processes: 210 Uptime: 3m wakeups: 0 Init: systemd v: 254 default: graphical
  tool: systemctl Compilers: gcc: 13.2.1 alt: 11/12 clang: 16.0.6
  Packages: 1579 pm: pacman pkgs: 1492 libs: 424 tools: pamac pm: flatpak
  pkgs: 87 Shell: Bash v: 5.2.15 running-in: yakuake inxi: 3.3.31

Well …

I will mention again that the packages you exchanged should not affect vdpau one way or the other.
(and it seems demonstrably so - it was black, it is still black)
It is exchanging vaapi (a different video api than vdpau).

I suppose I would like to see:

mhwd -l -li
pacman -Qs 'vdpau|nvidia'

Another note … I just looked up your hardware and it seems to be a maxwell architecture card?

Some snippets from the hw-accel page:

So you probably do want to prefer NVDEC where available …

Looking at VLC …

(I am reminded that it is still the inferior player in linux)

I cant really decide what option is best for you.

vdpau is older … but you are having issues … it might work with the environment variable;

VDPAU_DRIVER=nvidia vlc

You do have the new vaapi for yourself … I wonder how that will work for you.
In case you want environment variable for that too:

LIBVA_DRIVER_NAME=nvidia vlc

Let us know.


PS

Its not all that recent, but you do have BIOS updates available:
https://www.asus.com/us/supportonly/z97i-plus/helpdesk_bios/

…Oh look! One of them (not the most recent) is for NVME:

So you might want to do that whenever possible.

1 Like

Ok. That is a LOT of info and time spent from your side (thank you kind sir :+1:) you even noticed that there was a BIOS update for my semi-ancient Motherboard… complete with the relevant links as well… like, who ARE you? :rofl:

Seriously you’re amazing. You’re either a Level 500 Tech support veteran with many years of experience or you’re Batman. I’ll accept either answer. (could be both! :grin:)

VDPAU_DRIVER=nvidia vlc
LIBVA_DRIVER_NAME=nvidia vlc

^ What do these above commands do btw? And how would I undo them If I wanted/needed to later on?

Please see the mhwd -l -li and pacman -Qs 'vdpau|nvidia' command outputs respectively below as suggested:

> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
   network-broadcom-wl            2018.10.07               false            PCI
          video-nvidia            2023.03.23               false            PCI


Warning: No installed USB configs!
> 0000:03:00.0 (0200:14e4:43b1) Network controller Broadcom:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
   network-broadcom-wl            2018.10.07               false            PCI


> 0000:01:00.0 (0300:10de:13c2) Display controller nVidia Corporation:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
          video-nvidia            2023.03.23               false            PCI
    video-nvidia-470xx            2023.03.23               false            PCI
    video-nvidia-390xx            2023.03.23               false            PCI
           video-linux            2018.05.04                true            PCI
     video-modesetting            2020.01.13                true            PCI
            video-vesa            2017.03.12                true            PCI

local/cuda 12.3.0-1
    NVIDIA's GPU programming toolkit
local/egl-wayland 2:1.1.13-1
    EGLStream-based Wayland external platform
local/lib32-libva-vdpau-driver 0.7.4-7
    VDPAU backend for VA API (32-bit)
local/lib32-libvdpau 1.5-2
    Nvidia VDPAU library
local/lib32-nvidia-utils 535.129.03-2
    NVIDIA drivers utilities (32-bit)
local/libva-nvidia-driver 0.0.11-1
    VA-API implementation that uses NVDEC as a backend
local/libvdpau 1.5-2
    Nvidia VDPAU library
local/libxnvctrl 535.129.03-2
    NVIDIA NV-CONTROL X extension
local/linux515-nvidia 535.129.03-3 (linux515-extramodules)
    NVIDIA drivers for linux
local/linux61-nvidia 535.129.03-3 (linux61-extramodules)
    NVIDIA drivers for linux
local/mhwd-nvidia 535.129.03-2
    MHWD module-ids for nvidia 535.129.03
local/mhwd-nvidia-390xx 390.157-9
    MHWD module-ids for nvidia 390.157
local/mhwd-nvidia-470xx 470.223.02-1
    MHWD module-ids for nvidia 470.223.02
local/nvidia-settings 535.129.03-2
    Tool for configuring the NVIDIA graphics driver
local/nvidia-utils 535.129.03-2
    NVIDIA drivers utilities
local/opencl-nvidia 535.129.03-2
    OpenCL implemention for NVIDIA

But for me the biggest mystery is why it even stopped working in the first place since the previous update and still remains as such even after the most recent one… VLC never had any kind of problems before, it always worked without any complaints… :man_shrugging:

:bat: :penguin: :grey_question:

They launch vlc with the prepended environment variable set.
These variables should ensure the correct options for vaapi and vdpau respectively, in case that was part of the problem. Mainly for our vdpau query here, but I included vaapi as well.
It only lasts for however long that session of vlc is open. (so there is nothing to undo)

With this please check the performance with the output set to vdpau

With this please check the performance with the output set to vaapi
(and/or check the performance of vaapi without this set, as it may not be needed)


EDIT

We can check if anything was removed;

grep -i vdpau /var/log/pacman.log

And we can check if vdpau is working at all;

sudo pacman -Syu vdpauinfo
vdpauinfo

I set VDPAU_DRIVER=nvidia vlc in terminal, the GUI version of VLC launched and I tried playing an AV1 codec video with “VDPAU output” set in video preferences, but it didn’t work (only sound, no video). The following output appeared in terminal:

VLC media player 3.0.20 Vetinari (revision 3.0.20-0-g6f0d0ab126b)
[000055bf76212b80] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[000055bf762c8500] main playlist: playlist is empty
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu
[00007f9e8cc68bb0] main video output error: video output creation failed
[00007f9e8cc01d70] main decoder error: failed to create video output
[00007f9e8cc01d70] avcodec decoder: Using NVIDIA VDPAU Driver Shared Library  535.129.03  Thu Oct 19 18:39:43 UTC 2023 for hardware decoding
[00007f9e8cc01d70] main decoder error: buffer deadlock prevented
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu

The plot thickens! :face_with_monocle:

For LIBVA_DRIVER_NAME=nvidia vlc there is no VAAPI option in VLC, but I tried it again with “VDPAU output” in video preferences and got the same result as above:

VLC media player 3.0.20 Vetinari (revision 3.0.20-0-g6f0d0ab126b)
[0000559002ae4b80] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[0000559002b9a500] main playlist: playlist is empty
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu
[00007f144ce2e390] main video output error: video output creation failed
[00007f144cc0f840] main decoder error: failed to create video output
[00007f144cc0f840] avcodec decoder: Using NVIDIA VDPAU Driver Shared Library  535.129.03  Thu Oct 19 18:39:43 UTC 2023 for hardware decoding
[00007f144cc0f840] main decoder error: buffer deadlock prevented
[00007f144cc0f840] main decoder error: buffer deadlock prevented
uint DBusMenuExporterDBus::GetLayout(int, int, const QStringList&, DBusMenuLayoutItem&): Condition failed: menu

Output of: grep -i vdpau /var/log/pacman.log
(for reference my initial post -before this one- about the AV1 codec issue was on the 9th of November but that doesn’t seem to correlate with any of the dates below)

[2022-12-23T19:56:51+0400] [ALPM] upgraded lib32-libva-vdpau-driver (0.7.4-6 -> 0.7.4-7)
[2023-04-24T19:08:17+0400] [ALPM] reinstalled libvdpau (1.5-1)
[2023-04-24T19:10:36+0400] [ALPM] reinstalled lib32-libvdpau (1.5-1)
[2023-04-24T19:10:36+0400] [ALPM] reinstalled lib32-libva-vdpau-driver (0.7.4-7)
[2023-04-24T19:11:00+0400] [ALPM] reinstalled libva-vdpau-driver (0.7.4-6)
[2023-09-13T20:23:09+0400] [ALPM] upgraded libvdpau (1.5-1 -> 1.5-2)
[2023-09-13T20:23:17+0400] [ALPM] upgraded lib32-libvdpau (1.5-1 -> 1.5-2)
[2023-11-14T21:57:56+0400] [ALPM] removed libva-vdpau-driver (0.7.4-6)

Output of: vdpauinfo

display: :0   screen: 0
API version: 1
Information string: NVIDIA VDPAU Driver Shared Library  535.129.03  Thu Oct 19 18:39:43 UTC 2023

Video surface:

name   width height types
-------------------------------------------
420     4096  4096  NV12 YV12 
422     4096  4096  UYVY YUYV 
444     4096  4096  NV24 YV24 
420_16  4096  4096  P010 P016 
422_16  4096  4096  UYVY YUYV 
444_16  4096  4096  Y_U_V_444_16 

Decoder capabilities:

name                        level macbs width height
----------------------------------------------------
MPEG1                           0 65536  4080  4080
MPEG2_SIMPLE                    3 65536  4080  4080
MPEG2_MAIN                      3 65536  4080  4080
H264_BASELINE                  51 65536  4096  4096
H264_MAIN                      51 65536  4096  4096
H264_HIGH                      51 65536  4096  4096
VC1_SIMPLE                      1  8190  2048  2048
VC1_MAIN                        2  8190  2048  2048
VC1_ADVANCED                    4  8190  2048  2048
MPEG4_PART2_SP                  3  8192  2048  2048
MPEG4_PART2_ASP                 5  8192  2048  2048
DIVX4_QMOBILE                   0  8192  2048  2048
DIVX4_MOBILE                    0  8192  2048  2048
DIVX4_HOME_THEATER              0  8192  2048  2048
DIVX4_HD_1080P                  0  8192  2048  2048
DIVX5_QMOBILE                   0  8192  2048  2048
DIVX5_MOBILE                    0  8192  2048  2048
DIVX5_HOME_THEATER              0  8192  2048  2048
DIVX5_HD_1080P                  0  8192  2048  2048
H264_CONSTRAINED_BASELINE      51 65536  4096  4096
H264_EXTENDED                  51 65536  4096  4096
H264_PROGRESSIVE_HIGH          51 65536  4096  4096
H264_CONSTRAINED_HIGH          51 65536  4096  4096
H264_HIGH_444_PREDICTIVE       51 65536  4096  4096
VP9_PROFILE_0                  --- not supported ---
VP9_PROFILE_1                  --- not supported ---
VP9_PROFILE_2                  --- not supported ---
VP9_PROFILE_3                  --- not supported ---
HEVC_MAIN                      --- not supported ---
HEVC_MAIN_10                   --- not supported ---
HEVC_MAIN_STILL                --- not supported ---
HEVC_MAIN_12                   --- not supported ---
HEVC_MAIN_444                  --- not supported ---
HEVC_MAIN_444_10               --- not supported ---
HEVC_MAIN_444_12               --- not supported ---
AV1_MAIN                       --- not supported ---
AV1_HIGH                       --- not supported ---
AV1_PROFESSIONAL               --- not supported ---

Output surface:

name              width height nat types
----------------------------------------------------
B8G8R8A8         16384 16384    y  Y8U8V8A8 V8U8Y8A8 A4I4 I4A4 A8I8 I8A8 
R10G10B10A2      16384 16384    y  Y8U8V8A8 V8U8Y8A8 A4I4 I4A4 A8I8 I8A8 

Bitmap surface:

name              width height
------------------------------
B8G8R8A8         16384 16384
R8G8B8A8         16384 16384
R10G10B10A2      16384 16384
B10G10R10A2      16384 16384
A8               16384 16384

Video mixer:

feature name                    sup
------------------------------------
DEINTERLACE_TEMPORAL             y
DEINTERLACE_TEMPORAL_SPATIAL     y
INVERSE_TELECINE                 y
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         y
HIGH QUALITY SCALING - L1        y
HIGH QUALITY SCALING - L2        -
HIGH QUALITY SCALING - L3        -
HIGH QUALITY SCALING - L4        -
HIGH QUALITY SCALING - L5        -
HIGH QUALITY SCALING - L6        -
HIGH QUALITY SCALING - L7        -
HIGH QUALITY SCALING - L8        -
HIGH QUALITY SCALING - L9        -

parameter name                  sup      min      max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH              y         1     4096
VIDEO_SURFACE_HEIGHT             y         1     4096
CHROMA_TYPE                      y  
LAYERS                           y         0        4

attribute name                  sup      min      max
-----------------------------------------------------
BACKGROUND_COLOR                 y  
CSC_MATRIX                       y  
NOISE_REDUCTION_LEVEL            y      0.00     1.00
SHARPNESS_LEVEL                  y     -1.00     1.00
LUMA_KEY_MIN_LUMA                y  
LUMA_KEY_MAX_LUMA                y  

I wonder - if you try another player like smplayer (mpv frontend) how things work there?

After VLC stopped working, I tried MPV player to use temporarily and it works fine with all the codecs including the AV1 codec…

(https://mpv.io/ < this one, I installed through Pamac GUI)

Also would like to bring your attention to vdpauinfo why are all these showing as not supported? There’s also AV1_MAIN/HIGH/PROFESSIONAL

Oh … yeah … that would seem to indicate none of those formats are supported.

And just to double check … this is not wayland right ?

Minimum of 6 Characters reply:
X11 :innocent:

Edit:
But if AV1 is showing as not supported, then how was it working normally in VLC before the 06-11-23 Manjaro update with VDPAU as the output setting?

Here’s what VideoLAN has to say about the recently released VLC 3.0.20:

VideoLAN and the VLC development team present VLC 3.0.20 “Vetinari”.
VLC 3.0.20 is a medium update to VLC 3.0 branch: it updates codecs, activates AV1 hardware decoding, adds SuperResolution Scaling in hardware, fixes a FLAC issue, important crashes and fixes playback of numerous formats. It also fixes a freeze when using frame-by-frame actions, and a few minor security issues. 3.0.20 adds a few fixes over 3.0.19, notably for crashes and security issues.

Great, at face value, right? However, this can also mean that errors you are encountering may not necessarily be an issue with Manjaro; it’s possible that VideoLAN also bears some responsibility. This is simply an alternate viewpoint that’s worth consideration. Cheers. :wink:

1 Like

I think I can hear… the sound of thunder! :cloud_with_lightning_and_rain:

Good to see you again…

:thinking: Hmm…The problem is precisely with AV1 codec videos. I wonder if this is a regression then?

But there are so many factors at play it could be any one of them… maybe i’ll try testing VLC on Windows with the same parameters? But then there is no VDPAU output option on windows… so, maybe that’s not gonna be useful either… :man_shrugging:

Unlike its Linux counterpart, the new VLC for Windows probably doesn’t need a specific VDPAU output module. It did have the option in previous versions, however; which has given some trouble in the past.

Setting it to Automatic seems to be sufficient. I’m guessing it handles AVI internally, without the need for an external driver. I don’t know if that’s the case in Linux, with the new version, or indeed, whether that version is being used yet; :cloud_with_lightning:

pacman -Qi vlc

I guess this is just going to be one of those unsolvable things… until a random update gets things randomly working again… :man_shrugging:

Output of pacman -Qi vlc

Name            : vlc
Version         : 3.0.20-2
Description     : Multi-platform MPEG, VCD/DVD, and DivX player
Architecture    : x86_64
URL             : https://www.videolan.org/vlc/
Licenses        : LGPL2.1  GPL2
Groups          : None
Provides        : None
Depends On      : a52dec  libdvbpsi  libxpm  libdca  libproxy  lua  libidn  libmatroska  taglib  libmpcdec  ffmpeg4.4  faad2  libmad  libmpeg2  xcb-util-keysyms  libtar
                  libxinerama  libsecret  libupnp  libixml.so=11-64  libupnp.so=17-64  libarchive  qt5-base  qt5-x11extras  qt5-svg  freetype2  fribidi  harfbuzz
                  fontconfig  libxml2  gnutls  libplacebo  aribb24
Optional Deps   : avahi: service discovery using bonjour protocol [installed]
                  aom: AOM AV1 codec [installed]
                  gst-plugins-base-libs: for libgst plugins [installed]
                  dav1d: dav1d AV1 decoder [installed]
                  libdvdcss: decoding encrypted DVDs [installed]
                  libavc1394: devices using the 1394ta AV/C [installed]
                  libdc1394: IEEE 1394 access plugin [installed]
                  kwallet: kwallet keystore
                  libva-vdpau-driver: vdpau backend nvidia
                  libva-intel-driver: video backend intel [installed]
                  libbluray: Blu-Ray video input [installed]
                  flac: Free Lossless Audio Codec plugin [installed]
                  twolame: TwoLAME mpeg2 encoder plugin [installed]
                  libgme: Game Music Emu plugin [installed]
                  vcdimager: navigate VCD with libvcdinfo [installed]
                  libmtp: MTP devices discovery [installed]
                  systemd-libs: udev services discovery [installed]
                  smbclient: SMB access plugin [installed]
                  libcdio: audio CD playback [installed]
                  gnu-free-fonts: subtitle font 
                  ttf-dejavu: subtitle font [installed]
                  libssh2: sftp access [installed]
                  libnfs: NFS access [installed]
                  mpg123: mpg123 codec [installed]
                  protobuf: chromecast streaming [installed]
                  libmicrodns: mDNS services discovery (chromecast etc) [installed]
                  lua-socket: http interface
                  libdvdread: DVD input module [installed]
                  libdvdnav: DVD with navigation input module [installed]
                  libogg: Ogg and OggSpots codec [installed]
                  libshout: shoutcast/icecast output plugin [installed]
                  libmodplug: MOD output plugin [installed]
                  libvpx: VP8 and VP9 codec [installed]
                  libvorbis: Vorbis decoder/encoder [installed]
                  speex: Speex codec [installed]
                  opus: opus codec [installed]
                  libtheora: theora codec [installed]
                  libpng: PNG support [installed]
                  libjpeg-turbo: JPEG support [installed]
                  librsvg: SVG plugin [installed]
                  x264: H264 encoding [installed]
                  x265: HEVC/H.265 encoder [installed]
                  zvbi: VBI/Teletext/webcam/v4l2 capture/decoding [installed]
                  libass: Subtitle support [installed]
                  libkate: Kate codec [installed]
                  libtiger: Tiger rendering for Kate streams
                  sdl_image: SDL image support
                  srt: SRT input/output plugin [installed]
                  aalib: ASCII art video output [installed]
                  libcaca: colored ASCII art video output [installed]
                  libpulse: PulseAudio audio output [installed]
                  alsa-lib: ALSA audio output [installed]
                  jack: jack audio server [installed]
                  libsamplerate: audio Resampler [installed]
                  libsoxr: SoX audio Resampler [installed]
                  lirc: lirc control
                  libgoom2: Goom visualization
                  projectm: ProjectM visualisation
                  ncurses: ncurses interface [installed]
                  libnotify: notification plugin [installed]
                  gtk3: notification plugin [installed]
                  aribb25: aribcam support
                  pcsclite: aribcam support [installed]
                  live-media: streaming over RTSP
Required By     : elisa
Optional For    : None
Conflicts With  : vlc-plugin
Replaces        : vlc-plugin
Installed Size  : 59.96 MiB
Packager        : Antonio Rojas <arojas@archlinux.org>
Build Date      : Sun 05 Nov 2023 18:35:13 +04
Install Date    : Mon 13 Nov 2023 19:56:27 +04
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : Signature

I see some discussion about trying libva-nvidia-driver with VLC, but on the github page, it says: This is an VA-API implementation that uses NVDEC as a backend. This implementation is specifically designed to be used by Firefox for accelerated decode of web content, and may not operate correctly in other applications.
Unless they haven’t updated readme, then I think this is something that may not work (yet).

So (without switching to libva-nvidia-driver) I decided to try a sample AV1 encoded video with VLC, and I experience the same issues as you (black screen with audio if I use VDPAU, but it works with Xvideo Output (XCB)).

Then I tried with my preferred video player (QMPlay2) and there I also have it set to VDPAU, and the sample video played. I maybe wrong but it could be that QMPlay2 has a decoder priority option so it might be that it tries the next if the first choice doesn’t work?

I also tried to play this sample video using SMPlayer but I couldn’t get it to work there either, tried both multimedia backends MPV and MPlayer(although I didn’t try every output driver option available with MPlayer).

Thank you for your input! I tried MPV and Haruna (also based on MPV) and both worked fine without any problems, I didn’t change any settings there, they worked with the default. With VLC the default setting is “automatic” but that also gives a black screen as well sadly, before it used to just outright crash when set on “automatic” which is why I set it to “VDPAU output” as someone had suggest online at the time.

I wonder as well, this may be a possibility… :person_shrugging:

One obvious factor in VLC’s failure to play an AV1 encoded file, when the VDPAU output is selected, is that the libva-vdpau-driver is not installed. In this instance, selecting the VDPAU output will do nothing but fail, as there is no graceful fallback when an option is manually selected; only Automatic (as the name suggests) allows this.

libva-vdpau-driver: vdpau backend nvidia
libva-intel-driver: video backend intel [installed]
libbluray: Blu-Ray video input [installed]

You already found that switching to the XVideo (XCB) output was a valid workaround:

Setting the output to Automatic should allow the next compatible output to be automatically selected. The Automatic output apparently had issues in previous VLC versions, however, seems now to be functioning as expected.

That package is for a VDPAU backend to VAAPI.
It should not impact VDPAU output.
(it should affect VAAPI output)

But I will mention again that VLC, and especially its ‘automatic’ output selection, is not the best.