We use h265 codec and nvv4l2h265encoder in sending video pipeline and nvv4l2decoder in receiving one. With Full HD resolution the decoded video quality is good but with 4K we have major issues (video is pixelized). And looks like it doesn’t depend on FPS.
Could you please check whether there are any bugs with decoder (or maybe depayloader)?
E.g. this pipeline gives no quality issues, just FPS is very low but it is local (without sending via network):
gst-launch-1.0 -v nvv4l2camerasrc device="/dev/video0" ! "video/x-raw(memory:NVMM),format=(string)UYVY,width=3840,height=2160" ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)I420,width=3840,height=2160" ! queue max-size-buffers=10 max-size-bytes=0 leaky=2 ! nvv4l2h265enc ! queue max-size-buffers=10 max-size-bytes=0 leaky=2 ! h265parse ! rtph265pay ! 'application/x-rtp, media=(string)video, encoding-name=(string)H265, payload=(int)105' ! rtph265depay ! h265parse ! queue max-size-buffers=10 max-size-bytes=0 leaky=2 ! nvv4l2decoder ! queue max-size-buffers=10 max-size-bytes=0 leaky=2 ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)RGBA,width=3840,height=2160" ! nv3dsink
The issue is in encoded stream. The default setting is not proper for 4K resolution. Please refer to this post for setting CBR + virtual buffer size:
Random blockiness in the picture RTSP server-client -Jetson TX2 - #5 by DaneLLL
Suggest set bitrate 20M+ bps.
Thanks for your response, but looks like it didn’t help.
We followed both your instructions: tried applying encoder bitrate 20 Mpbs and setting vbv-size to bitrate/fps, 1.5(bitrate/fps) and 2(bitrate/fps).
Analyzing tool shows that the bitrate value is applied (for both sending and receiving sides) but we still have video artifacts (see attached screen).
Maybe it’s not olny about encoder?
Could you try the cammand without rtp plugins like:
$ gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 ! 'video/x-raw(memory:NVMM),format=(string)UYVY,width=3840,height=2160' ! nvvidconv ! 'video/x-raw(memory:NVMM),width=3840,height=2160,format=NV12' ! nvv4l2h265enc ! queue ! nvv4l2decoder ! nv3dsink
With pipeline you provided - no those artifacts but FPS looks very low. Frames themselves look clear but the video is not smooth.
Please check if playback is smooth by setting sync=0
... ! nv3dsink sync=0
If playback is good without RTSP plugins, the issue may be caused by the RTSP plugins.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.