Best Way to Install Non-Free Intel VA Driver?

Lubuntu Version: 22.04 Jammy
System Info

johntdavis@DragonOS-Andromeda2:~$ lscpu
Architecture:            x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Address sizes:         46 bits physical, 48 bits virtual
  Byte Order:            Little Endian
CPU(s):                  4
  On-line CPU(s) list:   0-3
Vendor ID:               GenuineIntel
  Model name:            12th Gen Intel(R) Core(TM) i5-12500T
    CPU family:          6
    Model:               151
    Thread(s) per core:  1
    Core(s) per socket:  4
    Socket(s):           1
    Stepping:            5
    BogoMIPS:            3993.60
    Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq vmx ssse3 fm
                         a cx16 pdcm sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_ad
                         just bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves avx_vnni arat vnmi umip pku ospke waitpkg gfni vaes vpclmulqdq rdpid movdiri movdir64b fsrm md_clear serialize flush_l1d a
                         rch_capabilities
Virtualization features: 
  Virtualization:        VT-x
  Hypervisor vendor:     KVM
  Virtualization type:   full
Caches (sum of all):     
  L1d:                   128 KiB (4 instances)
  L1i:                   128 KiB (4 instances)
  L2:                    16 MiB (4 instances)
  L3:                    16 MiB (1 instance)
NUMA:                    
  NUMA node(s):          1
  NUMA node0 CPU(s):     0-3
Vulnerabilities:         
  Gather data sampling:  Not affected
  Itlb multihit:         Not affected
  L1tf:                  Not affected
  Mds:                   Not affected
  Meltdown:              Not affected
  Mmio stale data:       Not affected
  Retbleed:              Not affected
  Spec rstack overflow:  Not affected
  Spec store bypass:     Mitigation; Speculative Store Bypass disabled via prctl
  Spectre v1:            Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  Spectre v2:            Mitigation; Enhanced / Automatic IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence
  Srbds:                 Not affected
  Tsx async abort:       Not affected
johntdavis@DragonOS-Andromeda2:~$ lspci
00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller
00:01.0 VGA compatible controller: Red Hat, Inc. Virtio GPU (rev 01)
00:1a.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 03)
00:1a.1 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 03)
00:1a.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 03)
00:1a.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:1c.1 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:1c.2 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:1c.3 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:1d.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode] (rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
05:01.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
05:02.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
05:03.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
05:04.0 PCI bridge: Red Hat, Inc. QEMU PCI-PCI bridge
06:03.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
06:08.0 Communication controller: Red Hat, Inc. Virtio console
06:09.0 Communication controller: Red Hat, Inc. Virtio console
06:12.0 Ethernet controller: Red Hat, Inc. Virtio network device
07:1d.0 Unclassified device [00ff]: Red Hat, Inc. Virtio RNG
09:01.0 SCSI storage controller: Red Hat, Inc. Virtio SCSI
[details="Summary"]
This text will be hidden
[/details]

Hello! I’m running a Lubuntu-based distro in a VM, and need to get access to my Intel iGPU for H.264 encoding. I’ve enabled the VirtIO-GL (VirGL) driver for my VM, and my VM picked it up and is ready to do stuff with it. :slight_smile:

The issue: I need to use the iGPU to accelerate H.264 encoding, which is not possible with the non-free Intel media driver, but is enabled with the non-free version. I enabled third party software during the install, but it didn’t pick it up.

johntdavis@DragonOS-Andromeda2:~$ apt search intel-media-va-driver
Sorting... Done
Full Text Search... Done
intel-media-va-driver/jammy-updates,now 22.3.1+dfsg1-1ubuntu2 amd64 [installed]
  VAAPI driver for the Intel GEN8+ Graphics family

intel-media-va-driver-non-free/jammy-updates 22.3.1+ds1-1ubuntu0.1 amd64
  VAAPI driver for the Intel GEN8+ Graphics family

Question: What is the best way to get the non-free Intel driver and have it replace the free one for encoding? From what I can tell, I’ve got a few options, and googling only confused me more. I’m not sure which to choose.

  1. Just install the package via apt (this seems like it might work, but I don’t know if I need to install the old one first, or if I should be doing things at a meta-package level to keep things clean, or what…)
  2. Add intel’s apt repo for this driver. Going to the manufacturer’s apt repo would usually be my first choice, but the intel instructions page for this has DEPRECIATED printed all over it, so I’m not sure if this is the way to go.
  3. Install the ubuntu-restricted-extras to cleanly get all the media codecs/drivers and fonts I might need. This seems like the way, but I’m a bit confused about the options.
johntdavis@DragonOS-Andromeda2:~$ apt search ubuntu-restricted
Sorting... Done
Full Text Search... Done
kubuntu-restricted-addons/jammy 26 amd64
  Commonly used restricted packages for Kubuntu

kubuntu-restricted-extras/jammy 67 amd64
  Commonly used media codecs and fonts for Kubuntu

lubuntu-restricted-addons/jammy 26 amd64
  Commonly used restricted packages for Lubuntu

lubuntu-restricted-extras/jammy,jammy 67 all
  Commonly used media codecs and fonts for Lubuntu (Transitional)

ubuntu-restricted-addons/jammy 26 amd64
  Commonly used restricted packages for Ubuntu

ubuntu-restricted-extras/jammy 67 amd64
  Commonly used media codecs and fonts for Ubuntu

xubuntu-restricted-addons/jammy,jammy 26 all
  Commonly used restricted packages for Ubuntu (transitional)

Obviously, I don’t need the xubuntu or kubuntu packages, but I’m not sure which of the others to choose. I could just install all the lubuntu and ubuntu packages, but I want to understand what I’m doing. :stuck_out_tongue:

I’d really appreciate some help. Getting all the bits and blobs in place to get hardware acceleration going on this machine has been a surprisngly difficult process, but i’m almost there, I think.

Additional Info:

I also selected Third Party Software during install, provided a password to enable Secure Boot, and enrolled my MOK keys on reboot.

I’m not sure how to confirm this worked, but it’s what the wiki said to do. :wink:

You’re not running Lubuntu, but as you state a Lubuntu-based system, which means changes have been made, and we don’t know what they are.

If you want official support, I suggest using a Dragon OS support site, given that is what you’re using. If asking here please use the off-topic area though (thus the question move).

FYI: Lubuntu 22.04 LTS has two options with regards version of LXQt, we can’t do package enquiries here on our Lubuntu system to look at what you’re using, as being a Ubuntu based system, you may have packages created by Dragon, and we don’t know which (jammy) package set they’ve opted to use in their own build(s).

Hello,

Thanks for your reply.

“Dragon OS” is standard Lubuntu software defined radio tools installed. See: https://cemaxecuter.com There’s not really a support site for it, unfortunately.

What would be the recommended way to install the non-free intel VA driver on standard Lubuntu? I can spin up a Lubuntu VM and see if that method works.

I don’t know, and haven’t look sorry.

But I’d firstly work out exactly what you have, as Lubuntu has provided 22.04 LTS ISOs that install/use the GA kernel stack, and others that install/use the HWE kernel stack (we’ve released five different 22.04 ISOs thus far)… so I’d work out firstly what you’re actually using; since I don’t know what they actually included. The kernel stack may make no difference, but given you’re after drivers or kernel modules (in the Linux world) the kernel does matter.

You may have backports enabled or disabled, I don’t know sorry too.

I would expect what you want to be identical to Ubuntu 22.04 LTS (or Lubuntu 22.04 LTS) where using the same set of packages/kernel defaults, but I don’t know what you’re using sorry.

First, DragonOS does have support. Its creator is quite active on their SourceForge site, so that’s where I would recommend you go should the answer I give you not solve the problem. Being Lubuntu-based does not mean it’s Lubuntu. The slightest of differences could make for a profoundly different experience and require entirely different methodology for any one use case. The creator’s profile lists all the different DragonOS projects, each with its own ticketing and discussion sections.

That said, in Lubuntu, there are two ways to install proprietary drivers, which should get you what you want, at least assuming it is indeed available in the archives:

  1. Follow the instructions in the manual using Software Sources.
  2. sudo ubuntu-drivers install
3 Likes