hi all,
i am new to imx. i am using imx535qsb board for an camera interface application for the i had downloaded the mmcodecs from the frescale website it is debian package. i need to cross compile the codecs for my imx board. can any one tell me how to cross compile the gstreame for imx board
Thanks in advance
Solved! Go to Solution.
Start a new topic, for 1080p enconding on imx53, and place the link over here.
Let´s close this thread.
It will be easier to get more help with the correct subject.
Try to start new topic with a command line, and describing your environment (kernel version, board)
I don´t have so big resolution camera. So, I cannot test it over here.
But, let´s try to isolate your problem, ok? Can you help me?
Are you able to take a 720p movie using the following command line:
/unit_tests/mxc_v4l2_capture.out -iw 1280 -ih 720 -ow 640 -oh 480 -i 1 -m 1 -f 2 -fr 30
-ow 640 -oh 480 would be the preview size... as I remember. But, it could be the resolution to file... I don´t remember if this create a file.
Please, let me know your results. (and sorry, I cannot reproduce it over here)
hi Daiane,
thanks for your reply yesterday night i captured the 720p video. The problem is in gstreamer command. in command we need to specify the capture mode such as (0,1,2,3,4etc) for 720p i have setted capture mode 4 after that its working properly.
CAPTURE MODES:
0 for 640x480
4 for 1280x720
G STREAMER COMMAND:
gst-launch mfw_v4lsrc fps-n=30 capture-width=1280 capture-height=720 capture-mode=4 ! queue ! mfw_vpuencoder codec-type=0 ! avimux ! filesink location=shan3.avi sync=false
SAMPLE VIDEO LINK:
Now i need to move on to the live rtsp streaming can you guide me for that.
Great!
hi Daiane
Thanks, without a support from someone like you it cant be achieved its belongs to you. Another thing is i need to capture 1080p video but my application [mxc_v4l2_capture.c] supports only upto 720p can you tell me how to change my application to support 1080p
when i tried to capture the 1080p video it shows the message like this
ERROR:
root@freescale ~$ gst-launch mfw_v4lsrc fps-n=10 capture-width=1920 capture-heig
ht=1080 capture-mode=5 ! queue ! mfw_vpuencoder codec-type=0 ! avimux ! filesin
k location=shan3.avi sync=false
MFW_GST_V4LSRC_PLUGIN 2.0.3 build on Sep 29 2011 15:40:54.
(gst-launch-0.10:2252): GLib-GObject-WARNING **: value "1920" of type `gint' is invalid or out of range for property `capture-width' of type `gint'
Setting pipeline to PAUSED ...
[ALLOC] mem alloc cpu_addr = 0x0 Size 0x150b8
[INFO] Product Info: i.MX53
VPU Versi[ALLOC] mem alloc cpu_addr = 0x0 Size 0x100000
on: firmware 13.4.41; libvpu: 5.3.2
MFW_GST_VPU_ENCODER_PLUGIN 2.0.3 build on Sep 29 2011 15:40:26.
ERROR: v4l2 capture: width exceeds limit resize to 240.
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
Caught SIGSEGV accessing address 0x18
Spinning. Please run 'gdb gst-launch 2252' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
I´m not sure imx53 can encode 1080p from camera. What board are you trying?
imx535 Quick start board
Start a new topic, for 1080p enconding on imx53, and place the link over here.
Let´s close this thread.
It will be easier to get more help with the correct subject.
Try to start new topic with a command line, and describing your environment (kernel version, board)
hi daiane
yes you are right imx53 can decode the 1080p not encode
Correct. If you need 1080p encode, you should consider mx6q.
Regards,
Fabio Estevam
ya
thats fine
hi daiane
thanks for your great support i had streamed the video from the target imx board to my host pc successfully. it is done with your reference link IMX27 Video GST Caps
finally i streamed the 320x240 resolution video
COMMAND FOR STREAMING FROM PC TO PC:
step-1
export HOST=192.168.0.50 (your ip address)
step-2
gst-launch -v v4l2src ! ffenc_mpeg4 ! rtpmp4vpay ! udpsink host=192.168.0.50 port=5000
step-3:
gst-launch -v udpsrc port=5000 caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)1, config=(string)000001b001000001b58913000001000000012000c48d8800f50a041e1463000001b24c61766335322e37322e32, payload=(int)96, ssrc=(guint)1885429468, clock-base=(guint)608195830, seqnum-base=(guint)20804" ! rtpmp4vdepay ! ffdec_mpeg4 ! ffmpegcolorspace ! videoscale ! autovideosink
COMMAND FOR STREAMING FROM IMX TARGET BOARD TO HOST PC:
step-1
export HOST=192.168.0.50 (your ip address) --> in serial terminal of imx target board
step-2
gst-launch mfw_v4lsrc fps-n=30 capture-width=320 capture-height=240 capture-mode=1 ! queue ! mfw_vpuencoder codec-type=0 ! rtpmp4vpay ! udpsink host=192.168.0.50 port=5000 sync=true -->in the serial terminal
step-3
gst-launch -v udpsrc port=5000 caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)1, config=(string)000001b001000001b58913000001000000012000c48d8800f50a041e1463000001b24c61766335322e37322e32, payload=(int)96, ssrc=(guint)1885429468, clock-base=(guint)608195830, seqnum-base=(guint)20804" ! rtpmp4vdepay ! ffdec_mpeg4 ! ffmpegcolorspace ! videoscale ! autovideosink --> open a terminal in your pc and give the command the streaming video will display in a window
once again thanks daiane
regards
shan,
You´re welcome.
And, thanks for sharing your solution for stream. It will help others as well.
hi daiane
i had streamed the 640x480 video and 720p video. the 640x480 resolution is streaming fine but 720p is streaming slowly the video is running slowly is there any problem on fps or some other issues,
COMMAND GIVEN FOR 720P
gst-launch -v mfw_v4lsrc fps-n=30 capture-width=1280 capture-height=720 capture-mode=4 ! queue ! mfw_vpuencoder codec-type=0 ! rtpmp4vpay ! udpsink host=192.168.0.50 port=5000 sync=true
gst-launch -v udpsrc port=5000 caps ="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)6, config=(string)000001b006000001b59113000001000000012000c888800f528045a14103, payload=(int)96, ssrc=(guint)424830278, clock-base=(guint)2874253685, seqnum-base=(guint)43950" ! rtpmp4vdepay ! ffdec_mpeg4 ! ffmpegcolorspace ! videoscale ! autovideosink
hi daiane
ok i find the problem gstreamer shows the following message
ERROR:
WARNING: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXImageSink:autovideosink0-actual-sink-ximage: A lot of buffers are being dropped.
Additional debug info:
gstbasesink.c(2686): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXImageSink:autovideosink0-actual-sink-ximage:
There may be a timestamping problem, or this computer is too slow.
hi daiane
i fix the problem in 720p video streaming, the problem is in command we want to use gstjitterbuffer for to send the data fastly and correct streaming of high resolution video
COMMAND FOR STREAMING 720P video:
gst-launch mfw_v4lsrc fps-n=30 capture-width=1280 capture-height=720 capture-mode=4 ! queue ! mfw_vpuencoder codec-type=0 ! rtpmp4vpay ! udpsink host=192.168.0.50 port=5000 -->in serial port
gst-launch udpsrc port=5000 caps ="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)6, config=(string)000001b006000001b59113000001000000012000c888800f528045a14103, payload=(int)96, ssrc=(guint)424830278, clock-base=(guint)2874253685, seqnum-base=(guint)43950" ! gstrtpjitterbuffer ! rtpmp4vdepay ! ffdec_mpeg4 ! ffmpegcolorspace ! videoscale ! autovideosink -->in host PC
Thanks
shan
gstrtpjitterbuffer
hi daiane
finally we streamed all the videos. one doubt how to store the streaming video to the server pc
Thanks
shan
If you mean to store the streaming into a file, you can use the 'filesink' element.
Regards,
Fabio Estevam
hi fabio
i tried the filesink element but it write the empty video file in the location with huge size. is there any other method to save the video
Thanks
shan
Great!
Regarding storing the streaming video, sorry I cannot help.
You can try NFS, but I really don´t know which one is the best way