diff options
author | Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> | 2015-03-25 10:47:45 +0900 |
---|---|---|
committer | Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> | 2015-03-25 10:47:45 +0900 |
commit | 1c35920d85e424b3f65aa6df1dbde689dd6ec007 (patch) | |
tree | 58b2cacb3674111aad5a4ded694db0cef5cf55f3 /meta-rcar-gen2/recipes-multimedia |
commit BSP v1.8.0
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Diffstat (limited to 'meta-rcar-gen2/recipes-multimedia')
33 files changed, 1178 insertions, 0 deletions
diff --git a/meta-rcar-gen2/recipes-multimedia/dtv-module/dtv-user-module.bb b/meta-rcar-gen2/recipes-multimedia/dtv-module/dtv-user-module.bb new file mode 100644 index 0000000..7b8e5ca --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/dtv-module/dtv-user-module.bb @@ -0,0 +1,52 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +PN = "dtv" +PR = "r0" +SRC_URI = "file://dtv.tar.bz2" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +S = "${WORKDIR}" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" +do_populate_lic[noexec] = "1" + +do_install() { + # Create share folders + mkdir -p ${D}/usr/local/include/ ${D}/usr/local/lib ${D}/usr/local/src/dtv/reference + + # Copy share files to destination + cp -f ${WORKDIR}/dtv/include/*.h ${D}/usr/local/include/ + cp -f ${WORKDIR}/dtv/lib/libdtv.a ${D}/usr/local/lib + cp -f ${WORKDIR}/dtv/userfunc/* ${D}/usr/local/src/dtv/reference +} + +SYSROOT_PREPROCESS_FUNCS += "do_populate_reference_src" + +do_populate_reference_src () { + sysroot_stage_dir ${D}/usr/local ${SYSROOT_DESTDIR}/usr/local +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ + ${PN}-staticdev \ +" + +FILES_${PN} = "" +ALLOW_EMPTY_${PN} = "1" + +FILES_${PN}-dev = " \ + /usr/local/include/*.h \ + /usr/local/src/dtv/reference/*.c \ + /usr/local/src/dtv/reference/*.h \ +" + +FILES_${PN}-staticdev = " \ + /usr/local/lib/*.a \ +" + +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +do_configure[noexec] = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/dtv-module/files/.gitkeep b/meta-rcar-gen2/recipes-multimedia/dtv-module/files/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/dtv-module/files/.gitkeep diff --git a/meta-rcar-gen2/recipes-multimedia/fdpm-module/fdpm-tp-user-module.bb b/meta-rcar-gen2/recipes-multimedia/fdpm-module/fdpm-tp-user-module.bb new file mode 100644 index 0000000..2f01ed3 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/fdpm-module/fdpm-tp-user-module.bb @@ -0,0 +1,31 @@ +require ../../include/rcar-gen2-modules-common.inc + +S = "${WORKDIR}" + +LICENSE = "CLOSED" +DEPENDS = "fdpm-user-module mmngr-user-module" +SRC_URI = "file://fdpm-tp-user.tar.bz2" + +do_compile() { + cd ${S}/fdpm/ + make all ARCH=arm +} + +do_install() { + # Create destination folder + mkdir -p ${D}/usr/local/bin/ + + # Copy user test program + cp ${S}/fdpm/fdpm_tp ${D}/usr/local/bin/ +} + +PACKAGES = "\ + ${PN} \ +" + +FILES_${PN} = " \ + /usr/local/bin/fdpm_tp \ +" + +RPROVIDES_${PN} += "fdpm-tp-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/fdpm-module/fdpm-user-module.bb b/meta-rcar-gen2/recipes-multimedia/fdpm-module/fdpm-user-module.bb new file mode 100644 index 0000000..7146a2a --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/fdpm-module/fdpm-user-module.bb @@ -0,0 +1,68 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "fdpm-kernel-module mmngr-user-module" +PN = "fdpm-user-module" +SRC_URI = "file://fdpm.tar.bz2" + +S = "${WORKDIR}/fdpm" + +do_compile() { + # Build shared library + cd ${S}/if + rm -rf libfdpm.so* + make all ARCH=arm + # Copy shared library for reference from other modules + cp -P ${S}/if/libfdpm.so* ${LIBSHARED} + cp -rf ${S}/include/*h ${STAGING_INCDIR} +} + +do_install() { + # Create destination folder + mkdir -p ${D}/usr/local/lib/ ${D}/usr/local/include/ + + # Copy shared library + cp -P ${S}/if/libfdpm.so* ${D}/usr/local/lib + cp -rf ${S}/include/*h ${D}/usr/local/include/ +} + +# Append function to clean extract source +do_cleansstate_prepend() { + bb.build.exec_func('do_clean_source', d) +} + +do_clean_source() { + rm -f ${LIBSHARED}/libfdpm.so* + rm -f ${STAGING_INCDIR}/fdpm_api.h + rm -f ${STAGING_INCDIR}/fdpm_drv.h + rm -f ${STAGING_INCDIR}/fdpm_if_fd.h + rm -f ${STAGING_INCDIR}/fdpm_if.h + rm -f ${STAGING_INCDIR}/fdpm_if_par.h + rm -f ${STAGING_INCDIR}/fdpm_if_priv.h + rm -f ${STAGING_INCDIR}/fdpm_public.h +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ +" + +FILES_${PN} = " \ + /usr/local/lib/libfdpm.so.* \ +" + +FILES_${PN}-dev = " \ + /usr/local/lib/libfdpm.so \ + /usr/local/include/*.h \ +" + +RPROVIDES_${PN} += "fdpm-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP_${PN} += "libdir" +INSANE_SKIP_${PN}-dev += "libdir" + +do_configure[noexec] = "1" + +python do_package_ipk_prepend () { + d.setVar('ALLOW_EMPTY', '1') +} diff --git a/meta-rcar-gen2/recipes-multimedia/fdpm-module/files/.gitkeep b/meta-rcar-gen2/recipes-multimedia/fdpm-module/files/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/fdpm-module/files/.gitkeep diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.0.0.bbappend b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.0.0.bbappend new file mode 100644 index 0000000..8a7128e --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.0.0.bbappend @@ -0,0 +1,26 @@ +require ../../include/gles-control.inc + +SRC_URI_rcar-gen2 = "git://github.com/renesas-devel/gst-omx.git;protocol=git;branch=RCAR-GEN2/1.0.0" +SRCREV_rcar-gen2 = "05563465faad99243ee2dd30547e3075eb8cf5e3" + +LIC_FILES_CHKSUM_remove_rcar-gen2 = " file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f" +LIC_FILES_CHKSUM_append_rcar-gen2 = " file://omx/gstomx.h;beginline=1;endline=22;md5=17e5f2943dace9e5cde4a8587a31e8f9" +S = "${WORKDIR}/git" + +do_configure() { + ./autogen.sh --noconfigure + oe_runconf +} + +DEPENDS_append_rcar-gen2 = " omx-user-module mmngrbuf-user-module" +EXTRA_OECONF_append_rcar-gen2 = " --with-omx-target=rcar --enable-experimental \ + '${@'--disable-dmabuf' if '${USE_GLES}' == '0' and '${USE_WAYLAND}' == '1' else ''}'" + +# Overwrite do_install[postfuncs] += " set_omx_core_name " +# because it will force the plugin to use bellagio instead of our config +revert_omx_core_name() { + sed -i -e "s;^core-name=.*;core-name=/usr/local/lib/libomxr_core.so;" "${D}/etc/xdg/gstomx.conf" +} +REVERT_OMX_CORE_NAME = "" +REVERT_OMX_CORE_NAME_rcar-gen2 = "revert_omx_core_name" +do_install[postfuncs] += "${REVERT_OMX_CORE_NAME}" diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.2.3.bbappend b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.2.3.bbappend new file mode 100644 index 0000000..ac9e52e --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.2.3.bbappend @@ -0,0 +1,26 @@ +require ../../include/gles-control.inc +require ../../include/multimedia-control.inc + +SRC_URI_rcar-gen2 = "git://github.com/renesas-devel/gst-plugins-bad.git;protocol=git;branch=RCAR-GEN2/1.2.3" +SRCREV_rcar-gen2 = "${@'eda7155f94981ace11b866fc02daca6ad4869221' \ + if '1' in '${USE_GLES_WAYLAND}' else 'c1f5e09ce341f3438fb601a852ee70e72d375646'}" +LIC_FILES_CHKSUM_remove_rcar-gen2 = "\ + file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607" + +S = "${WORKDIR}/git" + +do_configure() { + ./autogen.sh --noconfigure + oe_runconf +} + +# for wayland +PACKAGECONFIG_remove_rcar-gen2 = "${@'orc' if '1' in '${USE_GLES_WAYLAND}' else ''}" +PACKAGECONFIG_append_rcar-gen2 = " faad ${@base_contains('USE_GLES_WAYLAND', '1', 'wayland', '', d)}" + +# for lcb +DEPENDS_append_silk = " ${@base_conditional('USE_MULTIMEDIA', '1', 'faac', '', d)}" +PACKAGECONFIG_silk = " ${@base_conditional('USE_MULTIMEDIA', '1', 'faac', '', d)}" + +DEPENDS_append_porter = " ${@base_conditional('USE_MULTIMEDIA', '1', 'faac', '', d)}" +PACKAGECONFIG_porter = " ${@base_conditional('USE_MULTIMEDIA', '1', 'faac', '', d)}" diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-alt.conf b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-alt.conf new file mode 100644 index 0000000..b324cbe --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-alt.conf @@ -0,0 +1,2 @@ +input-device-name=/dev/video1 +output-device-name=/dev/video5 diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-gose.conf b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-gose.conf new file mode 100644 index 0000000..c534883 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-gose.conf @@ -0,0 +1,2 @@ +input-device-name=/dev/video2 +output-device-name=/dev/video6 diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-koelsch.conf b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-koelsch.conf new file mode 100644 index 0000000..c534883 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-koelsch.conf @@ -0,0 +1,2 @@ +input-device-name=/dev/video2 +output-device-name=/dev/video6 diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-lager.conf b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-lager.conf new file mode 100644 index 0000000..c534883 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-lager.conf @@ -0,0 +1,2 @@ +input-device-name=/dev/video2 +output-device-name=/dev/video6 diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-porter.conf b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-porter.conf new file mode 100644 index 0000000..b324cbe --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-porter.conf @@ -0,0 +1,2 @@ +input-device-name=/dev/video1 +output-device-name=/dev/video5 diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-silk.conf b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-silk.conf new file mode 100644 index 0000000..b324cbe --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/gstvspfilter-silk.conf @@ -0,0 +1,2 @@ +input-device-name=/dev/video1 +output-device-name=/dev/video5 diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.2.3.bbappend b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.2.3.bbappend new file mode 100644 index 0000000..eee4b59 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.2.3.bbappend @@ -0,0 +1,49 @@ +require ../../include/gles-control.inc + +SRC_URI_rcar-gen2 = "git://github.com/renesas-devel/gst-plugins-base.git;protocol=git;branch=RCAR-GEN2/1.2.3" +SRCREV_rcar-gen2 = "f5176e8e2e9b39ee96181c37cf61e2a90e56069b" +LIC_FILES_CHKSUM_remove_rcar-gen2 = "\ + file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607" + +S = "${WORKDIR}/git" + +do_configure() { + ./autogen.sh --noconfigure + oe_runconf +} + +# For Common +FILESEXTRAPATHS_prepend_rcar-gen2 := '${THISDIR}/${PN}:' +VSPFILTER_CONFIGS = " \ + file://gstvspfilter-alt.conf \ + file://gstvspfilter-gose.conf \ + file://gstvspfilter-koelsch.conf \ + file://gstvspfilter-lager.conf \ + file://gstvspfilter-porter.conf \ + file://gstvspfilter-silk.conf \ +" + +# For wayland +PACKAGECONFIG_remove_rcar-gen2 = "${@base_contains("DISTRO_FEATURES", "wayland", "orc", "", d)}" + +SRC_URI_append_rcar-gen2 = \ + "${@'${VSPFILTER_CONFIGS}' \ + if '${USE_WAYLAND}' == '1' else ''}" + +EXTRA_OECONF_append_rcar-gen2 = " \ + ${@'--enable-vspfilter' \ + if '${USE_WAYLAND}' == '1' else ''}" + +do_install_append_rcar-gen2() { + if [ '${USE_WAYLAND}' = '1' ] ; then + mkdir ${D}/etc/ + install -m644 ${WORKDIR}/gstvspfilter-${MACHINE}.conf ${D}/etc/gstvspfilter.conf + fi +} + +FILES_${PN}_append_rcar-gen2 = " \ + ${@'${datadir}/gst-plugins-base/1.0/* ${sysconfdir}/*.conf' \ + if '${USE_WAYLAND}' == '1' else ''}" + +# For x11 +# None diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.2.3.bbappend b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.2.3.bbappend new file mode 100644 index 0000000..573f71a --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.2.3.bbappend @@ -0,0 +1,12 @@ +SRC_URI_rcar-gen2 = "git://github.com/renesas-devel/gst-plugins-good.git;protocol=git;branch=RCAR-GEN2/1.2.3" +SRCREV_rcar-gen2 = "e752441fef9f70c97bb0976476fdaa6c7df27b6b" + +LIC_FILES_CHKSUM_remove_rcar-gen2 = "\ + file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607" + +S = "${WORKDIR}/git" + +do_configure() { + ./autogen.sh --noconfigure + oe_runconf +} diff --git a/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.2.3.bbappend b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.2.3.bbappend new file mode 100644 index 0000000..6d43b52 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.2.3.bbappend @@ -0,0 +1,12 @@ +SRC_URI_rcar-gen2 = "git://github.com/renesas-devel/gst-plugins-ugly.git;protocol=git;branch=RCAR-GEN2/1.2.3" +SRCREV_rcar-gen2 = "af884db954b53bf083ebc39e3a90b639f81513e1" +S = "${WORKDIR}/git" + +PACKAGECONFIG ??= " \ + a52dec lame mad mpeg2dec \ + " + +do_configure() { + ./autogen.sh --noconfigure + oe_runconf +} diff --git a/meta-rcar-gen2/recipes-multimedia/libomxil/libomxil_0.9.3.bbappend b/meta-rcar-gen2/recipes-multimedia/libomxil/libomxil_0.9.3.bbappend new file mode 100644 index 0000000..3be14f6 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/libomxil/libomxil_0.9.3.bbappend @@ -0,0 +1,3 @@ +do_populate_sysroot () { + rm -f ${D}/usr/include/*.h +} diff --git a/meta-rcar-gen2/recipes-multimedia/mmngr-module/files/.gitkeep b/meta-rcar-gen2/recipes-multimedia/mmngr-module/files/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/mmngr-module/files/.gitkeep diff --git a/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngr-tp-user-module.bb b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngr-tp-user-module.bb new file mode 100644 index 0000000..515f784 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngr-tp-user-module.bb @@ -0,0 +1,29 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "mmngr-kernel-module mmngr-user-module" +SRC_URI = "file://mmngr-tp-user.tar.bz2" + +S = "${WORKDIR}/mmngr" + +do_compile() { + # Build test kernel module + cd ${S} + make all ARCH=arm +} + +do_install() { + # Copy kernel test program + mkdir -p ${D}/usr/local/bin/ + cp ${S}/mmtp ${D}/usr/local/bin/ +} + +PACKAGES = "\ + ${PN} \ +" +FILES_${PN} = " \ + /usr/local/bin/mmtp \ +" + +RPROVIDES_${PN} += "mmngr-tp-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngr-user-module.bb b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngr-user-module.bb new file mode 100644 index 0000000..3205915 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngr-user-module.bb @@ -0,0 +1,65 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "mmngr-kernel-module" +PN = "mmngr-user-module" +S = "${WORKDIR}/mmngr" +SRC_URI = "file://mmngr.tar.bz2" + +do_compile() { + # Build shared library + cd ${S}/if + rm -rf ${S}/if/libmmngr.so* + make all ARCH=arm + # Copy shared library into shared folder + cp -P ${S}/if/libmmngr.so* ${LIBSHARED} +} + +do_install() { + mkdir -p ${D}/usr/local/lib/ ${D}/usr/local/include + + # Copy shared library + cp -P ${S}/if/libmmngr.so* ${D}/usr/local/lib/ + cd ${D}/usr/local/lib/ + # Copy shared header files + cp -f ${BUILDDIR}/include/mmngr_user_public.h ${D}/usr/local/include + cp -f ${BUILDDIR}/include/mmngr_user_private.h ${D}/usr/local/include +} + +# Append function to clean extract source +do_cleansstate_prepend() { + bb.build.exec_func('do_clean_source', d) +} + +do_clean_source() { + rm -f ${LIBSHARED}/libmmngr.so* + rm -Rf ${BUILDDIR}/include/mmngr_user_public.h + rm -Rf ${BUILDDIR}/include/mmngr_user_private.h +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ +" + +FILES_${PN} = " \ + /usr/local/lib/libmmngr.so.* \ +" + +FILES_${PN}-dev = " \ + /usr/local/include \ + /usr/local/include/*.h \ + /usr/local/lib \ + /usr/local/lib/libmmngr.so \ +" + +RPROVIDES_${PN} += "mmngr-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP_${PN} += "libdir" +INSANE_SKIP_${PN}-dev += "libdir" + +do_configure[noexec] = "1" + +python do_package_ipk_prepend () { + d.setVar('ALLOW_EMPTY', '1') +} diff --git a/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngrbuf-tp-user-module.bb b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngrbuf-tp-user-module.bb new file mode 100644 index 0000000..c07945d --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngrbuf-tp-user-module.bb @@ -0,0 +1,29 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "mmngrbuf-kernel-module mmngrbuf-user-module" +SRC_URI = "file://mmngrbuf-tp-user.tar.bz2" + +S = "${WORKDIR}/mmngrbuf" + +do_compile() { + # Build test kernel module + cd ${S} + make all ARCH=arm +} + +do_install() { + # Copy kernel test program + mkdir -p ${D}/usr/local/bin/ + cp ${S}/mmbuftp ${D}/usr/local/bin/ +} + +PACKAGES = "\ + ${PN} \ +" +FILES_${PN} = " \ + /usr/local/bin/mmbuftp \ +" + +RPROVIDES_${PN} += "mmngrbuf-tp-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngrbuf-user-module.bb b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngrbuf-user-module.bb new file mode 100644 index 0000000..d2f90e0 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/mmngr-module/mmngrbuf-user-module.bb @@ -0,0 +1,67 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "mmngrbuf-kernel-module" +PN = "mmngrbuf-user-module" +PR = "r0" +S = "${WORKDIR}/mmngrbuf" +SRC_URI = "file://mmngrbuf.tar.bz2" + + +do_compile() { + # Build shared library + cd ${S}/if + rm -rf ${S}/if/libmmngrbuf.so* + make all ARCH=arm + # Copy shared library into shared folder + cp -P ${S}/if/libmmngrbuf.so* ${LIBSHARED} +} + +do_install() { + mkdir -p ${D}/usr/local/lib/ ${D}/usr/local/include + + # Copy shared library + cp -P ${S}/if/libmmngrbuf.so* ${D}/usr/local/lib/ + cd ${D}/usr/local/lib/ + # Copy shared header files + cp -f ${BUILDDIR}/include/mmngr_buf_user_public.h ${D}/usr/local/include + cp -f ${BUILDDIR}/include/mmngr_buf_user_private.h ${D}/usr/local/include +} + +# Append function to clean extract source +do_cleansstate_prepend() { + bb.build.exec_func('do_clean_source', d) +} + +do_clean_source() { + rm -f ${LIBSHARED}/libmmngrbuf.so* + rm -Rf ${BUILDDIR}/include/mmngr_buf_user_public.h + rm -Rf ${BUILDDIR}/include/mmngr_buf_user_private.h +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ +" + +FILES_${PN} = " \ + /usr/local/lib/libmmngrbuf.so.* \ +" + +FILES_${PN}-dev = " \ + /usr/local/include \ + /usr/local/include/*.h \ + /usr/local/lib \ + /usr/local/lib/libmmngrbuf.so \ +" + +RPROVIDES_${PN} += "mmngrbuf-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP_${PN} += "libdir" +INSANE_SKIP_${PN}-dev += "libdir" + +do_configure[noexec] = "1" + +python do_package_ipk_prepend () { + d.setVar('ALLOW_EMPTY', '1') +} diff --git a/meta-rcar-gen2/recipes-multimedia/omx-module/files/.gitkeep b/meta-rcar-gen2/recipes-multimedia/omx-module/files/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/omx-module/files/.gitkeep diff --git a/meta-rcar-gen2/recipes-multimedia/omx-module/omx-user-module.bb b/meta-rcar-gen2/recipes-multimedia/omx-module/omx-user-module.bb new file mode 100644 index 0000000..f4f0c8b --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/omx-module/omx-user-module.bb @@ -0,0 +1,426 @@ +require ../../include/rcar-gen2-modules-common.inc +require ../../include/omx-components-control.inc + +LICENSE = "CLOSED" +DEPENDS = "mmngr-kernel-module mmngr-user-module \ + vspm-kernel-module vspm-user-module \ + s3ctl-kernel-module s3ctl-user-module \ + fdpm-kernel-module fdpm-user-module \ + uvcs-kernel-module" + +PR = "r0" +PV = "1.0" +PN = "omx-user-module" + +SRC_URI = "file://RTM0AC0000XCMCTL20SL32C.tar.bz2;name=file1 \ + file://RTM0AC0000XVCMND20SL32C.tar.bz2;name=file2 \ + file://RTM0AC0000XV264D20SL32C.tar.bz2;name=file3 \ + " +SRC_URI += '${@base_conditional( "USE_H263_DECODER", "1", " file://RTM0AC0000XV263D20SL32C.tar.bz2;name=file4", "", d )}' +SRC_URI += '${@base_conditional( "USE_MPEG2_DECODER", "1", " file://RTM0AC0000XVM2VD20SL32C.tar.bz2;name=file5", "", d )}' +SRC_URI += '${@base_conditional( "USE_MPEG4_DECODER", "1", " file://RTM0AC0000XVM4VD20SL32C.tar.bz2;name=file6", "", d )}' +SRC_URI += '${@base_conditional( "USE_DIVX_DECODER", "1", " file://RTM0AC0000XVDVXD20SL32C.tar.bz2;name=file7", "", d )}' +SRC_URI += '${@base_conditional( "USE_VC1_DECODER", "1", " file://RTM0AC0000XVVC1D20SL32C.tar.bz2;name=file8", "", d )}' +SRC_URI += '${@base_conditional( "USE_H264AVC_ENCODER", "1", " file://RTM0AC0000XV264E20SL32C.tar.bz2;name=file9", "", d )}' +SRC_URI += '${@base_conditional( "USE_VIDEO_COMMON_ENCODER", "1", " file://RTM0AC0000XVCMNE20SL32C.tar.bz2;name=file10", "", d )}' +SRC_URI += '${@base_conditional( "USE_AUDIO_COMMON", "1", " file://RTM0AC0000XACMND20SL32C.tar.bz2;name=file11", "", d )}' +SRC_URI += '${@base_conditional( "USE_AACP2_DECODER", "1", " file://RTM0AC0000XAAAPD20SL32C.tar.bz2;name=file12", "", d )}' +SRC_URI += '${@base_conditional( "USE_MP3_DECODER", "1", " file://RTM0AC0000XAMP3D20SL32C.tar.bz2;name=file13", "", d )}' +SRC_URI += '${@base_conditional( "USE_WMA_DECODER", "1", " file://RTM0AC0000XAWMAD20SL32C.tar.bz2;name=file14", "", d )}' +SRC_URI += '${@base_conditional( "USE_DDD_DECODER", "1", " file://RTM0AC0000XADD5D20SL32C.tar.bz2;name=file15", "", d )}' +SRC_URI += '${@base_conditional( "USE_ALAC_DECODER", "1", " file://RTM0AC0000XAALAD20SL32C.tar.bz2;name=file16", "", d )}' +SRC_URI += '${@base_conditional( "USE_FLAC_DECODER", "1", " file://RTM0AC0000XAFLAD20SL32C.tar.bz2;name=file17", "", d )}' +SRC_URI += '${@base_conditional( "USE_AAC_ENCODER", "1", " file://RTM0AC0000XAAACE20SL32C.tar.bz2;name=file18", "", d )}' +SRC_URI += '${@base_conditional( "ARMAACP2_MDW_DECODER", "1", " file://RTM0AC0000ADAAPMZ1SL32C.tar.bz2;name=file19", "", d )}' +SRC_URI += '${@base_conditional( "MP3_MDW_DECODER", "1", " file://RTM0AC0000ADMP3MZ1SL32C.tar.bz2;name=file20", "", d )}' +SRC_URI += '${@base_conditional( "WMA_MDW_DECODER", "1", " file://RTM0AC0000ADWMAMZ1SL32C.tar.bz2;name=file21", "", d )}' +SRC_URI += '${@base_conditional( "DDD_MDW_DECODER", "1", " file://RTM0AC0000ADDD5MZ1SL32C.tar.bz2;name=file22", "", d )}' +SRC_URI += '${@base_conditional( "ALAC_MDW_DECODER", "1", " file://RCG2ADALAMZ1SL32.tar.bz2;name=file23", "", d )}' +SRC_URI += '${@base_conditional( "FLAC_MDW_DECODER", "1", " file://RCG2ADFLAMZ1SL32.tar.bz2;name=file24", "", d )}' +SRC_URI += '${@base_conditional( "AAC_MDW_ENCODER", "1", " file://RTM0AC0000AEAACMZ1SL32C.tar.bz2;name=file25", "", d )}' + +LISTSRC = "RTM0AC0000XCMCTL20SL32C \ + RTM0AC0000XVCMND20SL32C \ + RTM0AC0000XV264D20SL32C" + +LISTSRC += '${@base_conditional( "USE_H263_DECODER", "1", "RTM0AC0000XV263D20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_MPEG2_DECODER", "1", "RTM0AC0000XVM2VD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_MPEG4_DECODER", "1", "RTM0AC0000XVM4VD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_DIVX_DECODER", "1", "RTM0AC0000XVDVXD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_VC1_DECODER", "1", "RTM0AC0000XVVC1D20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_H264AVC_ENCODER", "1", "RTM0AC0000XV264E20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_VIDEO_COMMON_ENCODER", "1", "RTM0AC0000XVCMNE20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_AUDIO_COMMON", "1", "RTM0AC0000XACMND20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_AACP2_DECODER", "1", "RTM0AC0000XAAAPD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_MP3_DECODER", "1", "RTM0AC0000XAMP3D20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_WMA_DECODER", "1", "RTM0AC0000XAWMAD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_DDD_DECODER", "1", "RTM0AC0000XADD5D20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_ALAC_DECODER", "1", "RTM0AC0000XAALAD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_FLAC_DECODER", "1", "RTM0AC0000XAFLAD20SL32C", "", d )}' +LISTSRC += '${@base_conditional( "USE_AAC_ENCODER", "1", "RTM0AC0000XAAACE20SL32C", "", d )}' + +MIDWARESRC = '${@base_conditional( "ARMAACP2_MDW_DECODER", "1", "RTM0AC0000ADAAPMZ1SL32C", "", d )}' +MIDWARESRC += '${@base_conditional( "MP3_MDW_DECODER", "1", "RTM0AC0000ADMP3MZ1SL32C", "", d )}' +MIDWARESRC += '${@base_conditional( "WMA_MDW_DECODER", "1", "RTM0AC0000ADWMAMZ1SL32C", "", d )}' +MIDWARESRC += '${@base_conditional( "DDD_MDW_DECODER", "1", "RTM0AC0000ADDD5MZ1SL32C", "", d )}' +MIDWARESRC += '${@base_conditional( "ALAC_MDW_DECODER", "1", "RCG2ADALAMZ1SL32", "", d )}' +MIDWARESRC += '${@base_conditional( "FLAC_MDW_DECODER", "1", "RCG2ADFLAMZ1SL32", "", d )}' +MIDWARESRC += '${@base_conditional( "AAC_MDW_ENCODER", "1", "RTM0AC0000AEAACMZ1SL32C", "", d )}' + +S = "${WORKDIR}/omx" + +do_unpack_append () { + bb.build.exec_func('do_collect_src', d) +} + +do_collect_src() { + cd ${WORKDIR} + mkdir -p ${S} + for dir in ${LISTSRC}; do + cp -rf ${dir}/Software/* ${S} + rm -rf ${dir} + done + cp -rf ${S}/OMXR/include ${S}/UDF_Linux + cp -rf ${S}/OMXR/lib/linux/linaro_4_7_3/* ${S}/OMXR/lib/ + rm -rf ${S}/OMXR/lib/linux/ + + # Colect audio midleware + mkdir -p ${S}/audio_mdw + for dir in ${MIDWARESRC}; do + cp -rf ${dir}/* ${S}/audio_mdw + rm -rf ${dir} + done +} + + +do_configure() { + cd ${S}/UDF_Linux + ./autogen.sh + ./configure --prefix=${D}/usr/local/ --host=arm-linux \ + CFLAGS="-I${BUILDDIR}/include -I${KERNELDIR}/include" \ + LDFLAGS="-L${LIBSHARED}" \ + OMXR_DEFAULT_CONFIG_FILE_NAME=/usr/local/config/omxr_config_base.txt +} + +do_compile() { + cd ${S}/UDF_Linux + make +} + +do_install() { + # Create share files + mkdir -p ${D}/usr/local/lib ${D}/usr/local/config + cd ${S}/UDF_Linux + make install + cp -rf ${S}/OMXR/config/*.txt ${D}/usr/local/config/ + cp -rf ${S}/UDF_Linux/include ${D}/usr/local/include + cp -rf ${S}/UDF_Linux/include/*.h ${STAGING_INCDIR} + + cd ${S}/OMXR/lib/ + + # OMX ctrl part + ln -sf libomxr_core.so.2.0.0 libomxr_core.so.2 + ln -sf libomxr_core.so.2.0.0 libomxr_core.so + + ln -sf libomxr_mc_cmn.so.2.0.0 libomxr_mc_cmn.so.2 + ln -sf libomxr_mc_cmn.so.2.0.0 libomxr_mc_cmn.so + + # Video (decode) common + ln -sf libomxr_mc_vcmn.so.2.0.0 libomxr_mc_vcmn.so.2 + ln -sf libomxr_mc_vcmn.so.2.0.0 libomxr_mc_vcmn.so + + ln -sf libomxr_mc_vdcmn.so.2.0.0 libomxr_mc_vdcmn.so.2 + ln -sf libomxr_mc_vdcmn.so.2.0.0 libomxr_mc_vdcmn.so + + ln -sf libuvcs_dec.so.1.0.0 libuvcs_dec.so.1 + ln -sf libuvcs_dec.so.1.0.0 libuvcs_dec.so + + ln -sf libvcp3_mcvd.so.1.0.0 libvcp3_mcvd.so.1 + ln -sf libvcp3_mcvd.so.1.0.0 libvcp3_mcvd.so + + # H264 Decoder + ln -sf libomxr_mc_h264d.so.2.0.0 libomxr_mc_h264d.so.2 + ln -sf libomxr_mc_h264d.so.2.0.0 libomxr_mc_h264d.so + + ln -sf libvcp3_avcd.so.1.0.0 libvcp3_avcd.so.1 + ln -sf libvcp3_avcd.so.1.0.0 libvcp3_avcd.so + + # H263 Decoder + if [ "X${USE_H263_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_h263d.so.2.0.0 libomxr_mc_h263d.so.2 + ln -sf libomxr_mc_h263d.so.2.0.0 libomxr_mc_h263d.so + + ln -sf libvcp3_hv3d.so.1.0.0 libvcp3_hv3d.so.1 + ln -sf libvcp3_hv3d.so.1.0.0 libvcp3_hv3d.so + fi + + # M2VD decoder + if [ "X${USE_MPEG2_DECODER}" = "X1" ] ; then + ln -sf libvcp3_m2vd.so.1.0.0 libvcp3_m2vd.so.1 + ln -sf libvcp3_m2vd.so.1 libvcp3_m2vd.so + + ln -sf libomxr_mc_m2vd.so.2.0.0 libomxr_mc_m2vd.so.2 + ln -sf libomxr_mc_m2vd.so.2 libomxr_mc_m2vd.so + fi + + # M4VD decoder + if [ "X${USE_MPEG4_DECODER}" = "X1" ] ; then + ln -sf libvcp3_m4vd.so.1.0.0 libvcp3_m4vd.so.1 + ln -sf libvcp3_m4vd.so.1 libvcp3_m4vd.so + + ln -sf libomxr_mc_m4vd.so.2.0.0 libomxr_mc_m4vd.so.2 + ln -sf libomxr_mc_m4vd.so.2 libomxr_mc_m4vd.so + fi + + # DIVX decoder + if [ "X${USE_DIVX_DECODER}" = "X1" ] ; then + ln -sf libvcp3_dvxd.so.1.0.0 libvcp3_dvxd.so.1 + ln -sf libvcp3_dvxd.so.1 libvcp3_dvxd.so + + ln -sf libomxr_mc_divxd.so.2.0.0 libomxr_mc_divxd.so.2 + ln -sf libomxr_mc_divxd.so.2 libomxr_mc_divxd.so + fi + + # VC1D decoder + if [ "X${USE_VC1_DECODER}" = "X1" ] ; then + ln -sf libvcp3_vc1d.so.1.0.0 libvcp3_vc1d.so.1 + ln -sf libvcp3_vc1d.so.1 libvcp3_vc1d.so + + ln -sf libomxr_mc_vc1d.so.2.0.0 libomxr_mc_vc1d.so.2 + ln -sf libomxr_mc_vc1d.so.2 libomxr_mc_vc1d.so + fi + + #Encoder + # H264E + if [ "X${USE_H264AVC_ENCODER}" = "X1" ] ; then + ln -sf libomxr_mc_h264e.so.2.0.0 libomxr_mc_h264e.so.2 + ln -sf libomxr_mc_h264e.so.2 libomxr_mc_h264e.so + + ln -sf libvcp3_avce.so.1.0.0 libvcp3_avce.so.1 + ln -sf libvcp3_avce.so.1.0.0 libvcp3_avce.so + fi + + ### Encoder common + if [ "X${USE_VIDEO_COMMON_ENCODER}" = "X1" ] ; then + ln -sf libomxr_mc_vecmn.so.2.0.0 libomxr_mc_vecmn.so.2 + ln -sf libomxr_mc_vecmn.so.2.0.0 libomxr_mc_vecmn.so + + ln -sf libuvcs_enc.so.1.0.0 libuvcs_enc.so.1 + ln -sf libuvcs_enc.so.1.0.0 libuvcs_enc.so + + ln -sf libvcp3_mcve.so.1.0.0 libvcp3_mcve.so.1 + ln -sf libvcp3_mcve.so.1.0.0 libvcp3_mcve.so + fi + + # audio common OMX + if [ "X${USE_AUDIO_COMMON}" = "X1" ] ; then + ln -sf libomxr_mc_acmn.so.2.0.0 libomxr_mc_acmn.so.2 + ln -sf libomxr_mc_acmn.so.2.0.0 libomxr_mc_acmn.so + fi + + # aacd OMX + if [ "X${USE_AACP2_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_aacd.so.2.0.0 libomxr_mc_aacd.so.2 + ln -sf libomxr_mc_aacd.so.2.0.0 libomxr_mc_aacd.so + fi + + # mp3 OMX + if [ "X${USE_MP3_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_mp3d.so.2.0.0 libomxr_mc_mp3d.so.2 + ln -sf libomxr_mc_mp3d.so.2.0.0 libomxr_mc_mp3d.so + fi + + # wma OMX + if [ "X${USE_WMA_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_wmad.so.2.0.0 libomxr_mc_wmad.so.2 + ln -sf libomxr_mc_wmad.so.2.0.0 libomxr_mc_wmad.so + fi + + # ddd OMX + if [ "X${USE_DDD_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_ddd.so.2.0.0 libomxr_mc_ddd.so.2 + ln -sf libomxr_mc_ddd.so.2.0.0 libomxr_mc_ddd.so + fi + + # alac OMX + if [ "X${USE_ALAC_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_alacd.so.2.0.0 libomxr_mc_alacd.so.2 + ln -sf libomxr_mc_alacd.so.2.0.0 libomxr_mc_alacd.so + fi + + # flac OMX + if [ "X${USE_FLAC_DECODER}" = "X1" ] ; then + ln -sf libomxr_mc_flacd.so.2.0.0 libomxr_mc_flacd.so.2 + ln -sf libomxr_mc_flacd.so.2.0.0 libomxr_mc_flacd.so + fi + + # aac enc omx + if [ "X${USE_AAC_ENCODER}" = "X1" ] ; then + ln -sf libomxr_mc_aace.so.2.0.0 libomxr_mc_aace.so.2 + ln -sf libomxr_mc_aace.so.2.0.0 libomxr_mc_aace.so + fi + + # Copy all the symbolic link and lib to destination + cp -Prf ${S}/OMXR/lib/* ${D}/usr/local/lib + + # Copy the audio midleware + # audio aacp2 midleware + if [ "X${ARMAACP2_MDW_DECODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libRSACPDLA_L.so.1.1 libRSACPDAL_L.so.1.1 + ln -sf libRSACPDLA_L.so.1.1 libRSACPDLA_L.so.1 + ln -sf libRSACPDLA_L.so.1.1 libRSACPDLA_L.so + ln -sf libRSACPDAL_L.so.1.1 libRSACPDAL_L.so.1 + ln -sf libRSACPDAL_L.so.1.1 libRSACPDAL_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/RSACPD_ADL.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/RSACPD_ADL.h ${STAGING_INCDIR} + fi + + if [ "X${MP3_MDW_DECODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libMP3DLA_L.so.1.4 libMP3DLA_L.so.1 + ln -sf libMP3DLA_L.so.1.4 libMP3DLA_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/mp3d_Lib.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/mp3d_Lib.h ${STAGING_INCDIR} + fi + + if [ "X${WMA_MDW_DECODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libWMASTDLA_L.so.1.3 libWMASTDLA_L.so.1 + ln -sf libWMASTDLA_L.so.1.3 libWMASTDLA_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/wmastd_Lib.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/wmastd_Lib.h ${STAGING_INCDIR} + fi + + if [ "X${DDD_MDW_DECODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libRSDACDLA_L.so.1.0 libRSDACDLA_L.so.1 + ln -sf libRSDACDLA_L.so.1.0 libRSDACDLA_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/RSDACD_ADL.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/RSDACD_ADL.h ${STAGING_INCDIR} + fi + + if [ "X${ALAC_MDW_DECODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libALACDLA_L.so.1.0 libALACDLA_L.so.1 + ln -sf libALACDLA_L.so.1.0 libALACDLA_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/alacd_Lib.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/alacd_Lib.h ${STAGING_INCDIR} + fi + + if [ "X${FLAC_MDW_DECODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libFLACDLA_L.so.1.1 libFLACDLA_L.so.1 + ln -sf libFLACDLA_L.so.1.1 libFLACDLA_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/flacd_Lib.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/flacd_Lib.h ${STAGING_INCDIR} + fi + + if [ "X${AAC_MDW_ENCODER}" = "X1" ] ; then + cd ${S}/audio_mdw + ln -sf libRSAACELA_L.so.2.1 libRSAACELA_L.so.2 + ln -sf libRSAACELA_L.so.2.1 libRSAACELA_L.so + cp -P ${S}/audio_mdw/*.so* ${D}/usr/local/lib/ + cp -P ${S}/audio_mdw/RSAACE_AAC.h ${D}/usr/local/include + cp -P ${S}/audio_mdw/RSAACE_AAC.h ${STAGING_INCDIR} + fi +} + +do_install_append() { + if [ "X${MACHINE}" = "Xsilk" -o "X${MACHINE}" = "Xporter" ] ; then + cd ${S}/OMXR/lib/ + + ln -sf libomxr_core.so.0.0.0 libomxr_core.so.2.0.0 + ln -sf libomxr_core.so.0.0.0 libomxr_core.so.0 + ln -sf libomxr_mc_cmn.so.0.0.0 libomxr_mc_cmn.so.2.0.0 + ln -sf libomxr_mc_h264d.so.0.0.0 libomxr_mc_h264d.so.2.0.0 + ln -sf libomxr_mc_h264d.so.0.0.0 libomxr_mc_h264d.so.0 + ln -sf libomxr_mc_h264e.so.0.0.0 libomxr_mc_h264e.so.2.0.0 + ln -sf libomxr_mc_h264e.so.0.0.0 libomxr_mc_h264e.so.0 + ln -sf libomxr_mc_vecmn.so.0.0.0 libomxr_mc_vecmn.so.2.0.0 + ln -sf libomxr_mc_vcmn.so.0.0.0 libomxr_mc_vcmn.so.2.0.0 + ln -sf libomxr_mc_vdcmn.so.0.0.0 libomxr_mc_vdcmn.so.2.0.0 + ln -sf libuvcs_dec.so.0.0.0 libuvcs_dec.so.1.0.0 + ln -sf libuvcs_enc.so.0.0.0 libuvcs_enc.so.1.0.0 + ln -sf libvcp3_avcd.so.0.0.0 libvcp3_avcd.so.1.0.0 + ln -sf libvcp3_avce.so.0.0.0 libvcp3_avce.so.1.0.0 + ln -sf libvcp3_mcvd.so.0.0.0 libvcp3_mcvd.so.1.0.0 + ln -sf libvcp3_mcve.so.0.0.0 libvcp3_mcve.so.1.0.0 + + # Copy all the symbolic link and lib to destination + cp -Prf ${S}/OMXR/lib/* ${D}/usr/local/lib + fi +} + +SYSROOT_PREPROCESS_FUNCS += "do_populate_share_lib" + +do_populate_share_lib () { + sysroot_stage_dir ${D}/usr/local/lib ${SYSROOT_DESTDIR}/usr/lib +} + +# Append function to clean extract source +CLEANFUNCS += 'do_clean_sharedfiles' + +do_clean_sharedfiles() { + rm -f ${LIBSHARED}/libomxr_*.so* + rm -f ${LIBSHARED}/libuvcs*.so* + rm -f ${LIBSHARED}/libvcp3_*.so* + rm -f ${STAGING_INCDIR}/OMX_*.h + rm -f ${STAGING_INCDIR}/OMXR_*.h + + rm -f ${LIBSHARED}/libRSACPDLA_L.so* + rm -f ${LIBSHARED}/libRSACPDAL_L.so* + rm -f ${STAGING_INCDIR}/RSACPD_ADL.h + + rm -f ${LIBSHARED}/libMP3DLA_L.so* + rm -f ${STAGING_INCDIR}/mp3d_Lib.h + + rm -f ${LIBSHARED}/libWMASTDLA_L.so* + rm -f ${STAGING_INCDIR}/wmastd_Lib.h + + rm -f ${LIBSHARED}/libRSDACDLA_L.so* + rm -f ${STAGING_INCDIR}/RSDACD_ADL.h + + rm -f ${LIBSHARED}/libALACDLA_L.so* + rm -f ${STAGING_INCDIR}/alacd_Lib.h + + rm -f ${LIBSHARED}/libFLACDLA_L.so* + rm -f ${STAGING_INCDIR}/flacd_Lib.h + + rm -f ${LIBSHARED}/libRSAACELA_L.so* + rm -f ${STAGING_INCDIR}/RSAACE_AAC.h +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ + ${PN}-staticdev \ +" + +FILES_${PN} = " \ + /usr/local/lib/*.so \ + /usr/local/lib/*.so.* \ + /usr/local/config/* \ +" + +FILES_${PN}-dev = " \ + /usr/local/include/* \ +" + +FILES_${PN}-staticdev = " \ + /usr/local/lib/*.a \ + /usr/local/lib/*.la \ +" + +INSANE_SKIP_${PN} += "rpaths" +INSANE_SKIP_${PN} += "dev-so" +INSANE_SKIP_${PN} += "libdir" +INSANE_SKIP_${PN}-dev += "libdir" +RPROVIDES_${PN} += "omx-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/packagegroups/packagegroup-rcar-gen2-multimedia.bb b/meta-rcar-gen2/recipes-multimedia/packagegroups/packagegroup-rcar-gen2-multimedia.bb new file mode 100644 index 0000000..688c6b7 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/packagegroups/packagegroup-rcar-gen2-multimedia.bb @@ -0,0 +1,69 @@ +require ../../include/gles-control.inc +require ../../include/multimedia-control.inc + +DESCRIPTION = "Package Group for multimedia of R-Car Gen2" +LICENSE = "CLOSED" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-rcar-gen2-multimedia \ + packagegroup-rcar-gen2-multimedia-tp \ + packagegroup-rcar-gen2-dtv \ +" + +MULTIMEDIA_PACKAGES ="\ + mmngr-kernel-module mmngr-user-module \ + mmngrbuf-kernel-module mmngrbuf-user-module \ + mmngrbuf-user-module-dev \ + fdpm-kernel-module fdpm-user-module \ + vspm-kernel-module vspm-user-module \ + s3ctl-kernel-module s3ctl-user-module \ + uvcs-kernel-module omx-user-module \ + libmemcpy \ +" + +RDEPENDS_packagegroup-rcar-gen2-multimedia = "\ + ${@ "${MULTIMEDIA_PACKAGES}" if "${USE_MULTIMEDIA}" == "1" else "" } \ + media-ctl \ + gstreamer1.0-meta-base \ + gstreamer1.0-meta-audio \ + gstreamer1.0-meta-video \ + gstreamer1.0-plugins-base-audioconvert \ + gstreamer1.0-plugins-base-audioresample \ + gstreamer1.0-plugins-base-playback \ + gstreamer1.0-plugins-base-videoconvert \ + gstreamer1.0-plugins-base-typefindfunctions \ + gstreamer1.0-plugins-base-videoscale \ + gstreamer1.0-plugins-good-avi \ + gstreamer1.0-plugins-good-audioparsers \ + gstreamer1.0-plugins-good-id3demux \ + gstreamer1.0-plugins-bad-faad \ + gstreamer1.0-plugins-bad-mpegtsdemux \ + gstreamer1.0-plugins-bad-debugutilsbad \ + ${@base_contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-omx gstreamer1.0-plugins-ugly-asf", "", d )} \ + ${@base_conditional("USE_GLES_WAYLAND", "1", "gstreamer1.0-plugins-base-vspfilter", "", d )} \ +" + +MULTIMEDIA_TEST_PACKAGES = "\ + ${MULTIMEDIA_PACKAGES} \ + mmngr-tp-user-module \ + mmngrbuf-tp-user-module \ + fdpm-tp-user-module \ + vspm-tp-user-module \ + s3ctl-tp-user-module \ +" + +RDEPENDS_packagegroup-rcar-gen2-multimedia-tp = "\ + ${@ '${MULTIMEDIA_TEST_PACKAGES}' if '${USE_MULTIMEDIA}' == '1' and '${USE_MULTIMEDIA_TEST}' == '1' else '' } \ +" + +DTV_PACKAGES = "\ + ${MULTIMEDIA_PACKAGES} \ + scu-kernel-module ssp-kernel-module \ + dtv \ +" + +RDEPENDS_packagegroup-rcar-gen2-dtv = "\ + ${@ '${DTV_PACKAGES}' if '${USE_DTV}' == '1' else '' } \ +" diff --git a/meta-rcar-gen2/recipes-multimedia/packagegroups/packagegroup-rcar-gen2-multimedia.bbappend b/meta-rcar-gen2/recipes-multimedia/packagegroups/packagegroup-rcar-gen2-multimedia.bbappend new file mode 100644 index 0000000..b74228d --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/packagegroups/packagegroup-rcar-gen2-multimedia.bbappend @@ -0,0 +1,17 @@ +PACKAGES_append_silk = " packagegroup-lcb-oss-codecs" +PACKAGES_append_porter = " packagegroup-lcb-oss-codecs" + +RDEPENDS_packagegroup-lcb-oss-codecs = "\ + libmad \ + lame \ + faac \ + faad2 \ + libvorbis \ + libogg \ + gstreamer1.0-plugins-ugly-mad \ + gstreamer1.0-plugins-ugly-lame \ + gstreamer1.0-plugins-bad-faac \ + gstreamer1.0-plugins-bad-faad \ + gstreamer1.0-plugins-base-ogg \ + gstreamer1.0-plugins-base-vorbis \ +" diff --git a/meta-rcar-gen2/recipes-multimedia/s3ctl-module/files/.gitkeep b/meta-rcar-gen2/recipes-multimedia/s3ctl-module/files/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/s3ctl-module/files/.gitkeep diff --git a/meta-rcar-gen2/recipes-multimedia/s3ctl-module/s3ctl-tp-user-module.bb b/meta-rcar-gen2/recipes-multimedia/s3ctl-module/s3ctl-tp-user-module.bb new file mode 100644 index 0000000..3fcc5ad --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/s3ctl-module/s3ctl-tp-user-module.bb @@ -0,0 +1,32 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "s3ctl-kernel-module s3ctl-user-module" +SRC_URI = "file://s3ctl-tp-user.tar.bz2" +S = "${WORKDIR}/s3ctl" + +do_compile() { + # Build user test program + cd ${S} + make all ARCH=arm +} + +do_install() { + # Create shared folder + mkdir -p ${D}/usr/local/bin/ + # Copy user test program + cp ${S}/s3tp ${D}/usr/local/bin/ +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ + ${PN}-dbg \ +" + +FILES_${PN} = " \ + /usr/local/bin/s3tp \ +" + +RPROVIDES_${PN} += "s3ctl-tp-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/s3ctl-module/s3ctl-user-module.bb b/meta-rcar-gen2/recipes-multimedia/s3ctl-module/s3ctl-user-module.bb new file mode 100644 index 0000000..ed02e0a --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/s3ctl-module/s3ctl-user-module.bb @@ -0,0 +1,64 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "s3ctl-kernel-module" +PN = "s3ctl-user-module" +PR = "r0" +SRC_URI = "file://s3ctl.tar.bz2" + +S = "${WORKDIR}/s3ctl" + +do_compile() { + # Build shared library + cd ${S}/if + rm -rf libs3ctl.so* + make all ARCH=arm + # Copy shared library for reference from other modules + cp -P ${S}/if/libs3ctl.so* ${LIBSHARED} +} + +do_install() { + # Create shared folder + mkdir -p ${D}/usr/local/lib/ ${D}/usr/local/include/ + # Copy share library + cp -P ${S}/if/libs3ctl.so* ${D}/usr/local/lib/ + # Copy shared header files + cp -f ${BUILDDIR}/include/s3ctl_user_public.h ${D}/usr/local/include/ + cp -f ${BUILDDIR}/include/s3ctl_user_private.h ${D}/usr/local/include/ +} + +# Append function to clean extract source +do_cleansstate_prepend() { + bb.build.exec_func('do_clean_source', d) +} + +do_clean_source() { + rm -f ${LIBSHARED}/libs3ctl.so* + rm -f ${BUILDDIR}/include/s3ctl_user_public.h + rm -f ${BUILDDIR}/include/s3ctl_user_private.h +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ +" + +FILES_${PN} = " \ + /usr/local/lib/libs3ctl.so.* \ +" + +FILES_${PN}-dev = " \ + /usr/local/lib/libs3ctl.so \ + /usr/local/include/*.h \ +" + +RPROVIDES_${PN} += "s3ctl-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP_${PN} += "libdir" +INSANE_SKIP_${PN}-dev += "libdir" + +do_configure[noexec] = "1" + +python do_package_ipk_prepend () { + d.setVar('ALLOW_EMPTY', '1') +} diff --git a/meta-rcar-gen2/recipes-multimedia/v4l2apps/media-ctl_git.bbappend b/meta-rcar-gen2/recipes-multimedia/v4l2apps/media-ctl_git.bbappend new file mode 100644 index 0000000..aeb591c --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/v4l2apps/media-ctl_git.bbappend @@ -0,0 +1,2 @@ +SRCREV = "114c1b274edc40e07e9b99a435d26438f5b99943" +PV = "0.0.1+git${SRCPV}" diff --git a/meta-rcar-gen2/recipes-multimedia/vspm-module/files/.gitkeep b/meta-rcar-gen2/recipes-multimedia/vspm-module/files/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/vspm-module/files/.gitkeep diff --git a/meta-rcar-gen2/recipes-multimedia/vspm-module/vspm-tp-user-module.bb b/meta-rcar-gen2/recipes-multimedia/vspm-module/vspm-tp-user-module.bb new file mode 100644 index 0000000..b7b97a0 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/vspm-module/vspm-tp-user-module.bb @@ -0,0 +1,29 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "vspm-user-module mmngr-user-module" +SRC_URI = "file://vspm-tp-user.tar.bz2" +S = "${WORKDIR}" + +do_compile() { + cd ${S}/vspm/ + make all ARCH=arm +} + +do_install() { + # Create destination folder + mkdir -p ${D}/usr/local/bin/ + + # Copy user test program + cp ${S}/vspm/vspm_tp ${D}/usr/local/bin/ +} + +PACKAGES = "\ + ${PN} \ +" +FILES_${PN} = " \ + /usr/local/bin/vspm_tp \ +" + +RPROVIDES_${PN} += "vspm-tp-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" diff --git a/meta-rcar-gen2/recipes-multimedia/vspm-module/vspm-user-module.bb b/meta-rcar-gen2/recipes-multimedia/vspm-module/vspm-user-module.bb new file mode 100644 index 0000000..3327861 --- /dev/null +++ b/meta-rcar-gen2/recipes-multimedia/vspm-module/vspm-user-module.bb @@ -0,0 +1,58 @@ +require ../../include/rcar-gen2-modules-common.inc + +LICENSE = "CLOSED" +DEPENDS = "vspm-kernel-module" +PN = "vspm-user-module" +PR = "r0" +SRC_URI = "file://vspm-user.tar.bz2" + +S = "${WORKDIR}" + +do_compile() { + # Build shared library + cd ${S}/vspm/if + rm -rf ${S}/vspm/if/libvspm.so* + make all ARCH=arm + # Copy shared library for reference from other modules + cp -P ${S}/vspm/if/libvspm.so* ${LIBSHARED} +} + +do_install() { + # Create destination folder + mkdir -p ${D}/usr/local/lib/ ${D}/usr/local/include + # Copy shared library + cp -P ${S}/vspm/if/libvspm.so* ${D}/usr/local/lib/ + # Copy shared header files + cp -f ${BUILDDIR}/include/vspm_public.h ${D}/usr/local/include + cp -f ${BUILDDIR}/include/vsp_drv.h ${D}/usr/local/include + cp -f ${BUILDDIR}/include/tddmac_drv.h ${D}/usr/local/include +} + +do_clean_source() { + rm -f ${LIBSHARED}/libvspm.so* + rm -f ${BUILDDIR}/include/vspm_public.h + rm -f ${BUILDDIR}/include/vsp_drv.h + rm -f ${BUILDDIR}/include/tddmac_drv.h +} + +PACKAGES = "\ + ${PN} \ + ${PN}-dev \ +" + +FILES_${PN} = " \ + /usr/local/lib/libvspm.so.* \ +" + +FILES_${PN}-dev = " \ + /usr/local/lib \ + /usr/local/lib/libvspm.so \ + /usr/local/lib/* \ + /usr/local/include \ + /usr/local/include/*.h \ +" + +RPROVIDES_${PN} += "vspm-user-module" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INSANE_SKIP_${PN} += "libdir" +INSANE_SKIP_${PN}-dev += "libdir" |