<?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 iMX6 gstreamer multiple encode in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965142#M143810</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have a board receiving 1920x1080p25 hdmi via the TC358743 HDMI-&amp;gt;CSI chip, all is working well but I would like to be able to do two simultaneous H264 encodings of the stream, one for recording and one for streaming out over the network.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The&amp;nbsp;pipeline below works but the framerate is very poor (~8fps), I have tried to scale down the input using the imxipuvideotransform element but it doesn't appear to make any difference.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I also tried the 352MHz VPU setting in the kernel but that didn't affect performance either.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What can I do to increase the framerate?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The pipeline:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GST_DEBUG=*:3 gst-launch-1.0 imxv4l2videosrc device=/dev/video3 fps=25 \&lt;BR /&gt; ! queue ! imxipuvideotransform ! "video/x-raw,width=1280,height=720" ! tee name=t \ &lt;BR /&gt; t. ! queue ! imxvpuenc_h264 bitrate=15000 gop-size=15 me-search-range=3 \ &lt;BR /&gt; ! perf ! queue ! filesink sync=false location=test.h264 \ &lt;BR /&gt; t. ! queue ! imxvpuenc_h264 bitrate=2500 gop-size=15 me-search-range=3 ! queue \ &lt;BR /&gt; ! udpsink sync=false host=192.168.2.33 port=5000 -v&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any suggestions are appreciated!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Andreas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 09 Sep 2019 16:17:41 GMT</pubDate>
    <dc:creator>andreas_eriksso</dc:creator>
    <dc:date>2019-09-09T16:17:41Z</dc:date>
    <item>
      <title>iMX6 gstreamer multiple encode</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965142#M143810</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have a board receiving 1920x1080p25 hdmi via the TC358743 HDMI-&amp;gt;CSI chip, all is working well but I would like to be able to do two simultaneous H264 encodings of the stream, one for recording and one for streaming out over the network.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The&amp;nbsp;pipeline below works but the framerate is very poor (~8fps), I have tried to scale down the input using the imxipuvideotransform element but it doesn't appear to make any difference.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I also tried the 352MHz VPU setting in the kernel but that didn't affect performance either.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What can I do to increase the framerate?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The pipeline:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GST_DEBUG=*:3 gst-launch-1.0 imxv4l2videosrc device=/dev/video3 fps=25 \&lt;BR /&gt; ! queue ! imxipuvideotransform ! "video/x-raw,width=1280,height=720" ! tee name=t \ &lt;BR /&gt; t. ! queue ! imxvpuenc_h264 bitrate=15000 gop-size=15 me-search-range=3 \ &lt;BR /&gt; ! perf ! queue ! filesink sync=false location=test.h264 \ &lt;BR /&gt; t. ! queue ! imxvpuenc_h264 bitrate=2500 gop-size=15 me-search-range=3 ! queue \ &lt;BR /&gt; ! udpsink sync=false host=192.168.2.33 port=5000 -v&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any suggestions are appreciated!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Andreas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Sep 2019 16:17:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965142#M143810</guid>
      <dc:creator>andreas_eriksso</dc:creator>
      <dc:date>2019-09-09T16:17:41Z</dc:date>
    </item>
    <item>
      <title>Re: iMX6 gstreamer multiple encode</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965143#M143811</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Andreas&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;seems community gstreamer-imx plugins are used in the case, one can try with nxp&lt;/P&gt;&lt;P&gt;imx-gst1.0-plugins described in Linux Guide included in &lt;A href="https://www.nxp.com/webapp/Download?colCode=imx-yocto-L4.14.98_2.0.0_ga" target="_blank"&gt;Linux L4.14.98_2.0.0 Documentation&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and nxp linux from source.codeaurora.org/external/imx/linux-imx repository:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://source.codeaurora.org/external/imx/linux-imx/tree/?h=imx_4.14.98_2.0.0_ga" title="https://source.codeaurora.org/external/imx/linux-imx/tree/?h=imx_4.14.98_2.0.0_ga"&gt;linux-imx - i.MX Linux kernel&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Also one can try to analyse internal buses usage and tweak IPU QoS configured with IOMUXC_GPR6:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/docs/DOC-94933"&gt;i.MX6 MMDC Profiling: What is BUSY_COUNT?&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://developer.ridgerun.com/wiki/index.php?title=IMX6_Memory_Bandwidth_usage" title="https://developer.ridgerun.com/wiki/index.php?title=IMX6_Memory_Bandwidth_usage"&gt;IMX6 Memory Bandwidth Usage | iMX6 Board Memory&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Sep 2019 00:49:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965143#M143811</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2019-09-10T00:49:55Z</dc:date>
    </item>
    <item>
      <title>Re: iMX6 gstreamer multiple encode</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965144#M143812</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Igor and thanks for you fast response!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, I'm using community gstreamer plugins (from buildroot), are NXP plugins generally considered faster?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will try to re-target to NXP linux and NXP plugins to see if performance increases.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My project required to be able to record at high quality (i.e. 1080p or 720p at high bitrate, 20mbps, no dropped frames) but also stream a "live view" of the video at preferrably lower quality and with dropped frames acceptable, what would be your&amp;nbsp;guess on what path to pursue?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I was thinking that one option could be to resize the live view stream with the IPU and compress it to a lower bitrate while maintaining the original 1080p for recording, maybe this isn't feasible. I have another option on lowering the input resolution to 720p.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also,&amp;nbsp;when increasing the VPU frequency but not seeing any performance increase, is this an indication that the memory bandwidth is the problem?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Andreas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Sep 2019 08:36:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965144#M143812</guid>
      <dc:creator>andreas_eriksso</dc:creator>
      <dc:date>2019-09-10T08:36:12Z</dc:date>
    </item>
    <item>
      <title>Re: iMX6 gstreamer multiple encode</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965145#M143813</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Andreas&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt;when increasing the VPU frequency but not seeing any performance increase,&lt;/P&gt;&lt;P&gt;&amp;gt;is this an indication that the memory bandwidth is the problem?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think this is correct assumption.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Sep 2019 01:33:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/iMX6-gstreamer-multiple-encode/m-p/965145#M143813</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2019-09-11T01:33:02Z</dc:date>
    </item>
  </channel>
</rss>

