You are not logged in.
Dear experts,
I recently bought a mini computer to make a media center. So far, everything has been kind of easy to set it up; it booted kodi standalone using lightdm autologin, autoconnected to wifi with networkmanager and automounted media devices with devmon autostarted at launch.
I chose this mini pc because it has a Celeron N3350 with a Intel HD Graphics 500, which has hardware video acceleration for H.264 and HEVC among others. Sadly, I have been unable to make it work.
I installed mesa, xf86-video-intel, libva-intel-driver and libvdpau-va-gl.
The xorg log file shows (I guess) a correct output, pointing the DRI driver to i965:
[ 23.969] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
GM45, 4 Series, G45/G43, Q45/Q43, G41, B43
[ 23.969] (II) intel: Driver for Intel(R) HD Graphics
[ 23.969] (II) intel: Driver for Intel(R) Iris(TM) Graphics
[ 23.969] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics
[ 23.969] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[ 23.970] xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
[ 23.970] (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20170818
[ 23.970] (II) intel(0): SNA compiled from 2.99.917-802-gaf6d8e9e
[ 23.970] (WW) Falling back to old probe method for modesetting
[ 23.970] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[ 23.971] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD Graphics 500
[ 23.971] (--) intel(0): CPU: x86-64, sse2, sse3, ssse3, sse4.1, sse4.2; using a maximum of 2 threads
[ 23.971] (II) intel(0): Creating default Display subsection in Screen section
"Default Screen Section" for depth/fbbpp 24/32
[ 23.971] (==) intel(0): Depth 24, (--) framebuffer bpp 32
[ 23.971] (==) intel(0): RGB weight 888
[ 23.971] (==) intel(0): Default visual is TrueColor
[ 23.972] (II) intel(0): Output HDMI1 has no monitor section
[ 23.972] (II) intel(0): Enabled output HDMI1
[ 23.972] (--) intel(0): Using a maximum size of 256x256 for hardware cursors
[ 23.972] (II) intel(0): Output VIRTUAL1 has no monitor section
[ 23.972] (II) intel(0): Enabled output VIRTUAL1
[ 23.972] (--) intel(0): Output HDMI1 using initial mode 2560x1440 on pipe 0
[ 23.972] (==) intel(0): TearFree disabled
[ 23.972] (==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
[ 23.972] (==) intel(0): DPI set to (96, 96)
[ 23.972] (II) Loading sub module "dri3"
[ 23.972] (II) LoadModule: "dri3"
[ 23.972] (II) Module "dri3" already built-in
[ 23.972] (II) Loading sub module "dri2"
[ 23.972] (II) LoadModule: "dri2"
[ 23.972] (II) Module "dri2" already built-in
[ 23.972] (II) Loading sub module "present"
[ 23.972] (II) LoadModule: "present"
[ 23.972] (II) Module "present" already built-in
[ 23.972] (II) UnloadModule: "modesetting"
[ 23.972] (II) Unloading modesetting
[ 23.972] (==) Depth 24 pixmap format is 32 bpp
[ 23.973] (II) intel(0): SNA initialized with Broxton (gen9) backend
[ 23.973] (==) intel(0): Backing store enabled
[ 23.973] (==) intel(0): Silken mouse enabled
[ 23.973] (II) intel(0): HW Cursor enabled
[ 23.973] (II) intel(0): RandR 1.2 enabled, ignore the following RandR disabled message.
[ 23.973] (==) intel(0): DPMS enabled
[ 23.973] (==) intel(0): Display hotplug detection enabled
[ 23.973] (II) intel(0): [DRI2] Setup complete
[ 23.973] (II) intel(0): [DRI2] DRI driver: i965
[ 23.973] (II) intel(0): [DRI2] VDPAU driver: va_gl
[ 23.973] (II) intel(0): direct rendering: DRI2 DRI3 enabled
[ 23.973] (II) intel(0): hardware support for Present enabled
However, vainfo outputs this:
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva error: /usr/lib/dri/i965_drv_video.so has no function __vaDriverInit_1_0
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
Exactly the same outputs shows kodi if I run a h264 encoded video.
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva error: /usr/lib/dri/i965_drv_video.so has no function __vaDriverInit_1_0
libva info: va_openDriver() returns -1
The drivers are in the right folder (/usr/lib/dri):
drwxr-xr-x 2 root root 4096 31 des 19:01 .
drwxr-xr-x 116 root root 69632 31 des 15:49 ..
-rwxr-xr-x 5 root root 8714952 25 des 13:54 i915_dri.so
-rwxr-xr-x 5 root root 8714952 25 des 13:54 i965_dri.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 kms_swrast_dri.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 nouveau_dri.so
-rwxr-xr-x 5 root root 8714952 25 des 13:54 nouveau_vieux_dri.so
lrwxrwxrwx 1 root root 18 29 oct 22:36 nvidia_drv_video.so -> vdpau_drv_video.so
-rwxr-xr-x 5 root root 8714952 25 des 13:54 r200_dri.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 r300_dri.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 r600_dri.so
-rwxr-xr-x 5 root root 8714952 25 des 13:54 radeon_dri.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 radeonsi_dri.so
lrwxrwxrwx 1 root root 18 29 oct 22:36 s3g_drv_video.so -> vdpau_drv_video.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 swrast_dri.so
-rwxr-xr-x 1 root root 91936 29 oct 22:36 vdpau_drv_video.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 virtio_gpu_dri.so
-rwxr-xr-x 8 root root 11819312 25 des 13:54 vmwgfx_dri.so
1561134359 8714952 i915_dri.so
1561134359 8714952 i965_dri.so
1685435988 11819312 kms_swrast_dri.so
1685435988 11819312 nouveau_dri.so
1561134359 8714952 nouveau_vieux_dri.so
620532183 91936 nvidia_drv_video.so
1561134359 8714952 r200_dri.so
1685435988 11819312 r300_dri.so
1685435988 11819312 r600_dri.so
1561134359 8714952 radeon_dri.so
1685435988 11819312 radeonsi_dri.so
620532183 91936 s3g_drv_video.so
1685435988 11819312 swrast_dri.so
620532183 91936 vdpau_drv_video.so
1685435988 11819312 virtio_gpu_dri.so
1685435988 11819312 vmwgfx_dri.so
I tried to follow the configuration chapter on the wiki (Configuring VA-API), but had no luck applying the environment variable. I don't know what else could I try to make it work.
Does someone know what should I do?
Thank you in advance.
Last edited by Agravain (2017-12-31 21:18:47)
Offline
Your /usr/lib/dri directory is missing i965_drv_video.so, which is weird because the libva-intel-driver package should have installed it. Reinstall that package and check that i965_drv_video.so is there in the /usr/lib/dri directory, that's the only thing I can think of.
Offline
What's the output of 'uname -a' and 'pacman -Q linux'? What's the output of dmesg?
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline
Your /usr/lib/dri directory is missing i965_drv_video.so, which is weird because the libva-intel-driver package should have installed it. Reinstall that package and check that i965_drv_video.so is there in the /usr/lib/dri directory, that's the only thing I can think of.
I uninstalled it and forced a new download and it worked. I'm sure I tried it before ugh. Anyway, I thinks it's working now!
vainfo gives me this:
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.0 (libva 2.0.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Broxton - 2.0.0
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointEncSliceLP
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointEncSliceLP
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointEncSlice
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
Kodi also seems to use it as it shows the same first 5 lines.
Not that sure if VA-API as a backend for VDPAU is working correctly, as it shows many "not supported" codecs, including HEVC. But to be honest, I'm fine like this as I can tell Kodi to just use VA-API.
display: :1 screen: 0
libva info: VA-API version 1.0.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
API version: 1
Information string: OpenGL/VAAPI backend for VDPAU
Video surface:
name width height types
-------------------------------------------
420 4096 4096 NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8
422 4096 4096 NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8
444 4096 4096 NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8
Decoder capabilities:
name level macbs width height
----------------------------------------------------
MPEG1 --- not supported ---
MPEG2_SIMPLE --- not supported ---
MPEG2_MAIN --- not supported ---
H264_BASELINE 51 16384 2048 2048
H264_MAIN 51 16384 2048 2048
H264_HIGH 51 16384 2048 2048
VC1_SIMPLE --- not supported ---
VC1_MAIN --- not supported ---
VC1_ADVANCED --- not supported ---
MPEG4_PART2_SP --- not supported ---
MPEG4_PART2_ASP --- not supported ---
DIVX4_QMOBILE --- not supported ---
DIVX4_MOBILE --- not supported ---
DIVX4_HOME_THEATER --- not supported ---
DIVX4_HD_1080P --- not supported ---
DIVX5_QMOBILE --- not supported ---
DIVX5_MOBILE --- not supported ---
DIVX5_HOME_THEATER --- not supported ---
DIVX5_HD_1080P --- not supported ---
H264_CONSTRAINED_BASELINE 51 16384 2048 2048
H264_EXTENDED --- not supported ---
H264_PROGRESSIVE_HIGH --- not supported ---
H264_CONSTRAINED_HIGH --- not supported ---
H264_HIGH_444_PREDICTIVE --- 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 ---
Output surface:
name width height nat types
----------------------------------------------------
B8G8R8A8 16384 16384 -
R8G8B8A8 16384 16384 -
R10G10B10A2 16384 16384 -
B10G10R10A2 16384 16384 -
A8 16384 16384 -
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 -
DEINTERLACE_TEMPORAL_SPATIAL -
INVERSE_TELECINE -
NOISE_REDUCTION -
SHARPNESS -
LUMA_KEY -
HIGH QUALITY SCALING - L1 -
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 -
VIDEO_SURFACE_HEIGHT -
CHROMA_TYPE -
LAYERS -
attribute name sup min max
-----------------------------------------------------
BACKGROUND_COLOR -
CSC_MATRIX -
NOISE_REDUCTION_LEVEL -
SHARPNESS_LEVEL -
LUMA_KEY_MIN_LUMA -
LUMA_KEY_MAX_LUMA -
Thank you Gusar and R00KIE for your attention and fast answers! Have a happy good year!
Offline