Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use wl_drm_interface from libva and not libEGL #419

Closed
tripzero opened this issue Oct 17, 2018 · 6 comments · Fixed by #427
Closed

use wl_drm_interface from libva and not libEGL #419

tripzero opened this issue Oct 17, 2018 · 6 comments · Fixed by #427

Comments

@tripzero
Copy link

tripzero commented Oct 17, 2018

intel-vaapi-driver tries to dlopen libEGL.so.1 and find the wl_drm_interface symbol from it. As of libva/c26a187cdff82dc5a360676ef05e6f6d761c2a0a libva provides its own internal implementation. Shouldn't intel-vaapi-driver do the same?

This is particularly a problem because in mesa 6b8657aff0a the symbols are no longer being exported so intel-vaapi-driver will fail to find wl_drm_interface symbol.

@jwang11
Copy link

jwang11 commented Dec 3, 2018

Is there anybody working on this issue? It block the basic playback function on latest Mesa (libEGL). Test with latest yami

$tests/yamidecode -i media_file –m 5 –low-latency
libva info: VA-API version 1.3.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib64/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_3
error: failed to resolve wl_drm_interface(): /usr/lib64/libEGL.so.1: undefined symbol: wl_drm_interface
libva error: /usr/lib64/dri/i965_drv_video.so init failed
libva info: va_openDriver() returns -1
libyami error 15994 (decodeoutput.cpp, 882): vaInitialize: unknown libva error
DecodeOutput init failed
VppInputDecode config failed.
DecodeTest init failed.

xhaihao added a commit to xhaihao/intel-vaapi-driver that referenced this issue Dec 4, 2018
This fixes intel#419

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
@xhaihao
Copy link
Contributor

xhaihao commented Dec 4, 2018

@jwang11 @tripzero xhaihao@654a9e0 removes the dependency on libEGL, but I just did limited tests on Wayland. Could you give a try with this patch?

@jwang11
Copy link

jwang11 commented Dec 6, 2018

@xhaihao , the patch fix the problem. I tested with both yami and gst, both ok now.

  • Gstreamer to play h264
GST_GL_PLATFORM=egl gst-launch-1.0 filesrc location=media.h264 ! h264parse ! vaapih264dec ! vaapipostproc ! glimagesink
  • yami to play h264
$tests/yamidecode -i media.h264 –m 5

@xhaihao
Copy link
Contributor

xhaihao commented Dec 7, 2018

The driver has explicit dependency on libwayland-client.so after applying xhaihao@654a9e0, which is not what we want.

wl_drm_interface in libva (actually in libva-wayland) is not exported too. We should do some changes in libva if we want to use wl_drm_interface from libva.

xhaihao added a commit to xhaihao/intel-vaapi-driver that referenced this issue Dec 7, 2018
This fixes intel#419

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
xhaihao added a commit to xhaihao/libva that referenced this issue Dec 7, 2018
See intel/intel-vaapi-driver#419 for the
information

Note: don't export the interface symbol in case others may reuse it.

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
@jwang11
Copy link

jwang11 commented Dec 10, 2018

The patches are workable in ClearLinux with Wayland backend.

xhaihao added a commit to xhaihao/intel-vaapi-driver that referenced this issue Dec 12, 2018
This fixes intel#419

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
xhaihao added a commit to intel/libva that referenced this issue Dec 26, 2018
See intel/intel-vaapi-driver#419 for the
information

Note: don't export the interface symbol in case others may reuse it.

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
xhaihao added a commit to xhaihao/intel-vaapi-driver that referenced this issue Dec 26, 2018
This fixes intel#419

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
xhaihao added a commit to xhaihao/intel-vaapi-driver that referenced this issue Jan 8, 2019
And bump libva dependency to 1.4.0

This fixes intel#419

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
xhaihao added a commit that referenced this issue Jan 11, 2019
And bump libva dependency to 1.4.0

This fixes #419

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
@xry111
Copy link

xry111 commented Aug 26, 2019

Will we make a release containing this fix?

taowan1 pushed a commit to projectceladon/libva that referenced this issue Sep 4, 2019
See intel/intel-vaapi-driver#419 for the
information

Note: don't export the interface symbol in case others may reuse it.

Change-Id: I5470889cad47ef7821f3f1fd3af1897df42bcf66
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
AlanGriffiths added a commit to canonical/mir-kiosk-kodi that referenced this issue Oct 4, 2019
This dosn't actually work, because of (at least) intel/intel-vaapi-driver#419, but is the right thing(tm).
FurongZhang pushed a commit to FurongZhang/libva that referenced this issue Apr 7, 2023
See intel/intel-vaapi-driver#419 for the
information

Note: don't export the interface symbol in case others may reuse it.

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants