Hi,
I'm working on MX6 solo / Yocto-4.1, and trying to streaming H264 encoded stream with clock overlay.
But lots of ERRORS are reported and no video stream is output.
Here is my sender pipeline:
export GST_DEBUG=*:1
gst-launch-1.0 -v rtpbin name=rtpbin \
imxv4l2src device=/dev/video0 ! 'video/x-raw, format=UYVY, width=640, height=480, framerate=60/1' ! tee name=vsrc vsrc. ! queue2 ! clockoverlay xpad=25 ypad=25 time-format="%Y/%m/%d %H:%M:%S" silent=false ! 'video/x-raw, format=UYVY, width=640, height=480, framerate=60/1' ! imxvideoconvert_ipu ! 'video/x-raw, format=I420, width=640, height=480, framerate=60/1' ! vpuenc_h264 bitrate=6000 gop-size=15 ! 'video/x-h264, stream-format=avc, alignment=au' ! rtph264pay mtu=1024 ! rtpbin.send_rtp_sink_0 \
rtpbin.send_rtp_src_0 ! udpsink host=192.168.1.111 port=5004 \
rtpbin.send_rtcp_src_0 ! udpsink host=192.168.1.111 port=5005 sync=false async=false \
udpsrc port=5007 ! rtpbin.recv_rtcp_sink_0 \
vsrc. ! appsink sync=false async=false max-buffers=1 emit-signals=false drop=true
Error outputs as follows:
0:00:01.343995000 1417 0x6d9e60 ERROR default video-frame.c:147:gst_video_frame_map_id: failed to map video frame plane 0
0:00:01.354008000 1417 0x6d9e60 ERROR default video-frame.c:147:gst_video_frame_map_id: failed to map video frame plane 0
0:00:01.370623000 1417 0x6d9e60 ERROR default video-frame.c:147:gst_video_frame_map_id: failed to map video frame plane 0
0:00:01.387276334 1417 0x6d9e60 ERROR default video-frame.c:147:gst_video_frame_map_id: failed to map video frame plane 0
.......
.......
However, if I set clockoverlay's property "silent=true"(which means do not render text string), the pipeline runs well and no errors are reported.
Also note that, with videotestsrc, even with "silent=false", the pipeline still runs well.
export GST_DEBUG=*:1
gst-launch-1.0 -v rtpbin name=rtpbin \
videotestsrc is-live=true ! 'video/x-raw, format=UYVY, width=640, height=480, framerate=60/1' ! tee name=vsrc vsrc. ! queue2 ! clockoverlay xpad=25 ypad=25 time-format="%Y/%m/%d %H:%M:%S" silent=false ! 'video/x-raw, format=UYVY, width=640, height=480, framerate=60/1' ! imxvideoconvert_ipu ! 'video/x-raw, format=I420, width=640, height=480, framerate=60/1' ! vpuenc_h264 bitrate=6000 gop-size=15 ! 'video/x-h264, stream-format=avc, alignment=au' ! rtph264pay mtu=1024 ! rtpbin.send_rtp_sink_0 \
rtpbin.send_rtp_src_0 ! udpsink host=192.168.1.111 port=5004 \
rtpbin.send_rtcp_src_0 ! udpsink host=192.168.1.111 port=5005 sync=false async=false \
udpsrc port=5007 ! rtpbin.recv_rtcp_sink_0 \
vsrc. ! appsink sync=false async=false max-buffers=1 emit-signals=false drop=true
So it seems that the 'imxv4l2src' plugin from Yocto-4.1 can not work with clockoverlay when text string is rendered.
How to fix it?
Thanks!
Robbie