From c5a78637d2e0dec5810f70b991f2382906b4fe92 Mon Sep 17 00:00:00 2001 From: Daiane Angolini Date: Thu, 16 May 2013 12:33:33 -0300 Subject: [PATCH] gst-fsl-plugin: Update to version 3.0.7 The 3.0.7 version is compatible with MX28, MX53 and MX6 SoCs so we move them all to this release. Change-Id: I3ebf1c4ad6d02e2886450bc9c3dcfb1df98b6160 Signed-off-by: Daiane Angolini --- .../gst-plugins/gst-fsl-plugin.inc | 14 +-- ...-pkg-config-sysroot-when-checking-fo.patch | 58 ++++++++++++ .../v4lsink_back_compatible.patch | 90 +++++++++++++++++++ .../gst-fsl-plugin/vss_build_failed.patch | 16 ++++ .../gst-plugins/gst-fsl-plugin_2.0.3.bb | 17 ---- .../gst-plugins/gst-fsl-plugin_3.0.5.bb | 19 ---- .../gst-plugins/gst-fsl-plugin_3.0.6.bb | 19 ---- .../gst-plugins/gst-fsl-plugin_3.0.7.bb | 16 ++++ 8 files changed, 187 insertions(+), 62 deletions(-) create mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch create mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch create mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch delete mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb delete mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb delete mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb create mode 100644 meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc index 04f02b05..264beb2d 100644 --- a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc +++ b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc @@ -1,21 +1,21 @@ -# Copyright (C) 2011, 2012 Freescale Semiconductor +# Copyright (C) 2011, 2012, 2013 Freescale Semiconductor # Released under the MIT license (see COPYING.MIT for the terms) DESCRIPTION = "Gstreamer freescale plugins" LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1" SECTION = "multimedia" -DEPENDS = "gstreamer gst-plugins-base imx-lib" -INC_PR = "r9" + +DEPENDS = "gstreamer gst-plugins-base libfslcodec libfslparser" +DEPENDS_append_mx5 = " imx-lib" +DEPENDS_append_mx6 = " imx-lib libfslvpuwrap" LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ file://COPYING-LGPL-2;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ file://COPYING-LGPL-2.1;md5=fbc093901857fcd118f065f900982c24" -PACKAGE_NAME ?= "${PN}" - -S = "${WORKDIR}/${PACKAGE_NAME}-${PV}" +S = "${WORKDIR}/gst-fsl-plugins-${PV}" -SRC_URI = "${FSL_MIRROR}/${PACKAGE_NAME}-${PV}.tar.gz" +SRC_URI = "${FSL_MIRROR}/gst-fsl-plugins-${PV}.tar.gz" inherit autotools pkgconfig diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch new file mode 100644 index 00000000..cab9ff49 --- /dev/null +++ b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch @@ -0,0 +1,58 @@ +From 6f75a9f4ad108c1f4a3dff4dd08def174ab83a69 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Tue, 21 May 2013 16:43:31 -0300 +Subject: [PATCH] configure.ac: Use pkg-config sysroot when checking for soname + +Upstream-Status: Pending + +Signed-off-by: Otavio Salvador +--- + configure.ac | 12 +++++------- + 1 file changed, 5 insertions(+), 7 deletions(-) + +diff --git a/configure.ac b/configure.ac +index e4cdb86..c12ceb4 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -16,7 +16,7 @@ AC_DEFUN([FIND_PARSER_SONAME], + [ + AC_MSG_CHECKING([for lib_$1_parser_$2_elinux.3.0.so soname]) + path=`$PKG_CONFIG --variable=libdir libfslparser` +- SONAME=$( $CC -print-file-name=$path/lib_$1_parser_$2_elinux.so | \ ++ SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/lib_$1_parser_$2_elinux.so | \ + while read output; do objdump -p $output | \ + grep "SONAME" | \ + sed -e 's/ \+SONAME \+//'; done 2> /dev/null ) +@@ -27,16 +27,15 @@ AC_DEFUN([FIND_PARSER_SONAME], + else + AC_MSG_RESULT([$SONAME]) + fi +- apath=`echo $path | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'` +- $1_$2_SONAME=$apath/$SONAME ++ $1_$2_SONAME=$path/$SONAME + AC_SUBST($1_$2_SONAME) + ]) + + AC_DEFUN([FIND_ACODEC_SONAME], + [ + AC_MSG_CHECKING([for lib_$1_wrap_$2_elinux.so soname]) +- path=`$PKG_CONFIG --variable=libdir libfslaudiocodec | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'` +- SONAME=$( $CC -print-file-name=$path/wrap/lib_$1_wrap_$2_elinux.so | \ ++ path=`$PKG_CONFIG --variable=libdir libfslaudiocodec` ++ SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/wrap/lib_$1_wrap_$2_elinux.so | \ + while read output; do objdump -p $output | \ + grep "SONAME" | \ + sed -e 's/ \+SONAME \+//'; done 2> /dev/null ) +@@ -48,8 +47,7 @@ AC_DEFUN([FIND_ACODEC_SONAME], + AC_MSG_RESULT([$SONAME]) + fi + +- apath=`echo $path | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'` +- $1_$2_SONAME=$apath/wrap/$SONAME ++ $1_$2_SONAME=$path/wrap/$SONAME + AC_SUBST($1_$2_SONAME) + ]) + +-- +1.8.1 + diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch new file mode 100644 index 00000000..fecc01e7 --- /dev/null +++ b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch @@ -0,0 +1,90 @@ +Make v4lsink backward compatible + +Upstream-Status: Pending + +diff --git a/src/misc/v4l_sink/src/mfw_gst_v4lsink.c b/src/misc/v4l_sink/src/mfw_gst_v4lsink.c +index c9ec887..da2bac1 100644 +--- a/src/misc/v4l_sink/src/mfw_gst_v4lsink.c ++++ b/src/misc/v4l_sink/src/mfw_gst_v4lsink.c +@@ -310,6 +310,9 @@ mfw_gst_v4l2sink_query_support_formats () + + ret = TRUE; + ++ if(fmtdesc.index == 0) ++ ret = FALSE; ++ + fail: + return ret; + +@@ -2170,19 +2173,60 @@ mfw_gst_v4lsink_base_init (gpointer g_class) + GstCaps *capslist; + GstPadTemplate *sink_template = NULL; + +- mfw_gst_v4l2sink_query_support_formats (); +- /* make a list of all available caps */ +- capslist = gst_caps_new_empty (); ++ if(!mfw_gst_v4l2sink_query_support_formats ()) { ++ // failed query caps, use default setting ++ gint i; ++ guint32 formats[] = { ++ GST_MAKE_FOURCC ('I', '4', '2', '0'), ++ GST_MAKE_FOURCC ('Y', 'V', '1', '2'), ++ GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'), ++ GST_MAKE_FOURCC ('Y', 'U', 'Y', 'V'), ++ GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'), ++ GST_MAKE_FOURCC ('N', 'V', '1', '2'), ++ GST_MAKE_FOURCC ('4', '2', '2', 'P'), ++ GST_MAKE_FOURCC ('Y', '4', '2', 'B') + +- MfwV4lFmtMap * map = g_v4lfmt_maps; ++ }; + +- while (map->mime){ +- if (map->enable){ +- GstStructure * structure = gst_structure_from_string(map->mime, NULL); +- gst_caps_append_structure (capslist, structure); +- } +- map++; +- }; ++ /* make a list of all available caps */ ++ capslist = gst_caps_new_empty (); ++ for (i = 0; i < G_N_ELEMENTS (formats); i++) { ++ gst_caps_append_structure (capslist, ++ gst_structure_new ("video/x-raw-yuv", ++ "format", ++ GST_TYPE_FOURCC, ++ formats[i], "width", ++ GST_TYPE_INT_RANGE, 1, ++ G_MAXINT, "height", ++ GST_TYPE_INT_RANGE, 1, ++ G_MAXINT, "framerate", ++ GST_TYPE_FRACTION_RANGE, ++ 0, 1, G_MAXINT, 1, ++ NULL)); ++ } ++ /* Add RGB support */ ++ gst_caps_append_structure (capslist, ++ gst_structure_new ("video/x-raw-rgb", ++ "bpp", GST_TYPE_INT_RANGE, ++ 1, 32, "depth", ++ GST_TYPE_INT_RANGE, 1, 32, ++ NULL)); ++ ++ } ++ else { ++ /* make a list of all available caps */ ++ capslist = gst_caps_new_empty (); ++ ++ MfwV4lFmtMap * map = g_v4lfmt_maps; ++ ++ while (map->mime){ ++ if (map->enable){ ++ GstStructure * structure = gst_structure_from_string(map->mime, NULL); ++ gst_caps_append_structure (capslist, structure); ++ } ++ map++; ++ }; ++ } + + sink_template = gst_pad_template_new ("sink", + GST_PAD_SINK, GST_PAD_ALWAYS, capslist); diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch new file mode 100644 index 00000000..c0592343 --- /dev/null +++ b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch @@ -0,0 +1,16 @@ +diff --git a/libs/Makefile.am b/libs/Makefile.am +index e9d3d54..89f79be 100755 +--- a/libs/Makefile.am ++++ b/libs/Makefile.am +@@ -36,6 +36,11 @@ endif + + + libgstfsl_@GST_MAJORMINOR@_la_CFLAGS = $(GST_BASE_CFLAGS) $(IPU_CFLAGS) -I../inc/common ++ ++if PLATFORM_IS_MX5X ++libgstfsl_@GST_MAJORMINOR@_la_CFLAGS += -DIPULIB ++endif ++ + libgstfsl_@GST_MAJORMINOR@_la_LDFLAGS = -version-info @GSTMXLIBS_VERSION@ + libgstfsl_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS) + diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb deleted file mode 100644 index f16e6c61..00000000 --- a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright (C) 2011, 2012 Freescale Semicondutor -# Released under the MIT license (see COPYING.MIT for the terms) - -require gst-fsl-plugin.inc -DEPENDS += "fsl-mm-codeclib fsl-mm-flv-codeclib fsl-mm-mp3enc-codeclib" -RDEPENDS_${PN} = "fsl-mm-codeclib fsl-mm-flv-codeclib fsl-mm-mp3enc-codeclib" - -PR = "${INC_PR}.5" - -SRC_URI += "file://fix_segment_fault_in_v4lsink_for_yocto.patch \ - file://fix-missing-sys-types-h.patch \ - file://Use-librarys-SONAME-in-dlopen.patch" - -SRC_URI[md5sum] = "036a8e86031b0670f41b10796e268f9e" -SRC_URI[sha256sum] = "ee024e6fe94ce309b10dc89ab247d1bbcf8ae9cc8006178c96101ce2d4d164a0" - -COMPATIBLE_MACHINE = "(mx5)" diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb deleted file mode 100644 index 36fbe41a..00000000 --- a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (C) 2012-2013 Freescale Semicondutor -# Released under the MIT license (see COPYING.MIT for the terms) - -require gst-fsl-plugin.inc - -DEPENDS += "libfslcodec libfslvpuwrap libfslparser" - -PR = "${INC_PR}.3" - -SRC_URI += "file://fix-missing-sys-types-h.patch \ - file://Link-with-the-Real-Time-Extension-lib.patch \ - " - -PACKAGE_NAME = "gst-fsl-plugins" - -SRC_URI[md5sum] = "fd7c9db129cbcc4dc79b7dd832061594" -SRC_URI[sha256sum] = "546deb407993f726ef4e140f5bd734d612d5f8872c832ac820957f667f22306e" - -COMPATIBLE_MACHINE = "(mx6)" diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb deleted file mode 100644 index 77baa9aa..00000000 --- a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (C) 2012-2013 Freescale Semicondutor -# Released under the MIT license (see COPYING.MIT for the terms) - -require gst-fsl-plugin.inc - -DEPENDS = "virtual/kernel gstreamer gst-plugins-base libfslcodec libfslparser" - -PR = "${INC_PR}.1" - -SRC_URI += "file://fix-missing-sys-types-h.patch \ - file://Link-with-the-Real-Time-Extension-lib.patch \ - " - -PACKAGE_NAME = "gst-fsl-plugins" - -SRC_URI[md5sum] = "5416a727e8b0bd94eec077ac7d70aae7" -SRC_URI[sha256sum] = "fdb0b5ab964f607a93664412702a131931da8ef0b557597cbf161c3d9c9d0c12" - -COMPATIBLE_MACHINE = "(mx28)" diff --git a/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb new file mode 100644 index 00000000..097b8cbd --- /dev/null +++ b/meta-fsl-arm/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb @@ -0,0 +1,16 @@ +# Copyright (C) 2012-2013 Freescale Semicondutor +# Released under the MIT license (see COPYING.MIT for the terms) + +require gst-fsl-plugin.inc + +SRC_URI[md5sum] = "08be9263c609b90e3b3e2e3aa888cd29" +SRC_URI[sha256sum] = "f3cd4a51d1eb60c21219d8d94daa832e47fc51d8f4618bb79cdf36bcca0a0f7c" + +SRC_URI_append += "file://fix-missing-sys-types-h.patch \ + file://Link-with-the-Real-Time-Extension-lib.patch \ + file://vss_build_failed.patch \ + file://configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch \ + file://v4lsink_back_compatible.patch \ + " + +COMPATIBLE_MACHINE = "(mx28|mx5|mx6)" -- 2.40.1