[OE-core] [poky][PATCH 10/13] gstreamer1.0-plugins-bad: Fix frame rate info lost when fixate caps
Yuqing Zhu
b54851 at freescale.com
Mon Jan 18 09:32:59 UTC 2016
Frame rate info will be lost when fixate caps. It will
cause down stream element fail, such as avimux.
Signed-off-by: Yuqing Zhu <b54851 at freescale.com>
---
...ter-Lost-frame-rate-info-when-fixate-caps.patch | 51 ++++++++++++++++++++++
.../gstreamer/gstreamer1.0-plugins-bad_1.6.2.bb | 1 +
2 files changed, 52 insertions(+)
create mode 100755 meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-glfilter-Lost-frame-rate-info-when-fixate-caps.patch
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-glfilter-Lost-frame-rate-info-when-fixate-caps.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-glfilter-Lost-frame-rate-info-when-fixate-caps.patch
new file mode 100755
index 0000000..7313415
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-glfilter-Lost-frame-rate-info-when-fixate-caps.patch
@@ -0,0 +1,51 @@
+From 15fcb87bc9abd69377b38ef0f8b48b84a56909f4 Mon Sep 17 00:00:00 2001
+From: Song Bing <b06498 at freescale.com>
+Date: Mon, 8 Jun 2015 17:06:22 +0800
+Subject: [PATCH 06/10] glfilter: Lost frame rate info when fixate caps
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Lost frame rate info when fixate caps. It will cause
+down stream element fail, such avimux.
+
+Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=750545]
+
+---
+ gst-libs/gst/gl/gstglfilter.c | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/gst-libs/gst/gl/gstglfilter.c b/gst-libs/gst/gl/gstglfilter.c
+index 78bcbc9..65eba1e 100644
+--- a/gst-libs/gst/gl/gstglfilter.c
++++ b/gst-libs/gst/gl/gstglfilter.c
+@@ -258,7 +258,8 @@ gst_gl_filter_fixate_caps (GstBaseTransform * bt,
+ GstPadDirection direction, GstCaps * caps, GstCaps * othercaps)
+ {
+ GstStructure *ins, *outs;
+- const GValue *from_par, *to_par;
++ const GValue *from_par, *to_par, *from_fps;
++ gint framerate_num, framerate_den;
+ GValue fpar = { 0, }, tpar = {
+ 0,};
+
+@@ -271,6 +272,16 @@ gst_gl_filter_fixate_caps (GstBaseTransform * bt,
+ ins = gst_caps_get_structure (caps, 0);
+ outs = gst_caps_get_structure (othercaps, 0);
+
++ /* replace frame rate */
++ from_fps = gst_structure_get_value (ins, "framerate");
++ if (from_fps) {
++ gst_structure_set_value (outs, "framerate", from_fps);
++ } else {
++ if (gst_structure_get_fraction (ins, "framerate", &framerate_num, &framerate_den))
++ gst_structure_set (outs, "framerate", GST_TYPE_FRACTION, framerate_num, framerate_den,
++ NULL);
++ }
++
+ from_par = gst_structure_get_value (ins, "pixel-aspect-ratio");
+ to_par = gst_structure_get_value (outs, "pixel-aspect-ratio");
+
+--
+1.9.1
+
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.6.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.6.2.bb
index 4628018..c434a08 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.6.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.6.2.bb
@@ -9,6 +9,7 @@ SRC_URI += "file://0001-glimagesink-Downrank-to-marginal.patch \
file://0002-mpegtsmux-Need-get-pid-when-create-streams.patch \
file://0003-mpeg4videoparse-Need-detect-picture-coding-type-when.patch \
file://0004-mpegvideoparse-Need-detect-picture-coding-type-when-.patch \
+ file://0005-glfilter-Lost-frame-rate-info-when-fixate-caps.patch \
"
SRC_URI[md5sum] = "7c73bec1d389f0e184ebbbbb9e9f883d"
--
1.9.1
More information about the Openembedded-core
mailing list