<p dir="ltr">It is quite simple.</p>
<p dir="ltr">imxvpuenc_h264 uses imx hardware encoder.<br>
x264enc uses the cpu, so It's software encoder. You wont be able to use it on an ARM CPU. Imx just cant handle it. </p>
<p dir="ltr">Check "top" and you will se the cpu load/usage...<br>
</p>
<div class="gmail_extra"><br><div class="gmail_quote">On Oct 13, 2016 1:17 PM, "张若" <<a href="mailto:zr92zr@gmail.com">zr92zr@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I found the solution myself. But still not understand the reason thoroughly.<div><br></div><div>The problem is with the videorate, it needs to be set with drop-only=true, especially for the board. Otherwise, it seems to duplicate several frames and cause a large delay as well. </div><div>But I still don't why does this happen? and why there is no problem while using imxvpuenc_h264?</div><div><br></div><div>Hope somebody could explain that!</div><div><br></div><div>Thanks!</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-10-13 11:32 GMT+02:00 张若 <span dir="ltr"><<a href="mailto:zr92zr@gmail.com" target="_blank">zr92zr@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi,<div><br></div><div>I am working on the imx6 board. There are two h264/x264 encoder, HW encoder named imxvpuenc_h264 and SW encoder named x264enc. I tried both of them. But problem appears.</div><div><br></div><div>The pipeline looks like this: (the video camera capture is 720p)</div><div><br></div><div>imxv4l2videosrc -> capsfilter1 -> videoscale -> videorate -> videoconvert -> capsfilter2 -> imxvpuenc_h264 (or x264enc) -> queue -> h264parse -> mpegtsmux -> rtpmp2tpay -> udpsink</div><div><br></div><div>While using imxvpuenc_h264, there is no large latency, but using x264enc will cause a really large latency (sometimes around 10s and frame stucks).</div><div><br></div><div>When I set "capsfilter2" to lower resolution such as 320x240, the latency comes much shorter for x264enc. On the other hand, if I remove the "videoscale -> videorate -> videoconvert" part while using x264enc, there almost no latency for the streaming.</div><div><br></div><div>For x264enc, I set "tune=zerolatency, key-int-max=32, bframes=0, speed-preset=1, bitrate=4000 (may changes from 1000 to 10000)".</div><div><br></div><div>I don't know the reason why it happens and how can I deal with that. Please help!</div><div><br></div><div>Thanks in advance!</div><div><br></div><div><br></div><div><br></div></div>
</blockquote></div><br></div>
<br>______________________________<wbr>_________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.<wbr>freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/gstreamer-<wbr>devel</a><br>
<br></blockquote></div></div>