Freescale / gstreamer-imx

GStreamer 1.0 plugins for i.MX platforms
Other
184 stars 127 forks source link

imxvpuenc_h264 doesn't output any data #263

Closed R3D9477 closed 4 years ago

R3D9477 commented 4 years ago

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

I've tried gstreamer-imx -master + vpuapi-v1 and I've tried gstreamer-imx-v2 + vpuapi-v2

What I'm doing wrong?

Thanks!

R3D9477 commented 4 years ago

solved by switching to another version of packages