glimagesink is taking 100% CPU in i.m.x6

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

glimagesink is taking 100% CPU in i.m.x6

2,383 Views
ArunkumarRajago
Contributor IV
Hi,
Currently we are using imxeglvivsink for playing video. But we have some issue while playing high quality video.

Then we checked with Freescale, they are saying that we need to use glimagesink.

We tried to use glimagesink(from gstreamer 1.6.3 with kernel 4.1.15_1) Yocto version is Krogoth. Freescale layer is Meta-FSL-arm. wayland platform 1.9.0.
while compiling gstreamer 1.6.3, stopped at egl lib version checking. Because we have egl 1.0.0, but required for compilation is libegl9.0.0. We just renamed the egl library from 1.0.0 to 9.0.0. to compile issue alone.
cat wayland-egl.pc
prefix=/usr
exec_prefix=/usr
libdir=/usr/lib
includedir=/usr/include

Name: wayland-egl
Description: Bind the driver EGL to the Wayland API
Version: 9.0.0 /* it was 1.0.0 */
Libs: -L${libdir} -lEGL
Cflags: -I${includedir}
CPU taking 100% to play a video.

with below log,

../../../../gstreamer-1.6.3/libs/gst/base/gstbasesink.c(2846): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink:
There may be a timestamping problem, or this computer is too slow.
Not initialized

Can you please help us on,

   1. why CPU is taking more?

   2. Lib egl verison What we need to use.

   3. Video struck issue.

  

  

Thanks,

Arunkumar R

Labels (1)
0 Kudos
10 Replies

1,606 Views
karina_valencia
NXP Apps Support
NXP Apps Support

Hi Arunkumar Rajagopal, let me check with the team.

0 Kudos

1,606 Views
ArunkumarRajago
Contributor IV

Karina Valencia Aguilar

Do you have any update ?

Thanks,

Arunkumar R

0 Kudos

1,606 Views
karina_valencia
NXP Apps Support
NXP Apps Support

Let me check again,

0 Kudos

1,606 Views
karina_valencia
NXP Apps Support
NXP Apps Support

b36401‌ can you help to continue with the follow up?

0 Kudos

1,606 Views
ArunkumarRajago
Contributor IV

Hi,

Still we are struggling to fix this issue. We need your support to proceed further.

Please understand.

Thanks,

Arunkumar R

0 Kudos

1,606 Views
b36401
NXP Employee
NXP Employee

It seems hardware acceleration was missing with such misversioning.
Please try the version that match.

Have a great day,
Victor

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

1,606 Views
ArunkumarRajago
Contributor IV

Can you please remove "Assumed Answer" @Victor Linnik

As per the discussion with team here in Banglore. The latest egl version is 1.4.0

That version only we are using in our target.

Please find the attached build details below.

meta-fsl-arm:
fetch:yocto
brach : krogoth
last commit id:568edf983f52823398262a8266955a17fa9c60fa
commit msg: imx-kobs: Drop 5.4 recipe

openembedded-core:
fetch: github
branch: krogoth
last commit: a8f44dff13481feaa97e494a3aeafb5b63d40f3f
commit msg : binutils: fix AR issue when opkg is unpacking IPKs containing empty entries
last commit date: Date:   Sun Jul 31 18:52:41 2016 +0000

gstreamer:
package for glimagesink: gstreamer1.0-plugins-bad_1.6.3.bb

SRC_URI = " \
    http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \

EXTRA_OECONF += "--enable-gles2 "

Failure:
configure:34306: checking for WAYLAND_EGL
configure:34313: $PKG_CONFIG --exists --print-errors "wayland-client >= 1.0 wayland-cursor >= 1.0 wayland-egl >= 9.0"
Requested 'wayland-egl >= 9.0' but version of wayland-egl is 1.0.0
configure:34316: $? = 1
configure:34330: $PKG_CONFIG --exists --print-errors "wayland-client >= 1.0 wayland-cursor >= 1.0 wayland-egl >= 9.0"
Requested 'wayland-egl >= 9.0' but version of wayland-egl is 1.0.0
configure:34333: $? = 1
configure:34347: result: no
Requested 'wayland-egl >= 9.0' but version of wayland-egl is 1.0.0
configure:34553: WARNING: X or Wayland is required for OpenGL support
configure:34833: WARNING: Could not find any OpenGL platforms to use such as CGL, WGL or GLX
configure:34837: WARNING: Could not find any window systems to use such as Cocoa, Win32API or X11
configure:35049: checking for GLeglImageOES
configure:35049: arm-oe-linux-gnueabi-gcc  -march=armv7-a -mfpu=neon  -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=/home/abenjam1/u321/u321_5.0/build/tmp/sysroots/u321-imx6 -c   -O2 -pipe
 -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/abenjam1/u321/u321_5.0/build/tmp/work/cortexa9hf-neon-mx6qdl-oe-linux-gnueabi/gstreamer1.0-plugins-bad/1.6.3-r0=/usr/src/debu
g/gstreamer1.0-plugins-bad/1.6.3-r0 -fdebug-prefix-map=/home/abenjam1/u321/u321_5.0/build/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/home/abenjam1/u321/u321_5.0/build/tmp/sysroots/u
321-imx6=  -DLINUX                       -DEGL_API_FB -DWL_EGL_PLATFORM  conftest.c >&5
conftest.c: In function 'main':
conftest.c:69:13: error: 'GLeglImageOES' undeclared (first use in this function)


build dependencies:
"gstreamer1.0-plugins-bad" [label="gstreamer1.0-plugins-bad :1.6.3-r0\n/home/abenjam1/u321/u321_5.0/Eagle-Distribution/oe-core/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.6.3.bb"]
"gstreamer1.0-plugins-bad" -> "pkgconfig-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "autoconf-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "automake-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "libtool-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "libtool-cross" [style=solid]
"gstreamer1.0-plugins-bad" -> "gnu-config-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "virtual/gettext" [style=solid]
"gstreamer1.0-plugins-bad" -> "gettext-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "virtual/arm-oe-linux-gnueabi-gcc" [style=solid]
"gstreamer1.0-plugins-bad" -> "virtual/arm-oe-linux-gnueabi-compilerlibs" [style=solid]
"gstreamer1.0-plugins-bad" -> "virtual/libc" [style=solid]
"gstreamer1.0-plugins-bad" -> "gstreamer1.0" [style=solid]
"gstreamer1.0-plugins-bad" -> "glib-2.0-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "gstreamer1.0-plugins-base" [style=solid]
"gstreamer1.0-plugins-bad" -> "libpng" [style=solid]
"gstreamer1.0-plugins-bad" -> "jpeg" [style=solid]
"gstreamer1.0-plugins-bad" -> "gobject-introspection" [style=solid]
"gstreamer1.0-plugins-bad" -> "gobject-introspection-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "qemu-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "bluez5" [style=solid]
"gstreamer1.0-plugins-bad" -> "bzip2" [style=solid]
"gstreamer1.0-plugins-bad" -> "curl" [style=solid]
"gstreamer1.0-plugins-bad" -> "libxml2" [style=solid]
"gstreamer1.0-plugins-bad" -> "openssl" [style=solid]
"gstreamer1.0-plugins-bad" -> "virtual/libgles2" [style=solid]
"gstreamer1.0-plugins-bad" -> "nettle" [style=solid]
"gstreamer1.0-plugins-bad" -> "neon" [style=solid]
"gstreamer1.0-plugins-bad" -> "orc" [style=solid]
"gstreamer1.0-plugins-bad" -> "orc-native" [style=solid]
"gstreamer1.0-plugins-bad" -> "librsvg" [style=solid]
"gstreamer1.0-plugins-bad" -> "sbc" [style=solid]
"gstreamer1.0-plugins-bad" -> "libsndfile1" [style=solid]
"gstreamer1.0-plugins-bad" -> "libusb1" [style=solid]
"gstreamer1.0-plugins-bad" -> "libgudev" [style=solid]
"gstreamer1.0-plugins-bad" -> "wayland" [style=solid]
"gstreamer1.0-plugins-bad" -> "virtual/egl" [style=solid]
"gstreamer1.0-plugins-bad" -> "libwebp" [style=solid]

0 Kudos

1,606 Views
RandyKrakora
NXP Employee
NXP Employee

Can you post what your pipeline is?

0 Kudos

1,606 Views
ArunkumarRajago
Contributor IV

Please find the pipeline

$ gst-launch-1.0 filesrc location=./Video.mp4 typefind=true ! aiurdemux ! queue max-size-time=0 ! vpudec ! glimagesink

Thanks,

Arunkumar R

0 Kudos

1,606 Views
ArunkumarRajago
Contributor IV

Thanks for your input @Victor Linnik

The libegl is coming from meta-fsl-arm which is freescale yocto layer.

 

The bb file provides the lib:

imx-gpu-viv_5.0.11.p8.4-hfp.bb

Where can we get the corresponding version of lib egl delivery?

0 Kudos