Nvidia Tegra efficient gstreamer colorspace conversion
<p>I am developing an application using the gstreamer framework on a Tegra TX1 SoC. </p>

<p>The provided gstreamer plugin <code>nv_omx_h264enc</code> provides hardware accelerated H.264 encoding. However, it consumes it's input in some YUV format.</p>

<p>Now I have to encode from RGB sources. In the examples, <code>nv_omx_h264enc</code> is usually feed by a <code>nvvidconv</code> plugin that does the needed colorspace conversions. However, it only sources from YUV formats I figured out. It can output RGB then, but that is the wrong conversion direction obviuosly.</p>

<p>So I dropped in a <code>ffmpegcolorspace</code> plugin for the conversion and got a working pipeline. However, it's performance on ARM CPUs is not very good and so I have a mayor bottleneck.</p>

<p>What else options do I have for the color conversion? Can the <code>nvvidconv</code>'s source be modified to provide RGB input pads? Are there other plugins around that would use the GPU or video hardware of the Tegra X1?</p>