Hi,
We were also trying to experiment the same resolution 1440x1440 with H.264 streaming using IMX6 Hardware decoder and encoder. However, on the decoder side, there was no issues, and the hardware encoder threw below error when trying to encode 1440x1440
Command Used:
gst-launch-1.0 -v v4l2src ! video/x-h264,width=1440,height=1440,framerate=30/1 ! imxvpudec ! videoconvert ! imxvpuenc_h264 bitrate=3000 ! rtph264pay ! udpsink host=192.168.101.186 port=5000
Error Seen:
Setting pipeline to PAUSED ...
[INFO] Product Info: i.MX6Q/D/S
[INFO] Product Info: i.MX6Q/D/S
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data flow error.
Additional debug info:
gstbasesrc.c(2943): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming task paused, reason not-negotiated (-4)
Execution ended after 0:00:00.001137000
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
However if we video scale it to 1024x1024 on the Hardware encoder side, we are able to get the video. But the quality is poor and pixelated.
Command Used:
gst-launch-1.0 -v v4l2src ! video/x-h264,width=1440,height=1440,framerate=30/1 ! imxvpudec ! videoconvert ! videoscale ! video/x-raw,width=1024,height=1024 ! imxvpuenc_h264 bitrate=1024 ! rtph264pay ! udpsink host=192.168.101.186 port=5000
Could you please let us know,
1. Why Hardware encoder is not able to work with 1440x1440? What changes we need to configure to make it work.
2. Why is the video quality getting pixelated in the video scaled option 2. (1024x1024)
Please provide your valuable inputs.
Thanks,
Vidhya