AnsweredAssumed Answered

Using i.MX6S to rotage a 640x480 image 1 degree increments at 15 fps

Question asked by Scott Kerstein on Apr 7, 2014
Latest reply on Jul 13, 2014 by Yixing Kong

Currently using the Yocto Dora project direct version 1.5.1 and the poky build chain.  This has all been bitbaked on a local Ubuntu box.  The image has been written to the SD card and the BoundaryDevices Nitrogen6x is working as expected.  The Yocto build has been bitbaked using the fsl-community-bsp with the fsl-image-gui.  Secondarily the tool chain was bitbaked with meta-toolchain-qt which provide the qt4 libraries and support.  OpenCV has also been bitbaked into the BSP.


At this point I have a fully working Linux distribution with tool chain that can process USB video and display the video on the LCD within a QT application using OpenCV as the video input and processing platform.


The demo code written can rotate a 320x240 image at full frame rates but a 640x480 image at only approximately 7 fps.  I understand that the fsl-community-bsp support Gstreamer and uses the native hardware acceleration of the processor. What I do not see is a method for Gstreamer to rotate an image other than on 90 degree increments.  There is a plug-in within the “bad” gstreamer plugins call geometrictransformation but this is not considered mainstream nor does it seem to be directly supported by the fsl-community-bsp.


So, in the end I need so help in determining the correct method of receiving a video stream of 640x480 and rotate that image stream in 1 degree increments at a minimum of 15fps.


It's understood that this will require moving into the GPU, but it's not understood how this can be accomplished.  Downloaded the GPU SDK from Freescale, but didn't appear it would help me for this action.


Freescale will release Gstreamer 1.0 in the next release of Yocto BSP (May?), but are there release notes as to what Gstreamer 1.0 provides over the previous Gstreamer?