我在orin上使用以下gstreamer pipeline对rtsp分别进行硬解码和软解码,发现延时差不多,在260ms左右;而我又尝试在x86 笔记本win10系统上使用ffmpeg解码,结果延时才140ms左,相差较大。
软解码:gst-launch-1.0 rtspsrc location=rtsp://192.9.200.94:554/live.sdp protocols=udp latency=100 ! rtph264depay ! h264parse ! avdec_h264 ! xvimagesink
硬解码:gst-launch-1.0 rtspsrc location=rtsp://192.9.200.94:554/live.sdp protocols=udp latency=100 ! rtph264depay ! h264parse ! nvv4l2decoder ! nv3dsink -e
问题:在orin上,为什么硬解码和软解码延时差不多?怎么优化硬解码,使延时减少到和x86笔记本一个水平?
请参考Troubleshooting — DeepStream documentation 6.4 documentation. 这里的一些建议
另外,每一个gstreamer插件都有很多参数可以调整,可以使用gst-inspect查看nvv4l2decoder的各个可以调整的参数,参考Gst-nvvideo4linux2 — DeepStream documentation 6.4 documentation 给出的参数定义,可以调整延时等。
1 个赞