From 31428bdf2867bbffaf6e810c05cebffb536b90a6 Mon Sep 17 00:00:00 2001 From: Marcel Ziswiler Date: Fri, 8 Jun 2018 15:08:42 +0200 Subject: linux-driver-package, linux-toradex_3.10.40, libgstomx-1.0: l4t r21.7 Update to NVIDIA's latest Linux for Tegra aka L4T R21.7: https://developer.nvidia.com/linux-tegra-r217 The following libraries got updated: 4094b811241593224a89a5020e0bef7a08914dea */usr/lib/arm-linux-gnueabihf/tegra/libglx.so 157e8271ba925d1dc7405c4ebaad1b8b8b3f1312 */usr/lib/xorg/modules/drivers/nvidia_drv.so c1d9de2b619110534437850335c06408648e263b */usr/lib/arm-linux-gnueabihf/tegra/libnvodm_imager.so 2a712cc736f0cfc694e1ae44603bb1c95fc0873e */usr/lib/arm-linux-gnueabihf/tegra/libnvmmlite_video.so 25514ded098387ac0260586392308144d6e659fa */usr/lib/arm-linux-gnueabihf/tegra/libnvmm_camera_v3.so 4c2528fa906e1ff8702a9e1cad2b63d261bd2c16 */usr/lib/arm-linux-gnueabihf/tegra/libnvodm_query.so 28ace2c204408e58444497f7fc32a7f6852f98a9 */usr/lib/arm-linux-gnueabihf/tegra/libnvomx.so 4094b811241593224a89a5020e0bef7a08914dea */usr/lib/xorg/modules/extensions/libglx.so Signed-off-by: Marcel Ziswiler Acked-by: Stefan Agner --- .../files/r21.7.0-sources-gstomx1_src.patch | 71 ++++++++++++++++++++++ .../libgstomx-1.0/libgstomx-1.0_21.6.0.bb | 43 ------------- .../libgstomx-1.0/libgstomx-1.0_21.7.0.bb | 44 ++++++++++++++ 3 files changed, 115 insertions(+), 43 deletions(-) create mode 100644 recipes-multimedia/libgstomx-1.0/files/r21.7.0-sources-gstomx1_src.patch delete mode 100644 recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.6.0.bb create mode 100644 recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.7.0.bb (limited to 'recipes-multimedia') diff --git a/recipes-multimedia/libgstomx-1.0/files/r21.7.0-sources-gstomx1_src.patch b/recipes-multimedia/libgstomx-1.0/files/r21.7.0-sources-gstomx1_src.patch new file mode 100644 index 0000000..aa4c6d5 --- /dev/null +++ b/recipes-multimedia/libgstomx-1.0/files/r21.7.0-sources-gstomx1_src.patch @@ -0,0 +1,71 @@ +diff -Naur r21.6.0-sources-gstomx1_src-gst-omx1/omx/gstomxvideosink.c r21.7.0-sources-gstomx1_src-gst-omx1/omx/gstomxvideosink.c +--- r21.6.0-sources-gstomx1_src-gst-omx1/omx/gstomxvideosink.c 2017-10-14 03:23:25.000000000 +0200 ++++ r21.7.0-sources-gstomx1_src-gst-omx1/omx/gstomxvideosink.c 2018-05-29 22:13:29.000000000 +0200 +@@ -942,6 +942,32 @@ + return TRUE; + } + ++static OMX_ERRORTYPE ++gst_omx_set_stride_alignment (GstOmxVideoSink * self, ++ guint32 align) ++{ ++ OMX_INDEXTYPE eIndex; ++ OMX_ERRORTYPE eError; ++ ++ eError = gst_omx_component_get_index (self->sink, ++ (char *) NVX_INDEX_CONFIG_VIDEOSTRIDEALIGN, ++ &eIndex); ++ ++ if (eError == OMX_ErrorNone) { ++ NVX_CONFIG_VIDEO_STRIDEALIGN oStride; ++ ++ GST_OMX_INIT_STRUCT (&oStride); ++ ++ eError = gst_omx_component_get_config (self->sink, eIndex, &oStride); ++ ++ if (eError == OMX_ErrorNone) { ++ oStride.nAlign = (unsigned long) align; ++ eError = gst_omx_component_set_config (self->sink, eIndex, &oStride); ++ } ++ } ++ return eError; ++} ++ + static void + gst_omx_video_sink_check_nvfeatures (GstOmxVideoSink * self, GstCaps * caps) + { +@@ -950,6 +976,13 @@ + if (gst_caps_features_contains (feature, "memory:NVMM")) { + self->hw_path = TRUE; + } ++ ++ if (!self->hw_path) { ++ if (gst_omx_set_stride_alignment (self, 4) ++ != OMX_ErrorNone) { ++ g_warning ("Failed to set stride alignment.\n"); ++ } ++ } + } + + static OMX_ERRORTYPE +@@ -1087,6 +1120,20 @@ + min = MAX (port_def.nBufferCountMin, 4); + port_def.nBufferCountActual = min; + ++ switch (info.finfo->format) { ++ case GST_VIDEO_FORMAT_I420: ++ port_def.format.video.eColorFormat = OMX_COLOR_FormatYUV420Planar; ++ break; ++ case GST_VIDEO_FORMAT_NV12: ++ port_def.format.video.eColorFormat = OMX_COLOR_FormatYUV420SemiPlanar; ++ break; ++ default: ++ GST_ERROR_OBJECT (self, "Unsupported format %s", ++ gst_video_format_to_string (info.finfo->format)); ++ return FALSE; ++ break; ++ } ++ + GST_DEBUG_OBJECT (self, "Setting inport port definition"); + + if (gst_omx_port_update_port_definition (self->sink_in_port, diff --git a/recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.6.0.bb b/recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.6.0.bb deleted file mode 100644 index 41056f1..0000000 --- a/recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.6.0.bb +++ /dev/null @@ -1,43 +0,0 @@ -DESCRIPTION = "NVIDIA Linux Driver Packages" -HOMEPAGE = "https://developer.nvidia.com/" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI = " \ - http://developer.download.nvidia.com/embedded/L4T/r21_Release_v5.0/source/gstomx1_src.tbz2 \ - file://r21.6.0-sources-gstomx1_src.patch \ - file://gstomx-1.0.patch \ -" - -SRC_URI[md5sum] = "d5714a9533b210b30ef0e97e28ebc77d" -SRC_URI[sha256sum] = "b1c62a41467f2ff6661a3ba7d0e30e85e7ed126005f67b39ff6ebf2d704fd222" - -DEPENDS += " libgstnvegl libffi glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base libpcre libxml2 zlib " -DEPENDS += " virtual/egl virtual/mesa virtual/libgles2 wayland gdbm drm " - -S = "${WORKDIR}/gstomx1_src/gst-omx1" - -inherit autotools pkgconfig - -EXTRA_OECONF = " --with-omx-target=tegra --disable-static-plugins" - -CXXFLAGS += " -I${S}/omx/openmax " -CFLAGS += " -I${S}/omx/openmax " - -do_configure_prepend() { - export NOCONFIGURE="true" - export GST_EGL_LIBS="-lgstnvegl-1.0 -lEGL -lX11 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0" - export GST_EGL_CFLAGS="-I${STAGING_INCDIR}/libdrm " -# export GST_EGL_CFLAGS="-pthread -I${STAGING_INCDIR}/gstreamer-1.0 -I${STAGING_INCDIR}/libdrm -I${STAGING_INCDIR}/glib-2.0 -I${STAGING_LIBDIR}/glib-2.0/include" -} - -FILES_${PN}-dbg = " \ - /usr/src/debug/* \ - /usr/lib/gstreamer-1.0/.debug/* \ - /usr/lib/.debug/* \ -" - -FILES_${PN} = " \ - /usr/lib/gstreamer-1.0/libgstomx.la \ - /usr/lib/gstreamer-1.0/libgstomx.so \ -" diff --git a/recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.7.0.bb b/recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.7.0.bb new file mode 100644 index 0000000..0e57dd4 --- /dev/null +++ b/recipes-multimedia/libgstomx-1.0/libgstomx-1.0_21.7.0.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "NVIDIA Linux Driver Packages" +HOMEPAGE = "https://developer.nvidia.com/" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = " \ + http://developer.download.nvidia.com/embedded/L4T/r21_Release_v5.0/source/gstomx1_src.tbz2 \ + file://r21.6.0-sources-gstomx1_src.patch \ + file://r21.7.0-sources-gstomx1_src.patch \ + file://gstomx-1.0.patch \ +" + +SRC_URI[md5sum] = "d5714a9533b210b30ef0e97e28ebc77d" +SRC_URI[sha256sum] = "b1c62a41467f2ff6661a3ba7d0e30e85e7ed126005f67b39ff6ebf2d704fd222" + +DEPENDS += " libgstnvegl libffi glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base libpcre libxml2 zlib " +DEPENDS += " virtual/egl virtual/mesa virtual/libgles2 wayland gdbm drm " + +S = "${WORKDIR}/gstomx1_src/gst-omx1" + +inherit autotools pkgconfig + +EXTRA_OECONF = " --with-omx-target=tegra --disable-static-plugins" + +CXXFLAGS += " -I${S}/omx/openmax " +CFLAGS += " -I${S}/omx/openmax " + +do_configure_prepend() { + export NOCONFIGURE="true" + export GST_EGL_LIBS="-lgstnvegl-1.0 -lEGL -lX11 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0" + export GST_EGL_CFLAGS="-I${STAGING_INCDIR}/libdrm " +# export GST_EGL_CFLAGS="-pthread -I${STAGING_INCDIR}/gstreamer-1.0 -I${STAGING_INCDIR}/libdrm -I${STAGING_INCDIR}/glib-2.0 -I${STAGING_LIBDIR}/glib-2.0/include" +} + +FILES_${PN}-dbg = " \ + /usr/src/debug/* \ + /usr/lib/gstreamer-1.0/.debug/* \ + /usr/lib/.debug/* \ +" + +FILES_${PN} = " \ + /usr/lib/gstreamer-1.0/libgstomx.la \ + /usr/lib/gstreamer-1.0/libgstomx.so \ +" -- cgit v1.2.3