diff options
Diffstat (limited to 'meta-amd-bsp/recipes-multimedia')
15 files changed, 434 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-multimedia/ffmpeg/ffmpeg_%.bbappend b/meta-amd-bsp/recipes-multimedia/ffmpeg/ffmpeg_%.bbappend new file mode 100644 index 00000000..be3d0a0c --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/ffmpeg/ffmpeg_%.bbappend @@ -0,0 +1,3 @@ +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" +PACKAGECONFIG_append_amdgpu = " vdpau vaapi" +PACKAGECONFIG_append_radeon = " vdpau" diff --git a/meta-amd-bsp/recipes-multimedia/ffmpeg/ffmpeg_4.0.2.bb b/meta-amd-bsp/recipes-multimedia/ffmpeg/ffmpeg_4.0.2.bb new file mode 100644 index 00000000..9875ed20 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/ffmpeg/ffmpeg_4.0.2.bb @@ -0,0 +1,149 @@ +SUMMARY = "A complete, cross-platform solution to record, convert and stream audio and video." +DESCRIPTION = "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, \ + mux, demux, stream, filter and play pretty much anything that humans and machines \ + have created. It supports the most obscure ancient formats up to the cutting edge." +HOMEPAGE = "https://www.ffmpeg.org/" +SECTION = "libs" + +LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT" +LICENSE_${PN} = "GPLv2+" +LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libpostproc = "GPLv2+" +LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_FLAGS = "commercial" + +LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \ + file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" + +SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz" +SRC_URI[md5sum] = "ae0bfdf809306a212b4f0e6eb8d1c75e" +SRC_URI[sha256sum] = "a95c0cc9eb990e94031d2183f2e6e444cc61c99f6f182d1575c433d62afb2f97" + +# Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717 +ARM_INSTRUCTION_SET = "arm" + +# Should be API compatible with libav (which was a fork of ffmpeg) +# libpostproc was previously packaged from a separate recipe +PROVIDES = "libav libpostproc" + +DEPENDS = "alsa-lib zlib libogg yasm-native" + +inherit autotools pkgconfig + +PACKAGECONFIG ??= "avdevice avfilter avcodec avformat swresample swscale postproc \ + bzlib gpl lzma theora x264 \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xv', '', d)}" + +# libraries to build in addition to avutil +PACKAGECONFIG[avdevice] = "--enable-avdevice,--disable-avdevice" +PACKAGECONFIG[avfilter] = "--enable-avfilter,--disable-avfilter" +PACKAGECONFIG[avcodec] = "--enable-avcodec,--disable-avcodec" +PACKAGECONFIG[avformat] = "--enable-avformat,--disable-avformat" +PACKAGECONFIG[swresample] = "--enable-swresample,--disable-swresample" +PACKAGECONFIG[swscale] = "--enable-swscale,--disable-swscale" +PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc" +PACKAGECONFIG[avresample] = "--enable-avresample,--disable-avresample" + +# features to support +PACKAGECONFIG[bzlib] = "--enable-bzlib,--disable-bzlib,bzip2" +PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl" +PACKAGECONFIG[gsm] = "--enable-libgsm,--disable-libgsm,libgsm" +PACKAGECONFIG[jack] = "--enable-indev=jack,--disable-indev=jack,jack" +PACKAGECONFIG[libvorbis] = "--enable-libvorbis,--disable-libvorbis,libvorbis" +PACKAGECONFIG[lzma] = "--enable-lzma,--disable-lzma,xz" +PACKAGECONFIG[mp3lame] = "--enable-libmp3lame,--disable-libmp3lame,lame" +PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl" +PACKAGECONFIG[sdl2] = "--enable-sdl2,--disable-sdl2,virtual/libsdl2" +PACKAGECONFIG[speex] = "--enable-libspeex,--disable-libspeex,speex" +PACKAGECONFIG[theora] = "--enable-libtheora,--disable-libtheora,libtheora" +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva" +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" +PACKAGECONFIG[vpx] = "--enable-libvpx,--disable-libvpx,libvpx" +PACKAGECONFIG[x264] = "--enable-libx264,--disable-libx264,x264" +PACKAGECONFIG[xv] = "--enable-outdev=xv,--disable-outdev=xv,libxv" + +# Check codecs that require --enable-nonfree +USE_NONFREE = "${@bb.utils.contains_any('PACKAGECONFIG', [ 'openssl' ], 'yes', '', d)}" + +def cpu(d): + for arg in (d.getVar('TUNE_CCARGS') or '').split(): + if arg.startswith('-mcpu='): + return arg[6:] + return 'generic' + +EXTRA_OECONF = " \ + --disable-stripping \ + --enable-pic \ + --enable-shared \ + --enable-pthreads \ + --disable-libxcb \ + --disable-libxcb-shm \ + --disable-libxcb-xfixes \ + --disable-libxcb-shape \ + ${@bb.utils.contains('USE_NONFREE', 'yes', '--enable-nonfree', '', d)} \ + \ + --cross-prefix=${TARGET_PREFIX} \ + \ + --ld="${CCLD}" \ + --cc="${CC}" \ + --cxx="${CXX}" \ + --arch=${TARGET_ARCH} \ + --target-os="linux" \ + --enable-cross-compile \ + --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \ + --extra-ldflags="${TARGET_LDFLAGS}" \ + --sysroot="${STAGING_DIR_TARGET}" \ + --enable-hardcoded-tables \ + ${EXTRA_FFCONF} \ + --libdir=${libdir} \ + --shlibdir=${libdir} \ + --datadir=${datadir}/ffmpeg \ + ${@bb.utils.contains('AVAILTUNES', 'mips32r2', '', '--disable-mipsdsp --disable-mipsdspr2', d)} \ + --cpu=${@cpu(d)} \ + --pkg-config=pkg-config \ +" + +EXTRA_OECONF_append_linux-gnux32 = " --disable-asm" + +do_configure() { + ${S}/configure ${EXTRA_OECONF} +} + +PACKAGES =+ "libavcodec \ + libavdevice \ + libavfilter \ + libavformat \ + libavresample \ + libavutil \ + libpostproc \ + libswresample \ + libswscale" + +FILES_libavcodec = "${libdir}/libavcodec${SOLIBS}" +FILES_libavdevice = "${libdir}/libavdevice${SOLIBS}" +FILES_libavfilter = "${libdir}/libavfilter${SOLIBS}" +FILES_libavformat = "${libdir}/libavformat${SOLIBS}" +FILES_libavresample = "${libdir}/libavresample${SOLIBS}" +FILES_libavutil = "${libdir}/libavutil${SOLIBS}" +FILES_libpostproc = "${libdir}/libpostproc${SOLIBS}" +FILES_libswresample = "${libdir}/libswresample${SOLIBS}" +FILES_libswscale = "${libdir}/libswscale${SOLIBS}" + +# ffmpeg disables PIC on some platforms (e.g. x86-32) +INSANE_SKIP_${MLPREFIX}libavcodec = "textrel" +INSANE_SKIP_${MLPREFIX}libavdevice = "textrel" +INSANE_SKIP_${MLPREFIX}libavfilter = "textrel" +INSANE_SKIP_${MLPREFIX}libavformat = "textrel" +INSANE_SKIP_${MLPREFIX}libavutil = "textrel" +INSANE_SKIP_${MLPREFIX}libavresample = "textrel" +INSANE_SKIP_${MLPREFIX}libswscale = "textrel" +INSANE_SKIP_${MLPREFIX}libswresample = "textrel" +INSANE_SKIP_${MLPREFIX}libpostproc = "textrel" diff --git a/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bbappend b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bbappend new file mode 100644 index 00000000..d2975992 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bbappend @@ -0,0 +1,8 @@ +RDEPENDS_gstreamer1.0-meta-video_append_amd = " \ + gstreamer1.0-plugins-good-video4linux2 \ + gstreamer1.0-plugins-good-isomp4 \ + gstreamer1.0-plugins-good-deinterlace \ + gstreamer1.0-plugins-good-audioparsers \ + gstreamer1.0-plugins-good-id3demux \ + gstreamer1.0-plugins-good-videomixer \ +" diff --git a/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-omx/0001-gstomx.conf-add-mesa-omx-bellagio-encoder-avc-decode.patch b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-omx/0001-gstomx.conf-add-mesa-omx-bellagio-encoder-avc-decode.patch new file mode 100644 index 00000000..cf82c3d6 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-omx/0001-gstomx.conf-add-mesa-omx-bellagio-encoder-avc-decode.patch @@ -0,0 +1,37 @@ +From 39a94d69833508a351376456dad08ea5facf9362 Mon Sep 17 00:00:00 2001 +From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com> +Date: Wed, 4 Sep 2019 22:12:59 +0500 +Subject: [PATCH] gstomx.conf add mesa omx bellagio encoder avc & decoder hevc + +Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com> +--- + config/bellagio/gstomx.conf | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/config/bellagio/gstomx.conf b/config/bellagio/gstomx.conf +index 0e856be..3e43011 100644 +--- a/config/bellagio/gstomx.conf ++++ b/config/bellagio/gstomx.conf +@@ -58,3 +58,19 @@ component-name=OMX.mesa.video_decoder.mpeg2 + rank=0 + in-port-index=0 + out-port-index=1 ++ ++[omxh265dec] ++type-name=GstOMXH265Dec ++core-name=/usr/lib/libomxil-bellagio.so.0 ++component-name=OMX.mesa.video_decoder.hevc ++rank=0 ++in-port-index=0 ++out-port-index=1 ++ ++[omxh264enc] ++type-name=GstOMXH264Enc ++core-name=/usr/lib/libomxil-bellagio.so.0 ++component-name=OMX.mesa.video_encoder.avc ++rank=256 ++in-port-index=0 ++out-port-index=1 +-- +2.11.1 + diff --git a/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.14.4.bbappend b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.14.4.bbappend new file mode 100644 index 00000000..f10ce33b --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.14.4.bbappend @@ -0,0 +1,16 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +# +# Remove plugins-bad from DEPENDS as it is +# not strictly needed. +# +DEPENDS_remove_amd = "gstreamer1.0-plugins-bad" + +SRC_URI += "file://0001-gstomx.conf-add-mesa-omx-bellagio-encoder-avc-decode.patch" + +# +# This package should not have commercial license flags. +# There is discussion in the OE community about fixing this +# but in the meantime we'll explicitly remove it here. +# +LICENSE_FLAGS_remove = "commercial" diff --git a/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_%.bbappend b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_%.bbappend new file mode 100644 index 00000000..646a2cea --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_%.bbappend @@ -0,0 +1,7 @@ +PACKAGECONFIG_append_amd = " faad" + +EXTRA_OECONF_remove_amd = " --disable-vdpau" +EXTRA_OECONF_append_amd = " --enable-vdpau" + +# we do not support wayland +PACKAGECONFIG_remove_amd = "wayland" diff --git a/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_%.bbappend b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_%.bbappend new file mode 100644 index 00000000..8ce382ed --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_%.bbappend @@ -0,0 +1,3 @@ +PACKAGECONFIG_append_amd = " x264" + +FILES_${PN}-x264_append_amd = " ${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" diff --git a/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend new file mode 100644 index 00000000..08c41975 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend @@ -0,0 +1 @@ +DEPENDS_append_amd = " libva-x11" diff --git a/meta-amd-bsp/recipes-multimedia/libomxil/libomxil/0001-Added-NULL-pointer-check-for-failure-scenario.patch b/meta-amd-bsp/recipes-multimedia/libomxil/libomxil/0001-Added-NULL-pointer-check-for-failure-scenario.patch new file mode 100644 index 00000000..e86f2d4b --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/libomxil/libomxil/0001-Added-NULL-pointer-check-for-failure-scenario.patch @@ -0,0 +1,34 @@ +From 3eb67fb18c26f6cdf4daf7dc3f987b217315e984 Mon Sep 17 00:00:00 2001 +From: Indrajit Das <indrajit-kumar.das@amd.com> +Date: Tue, 29 Mar 2016 22:51:13 +0530 +Subject: [PATCH] Added NULL pointer check for failure scenario + +--- + src/base/omx_base_component.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/base/omx_base_component.c b/src/base/omx_base_component.c +index 4156c37..86c6795 100644 +--- a/src/base/omx_base_component.c ++++ b/src/base/omx_base_component.c +@@ -1631,12 +1631,17 @@ OSCL_EXPORT_REF OMX_ERRORTYPE omx_base_component_MessageHandler(OMX_COMPONENTTYP + } + } + else { ++ if(NULL != omx_base_component_Private->ports) ++ { + pPort=omx_base_component_Private->ports[message->messageParam]; + if(omx_base_component_Private->state!=OMX_StateLoaded) { + err = pPort->FlushProcessingBuffers(pPort); + DEBUG(DEB_LEV_FULL_SEQ, "In %s: Port Flush completed for Comp %s\n",__func__,omx_base_component_Private->name); + } + err = pPort->Port_DisablePort(pPort); ++ } ++ else ++ printf("Skipping NULL pointer access\n"); + } + /** This condition is added to pass the tests, it is not significant for the environment */ + if (err != OMX_ErrorNone) { +-- +2.1.4 + diff --git a/meta-amd-bsp/recipes-multimedia/libomxil/libomxil/0001-test-components-fix-linking-issue.patch b/meta-amd-bsp/recipes-multimedia/libomxil/libomxil/0001-test-components-fix-linking-issue.patch new file mode 100644 index 00000000..4704c30a --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/libomxil/libomxil/0001-test-components-fix-linking-issue.patch @@ -0,0 +1,44 @@ +From a923a068ec8c44a88cfcac545d6d0cee074cbffa Mon Sep 17 00:00:00 2001 +From: Awais Belal <awais_belal@mentor.com> +Date: Fri, 20 May 2016 16:09:39 +0500 +Subject: [PATCH] test/components: fix linking issue + +The test binaries pick up incorrect rpaths due to the wrong +usage of linking of the libomxil-bellagio lib which +is produced by the same package. +We now use the libtool description file in the link +command to correctly identify and pick up the libs +without hardcoding. + +Signed-off-by: Awais Belal <awais_belal@mentor.com> +Upstream-status: Pending +--- + test/components/audio_effects/Makefile.am | 4 ++-- + test/components/resource_manager/Makefile.am | 4 ++-- + +diff --git a/test/components/audio_effects/Makefile.am b/test/components/audio_effects/Makefile.am +index b28b992..ee9cffa 100644 +--- a/test/components/audio_effects/Makefile.am ++++ b/test/components/audio_effects/Makefile.am +@@ -1,6 +1,6 @@ + check_PROGRAMS = omxvolcontroltest omxaudiomixertest + +-bellagio_LDADD = -lomxil-bellagio ++bellagio_LDADD = $(top_builddir)/src/libomxil-bellagio.la + common_CFLAGS = -I$(top_srcdir)/test/components/common -I$(includedir) + + omxvolcontroltest_SOURCES = omxvolcontroltest.c omxvolcontroltest.h +diff --git a/test/components/resource_manager/Makefile.am b/test/components/resource_manager/Makefile.am +index fcc1d99..c24d32c 100644 +--- a/test/components/resource_manager/Makefile.am ++++ b/test/components/resource_manager/Makefile.am +@@ -1,6 +1,6 @@ + check_PROGRAMS = omxrmtest omxprioritytest + +-bellagio_LDADD = -lomxil-bellagio ++bellagio_LDADD = $(top_builddir)/src/libomxil-bellagio.la + common_CFLAGS = -I$(top_srcdir)/test/components/common -I$(includedir) + + omxrmtest_SOURCES = omxrmtest.c omxrmtest.h +-- +1.9.1 diff --git a/meta-amd-bsp/recipes-multimedia/libomxil/libomxil_0.9.3.bbappend b/meta-amd-bsp/recipes-multimedia/libomxil/libomxil_0.9.3.bbappend new file mode 100644 index 00000000..aadab2cd --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/libomxil/libomxil_0.9.3.bbappend @@ -0,0 +1,35 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +SRC_URI_append_amd = " file://0001-test-components-fix-linking-issue.patch" + +RDEPENDS_${PN}_append_amd = " libomx-mesa" +RDEPENDS_${PN}-test_append_amd = " bash" + +# +# This package should not have commercial license flags. +# There is discussion in the OE community about fixing this +# but in the meantime we'll explicitly remove it here. +# +LICENSE_FLAGS_remove = "commercial" + +SRC_URI_append_amd = " file://0001-Added-NULL-pointer-check-for-failure-scenario.patch" + +# +# The upstream sources expect that "make check" is run +# after "make install" and we have to jump through some +# extra hoops since we are cross building to avoid RPATH +# issues. +# +do_install_append_amd () { + oe_runmake includedir=${D}${includedir} LDFLAGS="${LDFLAGS}" check + install test/components/audio_effects/omxvolcontroltest ${D}${bindir} + install test/components/audio_effects/omxaudiomixertest ${D}${bindir} + install test/components/resource_manager/omxrmtest ${D}${bindir} +} + +PACKAGES_prepend_amd = "${PN}-test " +FILES_${PN}-test_amd = "${bindir}/omxvolcontroltest ${bindir}/omxaudiomixertest ${bindir}/omxrmtest" + +pkg_postinst_ontarget_${PN}_amd () { + OMX_BELLAGIO_REGISTRY=${ROOT_HOME}/.omxregister ${bindir}/omxregister-bellagio -v +} diff --git a/meta-amd-bsp/recipes-multimedia/mpv/mpv_%.bbappend b/meta-amd-bsp/recipes-multimedia/mpv/mpv_%.bbappend new file mode 100644 index 00000000..5b17e367 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/mpv/mpv_%.bbappend @@ -0,0 +1,6 @@ +PACKAGECONFIG_append_amdx86 = " drm gbm vdpau vaapi" +PACKAGECONFIG_remove_amdx86 = "lua" +PACKAGECONFIG[vaapi] = "--enable-vaapi, --disable-vaapi,libva libva-x11" + +EXTRA_OECONF_remove = "--disable-gl" +EXTRA_OECONF_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '--enable-gl', '--disable-gl', d)}" diff --git a/meta-amd-bsp/recipes-multimedia/mpv/mpv_0.28.2.bb b/meta-amd-bsp/recipes-multimedia/mpv/mpv_0.28.2.bb new file mode 100644 index 00000000..f6d981e8 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/mpv/mpv_0.28.2.bb @@ -0,0 +1,73 @@ +SUMMARY = "Open Source multimedia player" +DESCRIPTION = "mpv is a fork of mplayer2 and MPlayer. It shares some features with the former projects while introducing many more." +SECTION = "multimedia" +HOMEPAGE = "http://www.mpv.io/" +DEPENDS = "zlib ffmpeg jpeg virtual/libx11 xsp libxv \ + libxscrnsaver libv4l libxinerama \ +" + +REQUIRED_DISTRO_FEATURES = "x11" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=91f1cb870c1cc2d31351a4d2595441cb" + +# While this item does not require it, it depends on ffmpeg which does +LICENSE_FLAGS = "commercial" + +SRC_URI = " \ + https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz;name=mpv \ + http://www.freehackers.org/~tnagy/release/waf-1.9.8;name=waf;downloadfilename=waf;subdir=${BPN}-${PV} \ +" +SRC_URI[mpv.md5sum] = "b6538dec29a2a69574f4e3a3d688fb8b" +SRC_URI[mpv.sha256sum] = "aada14e025317b5b3e8e58ffaf7902e8b6e4ec347a93d25a7c10d3579426d795" +SRC_URI[waf.md5sum] = "fbb646eafa430f959743010c85e269be" +SRC_URI[waf.sha256sum] = "167dc42bab6d5bd823b798af195420319cb5c9b571e00db7d83df2a0fe1f4dbf" + +inherit waf pkgconfig pythonnative distro_features_check + +# Note: both lua and libass are required to get on-screen-display (controls) +PACKAGECONFIG ??= " \ + lua \ + libass \ + ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \ +" +PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm" +PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/mesa" +PACKAGECONFIG[lua] = "--enable-lua,--disable-lua,lua luajit" +PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass" +PACKAGECONFIG[libarchive] = "--enable-libarchive,--disable-libarchive,libarchive" +PACKAGECONFIG[jack] = "--enable-jack, --disable-jack, jack" +PACKAGECONFIG[vaapi] = "--enable-vaapi, --disable-vaapi,libva" +PACKAGECONFIG[vdpau] = "--enable-vdpau, --disable-vdpau,libvdpau" +PACKAGECONFIG[wayland] = "--enable-wayland, --disable-wayland,wayland libxkbcommon" + +SIMPLE_TARGET_SYS = "${@'${TARGET_SYS}'.replace('${TARGET_VENDOR}', '')}" + +EXTRA_OECONF = " \ + --prefix=${prefix} \ + --target=${SIMPLE_TARGET_SYS} \ + --confdir=${sysconfdir} \ + --datadir=${datadir} \ + --disable-manpage-build \ + --disable-gl \ + --disable-libsmbclient \ + --disable-encoding \ + --disable-libbluray \ + --disable-dvdread \ + --disable-dvdnav \ + --disable-cdda \ + --disable-uchardet \ + --disable-rubberband \ + --disable-lcms2 \ + --disable-vapoursynth \ + --disable-vapoursynth-lazy \ + ${PACKAGECONFIG_CONFARGS} \ +" + +adjust_waf_perms() { + chmod +x ${S}/waf +} + +do_patch[postfuncs] += "adjust_waf_perms" + +FILES_${PN} += "${datadir}/icons" diff --git a/meta-amd-bsp/recipes-multimedia/packagegroups/packagegroup-multimedia-risky.bb b/meta-amd-bsp/recipes-multimedia/packagegroups/packagegroup-multimedia-risky.bb new file mode 100644 index 00000000..deae2946 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/packagegroups/packagegroup-multimedia-risky.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "AMD risky multimedia packages" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" +PR = "r0" + +inherit packagegroup + +RDEPENDS_${PN} += "\ + faad2 \ + libid3tag \ + gstreamer1.0-plugins-bad-meta \ + gstreamer1.0-plugins-ugly-meta \ + gstreamer1.0-libav \ +" + +RDEPENDS_${PN}_append_r1000 = " ffmpeg" +RDEPENDS_${PN}_append_v1000 = " ffmpeg" diff --git a/meta-amd-bsp/recipes-multimedia/v4l2apps/v4l-utils_%.bbappend b/meta-amd-bsp/recipes-multimedia/v4l2apps/v4l-utils_%.bbappend new file mode 100644 index 00000000..0c850614 --- /dev/null +++ b/meta-amd-bsp/recipes-multimedia/v4l2apps/v4l-utils_%.bbappend @@ -0,0 +1 @@ +DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl libglu', '', d)}" |