Hi community,
I have got some difficulty with gst-launch .
The setup is the following:
rootfs built with yocto daisy, and MACHINE is imx6dlsabresd.conf, linux kernel is 3.10.53
After many start and stop, gst-launch does'nt work anymore and i get in dmesg:
[...]
[ 191.340414] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 191.346677] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 201.211647] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 201.217550] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 212.483180] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 212.490908] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 221.341983] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 221.347346] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 232.597694] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 232.603687] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 236.390187] mxc_vpu 2040000.vpu: VPU interrupt received.
[ 241.809888] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 241.815083] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 246.435875] mxc_vpu 2040000.vpu: VPU interrupt received.
[ 248.907565] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.915269] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.923872] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.930698] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.939676] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.946422] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.955335] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.961802] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.969914] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.976385] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.984681] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 248.992071] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 251.858518] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 251.863664] mxc_v4l2_output v4l2_out.24: Bypass IC.
[ 256.487135] mxc_vpu 2040000.vpu: VPU interrupt received.
[ 259.270171] mxc_v4l2_output v4l2_out.24: memory alloc size 3133440 failed
[ 259.278440] mxc_v4l2_output v4l2_out.24: offset invalid [offset=0x1de2000]
[ 259.287138] mxc_v4l2_output v4l2_out.24: memory alloc size 3133440 failed
[ 259.296839] mxc_v4l2_output v4l2_out.24: offset invalid [offset=0x20df000]
[ 259.305832] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 259.314927] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 259.324770] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 259.332113] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 259.340828] mxc_vpu 2040000.vpu: Physical memory allocation error!
[ 259.347959] mxc_vpu 2040000.vpu: Physical memory allocation error!
To remake the crash , we use a .sh:
while [ 1 ]; do
gst-launch-1.0 udpsrc uri=udp://@239.1.1.2:1235 ! video/mpegts, systemstream=\(boolean\)true, packetsize=\(int\)188 ! aiurdemux streaming-latency=2000 name=mydemux mydemux. ! queue2 max-size-time=0 ! vpudec ! imxv4l2sink name=myvideosink force-aspect-ratio=false overlay-width=1010 overlay-height=568 overlay-top=299 overlay-left=19 mydemux. ! queue2 max-size-time=0 ! beepdec ! playsink audio-sink="volume name=myvolume volume=0.630957 mute=false ! alsasink name=myaudiosink device=dsp0" &
sleep 10;
killall -9 gst-launch-1.0
done
Do you have solution?
Best Regads,
Jordan
Hello,
I remember the following limitation :
When playing the video for a long time, allocation of contiguous memory may fail
(memory fragmentation).
To play video when the system memory is low, run the command:
$ echo 1 >/proc/sys/vm/lowmem_reserve_ratio
It protects the DMA zone and avoids memory allocation errors.
Also, from the next thread :
"[i.MX6]memory leak of Gstreamer"
https://community.freescale.com/thread/333860
"... we try to perform
$ echo 1 >/proc/sys/vm/drop_caches
by the script of while [1] in playing video. The memory will not rise continuously
and can play video normally."
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thank you for your reply.
But colleague have try you solution and it' doesn't solve the problem.
Hello,
1.
There are tools for avoiding file caching of a specific application like the pagecache-management
(https://code.google.com/p/pagecache-mangagement/)
This is an open source project NOT maintained and NOT supported by NXP, which could anyway help.
2.
You may try to add "cma=384M" in kernel command line.
3.
Also, please use the recent Linux BSP :
i.MX 6 Series Software and Development Tool|NXP
Regards,
Yuri.