Hi,
Working with a camera application recently I received the following two patches from factory that fix issues with glib (gprint) and gst-fsl-plugins (framerate):
Heard from EricNelson that more people had same issues, so it would be good to share.
There you go:
For glib:
---
dist/lfs-5.1/glib2/glib2.spec | 3 +++
1 file changed, 3 insertions(+)
diff --git a/dist/lfs-5.1/glib2/glib2.spec b/dist/lfs-5.1/glib2/glib2.spec
index dd9cbaf..6e77885 100644
--- a/dist/lfs-5.1/glib2/glib2.spec
+++ b/dist/lfs-5.1/glib2/glib2.spec
@@ -27,6 +27,9 @@ glib_cv_stack_grows=no \
glib_cv_uscore=no \
ac_cv_func_posix_getpwuid_r=yes \
ac_cv_func_posix_getgrgid_r=yes \
+glib_cv_long_long_format=ll \
+ac_cv_func_printf_unix98=yes \
+ac_cv_func_vsnprintf_c99=yes \
./configure --prefix=%{_prefix} --host=$CFGHOST --build=%{_build}
make
---
And for gst-fsl-plugins:
---
.../src/misc/v4l_source/src/mfw_gst_v4lsrc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fsl_mm_linux/Multimedia/src/misc/v4l_source/src/mfw_gst_v4lsrc.c b/fsl_mm_linux/Multimedia/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
index ec69d8f..4dbc645 100755
--- a/fsl_mm_linux/Multimedia/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
+++ b/fsl_mm_linux/Multimedia/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
@@ -513,8 +513,8 @@ mfw_gst_v4lsrc_capture_setup (MFWGstV4LSrc * v4l_src)
parm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
- parm.parm.capture.timeperframe.numerator = v4l_src->fps_n;
- parm.parm.capture.timeperframe.denominator = v4l_src->fps_d;
+ parm.parm.capture.timeperframe.numerator = v4l_src->fps_d;
+ parm.parm.capture.timeperframe.denominator = v4l_src->fps_n;
parm.parm.capture.capturemode = v4l_src->capture_mode;
input = v4l_src->input;
--
Thanks for the patches, but could you also please give some explanation/reason for it? e.g. what the problems without have been in detail (e.g. with gprint?)
Without glib patch, g_print would crash, for instance, where a %p was used.
These patches are not necessary with the new BSP (L3.0.35_1.1.0_SOURCE), which I would suggest using instead.