<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to achieve lowest latency while decoding RTSP h264 stream using imxvpudec_h264 on imx8mm? in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674425#M208003</link>
    <description>&lt;P&gt;Our software on Linux Desktop uses this GSTreamer v1.22.3 to achieve VA-API-based hardware-accelerated IP camera video decoding with just about 220ms delay using this pipeline:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;rtspsrc location=rtsp://... protocols=tcp latency=100 buffer-mode=slave ! queue max-size-buffers=0 ! rtph264depay ! h264parse ! vah264dec compliance=3 ! glupload ! glcolorconvert ! qmlglsink&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Meanwhile,&amp;nbsp; to show RTSP stream on imx8mm this pipeline is used:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;rtspsrc location=rtsp://... protocols=udp latency=200 buffer-mode=slave ! queue max-size-buffers=0 ! rtph264depay ! queue max-size-buffers=0 ! h264parse ! queue max-size-buffers=0 ! imxvpudec_h264 ! queue max-size-buffers=0 ! glupload ! qmlglsink sync=1&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;It seems that I need to use latency=200 in order to keep stable 25fps. If I reduce rtspsrc latency to same 100 as on Desktop, I get "wobbling", unstable and low framerate, some times dropping to 11fps for example. And if I keep 200ms latency, final real delay (measured by screencaping running timer, etc) is near 400ms, which is rather high for our use case.&lt;/P&gt;&lt;P&gt;I have same FPS issues even if I use "raw" glimagesink, launched via gst-launch-1.0 via terminal.&lt;/P&gt;&lt;P&gt;Maybe there are some "tricks" what I don't know that would help to display RTSP streames with lower latency, but with still stable 25fps video in i.MX8M Mini machines?&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;</description>
    <pubDate>Thu, 22 Jun 2023 12:57:42 GMT</pubDate>
    <dc:creator>VincasD</dc:creator>
    <dc:date>2023-06-22T12:57:42Z</dc:date>
    <item>
      <title>How to achieve lowest latency while decoding RTSP h264 stream using imxvpudec_h264 on imx8mm?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674425#M208003</link>
      <description>&lt;P&gt;Our software on Linux Desktop uses this GSTreamer v1.22.3 to achieve VA-API-based hardware-accelerated IP camera video decoding with just about 220ms delay using this pipeline:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;rtspsrc location=rtsp://... protocols=tcp latency=100 buffer-mode=slave ! queue max-size-buffers=0 ! rtph264depay ! h264parse ! vah264dec compliance=3 ! glupload ! glcolorconvert ! qmlglsink&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Meanwhile,&amp;nbsp; to show RTSP stream on imx8mm this pipeline is used:&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;rtspsrc location=rtsp://... protocols=udp latency=200 buffer-mode=slave ! queue max-size-buffers=0 ! rtph264depay ! queue max-size-buffers=0 ! h264parse ! queue max-size-buffers=0 ! imxvpudec_h264 ! queue max-size-buffers=0 ! glupload ! qmlglsink sync=1&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;It seems that I need to use latency=200 in order to keep stable 25fps. If I reduce rtspsrc latency to same 100 as on Desktop, I get "wobbling", unstable and low framerate, some times dropping to 11fps for example. And if I keep 200ms latency, final real delay (measured by screencaping running timer, etc) is near 400ms, which is rather high for our use case.&lt;/P&gt;&lt;P&gt;I have same FPS issues even if I use "raw" glimagesink, launched via gst-launch-1.0 via terminal.&lt;/P&gt;&lt;P&gt;Maybe there are some "tricks" what I don't know that would help to display RTSP streames with lower latency, but with still stable 25fps video in i.MX8M Mini machines?&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;</description>
      <pubDate>Thu, 22 Jun 2023 12:57:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674425#M208003</guid>
      <dc:creator>VincasD</dc:creator>
      <dc:date>2023-06-22T12:57:42Z</dc:date>
    </item>
    <item>
      <title>Re: How to achieve lowest latency while decoding RTSP h264 stream using imxvpudec_h264 on imx8mm?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674519#M208006</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;NXP don't have any latency measurement of this, because is relative you are measurement with the keyword = 200, but this is not real, it based on your connection and some fails that&amp;nbsp; can be present in the line, I use &lt;CODE&gt;tune=zerolatency&lt;/CODE&gt; and it does the trick for me (200ms latency).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;</description>
      <pubDate>Thu, 22 Jun 2023 15:05:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674519#M208006</guid>
      <dc:creator>Bio_TICFSL</dc:creator>
      <dc:date>2023-06-22T15:05:02Z</dc:date>
    </item>
    <item>
      <title>Re: How to achieve lowest latency while decoding RTSP h264 stream using imxvpudec_h264 on imx8mm?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674763#M208023</link>
      <description>&amp;gt; tune=zerolatency&lt;BR /&gt;You are probably talking about ENcoding, but I am talking about DEcoding.&lt;BR /&gt;&lt;BR /&gt;I understand that latency=200 is not real latency, is more like a buffer size of rtspsrc. I measure real latency by filming timer on different screen, and taking photo of both timer and result on NXP screen.&lt;BR /&gt;&lt;BR /&gt;On PC with Intel hw decoding I can achieve ~220ms real physical latencu, lag from reality. With NXP so far I can get only about 400.</description>
      <pubDate>Fri, 23 Jun 2023 05:19:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1674763#M208023</guid>
      <dc:creator>VincasD</dc:creator>
      <dc:date>2023-06-23T05:19:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to achieve lowest latency while decoding RTSP h264 stream using imxvpudec_h264 on imx8mm?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1675789#M208125</link>
      <description>&lt;P&gt;It seems there's sort of regression in GStreamer itself since 1.22.2 - I actually no longer get ~220ms on PC either: &lt;A href="https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2702" target="_blank"&gt;https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2702&lt;/A&gt;&lt;/P&gt;&lt;P&gt;I do get good performance in older 1.22.1 on PC, but I can't build it for NXP because of other bug (seems fixed in 1.22.3):&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;../src/ext/qt/gstqtglutility.cc:48:10: fatal error: gst/gl/viv-fb/gstgldisplay_viv_fb.h: No such file or directory &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;48 | #include &amp;lt;gst/gl/viv-fb/gstgldisplay_viv_fb.h&amp;gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Mon, 26 Jun 2023 07:58:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1675789#M208125</guid>
      <dc:creator>VincasD</dc:creator>
      <dc:date>2023-06-26T07:58:49Z</dc:date>
    </item>
    <item>
      <title>Re: How to achieve lowest latency while decoding RTSP h264 stream using imxvpudec_h264 on imx8mm?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1677683#M208271</link>
      <description>I've fixed build issues, I believe GStreamer regression is only about vah264dec. I can reach low latency with 1.22.1 on PC, but NXP still produces high latency (~400ms) video &lt;LI-EMOJI id="lia_disappointed-face" title=":disappointed_face:"&gt;&lt;/LI-EMOJI&gt; .</description>
      <pubDate>Wed, 28 Jun 2023 08:31:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-to-achieve-lowest-latency-while-decoding-RTSP-h264-stream/m-p/1677683#M208271</guid>
      <dc:creator>VincasD</dc:creator>
      <dc:date>2023-06-28T08:31:27Z</dc:date>
    </item>
  </channel>
</rss>

