I'm using gstreamer pipeline to play UDP stream on i.MX6 quad. The following is the command I'm using:
gst-launch-1.0 udpsrc do-timestamp=false uri=udp://127.0.0.1:12345 caps="video/mpegts" ! queue ! aiurdemux streaming-latency=400 name=d d. ! queue max-size-time=0 ! vpudec ! queue ! overlaysink sync=true d. ! queue ! beepdec ! volume volume=0.1 ! pulsesink sync=true
I've added "max-size-time=0" between aiurdemux and vpudec to avoid choppy audio noise.
Video quality in beginning is good, but after several minutes running video for some time, the video shows a lot of frame drops, and shows the following log messages:
WARNING: from element /GstPipeline:pipeline0/GstOverlaySink:overlaysink0: A lot of buffers are being dropped.
Additional debug info:
XXX/bld-x11/tmp/work/cortexa9hf-vfp-neon-poky-Linux-gnueabi/gstreamer1.0/1.6.0-r0/gstreamer-1.6.0/libs/gst/base/gstbasesink.c(2846): gst_base_sink_is_too_loate (): /GstPipeline:pipeline0/GstOverlaySink:overlaysink0: There may be timestamping problem, or this computer is too slow.
I saw this thread and tried vpudec frame-plus=16 ! queue max-size-bytes=0 max-size-time=0 but didn't help.
Does anyone have any idea to solve this?
I tried the latest BSP, but there was no improvement in the picture.
I've looked up i.MX_Linux_User's_Guide.pdf, but the information did not help on this issue.
Can you comment on any other suggestions?
$ uname -a
Linux imx6qsabreauto 4.1.15+gb63f3f5 #4 SMP PREEMPT Tue Feb 21 18:00:23 JST 2017 armv7l armv7l armv7l GNU/Linux
What exactly version of the Linux kernel do you use? There was the known memory fragmentation issue with the 3.0.35 kernel that caused the similar effects. So, the better way is to always use the latest kernel available.
Have a great day,
Thank you for your comment. I forgot to mention, but the Linux Kernel version I use is :
$ uname -a
Linux imx6qsabreauto 4.1.15-1.2.0~g77f6154 #1 SMP PREEMPT Thu Jan 26 14+46+28 JST 2017 armvl GNU/Linux
I believe this is the latest version I can get from the latest bitbake repo.
Actually, the latest BSP is the L4.1.15_2.0.0 one, available for download from the NXP web site:
Try it first.
Also, refer to the Chapter 7 "Multimedia", especially, to the Section 7.3.12 "RTP/UDP MPEGTS streaming" of the attached document to try various UDP streaming settings.