i.MX51 EVK Board Video

Document created by jesseg Employee on Aug 21, 2012Last modified by Jodi Paul on May 17, 2013
Version 3Show Document
  • View in full screen mode

How to load the camera driver

modprobe ov3640_camera 
modprobe mxc_v4l2_capture

 

How to encode audio

gst-launch alsasrc ! mfw_mp3encoder ! filesink location= audio.mp3 

Encoding an AVI audio only

gst-launch alsasrc ! mfw_mp3encoder ! avimux ! filesink location=audio.avi 

 

 

You can use audiotestsrc instead of alsasrc

 

 

Encoding Audio and Video (testsrc only)

Raw video and Raw audio

gst-launch videotestsrc num-buffers=250 ! 'video/x-raw-yuv,format=fourcc)I420,width=320,height=240,framerate=(fraction)25/1' ! queue ! mux. audiotestsrc num-buffers=440 ! audioconvert ! 'audio/x-raw-int,rate=44100,channels=2' ! queue ! mux. avimux name=mux ! filesink location=test.avi 

H.263 video and Raw audio

gst-launch videotestsrc num-buffers=250 ! mfw_vpuencoder codec-type=1 ! queue ! mux. audiotestsrc num-buffers=440 ! audioconvert ! 'audio/x-raw-int,rate=44100,channels=2' ! queue ! mux. avimux name=mux ! filesink location=test.avi 

H.263 video and MP3 audio

gst-launch videotestsrc num-buffers=250 ! mfw_vpuencoder codec-type=1 ! queue ! mux. audiotestsrc num-buffers=440 ! audioconvert ! mfw_mp3encoder ! queue ! mux. avimux name=mux ! filesink location=test.avi 

Real Source

gst-launch-0.10 mfw_v4lsrc capture-mode=5 num-buffers=300 capture-width=320 capture-height=240 fps-n=15 blocksize=115200 ! queue2 max-size-buffers=1000 max-size-bytes=0 max-size-time=0 ! mfw_vpuencoder framerate=15 codec-type=2 name=venc  alsasrc num-buffers=300 ! audio/x-raw-int,rate=32000,channels=1,depth=16 ! audioconvert ! queue2 max-size-buffers=1000 max-size-bytes=0 max-size-time=0 ! mfw_mp3encoder name=aenc avimux name=mux ! filesink location=all_in_one.avi aenc. ! mux. venc. ! mux. 

 

 

The movie isn't that good, but you can improve that increasing num-buffers, width and heigh, and even framerate!

 

 

 


STAMP

If you face synchronization issues, you can try to use a non-standard plugin called stamp.

Use the spec file gst-entrans.spec

and this command line:

gst-launch-0.10 mfw_v4lsrc capture-mode=5 num-buffers=160 capture-width=320 capture-height=240 fps-n=15 blocksize=115200 !  stamp sync-margin=1 sync-interval=1 ! queue2 max-size-buffers=1000 max-size-bytes=0 max-size-time=0  !  mfw_vpuencoder framerate=15 codec-type=2 name=venc  alsasrc num-buffers=160  !  audio/x-raw-int,rate=32000,channels=1,depth=16     !  audioconvert ! queue2 max-size-buffers=1000 max-size-bytes=0 max-size-time=0      !  mfw_mp3encoder name=aenc avimux name=mux ! filesink location=test_ALL.avi aenc. ! mux. venc. ! mux. 

Donwload the package from here:

http://gentrans.sourceforge.net/

(source for stamp topic: http://blog.buberel.org/2008/03/using-a-usb-web.html)


Attachments

    Outcomes