aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRonan Le Martret <ronan.lemartret@iot.bzh>2017-02-24 10:06:50 +0100
committerRonan Le Martret <ronan.lemartret@iot.bzh>2017-03-19 12:25:48 +0100
commit0cce4038199887f3772a438d57f6c74ead7e0cd8 (patch)
treeb46ac65fa408e89d6cf693bf2974f3b3da561500
parent92dac58d4f9731316ca50674f67a77f0690cb092 (diff)
[rcar-gen3] Backported gstreamer from poky krogoth
* the Renesas rcar gen3 v2.16 need gstreamer recipes 1.6.3 from krogoth Bug-AGL: SPEC-471 Change-Id: I1ce10935aac45b3f7711ec1033187ba74b1f921c Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/README.md3
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/files/0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/files/0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Add-error-signal-emission-for-missing-plugins.patch252
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Fix-pause-play.patch107
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/filechooser.patch54
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gst-player.desktop10
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gtk2.patch71
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player_git.bb39
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-plugins-package.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gst-plugins-package.inc)11
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc)32
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav/0001-Disable-yasm-for-libav-when-disable-yasm.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-Disable-yasm-for-libav-when-disable-yasm.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav/workaround-to-build-gst-libav-for-i586-with-gcc.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav/workaround-to-build-gst-libav-for-i586-with-gcc.patch)2
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_1.6.3.bb (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.5.bb)14
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_git.bb38
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-meta-base.bb (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb)7
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc)8
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx/0001-omx-fixed-type-error-in-printf-call.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx/0001-omx-fixed-type-error-in-printf-call.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_1.2.0.bb (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.2.0.bb)1
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_git.bb25
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc)116
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-glimagesink-Downrank-to-marginal.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-glimagesink-Downrank-to-marginal.patch)4
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch27
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0002-glplugin-glwindow-fix-memory-leak-of-navigation-thre.patch35
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/avoid-including-sys-poll.h-directly.patch30
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/configure-allow-to-disable-libssh2.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/configure-allow-to-disable-libssh2.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/ensure-valid-sentinels-for-gst_structure_get-etc.patch86
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch28
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_1.6.3.bb28
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_git.bb65
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base.inc50
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch)13
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch)26
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch28
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-ssaparse-enhance-SSA-text-lines-parsing.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-ssaparse-enhance-SSA-text-lines-parsing.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0004-subparse-set-need_segment-after-sink-pad-received-GS.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-subparse-set-need_segment-after-sink-pad-received-GS.patch)0
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0005-convertframe-Support-video-crop-when-convert-frame.patch143
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/encodebin-Need-more-buffers-in-output-queue-for-bett.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/encodebin-Need-more-buffers-in-output-queue-for-bett.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/get-caps-from-src-pad-when-query-caps.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/get-caps-from-src-pad-when-query-caps.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch47
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_1.6.3.bb25
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_git.bb27
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good.inc)38
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/avoid-including-sys-poll.h-directly.patch44
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/ensure-valid-sentinel-for-gst_structure_get.patch40
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_1.6.3.bb (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.4.5.bb)10
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_git.bb28
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly.inc)15
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_1.6.3.bb13
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_git.bb41
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins.inc40
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server.inc (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc)5
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server/0001-Don-t-hardcode-libtool-name-when-using-introspection.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-Don-t-hardcode-libtool-name-when-using-introspection.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server_1.6.2.bb6
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0.inc58
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0/0001-Fix-crash-with-gst-inspect.patch (renamed from meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-Fix-crash-with-gst-inspect.patch)0
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_1.6.3.bb14
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_git.bb30
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch41
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.5.bb17
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base.inc42
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-basetextoverlay-make-memory-copy-when-video-buffer-s.patch129
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-video-frame-Don-t-ref-buffers-twice-when-mapping.patch26
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-gstplaysink-don-t-set-async-of-custom-text-sink-to-f.patch31
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-video-frame-Add-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch87
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-videofilter-Use-new-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch69
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event-if.patch37
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event2.patch49
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event3.patch31
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch54
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/handle-audio-video-decoder-error.patch64
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/taglist-not-send-to-down-stream-if-all-the-frame-cor.patch57
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videobuffer_updata_alignment_update.patch53
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videoencoder-Keep-sticky-events-around-when-doing-a-soft-.patch46
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bb33
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/decrease_asteriskh263_rank.patch25
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.4.5.bb10
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc68
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.4.5.bb6
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0.inc40
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-gstinfo-Shorten-__FILE__-on-all-platforms.patch55
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0002-basesink-Fix-QoS-lateness-checking-if-subclass-imple.patch70
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0003-basesink-Shouldn-t-drop-buffer-when-sync-false.patch30
-rwxr-xr-xmeta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/inputselector-sticky-events-haven-t-send-out-when-ac-1-4-1.patch167
-rw-r--r--meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0_1.4.5.bb19
87 files changed, 1713 insertions, 1477 deletions
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/README.md b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/README.md
new file mode 100644
index 000000000..11070fc96
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/README.md
@@ -0,0 +1,3 @@
+# back port from poky
+## gstreamer
+ src: poky/meta/recipes-multimedia/gstreamer/ ae9b341ecfcc60e970f29cfe04306411ad26c0cf
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/files/0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/files/0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch
index 2cab87f9e..2cab87f9e 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/files/0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/files/0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Add-error-signal-emission-for-missing-plugins.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Add-error-signal-emission-for-missing-plugins.patch
new file mode 100644
index 000000000..712d46daa
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Add-error-signal-emission-for-missing-plugins.patch
@@ -0,0 +1,252 @@
+From d64c7edb66f4a64ff49c4306cf77fd269b7079ab Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <jussi.kukkonen@intel.com>
+Date: Mon, 16 Mar 2015 13:45:30 +0200
+Subject: [PATCH] Add error signal emission for missing plugins
+
+Add a missing plugins error signal to gst-player. Note that this error
+does not necessarily mean the playback has completely failed, but in
+practice the user experience will be bad (think, e.g. of a mp4 file
+where H.264 codec is missing: AAC playback still works...).
+
+Use the signal in gtk-play to show a infobar if plugins are missing.
+
+Submitted upstream at https://github.com/sdroege/gst-player/pull/11
+
+Upstream-Status: Submitted
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+---
+ configure.ac | 2 +-
+ gtk/gtk-play.c | 54 +++++++++++++++++++++++++++++++++++++++++++++-
+ lib/gst/player/gstplayer.c | 22 +++++++++++++++++++
+ lib/gst/player/gstplayer.h | 3 ++-
+ 4 files changed, 78 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 90ab74c..6cdb4eb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -53,7 +53,7 @@ AC_SUBST(LT_AGE)
+ PKG_PROG_PKG_CONFIG
+
+ PKG_CHECK_MODULES(GLIB, [glib-2.0 gobject-2.0])
+-PKG_CHECK_MODULES(GSTREAMER, [gstreamer-1.0 >= 1.4 gstreamer-video-1.0 >= 1.4])
++PKG_CHECK_MODULES(GSTREAMER, [gstreamer-1.0 >= 1.4 gstreamer-video-1.0 >= 1.4 gstreamer-pbutils-1.0])
+
+ GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
+ AC_SUBST(GLIB_PREFIX)
+diff --git a/gtk/gtk-play.c b/gtk/gtk-play.c
+index b92773b..e2b605a 100644
+--- a/gtk/gtk-play.c
++++ b/gtk/gtk-play.c
+@@ -30,6 +30,8 @@ typedef struct
+ GtkWidget *prev_button, *next_button;
+ GtkWidget *seekbar;
+ GtkWidget *video_area;
++ GtkWidget *info_label;
++ GtkWidget *info_bar;
+ GtkWidget *volume_button;
+ gulong seekbar_value_changed_signal_id;
+ gboolean playing;
+@@ -141,6 +143,13 @@ play_pause_clicked_cb (GtkButton * button, GtkPlay * play)
+ }
+
+ static void
++clear_missing_plugins (GtkPlay * play)
++{
++ gtk_label_set_text (GTK_LABEL (play->info_label), "");
++ gtk_widget_hide (play->info_bar);
++}
++
++static void
+ skip_prev_clicked_cb (GtkButton * button, GtkPlay * play)
+ {
+ GList *prev;
+@@ -155,6 +164,7 @@ skip_prev_clicked_cb (GtkButton * button, GtkPlay * play)
+
+ gtk_widget_set_sensitive (play->next_button, TRUE);
+ gst_player_set_uri (play->player, prev->data);
++ clear_missing_plugins (play);
+ gst_player_play (play->player);
+ set_title (play, prev->data);
+ gtk_widget_set_sensitive (play->prev_button, g_list_previous (prev) != NULL);
+@@ -175,6 +185,7 @@ skip_next_clicked_cb (GtkButton * button, GtkPlay * play)
+
+ gtk_widget_set_sensitive (play->prev_button, TRUE);
+ gst_player_set_uri (play->player, next->data);
++ clear_missing_plugins (play);
+ gst_player_play (play->player);
+ set_title (play, next->data);
+ gtk_widget_set_sensitive (play->next_button, g_list_next (next) != NULL);
+@@ -193,10 +204,16 @@ volume_changed_cb (GtkScaleButton * button, gdouble value, GtkPlay * play)
+ gst_player_set_volume (play->player, value);
+ }
+
++void
++info_bar_response_cb (GtkInfoBar * bar, gint response, GtkPlay * play)
++{
++ gtk_widget_hide (GTK_WIDGET (bar));
++}
++
+ static void
+ create_ui (GtkPlay * play)
+ {
+- GtkWidget *controls, *main_hbox, *main_vbox;
++ GtkWidget *controls, *main_hbox, *main_vbox, *info_bar, *content_area;
+
+ play->window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ g_signal_connect (G_OBJECT (play->window), "delete-event",
+@@ -208,6 +225,20 @@ create_ui (GtkPlay * play)
+ g_signal_connect (play->video_area, "realize",
+ G_CALLBACK (video_area_realize_cb), play);
+
++ play->info_bar = gtk_info_bar_new ();
++ gtk_info_bar_set_message_type (GTK_INFO_BAR (play->info_bar),
++ GTK_MESSAGE_WARNING);
++ //gtk_info_bar_set_show_close_button (GTK_INFO_BAR (play->info_bar),
++ // TRUE);
++ gtk_widget_set_no_show_all (play->info_bar, TRUE);
++ g_signal_connect (play->info_bar, "response",
++ G_CALLBACK (info_bar_response_cb), play);
++
++ content_area = gtk_info_bar_get_content_area (GTK_INFO_BAR (play->info_bar));
++ play->info_label = gtk_label_new ("");
++ gtk_container_add (GTK_CONTAINER (content_area), play->info_label);
++ gtk_widget_show (play->info_label);
++
+ /* Unified play/pause button */
+ play->play_pause_button =
+ gtk_button_new_from_icon_name ("media-playback-pause",
+@@ -258,6 +289,7 @@ create_ui (GtkPlay * play)
+
+ main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
+ gtk_box_pack_start (GTK_BOX (main_vbox), main_hbox, TRUE, TRUE, 0);
++ gtk_box_pack_start (GTK_BOX (main_vbox), play->info_bar, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (main_vbox), controls, FALSE, FALSE, 0);
+ gtk_container_add (GTK_CONTAINER (play->window), main_vbox);
+
+@@ -322,6 +354,7 @@ eos_cb (GstPlayer * unused, GtkPlay * play)
+ gtk_widget_set_sensitive (play->next_button, g_list_next (next) != NULL);
+
+ gst_player_set_uri (play->player, next->data);
++ clear_missing_plugins (play);
+ gst_player_play (play->player);
+ set_title (play, next->data);
+ } else {
+@@ -330,6 +363,24 @@ eos_cb (GstPlayer * unused, GtkPlay * play)
+ }
+ }
+
++static void
++error_cb (GstPlayer * player, GError * err, GtkPlay * play)
++{
++ char *message;
++
++ if (g_error_matches (err, gst_player_error_quark (),
++ GST_PLAYER_ERROR_MISSING_PLUGIN)) {
++ // add message to end of any existing message: there may be
++ // multiple missing plugins.
++ message = g_strdup_printf ("%s%s. ",
++ gtk_label_get_text (GTK_LABEL (play->info_label)), err->message);
++ gtk_label_set_text (GTK_LABEL (play->info_label), message);
++ g_free (message);
++
++ gtk_widget_show (play->info_bar);
++ }
++}
++
+ int
+ main (gint argc, gchar ** argv)
+ {
+@@ -422,6 +473,7 @@ main (gint argc, gchar ** argv)
+ g_signal_connect (play.player, "video-dimensions-changed",
+ G_CALLBACK (video_dimensions_changed_cb), &play);
+ g_signal_connect (play.player, "end-of-stream", G_CALLBACK (eos_cb), &play);
++ g_signal_connect (play.player, "error", G_CALLBACK (error_cb), &play);
+
+ /* We have file(s) that need playing. */
+ set_title (&play, g_list_first (play.uris)->data);
+diff --git a/lib/gst/player/gstplayer.c b/lib/gst/player/gstplayer.c
+index bd682d9..78e7ba1 100644
+--- a/lib/gst/player/gstplayer.c
++++ b/lib/gst/player/gstplayer.c
+@@ -47,6 +47,7 @@
+
+ #include <gst/gst.h>
+ #include <gst/video/video.h>
++#include <gst/pbutils/missing-plugins.h>
+
+ GST_DEBUG_CATEGORY_STATIC (gst_player_debug);
+ #define GST_CAT_DEFAULT gst_player_debug
+@@ -238,6 +239,7 @@ gst_player_class_init (GstPlayerClass * klass)
+ g_signal_new ("video-dimensions-changed", G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS, 0, NULL,
+ NULL, NULL, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
++
+ }
+
+ static void
+@@ -619,6 +621,21 @@ error_cb (GstBus * bus, GstMessage * msg, gpointer user_data)
+ g_mutex_unlock (&self->priv->lock);
+ }
+
++static void
++element_cb (GstBus * bus, GstMessage * msg, gpointer user_data)
++{
++ GstPlayer *self = GST_PLAYER (user_data);
++
++ if (gst_is_missing_plugin_message (msg)) {
++ gchar *desc;
++
++ desc = gst_missing_plugin_message_get_description (msg);
++ emit_error (self, g_error_new (GST_PLAYER_ERROR,
++ GST_PLAYER_ERROR_MISSING_PLUGIN, "Missing plugin '%s'", desc));
++ g_free (desc);
++ }
++}
++
+ static gboolean
+ eos_dispatch (gpointer user_data)
+ {
+@@ -1059,6 +1076,8 @@ gst_player_main (gpointer data)
+ NULL, NULL);
+ g_source_attach (bus_source, self->priv->context);
+
++ g_signal_connect (G_OBJECT (bus), "message::element",
++ G_CALLBACK (element_cb), self);
+ g_signal_connect (G_OBJECT (bus), "message::error", G_CALLBACK (error_cb),
+ self);
+ g_signal_connect (G_OBJECT (bus), "message::eos", G_CALLBACK (eos_cb), self);
+@@ -1560,6 +1579,7 @@ gst_player_error_get_type (void)
+ static gsize id = 0;
+ static const GEnumValue values[] = {
+ {C_ENUM (GST_PLAYER_ERROR_FAILED), "GST_PLAYER_ERROR_FAILED", "failed"},
++ {C_ENUM (GST_PLAYER_ERROR_MISSING_PLUGIN), "GST_PLAYER_ERROR_MISSING_PLUGIN", "missing-plugin"},
+ {0, NULL, NULL}
+ };
+
+@@ -1577,6 +1597,8 @@ gst_player_error_get_name (GstPlayerError error)
+ switch (error) {
+ case GST_PLAYER_ERROR_FAILED:
+ return "failed";
++ case GST_PLAYER_ERROR_MISSING_PLUGIN:
++ return "missing-plugin";
+ }
+
+ g_assert_not_reached ();
+diff --git a/lib/gst/player/gstplayer.h b/lib/gst/player/gstplayer.h
+index c438513..35fb5bb 100644
+--- a/lib/gst/player/gstplayer.h
++++ b/lib/gst/player/gstplayer.h
+@@ -44,7 +44,8 @@ GType gst_player_error_get_type (void);
+ #define GST_TYPE_PLAYER_ERROR (gst_player_error_get_type ())
+
+ typedef enum {
+- GST_PLAYER_ERROR_FAILED = 0
++ GST_PLAYER_ERROR_FAILED = 0,
++ GST_PLAYER_ERROR_MISSING_PLUGIN
+ } GstPlayerError;
+
+ const gchar *gst_player_error_get_name (GstPlayerError error);
+--
+2.1.4
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Fix-pause-play.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Fix-pause-play.patch
new file mode 100644
index 000000000..783c42ad7
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/Fix-pause-play.patch
@@ -0,0 +1,107 @@
+Fix pause/play
+
+The current player state is now notified via the state-changed signal,
+and in the GTK UI it was only used to keep track of the desired state.
+
+This is a backport of upstream commit 738479c7a0.
+
+Upstream-Status: Backport
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
+---
+ gtk/gtk-play.c | 8 ++++++--
+ lib/gst/player/gstplayer.c | 12 ------------
+ lib/gst/player/gstplayer.h | 2 --
+ 3 files changed, 6 insertions(+), 16 deletions(-)
+
+diff --git a/gtk/gtk-play.c b/gtk/gtk-play.c
+index 6e7a098..e2b605a 100644
+--- a/gtk/gtk-play.c
++++ b/gtk/gtk-play.c
+@@ -34,6 +34,7 @@ typedef struct
+ GtkWidget *info_bar;
+ GtkWidget *volume_button;
+ gulong seekbar_value_changed_signal_id;
++ gboolean playing;
+ } GtkPlay;
+
+ /* Compat stubs */
+@@ -118,12 +119,13 @@ play_pause_clicked_cb (GtkButton * button, GtkPlay * play)
+ {
+ GtkWidget *image;
+
+- if (gst_player_is_playing (play->player)) {
++ if (play->playing) {
+ gst_player_pause (play->player);
+ image =
+ gtk_image_new_from_icon_name ("media-playback-start",
+ GTK_ICON_SIZE_BUTTON);
+ gtk_button_set_image (GTK_BUTTON (play->play_pause_button), image);
++ play->playing = FALSE;
+ } else {
+ gchar *title;
+
+@@ -136,6 +138,7 @@ play_pause_clicked_cb (GtkButton * button, GtkPlay * play)
+ title = gst_player_get_uri (play->player);
+ set_title (play, title);
+ g_free (title);
++ play->playing = TRUE;
+ }
+ }
+
+@@ -335,7 +338,7 @@ video_dimensions_changed_cb (GstPlayer * unused, gint width, gint height,
+ static void
+ eos_cb (GstPlayer * unused, GtkPlay * play)
+ {
+- if (gst_player_is_playing (play->player)) {
++ if (play->playing) {
+ GList *next = NULL;
+ gchar *uri;
+
+@@ -452,6 +455,7 @@ main (gint argc, gchar ** argv)
+ }
+
+ play.player = gst_player_new ();
++ play.playing = TRUE;
+
+ g_object_set (play.player, "dispatch-to-main-context", TRUE, NULL);
+
+diff --git a/lib/gst/player/gstplayer.c b/lib/gst/player/gstplayer.c
+index 069b284..78e7ba1 100644
+--- a/lib/gst/player/gstplayer.c
++++ b/lib/gst/player/gstplayer.c
+@@ -1422,18 +1422,6 @@ gst_player_set_uri (GstPlayer * self, const gchar * val)
+ g_object_set (self, "uri", val, NULL);
+ }
+
+-gboolean
+-gst_player_is_playing (GstPlayer * self)
+-{
+- gboolean val;
+-
+- g_return_val_if_fail (GST_IS_PLAYER (self), FALSE);
+-
+- g_object_get (self, "is-playing", &val, NULL);
+-
+- return val;
+-}
+-
+ GstClockTime
+ gst_player_get_position (GstPlayer * self)
+ {
+diff --git a/lib/gst/player/gstplayer.h b/lib/gst/player/gstplayer.h
+index 6933dd7..35fb5bb 100644
+--- a/lib/gst/player/gstplayer.h
++++ b/lib/gst/player/gstplayer.h
+@@ -93,8 +93,6 @@ gchar * gst_player_get_uri (GstPlayer * player);
+ void gst_player_set_uri (GstPlayer * player,
+ const gchar * uri);
+
+-gboolean gst_player_is_playing (GstPlayer * player);
+-
+ GstClockTime gst_player_get_position (GstPlayer * player);
+ GstClockTime gst_player_get_duration (GstPlayer * player);
+
+--
+2.1.4
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/filechooser.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/filechooser.patch
new file mode 100644
index 000000000..7bf1b034b
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/filechooser.patch
@@ -0,0 +1,54 @@
+Upstream-Status: Submitted
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 43d4b19ab611d844156e26c4840cc54ddb73ae03 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Thu, 26 Feb 2015 17:17:05 +0000
+Subject: [PATCH] gtk-play: show a file chooser if no URIs were passed
+
+---
+ gtk/gtk-play.c | 28 ++++++++++++++++++++++++++--
+ 1 file changed, 26 insertions(+), 2 deletions(-)
+
+diff --git a/gtk/gtk-play.c b/gtk/gtk-play.c
+index f015077..9766a72 100644
+--- a/gtk/gtk-play.c
++++ b/gtk/gtk-play.c
+@@ -319,8 +319,32 @@ main (gint argc, gchar ** argv)
+ // FIXME: Add support for playlists and stuff
+ /* Parse the list of the file names we have to play. */
+ if (!file_names) {
+- g_print ("Usage: %s FILE(s)|URI(s)\n", APP_NAME);
+- return 1;
++ GtkWidget *chooser;
++ int res;
++
++ chooser = gtk_file_chooser_dialog_new ("Select files to play", NULL,
++ GTK_FILE_CHOOSER_ACTION_OPEN,
++ "_Cancel", GTK_RESPONSE_CANCEL,
++ "_Open", GTK_RESPONSE_ACCEPT,
++ NULL);
++ g_object_set (chooser,
++ "local-only", FALSE,
++ "select-multiple", TRUE,
++ NULL);
++
++ res = gtk_dialog_run (GTK_DIALOG (chooser));
++ if (res == GTK_RESPONSE_ACCEPT) {
++ GSList *l;
++
++ l = gtk_file_chooser_get_uris (GTK_FILE_CHOOSER (chooser));
++ while (l) {
++ play.uris = g_list_append (play.uris, l->data);
++ l = g_slist_delete_link (l, l);
++ }
++ } else {
++ return 0;
++ }
++ gtk_widget_destroy (chooser);
+ } else {
+ guint i;
+
+--
+1.7.10.4
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gst-player.desktop b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gst-player.desktop
new file mode 100644
index 000000000..9fd207b38
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gst-player.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Media Player
+Comment=Basic media player
+Icon=audio-player
+TryExec=gtk-play
+Exec=gtk-play
+StartupNotify=true
+Terminal=false
+Type=Application
+Categories=GTK;AudioVideo;
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gtk2.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gtk2.patch
new file mode 100644
index 000000000..2cd18bbc9
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player/gtk2.patch
@@ -0,0 +1,71 @@
+As the rest of Sato is GTK+ 2, patch gtk-play to use GTK+ 2. When the rest of
+Sato has been ported to GTK+ 3 this patch can be dropped.
+
+Upstream-Status: Inappropriate
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+
+diff --git a/configure.ac b/configure.ac
+index b8af13b..90ab74c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -60,7 +60,7 @@ AC_SUBST(GLIB_PREFIX)
+ GST_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-1.0`"
+ AC_SUBST(GST_PREFIX)
+
+-PKG_CHECK_MODULES(GTK, [gtk+-3.0], [have_gtk="yes"], [have_gtk="no"])
++PKG_CHECK_MODULES(GTK, [gtk+-2.0], [have_gtk="yes"], [have_gtk="no"])
+ AM_CONDITIONAL(HAVE_GTK, test "x$have_gtk" != "xno")
+
+ GOBJECT_INTROSPECTION_CHECK([1.31.1])
+diff --git a/gtk/gtk-play.c b/gtk/gtk-play.c
+index f015077..954d6fb 100644
+--- a/gtk/gtk-play.c
++++ b/gtk/gtk-play.c
+@@ -34,6 +34,46 @@ typedef struct
+ gulong seekbar_value_changed_signal_id;
+ } GtkPlay;
+
++/* Compat stubs */
++GtkWidget *
++gtk_box_new (GtkOrientation orientation,
++ gint spacing)
++{
++ switch (orientation) {
++ case GTK_ORIENTATION_HORIZONTAL:
++ return gtk_hbox_new (FALSE, spacing);
++ case GTK_ORIENTATION_VERTICAL:
++ return gtk_vbox_new (FALSE, spacing);
++ }
++}
++
++GtkWidget*
++gtk_button_new_from_icon_name (const gchar *icon_name,
++ GtkIconSize size)
++{
++ GtkWidget *button;
++ GtkWidget *image;
++
++ image = gtk_image_new_from_icon_name (icon_name, size);
++ button = g_object_new (GTK_TYPE_BUTTON,
++ "image", image,
++ NULL);
++ return button;
++}
++
++GtkWidget *
++gtk_scale_new_with_range (GtkOrientation orientation,
++ gdouble min,
++ gdouble max,
++ gdouble step)
++{
++ switch (orientation) {
++ case GTK_ORIENTATION_HORIZONTAL:
++ return gtk_hscale_new_with_range (min, max, step);
++ case GTK_ORIENTATION_VERTICAL:
++ return gtk_vscale_new_with_range (min, max, step);
++ }
++}
+
+ static void
+ set_title (GtkPlay * play, const gchar * title)
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player_git.bb
new file mode 100644
index 000000000..8129169c5
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-player_git.bb
@@ -0,0 +1,39 @@
+SUMMARY = "GStreamer playback helper library and examples"
+LICENSE = "LGPL-2.0+"
+LIC_FILES_CHKSUM = "file://lib/gst/player/gstplayer.c;beginline=1;endline=19;md5=03aeca9d8295f811817909075a15ff65"
+
+DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gtk+"
+
+SRC_URI = "git://github.com/sdroege/gst-player.git \
+ file://filechooser.patch \
+ file://gtk2.patch \
+ file://Fix-pause-play.patch \
+ file://Add-error-signal-emission-for-missing-plugins.patch \
+ file://gst-player.desktop"
+
+SRCREV = "5386c5b984d40ef5434673ed62204e69aaf52645"
+
+S = "${WORKDIR}/git"
+
+inherit autotools gtk-doc lib_package pkgconfig distro_features_check gobject-introspection
+
+ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
+
+do_configure_prepend() {
+ touch ${S}/ChangeLog
+}
+
+EXTRA_OECONF += "ac_cv_path_VALGRIND=no ac_cv_path_GDB=no"
+
+do_install_append() {
+ install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop
+}
+
+FILES_${PN}-bin += "${datadir}/applications/*.desktop"
+
+RDEPENDS_${PN}-bin = "gstreamer1.0-plugins-base-playback"
+RRECOMMENDS_${PN}-bin = "gstreamer1.0-plugins-base-meta \
+ gstreamer1.0-plugins-good-meta \
+ gstreamer1.0-plugins-bad-meta \
+ ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-libav", "", d)} \
+ ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gst-plugins-package.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-plugins-package.inc
index cabf56f63..c24493e1e 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gst-plugins-package.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gst-plugins-package.inc
@@ -9,8 +9,8 @@ python split_gstreamer10_packages () {
do_split_packages(d, glibdir, '^lib(.*)\.so\.*', 'lib%s', 'gstreamer %s library', extra_depends='', allow_links=True)
do_split_packages(d, gst_libdir, 'libgst(.*)\.so$', d.expand('${PN}-%s'), 'GStreamer plugin for %s', postinst=postinst, extra_depends='')
do_split_packages(d, glibdir+'/girepository-1.0', 'Gst(.*)-1.0\.typelib$', d.expand('${PN}-%s-typelib'), 'GStreamer typelib file for %s', postinst=postinst, extra_depends='')
- do_split_packages(d, gst_libdir, 'libgst(.*)\.la$', d.expand('${PN}-%s-dev'), 'GStreamer plugin for %s (development files)', extra_depends=d.expand('${PN}-dev'))
- do_split_packages(d, gst_libdir, 'libgst(.*)\.a$', d.expand('${PN}-%s-staticdev'), 'GStreamer plugin for %s (static development files)', extra_depends=d.expand('${PN}-staticdev'))
+ do_split_packages(d, gst_libdir, 'libgst(.*)\.la$', d.expand('${PN}-%s-dev'), 'GStreamer plugin for %s (development files)', extra_depends='${PN}-dev')
+ do_split_packages(d, gst_libdir, 'libgst(.*)\.a$', d.expand('${PN}-%s-staticdev'), 'GStreamer plugin for %s (static development files)', extra_depends='${PN}-staticdev')
}
python set_metapkg_rdepends () {
@@ -48,12 +48,9 @@ ALLOW_EMPTY_${PN}-dev = "1"
ALLOW_EMPTY_${PN}-staticdev = "1"
PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib"
-FILES_${PN}-apps = "${bindir}"
-
-RDEPENDS_${PN}-apps += "perl"
-RRECOMMENDS_${PN} += "${PN}-meta"
FILES_${PN} = ""
-FILES_${PN}-dbg += "${libdir}/gstreamer-${LIBV}/.debug"
+FILES_${PN}-apps = "${bindir}"
FILES_${PN}-glib = "${datadir}/glib-2.0"
+RRECOMMENDS_${PN} += "${PN}-meta"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav.inc
index 84e6e95d3..363101e1a 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav.inc
@@ -1,32 +1,46 @@
SUMMARY = "Libav-based GStreamer 1.x plugin"
+HOMEPAGE = "http://gstreamer.freedesktop.org/"
SECTION = "multimedia"
+
LICENSE = "GPLv2+ & LGPLv2+ & ( (GPLv2+ & LGPLv2.1+) | (GPLv3+ & LGPLv3+) )"
LICENSE_FLAGS = "commercial"
-HOMEPAGE = "http://www.gstreamer.net/"
-DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base zlib bzip2"
-inherit autotools pkgconfig
+DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base zlib bzip2 xz"
+
+inherit autotools pkgconfig upstream-version-is-even
# CAUTION: Using the system libav is not recommended. Since the libav API is changing all the time,
# compilation errors (and other, more subtle bugs) can happen. It is usually better to rely on the
# libav copy included in the gst-libav package.
-PACKAGECONFIG ??= " orc yasm "
-PACKAGECONFIG[libav] = "--with-system-libav,,libav"
-PACKAGECONFIG[lgpl] = "--enable-lgpl,,"
-PACKAGECONFIG[yasm] = "--enable-yasm,--disable-yasm,yasm-native"
-PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc"
+PACKAGECONFIG ??= "orc yasm"
+PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl,"
+PACKAGECONFIG[libav] = "--with-system-libav,,libav"
+PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc"
+PACKAGECONFIG[yasm] = "--enable-yasm,--disable-yasm,yasm-native"
GSTREAMER_1_0_DEBUG ?= "--disable-debug"
LIBAV_EXTRA_CONFIGURE = "--with-libav-extra-configure"
+
+LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
+ --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
+ --ranlib='${RANLIB}' \
+ ${GSTREAMER_1_0_DEBUG} \
+ --cross-prefix='${HOST_PREFIX}'"
+
LIBAV_EXTRA_CONFIGURE_COMMON = \
'${LIBAV_EXTRA_CONFIGURE}="${LIBAV_EXTRA_CONFIGURE_COMMON_ARG}"'
EXTRA_OECONF = "${LIBAV_EXTRA_CONFIGURE_COMMON}"
FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-dbg += "${libdir}/gstreamer-1.0/.debug"
FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
+# http://errors.yoctoproject.org/Errors/Details/20493/
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+
+# ffmpeg/libav disables PIC on some platforms (e.g. x86-32)
+INSANE_SKIP_${PN} = "textrel"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-Disable-yasm-for-libav-when-disable-yasm.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav/0001-Disable-yasm-for-libav-when-disable-yasm.patch
index 1d99ad125..1d99ad125 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-Disable-yasm-for-libav-when-disable-yasm.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav/0001-Disable-yasm-for-libav-when-disable-yasm.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav/workaround-to-build-gst-libav-for-i586-with-gcc.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav/workaround-to-build-gst-libav-for-i586-with-gcc.patch
index ccadea4d5..36abf8607 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav/workaround-to-build-gst-libav-for-i586-with-gcc.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav/workaround-to-build-gst-libav-for-i586-with-gcc.patch
@@ -22,5 +22,5 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+ ( (unsigned char*)(h->non_zero_count[mb_xy]) ) [i] = 16;
+ }
h->cur_pic.mb_type[mb_xy] = mb_type;
- h->last_qscale_diff = 0;
+ sl->last_qscale_diff = 0;
return 0;
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_1.6.3.bb
index 5d74a2e57..687230a8f 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.4.5.bb
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_1.6.3.bb
@@ -3,7 +3,6 @@ include gstreamer1.0-libav.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
- file://gst-libs/ext/libav/LICENSE;md5=ea66e97a7ac1db978cf3529068a8c948 \
file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \
@@ -14,17 +13,8 @@ SRC_URI = " \
file://0001-Disable-yasm-for-libav-when-disable-yasm.patch \
file://workaround-to-build-gst-libav-for-i586-with-gcc.patch \
"
-SRC_URI[md5sum] = "f4922a46adbcbe7bd01331ff5dc7979d"
-SRC_URI[sha256sum] = "605c62624604f3bb5c870844cc1f2711779cc533b004c2aa1d8c0d58557afbbc"
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
- --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
- --ranlib='${RANLIB}' \
- ${GSTREAMER_1_0_DEBUG} \
- --cross-prefix='${HOST_PREFIX}'"
+SRC_URI[md5sum] = "cfe9a06913d4fd4067e9e47f6e05fac2"
+SRC_URI[sha256sum] = "857b9c060a0337de38c6d26238c47352433c02eabf26c2f860c854dbc35bd4ab"
S = "${WORKDIR}/gst-libav-${PV}"
-
-# http://errors.yoctoproject.org/Errors/Details/20493/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_git.bb
new file mode 100644
index 000000000..ebc8a5ef2
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-libav_git.bb
@@ -0,0 +1,38 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0-libav.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
+ file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
+ file://gst-libs/ext/libav/LICENSE.md;md5=acda96fe91ccaabc9cd9d541806a0d37 \
+ file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
+ file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \
+ file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+# To build using the system libav/ffmpeg, append "libav" to PACKAGECONFIG
+# and remove the ffmpeg sources from SRC_URI below. However, first note the
+# warnings in gstreamer1.0-libav.inc
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gst-libav;name=base \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;name=common \
+ git://source.ffmpeg.org/ffmpeg;destsuffix=git/gst-libs/ext/libav;name=ffmpeg;branch=release/3.0 \
+ file://0001-Disable-yasm-for-libav-when-disable-yasm.patch \
+ file://workaround-to-build-gst-libav-for-i586-with-gcc.patch \
+"
+
+PV = "1.7.2+git${SRCPV}"
+
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
+
+SRCREV_base = "6c4878b6abc916b7f6f25b8926c4859119acf1ec"
+SRCREV_common = "b64f03f6090245624608beb5d2fff335e23a01c0"
+SRCREV_ffmpeg = "c40983a6f631d22fede713d535bb9c31d5c9740c"
+SRCREV_FORMAT = "base"
+
+S = "${WORKDIR}/git"
+
+do_configure_prepend() {
+ ${S}/autogen.sh --noconfigure
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-meta-base.bb
index 3ef10c372..c542b13f0 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-meta-base.bb
@@ -1,6 +1,9 @@
-DESCRIPTION = "Gstreamer1.0 package groups"
+SUMMARY = "Gstreamer1.0 package groups"
LICENSE = "MIT"
+# Due to use of COMBINED_FEATURES
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
inherit packagegroup
COMMERCIAL_PLUGINS = "${COMMERCIAL_AUDIO_PLUGINS} ${COMMERCIAL_VIDEO_PLUGINS}"
@@ -26,7 +29,7 @@ RDEPENDS_gstreamer1.0-meta-base = "\
gstreamer1.0 \
gstreamer1.0-plugins-base-playback \
gstreamer1.0-plugins-base-gio \
- gstreamer1.0-plugins-base-alsa \
+ ${@bb.utils.contains('COMBINED_FEATURES', 'alsa', 'gstreamer1.0-plugins-base-alsa', '',d)} \
gstreamer1.0-plugins-base-volume \
gstreamer1.0-plugins-base-audioconvert \
gstreamer1.0-plugins-base-audioresample \
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx.inc
index 26c13361f..0fff612ee 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx.inc
@@ -1,10 +1,11 @@
SUMMARY = "OpenMAX IL plugins for GStreamer"
+HOMEPAGE = "http://gstreamer.freedesktop.org/"
SECTION = "multimedia"
+
LICENSE = "LGPLv2.1"
LICENSE_FLAGS = "commercial"
-HOMEPAGE = "http://www.gstreamer.net/"
+
DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
-RDEPENDS_${PN} = "libomxil"
inherit autotools pkgconfig gettext
@@ -32,10 +33,11 @@ python __anonymous () {
set_omx_core_name() {
sed -i -e "s;^core-name=.*;core-name=${GSTREAMER_1_0_OMX_CORE_NAME};" "${D}${sysconfdir}/xdg/gstomx.conf"
}
+
do_install[postfuncs] += " set_omx_core_name "
FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-dbg += "${libdir}/gstreamer-1.0/.debug"
FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
+RDEPENDS_${PN} = "libomxil"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx/0001-omx-fixed-type-error-in-printf-call.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx/0001-omx-fixed-type-error-in-printf-call.patch
index a428ac9c9..a428ac9c9 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx/0001-omx-fixed-type-error-in-printf-call.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx/0001-omx-fixed-type-error-in-printf-call.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.2.0.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_1.2.0.bb
index fe7c91cb3..74358a724 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.2.0.bb
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_1.2.0.bb
@@ -9,4 +9,3 @@ SRC_URI[md5sum] = "d24e8c0153c35dfefee3e26b1c2c35f8"
SRC_URI[sha256sum] = "0b4874961e6488ad9e5808114bd486ea981c540907262caab1419355fd82d745"
S = "${WORKDIR}/gst-omx-${PV}"
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_git.bb
new file mode 100644
index 000000000..970554352
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-omx_git.bb
@@ -0,0 +1,25 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0-omx.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
+ file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gst-omx;branch=master;name=gst-omx \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;branch=master;name=common \
+ file://0001-omx-fixed-type-error-in-printf-call.patch \
+"
+
+SRCREV_gst-omx = "a2db76b048db278ef0aa798e106b7594264e06c0"
+SRCREV_common = "5edcd857b2107cd8b78c16232dd10877513ec157"
+
+SRCREV_FORMAT = "gst-omx"
+
+S = "${WORKDIR}/git"
+
+do_configure_prepend() {
+ cd ${S}
+ ./autogen.sh --noconfigure
+ cd ${B}
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad.inc
index b4f01afe5..9e2b94ede 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad.inc
@@ -1,136 +1,148 @@
require gstreamer1.0-plugins.inc
-LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+ "
+LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+"
DEPENDS += "gstreamer1.0-plugins-base libpng jpeg"
-S = "${WORKDIR}/gst-plugins-bad-${PV}"
-
-SRC_URI += "file://configure-allow-to-disable-libssh2.patch \
- "
-
inherit gettext bluetooth
+SRC_URI_append = " \
+ file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \
+"
+
# opengl packageconfig factored out to make it easy for distros
# and BSP layers to pick either (desktop) opengl, gles2, or no GL
PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"
+# gtk is not in the PACKAGECONFIG variable by default until
+# the transition to gtk+3 is finished
PACKAGECONFIG ??= " \
+ ${GSTREAMER_ORC} \
${PACKAGECONFIG_GL} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
- orc curl neon sndfile \
- hls sbc dash bz2 smoothstreaming \
- "
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
+ bz2 curl dash dtls hls neon rsvg sbc smoothstreaming sndfile uvch264 webp \
+"
-# dash = Dynamic Adaptive Streaming over HTTP
PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass"
+PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}"
+PACKAGECONFIG[bz2] = "--enable-bz2,--disable-bz2,bzip2"
PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl"
-PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2"
-PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
+PACKAGECONFIG[dash] = "--enable-dash,--disable-dash,libxml2"
+PACKAGECONFIG[directfb] = "--enable-directfb,--disable-directfb,directfb"
+PACKAGECONFIG[dtls] = "--enable-dtls,--disable-dtls,openssl"
PACKAGECONFIG[faac] = "--enable-faac,--disable-faac,faac"
PACKAGECONFIG[faad] = "--enable-faad,--disable-faad,faad2"
+PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa"
+PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth"
+PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2"
+PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3"
+PACKAGECONFIG[hls] = "--enable-hls,--disable-hls,nettle"
PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms"
+PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2"
PACKAGECONFIG[modplug] = "--enable-modplug,--disable-modplug,libmodplug"
-PACKAGECONFIG[mpg123] = "--enable-mpg123,--disable-mpg123,mpg123"
-PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus"
-PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa"
-PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv"
-PACKAGECONFIG[wayland] = "--enable-wayland --enable-egl,--disable-wayland --disable-egl,wayland virtual/egl"
-PACKAGECONFIG[uvch264] = "--enable-uvch264,--disable-uvch264,libusb1 libgudev"
-PACKAGECONFIG[directfb] = "--enable-directfb,--disable-directfb,directfb"
PACKAGECONFIG[neon] = "--enable-neon,--disable-neon,neon"
PACKAGECONFIG[openal] = "--enable-openal,--disable-openal,openal-soft"
-PACKAGECONFIG[hls] = "--enable-hls,--disable-hls,gnutls"
+PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv"
+PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
+PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus"
+PACKAGECONFIG[resindvd] = "--enable-resindvd,--disable-resindvd,libdvdread libdvdnav"
+PACKAGECONFIG[rsvg] = "--enable-rsvg,--disable-rsvg,librsvg"
+PACKAGECONFIG[rtmp] = "--enable-rtmp,--disable-rtmp,rtmpdump"
PACKAGECONFIG[sbc] = "--enable-sbc,--disable-sbc,sbc"
-PACKAGECONFIG[dash] = "--enable-dash,--disable-dash,libxml2"
-PACKAGECONFIG[bz2] = "--enable-bz2,--disable-bz2,bzip2"
-PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth"
PACKAGECONFIG[schroedinger] = "--enable-schro,--disable-schro,schroedinger"
PACKAGECONFIG[smoothstreaming] = "--enable-smoothstreaming,--disable-smoothstreaming,libxml2"
-PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}"
-PACKAGECONFIG[rsvg] = "--enable-rsvg,--disable-rsvg,librsvg"
PACKAGECONFIG[sndfile] = "--enable-sndfile,--disable-sndfile,libsndfile1"
-PACKAGECONFIG[webp] = "--enable-webp,--disable-webp,libwebp"
-PACKAGECONFIG[rtmp] = "--enable-rtmp,--disable-rtmp,rtmpdump"
-PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2"
-PACKAGECONFIG[voamrwbenc] = "--enable-voamrwbenc,--disable-voamrwbenc,vo-amrwbenc"
+PACKAGECONFIG[srtp] = "--enable-srtp,--disable-srtp,libsrtp"
+PACKAGECONFIG[uvch264] = "--enable-uvch264,--disable-uvch264,libusb1 libgudev"
PACKAGECONFIG[voaacenc] = "--enable-voaacenc,--disable-voaacenc,vo-aacenc"
-PACKAGECONFIG[resindvd] = "--enable-resindvd,--disable-resindvd,libdvdnav libdvdread"
+PACKAGECONFIG[voamrwbenc] = "--enable-voamrwbenc,--disable-voamrwbenc,vo-amrwbenc"
+PACKAGECONFIG[wayland] = "--enable-wayland --enable-egl,--disable-wayland --disable-egl,wayland virtual/egl"
+PACKAGECONFIG[webp] = "--enable-webp,--disable-webp,libwebp"
# these plugins have not been ported to 1.0 (yet):
-# directdraw vcd apexsink dc1394 lv2 linsys musepack mythtv
-# nas timidity teletextdec sdl xvid wininet acm gsettings
-# sndio qtwrapper cdxaparse dccp faceoverlay hdvparse tta
-# mve nuvdemux osx_video patchdetect quicktime real sdi
-# videomeasure gsettings
+# apexsink dc1394 lv2 linsys musepack nas timidity teletextdec sdl xvid wininet
+# acm gsettings sndio cdxaparse dccp faceoverlay hdvparse tta mve nuvdemux
+# patchdetect real sdi videomeasure gsettings
# these plugins have no corresponding library in OE-core or meta-openembedded:
-# openni2 winks direct3d directdraw directsound winscreencap osx_video
-# apple_media android_media avc chromaprint daala dts gme gsm kate ladspa mimic
-# mpeg2enc mplex ofa openjpeg opensles pvr rtmp soundtouch spandsp spc
-# srtp vdpau wasapi zbar
+# openni2 winks direct3d directsound winscreencap
+# apple_media android_media avc bs2b chromaprint daala dts gme gsm kate ladspa
+# libde265 mimic mpeg2enc mplex ofa openh264 opensles pvr soundtouch spandsp
+# spc vdpau wasapi x265 zbar
+
+# qt5 support is disabled, because it is not present in OE core, and requires more work than
+# just adding a packageconfig (it requires access to moc, uic, rcc, and qmake paths).
+# This is better done in a separate qt5 layer (which then should add a "qt5" packageconfig
+# in a gstreamer1.0-plugins-bad bbappend).
EXTRA_OECONF += " \
+ --enable-decklink \
--enable-dvb \
- --enable-shm \
--enable-fbdev \
- --enable-decklink \
+ --enable-shm \
+ --enable-vcd \
--disable-acm \
--disable-android_media \
--disable-apexsink \
--disable-apple_media \
--disable-avc \
+ --disable-bs2b \
--disable-chromaprint \
--disable-cocoa \
--disable-daala \
--disable-dc1394 \
--disable-direct3d \
- --disable-directdraw \
--disable-directsound \
--disable-dts \
--disable-gme \
- --disable-gsettings \
--disable-gsm \
--disable-kate \
--disable-ladspa \
+ --disable-libde265 \
+ --disable-libvisual \
--disable-linsys \
--disable-lv2 \
--disable-mimic \
--disable-mpeg2enc \
--disable-mplex \
--disable-musepack \
- --disable-mythtv \
--disable-nas \
--disable-ofa \
+ --disable-openexr \
+ --disable-openh264 \
--disable-openjpeg \
+ --disable-openni2 \
--disable-opensles \
- --disable-osx_video \
--disable-pvr \
- --disable-quicktime \
+ --disable-qt \
--disable-sdl \
--disable-sdltest \
--disable-sndio \
--disable-soundtouch \
--disable-spandsp \
--disable-spc \
- --disable-srtp \
--disable-teletextdec \
--disable-timidity \
- --disable-vcd \
--disable-vdpau \
--disable-wasapi \
--disable-wildmidi \
--disable-wininet \
+ --disable-winks \
--disable-winscreencap \
+ --disable-x265 \
--disable-xvid \
--disable-zbar \
${@bb.utils.contains("TUNE_FEATURES", "mx32", "--disable-yadif", "", d)} \
- "
+"
-ARM_INSTRUCTION_SET = "arm"
+export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
-FILES_gstreamer1.0-plugins-bad-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h"
+FILES_${PN}-freeverb += "${datadir}/gstreamer-${LIBV}/presets/GstFreeverb.prs"
+FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/${LIBV}/opencv*"
FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-${LIBV}/presets/GstVoAmrwbEnc.prs"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
index 154d340e4..154d340e4 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-glimagesink-Downrank-to-marginal.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-glimagesink-Downrank-to-marginal.patch
index f677603eb..1085e95e8 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-glimagesink-Downrank-to-marginal.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-glimagesink-Downrank-to-marginal.patch
@@ -22,8 +22,8 @@ index a4b2540..0ccaacd 100644
#endif
if (!gst_element_register (plugin, "glimagesink",
-- GST_RANK_SECONDARY, GST_TYPE_GLIMAGE_SINK)) {
-+ GST_RANK_MARGINAL, GST_TYPE_GLIMAGE_SINK)) {
+- GST_RANK_SECONDARY, gst_gl_image_sink_bin_get_type ())) {
++ GST_RANK_MARGINAL, gst_gl_image_sink_bin_get_type ())) {
return FALSE;
}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch
new file mode 100644
index 000000000..e81b06570
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch
@@ -0,0 +1,27 @@
+From a93ca63d01e7cd1e40b5be576992f77fac364bd5 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 21 Mar 2016 18:21:17 +0200
+Subject: [PATCH] gstreamer-gl.pc.in: don't append GL_CFLAGS to CFLAGS
+
+Dependencies' include directories should not be added in this way;
+it causes problems when cross-compiling in sysroot environments.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ pkgconfig/gstreamer-gl.pc.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pkgconfig/gstreamer-gl.pc.in b/pkgconfig/gstreamer-gl.pc.in
+index 5589e2a..b986450 100644
+--- a/pkgconfig/gstreamer-gl.pc.in
++++ b/pkgconfig/gstreamer-gl.pc.in
+@@ -10,4 +10,4 @@ Version: @VERSION@
+ Requires: gstreamer-base-@GST_API_VERSION@ gstreamer-@GST_API_VERSION@
+
+ Libs: -L${libdir} -lgstgl-@GST_API_VERSION@ @GL_LIBS@
+-Cflags: -I${includedir} @GL_CFLAGS@
++Cflags: -I${includedir}
+--
+2.7.0
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0002-glplugin-glwindow-fix-memory-leak-of-navigation-thre.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0002-glplugin-glwindow-fix-memory-leak-of-navigation-thre.patch
new file mode 100755
index 000000000..3491a15e6
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/0002-glplugin-glwindow-fix-memory-leak-of-navigation-thre.patch
@@ -0,0 +1,35 @@
+From 95cda7fbcf1a81289d9315c801c8e2b3d896f4cb Mon Sep 17 00:00:00 2001
+From: Haihua Hu <b55597@freescale.com>
+Date: Mon, 30 Nov 2015 09:36:09 +0800
+Subject: [PATCH 2/5] [glplugin] glwindow: fix memory leak of navigation
+ thread
+
+When exit navigation thread, call g_thread_join() to release
+the resource hold by it.
+
+Upstream-Status: Backport [1.7.1]
+
+bugzilla URL: https://bugzilla.gnome.org/show_bug.cgi?id=758820
+
+Signed-off-by: Haihua Hu <b55597@freescale.com>
+---
+ gst-libs/gst/gl/gstglwindow.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/gst-libs/gst/gl/gstglwindow.c b/gst-libs/gst/gl/gstglwindow.c
+index 44b74ca..42ef296 100644
+--- a/gst-libs/gst/gl/gstglwindow.c
++++ b/gst-libs/gst/gl/gstglwindow.c
+@@ -343,6 +343,9 @@ gst_gl_window_finalize (GObject * object)
+ while (window->nav_alive) {
+ g_cond_wait (&window->nav_destroy_cond, &window->nav_lock);
+ }
++ /* release resource hold by navigation thread */
++ g_thread_join(window->priv->navigation_thread);
++ window->priv->navigation_thread = NULL;
+ g_mutex_unlock (&window->nav_lock);
+ }
+
+--
+1.7.9.5
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/avoid-including-sys-poll.h-directly.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/avoid-including-sys-poll.h-directly.patch
new file mode 100644
index 000000000..357fd7800
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/avoid-including-sys-poll.h-directly.patch
@@ -0,0 +1,30 @@
+From 72561a0fca562d03567ace7b4cfc94992cd6525c Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Wed, 3 Feb 2016 18:05:41 -0800
+Subject: [PATCH] avoid including <sys/poll.h> directly
+
+musl libc generates warnings if <sys/poll.h> is included directly.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ sys/dvb/gstdvbsrc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c
+index b93255f..49f145a 100644
+--- a/sys/dvb/gstdvbsrc.c
++++ b/sys/dvb/gstdvbsrc.c
+@@ -93,7 +93,7 @@
+ #include <gst/gst.h>
+ #include <gst/glib-compat-private.h>
+ #include <sys/ioctl.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <fcntl.h>
+ #include <errno.h>
+ #include <stdio.h>
+--
+1.9.1
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/configure-allow-to-disable-libssh2.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/configure-allow-to-disable-libssh2.patch
index d52afd5d5..d52afd5d5 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/configure-allow-to-disable-libssh2.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/configure-allow-to-disable-libssh2.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/ensure-valid-sentinels-for-gst_structure_get-etc.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/ensure-valid-sentinels-for-gst_structure_get-etc.patch
new file mode 100644
index 000000000..369ff93ac
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/ensure-valid-sentinels-for-gst_structure_get-etc.patch
@@ -0,0 +1,86 @@
+From 2262ba4b686d5cc0d3e894707fe1d31619a3a8f1 Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Tue, 9 Feb 2016 14:00:00 -0800
+Subject: [PATCH] ensure valid sentinals for gst_structure_get() etc
+
+For GStreamer functions declared with G_GNUC_NULL_TERMINATED,
+ie __attribute__((__sentinel__)), gcc will generate a warning if the
+last parameter passed to the function is not NULL (where a valid NULL
+in this context is defined as zero with any pointer type).
+
+The C callers to such functions within gst-plugins-bad use the C NULL
+definition (ie ((void*)0)), which is a valid sentinel.
+
+However the C++ NULL definition (ie 0L), is not a valid sentinel
+without an explicit cast to a pointer type.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ sys/decklink/gstdecklink.cpp | 10 +++++-----
+ sys/decklink/gstdecklinkaudiosrc.cpp | 2 +-
+ sys/decklink/gstdecklinkvideosink.cpp | 2 +-
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp
+index 64637f1..bac956f 100644
+--- a/sys/decklink/gstdecklink.cpp
++++ b/sys/decklink/gstdecklink.cpp
+@@ -324,22 +324,22 @@ gst_decklink_mode_get_structure (GstDecklinkModeEnum e, BMDPixelFormat f)
+ "height", G_TYPE_INT, mode->height,
+ "pixel-aspect-ratio", GST_TYPE_FRACTION, mode->par_n, mode->par_d,
+ "interlace-mode", G_TYPE_STRING, mode->interlaced ? "interleaved" : "progressive",
+- "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, NULL);
++ "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, (void *) NULL);
+
+ switch (f) {
+ case bmdFormat8BitYUV: /* '2vuy' */
+ gst_structure_set (s, "format", G_TYPE_STRING, "UYVY",
+ "colorimetry", G_TYPE_STRING, mode->colorimetry,
+- "chroma-site", G_TYPE_STRING, "mpeg2", NULL);
++ "chroma-site", G_TYPE_STRING, "mpeg2", (void *) NULL);
+ break;
+ case bmdFormat10BitYUV: /* 'v210' */
+- gst_structure_set (s, "format", G_TYPE_STRING, "v210", NULL);
++ gst_structure_set (s, "format", G_TYPE_STRING, "v210", (void *) NULL);
+ break;
+ case bmdFormat8BitARGB: /* 'ARGB' */
+- gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", NULL);
++ gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", (void *) NULL);
+ break;
+ case bmdFormat8BitBGRA: /* 'BGRA' */
+- gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", NULL);
++ gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", (void *) NULL);
+ break;
+ case bmdFormat10BitRGB: /* 'r210' Big-endian RGB 10-bit per component with SMPTE video levels (64-960). Packed as 2:10:10:10 */
+ case bmdFormat12BitRGB: /* 'R12B' Big-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component */
+diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp
+index 9a701ee..26fb7ec 100644
+--- a/sys/decklink/gstdecklinkaudiosrc.cpp
++++ b/sys/decklink/gstdecklinkaudiosrc.cpp
+@@ -312,7 +312,7 @@ gst_decklink_audio_src_set_caps (GstBaseSrc * bsrc, GstCaps * caps)
+ g_mutex_unlock (&self->input->lock);
+
+ if (videosrc) {
+- g_object_get (videosrc, "connection", &vconn, NULL);
++ g_object_get (videosrc, "connection", &vconn, (void *) NULL);
+ gst_object_unref (videosrc);
+
+ switch (vconn) {
+diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp
+index eebeff3..da6e486 100644
+--- a/sys/decklink/gstdecklinkvideosink.cpp
++++ b/sys/decklink/gstdecklinkvideosink.cpp
+@@ -158,7 +158,7 @@ reset_framerate (GstCapsFeatures * features, GstStructure * structure,
+ gpointer user_data)
+ {
+ gst_structure_set (structure, "framerate", GST_TYPE_FRACTION_RANGE, 0, 1,
+- G_MAXINT, 1, NULL);
++ G_MAXINT, 1, (void *) NULL);
+
+ return TRUE;
+ }
+--
+1.9.1
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch
new file mode 100644
index 000000000..5ce57714e
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad/fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch
@@ -0,0 +1,28 @@
+From a67781000e82bd9ae3813da29401e8c0c852328a Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Tue, 26 Jan 2016 15:16:01 -0800
+Subject: [PATCH] fix maybe-uninitialized warnings when compiling with -Os
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ gst-libs/gst/codecparsers/gstvc1parser.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gst-libs/gst/codecparsers/gstvc1parser.c b/gst-libs/gst/codecparsers/gstvc1parser.c
+index fd16ee0..ddb890c 100644
+--- a/gst-libs/gst/codecparsers/gstvc1parser.c
++++ b/gst-libs/gst/codecparsers/gstvc1parser.c
+@@ -1729,7 +1729,7 @@ gst_vc1_parse_sequence_layer (const guint8 * data, gsize size,
+ GstVC1SeqLayer * seqlayer)
+ {
+ guint32 tmp;
+- guint8 tmp8;
++ guint8 tmp8 = 0;
+ guint8 structA[8] = { 0, };
+ guint8 structB[12] = { 0, };
+ GstBitReader br;
+--
+1.9.1
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_1.6.3.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_1.6.3.bb
new file mode 100644
index 000000000..8eb47c265
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_1.6.3.bb
@@ -0,0 +1,28 @@
+include gstreamer1.0-plugins-bad.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
+ file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 \
+ file://gst/tta/crc32.h;beginline=12;endline=29;md5=27db269c575d1e5317fffca2d33b3b50 \
+ file://gst/tta/filters.h;beginline=12;endline=29;md5=8a08270656f2f8ad7bb3655b83138e5a"
+
+# Note: The mpg123 plugin was moved to gst-plugins-ugly prior to the 1.7.2
+# release, so this line should be removed during the update to 1.8.x
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=08d8aefcdaaf89ecb6dd53ec1e4f95cd42d01664
+PACKAGECONFIG[mpg123] = "--enable-mpg123,--disable-mpg123,mpg123"
+
+# Note: The gsettings plug-in was dropped prior to the 1.7.2 release,
+# so this line should be removed during the update to 1.8.x
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=914291808ad10621d6a74031f3d46d45eef5a3a3
+EXTRA_OECONF += "--disable-gsettings"
+
+SRC_URI = " \
+ http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
+ file://configure-allow-to-disable-libssh2.patch \
+ file://0001-glimagesink-Downrank-to-marginal.patch \
+ file://0002-glplugin-glwindow-fix-memory-leak-of-navigation-thre.patch \
+"
+
+SRC_URI[md5sum] = "4857adcafe41e4b9b8805cf88303bd55"
+SRC_URI[sha256sum] = "971b29101d6a9c5e3fe94d99d977a227f58f0b2d29b6ca2c7f292052542b3a61"
+
+S = "${WORKDIR}/gst-plugins-bad-${PV}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_git.bb
new file mode 100644
index 000000000..ef6581b2a
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-bad_git.bb
@@ -0,0 +1,65 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0-plugins-bad.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
+ file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 \
+ file://gst/tta/crc32.h;beginline=12;endline=29;md5=27db269c575d1e5317fffca2d33b3b50 \
+ file://gst/tta/filters.h;beginline=12;endline=29;md5=8a08270656f2f8ad7bb3655b83138e5a"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gst-plugins-bad;name=base \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;name=common \
+ file://configure-allow-to-disable-libssh2.patch \
+ file://fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch \
+ file://avoid-including-sys-poll.h-directly.patch \
+ file://ensure-valid-sentinels-for-gst_structure_get-etc.patch \
+ file://0001-gstreamer-gl.pc.in-don-t-append-GL_CFLAGS-to-CFLAGS.patch \
+"
+
+PV = "1.7.2+git${SRCPV}"
+
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
+
+SRCREV_base = "50ae46cc0f8827bf966920d9c221e5cf86e811ba"
+SRCREV_common = "a25397448942079002622be231e9ec49b985745a"
+SRCREV_FORMAT = "base"
+
+S = "${WORKDIR}/git"
+
+# over-ride the default hls PACKAGECONFIG in gstreamer1.0-plugins-bad.inc to
+# pass an additional --with-hls-crypto=XXX option (new in 1.7.x) and switch HLS
+# AES decryption from nettle to openssl (ie a shared dependency with dtls).
+# This should move back to the common .inc once the main recipe updates to 1.8.x
+PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=openssl,--disable-hls,openssl"
+
+# The tinyalsa plugin was added prior to the 1.7.2 release
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=c8bd74fa9a81398f57d976c478d2043f30188684
+PACKAGECONFIG[tinyalsa] = "--enable-tinyalsa,--disable-tinyalsa,tinyalsa"
+
+# The vulkan based video sink plugin was added prior to the 1.7.2 release
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=5de6dd9f40629562acf90e35e1fa58464d66617d
+PACKAGECONFIG[vulkan] = "--enable-vulkan,--disable-vulkan,libxcb"
+
+# The dependency-less netsim plugin was added prior to the 1.7.2 release
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=e3f9e854f08e82bfab11182c5a2aa6f9a0c73cd5
+EXTRA_OECONF += " \
+ --enable-netsim \
+"
+
+do_configure_prepend() {
+ ${S}/autogen.sh --noconfigure
+}
+
+# In 1.6.2, the "--enable-hls" configure option generated an installable package
+# called "gstreamer1.0-plugins-bad-fragmented". In 1.7.1 that HLS plugin package
+# has become "gstreamer1.0-plugins-bad-hls". See:
+# http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=efe62292a3d045126654d93239fdf4cc8e48ae08
+
+PACKAGESPLITFUNCS_append = " handle_hls_rename "
+
+python handle_hls_rename () {
+ d.setVar('RPROVIDES_gstreamer1.0-plugins-bad-hls', 'gstreamer1.0-plugins-bad-fragmented')
+ d.setVar('RREPLACES_gstreamer1.0-plugins-bad-hls', 'gstreamer1.0-plugins-bad-fragmented')
+ d.setVar('RCONFLICTS_gstreamer1.0-plugins-bad-hls', 'gstreamer1.0-plugins-bad-fragmented')
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base.inc
new file mode 100644
index 000000000..7381458f4
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base.inc
@@ -0,0 +1,50 @@
+require gstreamer1.0-plugins.inc
+
+SRC_URI_append = "\
+ file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \
+ file://0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch \
+ file://0003-riff-add-missing-include-directories-when-calling-in.patch \
+ file://0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch \
+"
+
+LICENSE = "GPLv2+ & LGPLv2+"
+
+DEPENDS += "iso-codes util-linux zlib"
+
+inherit gettext
+
+PACKAGES_DYNAMIC =+ "^libgst.*"
+
+PACKAGECONFIG ??= " \
+ ${GSTREAMER_ORC} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
+ gio-unix-2.0 ivorbis ogg pango theora vorbis \
+"
+
+X11DEPENDS = "virtual/libx11 libsm libxrender libxv"
+X11ENABLEOPTS = "--enable-x --enable-xvideo --enable-xshm"
+X11DISABLEOPTS = "--disable-x --disable-xvideo --disable-xshm"
+
+PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
+PACKAGECONFIG[cdparanoia] = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia"
+PACKAGECONFIG[gio-unix-2.0] = "--enable-gio_unix_2_0,--disable-gio_unix_2_0,glib-2.0"
+PACKAGECONFIG[ivorbis] = "--enable-ivorbis,--disable-ivorbis,tremor"
+PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libogg"
+PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango"
+PACKAGECONFIG[theora] = "--enable-theora,--disable-theora,libtheora"
+PACKAGECONFIG[visual] = "--enable-libvisual,--disable-libvisual,libvisual"
+PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis"
+PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}"
+
+EXTRA_OECONF += " \
+ --enable-zlib \
+"
+
+CACHED_CONFIGUREVARS_append_x86 = " ac_cv_header_emmintrin_h=no ac_cv_header_xmmintrin_h=no"
+
+FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
+
+do_compile_prepend() {
+ export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/tag/.libs:${B}/gst-libs/gst/video/.libs:${B}/gst-libs/gst/audio/.libs:${B}/gst-libs/gst/rtp/.libs"
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
index d1c3ca47c..781e4d801 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
@@ -85,6 +85,19 @@ index 64d5eb0..91dc214 100644
--pkg gstreamer-@GST_API_VERSION@ \
--pkg gstreamer-tag-@GST_API_VERSION@ \
--pkg gstreamer-video-@GST_API_VERSION@ \
+diff --git a/gst-libs/gst/riff/Makefile.am b/gst-libs/gst/riff/Makefile.am
+index 83d83cb..3bd8fc0 100644
+--- a/gst-libs/gst/riff/Makefile.am
++++ b/gst-libs/gst/riff/Makefile.am
+@@ -47,7 +47,7 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS)
+ # --include=GstAudio-@GST_API_VERSION@ \
+ # --include=GstTag-@GST_API_VERSION@ \
+ # --include=Gst-@GST_API_VERSION@ \
+-# --libtool="$(top_builddir)/libtool" \
++# --libtool="$(LIBTOOL)" \
+ # --pkg gstreamer-@GST_API_VERSION@ \
+ # --pkg gstreamer-tag-@GST_API_VERSION@ \
+ # --pkg gstreamer-audio-@GST_API_VERSION@ \
diff --git a/gst-libs/gst/rtp/Makefile.am b/gst-libs/gst/rtp/Makefile.am
index fdd01c1..f5445c1 100644
--- a/gst-libs/gst/rtp/Makefile.am
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch
index 90fe3d285..85fcacb55 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch
@@ -145,6 +145,32 @@ index 91dc214..dc8e1d3 100644
--includedir="$(top_builddir)/gst-libs/gst/tag/" \
--includedir="$(top_builddir)/gst-libs/gst/video/" \
--includedir="$(top_builddir)/gst-libs/gst/audio/" \
+diff --git a/gst-libs/gst/riff/Makefile.am b/gst-libs/gst/riff/Makefile.am
+index 3bd8fc0..0a115cc 100644
+--- a/gst-libs/gst/riff/Makefile.am
++++ b/gst-libs/gst/riff/Makefile.am
+@@ -41,8 +41,8 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS)
+ # --c-include "gst/riff/riff.h" \
+ # --add-include-path=$(builddir)/../tag \
+ # --add-include-path=$(builddir)/../audio \
+-# --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
+-# --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
++# --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
++# --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
+ # --library=libgstriff-@GST_API_VERSION@.la \
+ # --include=GstAudio-@GST_API_VERSION@ \
+ # --include=GstTag-@GST_API_VERSION@ \
+@@ -73,8 +73,8 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS)
+ # --includedir=$(builddir) \
+ # --includedir=$(builddir)/../tag \
+ # --includedir=$(builddir)/../audio \
+-# --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
+-# --includedir=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
++# --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
++# --includedir=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-base-@GST_API_VERSION@` \
+ # $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)
+ #
+ #CLEANFILES = $(BUILT_GIRSOURCES) $(typelibs_DATA)
diff --git a/gst-libs/gst/rtp/Makefile.am b/gst-libs/gst/rtp/Makefile.am
index f5445c1..527c0b4 100644
--- a/gst-libs/gst/rtp/Makefile.am
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch
new file mode 100644
index 000000000..9b66f7f49
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-riff-add-missing-include-directories-when-calling-in.patch
@@ -0,0 +1,28 @@
+From 3c2c2d5dd08aa30ed0e8acd8566ec99412bb8209 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 26 Oct 2015 17:29:37 +0200
+Subject: [PATCH 3/4] riff: add missing include directories when calling
+ introspection scanner
+
+Upstream-Status: Pending [review on oe-core maillist]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ gst-libs/gst/riff/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gst-libs/gst/riff/Makefile.am b/gst-libs/gst/riff/Makefile.am
+index 0a115cc..5057a58 100644
+--- a/gst-libs/gst/riff/Makefile.am
++++ b/gst-libs/gst/riff/Makefile.am
+@@ -39,6 +39,8 @@ libgstriff_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS)
+ # --strip-prefix=Gst \
+ # --warn-all \
+ # --c-include "gst/riff/riff.h" \
++# -I$(top_srcdir)/gst-libs \
++# -I$(top_builddir)/gst-libs \
+ # --add-include-path=$(builddir)/../tag \
+ # --add-include-path=$(builddir)/../audio \
+ # --add-include-path=$(PKG_CONFIG_SYSROOT_DIR)`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
+--
+2.6.2
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-ssaparse-enhance-SSA-text-lines-parsing.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-ssaparse-enhance-SSA-text-lines-parsing.patch
index 9fbebd570..9fbebd570 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-ssaparse-enhance-SSA-text-lines-parsing.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0003-ssaparse-enhance-SSA-text-lines-parsing.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch
index 42d99c1db..42d99c1db 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-subparse-set-need_segment-after-sink-pad-received-GS.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0004-subparse-set-need_segment-after-sink-pad-received-GS.patch
index 7813915d8..7813915d8 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-subparse-set-need_segment-after-sink-pad-received-GS.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0004-subparse-set-need_segment-after-sink-pad-received-GS.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0005-convertframe-Support-video-crop-when-convert-frame.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0005-convertframe-Support-video-crop-when-convert-frame.patch
new file mode 100755
index 000000000..096a6f4cb
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/0005-convertframe-Support-video-crop-when-convert-frame.patch
@@ -0,0 +1,143 @@
+From 5be6ed00aad028d9cbb4e0c63af0be69d335c71e Mon Sep 17 00:00:00 2001
+From: Song Bing <b06498@freescale.com>
+Date: Fri, 11 Dec 2015 21:42:00 +0800
+Subject: [PATCH] convertframe: Support video crop when convert frame
+
+Get thumbnail will user convertframe to convert video frame to
+desired video format and size. But haven't process crop meta on
+the video buffer. Add support video crop.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=759329
+
+Upstream-Status: Backport [1.7.1]
+
+---
+ gst-libs/gst/video/convertframe.c | 65 +++++++++++++++++++++++++++++++++------
+ 1 file changed, 56 insertions(+), 9 deletions(-)
+
+diff --git a/gst-libs/gst/video/convertframe.c b/gst-libs/gst/video/convertframe.c
+index aa9c3d3..942a51e 100644
+--- a/gst-libs/gst/video/convertframe.c
++++ b/gst-libs/gst/video/convertframe.c
+@@ -110,12 +110,23 @@ fail:
+ static GstElement *
+ build_convert_frame_pipeline (GstElement ** src_element,
+ GstElement ** sink_element, const GstCaps * from_caps,
+- const GstCaps * to_caps, GError ** err)
++ GstVideoCropMeta * cmeta, const GstCaps * to_caps, GError ** err)
+ {
+- GstElement *src = NULL, *csp = NULL, *vscale = NULL;
+- GstElement *sink = NULL, *encoder = NULL, *pipeline;
++ GstElement *vcrop = NULL, *csp = NULL, *csp2 = NULL, *vscale = NULL;
++ GstElement *src = NULL, *sink = NULL, *encoder = NULL, *pipeline;
++ GstVideoInfo info;
+ GError *error = NULL;
+
++ if (cmeta) {
++ if (!create_element ("videocrop", &vcrop, &error)) {
++ g_warning
++ ("build_convert_frame_pipeline: Buffer has crop metadata but videocrop element is not found. Cropping will be disabled");
++ } else {
++ if (!create_element ("videoconvert", &csp2, &error))
++ goto no_elements;
++ }
++ }
++
+ /* videoscale is here to correct for the pixel-aspect-ratio for us */
+ GST_DEBUG ("creating elements");
+ if (!create_element ("appsrc", &src, &error) ||
+@@ -133,15 +144,42 @@ build_convert_frame_pipeline (GstElement ** src_element,
+
+ GST_DEBUG ("adding elements");
+ gst_bin_add_many (GST_BIN (pipeline), src, csp, vscale, sink, NULL);
++ if (vcrop)
++ gst_bin_add_many (GST_BIN (pipeline), vcrop, csp2, NULL);
+
+ /* set caps */
+ g_object_set (src, "caps", from_caps, NULL);
++ if (vcrop) {
++ gst_video_info_from_caps (&info, from_caps);
++ g_object_set (vcrop, "left", cmeta->x, NULL);
++ g_object_set (vcrop, "top", cmeta->y, NULL);
++ g_object_set (vcrop, "right", GST_VIDEO_INFO_WIDTH (&info) - cmeta->width,
++ NULL);
++ g_object_set (vcrop, "bottom",
++ GST_VIDEO_INFO_HEIGHT (&info) - cmeta->height, NULL);
++ GST_DEBUG ("crop meta [x,y,width,height]: %d %d %d %d", cmeta->x, cmeta->y,
++ cmeta->width, cmeta->height);
++ }
+ g_object_set (sink, "caps", to_caps, NULL);
+
+ /* FIXME: linking is still way too expensive, profile this properly */
+- GST_DEBUG ("linking src->csp");
+- if (!gst_element_link_pads (src, "src", csp, "sink"))
+- goto link_failed;
++ if (vcrop) {
++ GST_DEBUG ("linking src->csp2");
++ if (!gst_element_link_pads (src, "src", csp2, "sink"))
++ goto link_failed;
++
++ GST_DEBUG ("linking csp2->vcrop");
++ if (!gst_element_link_pads (csp2, "src", vcrop, "sink"))
++ goto link_failed;
++
++ GST_DEBUG ("linking vcrop->csp");
++ if (!gst_element_link_pads (vcrop, "src", csp, "sink"))
++ goto link_failed;
++ } else {
++ GST_DEBUG ("linking src->csp");
++ if (!gst_element_link_pads (src, "src", csp, "sink"))
++ goto link_failed;
++ }
+
+ GST_DEBUG ("linking csp->vscale");
+ if (!gst_element_link_pads_full (csp, "src", vscale, "sink",
+@@ -193,8 +231,12 @@ no_elements:
+ {
+ if (src)
+ gst_object_unref (src);
++ if (vcrop)
++ gst_object_unref (vcrop);
+ if (csp)
+ gst_object_unref (csp);
++ if (csp2)
++ gst_object_unref (csp2);
+ if (vscale)
+ gst_object_unref (vscale);
+ if (sink)
+@@ -209,7 +251,11 @@ no_elements:
+ no_pipeline:
+ {
+ gst_object_unref (src);
++ if (vcrop)
++ gst_object_unref (vcrop);
+ gst_object_unref (csp);
++ if (csp2)
++ gst_object_unref (csp2);
+ gst_object_unref (vscale);
+ gst_object_unref (sink);
+
+@@ -282,7 +328,8 @@ gst_video_convert_sample (GstSample * sample, const GstCaps * to_caps,
+ }
+
+ pipeline =
+- build_convert_frame_pipeline (&src, &sink, from_caps, to_caps_copy, &err);
++ build_convert_frame_pipeline (&src, &sink, from_caps,
++ gst_buffer_get_video_crop_meta (buf), to_caps_copy, &err);
+ if (!pipeline)
+ goto no_pipeline;
+
+@@ -646,8 +693,8 @@ gst_video_convert_sample_async (GstSample * sample,
+ }
+
+ pipeline =
+- build_convert_frame_pipeline (&src, &sink, from_caps, to_caps_copy,
+- &error);
++ build_convert_frame_pipeline (&src, &sink, from_caps,
++ gst_buffer_get_video_crop_meta (buf), to_caps_copy, &error);
+ if (!pipeline)
+ goto no_pipeline;
+
+--
+2.5.0
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/encodebin-Need-more-buffers-in-output-queue-for-bett.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/encodebin-Need-more-buffers-in-output-queue-for-bett.patch
index 325671721..325671721 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/encodebin-Need-more-buffers-in-output-queue-for-bett.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/encodebin-Need-more-buffers-in-output-queue-for-bett.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/get-caps-from-src-pad-when-query-caps.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/get-caps-from-src-pad-when-query-caps.patch
index 284abbe94..284abbe94 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/get-caps-from-src-pad-when-query-caps.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/get-caps-from-src-pad-when-query-caps.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch
new file mode 100644
index 000000000..01e944ddd
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base/make-gio_unix_2_0-dependency-configurable.patch
@@ -0,0 +1,47 @@
+From 10d2a977ee1d469f0bf9059bb2d0b55fd2eecbac Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Wed, 20 Jan 2016 13:00:00 -0800
+Subject: [PATCH] make gio_unix_2_0 dependency configurable
+
+Prior to 1.7.1, gst-plugins-base accepted a configure option to
+disable gio_unix_2_0, however it was implemented incorrectly using
+AG_GST_CHECK_FEATURE. That was fixed in 1.7.1 by making the
+dependency unconditional.
+
+ http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=aadefefba88afe4acbe64454650f24e7ce7c8d70
+
+To make builds deterministic, re-instate support for
+--disable-gio_unix_2_0, but implement it using the AC_ARG_ENABLE
+instead of AG_GST_CHECK_FEATURE.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ configure.ac | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 9c52aeb..26cacd6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -747,9 +747,16 @@ AC_SUBST(FT2_CFLAGS)
+ AC_SUBST(FT2_LIBS)
+
+ dnl *** gio-unix-2.0 for tests/check/pipelines/tcp.c ***
++AC_ARG_ENABLE([gio_unix_2_0],
++ [AS_HELP_STRING([--disable-gio_unix_2_0],[disable use of gio_unix_2_0])],
++ [],
++ [enable_gio_unix_2_0=yes])
++
++if test "x${enable_gio_unix_2_0}" != "xno"; then
+ PKG_CHECK_MODULES(GIO_UNIX_2_0, gio-unix-2.0 >= 2.24,
+ HAVE_GIO_UNIX_2_0="yes",
+ HAVE_GIO_UNIX_2_0="no")
++fi
+ AM_CONDITIONAL(USE_GIO_UNIX_2_0, test "x$HAVE_GIO_UNIX_2_0" = "xyes")
+
+ dnl *** finalize CFLAGS, LDFLAGS, LIBS
+--
+1.9.1
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_1.6.3.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_1.6.3.bb
new file mode 100644
index 000000000..429dc9338
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_1.6.3.bb
@@ -0,0 +1,25 @@
+include gstreamer1.0-plugins-base.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=c54ce9345727175ff66d17b67ff51f58 \
+ file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
+ file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607"
+
+# Note: The dependency on freetype was dropped shortly after the 1.7.1 release
+# so these lines should be removed during the update to 1.8.x
+# http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=183610c035dd6955c9b3540b940aec50474af031
+DEPENDS += "freetype"
+EXTRA_OECONF += "--disable-freetypetest"
+
+SRC_URI = " \
+ http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \
+ file://get-caps-from-src-pad-when-query-caps.patch \
+ file://0003-ssaparse-enhance-SSA-text-lines-parsing.patch \
+ file://0004-subparse-set-need_segment-after-sink-pad-received-GS.patch \
+ file://encodebin-Need-more-buffers-in-output-queue-for-bett.patch \
+ file://0005-convertframe-Support-video-crop-when-convert-frame.patch \
+"
+
+SRC_URI[md5sum] = "3ddde0ad598ef69f58d6a2e87f8b460f"
+SRC_URI[sha256sum] = "b6154f8fdba4877e95efd94610ef0ada4f0171cd12eb829a3c3c97345d9c7a75"
+
+S = "${WORKDIR}/gst-plugins-base-${PV}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_git.bb
new file mode 100644
index 000000000..38a9fcc29
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-base_git.bb
@@ -0,0 +1,27 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0-plugins-base.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=c54ce9345727175ff66d17b67ff51f58 \
+ file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
+ file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gst-plugins-base;name=base \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;name=common \
+ file://make-gio_unix_2_0-dependency-configurable.patch \
+"
+
+PV = "1.7.2+git${SRCPV}"
+
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
+
+SRCREV_base = "97e108bebaa58821f4566a74cbf0135e93407c01"
+SRCREV_common = "b64f03f6090245624608beb5d2fff335e23a01c0"
+SRCREV_FORMAT = "base"
+
+S = "${WORKDIR}/git"
+
+do_configure_prepend() {
+ ${S}/autogen.sh --noconfigure
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good.inc
index edaafe842..4621bf894 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good.inc
@@ -2,52 +2,52 @@ require gstreamer1.0-plugins.inc
LICENSE = "GPLv2+ & LGPLv2.1+"
-# libid3tag
-DEPENDS += "gstreamer1.0-plugins-base zlib bzip2 libcap"
+DEPENDS += "gstreamer1.0-plugins-base libcap zlib bzip2"
inherit gettext
-
PACKAGECONFIG ??= " \
- ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
+ ${GSTREAMER_ORC} \
${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)} \
- orc cairo flac gdk-pixbuf jpeg libpng soup speex taglib v4l2\
- "
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
+ cairo flac gdk-pixbuf gudev jpeg libpng soup speex taglib v4l2 \
+"
X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage"
-X11ENABLEOPTS = "--enable-x --enable-xshm"
-X11DISABLEOPTS = "--disable-x --disable-xshm"
-PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}"
-PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
+
PACKAGECONFIG[cairo] = "--enable-cairo,--disable-cairo,cairo"
+PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libiec61883 libavc1394 libraw1394"
PACKAGECONFIG[flac] = "--enable-flac,--disable-flac,flac"
PACKAGECONFIG[gdk-pixbuf] = "--enable-gdk_pixbuf,--disable-gdk_pixbuf,gdk-pixbuf"
PACKAGECONFIG[gudev] = "--with-gudev,--without-gudev,libgudev"
-PACKAGECONFIG[libv4l2] = "--with-libv4l2,--without-libv4l2,libv4l2"
PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack"
PACKAGECONFIG[jpeg] = "--enable-jpeg,--disable-jpeg,jpeg"
PACKAGECONFIG[libpng] = "--enable-libpng,--disable-libpng,libpng"
+PACKAGECONFIG[libv4l2] = "--with-libv4l2,--without-libv4l2,libv4l2"
+PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
PACKAGECONFIG[soup] = "--enable-soup,--disable-soup,libsoup-2.4"
PACKAGECONFIG[speex] = "--enable-speex,--disable-speex,speex"
PACKAGECONFIG[taglib] = "--enable-taglib,--disable-taglib,taglib"
+PACKAGECONFIG[v4l2] = "--enable-gst_v4l2,--disable-gst_v4l2"
PACKAGECONFIG[vpx] = "--enable-vpx,--disable-vpx,libvpx"
PACKAGECONFIG[wavpack] = "--enable-wavpack,--disable-wavpack,wavpack"
-PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libraw1394 libiec61883 libavc1394"
-PACKAGECONFIG[v4l2] = "--enable-gst_v4l2,--disable-gst_v4l2"
+PACKAGECONFIG[x11] = "--enable-x,--disable-x,${X11DEPENDS}"
EXTRA_OECONF += " \
+ --enable-bz2 \
--enable-oss \
+ --enable-zlib \
+ --disable-aalib \
+ --disable-aalibtest \
--disable-directsound \
- --disable-waveform \
+ --disable-libcaca \
+ --disable-libdv \
--disable-oss4 \
- --disable-sunaudio \
--disable-osx_audio \
--disable-osx_video \
- --disable-aalib \
- --disable-libcaca \
- --disable-libdv \
--disable-shout2 \
- --disable-examples \
+ --disable-sunaudio \
+ --disable-waveform \
"
FILES_${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch
index d1973d439..d1973d439 100755
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/avoid-including-sys-poll.h-directly.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/avoid-including-sys-poll.h-directly.patch
new file mode 100644
index 000000000..c7f3630ec
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/avoid-including-sys-poll.h-directly.patch
@@ -0,0 +1,44 @@
+From 4bfe2c8570a4a7080ec662504882969054d8a072 Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Wed, 3 Feb 2016 18:12:38 -0800
+Subject: [PATCH] avoid including <sys/poll.h> directly
+
+musl libc generates warnings if <sys/poll.h> is included directly.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ ext/raw1394/gstdv1394src.c | 2 +-
+ ext/raw1394/gsthdv1394src.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/ext/raw1394/gstdv1394src.c b/ext/raw1394/gstdv1394src.c
+index dbc7607..3c42b41 100644
+--- a/ext/raw1394/gstdv1394src.c
++++ b/ext/raw1394/gstdv1394src.c
+@@ -37,7 +37,7 @@
+ #include "config.h"
+ #endif
+ #include <unistd.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/socket.h>
+ #include <errno.h>
+ #include <fcntl.h>
+diff --git a/ext/raw1394/gsthdv1394src.c b/ext/raw1394/gsthdv1394src.c
+index 0b07a37..9785a15 100644
+--- a/ext/raw1394/gsthdv1394src.c
++++ b/ext/raw1394/gsthdv1394src.c
+@@ -36,7 +36,7 @@
+ #include "config.h"
+ #endif
+ #include <unistd.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/socket.h>
+ #include <errno.h>
+ #include <fcntl.h>
+--
+1.9.1
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/ensure-valid-sentinel-for-gst_structure_get.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/ensure-valid-sentinel-for-gst_structure_get.patch
new file mode 100644
index 000000000..bc7ac0b6a
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good/ensure-valid-sentinel-for-gst_structure_get.patch
@@ -0,0 +1,40 @@
+From 2169f2205c0205a220d826d7573e5a863bd36e0a Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Tue, 9 Feb 2016 14:00:00 -0800
+Subject: [PATCH] ensure valid sentinal for gst_structure_get()
+
+gst_structure_get() is declared with G_GNUC_NULL_TERMINATED, ie
+__attribute__((__sentinel__)), which means gcc will generate a
+warning if the last parameter passed to the function is not NULL
+(where a valid NULL in this context is defined as zero with any
+pointer type).
+
+The C code callers to gst_structure_get() within gst-plugins-good
+use the C NULL definition (ie ((void*)0)), which is a valid sentinel.
+
+However gstid3v2mux.cc uses the C++ NULL definition (ie 0L), which
+is not a valid sentinel without an explicit cast to a pointer type.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ ext/taglib/gstid3v2mux.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ext/taglib/gstid3v2mux.cc b/ext/taglib/gstid3v2mux.cc
+index 8651e77..a87234f 100644
+--- a/ext/taglib/gstid3v2mux.cc
++++ b/ext/taglib/gstid3v2mux.cc
+@@ -465,7 +465,7 @@ add_image_tag (ID3v2::Tag * id3v2tag, const GstTagList * list,
+
+ if (info_struct) {
+ if (gst_structure_get (info_struct, "image-type",
+- GST_TYPE_TAG_IMAGE_TYPE, &image_type, NULL)) {
++ GST_TYPE_TAG_IMAGE_TYPE, &image_type, (void *) NULL)) {
+ if (image_type > 0 && image_type <= 18) {
+ image_type += 2;
+ } else {
+--
+1.9.1
+
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_1.6.3.bb
index 943ab6039..0b4f43690 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.4.5.bb
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_1.6.3.bb
@@ -4,10 +4,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607 \
file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
-SRC_URI += "file://0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch \
- file://decrease_asteriskh263_rank.patch \
+SRC_URI = " \
+ http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
+ file://0001-gstrtpmp4gpay-set-dafault-value-for-MPEG4-without-co.patch \
"
-SRC_URI[md5sum] = "eaf1a6daf73749bc423feac301d60038"
-SRC_URI[sha256sum] = "79b1b5f3f7bcaa8a615202eb5e176121eeb8336960f70687e536ad78dbc7e641"
+
+SRC_URI[md5sum] = "a1958df7aa498b42793e2f2048673815"
+SRC_URI[sha256sum] = "24b19db70b2a83461ebddfe20033db432dadfdb5d4b54ffb1dfa0d830134a177"
S = "${WORKDIR}/gst-plugins-good-${PV}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_git.bb
new file mode 100644
index 000000000..9cadc9afc
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-good_git.bb
@@ -0,0 +1,28 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0-plugins-good.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+ file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607 \
+ file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gst-plugins-good;name=base \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;name=common \
+ file://avoid-including-sys-poll.h-directly.patch \
+ file://ensure-valid-sentinel-for-gst_structure_get.patch \
+"
+
+PV = "1.7.2+git${SRCPV}"
+
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
+
+SRCREV_base = "1b6fdce67c15d59957e395b1957aa625322092d4"
+SRCREV_common = "b64f03f6090245624608beb5d2fff335e23a01c0"
+SRCREV_FORMAT = "base"
+
+S = "${WORKDIR}/git"
+
+do_configure_prepend() {
+ ${S}/autogen.sh --noconfigure
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly.inc
index 63ba31632..aff223072 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly.inc
@@ -7,12 +7,14 @@ DEPENDS += "gstreamer1.0-plugins-base libid3tag"
inherit gettext
-
PACKAGECONFIG ??= " \
- orc a52dec lame mad mpeg2dec \
- "
+ ${GSTREAMER_ORC} \
+ a52dec lame mad mpeg2dec \
+"
PACKAGECONFIG[a52dec] = "--enable-a52dec,--disable-a52dec,liba52"
+PACKAGECONFIG[amrnb] = "--enable-amrnb,--disable-amrnb,opencore-amr"
+PACKAGECONFIG[amrwb] = "--enable-amrwb,--disable-amrwb,opencore-amr"
PACKAGECONFIG[cdio] = "--enable-cdio,--disable-cdio,libcdio"
PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread,libdvdread"
PACKAGECONFIG[lame] = "--enable-lame,--disable-lame,lame"
@@ -20,11 +22,10 @@ PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad"
PACKAGECONFIG[mpeg2dec] = "--enable-mpeg2dec,--disable-mpeg2dec,mpeg2dec"
PACKAGECONFIG[x264] = "--enable-x264,--disable-x264,x264"
-
EXTRA_OECONF += " \
- --disable-amrnb \
- --disable-amrwb \
--disable-sidplay \
--disable-twolame \
- "
+"
+FILES_${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
+FILES_${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_1.6.3.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_1.6.3.bb
new file mode 100644
index 000000000..7edfb81d2
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_1.6.3.bb
@@ -0,0 +1,13 @@
+include gstreamer1.0-plugins-ugly.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+ file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068"
+
+SRC_URI = " \
+ http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
+"
+
+SRC_URI[md5sum] = "dbd92afb3816cbfa90ab1f197144a2e2"
+SRC_URI[sha256sum] = "2fecf7b7c7882f8f62f1900048f4013f98c214fb3d3303d8d812245bb41fd064"
+
+S = "${WORKDIR}/gst-plugins-ugly-${PV}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_git.bb
new file mode 100644
index 000000000..69afe4cfb
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins-ugly_git.bb
@@ -0,0 +1,41 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0-plugins-ugly.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+ file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gst-plugins-ugly;name=base \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;name=common \
+"
+
+PV = "1.7.2+git${SRCPV}"
+
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
+
+SRCREV_base = "8bdb68edbc605e21314b608e7a39bdbaab7302b8"
+SRCREV_common = "b64f03f6090245624608beb5d2fff335e23a01c0"
+SRCREV_FORMAT = "base"
+
+S = "${WORKDIR}/git"
+
+# The mpg123 plugin was added prior to the 1.7.2 release
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-ugly/commit/?id=43bd45ba991ef3247957ca37cdcb52f4b8c0acb1
+PACKAGECONFIG[mpg123] = "--enable-mpg123,--disable-mpg123,mpg123"
+
+do_configure_prepend() {
+ ${S}/autogen.sh --noconfigure
+}
+
+# In 1.7.2, the mpg123 plugin was moved from -bad to -ugly
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=08d8aefcdaaf89ecb6dd53ec1e4f95cd42d01664
+# https://cgit.freedesktop.org/gstreamer/gst-plugins-ugly/commit/?id=43bd45ba991ef3247957ca37cdcb52f4b8c0acb1
+
+PACKAGESPLITFUNCS_append = " handle_mpg123_rename "
+
+python handle_mpg123_rename () {
+ d.setVar('RPROVIDES_gstreamer1.0-plugins-ugly-mpg123', 'gstreamer1.0-plugins-bad-mpg123')
+ d.setVar('RREPLACES_gstreamer1.0-plugins-ugly-mpg123', 'gstreamer1.0-plugins-bad-mpg123')
+ d.setVar('RCONFLICTS_gstreamer1.0-plugins-ugly-mpg123', 'gstreamer1.0-plugins-bad-mpg123')
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins.inc
new file mode 100644
index 000000000..2dcec509d
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-plugins.inc
@@ -0,0 +1,40 @@
+SUMMARY = "Plugins for the GStreamer multimedia framework 1.x"
+HOMEPAGE = "http://gstreamer.freedesktop.org/"
+BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
+SECTION = "multimedia"
+
+DEPENDS = "gstreamer1.0 glib-2.0-native"
+
+inherit autotools pkgconfig upstream-version-is-even gobject-introspection
+
+acpaths = "-I ${S}/common/m4 -I ${S}/m4"
+
+LIBV = "1.0"
+require gst-plugins-package.inc
+
+# Orc enables runtime JIT compilation of data processing routines from Orc
+# bytecode to SIMD instructions for various architectures (currently SSE, MMX,
+# MIPS, Altivec and NEON are supported).
+
+GSTREAMER_ORC ?= "orc"
+
+PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
+PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc orc-native"
+PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,valgrind"
+
+export ORCC = "${STAGING_DIR_NATIVE}${bindir}/orcc"
+
+EXTRA_OECONF = " \
+ --disable-examples \
+"
+
+SRC_URI_append = " file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch"
+
+delete_pkg_m4_file() {
+ # This m4 file is out of date and is missing PKG_CONFIG_SYSROOT_PATH tweaks which we need for introspection
+ rm "${S}/common/m4/pkg.m4" || true
+}
+
+do_configure[prefuncs] += " delete_pkg_m4_file"
+
+PACKAGES_DYNAMIC = "^${PN}-.*"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server.inc
index 4423f40b4..ae6d36477 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server.inc
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server.inc
@@ -1,7 +1,8 @@
SUMMARY = "A library on top of GStreamer for building an RTSP server"
+HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/"
SECTION = "multimedia"
LICENSE = "LGPLv2"
-HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/"
+
DEPENDS = "gstreamer1.0 libcgroup gstreamer1.0-plugins-base"
PNREAL = "gst-rtsp-server"
@@ -12,7 +13,7 @@ SRC_URI = "http://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz
S = "${WORKDIR}/${PNREAL}-${PV}"
-inherit autotools pkgconfig gobject-introspection
+inherit autotools pkgconfig upstream-version-is-even gobject-introspection
delete_pkg_m4_file() {
# This m4 file is out of date and is missing PKG_CONFIG_SYSROOT_PATH tweaks which we need for introspection
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-Don-t-hardcode-libtool-name-when-using-introspection.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server/0001-Don-t-hardcode-libtool-name-when-using-introspection.patch
index 89d6384ad..89d6384ad 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-Don-t-hardcode-libtool-name-when-using-introspection.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server/0001-Don-t-hardcode-libtool-name-when-using-introspection.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server_1.6.2.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server_1.6.2.bb
new file mode 100644
index 000000000..5bdae6cf9
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0-rtsp-server_1.6.2.bb
@@ -0,0 +1,6 @@
+include gstreamer1.0-rtsp-server.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d"
+
+SRC_URI[md5sum] = "a1cafefb5fc14ac5d7e7d8cdbdfa9694"
+SRC_URI[sha256sum] = "0f51f9879556c0950203c766b09a1b62f1f25b17f9a7d516e01b13ecf93c8858"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0.inc
new file mode 100644
index 000000000..10b4668e5
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0.inc
@@ -0,0 +1,58 @@
+SUMMARY = "GStreamer 1.0 multimedia framework"
+DESCRIPTION = "GStreamer is a multimedia framework for encoding and decoding video and sound. \
+It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime."
+HOMEPAGE = "http://gstreamer.freedesktop.org/"
+BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
+SECTION = "multimedia"
+LICENSE = "LGPLv2+"
+
+DEPENDS = "glib-2.0 glib-2.0-native libcap libxml2 bison-native flex-native"
+
+inherit autotools pkgconfig gettext upstream-version-is-even gobject-introspection
+
+# This way common/m4/introspection.m4 will come first
+# (it has a custom INTROSPECTION_INIT macro, and so must be used instead of our common introspection.m4 file)
+acpaths = "-I ${S}/common/m4 -I ${S}/m4"
+
+SRC_URI_append = " \
+ file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \
+"
+
+PACKAGECONFIG ??= ""
+
+PACKAGECONFIG[check] = "--enable-check,--disable-check"
+PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
+PACKAGECONFIG[tests] = "--enable-tests,--disable-tests"
+PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,valgrind,"
+
+EXTRA_OECONF = " \
+ --disable-dependency-tracking \
+ --disable-docbook \
+ --disable-examples \
+ --disable-gtk-doc \
+"
+
+CACHED_CONFIGUREVARS += "ac_cv_header_valgrind_valgrind_h=no"
+
+# musl libc generates warnings if <sys/poll.h> is included directly
+CACHED_CONFIGUREVARS += "ac_cv_header_sys_poll_h=no"
+
+PACKAGES += "${PN}-bash-completion"
+
+FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
+FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la ${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include"
+FILES_${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*"
+
+RRECOMMENDS_${PN}_qemux86 += "kernel-module-snd-ens1370 kernel-module-snd-rawmidi"
+RRECOMMENDS_${PN}_qemux86-64 += "kernel-module-snd-ens1370 kernel-module-snd-rawmidi"
+
+delete_pkg_m4_file() {
+ # This m4 file is out of date and is missing PKG_CONFIG_SYSROOT_PATH tweaks which we need for introspection
+ rm "${S}/common/m4/pkg.m4" || true
+}
+
+do_configure[prefuncs] += " delete_pkg_m4_file"
+
+do_compile_prepend() {
+ export GIR_EXTRA_LIBS_PATH="${B}/gst/.libs:${B}/libs/gst/base/.libs"
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-Fix-crash-with-gst-inspect.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0/0001-Fix-crash-with-gst-inspect.patch
index 94f5cc56e..94f5cc56e 100644
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-Fix-crash-with-gst-inspect.patch
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0/0001-Fix-crash-with-gst-inspect.patch
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_1.6.3.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_1.6.3.bb
new file mode 100644
index 000000000..ba1b83b08
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_1.6.3.bb
@@ -0,0 +1,14 @@
+include gstreamer1.0.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
+ file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
+
+SRC_URI = " \
+ http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
+ file://0001-Fix-crash-with-gst-inspect.patch \
+"
+
+SRC_URI[md5sum] = "b4cdeb2b9cb20dd6ac022a4f417eae0d"
+SRC_URI[sha256sum] = "22f9568d67b87cf700a111f381144bd37cb93790a77e4e331db01fe854a37f24"
+
+S = "${WORKDIR}/gstreamer-${PV}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_git.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_git.bb
new file mode 100644
index 000000000..7715bb202
--- /dev/null
+++ b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/gstreamer_bp_krogoth/gstreamer1.0_git.bb
@@ -0,0 +1,30 @@
+DEFAULT_PREFERENCE = "-1"
+
+include gstreamer1.0.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
+ file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/gstreamer/gstreamer;name=base \
+ git://anongit.freedesktop.org/gstreamer/common;destsuffix=git/common;name=common \
+"
+
+PV = "1.7.2+git${SRCPV}"
+
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
+
+SRCREV_base = "9e33bfa2c7a5f43da2c49b0a8235fd43cba9feaf"
+SRCREV_common = "b64f03f6090245624608beb5d2fff335e23a01c0"
+SRCREV_FORMAT = "base"
+
+S = "${WORKDIR}/git"
+
+# The option to configure tracer hooks was added prior to the 1.7.2 release
+# https://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=e5ca47236e4df4683707f0bcf99181a937d358d5
+PACKAGECONFIG[gst-tracer-hooks] = "--enable-gst-tracer-hooks,--disable-gst-tracer-hooks,"
+PACKAGECONFIG[trace-historic] = "--enable-trace,--disable-trace,"
+
+do_configure_prepend() {
+ ${S}/autogen.sh --noconfigure
+}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch
deleted file mode 100644
index 042a32c04..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From deba0da45ec821209a7ed148a4521d562e6512cd Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <dv@pseudoterminal.org>
-Date: Wed, 27 Aug 2014 14:47:25 +0200
-Subject: [PATCH] gl: do not check for GL/GLU/EGL/GLES2 libs if disabled in
- configuration
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=735522]
-
-Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
----
- configure.ac | 14 ++++++++++----
- 1 file changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 1a46afb..e85d4ba 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -661,10 +661,16 @@ case $host in
- fi
- ;;
- *)
-- AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
-- AG_GST_CHECK_LIBHEADER(GLU, GLU, gluSphere,, GL/glu.h)
-- AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
-- AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
-+ if test "x$NEED_GL" != "xno"; then
-+ AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
-+ AG_GST_CHECK_LIBHEADER(GLU, GLU, gluSphere,, GL/glu.h)
-+ fi
-+ if test "x$NEED_GLES2" != "xno"; then
-+ AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
-+ fi
-+ if test "x$NEED_EGL" != "xno"; then
-+ AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
-+ fi
-
- old_LIBS=$LIBS
- old_CFLAGS=$CFLAGS
---
-1.8.3.2
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.5.bb
deleted file mode 100644
index bfa137716..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.4.5.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-include gstreamer1.0-plugins-bad.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
- file://gst/tta/filters.h;beginline=12;endline=29;md5=8a08270656f2f8ad7bb3655b83138e5a \
- file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 \
- file://gst/tta/crc32.h;beginline=12;endline=29;md5=27db269c575d1e5317fffca2d33b3b50"
-
-SRC_URI += "file://0001-gl-do-not-check-for-GL-GLU-EGL-GLES2-libs-if-disable.patch \
- file://0001-glimagesink-Downrank-to-marginal.patch \
- file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \
- "
-
-SRC_URI[md5sum] = "e0bb39412cf4a48fe0397bcf3a7cd451"
-SRC_URI[sha256sum] = "152fad7250683d72f9deb36c5685428338365fe4a4c87ffe15e38783b14f983c"
-
-S = "${WORKDIR}/gst-plugins-bad-${PV}"
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base.inc
deleted file mode 100644
index 173fef3d4..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base.inc
+++ /dev/null
@@ -1,42 +0,0 @@
-require gstreamer1.0-plugins.inc
-
-LICENSE = "GPLv2+ & LGPLv2+"
-
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxv', '', d)}"
-DEPENDS += "freetype liboil util-linux"
-
-inherit gettext
-
-PACKAGES_DYNAMIC =+ "^libgst.*"
-
-PACKAGECONFIG ??= " \
- ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \
- orc ivorbis ogg theora vorbis pango \
- "
-
-X11DEPENDS = "virtual/libx11 libsm libxrender"
-X11ENABLEOPTS = "--enable-x --enable-xvideo --enable-xshm"
-X11DISABLEOPTS = "--disable-x --disable-xvideo --disable-xshm"
-PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}"
-PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
-PACKAGECONFIG[ivorbis] = "--enable-ivorbis,--disable-ivorbis,tremor"
-PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libogg"
-PACKAGECONFIG[theora] = "--enable-theora,--disable-theora,libtheora"
-PACKAGECONFIG[vorbis] = "--enable-vorbis,--disable-vorbis,libvorbis"
-PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango"
-# libvisual do not seem to exist anywhere in OE
-PACKAGECONFIG[visual] = "--enable-libvisual,--disable-libvisual,libvisual"
-PACKAGECONFIG[cdparanoia] = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia"
-
-EXTRA_OECONF += " \
- --disable-freetypetest \
-"
-
-FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
-
-CACHED_CONFIGUREVARS_append_x86 = " ac_cv_header_emmintrin_h=no ac_cv_header_xmmintrin_h=no"
-
-do_compile_prepend() {
- export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/tag/.libs:${B}/gst-libs/gst/video/.libs:${B}/gst-libs/gst/audio/.libs"
-}
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-basetextoverlay-make-memory-copy-when-video-buffer-s.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-basetextoverlay-make-memory-copy-when-video-buffer-s.patch
deleted file mode 100644
index 03dca956a..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-basetextoverlay-make-memory-copy-when-video-buffer-s.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From 3781d40940d46d7e6a502092d24aac7997f6da5b Mon Sep 17 00:00:00 2001
-From: Mingke Wang <mingke.wang@freescale.com>
-Date: Thu, 5 Mar 2015 12:06:23 +0800
-Subject: [PATCH 1/4] basetextoverlay: make memory copy when video buffer's
- memory is ready only
-
-1. since gst_buffer_make_writable just lookup the refcount to determine if
- a buffer is writable, and it will use _gst_buffer_copy() which don't
- perform a deep memory copy even if the flag of a memory is set to
- GST_MEMORY_FLAG_READONLY. So, we detect the memory flag and use
- gst_buffer_copy_region with GST_BUFFER_COPY_DEEP parameter to perform
- deep memory copy. if the allocator of a memory don't support mem_copy
- interface, the it will return NULL, if this case, we can use
- gst_buffer_make_writable() to get a shared memory buffer or the orignal
- buffer if the buffer's refcount is 1.
-2. new feature is no added if caps has no feature during caps negotiation
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=747495]
-
-Signed-off-by: Mingke Wang <mingke.wang@freescale.com>
-
-diff --git a/ext/pango/gstbasetextoverlay.c b/ext/pango/gstbasetextoverlay.c
-index c919861..3c0a1d7 100755
---- a/ext/pango/gstbasetextoverlay.c
-+++ b/ext/pango/gstbasetextoverlay.c
-@@ -747,6 +747,7 @@ gst_base_text_overlay_negotiate (GstBaseTextOverlay * overlay, GstCaps * caps)
- if (f == NULL) {
- f = gst_caps_features_new
- (GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION, NULL);
-+ gst_caps_set_features(overlay_caps, 0, f);
- } else {
- gst_caps_features_add (f,
- GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION);
-@@ -1890,16 +1891,71 @@ gst_base_text_overlay_push_frame (GstBaseTextOverlay * overlay,
- if (gst_pad_check_reconfigure (overlay->srcpad))
- gst_base_text_overlay_negotiate (overlay, NULL);
-
-- video_frame = gst_buffer_make_writable (video_frame);
--
- if (overlay->attach_compo_to_buffer) {
- GST_DEBUG_OBJECT (overlay, "Attaching text overlay image to video buffer");
-+ video_frame = gst_buffer_make_writable (video_frame);
- gst_buffer_add_video_overlay_composition_meta (video_frame,
- overlay->composition);
- /* FIXME: emulate shaded background box if want_shading=true */
- goto done;
- }
-
-+ gint m = gst_buffer_n_memory(video_frame);
-+ gboolean mem_rdonly = FALSE;
-+ GstMemory *mem;
-+ GstBuffer *orig = video_frame;
-+
-+ while (--m>=0) {
-+ mem = gst_buffer_get_memory(video_frame, m);
-+ if (GST_MEMORY_IS_READONLY(mem)) {
-+ mem_rdonly = TRUE;
-+ gst_memory_unref (mem);
-+ break;
-+ }
-+ gst_memory_unref (mem);
-+ }
-+
-+ if (mem_rdonly) {
-+ // since gst_buffer_make_writable just lookup the refcount to determine if
-+ // a buffer is writable, and it will use _gst_buffer_copy() which don't
-+ // perform a deep memory copy even if the flag of a memory is set to
-+ // GST_MEMORY_FLAG_READONLY. So, we detect the memory flag and use
-+ // gst_buffer_copy_region with GST_BUFFER_COPY_DEEP parameter to perform
-+ // deep memory copy. if the allocator of a memory don't support mem_copy
-+ // interface, the it will return NULL, if this case, we can use
-+ // gst_buffer_make_writable() to get a shared memory buffer or the orignal
-+ // buffer if the buffer's refcount is 1.
-+ GstBuffer *new_buf = gst_buffer_copy_region (video_frame,
-+ GST_BUFFER_COPY_ALL | GST_BUFFER_COPY_DEEP, 0, -1);
-+
-+ GST_DEBUG_OBJECT (overlay, "copy %s video frame buffer %p -> %p",
-+ g_type_name (GST_MINI_OBJECT_TYPE (video_frame)), video_frame, new_buf);
-+
-+ if (!new_buf) {
-+ //maybe the allocator don't support mem_copy interface, the we just use
-+ //gst_buffer_make_writable() to get a writable buffer.
-+ video_frame = gst_buffer_make_writable (video_frame);
-+ } else {
-+ gst_mini_object_unref (video_frame);
-+ GST_BUFFER_FLAG_UNSET (new_buf, GST_BUFFER_FLAG_TAG_MEMORY);
-+ video_frame = new_buf;
-+ }
-+
-+ if (!video_frame) {
-+ GST_WARNING_OBJECT (overlay, "make writable buffer failed");
-+ return GST_FLOW_OK;
-+ }
-+
-+ m = gst_buffer_n_memory(video_frame);
-+ while (--m>=0) {
-+ mem = gst_buffer_get_memory(video_frame, m);
-+ GST_MEMORY_FLAG_UNSET (mem, GST_MEMORY_FLAG_READONLY);
-+ gst_memory_unref (mem);
-+ }
-+ } else {
-+ video_frame = gst_buffer_make_writable (video_frame);
-+ }
-+
- if (!gst_video_frame_map (&frame, &overlay->info, video_frame,
- GST_MAP_READWRITE))
- goto invalid_frame;
-@@ -1918,6 +1974,18 @@ gst_base_text_overlay_push_frame (GstBaseTextOverlay * overlay,
-
- gst_video_frame_unmap (&frame);
-
-+ if (mem_rdonly && orig == video_frame) {
-+ //if we used the original buffer and it's mem is set to read only,
-+ //recover the memory ready only flag since we unset it before
-+ // gst_video_frame_map ()
-+ m = gst_buffer_n_memory(video_frame);
-+ while (--m>=0) {
-+ mem = gst_buffer_get_memory(video_frame, m);
-+ GST_MEMORY_FLAGS(mem) |= (GST_MEMORY_FLAG_READONLY);
-+ gst_memory_unref (mem);
-+ }
-+ }
-+
- done:
-
- return gst_pad_push (overlay->srcpad, video_frame);
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-video-frame-Don-t-ref-buffers-twice-when-mapping.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-video-frame-Don-t-ref-buffers-twice-when-mapping.patch
deleted file mode 100644
index 3db4724fe..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-video-frame-Don-t-ref-buffers-twice-when-mapping.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 269f642c45d85cfd630ed490478e6bd6b71a767f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
-Date: Tue, 16 Sep 2014 01:07:18 +0300
-Subject: [PATCH] video-frame: Don't ref buffers twice when mapping
-
-Upstream-Status: Backport [1.5.1]
----
- gst-libs/gst/video/video-frame.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gst-libs/gst/video/video-frame.c b/gst-libs/gst/video/video-frame.c
-index 01f23c0..8a9ae96 100644
---- a/gst-libs/gst/video/video-frame.c
-+++ b/gst-libs/gst/video/video-frame.c
-@@ -105,7 +105,7 @@ gst_video_frame_map_id (GstVideoFrame * frame, GstVideoInfo * info,
- frame->data[i] = frame->map[0].data + info->offset[i];
- }
- }
-- frame->buffer = gst_buffer_ref (buffer);
-+ frame->buffer = buffer;
- if ((flags & GST_VIDEO_FRAME_MAP_FLAG_NO_REF) == 0)
- gst_buffer_ref (frame->buffer);
-
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-gstplaysink-don-t-set-async-of-custom-text-sink-to-f.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-gstplaysink-don-t-set-async-of-custom-text-sink-to-f.patch
deleted file mode 100644
index 39c146aad..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-gstplaysink-don-t-set-async-of-custom-text-sink-to-f.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 0a78555ea6c8c2f1ee27ee4707e8d7aa00ab7a66 Mon Sep 17 00:00:00 2001
-From: Mingke Wang <mingke.wang@freescale.com>
-Date: Thu, 19 Mar 2015 14:15:25 +0800
-Subject: [PATCH 2/4] gstplaysink: don't set async of custom text-sink to
- false
-
-set async to false lead to A/V sync problem when seeking.
-the preroll need use GAP event instead of set async to false.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=747499]
-
-Signed-off-by: Mingke Wang <mingke.wang@freescale.com>
-
-diff --git a/gst/playback/gstplaysink.c b/gst/playback/gstplaysink.c
-old mode 100644
-new mode 100755
-index f5a2d42..fba0172
---- a/gst/playback/gstplaysink.c
-+++ b/gst/playback/gstplaysink.c
-@@ -2408,7 +2408,7 @@ gen_text_chain (GstPlaySink * playsink)
- G_TYPE_BOOLEAN);
- if (elem) {
- /* make sure the sparse subtitles don't participate in the preroll */
-- g_object_set (elem, "async", FALSE, NULL);
-+ //g_object_set (elem, "async", FALSE, NULL);
- GST_DEBUG_OBJECT (playsink, "adding custom text sink");
- gst_bin_add (bin, chain->sink);
- /* NOTE streamsynchronizer needs streams decoupled */
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-video-frame-Add-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-video-frame-Add-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch
deleted file mode 100644
index c465b5cee..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-video-frame-Add-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From 40a293d44d1aeccf5eb8e86f23a0b13666111c5c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
-Date: Fri, 12 Sep 2014 14:39:16 +0300
-Subject: [PATCH 2/3] video-frame: Add GST_VIDEO_FRAME_MAP_FLAG_NO_REF
-
-This makes sure that the buffer is not reffed another time when
-storing it in the GstVideoFrame, keeping it writable if it was
-writable.
-
-Upstream-Status: Backport [1.5.1]
-https://bugzilla.gnome.org/show_bug.cgi?id=736118
----
- gst-libs/gst/video/video-frame.c | 9 ++++++++-
- gst-libs/gst/video/video-frame.h | 18 ++++++++++++++++++
- 2 files changed, 26 insertions(+), 1 deletion(-)
-
-diff --git a/gst-libs/gst/video/video-frame.c b/gst-libs/gst/video/video-frame.c
-index 537cf70..01f23c0 100644
---- a/gst-libs/gst/video/video-frame.c
-+++ b/gst-libs/gst/video/video-frame.c
-@@ -106,6 +106,9 @@ gst_video_frame_map_id (GstVideoFrame * frame, GstVideoInfo * info,
- }
- }
- frame->buffer = gst_buffer_ref (buffer);
-+ if ((flags & GST_VIDEO_FRAME_MAP_FLAG_NO_REF) == 0)
-+ gst_buffer_ref (frame->buffer);
-+
- frame->meta = meta;
-
- /* buffer flags enhance the frame flags */
-@@ -189,11 +192,13 @@ gst_video_frame_unmap (GstVideoFrame * frame)
- GstBuffer *buffer;
- GstVideoMeta *meta;
- gint i;
-+ GstMapFlags flags;
-
- g_return_if_fail (frame != NULL);
-
- buffer = frame->buffer;
- meta = frame->meta;
-+ flags = frame->map[0].flags;
-
- if (meta) {
- for (i = 0; i < frame->info.finfo->n_planes; i++) {
-@@ -202,7 +207,9 @@ gst_video_frame_unmap (GstVideoFrame * frame)
- } else {
- gst_buffer_unmap (buffer, &frame->map[0]);
- }
-- gst_buffer_unref (buffer);
-+
-+ if ((flags & GST_VIDEO_FRAME_MAP_FLAG_NO_REF) == 0)
-+ gst_buffer_unref (frame->buffer);
- }
-
- /**
-diff --git a/gst-libs/gst/video/video-frame.h b/gst-libs/gst/video/video-frame.h
-index 627fab0..f8e6304 100644
---- a/gst-libs/gst/video/video-frame.h
-+++ b/gst-libs/gst/video/video-frame.h
-@@ -149,6 +149,24 @@ typedef enum {
- GST_VIDEO_BUFFER_FLAG_LAST = (GST_BUFFER_FLAG_LAST << 8)
- } GstVideoBufferFlags;
-
-+/**
-+ * GstVideoBufferFlags:
-+ * @GST_VIDEO_FRAME_MAP_FLAG_NO_REF: Don't take another reference of the buffer and store it in
-+ * the GstVideoFrame. This makes sure that the buffer stays
-+ * writable while the frame is mapped, but requires that the
-+ * buffer reference stays valid until the frame is unmapped again.
-+ * @GST_VIDEO_FRAME_MAP_FLAG_LAST: Offset to define more flags
-+ *
-+ * Additional mapping flags for gst_video_frame_map().
-+ *
-+ * Since: 1.6
-+ */
-+typedef enum {
-+ GST_VIDEO_FRAME_MAP_FLAG_NO_REF = (GST_MAP_FLAG_LAST << 0),
-+ GST_VIDEO_FRAME_MAP_FLAG_LAST = (GST_MAP_FLAG_LAST << 8)
-+ /* 8 more flags possible afterwards */
-+} GstVideoFrameMapFlags;
-+
- G_END_DECLS
-
- #endif /* __GST_VIDEO_FRAME_H__ */
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-videofilter-Use-new-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-videofilter-Use-new-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch
deleted file mode 100644
index 132bf06f7..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-videofilter-Use-new-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 3a7cdcdfc9c5b0d20394fe51b3b8cda23931ca6d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
-Date: Fri, 12 Sep 2014 14:41:01 +0300
-Subject: [PATCH 3/3] videofilter: Use new GST_VIDEO_FRAME_MAP_FLAG_NO_REF
-
-Upstream-Status: Backport [1.5.1]
-https://bugzilla.gnome.org/show_bug.cgi?id=736118
----
- gst-libs/gst/video/gstvideofilter.c | 23 ++++-------------------
- 1 file changed, 4 insertions(+), 19 deletions(-)
-
-diff --git a/gst-libs/gst/video/gstvideofilter.c b/gst-libs/gst/video/gstvideofilter.c
-index e1fa2c1..874b2e8 100644
---- a/gst-libs/gst/video/gstvideofilter.c
-+++ b/gst-libs/gst/video/gstvideofilter.c
-@@ -260,23 +260,15 @@ gst_video_filter_transform (GstBaseTransform * trans, GstBuffer * inbuf,
- if (fclass->transform_frame) {
- GstVideoFrame in_frame, out_frame;
-
-- if (!gst_video_frame_map (&in_frame, &filter->in_info, inbuf, GST_MAP_READ))
-+ if (!gst_video_frame_map (&in_frame, &filter->in_info, inbuf,
-+ GST_MAP_READ | GST_VIDEO_FRAME_MAP_FLAG_NO_REF))
- goto invalid_buffer;
-
- if (!gst_video_frame_map (&out_frame, &filter->out_info, outbuf,
-- GST_MAP_WRITE))
-+ GST_MAP_WRITE | GST_VIDEO_FRAME_MAP_FLAG_NO_REF))
- goto invalid_buffer;
-
-- /* GstVideoFrame has another reference, so the buffer looks unwriteable,
-- * meaning that we can't attach any metas or anything to it. Other
-- * map() functions like gst_buffer_map() don't get another reference
-- * of the buffer and expect the buffer reference to be kept until
-- * the buffer is unmapped again. */
-- gst_buffer_unref (inbuf);
-- gst_buffer_unref (outbuf);
- res = fclass->transform_frame (filter, &in_frame, &out_frame);
-- gst_buffer_ref (inbuf);
-- gst_buffer_ref (outbuf);
-
- gst_video_frame_unmap (&out_frame);
- gst_video_frame_unmap (&in_frame);
-@@ -317,7 +309,7 @@ gst_video_filter_transform_ip (GstBaseTransform * trans, GstBuffer * buf)
- GstVideoFrame frame;
- GstMapFlags flags;
-
-- flags = GST_MAP_READ;
-+ flags = GST_MAP_READ | GST_VIDEO_FRAME_MAP_FLAG_NO_REF;
-
- if (!gst_base_transform_is_passthrough (trans))
- flags |= GST_MAP_WRITE;
-@@ -325,14 +317,7 @@ gst_video_filter_transform_ip (GstBaseTransform * trans, GstBuffer * buf)
- if (!gst_video_frame_map (&frame, &filter->in_info, buf, flags))
- goto invalid_buffer;
-
-- /* GstVideoFrame has another reference, so the buffer looks unwriteable,
-- * meaning that we can't attach any metas or anything to it. Other
-- * map() functions like gst_buffer_map() don't get another reference
-- * of the buffer and expect the buffer reference to be kept until
-- * the buffer is unmapped again. */
-- gst_buffer_unref (buf);
- res = fclass->transform_frame_ip (filter, &frame);
-- gst_buffer_ref (buf);
-
- gst_video_frame_unmap (&frame);
- } else {
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event-if.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event-if.patch
deleted file mode 100644
index aa55de10e..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event-if.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From b608d027fff6efc2d1988ebf169cbe3b2b44a61b Mon Sep 17 00:00:00 2001
-From: zhouming <b42586@freescale.com>
-Date: Thu, 8 May 2014 12:01:17 +0800
-Subject: [PATCH] ENGR00312034: do not change eos event to gap event if no
- data has passed to streamsynchronizer.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=727074
-
-Upstream-Status: Pending
-
-Signed-off-by: zhouming <b42586@freescale.com>
----
- gst/playback/gststreamsynchronizer.c | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/gst/playback/gststreamsynchronizer.c b/gst/playback/gststreamsynchronizer.c
-index 3997d1b..3e17c55 100644
---- a/gst/playback/gststreamsynchronizer.c
-+++ b/gst/playback/gststreamsynchronizer.c
-@@ -488,12 +488,11 @@ gst_stream_synchronizer_sink_event (GstPad * pad, GstObject * parent,
- }
- g_slist_free (pads);
- } else {
-- /* if EOS, but no data has passed, then send something to replace EOS
-- * for preroll purposes */
-+ /* if EOS, but no data has passed, then send EOS event */
- if (!seen_data) {
- GstEvent *gap_event;
-
-- gap_event = gst_event_new_gap (timestamp, GST_CLOCK_TIME_NONE);
-+ gap_event = gst_event_new_eos ();
- ret = gst_pad_push_event (srcpad, gap_event);
- } else {
- GstEvent *gap_event;
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event2.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event2.patch
deleted file mode 100755
index f24bc7cd6..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event2.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-commit f9536544f5ad182b4f78d0143d1daa45dd64e624
-Author: Song Bing <b06498@freescale.com>
-Date: Thu Oct 9 17:37:43 2014 +0800
-
-[gststreamsynchronizer] send EOS event insterd of GAP event as GAP
-event has issue when A/V have different duration.
-
-send EOS event insterd of GAP event as GAP event has issue when A/V have different duration.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=736655]
-
-Signed-off-by: Song Bing <b06498@freescale.com>
-
-diff --git a/gst/playback/gststreamsynchronizer.c b/gst/playback/gststreamsynchronizer.c
-index 3e17c55..ff42d72 100644
---- a/gst/playback/gststreamsynchronizer.c
-+++ b/gst/playback/gststreamsynchronizer.c
-@@ -488,19 +488,24 @@ gst_stream_synchronizer_sink_event (GstPad * pad, GstObject * parent,
- }
- g_slist_free (pads);
- } else {
-- /* if EOS, but no data has passed, then send EOS event */
-+ /* if EOS, but no data has passed, then send something to replace EOS
-+ * for preroll purposes */
- if (!seen_data) {
-- GstEvent *gap_event;
-+ GstEvent *eos_event;
-
-- gap_event = gst_event_new_eos ();
-- ret = gst_pad_push_event (srcpad, gap_event);
-+ /* FIXME: change to EOS event as GAP event has issue when A/V have
-+ * different duration */
-+ eos_event = gst_event_new_eos ();
-+ ret = gst_pad_push_event (srcpad, eos_event);
- } else {
-- GstEvent *gap_event;
-+ GstEvent *eos_event;
-
- /* FIXME: Also send a GAP event to let audio sinks start their
- * clock in case they did not have enough data yet */
-- gap_event = gst_event_new_gap (timestamp, GST_CLOCK_TIME_NONE);
-- ret = gst_pad_push_event (srcpad, gap_event);
-+ /* FIXME: change to EOS event as GAP event has issue when A/V have
-+ * different duration */
-+ eos_event = gst_event_new_eos ();
-+ ret = gst_pad_push_event (srcpad, eos_event);
- }
- }
- gst_object_unref (srcpad);
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event3.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event3.patch
deleted file mode 100755
index 731be686d..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/do-not-change-eos-event-to-gap-event3.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-commit 3f7052aac5e0118a9a9e09fff2f65091be448972
-Author: Song Bing <b06498@freescale.com>
-Date: Thu Oct 23 13:35:13 2014 +0800
-
-[streamsynchronizer] One stream can finish playback.
-
-As changed GAP event EOS event, so EOS will send more times, which will
-cause send function return error.
-Streamsynchronizer will don’t send second track EOS event if send the
-first track EOS return fail. Fixed by ignore the return error.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=736655]
-
-Signed-off-by: Song Bing b06498@freescale.com
-
-diff --git a/gst/playback/gststreamsynchronizer.c b/gst/playback/gststreamsynchronizer.c
-index ff42d72..d1732c3 100644
---- a/gst/playback/gststreamsynchronizer.c
-+++ b/gst/playback/gststreamsynchronizer.c
-@@ -482,7 +482,10 @@ gst_stream_synchronizer_sink_event (GstPad * pad, GstObject * parent,
- while (epad) {
- pad = epad->data;
- GST_DEBUG_OBJECT (pad, "Pushing EOS");
-- ret = ret && gst_pad_push_event (pad, gst_event_new_eos ());
-+ /* FIXME: remove error check as GAP changed to EOS will send EOS
-+ * more times, which will cause return error and then don't send
-+ * EOS event to following tracks. */
-+ gst_pad_push_event (pad, gst_event_new_eos ());
- gst_object_unref (pad);
- epad = g_slist_next (epad);
- }
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch
deleted file mode 100755
index ef3f75fba..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/fix-id3demux-utf16-to-utf8-issue.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-Author: Lyon Wang <b12696@freescale.com>
-Date: Thu Oct 9 17:37:43 2014 +0800
-
-[id3v2frames] Bug fix for id3demux issue
-
-Fix the issue that id3 tags utf16 charaters cannot be extreacted in id3demux
-when I tried to get the id3v2 tag such as TIT2, TALB etc. it will return extrac
-failed.
-
-Checked in id3v2frame.c, When parse the UTF-16 streams, it used g_convert() to
-convert the buffer from UTF-16 to UTF-8, however it will return err that this
-conversion is not supported which cause the extraction failed with these UTF-16
-characters.
-
-In the patch, use g_utf16_to_utf8() instead of g_convert, which can convert the
-character format successfully.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=741144
-
-Upstream-Status: Backport [1.5.1]
-
-Signed-off-by: Lyon Wang <b12696@freescale.com>
-
-diff --git a/gst-libs/gst/tag/id3v2frames.c b/gst-libs/gst/tag/id3v2frames.c
-old mode 100644
-new mode 100755
-index 3785c2a..7b9d8ac
---- a/gst-libs/gst/tag/id3v2frames.c
-+++ b/gst-libs/gst/tag/id3v2frames.c
-@@ -1057,14 +1057,17 @@ parse_insert_string_field (guint8 encoding, gchar * data, gint data_size,
- data_size -= 2;
- }
-
-- field = g_convert (data, data_size, "UTF-8", in_encode, NULL, NULL, NULL);
--
-- if (field == NULL || g_utf8_validate (field, -1, NULL) == FALSE) {
-- /* As a fallback, try interpreting UTF-16 in the other endianness */
-- if (in_encode == utf16beenc)
-- field = g_convert (data, data_size, "UTF-8", utf16leenc,
-- NULL, NULL, NULL);
-+ if (in_encode == utf16beenc) {
-+ gunichar2 *data_utf16;
-+ guint i;
-+ data_utf16 = (gunichar2 *) data;
-+ for (i=0; i<(data_size>>1); i++) {
-+ data_utf16[i] = GUINT16_TO_LE (data_utf16[i]);
-+ }
- }
-+ //field = g_convert (data, data_size, "UTF-8", in_encode, NULL, NULL, NULL);
-+ field = g_utf16_to_utf8((gunichar2 *)data, (glong)(data_size>>1), NULL, NULL, NULL);
-+
- }
-
- break;
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/handle-audio-video-decoder-error.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/handle-audio-video-decoder-error.patch
deleted file mode 100755
index 833ce72bb..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/handle-audio-video-decoder-error.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From bcb2b8b6f49e7c66124a4f5e07dea829d5ebfe59 Mon Sep 17 00:00:00 2001
-From: Lyon Wang <lyon.wang@freescale.com>
-Date: Mon, 15 Dec 2014 16:52:07 +0800
-Subject: [PATCH] handle audio/video decoder error
-
-When there is input data and no output data to the end of the stream, it will
-send GST_ELEMENT_ERROR, So the clips playing will quit.
-However, if only one of the tracks is corrupt, there is no need to quit other
-tracks playing.
-
-The patch comments the GST_ELEMENT_ERROR() and just add GST_ERROR_OBJECT()
-information instead.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=741542]
-
-Signed-off-by: Lyon Wang <lyon.wang@freescale.com>
----
- gst-libs/gst/audio/gstaudiodecoder.c | 5 +++--
- gst-libs/gst/video/gstvideodecoder.c | 5 +++--
- 2 files changed, 6 insertions(+), 4 deletions(-)
- mode change 100644 => 100755 gst-libs/gst/audio/gstaudiodecoder.c
- mode change 100644 => 100755 gst-libs/gst/video/gstvideodecoder.c
-
-diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c
-old mode 100644
-new mode 100755
-index c2e7a28..891df0a
---- a/gst-libs/gst/audio/gstaudiodecoder.c
-+++ b/gst-libs/gst/audio/gstaudiodecoder.c
-@@ -2123,9 +2123,10 @@ gst_audio_decoder_sink_eventfunc (GstAudioDecoder * dec, GstEvent * event)
- GST_AUDIO_DECODER_STREAM_UNLOCK (dec);
-
- if (dec->priv->ctx.had_input_data && !dec->priv->ctx.had_output_data) {
-- GST_ELEMENT_ERROR (dec, STREAM, DECODE,
-+ /* GST_ELEMENT_ERROR (dec, STREAM, DECODE,
- ("No valid frames decoded before end of stream"),
-- ("no valid frames found"));
-+ ("no valid frames found")); */
-+ GST_ERROR_OBJECT(dec, "No valid frames decoded before end of stream");
- }
-
- /* send taglist if no valid frame is decoded util EOS */
-diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c
-old mode 100644
-new mode 100755
-index ac581e1..4278bcd
---- a/gst-libs/gst/video/gstvideodecoder.c
-+++ b/gst-libs/gst/video/gstvideodecoder.c
-@@ -1068,9 +1068,10 @@ gst_video_decoder_sink_event_default (GstVideoDecoder * decoder,
-
- /* Error out even if EOS was ok when we had input, but no output */
- if (ret && priv->had_input_data && !priv->had_output_data) {
-- GST_ELEMENT_ERROR (decoder, STREAM, DECODE,
-+ /* GST_ELEMENT_ERROR (decoder, STREAM, DECODE,
- ("No valid frames decoded before end of stream"),
-- ("no valid frames found"));
-+ ("no valid frames found")); */
-+ GST_ERROR_OBJECT(decoder, "No valid frames decoded before end of stream");
- }
-
- /* Forward EOS immediately. This is required because no
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/taglist-not-send-to-down-stream-if-all-the-frame-cor.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/taglist-not-send-to-down-stream-if-all-the-frame-cor.patch
deleted file mode 100644
index 62a52b038..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/taglist-not-send-to-down-stream-if-all-the-frame-cor.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 68fa1b1425ad2c5f7c5013d0943153a8a6d0934e Mon Sep 17 00:00:00 2001
-From: Jian Li <lj.qfy.sh@gmail.com>
-Date: Wed, 24 Sep 2014 17:21:02 +0800
-Subject: [PATCH] taglist not send to down stream if all the frame corrupted
-
-https://bugzilla.gnome.org/show_bug.cgi?id=737246
-
-Upstream-Status: Pending
-
-Signed-off-by: Jian Li <lj.qfy.sh@gmail.com>
----
- gst-libs/gst/audio/gstaudiodecoder.c | 9 +++++++++
- gst-libs/gst/video/gstvideodecoder.c | 8 ++++++++
- 2 files changed, 17 insertions(+)
-
-diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c
-index 3504678..3d69efe 100644
---- a/gst-libs/gst/audio/gstaudiodecoder.c
-+++ b/gst-libs/gst/audio/gstaudiodecoder.c
-@@ -2083,6 +2083,15 @@ gst_audio_decoder_sink_eventfunc (GstAudioDecoder * dec, GstEvent * event)
- gst_audio_decoder_drain (dec);
- GST_AUDIO_DECODER_STREAM_UNLOCK (dec);
-
-+ /* send taglist if no valid frame is decoded util EOS */
-+ if (dec->priv->taglist && dec->priv->taglist_changed) {
-+ GST_DEBUG_OBJECT (dec, "codec tag %" GST_PTR_FORMAT, dec->priv->taglist);
-+ if (!gst_tag_list_is_empty (dec->priv->taglist))
-+ gst_audio_decoder_push_event (dec,
-+ gst_event_new_tag (gst_tag_list_ref (dec->priv->taglist)));
-+ dec->priv->taglist_changed = FALSE;
-+ }
-+
- /* Forward EOS because no buffer or serialized event will come after
- * EOS and nothing could trigger another _finish_frame() call. */
- ret = gst_audio_decoder_push_event (dec, event);
-diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c
-index dd8abe3..d9bfe4d 100644
---- a/gst-libs/gst/video/gstvideodecoder.c
-+++ b/gst-libs/gst/video/gstvideodecoder.c
-@@ -1024,6 +1024,14 @@ gst_video_decoder_sink_event_default (GstVideoDecoder * decoder,
- * parent class' ::sink_event() until a later time.
- */
- forward_immediate = TRUE;
-+
-+ /* send taglist if no valid frame is decoded util EOS */
-+ if (decoder->priv->tags && decoder->priv->tags_changed) {
-+ gst_video_decoder_push_event (decoder,
-+ gst_event_new_tag (gst_tag_list_ref (decoder->priv->tags)));
-+ decoder->priv->tags_changed = FALSE;
-+ }
-+
- break;
- }
- case GST_EVENT_GAP:
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videobuffer_updata_alignment_update.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videobuffer_updata_alignment_update.patch
deleted file mode 100755
index 8cfda955a..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videobuffer_updata_alignment_update.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-commit 88d253ea23b06289df40401160b606323f16c910
-Author: Song Bing <b06498@freescale.com>
-Date: Mon Dec 15 09:34:35 2014 +0800
-
-videopool: update video alignment after video alignment
-
-Video buffer pool will update video alignment to respect stride alignment
-requirement. But haven't update it to video alignment in configure.
-Which will cause user get wrong video alignment.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=741501
-
-Upstream-Status: Backport [1.5.1]
-
-Signed-off-by: Song Bing <b06498@freescale.com>
-diff --git a/gst-libs/gst/video/gstvideopool.c b/gst-libs/gst/video/gstvideopool.c
-index 4475f45..acef594 100644
---- a/gst-libs/gst/video/gstvideopool.c
-+++ b/gst-libs/gst/video/gstvideopool.c
-@@ -167,6 +167,7 @@ video_buffer_pool_set_config (GstBufferPool * pool, GstStructure * config)
- /* get an apply the alignment to the info */
- gst_buffer_pool_config_get_video_alignment (config, &priv->video_align);
- gst_video_info_align (&info, &priv->video_align);
-+ gst_buffer_pool_config_set_video_alignment (config, &priv->video_align);
- }
- priv->info = info;
-
-diff --git a/sys/ximage/ximagepool.c b/sys/ximage/ximagepool.c
-index 6cc2cfa..6a1cbc9 100644
---- a/sys/ximage/ximagepool.c
-+++ b/sys/ximage/ximagepool.c
-@@ -597,6 +597,8 @@ ximage_buffer_pool_set_config (GstBufferPool * pool, GstStructure * config)
- /* do padding and alignment */
- gst_video_info_align (&info, &priv->align);
-
-+ gst_buffer_pool_config_set_video_alignment (config, &priv->align);
-+
- /* we need the video metadata too now */
- priv->add_metavideo = TRUE;
- } else {
-diff --git a/sys/xvimage/xvimagepool.c b/sys/xvimage/xvimagepool.c
-index 244a51a..34b1ab2 100644
---- a/sys/xvimage/xvimagepool.c
-+++ b/sys/xvimage/xvimagepool.c
-@@ -124,6 +124,8 @@ xvimage_buffer_pool_set_config (GstBufferPool * pool, GstStructure * config)
- /* do padding and alignment */
- gst_video_info_align (&info, &priv->align);
-
-+ gst_buffer_pool_config_set_video_alignment (config, &priv->align);
-+
- /* we need the video metadata too now */
- priv->add_metavideo = TRUE;
- } else {
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videoencoder-Keep-sticky-events-around-when-doing-a-soft-.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videoencoder-Keep-sticky-events-around-when-doing-a-soft-.patch
deleted file mode 100644
index b47696911..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/videoencoder-Keep-sticky-events-around-when-doing-a-soft-.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From c3f7d36b992a3cbcee3386dea85720f3cb04e1ff Mon Sep 17 00:00:00 2001
-From: Song Bing <b06498@freescale.com>
-Date: Fri, 27 Mar 2015 13:39:43 +0800
-Subject: [PATCH] videoencoder: Keep sticky events around when doing a soft
- reset
-
-The current code will first discard all frames, and then tries to copy
-all sticky events from the (now discarded) frames. Let's change the order.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=746865
-
-Upstream-Status: Accepted
-
----
- gst-libs/gst/video/gstvideoencoder.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/gst-libs/gst/video/gstvideoencoder.c b/gst-libs/gst/video/gstvideoencoder.c
-index 614ba2d..4c5b111 100644
---- a/gst-libs/gst/video/gstvideoencoder.c
-+++ b/gst-libs/gst/video/gstvideoencoder.c
-@@ -340,10 +340,6 @@ gst_video_encoder_reset (GstVideoEncoder * encoder, gboolean hard)
-
- priv->drained = TRUE;
-
-- g_list_foreach (priv->frames, (GFunc) gst_video_codec_frame_unref, NULL);
-- g_list_free (priv->frames);
-- priv->frames = NULL;
--
- priv->bytes = 0;
- priv->time = 0;
-
-@@ -392,6 +388,10 @@ gst_video_encoder_reset (GstVideoEncoder * encoder, gboolean hard)
- encoder->priv->current_frame_events);
- }
-
-+ g_list_foreach (priv->frames, (GFunc) gst_video_codec_frame_unref, NULL);
-+ g_list_free (priv->frames);
-+ priv->frames = NULL;
-+
- GST_VIDEO_ENCODER_STREAM_UNLOCK (encoder);
-
- return ret;
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bb
deleted file mode 100644
index 463acb53b..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.5.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-include gstreamer1.0-plugins-base.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=c54ce9345727175ff66d17b67ff51f58 \
- file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607 \
- file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
- "
-
-SRC_URI += "file://do-not-change-eos-event-to-gap-event-if.patch \
- file://get-caps-from-src-pad-when-query-caps.patch \
- file://taglist-not-send-to-down-stream-if-all-the-frame-cor.patch \
- file://fix-id3demux-utf16-to-utf8-issue.patch \
- file://handle-audio-video-decoder-error.patch \
- file://videobuffer_updata_alignment_update.patch \
- file://0002-video-frame-Add-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch \
- file://0001-video-frame-Don-t-ref-buffers-twice-when-mapping.patch \
- file://0003-videofilter-Use-new-GST_VIDEO_FRAME_MAP_FLAG_NO_REF.patch \
- file://videoencoder-Keep-sticky-events-around-when-doing-a-soft-.patch \
- file://do-not-change-eos-event-to-gap-event2.patch \
- file://do-not-change-eos-event-to-gap-event3.patch \
- file://0001-basetextoverlay-make-memory-copy-when-video-buffer-s.patch \
- file://0002-gstplaysink-don-t-set-async-of-custom-text-sink-to-f.patch \
- file://0003-ssaparse-enhance-SSA-text-lines-parsing.patch \
- file://0004-subparse-set-need_segment-after-sink-pad-received-GS.patch \
- file://encodebin-Need-more-buffers-in-output-queue-for-bett.patch \
- file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \
- file://0002-Makefile.am-prefix-calls-to-pkg-config-with-PKG_CONF.patch \
- file://0004-rtsp-drop-incorrect-reference-to-gstreamer-sdp-in-Ma.patch \
-"
-
-SRC_URI[md5sum] = "357165af625c0ca353ab47c5d843920e"
-SRC_URI[sha256sum] = "77bd8199e7a312d3d71de9b7ddf761a3b78560a2c2a80829d0815ca39cbd551d"
-
-S = "${WORKDIR}/gst-plugins-base-${PV}"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/decrease_asteriskh263_rank.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/decrease_asteriskh263_rank.patch
deleted file mode 100755
index 288631bf7..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/decrease_asteriskh263_rank.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-commit d71d74daac8ed54156ed103958ab455c63c72b0e
-Author: Song Bing <b06498@freescale.com>
-Date: Mon Nov 10 11:25:47 2014 +0800
-
-[asteriskh263] decrease the rank as we havn't this kind of decoder.
-
-Decrease the rank as we havn't this kind of decoder.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=739935
-
-Upstream-Status: Pending
-
-Signed-off-by: Song Bing <b06498@freescale.com>
-
-diff --git a/gst/rtp/gstasteriskh263.c b/gst/rtp/gstasteriskh263.c
-index a01fbc8..8fa3194 100644
---- a/gst/rtp/gstasteriskh263.c
-+++ b/gst/rtp/gstasteriskh263.c
-@@ -226,5 +226,5 @@ gboolean
- gst_asteriskh263_plugin_init (GstPlugin * plugin)
- {
- return gst_element_register (plugin, "asteriskh263",
-- GST_RANK_SECONDARY, GST_TYPE_ASTERISK_H263);
-+ GST_RANK_SECONDARY - 1, GST_TYPE_ASTERISK_H263);
- }
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.4.5.bb
deleted file mode 100644
index 25cb28c06..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.4.5.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-include gstreamer1.0-plugins-ugly.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
- file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068 "
-
-SRC_URI[md5sum] = "6954beed7bb9a93e426dee543ff46393"
-SRC_URI[sha256sum] = "5cd5e81cf618944f4dc935f1669b2125e8bb2fe9cc7dc8dc15b72237aca49067"
-
-S = "${WORKDIR}/gst-plugins-ugly-${PV}"
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
deleted file mode 100644
index b7519fcaf..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
+++ /dev/null
@@ -1,68 +0,0 @@
-SUMMARY = "Plugins for the GStreamer multimedia framework 1.x"
-HOMEPAGE = "http://gstreamer.freedesktop.org/"
-BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
-SECTION = "multimedia"
-DEPENDS = "gstreamer1.0"
-
-inherit autotools pkgconfig gobject-introspection
-
-GSTREAMER_1_0_DEBUG ?= "--disable-debug"
-GSTREAMER_1_0_GIT_BRANCH ?= "master"
-EXTRA_OECONF = "--disable-valgrind ${GSTREAMER_1_0_DEBUG} --disable-examples "
-
-## SRC_URI_append = " file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch"
-
-delete_pkg_m4_file() {
- # This m4 file is out of date and is missing PKG_CONFIG_SYSROOT_PATH tweaks which we need for introspection
- rm "${S}/common/m4/pkg.m4" || true
-}
-
-do_configure[prefuncs] += " delete_pkg_m4_file"
-
-acpaths = "-I ${S}/common/m4 -I ${S}/m4"
-
-LIBV = "1.0"
-require gst-plugins-package.inc
-
-PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc orc-native"
-
-export ORCC = "${STAGING_DIR_NATIVE}${bindir}/orcc"
-
-PACKAGES_DYNAMIC = "^${PN}-.*"
-
-# apply gstreamer hack after Makefile.in.in in source is replaced by our version from
-# ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in, but before configure is executed
-# http://lists.linuxtogo.org/pipermail/openembedded-core/2012-November/032233.html
-oe_runconf_prepend() {
- if [ -e ${S}/po/Makefile.in.in ]; then
- sed -i -e "1a\\" -e 'GETTEXT_PACKAGE = @GETTEXT_PACKAGE@' ${S}/po/Makefile.in.in
- fi
-}
-
-SRC_URI = "${@get_gst_srcuri(d)}"
-
-def get_gst_srcuri(d):
- # check if expected prefix is present
- prefix = "gstreamer1.0-"
- bpn = d.getVar("BPN", True)
- if not bpn.startswith(prefix):
- bb.fatal('Invalid GStreamer 1.0 plugin package name "%s" : must start with "%s"' % (bpn, prefix))
-
- # replaced prefix with "gst-", which is what is used for the tarball and repository filenames
- gstpkg_basename = "gst-" + bpn[len(prefix):]
- pv = d.getVar("PV", True)
- branch = d.getVar("GSTREAMER_1_0_GIT_BRANCH", True)
-
- if pv == "git":
- s = "git://anongit.freedesktop.org/gstreamer/%s;branch=%s" % (gstpkg_basename, branch)
- else:
- s = "http://gstreamer.freedesktop.org/src/%s/%s-%s.tar.xz" % (gstpkg_basename, gstpkg_basename, pv)
- return s
-
-delete_liblink_m4_file() {
- # This m4 file contains nastiness which conflicts with libtool 2.2.2
- rm "${S}/m4/lib-link.m4" || true
-}
-
-do_configure[prefuncs] += " delete_liblink_m4_file "
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.4.5.bb
deleted file mode 100644
index bb9b42b53..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.4.5.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-include gstreamer1.0-rtsp-server.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d"
-
-SRC_URI[md5sum] = "a9f9b8899ec7ab33663cda7627db40d3"
-SRC_URI[sha256sum] = "3089254bd31b7c1f1cf2c034a3b3551f92878f9e3cab65cef3a901a04c0f1d37"
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0.inc b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0.inc
deleted file mode 100644
index 50a3ca72a..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0.inc
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "GStreamer 1.0 multimedia framework"
-DESCRIPTION = "GStreamer is a multimedia framework for encoding and decoding video and sound. \
-It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime."
-HOMEPAGE = "http://gstreamer.freedesktop.org/"
-BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
-SECTION = "multimedia"
-LICENSE = "LGPLv2+"
-DEPENDS = "glib-2.0 libxml2 bison-native flex-native"
-
-inherit autotools pkgconfig gettext gobject-introspection
-
-PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
-PACKAGECONFIG[check] = "--enable-check,--disable-check"
-
-EXTRA_OECONF = "--disable-docbook --disable-gtk-doc \
- --disable-dependency-tracking \
- --disable-examples --disable-tests \
- --disable-valgrind \
- "
-
-RRECOMMENDS_${PN}_qemux86 += "kernel-module-snd-ens1370 kernel-module-snd-rawmidi"
-RRECOMMENDS_${PN}_qemux86-64 += "kernel-module-snd-ens1370 kernel-module-snd-rawmidi"
-
-delete_pkg_m4_file() {
- # This m4 file is out of date and is missing PKG_CONFIG_SYSROOT_PATH tweaks which we need for introspection
- rm "${S}/common/m4/pkg.m4" || true
-}
-
-do_configure[prefuncs] += " delete_pkg_m4_file"
-
-do_compile_prepend() {
- export GIR_EXTRA_LIBS_PATH="${B}/gst/.libs:${B}/libs/gst/base/.libs"
-}
-
-CACHED_CONFIGUREVARS += "ac_cv_header_valgrind_valgrind_h=no"
-
-FILES_${PN} += " ${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-dev += " ${libdir}/gstreamer-1.0/*.la ${libdir}/gstreamer-1.0/*.a"
-FILES_${PN}-dbg += " ${libdir}/gstreamer-1.0/.debug/ ${libexecdir}/gstreamer-1.0/.debug/"
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-gstinfo-Shorten-__FILE__-on-all-platforms.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-gstinfo-Shorten-__FILE__-on-all-platforms.patch
deleted file mode 100644
index 8213c4b8b..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0001-gstinfo-Shorten-__FILE__-on-all-platforms.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 81fecd367b016e5ac4fb0c04b84da5c474f30da6 Mon Sep 17 00:00:00 2001
-From: Peter Urbanec <git.user@urbanec.net>
-Date: Fri, 27 Feb 2015 01:16:58 +1100
-Subject: [PATCH 1/1] gstinfo: Shorten __FILE__ on all platforms.
-
-This is useful not only for MSVC, but also with gcc/Linux when doing
-cross-compilation builds and out-of-tree builds.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=745213]
-
-Signed-off-by: Peter Urbanec <git.user@urbanec.net>
----
- gst/gstinfo.c | 11 ++++-------
- 1 file changed, 4 insertions(+), 7 deletions(-)
-
-diff --git a/gst/gstinfo.c b/gst/gstinfo.c
-index b2a3005..8b61d09 100644
---- a/gst/gstinfo.c
-+++ b/gst/gstinfo.c
-@@ -444,7 +444,6 @@ gst_debug_log (GstDebugCategory * category, GstDebugLevel level,
- va_end (var_args);
- }
-
--#ifdef G_OS_WIN32
- /* based on g_basename(), which we can't use because it was deprecated */
- static inline const gchar *
- gst_path_basename (const gchar * file_name)
-@@ -467,7 +466,6 @@ gst_path_basename (const gchar * file_name)
-
- return file_name;
- }
--#endif
-
- /**
- * gst_debug_log_valist:
-@@ -497,12 +495,11 @@ gst_debug_log_valist (GstDebugCategory * category, GstDebugLevel level,
- g_return_if_fail (function != NULL);
- g_return_if_fail (format != NULL);
-
-- /* The predefined macro __FILE__ is always the exact path given to the
-- * compiler with MSVC, which may or may not be the basename. We work
-- * around it at runtime to improve the readability. */
--#ifdef G_OS_WIN32
-+ /* The predefined macro __FILE__ can be an absolute path in some build
-+ * environments, such as MSVC or out-of-tree cross-compiles. This may
-+ * be significantly longer than the filename. We work around it at
-+ * runtime to improve the readability. */
- file = gst_path_basename (file);
--#endif
-
- message.message = NULL;
- message.format = format;
---
-2.3.0
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0002-basesink-Fix-QoS-lateness-checking-if-subclass-imple.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0002-basesink-Fix-QoS-lateness-checking-if-subclass-imple.patch
deleted file mode 100644
index 1505cbefc..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0002-basesink-Fix-QoS-lateness-checking-if-subclass-imple.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 6914566ed6a89c96973a578aa5ecd01ee68cdcfd Mon Sep 17 00:00:00 2001
-From: Jian <Jian.Li@freescale.com>
-Date: Thu, 14 May 2015 15:49:43 +0800
-Subject: [PATCH] basesink: Fix QoS/lateness checking if subclass implements
- prepare/prepare_list vfuncs
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-In basesink functions gst_base_sink_chain_unlocked(), below code is used to
-checking if buffer is late before doing prepare call to save some effort:
- if (syncable && do_sync)
- late =
- gst_base_sink_is_too_late (basesink, obj, rstart, rstop,
- GST_CLOCK_EARLY, 0, FALSE);
-
- if (G_UNLIKELY (late))
- goto dropped;
-
-But this code has problem, it should calculate jitter based on current media
-clock, rather than just passing 0. I found it will drop all the frames when
-rewind in slow speed, such as -2X.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=749258
-
-Upstream-Status: Backport [1.5.1]
----
- libs/gst/base/gstbasesink.c | 26 ++++++++++++++++++++++----
- 1 file changed, 22 insertions(+), 4 deletions(-)
-
-diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c
-index a505695..5fb2d6a 100644
---- a/libs/gst/base/gstbasesink.c
-+++ b/libs/gst/base/gstbasesink.c
-@@ -3369,10 +3369,28 @@ gst_base_sink_chain_unlocked (GstBaseSink * basesink, GstPad * pad,
- if (G_UNLIKELY (stepped))
- goto dropped;
-
-- if (syncable && do_sync)
-- late =
-- gst_base_sink_is_too_late (basesink, obj, rstart, rstop,
-- GST_CLOCK_EARLY, 0, FALSE);
-+ if (syncable && do_sync) {
-+ GstClock *clock;
-+
-+ GST_OBJECT_LOCK (basesink);
-+ clock = GST_ELEMENT_CLOCK (basesink);
-+ if (clock && GST_STATE (basesink) == GST_STATE_PLAYING) {
-+ GstClockTime base_time;
-+ GstClockTime stime;
-+ GstClockTime now;
-+
-+ base_time = GST_ELEMENT_CAST (basesink)->base_time;
-+ stime = base_time + gst_base_sink_adjust_time (basesink, rstart);
-+ now = gst_clock_get_time (clock);
-+ GST_OBJECT_UNLOCK (basesink);
-+
-+ late =
-+ gst_base_sink_is_too_late (basesink, obj, rstart, rstop,
-+ GST_CLOCK_EARLY, GST_CLOCK_DIFF (stime, now), FALSE);
-+ } else {
-+ GST_OBJECT_UNLOCK (basesink);
-+ }
-+ }
-
- if (G_UNLIKELY (late))
- goto dropped;
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0003-basesink-Shouldn-t-drop-buffer-when-sync-false.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0003-basesink-Shouldn-t-drop-buffer-when-sync-false.patch
deleted file mode 100755
index d682ee60c..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/0003-basesink-Shouldn-t-drop-buffer-when-sync-false.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 73df2b5c0aea58015788f5a94a3ec65296a688d3 Mon Sep 17 00:00:00 2001
-From: Song Bing <b06498@freescale.com>
-Date: Thu, 2 Jul 2015 14:32:21 +0800
-Subject: [PATCH] basesink: Shouldn't drop buffer when sync=false
-
-Shouldn't drop buffer when sync=false
-
-Upstream-Status: Accepted
-
-https://bugzilla.gnome.org/show_bug.cgi?id=751819
----
- libs/gst/base/gstbasesink.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c
-index d44e8fc..cd759ac 100644
---- a/libs/gst/base/gstbasesink.c
-+++ b/libs/gst/base/gstbasesink.c
-@@ -3423,7 +3423,7 @@ gst_base_sink_chain_unlocked (GstBaseSink * basesink, GstPad * pad,
- if (G_UNLIKELY (stepped))
- goto dropped;
-
-- if (syncable && do_sync) {
-+ if (syncable && do_sync && gst_base_sink_get_sync (basesink)) {
- GstClock *clock;
-
- GST_OBJECT_LOCK (basesink);
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/inputselector-sticky-events-haven-t-send-out-when-ac-1-4-1.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/inputselector-sticky-events-haven-t-send-out-when-ac-1-4-1.patch
deleted file mode 100755
index f50ce6ff2..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0/inputselector-sticky-events-haven-t-send-out-when-ac-1-4-1.patch
+++ /dev/null
@@ -1,167 +0,0 @@
-From 83bed90c306ed3185d48febf6441177d638f7341 Mon Sep 17 00:00:00 2001
-From: Song Bing <b06498@freescale.com>
-Date: Wed, 24 Dec 2014 10:13:51 +0800
-Subject: [PATCH] inputselector: sticky events haven't send out when active
- track reach EOS
-
-EOS event hasn't been send to down-element. The resolution is block EOS event
-of inactive pad, send the event after the pad actived.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=740949
-
-Upstream-Status: Backport [1.5.1]
-
-Signed-off-by: Song Bing <b06498@freescale.com>
----
- plugins/elements/gstinputselector.c | 58 ++++++++++++++++++++++++++---------
- plugins/elements/gstinputselector.h | 1 +
- 2 files changed, 45 insertions(+), 14 deletions(-)
-
-diff --git a/plugins/elements/gstinputselector.c b/plugins/elements/gstinputselector.c
-index fb50802..4461f7c 100644
---- a/plugins/elements/gstinputselector.c
-+++ b/plugins/elements/gstinputselector.c
-@@ -440,6 +440,17 @@ gst_selector_pad_iterate_linked_pads (GstPad * pad, GstObject * parent)
- }
-
- static gboolean
-+gst_input_selector_eos_wait (GstInputSelector * self, GstSelectorPad * pad)
-+{
-+ while (!self->eos && !self->flushing && !pad->flushing) {
-+ /* we can be unlocked here when we are shutting down (flushing) or when we
-+ * get unblocked */
-+ GST_INPUT_SELECTOR_WAIT (self);
-+ }
-+ return self->flushing;
-+}
-+
-+static gboolean
- gst_selector_pad_event (GstPad * pad, GstObject * parent, GstEvent * event)
- {
- gboolean res = TRUE;
-@@ -486,6 +497,7 @@ gst_selector_pad_event (GstPad * pad, GstObject * parent, GstEvent * event)
- case GST_EVENT_FLUSH_START:
- /* Unblock the pad if it's waiting */
- selpad->flushing = TRUE;
-+ sel->eos = FALSE;
- GST_INPUT_SELECTOR_BROADCAST (sel);
- break;
- case GST_EVENT_FLUSH_STOP:
-@@ -523,21 +535,12 @@ gst_selector_pad_event (GstPad * pad, GstObject * parent, GstEvent * event)
- case GST_EVENT_EOS:
- selpad->eos = TRUE;
-
-- if (forward) {
-- selpad->eos_sent = TRUE;
-- } else {
-- GstSelectorPad *active_selpad;
--
-- /* If the active sinkpad is in EOS state but EOS
-- * was not sent downstream this means that the pad
-- * got EOS before it was set as active pad and that
-- * the previously active pad got EOS after it was
-- * active
-- */
-- active_selpad = GST_SELECTOR_PAD (active_sinkpad);
-- forward = (active_selpad->eos && !active_selpad->eos_sent);
-- active_selpad->eos_sent = TRUE;
-+ if (!forward) {
-+ /* blocked until active the sind pad or flush */
-+ gst_input_selector_eos_wait (sel, selpad);
-+ forward = TRUE;
- }
-+ selpad->eos_sent = TRUE;
- GST_DEBUG_OBJECT (pad, "received EOS");
- break;
- case GST_EVENT_GAP:{
-@@ -676,6 +679,12 @@ gst_input_selector_wait_running_time (GstInputSelector * sel,
- gst_input_selector_activate_sinkpad (sel, GST_PAD_CAST (selpad));
- active_selpad = GST_SELECTOR_PAD_CAST (active_sinkpad);
-
-+ if (sel->eos) {
-+ GST_DEBUG_OBJECT (sel, "Not waiting because inputselector reach EOS.");
-+ GST_INPUT_SELECTOR_UNLOCK (sel);
-+ return FALSE;
-+ }
-+
- if (seg->format != GST_FORMAT_TIME) {
- GST_DEBUG_OBJECT (selpad,
- "Not waiting because we don't have a TIME segment");
-@@ -971,6 +980,12 @@ gst_selector_pad_chain (GstPad * pad, GstObject * parent, GstBuffer * buf)
- GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)));
-
- GST_INPUT_SELECTOR_LOCK (sel);
-+ if (sel->eos) {
-+ GST_DEBUG_OBJECT (pad, "inputselector eos.");
-+ GST_INPUT_SELECTOR_UNLOCK (sel);
-+ goto eos;
-+ }
-+
- /* wait or check for flushing */
- if (gst_input_selector_wait (sel, selpad)) {
- GST_INPUT_SELECTOR_UNLOCK (sel);
-@@ -1151,6 +1166,13 @@ flushing:
- res = GST_FLOW_FLUSHING;
- goto done;
- }
-+eos:
-+ {
-+ GST_DEBUG_OBJECT (pad, "We are eos, discard buffer %p", buf);
-+ gst_buffer_unref (buf);
-+ res = GST_FLOW_EOS;
-+ goto done;
-+ }
- }
-
- static void gst_input_selector_dispose (GObject * object);
-@@ -1309,6 +1331,7 @@ gst_input_selector_init (GstInputSelector * sel)
- g_mutex_init (&sel->lock);
- g_cond_init (&sel->cond);
- sel->blocked = FALSE;
-+ sel->eos = FALSE;
-
- /* lets give a change for downstream to do something on
- * active-pad change before we start pushing new buffers */
-@@ -1377,6 +1400,11 @@ gst_input_selector_set_active_pad (GstInputSelector * self, GstPad * pad)
- GST_DEBUG_OBJECT (self, "New active pad is %" GST_PTR_FORMAT,
- self->active_sinkpad);
-
-+ if (old != new && new->eos && !new->eos_sent) {
-+ self->eos = TRUE;
-+ GST_INPUT_SELECTOR_BROADCAST (self);
-+ }
-+
- return TRUE;
- }
-
-@@ -1771,6 +1799,7 @@ gst_input_selector_change_state (GstElement * element,
- switch (transition) {
- case GST_STATE_CHANGE_READY_TO_PAUSED:
- GST_INPUT_SELECTOR_LOCK (self);
-+ self->eos = FALSE;
- self->blocked = FALSE;
- self->flushing = FALSE;
- GST_INPUT_SELECTOR_UNLOCK (self);
-@@ -1779,6 +1808,7 @@ gst_input_selector_change_state (GstElement * element,
- /* first unlock before we call the parent state change function, which
- * tries to acquire the stream lock when going to ready. */
- GST_INPUT_SELECTOR_LOCK (self);
-+ self->eos = TRUE;
- self->blocked = FALSE;
- self->flushing = TRUE;
- GST_INPUT_SELECTOR_BROADCAST (self);
-diff --git a/plugins/elements/gstinputselector.h b/plugins/elements/gstinputselector.h
-index 96c680f..9bf924f 100644
---- a/plugins/elements/gstinputselector.h
-+++ b/plugins/elements/gstinputselector.h
-@@ -77,6 +77,7 @@ struct _GstInputSelector {
- GMutex lock;
- GCond cond;
- gboolean blocked;
-+ gboolean eos;
- gboolean flushing;
- };
-
---
-1.7.9.5
-
diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0_1.4.5.bb b/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0_1.4.5.bb
deleted file mode 100644
index 2876333f8..000000000
--- a/meta-agl-bsp/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0_1.4.5.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-include gstreamer1.0.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
- file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
-
-SRC_URI = " \
- http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
- file://0001-Fix-crash-with-gst-inspect.patch \
- file://0001-gstinfo-Shorten-__FILE__-on-all-platforms.patch \
- file://inputselector-sticky-events-haven-t-send-out-when-ac-1-4-1.patch \
- file://0002-basesink-Fix-QoS-lateness-checking-if-subclass-imple.patch \
- file://0003-basesink-Shouldn-t-drop-buffer-when-sync-false.patch \
- file://0001-introspection.m4-prefix-pkgconfig-paths-with-PKG_CON.patch \
-"
-SRC_URI[md5sum] = "88a9289c64a4950ebb4f544980234289"
-SRC_URI[sha256sum] = "40801aa7f979024526258a0e94707ba42b8ab6f7d2206e56adbc4433155cb0ae"
-
-S = "${WORKDIR}/gstreamer-${PV}"
-