Hello. I'm facing the trouble, I'm using imx6 Solo and I need to encode videostream by imxvpuenc_h264, but it doesn't output any data.
for example here is my pipeline:
# GST_DEBUG=WARNING gst-launch-1.0 -v multifilesrc location=/dev/fb0 \
! videoparse format=11 width=1024 height=768 \
! imxipuvideotransform \
! imxvpuenc_h264 \
! tee name=t \
t. ! queue ! splitmuxsink muxer=avimux location=video%05d.avi max-size-bytes=1000000
here is part of output:
...
colorimetry=(string)bt709, chroma-site=(string)mpeg2
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = 6
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = 7
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = 8
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = 9
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = 10
...
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = 500
...
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstQueue:queue1: max-size-buffers = NNNNN
...
and result file size = 0 bytes:
# ls -la
-rw-r--r-- 1 root root 0 Feb 7 15:54 video00000.avi
BUT
in that time if try to remove imxvpuenc_h264 from the pipeline, it works perfect
here is my gst-inspect:
#gst-inspect-1.0 | grep imx
imxipu: imxipuvideotransform: Freescale IPU video transform
imxipu: imxipuvideosink: Freescale IPU video sink
imxipu: imxipucompositor: Freescale IPU video compositor
imxv4l2video: imxv4l2videosrc: V4L2 CSI Video Source
imxv4l2video: imxv4l2videosink: V4L2 CSI Video Sink
imxg2d: imxg2dvideosink: Freescale G2D video sink
imxg2d: imxg2dvideotransform: Freescale G2D video transform
imxg2d: imxg2dcompositor: Freescale G2D video compositor
imxg2d: imxg2dtextoverlay: Text overlay
imxg2d: imxg2dtimeoverlay: Time overlay
imxg2d: imxg2dclockoverlay: Clock overlay
imxg2d: imxg2dtextrender: Text renderer
imxeglvivsink: imxeglvivsink: Freescale EGL video sink
imxvpu: imxvpudec: Freescale VPU video decoder
imxvpu: imxvpuenc_h263: Freescale VPU h.263 video encoder
imxvpu: imxvpuenc_h264: Freescale VPU h.264 video encoder
imxvpu: imxvpuenc_mpeg4: Freescale VPU MPEG-4 video encoder
imxvpu: imxvpuenc_mjpeg: Freescale VPU motion JPEG video encoder
imxpxp: imxpxpvideosink: Freescale PxP video sink
imxpxp: imxpxpvideotransform: Freescale PxP video transform
Whats wrong?
Thanks!
Hi Eugene
imxvpuenc_h264 is part of gstreamer-imx plugins, issue may be posted
on Issues · Freescale/gstreamer-imx · GitHub
Alternatively one can try imx-gst1.0-plugins described in Linux Guide included in
Linux 4.14.98_2.3.0 Documentation
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thanks for hint