imx25 and mfw_v4lsrc plugin

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

imx25 and mfw_v4lsrc plugin

Jump to solution
2,379 Views
garytee
Contributor I

Hi Everyone,

I'm developing a Linux video camera driver for an Omni Vision ov7690 CMOS sensor. The hardware design references the 3-stack board and uses the imx257.

My build environment is the L.2.6.31_09_12_01_SDK_source.tar.gz which contains a frozen in time snap-shot of a LTIB development environment for a generic linux-2.6.31 source tree as well the set of linux-2.6.31-imx-09.12.01 patch files. These patch files, when applied, will add all of the imx25 specific source code the this version of the Linux source tree.

My ov7690 camera driver is based on the ov2640.c file. The camera register initialization and mode selection arrays are modified according to the ov7690 reference manual with hints taken from ov7670.c which is in the current Linux source tree.

The frame buffer is working correctly. I'm able to execute <gst-launch videotestsrc ! video/x-raw-rgb ! fbdevsink device=/dev/fb0> and I can then see the test pattern on the LCD.

So far I'm unable to stream video from the camera using <gst-launch v4l2src ! video/x-raw-rgb ! fbdevsink device=/dev/fb0>. I've experimented with other gst-launch configurations and it always comes back complaining that it either cannot pause the pipeline, or that there is an erroneous pipeline or the selected src doesn't exist.

After reading the Freescale application note AN3677 "Video Streaming on the i.MX27" I now believe that I should be using a gstreamer plugin called mfw_v4lsrc. However, when I do a <gst-inspect | grep -i mfw> I get the following result:

mfw_asfdemuxer:  mfw_asfdemuxer: FSL Asf Demuxer
mfw_avidemuxer:  mfw_avidemuxer: FSL Avi Demuxer
mfw_mp4demuxer:  mfw_mp4demuxer: Freescale-Mp4 demuxer plugin
mfw_mp3encoder:  mfw_mp3encoder: freescale mp3 encoder
mfw_aacdecoder:  mfw_aacdecoder: Freescale AAC Decoder Plugin
mfw_mp3decoder:  mfw_mp3decoder: freescale mp3 decoder


I have found the source code for mfw_v4lsrc and sink located in fsl-mm-codeclib-1.7.1.tar.gz but the makefile is not setup to build them.


Are the mfw_v4lsrc and mfw_v4lsink plugins still being supported or have they been replaced by other plugins?

Should I be using some other gst-launch configuration?

Any help on this matter will be greatly appreciated.


Tags (2)
0 Kudos
1 Solution
1,106 Views
rogerio_silva
NXP Employee
NXP Employee

Hi Gary,

Sorry my mistake. mfw_v4lsink and mfw_v4lsrc are only for those processors that have IPU (e.g. i.MX5x i.MX6x and etc).

On multimedia release notes it's possible to see that these two plugins are not listed for i.MX25.

For playback, you can try to use gplay or playbin2. Do you have them installed on your rootfs?

For camera input, I'm not aware about any plugin. I think it's possible to test camera + display using the unit test:

./ltib –p imx-test, the output will be copied to “rootfs/unit_test”

To run the test on the target use the command: ./mxc_v4l_overlay.out –t –w 640 –h480 -fr 30”

Rgds

Rogerio

View solution in original post

0 Kudos
5 Replies
1,106 Views
Yuri
NXP Employee
NXP Employee

There are two Linux modules that should be loaded (default kernel config) :
one for the camera and the other for the V4l2 driver.

( modprobe mxc_v4l2_capture )

1,106 Views
karina_valencia
NXP Apps Support
NXP Apps Support

rogeriopimentel  can  you help  on this case?

0 Kudos
1,106 Views
rogerio_silva
NXP Employee
NXP Employee

Hi Gary,

mfw_v4lsrc and mfw_v4lsink plugins are still being supported. They're not deprecated.

Maybe some issue during the build should be happening.

Can you check if the related source code are being built or if they're having any build problem? You can check the build log.

If you find any building problem, please post the log.

Rgds

Rogerio

0 Kudos
1,106 Views
garytee
Contributor I

Hi Rogerio,

I can find no build problems in the logs. The other related plugins seem to be built.  When I run gst-inspect | grep –I mfw I get the following results but there is no evidence that mfw_v4l_sink and mfw_v4l_src have been built.

>gst-inspect | grep –I mfw
mfw_asfdemuxer:  mfw_asfdemuxer: FSL Asf Demuxer
mfw_avidemuxer:  mfw_avidemuxer: FSL Avi Demuxer
mfw_mp4demuxer:  mfw_mp4demuxer: Freescale-Mp4 demuxer plugin
mfw_mp3encoder:  mfw_mp3encoder: freescale mp3 encoder
mfw_aacdecoder:  mfw_aacdecoder: Freescale AAC Decoder Plugin
mfw_mp3decoder:  mfw_mp3decoder: freescale mp3 decoder

The source files for the missing plugins are contained within gst-fsl-plugin-1.7.1.tar.gz in the following directories:

gst-fsl-plugin-1.7.1/src/misc/v4l_sink
gst-fsl-plugin-1.7.1/src/misc/v4l_src

However, the build instructions for v4l_sink and v4l_src are missing for the MX25 configuration.

This is copy and paste of the MX25 configuration contained within makefile.am
if PLATFORM_IS_MX25 BASEDIRS =
src/audio/aac_dec/src \
src/audio/mp3_dec/src \
src/audio/mp3_enc/src \
src/audio/wma10_dec/src     \
src/parser/avi_demuxer.full/src \
src/parser/mp4_demuxer/srcn \
src/parser/asf_demuxer/src

TOOLDIRS =      tools/   \
tools/gplay

This is copy and paste of the MX25 configuration contained within makefile.in:
@PLATFORM_IS_MX25_TRUE@BASEDIRS =
src/audio/aac_dec/src\ @PLATFORM_IS_MX25_TRUE@
src/audio/mp3_dec/src \ @PLATFORM_IS_MX25_TRUE@
src/audio/mp3_enc/src \ @PLATFORM_IS_MX25_TRUE@
src/audio/wma10_dec/src \ @PLATFORM_IS_MX25_TRUE@
src/parser/avi_demuxer.full/src \ @PLATFORM_IS_MX25_TRUE@
src/parser/mp4_demuxer/src \ @PLATFORM_IS_MX25_TRUE@
src/parser/asf_demuxer/src

There are build instructions for v4l_sink and v4l_src in other configurations such as MX27 and MX35 that lead me to believe they were removed from the MX25 configuration for a design reason.  Perhaps there is new method or plugin specific for MX25 to streaming video from the camera to the LCD.  This is what motivated my original set of questions.

Is there a patch for gst-fsl-plugin-1.7.1.tar.gz that I’m missing?

Thank you.


0 Kudos
1,107 Views
rogerio_silva
NXP Employee
NXP Employee

Hi Gary,

Sorry my mistake. mfw_v4lsink and mfw_v4lsrc are only for those processors that have IPU (e.g. i.MX5x i.MX6x and etc).

On multimedia release notes it's possible to see that these two plugins are not listed for i.MX25.

For playback, you can try to use gplay or playbin2. Do you have them installed on your rootfs?

For camera input, I'm not aware about any plugin. I think it's possible to test camera + display using the unit test:

./ltib –p imx-test, the output will be copied to “rootfs/unit_test”

To run the test on the target use the command: ./mxc_v4l_overlay.out –t –w 640 –h480 -fr 30”

Rgds

Rogerio

0 Kudos