diff options
author | Yuqing Zhu <b54851@freescale.com> | 2016-01-29 17:41:55 +0800 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2016-04-19 15:06:34 -0300 |
commit | f0867686a996fb47642311001fdc9a0bb0d56233 (patch) | |
tree | a6bab6cd44afb5481581223d0396b318802157bc /recipes-multimedia/gstreamer/gstreamer1.0-plugins-base | |
parent | 0036be1cd9be96d9048603e56b6fb776627def29 (diff) | |
download | meta-freescale-f0867686a996fb47642311001fdc9a0bb0d56233.tar.gz |
gstreamer1.0-plugins-base: Fix IMXCameraApp image time cannot display issue.
IMXCameraApp: When Enabled "save time to image" item, preview,
find the time can not display completely.
As IPU need 8 pixels alignment, add one workaround in base text overlay
to generate 8 pixels alignment text video buffer. The side effect should
cause all text a little smaller.
Signed-off-by: Yuqing Zhu <b54851@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'recipes-multimedia/gstreamer/gstreamer1.0-plugins-base')
-rwxr-xr-x | recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-7030-Linux_MX6QP_ARD-IMXCameraApp-When-Enable.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-7030-Linux_MX6QP_ARD-IMXCameraApp-When-Enable.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-7030-Linux_MX6QP_ARD-IMXCameraApp-When-Enable.patch new file mode 100755 index 00000000..1f54fc19 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-7030-Linux_MX6QP_ARD-IMXCameraApp-When-Enable.patch | |||
@@ -0,0 +1,58 @@ | |||
1 | From f19e83a1a69a3dbbeb16dc4bcee3fb87317bb65b Mon Sep 17 00:00:00 2001 | ||
2 | From: Song Bing <b06498@freescale.com> | ||
3 | Date: Mon, 11 Jan 2016 14:51:17 +0800 | ||
4 | Subject: [PATCH] MMFMWK-7030 [Linux_MX6QP_ARD]IMXCameraApp:When Enabled "save | ||
5 | time to image" item, preview, find the time can not display | ||
6 | completely. 100% | ||
7 | |||
8 | As IPU need 8 pixels alignment, add one workaround in base text overlay | ||
9 | to generate 8 pixels alignment text video buffer. The side effect should | ||
10 | cause all text a little smaller. | ||
11 | |||
12 | Upstream-Status: Inappropriate [i.MX specific] | ||
13 | |||
14 | Signed-off-by: Song Bing b06498@freescale.com | ||
15 | --- | ||
16 | ext/pango/gstbasetextoverlay.c | 12 ++++++++++-- | ||
17 | 1 file changed, 10 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/ext/pango/gstbasetextoverlay.c b/ext/pango/gstbasetextoverlay.c | ||
20 | index 3e98aa1..de64c92 100755 | ||
21 | --- a/ext/pango/gstbasetextoverlay.c | ||
22 | +++ b/ext/pango/gstbasetextoverlay.c | ||
23 | @@ -1545,7 +1545,7 @@ gst_base_text_overlay_render_pangocairo (GstBaseTextOverlay * overlay, | ||
24 | gint unscaled_width, unscaled_height; | ||
25 | gint width, height; | ||
26 | gboolean full_width = FALSE; | ||
27 | - double scalef = 1.0; | ||
28 | + double scalef = 1.0, scalefx, scalefy; | ||
29 | double a, r, g, b; | ||
30 | gdouble shadow_offset = 0.0; | ||
31 | gdouble outline_offset = 0.0; | ||
32 | @@ -1673,6 +1673,14 @@ gst_base_text_overlay_render_pangocairo (GstBaseTextOverlay * overlay, | ||
33 | height = ceil (height * overlay->render_scale); | ||
34 | scalef *= overlay->render_scale; | ||
35 | |||
36 | + /* i.MX special, will cause text a little small */ | ||
37 | + scalefx = scalef * ((gdouble)GST_ROUND_DOWN_8 (width)) / width; | ||
38 | + scalefy = scalef * ((gdouble)GST_ROUND_DOWN_8 (height)) / height; | ||
39 | + width = GST_ROUND_DOWN_8 (width); | ||
40 | + height = GST_ROUND_DOWN_8 (height); | ||
41 | + GST_DEBUG_OBJECT (overlay, "Rendering with width %d and height %d " | ||
42 | + , width, height); | ||
43 | + | ||
44 | if (width <= 0 || height <= 0) { | ||
45 | g_mutex_unlock (GST_BASE_TEXT_OVERLAY_GET_CLASS (overlay)->pango_lock); | ||
46 | GST_DEBUG_OBJECT (overlay, | ||
47 | @@ -1689,7 +1697,7 @@ gst_base_text_overlay_render_pangocairo (GstBaseTextOverlay * overlay, | ||
48 | /* Prepare the transformation matrix. Note that the transformation happens | ||
49 | * in reverse order. So for horizontal text, we will translate and then | ||
50 | * scale. This is important to understand which scale shall be used. */ | ||
51 | - cairo_matrix_init_scale (&cairo_matrix, scalef, scalef); | ||
52 | + cairo_matrix_init_scale (&cairo_matrix, scalefx, scalefy); | ||
53 | |||
54 | if (overlay->use_vertical_render) { | ||
55 | gint tmp; | ||
56 | -- | ||
57 | 1.7.9.5 | ||
58 | |||