diff --git a/common/recipes-multimedia/gstreamer/gst-va-intel.bb b/common/recipes-multimedia/gstreamer/gst-va-intel.bb index 17cb7c8d..516e5f19 100644 --- a/common/recipes-multimedia/gstreamer/gst-va-intel.bb +++ b/common/recipes-multimedia/gstreamer/gst-va-intel.bb @@ -4,10 +4,16 @@ DEPENDS = "gst-meta-base" LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \ file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" -PR = "r0" +PR = "r1" -VAAPI_IMPL = "${@base_contains('MACHINE_FEATURES', 'gst-va-mixvideo', 'gst-va-mixvideo-vaapi', \ - 'gst-va-intel-vaapi', d)}" +def map_gst_vaapi(d): + if base_contains('MACHINE_FEATURES', 'va-impl-mixvideo', "1", "0", d) == "1": + return "gst-va-mixvideo-vaapi" + if base_contains('MACHINE_FEATURES', 'va-impl-intel', "1", "0", d) == "1": + return "gst-va-intel-vaapi" + return "" + +VAAPI_IMPL = "${@map_gst_vaapi(d)}" PACKAGES = "\ gst-va-intel \ @@ -32,10 +38,14 @@ RDEPENDS_gst-va-intel-video = "\ gst-plugins-good-isomp4 \ " +# The gstreamer-vaapi package contains the vaapi implementation +# RDEPENDS_gst-va-intel-vaapi = "\ gstreamer-vaapi \ " +# The emgd driver contains the vaapi implementation +# RDEPENDS_gst-va-mixvideo-vaapi = "\ emgd-driver-bin \ " diff --git a/common/recipes-multimedia/libva/va-intel.bb b/common/recipes-multimedia/libva/va-intel.bb index fc4a28e2..ce642feb 100644 --- a/common/recipes-multimedia/libva/va-intel.bb +++ b/common/recipes-multimedia/libva/va-intel.bb @@ -3,11 +3,19 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \ file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" -PR = "r0" +PR = "r1" -VA_IMPL = "${@base_contains('MACHINE_FEATURES', 'gst-va-mixvideo', \ - 'libva libva-x11 libva-tpi libva-glx libva-egl', \ - 'libva libva-intel-driver', d)}" +def map_valibs(d): + # The emgd mixvideo implementation requires libva-x11/tpi/glx/egl + if base_contains('MACHINE_FEATURES', 'va-impl-mixvideo', "1", "0", d) == "1": + return "libva libva-x11 libva-tpi libva-glx libva-egl" + # The intel implementation requires the libva-intel-driver package + if base_contains('MACHINE_FEATURES', 'va-impl-intel', "1", "0", d) == "1": + return "libva libva-intel-driver" + # All meta-intel video acceleration requires libva + return "libva" + +VA_IMPL = "${@map_valibs(d)}" PACKAGES = "\ va-intel \