Commit bbfe53c9 authored by Otavio Salvador's avatar Otavio Salvador

gst-fsl-plugin: Update to 3.0.8 version

This release had many patches merged upstream and thus those are being
removed. Following patches were merged:

 - Link-with-the-Real-Time-Extension-lib.patch
 - fix-missing-sys-types-h.patch
 - v4lsink_back_compatible.patch
 - vss_build_failed.patch

A new runtime dependency for libfslparser has been added. This is need
to be available at rootfs but no code links to it explicitly so
gst-fsl-plugin needs to made it explicit.

The file, used in SRC_URI, is from 3.5.7-1.0.0 BSP but its contents
explicitly say it is a 3.0.8 release so we use the source version to
avoid supporting different version from different kernel releases.

Change-Id: Id71d436af78dc62f620107d64633bf1ebbdaefef
Signed-off-by: default avatarOtavio Salvador <otavio@ossystems.com.br>
parent b16affd5
# Copyright (C) 2011, 2012, 2013 Freescale Semiconductor
# Copyright (C) 2011-2013 Freescale Semiconductor
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "Gstreamer freescale plugins"
......@@ -45,7 +45,7 @@ PACKAGECONFIG[wmv9mpdec] +="--enable-wmv9mpdec,--disable-wmv9mpdec,${MSDEPENDS}"
PACKAGECONFIG[wmv78dec] +="--enable-wmv78dec,--disable-wmv78dec,${MSDEPENDS}"
FILES_${PN} = "${libdir}/gstreamer-0.10/*.so ${datadir}"
RDEPENDS_${PN} += "gst-plugins-good-id3demux"
RDEPENDS_${PN} += "gst-plugins-good-id3demux libfslparser"
FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la ${libdir}/pkgconfig/*.pc"
......
From f4f360d3858d3ac6a65ff754ada381f44827f0db Mon Sep 17 00:00:00 2001
From: Leonardo Sandoval <leonardo_gdl@yahoo.com.mx>
Date: Thu, 14 Feb 2013 23:37:09 -0600
Subject: [PATCH] Link with the Real-Time Extension lib
Upstream-Status: Pending
Signed-off-by: Leonardo Sandoval <leonardo.sandoval@freescale.com>
---
configure.ac | 5 +++++
src/misc/v4l_source/src/Makefile.am | 4 ++--
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 1ad4d22..f332d38 100755
--- a/configure.ac
+++ b/configure.ac
@@ -173,6 +173,11 @@ AC_CHECK_LIB(ipu, mxc_ipu_lib_task_init, [IPU_LIBS=-lipu], [echo "No libipu arou
AC_SUBST(IPU_CFLAGS)
AC_SUBST(IPU_LIBS)
+dnl of the POSIX Real-Time Extensions.
+AC_CHECK_LIB(rt, clock_gettime)
+AC_SUBST(RT_CFLAGS)
+AC_SUBST(RT_LIBS)
+
FSL_MM_CORE_CFLAGS=`$PKG_CONFIG --cflags libfslaudiocodec 2>/dev/null`
FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslvideocodec 2>/dev/null`
FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslparser 2>/dev/null`
diff --git a/src/misc/v4l_source/src/Makefile.am b/src/misc/v4l_source/src/Makefile.am
index b80d27e..490e441 100755
--- a/src/misc/v4l_source/src/Makefile.am
+++ b/src/misc/v4l_source/src/Makefile.am
@@ -7,8 +7,8 @@ endif
plugin_LTLIBRARIES = libmfw_gst_v4lsrc.la
libmfw_gst_v4lsrc_la_SOURCES = mfw_gst_v4lsrc.c
-libmfw_gst_v4lsrc_la_CFLAGS = $(GST_BASE_CFLAGS) -fno-omit-frame-pointer $(IPU_CFLAGS) -D$(PLATFORM) -I$(FBHEADER_PATH) -I. -I../../../../inc/plugin -I../../../../libs/gstbufmeta
-libmfw_gst_v4lsrc_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-$(GST_MAJORMINOR) -lgstinterfaces-$(GST_MAJORMINOR) ../../../../libs/libgstfsl-@GST_MAJORMINOR@.la
+libmfw_gst_v4lsrc_la_CFLAGS = $(GST_BASE_CFLAGS) -fno-omit-frame-pointer $(IPU_CFLAGS) -D$(PLATFORM) -I$(FBHEADER_PATH) -I. -I../../../../inc/plugin -I../../../../libs/gstbufmeta $(RT_CFLAGS)
+libmfw_gst_v4lsrc_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-$(GST_MAJORMINOR) -lgstinterfaces-$(GST_MAJORMINOR) ../../../../libs/libgstfsl-@GST_MAJORMINOR@.la $(RT_LIBS)
libmfw_gst_v4lsrc_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
noinst_HEADERS = mfw_gst_v4lsrc.h
--
1.7.5.4
Fix a build failure due missing uint definiton
Upstream-Status: Pending
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Index: gst-fsl-plugins-3.0.5/src/misc/v4l_sink/src/mfw_gst_fb.c
===================================================================
--- gst-fsl-plugins-3.0.5.orig/src/misc/v4l_sink/src/mfw_gst_fb.c
+++ gst-fsl-plugins-3.0.5/src/misc/v4l_sink/src/mfw_gst_fb.c
@@ -39,6 +39,7 @@
#include <fcntl.h>
#include <sys/ioctl.h>
+#include <sys/types.h>
//#if ((!defined (_MX233)) && (!defined (_MX28)) && (!defined (_MX50)))
//#include <linux/mxcfb.h>
//#else
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/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)
# 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)"
# Copyright (C) 2012-2013 Freescale Semiconductor
# Released under the MIT license (see COPYING.MIT for the terms)
require gst-fsl-plugin.inc
SRC_URI[md5sum] = "fe298c831e107ae5b93df05c4c29bb65"
SRC_URI[sha256sum] = "6c3215f24dedabf97ad6a7bd5c8d088b01dc4cd4792c56e0df353ae03adb35ff"
# FIXME: Inspecting the source code the content is in fact 3.0.8
SRC_URI = "${FSL_MIRROR}/gst-fsl-plugins-3.5.7-1.0.0.tar.gz"
S = "${WORKDIR}/gst-fsl-plugins-3.5.7-1.0.0"
SRC_URI_append += "file://configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch"
COMPATIBLE_MACHINE = "(mx28|mx5|mx6)"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment