# qtivsplit

Source: [https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtivsplit.html](https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtivsplit.html)

qtivsplit 插件使用 GPU 硬件将单个输入视频流拆分为多个输出流。流的数量是由用户定义的变量，且等于发送端口的数量。

每个发送端口的模式属性决定了分割传入流的方法。

Table : qtivsplit 的操作模式属性

| 操作模式 | 说明 |
| :--- | :--- |
| none | <ul class="ul" id="qtivsplit__ul_zxk_4bt_vcc"><br>                                <li class="li">接收端口上的传入视频帧复制到每个发送端口。</li><br><br>                                <li class="li">根据该端口上协商的 <a href="https://gstreamer.freedesktop.org/documentation/gstreamer/gstcaps.html" target="_blank" class="xref cursorpointer" onclick="Window.BookmapComponent.navigateExternalFile('https://gstreamer.freedesktop.org/documentation/gstreamer/gstcaps.html')">GstCaps</a> 应用更多颜色转换和放大/缩小。</li><br><br>                            </ul> |
| single-roi-meta | <ul class="ul" id="qtivsplit__ul_pmt_5bt_vcc"><br>                                <li class="li">检查输入视频存 <a href="https://gstreamer.freedesktop.org/documentation/video/gstvideometa.html#GstVideoRegionOfInterestMeta" target="_blank" class="xref cursorpointer" onclick="Window.BookmapComponent.navigateExternalFile('https://gstreamer.freedesktop.org/documentation/video/gstvideometa.html#GstVideoRegionOfInterestMeta')">GstVideoRegionOfInterestMeta</a>。</li><br><br>                                <li class="li">确保创建发送端口时，其数量等于单个 <a href="https://gstreamer.freedesktop.org/documentation/gstreamer/gstbuffer.html#GstBuffer" target="_blank" class="xref cursorpointer" onclick="Window.BookmapComponent.navigateExternalFile('https://gstreamer.freedesktop.org/documentation/gstreamer/gstbuffer.html#GstBuffer')">GstBuffer</a> 内 <a href="https://gstreamer.freedesktop.org/documentation/video/gstvideometa.html#GstVideoRegionOfInterestMeta" target="_blank" class="xref cursorpointer" onclick="Window.BookmapComponent.navigateExternalFile('https://gstreamer.freedesktop.org/documentation/video/gstvideometa.html#GstVideoRegionOfInterestMeta')">GstVideoRegionOfInterestMeta</a> 的最大预期计数。</li><br><br>                                <li class="li">如果其发送端口较少，则会忽略没有相应端口的 ROI 元数据。</li><br><br>                            </ul> |
| batch-roi-meta | 它处理附加到缓存的 [GstVideoRegionOfInterestMeta](https://gstreamer.freedesktop.org/documentation/video/gstvideometa.html#GstVideoRegionOfInterestMeta) 条目，但不是发送这些条目，而是将该模式下端口上的所有元条目作为单独的缓存发送。 |

该 [GstBuffer](https://gstreamer.freedesktop.org/documentation/gstreamer/gstbuffer.html#GstBuffer) 中的每个此类元条目均根据 ID 发送到其相应的发送端口，并执行裁剪、放大/缩小和颜色转换以匹配协商的 [GstCaps](https://gstreamer.freedesktop.org/documentation/gstreamer/gstcaps.html)。无相应 ROI 元数据的发送端口会生成 GAP 缓存。

该插件使用 Qualcomm IB2C 库或 Qualcomm Computer Vision SDK 进行所有转换操作。

- Qualcomm IB2C 库包装在自定义 GstC2dVideoConverter 或 GstGlesVideoConverter 抽象层中。
- 它包括用于创建、配置和处理传入和传出缓存的 API。

## 缓存管理

Figure : 使用 qtivsplit 的 GStreamer pipeline
                
                <!--?xml version="1.0" encoding="UTF-8" standalone="no"?-->

<!-- Generated by Microsoft Visio, SVG Export gstreamer_pipeline_with_qtivsplit.svg Layer_1 -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="9.35022in" height="4.98785in" viewbox="0 0 673.216 359.125" xml:space="preserve" color-interpolation-filters="sRGB" class="st22"><v:documentproperties v:langid="1033" v:viewmarkup="false"></v:documentproperties>
<style>.svg-1 .st1 { fill: #fafafa; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st2 { fill: #d2d7e1; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st3 { fill: #000000; font-family: SimHei; font-size: 1.00001em }
.svg-1 .st4 { font-size: 1em }
.svg-1 .st5 { fill: #007884; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st6 { fill: #ffffff; font-family: Roboto; font-size: 1.00001em; font-weight: bold }
.svg-1 .st7 { fill: none; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st8 { fill: #000000; font-family: Roboto; font-size: 1.00001em; font-weight: bold }
.svg-1 .st9 { font-family: SimHei; font-size: 1em; font-weight: normal }
.svg-1 .st10 { font-size: 1em; font-weight: normal }
.svg-1 .st11 { stroke: #b3b7bf; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st12 { stroke: #000000; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st13 { fill: #000000; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st14 { fill: #000000; font-family: Roboto; font-size: 1.00001em }
.svg-1 .st15 { fill: #2a2aea; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st16 { fill: #ffffff; font-family: Roboto; font-size: 1.00001em }
.svg-1 .st17 { fill: none }
.svg-1 .st18 { fill: #ffffff; font-family: SimHei; font-size: 1.00001em }
.svg-1 .st19 { font-family: Roboto; font-size: 1em }
.svg-1 .st20 { fill: #000000; font-family: Roboto; font-size: 0.874992em }
.svg-1 .st21 { fill: #000000; font-family: SimHei; font-size: 0.874992em }
.svg-1 .st22 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<g v:mid="0" v:index="1" v:groupcontext="foregroundPage">	<title>Layer_1</title>	<v:pageproperties v:drawingscale="1" v:pagescale="1" v:drawingunits="19" v:shadowoffsetx="9" v:shadowoffsety="-9"></v:pageproperties>	<g id="shape2-1" v:mid="2" v:groupcontext="shape" transform="translate(0.37484,-0.375)">		<title>Sheet.2</title>		<path d="M0 353.5 A5.62513 5.62513 -180 0 0 5.62 359.12 L666.84 359.12 A5.62513 5.62513 -180 0 0 672.47 353.5 L672.47					 6.37 A5.62513 5.62513 -180 0 0 666.84 0.75 L5.62 0.75 A5.62513 5.62513 -180 0 0 0 6.37 L0 353.5 Z" class="st1"></path>	</g>	<g id="shape3-3" v:mid="3" v:groupcontext="shape">		<title>Sheet.3</title>		<path d="M667.22 0.75 C670.11 0.75 672.47 3.11 672.47 6 L672.47 353.12 C672.47 356.02 670.11 358.37 667.22 358.37 L6					 358.37 C3.11 358.37 0.75 356.02 0.75 353.12 L0.75 6 C0.75 3.11 3.11 0.75 6 0.75 L667.22 0.75 ZM667.22 0					 L6 0 C2.69 0 0 2.69 0 6 L0 353.12 C0 356.44 2.69 359.12 6 359.12 L667.22 359.12 C670.53 359.12 673.22 356.44					 673.22 353.12 L673.22 6 C673.22 2.69 670.53 0 667.22 0 Z" class="st2"></path>	</g>	<g id="shape5-5" v:mid="5" v:groupcontext="shape" transform="translate(298.652,-280.106)">		<title>Sheet.5</title>		<desc>插件在正常模式下运行。同一流在所有发送端口中重复但具有不同的分辨率和颜色格式。</desc>		<v:textblock v:margins="rect(7.2,0,7.2,7.2)"></v:textblock>		<v:textrect cx="180.315" cy="336.625" width="360.64" height="45"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L357.63 359.12 A3.00007 3.00007 -180 0 0 360.63 356.12 L360.63					 317.12 A3.00007 3.00007 -180 0 0 357.63 314.12 L3 314.12 A3.00007 3.00007 -180 0 0 -0 317.12 L0 356.12 Z" class="st2"></path>		<text x="7.2" y="332.24" class="st3" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>插件在正常模式下运行。同一流在所有发送端口中重复，但具有不<tspan x="7.2" dy="1.298em" class="st4">同的分辨率和颜色格式</tspan>。</text>		</g>	<g id="shape6-9" v:mid="6" v:groupcontext="shape" transform="translate(14.811,-204.14)">		<title>Sheet.6</title>		<desc>GstBuffer</desc>		<v:textblock v:margins="rect(7.2,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="99.3875" cy="315.765" width="198.78" height="86.7196"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L195.78 359.12 A3.00007 3.00007 -180 0 0 198.78 356.12 L198.78					 275.41 A3.00007 3.00007 -180 0 0 195.78 272.41 L3 272.41 A3.00007 3.00007 -180 0 0 0 275.41 L0 356.12 Z" class="st5"></path>		<text x="73.27" y="288.61" class="st6" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>GstBuffer  </text>		</g>	<g id="shape8-12" v:mid="8" v:groupcontext="shape" transform="translate(0,-333.454)">		<title>Sheet.8</title>		<desc>GST BIN</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="337.5" cy="351.925" width="675.01" height="14.4"></v:textrect>		<rect x="0" y="344.725" width="675" height="14.4" class="st7"></rect>		<text x="314.7" y="355.53" class="st8" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>GST BIN</text>		</g>	<g id="shape9-15" v:mid="9" v:groupcontext="shape" transform="translate(24.3327,-249.993)">		<title>Sheet.9</title>		<desc>+ GstMemory: 图像</desc>		<v:textblock v:margins="rect(0,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="93.5837" cy="351.925" width="187.17" height="14.4"></v:textrect>		<rect x="0" y="344.725" width="187.167" height="14.4" class="st7"></rect>		<text x="0" y="356.71" class="st6" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstMemory:<v:tabchar></v:tabchar><tspan dx="2.675em" class="st9">图像</tspan></text>		</g>	<g id="shape11-19" v:mid="11" v:groupcontext="shape" transform="translate(24.3327,-206.188)">		<title>Sheet.11</title>		<desc>+ GstVideoMeta: 描述 raw 视频数据</desc>		<v:textblock v:margins="rect(0,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="93.5837" cy="342.526" width="187.17" height="33.1986"></v:textrect>		<rect x="0" y="325.926" width="187.167" height="33.1986" class="st7"></rect>		<text x="0" y="337.91" class="st6" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstVideoMeta:<v:tabchar></v:tabchar><tspan dx="1.511em" class="st9">描述</tspan><tspan class="st10"> </tspan><tspan class="st10">raw <v:tabchar></v:tabchar><v:tabchar></v:tabchar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="108" dy="1.331em" class="st9">视频数据</tspan></text>		</g>	<g id="shape12-26" v:mid="12" v:groupcontext="shape" transform="translate(14.811,-268.356)">		<title>Sheet.12</title>		<path d="M0 359.12 L198.78 359.12" class="st11"></path>	</g>	<g id="shape13-29" v:mid="13" v:groupcontext="shape" transform="translate(14.811,-245.838)">		<title>Sheet.13</title>		<path d="M0 359.12 L198.78 359.12" class="st11"></path>	</g>	<g id="group31-32" transform="translate(208.828,-92.327)" v:mid="31" v:groupcontext="group">		<title>Sheet.31</title>		<g id="shape32-33" v:mid="32" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.32</title>			<path d="M0 359.12 L20.87 359.12" class="st12"></path>		</g>		<g id="shape33-36" v:mid="33" v:groupcontext="shape" transform="translate(19.9907,1.13687E-13)">			<title>Sheet.33</title>			<path d="M0 359.12 L5.18 356.13 L0 353.14 L0 359.12 Z" class="st13"></path>		</g>	</g>	<g id="shape14-38" v:mid="14" v:groupcontext="shape" transform="translate(14.811,-41.438)">		<title>Sheet.14</title>		<desc>GstBuffer</desc>		<v:textblock v:margins="rect(7.2,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="99.3875" cy="315.765" width="198.78" height="86.7196"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L195.78 359.12 A3.00007 3.00007 -180 0 0 198.78 356.12 L198.78					 275.41 A3.00007 3.00007 -180 0 0 195.78 272.41 L3 272.41 A3.00007 3.00007 -180 0 0 -0 275.41 L0 356.12 Z" class="st5"></path>		<text x="73.27" y="288.61" class="st6" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>GstBuffer  </text>		</g>	<g id="shape16-41" v:mid="16" v:groupcontext="shape" transform="translate(24.3327,-87.2912)">		<title>Sheet.16</title>		<desc>+ GstMemory: 图像</desc>		<v:textblock v:margins="rect(0,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="84" cy="351.925" width="168.01" height="14.4"></v:textrect>		<rect x="0" y="344.725" width="168" height="14.4" class="st7"></rect>		<text x="0" y="356.71" class="st6" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstMemory:<v:tabchar></v:tabchar><tspan dx="2.675em" class="st9">图像</tspan></text>		</g>	<g id="shape17-45" v:mid="17" v:groupcontext="shape" transform="translate(24.3327,-40.5)">		<title>Sheet.17</title>		<desc>+ GstVideoMeta: 描述 raw 视频数据</desc>		<v:textblock v:margins="rect(0,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="93.5837" cy="341.033" width="187.17" height="36.1841"></v:textrect>		<rect x="0" y="322.941" width="187.167" height="36.1841" class="st7"></rect>		<text x="0" y="334.92" class="st6" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstVideoMeta:<v:tabchar></v:tabchar><tspan dx="1.511em" class="st9">描述</tspan><tspan class="st10"> </tspan><tspan class="st10">raw<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="108" dy="1.331em" class="st9">视频数据</tspan></text>		</g>	<g id="shape18-52" v:mid="18" v:groupcontext="shape" transform="translate(14.811,-105.654)">		<title>Sheet.18</title>		<path d="M0 359.12 L198.78 359.12" class="st11"></path>	</g>	<g id="shape19-55" v:mid="19" v:groupcontext="shape" transform="translate(14.811,-83.1357)">		<title>Sheet.19</title>		<path d="M0 359.12 L198.78 359.12" class="st11"></path>	</g>	<g id="group20-58" transform="translate(111.207,-166.679)" v:mid="20" v:groupcontext="group">		<title>Sheet.20</title>		<g id="shape21-59" v:mid="21" v:groupcontext="shape" transform="translate(362.117,321.948) rotate(90)">			<title>Sheet.21</title>			<path d="M0 359.12 L32.87 359.12" class="st12"></path>		</g>		<g id="shape22-62" v:mid="22" v:groupcontext="shape">			<title>Sheet.22</title>			<path d="M0 353.94 L2.99 359.12 L5.98 353.94 L0 353.94 Z" class="st13"></path>		</g>	</g>	<g id="shape24-64" v:mid="24" v:groupcontext="shape" transform="translate(247.5,-236.689)">		<title>Sheet.24</title>		<desc>video/x-raw width=1920, height=1080, format=YUV</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="154.224" cy="341.125" width="308.45" height="36"></v:textrect>		<rect x="0" y="323.125" width="308.448" height="36" class="st7"></rect>		<text x="122.97" y="336.93" class="st14" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="51.55" dy="1.4em" class="st4">width=1920, height=1080, format=YUV</tspan></text>		</g>	<g id="shape25-68" v:mid="25" v:groupcontext="shape" transform="translate(256.5,-177.57)">		<title>Sheet.25</title>		<desc>video/x-raw width=640, height=360, format=BGRA</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="145.224" cy="341.125" width="290.45" height="36"></v:textrect>		<rect x="0" y="323.125" width="290.448" height="36" class="st7"></rect>		<text x="113.97" y="336.93" class="st14" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="45.17" dy="1.4em" class="st4">width=640, height=360, format=BGRA</tspan></text>		</g>	<g id="shape26-72" v:mid="26" v:groupcontext="shape" transform="translate(256.5,-118.452)">		<title>Sheet.26</title>		<desc>video/x-raw width=1280, height=720, format=RGB</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="145.224" cy="341.125" width="290.45" height="36"></v:textrect>		<rect x="0" y="323.125" width="290.448" height="36" class="st7"></rect>		<text x="113.97" y="336.93" class="st14" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="45.72" dy="1.4em" class="st4">width=1280, height=720, format=RGB</tspan></text>		</g>	<g id="shape27-76" v:mid="27" v:groupcontext="shape" transform="translate(247.5,-59.3337)">		<title>Sheet.27</title>		<desc>video/x-raw width=320, height=180, format=GRAY8</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="154.224" cy="341.125" width="308.45" height="36"></v:textrect>		<rect x="0" y="323.125" width="308.448" height="36" class="st7"></rect>		<text x="122.97" y="336.93" class="st14" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="50.93" dy="1.4em" class="st4">width=320, height=180, format=GRAY8</tspan></text>		</g>	<g id="group28-80" transform="translate(98.8361,-163.019)" v:mid="28" v:groupcontext="group">		<title>Sheet.28</title>		<g id="shape29-81" v:mid="29" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.29</title>			<path d="M0 359.12 L20.44 359.12" class="st12"></path>		</g>		<g id="shape30-84" v:mid="30" v:groupcontext="shape" transform="translate(19.5689,5.68434E-14)">			<title>Sheet.30</title>			<path d="M0 359.12 L5.18 356.13 L0 353.14 L0 359.12 Z" class="st13"></path>		</g>	</g>	<g id="shape35-86" v:mid="35" v:groupcontext="shape" transform="translate(123.586,-147.261)">		<title>Sheet.35</title>		<desc>qtivsplit</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="340.375" width="90.01" height="37.5"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L87 359.12 A3.00007 3.00007 -180 0 0 90 356.12 L90 324.62 A3.00007					 3.00007 -180 0 0 87 321.62 L3 321.62 A3.00007 3.00007 -180 0 0 -0 324.62 L0 356.12 Z" class="st15"></path>		<text x="23.94" y="343.98" class="st16" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtivsplit</text>		</g>	<g id="shape38-89" v:mid="38" v:groupcontext="shape" transform="translate(213.77,-177.261)">		<title>Sheet.38</title>		<path d="M0 359.12 L20.1 359.12 L20.1 281.7 L328.87 281.7 L0 359.12 Z" class="st17"></path>		<path d="M0 359.12 L20.1 359.12 L20.1 281.7 L328.87 281.7" class="st12"></path>	</g>	<g id="shape39-92" v:mid="39" v:groupcontext="shape" transform="translate(541.767,-251.697)">		<title>Sheet.39</title>		<path d="M0 359.12 L5.18 356.13 L0 353.14 L0 359.12 Z" class="st13"></path>	</g>	<g id="shape41-94" v:mid="41" v:groupcontext="shape" transform="translate(213.77,-169.761)">		<title>Sheet.41</title>		<path d="M0 359.12 L38.68 359.12 L38.68 333.32 L328.87 333.32 L0 359.12 Z" class="st17"></path>		<path d="M0 359.12 L38.68 359.12 L38.68 333.32 L328.87 333.32" class="st12"></path>	</g>	<g id="shape42-97" v:mid="42" v:groupcontext="shape" transform="translate(541.767,-192.578)">		<title>Sheet.42</title>		<path d="M0 359.12 L5.18 356.13 L0 353.14 L0 359.12 Z" class="st13"></path>	</g>	<g id="shape44-99" v:mid="44" v:groupcontext="shape" transform="translate(213.77,-136.452)">		<title>Sheet.44</title>		<path d="M0 333.32 L38.68 333.32 L38.68 359.12 L328.87 359.12 L0 333.32 Z" class="st17"></path>		<path d="M0 333.32 L38.68 333.32 L38.68 359.12 L328.87 359.12" class="st12"></path>	</g>	<g id="shape45-102" v:mid="45" v:groupcontext="shape" transform="translate(541.767,-133.46)">		<title>Sheet.45</title>		<path d="M0 359.12 L5.18 356.13 L0 353.14 L0 359.12 Z" class="st13"></path>	</g>	<g id="shape47-104" v:mid="47" v:groupcontext="shape" transform="translate(213.586,-77.3336)">		<title>Sheet.47</title>		<path d="M0 281.7 L20.21 281.7 L20.4 359.12 L329.06 359.12 L0 281.7 Z" class="st17"></path>		<path d="M0 281.7 L20.21 281.7 L20.4 359.12 L329.06 359.12" class="st12"></path>	</g>	<g id="shape48-107" v:mid="48" v:groupcontext="shape" transform="translate(541.767,-74.3419)">		<title>Sheet.48</title>		<path d="M0 359.12 L5.18 356.13 L0 353.14 L0 359.12 Z" class="st13"></path>	</g>	<g id="shape51-109" v:mid="51" v:groupcontext="shape" transform="translate(546.948,-235.939)">		<title>Sheet.51</title>		<desc>接收端插件 0</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="340.375" width="112.51" height="37.5"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L109.5 359.12 A3.00007 3.00007 -180 0 0 112.5 356.12 L112.5 324.62					 A3.00007 3.00007 -180 0 0 109.5 321.62 L3 321.62 A3.00007 3.00007 -180 0 0 0 324.62 L0 356.12 Z" class="st5"></path>		<text x="21.4" y="344.37" class="st18" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st19"> </tspan><tspan class="st19">0</tspan></text>		</g>	<g id="shape54-114" v:mid="54" v:groupcontext="shape" transform="translate(546.948,-176.82)">		<title>Sheet.54</title>		<desc>接收端插件 1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="340.375" width="112.51" height="37.5"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L109.5 359.12 A3.00007 3.00007 -180 0 0 112.5 356.12 L112.5 324.62					 A3.00007 3.00007 -180 0 0 109.5 321.62 L3 321.62 A3.00007 3.00007 -180 0 0 0 324.62 L0 356.12 Z" class="st5"></path>		<text x="21.4" y="344.37" class="st18" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st19"> </tspan><tspan class="st19">1</tspan></text>		</g>	<g id="shape57-119" v:mid="57" v:groupcontext="shape" transform="translate(546.948,-117.702)">		<title>Sheet.57</title>		<desc>接收端插件 N-1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="340.375" width="112.51" height="37.5"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L109.5 359.12 A3.00007 3.00007 -180 0 0 112.5 356.12 L112.5 324.62					 A3.00007 3.00007 -180 0 0 109.5 321.62 L3 321.62 A3.00007 3.00007 -180 0 0 0 324.62 L0 356.12 Z" class="st5"></path>		<text x="15.46" y="344.37" class="st18" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st19"> </tspan><tspan class="st19">N</tspan><tspan class="st19">-</tspan><tspan class="st19">1</tspan></text>		</g>	<g id="shape60-126" v:mid="60" v:groupcontext="shape" transform="translate(546.948,-58.5837)">		<title>Sheet.60</title>		<desc>接收端插件 N</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="340.375" width="112.51" height="37.5"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L109.5 359.12 A3.00007 3.00007 -180 0 0 112.5 356.12 L112.5 324.62					 A3.00007 3.00007 -180 0 0 109.5 321.62 L3 321.62 A3.00007 3.00007 -180 0 0 0 324.62 L0 356.12 Z" class="st5"></path>		<text x="20.49" y="344.37" class="st18" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st19"> </tspan><tspan class="st19">N</tspan></text>		</g>	<g id="shape63-131" v:mid="63" v:groupcontext="shape" transform="translate(15,-147.261)">		<title>Sheet.63</title>		<desc>视频源</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="340.375" width="90" height="37.5"></v:textrect>		<path d="M0 356.12 A3.00007 3.00007 -180 0 0 3 359.12 L87 359.12 A3.00007 3.00007 -180 0 0 90 356.12 L90 324.62 A3.00007					 3.00007 -180 0 0 87 321.62 L3 321.62 A3.00007 3.00007 -180 0 0 -0 324.62 L0 356.12 Z" class="st5"></path>		<text x="27" y="344.37" class="st18" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>视频源</text>		</g>	<g id="group82-134" transform="translate(549.324,-14.7814)" v:mid="82" v:groupcontext="group">		<title>Sheet.82</title>		<g id="shape67-135" v:mid="67" v:groupcontext="shape" transform="translate(15.1883,5.68434E-14)">			<title>Sheet.67</title>			<desc>Qualcomm</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="26.9279" cy="352.825" width="53.86" height="12.6"></v:textrect>			<rect x="0" y="346.525" width="53.8559" height="12.6" class="st7"></rect>			<text x="-0" y="355.97" class="st20" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>Qualcomm  </text>			</g>		<g id="shape68-138" v:mid="68" v:groupcontext="shape" transform="translate(3.09752E-14,-0.218607)">			<title>Sheet.68</title>			<path d="M0 357.62 A1.50003 1.50003 -180 0 0 1.5 359.12 L10.5 359.12 A1.50003 1.50003 -180 0 0 12 357.62 L12 348.62						 A1.50003 1.50003 -180 0 0 10.5 347.12 L1.5 347.12 A1.50003 1.50003 -180 0 0 0 348.62 L0 357.62 Z" class="st15"></path>		</g>		<g id="shape70-140" v:mid="70" v:groupcontext="shape" transform="translate(89.1246,5.68434E-14)">			<title>Sheet.70</title>			<desc>开源</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="10.5" cy="352.825" width="21" height="12.6"></v:textrect>			<rect x="0" y="346.525" width="21" height="12.6" class="st7"></rect>			<text x="0" y="356.32" class="st21" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>开源</text>			</g>		<g id="shape71-143" v:mid="71" v:groupcontext="shape" transform="translate(73.9363,-0.218607)">			<title>Sheet.71</title>			<path d="M0 357.62 A1.50003 1.50003 -180 0 0 1.5 359.12 L10.5 359.12 A1.50003 1.50003 -180 0 0 12 357.62 L12 348.62						 A1.50003 1.50003 -180 0 0 10.5 347.12 L1.5 347.12 A1.50003 1.50003 -180 0 0 0 348.62 L0 357.62 Z" class="st5"></path>		</g>	</g></g>
</svg>

Figure : qtivsplit 缓存管理
                
                <!--?xml version="1.0" encoding="UTF-8" standalone="no"?-->

<!-- Generated by Microsoft Visio, SVG Export qtivsplit_buffer_management.svg Layer_1 -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="9.36734in" height="7.16854in" viewbox="0 0 674.448 516.135" xml:space="preserve" color-interpolation-filters="sRGB" class="st23"><v:documentproperties v:langid="1033" v:viewmarkup="false"></v:documentproperties>
<style>.svg-2 .st1 { fill: #fafafa; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st2 { fill: #d2d7e1; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st3 { fill: #000000; font-family: SimHei; font-size: 1.00001em }
.svg-2 .st4 { font-family: Roboto; font-size: 1em }
.svg-2 .st5 { font-size: 1em }
.svg-2 .st6 { fill: #007884; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st7 { fill: #ffffff; font-family: Roboto; font-size: 1.00001em; font-weight: bold }
.svg-2 .st8 { fill: none; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st9 { fill: #000000; font-family: Roboto; font-size: 1.00001em; font-weight: bold }
.svg-2 .st10 { font-family: SimHei; font-size: 1em; font-weight: normal }
.svg-2 .st11 { font-size: 1em; font-weight: normal }
.svg-2 .st12 { baseline-shift: 32.4941%; font-size: 0.649882em; font-weight: normal }
.svg-2 .st13 { stroke: #b3b7bf; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st14 { stroke: #000000; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st15 { fill: #000000; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st16 { fill: #000000; font-family: Roboto; font-size: 1.00001em }
.svg-2 .st17 { fill: #2a2aea; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-2 .st18 { fill: #ffffff; font-family: Roboto; font-size: 1.00001em }
.svg-2 .st19 { fill: none }
.svg-2 .st20 { fill: #ffffff; font-family: SimHei; font-size: 1.00001em }
.svg-2 .st21 { fill: #000000; font-family: Roboto; font-size: 0.874992em }
.svg-2 .st22 { fill: #000000; font-family: SimHei; font-size: 0.874992em }
.svg-2 .st23 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<g v:mid="0" v:index="1" v:groupcontext="foregroundPage">	<title>Layer_1</title>	<v:pageproperties v:drawingscale="1" v:pagescale="1" v:drawingunits="19" v:shadowoffsetx="9" v:shadowoffsety="-9"></v:pageproperties>	<g id="shape2-1" v:mid="2" v:groupcontext="shape" transform="translate(0.374874,-0.374908)">		<title>Sheet.2</title>		<path d="M0 510.51 A5.62513 5.62513 -180 0 0 5.63 516.14 L668.07 516.14 A5.62513 5.62513 -180 0 0 673.7 510.51 L673.7					 6.38 A5.62513 5.62513 -180 0 0 668.07 0.75 L5.62 0.75 A5.62513 5.62513 -180 0 0 -0 6.38 L0 510.51 Z" class="st1"></path>	</g>	<g id="shape3-3" v:mid="3" v:groupcontext="shape">		<title>Sheet.3</title>		<path d="M668.45 0.75 C671.34 0.75 673.7 3.11 673.7 6 L673.7 510.14 C673.7 513.03 671.34 515.39 668.45 515.39 L6 515.39					 C3.11 515.39 0.75 513.03 0.75 510.14 L0.75 6 C0.75 3.11 3.11 0.75 6 0.75 L668.45 0.75 ZM668.45 0 L6 0 C2.69					 0 0 2.69 0 6 L0 510.14 C0 513.45 2.69 516.14 6 516.14 L668.45 516.14 C671.76 516.14 674.45 513.45 674.45					 510.14 L674.45 6 C674.45 2.69 671.76 0 668.45 0 Z" class="st2"></path>	</g>	<g id="shape4-5" v:mid="4" v:groupcontext="shape" transform="translate(226.361,-424.983)">		<title>Sheet.4</title>		<desc>插件在 ROI 模式下运行。对于每个 ROI meta都会从视频帧创建缓存 并将其连接至具有相同 ID 的对应发送端口。</desc>		<v:textblock v:margins="rect(0,0,0,14.4)"></v:textblock>		<v:textrect cx="216.461" cy="489.885" width="432.93" height="52.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L429.92 516.14 A3.00007 3.00007 -180 0 0 432.92 513.14 L432.92					 466.64 A3.00007 3.00007 -180 0 0 429.92 463.64 L3 463.64 A3.00007 3.00007 -180 0 0 0 466.64 L0 513.14 Z" class="st2"></path>		<text x="14.4" y="485.89" class="st3" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>插件在<tspan class="st4"> </tspan><tspan class="st4">ROI </tspan>模式下运行。对于每个<tspan class="st4"> </tspan><tspan class="st4">ROI meta</tspan>，都会从视频帧创建缓存，<v:newlinechar></v:newlinechar><tspan x="14.4" dy="1.331em" class="st5">并将其连接至具有相同</tspan><tspan class="st4"> </tspan><tspan class="st4">ID </tspan>的对应发送端口。</text>		</g>	<g id="shape5-15" v:mid="5" v:groupcontext="shape" transform="translate(15,-259.507)">		<title>Sheet.5</title>		<desc>GstBuffer</desc>		<v:textblock v:margins="rect(7.2,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="99.3875" cy="407.147" width="198.78" height="217.976"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L195.78 516.14 A3.00007 3.00007 -180 0 0 198.78 513.14 L198.78					 301.16 A3.00007 3.00007 -180 0 0 195.78 298.16 L3 298.16 A3.00007 3.00007 -180 0 0 -0 301.16 L0 513.14 Z" class="st6"></path>		<text x="73.27" y="316.16" class="st7" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>GstBuffer</text>		</g>	<g id="shape7-18" v:mid="7" v:groupcontext="shape" transform="translate(0,-488.883)">		<title>Sheet.7</title>		<desc>GST BIN</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="337.5" cy="508.935" width="675" height="14.4"></v:textrect>		<rect x="0" y="501.735" width="675" height="14.4" class="st8"></rect>		<text x="314.7" y="512.54" class="st9" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>GST BIN</text>		</g>	<g id="shape8-21" v:mid="8" v:groupcontext="shape" transform="translate(24.4967,-433.896)">		<title>Sheet.8</title>		<desc>+ GstMemory: 图像</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="93.5017" cy="508.935" width="187.01" height="14.4"></v:textrect>		<rect x="0" y="501.735" width="187.003" height="14.4" class="st8"></rect>		<text x="0" y="512.93" class="st7" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstMemory: <tspan class="st10">图像</tspan></text>		</g>	<g id="shape10-25" v:mid="10" v:groupcontext="shape" transform="translate(226.361,-344.271)">		<title>Sheet.10</title>		<desc>在此模式下带有示例输入缓存包含 3 个 ROI meta和 4 个发送端 口的插件将在 4 个端口中的 3 个上生成有效缓...</desc>		<v:textblock v:margins="rect(0,0,0,14.4)"></v:textblock>		<v:textrect cx="216.461" cy="482.385" width="432.93" height="67.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L429.92 516.14 A3.00007 3.00007 -180 0 0 432.92 513.14 L432.92					 451.64 A3.00007 3.00007 -180 0 0 429.92 448.64 L3 448.64 A3.00007 3.00007 -180 0 0 -0 451.64 L0 513.14 Z" class="st2"></path>		<text x="14.4" y="470.4" class="st3" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>在此模式下，带有示例输入缓存（包含<tspan class="st4"> </tspan><tspan class="st4">3 </tspan>个<tspan class="st4"> </tspan><tspan class="st4">ROI meta</tspan>）和<tspan class="st4"> </tspan><tspan class="st4">4 </tspan>个发送端<v:newlinechar></v:newlinechar><tspan x="14.4" dy="1.331em" class="st5">口的插件将在</tspan><tspan class="st4"> </tspan><tspan class="st4">4 </tspan>个端口中的<tspan class="st4"> </tspan><tspan class="st4">3 </tspan>个上生成有效缓存（每个<tspan class="st4"> </tspan><tspan class="st4">ROI meta</tspan>每个<v:newlinechar></v:newlinechar><tspan x="14.4" dy="1.331em" class="st5">端口</tspan><tspan class="st4"> </tspan><tspan class="st4">1 </tspan>个缓存），而在第<tspan class="st4"> </tspan><tspan class="st4">4 </tspan>个端口上，插件将生成<tspan class="st4"> </tspan><tspan class="st4">GAP </tspan>缓存。</text>		</g>	<g id="shape12-48" v:mid="12" v:groupcontext="shape" transform="translate(24.4967,-261)">		<title>Sheet.12</title>		<desc>+ GstVideoMeta: 描述 raw 视频数据 + GstVideoRegionoflnterestMeta: 1...</desc>		<v:textblock v:margins="rect(0,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="93.5017" cy="433.255" width="187.01" height="165.76"></v:textrect>		<rect x="0" y="350.375" width="187.003" height="165.76" class="st8"></rect>		<text x="0" y="361.18" class="st7" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstVideoMeta:<v:tabchar></v:tabchar><v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar><tspan x="72" dy="1.298em" class="st10">描述</tspan><tspan class="st11"> </tspan><tspan class="st11">raw </tspan><tspan class="st10">视频数据<v:newlinechar></v:newlinechar></tspan><tspan x="0" dy="1.233em" class="st5">+ GstVideoRegionoflnterestMeta:<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.2em" class="st11">1</tspan><tspan dy="-0.235em" class="st12" v:basefontsize="12">st</tspan><tspan dy="0.153em" class="st11"> </tspan><tspan class="st11">ROI Rectangle<v:newlinechar></v:newlinechar></tspan><tspan x="0" dy="1.2em" class="st5">+ GstVideoRegionoflnterestMeta:<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.2em" class="st11">2</tspan><tspan dy="-0.235em" class="st12" v:basefontsize="12">nd</tspan><tspan dy="0.153em" class="st11"> </tspan><tspan class="st11">ROI Rectangle<v:newlinechar></v:newlinechar></tspan><tspan x="0" dy="1.2em" class="st11">...<v:newlinechar></v:newlinechar></tspan><tspan x="0" dy="1.2em" class="st5">+ GstVideoRegionoflnterestMeta:<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.2em" class="st11">N</tspan><tspan class="st11">-</tspan><tspan class="st11">1 ROI Rectangle<v:newlinechar></v:newlinechar></tspan><tspan x="0" dy="1.2em" class="st5">+ GstVideoRegionoflnterestMeta:<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.2em" class="st11">N ROI Rectangle</tspan></text>		</g>	<g id="shape17-72" v:mid="17" v:groupcontext="shape" transform="translate(15,-452.259)">		<title>Sheet.17</title>		<path d="M0 516.14 L198.78 516.14" class="st13"></path>	</g>	<g id="shape18-75" v:mid="18" v:groupcontext="shape" transform="translate(15,-429.741)">		<title>Sheet.18</title>		<path d="M0 516.14 L198.78 516.14" class="st13"></path>	</g>	<g id="shape20-78" v:mid="20" v:groupcontext="shape" transform="translate(15,-32.625)">		<title>Sheet.20</title>		<desc>GstBuffer</desc>		<v:textblock v:margins="rect(7.2,0,0,0)" v:verticalalign="0"></v:textblock>		<v:textrect cx="99.3875" cy="440.539" width="198.78" height="151.192"></v:textrect>		<path d="M0 512.95 A3.00007 3.18753 -180 0 0 3 516.14 L195.78 516.14 A3.00007 3.18753 -180 0 0 198.78 512.95 L198.78					 368.13 A3.00007 3.18753 -180 0 0 195.78 364.94 L3 364.94 A3.00007 3.18753 -180 0 0 0 368.13 L0 512.95 Z" class="st6"></path>		<text x="73.27" y="382.94" class="st7" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>GstBuffer</text>		</g>	<g id="shape22-81" v:mid="22" v:groupcontext="shape" transform="translate(24.4967,-137.947)">		<title>Sheet.22</title>		<desc>+ GstMemory: 图像</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="93.5017" cy="508.935" width="187.01" height="14.4"></v:textrect>		<rect x="0" y="501.735" width="187.003" height="14.4" class="st8"></rect>		<text x="0" y="512.93" class="st7" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstMemory: <tspan class="st10">图像</tspan></text>		</g>	<g id="shape23-85" v:mid="23" v:groupcontext="shape" transform="translate(24.4967,-42.9101)">		<title>Sheet.23</title>		<desc>+ GstVideoMeta: 描述 raw 视频数据 + GstVideoRegionoflnterestMeta: 描...</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="93.9499" cy="474.59" width="187.9" height="83.0899"></v:textrect>		<rect x="0" y="433.045" width="187.9" height="83.0899" class="st8"></rect>		<text x="0" y="439.04" class="st7" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>+ GstVideoMeta:<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar><tspan x="72" dy="1.298em" class="st10">描述</tspan><tspan class="st11"> </tspan><tspan class="st11">raw </tspan><tspan class="st10">视频数据<v:newlinechar></v:newlinechar></tspan><tspan x="0" dy="1.233em" class="st5">+ GstVideoRegionoflnterestMeta:<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.298em" class="st10">描述缓存中填充<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.331em" class="st10">有效图像数据的<v:newlinechar></v:newlinechar><v:tabchar></v:tabchar><v:tabchar></v:tabchar></tspan><tspan x="72" dy="1.331em" class="st10">实际像素区域</tspan></text>		</g>	<g id="shape24-96" v:mid="24" v:groupcontext="shape" transform="translate(15,-156.31)">		<title>Sheet.24</title>		<path d="M0 516.14 L198.78 516.14" class="st13"></path>	</g>	<g id="shape25-99" v:mid="25" v:groupcontext="shape" transform="translate(15,-133.792)">		<title>Sheet.25</title>		<path d="M0 516.14 L198.78 516.14" class="st13"></path>	</g>	<g id="shape27-102" v:mid="27" v:groupcontext="shape" transform="translate(630.523,256.628) rotate(90)">		<title>Sheet.27</title>		<path d="M0 516.14 L32.87 516.14" class="st14"></path>	</g>	<g id="shape28-105" v:mid="28" v:groupcontext="shape" transform="translate(111.396,-222.33)">		<title>Sheet.28</title>		<path d="M0 510.95 L2.99 516.14 L5.98 510.95 L0 510.95 Z" class="st15"></path>	</g>	<g id="shape29-107" v:mid="29" v:groupcontext="shape" transform="translate(257.884,-292.339)">		<title>Sheet.29</title>		<desc>video/x-raw width=1920, height=1080, format=YUV</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="144.532" cy="498.135" width="289.07" height="36"></v:textrect>		<rect x="0" y="480.135" width="289.064" height="36" class="st8"></rect>		<text x="113.28" y="493.94" class="st16" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="41.86" dy="1.4em" class="st5">width=1920, height=1080, format=YUV</tspan></text>		</g>	<g id="shape30-111" v:mid="30" v:groupcontext="shape" transform="translate(257.884,-233.221)">		<title>Sheet.30</title>		<desc>video/x-raw width=640, height=360, format=BGRA</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="144.532" cy="498.135" width="289.07" height="36"></v:textrect>		<rect x="0" y="480.135" width="289.064" height="36" class="st8"></rect>		<text x="113.28" y="493.94" class="st16" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="44.48" dy="1.4em" class="st5">width=640, height=360, format=BGRA</tspan></text>		</g>	<g id="shape31-115" v:mid="31" v:groupcontext="shape" transform="translate(257.884,-174.103)">		<title>Sheet.31</title>		<desc>video/x-raw width=1280, height=720, format=RGB</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="144.532" cy="498.135" width="289.07" height="36"></v:textrect>		<rect x="0" y="480.135" width="289.064" height="36" class="st8"></rect>		<text x="113.28" y="493.94" class="st16" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="45.02" dy="1.4em" class="st5">width=1280, height=720, format=RGB</tspan></text>		</g>	<g id="shape32-119" v:mid="32" v:groupcontext="shape" transform="translate(257.884,-114.984)">		<title>Sheet.32</title>		<desc>video/x-raw width=320, height=180, format=GRAY8</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="144.532" cy="498.135" width="289.07" height="36"></v:textrect>		<rect x="0" y="480.135" width="289.064" height="36" class="st8"></rect>		<text x="113.28" y="493.94" class="st16" v:langid="1033"><v:paragraph v:spline="-1.4" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>video/x-raw<v:newlinechar></v:newlinechar><tspan x="41.24" dy="1.4em" class="st5">width=320, height=180, format=GRAY8</tspan></text>		</g>	<g id="shape34-123" v:mid="34" v:groupcontext="shape" transform="translate(105,-221.662)">		<title>Sheet.34</title>		<path d="M0 516.14 L20.44 516.14" class="st14"></path>	</g>	<g id="shape35-126" v:mid="35" v:groupcontext="shape" transform="translate(124.569,-218.67)">		<title>Sheet.35</title>		<path d="M0 516.14 L5.18 513.14 L0 510.15 L0 516.14 Z" class="st15"></path>	</g>	<g id="shape37-128" v:mid="37" v:groupcontext="shape" transform="translate(213.775,-150.97)">		<title>Sheet.37</title>		<path d="M0 516.14 L20.87 516.14" class="st14"></path>	</g>	<g id="shape38-131" v:mid="38" v:groupcontext="shape" transform="translate(233.766,-147.978)">		<title>Sheet.38</title>		<path d="M0 516.14 L5.18 513.14 L0 510.15 L0 516.14 Z" class="st15"></path>	</g>	<g id="shape39-133" v:mid="39" v:groupcontext="shape" transform="translate(129.75,-202.912)">		<title>Sheet.39</title>		<desc>qtivsplit</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="497.385" width="90" height="37.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L87 516.14 A3.00007 3.00007 -180 0 0 90 513.14 L90 481.64 A3.00007					 3.00007 -180 0 0 87 478.64 L3 478.64 A3.00007 3.00007 -180 0 0 -0 481.64 L0 513.14 Z" class="st17"></path>		<text x="23.94" y="500.99" class="st18" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtivsplit</text>		</g>	<g id="shape42-136" v:mid="42" v:groupcontext="shape" transform="translate(219.931,-232.912)">		<title>Sheet.42</title>		<path d="M0 516.14 L19.73 516.14 L19.73 438.71 L322.71 438.71 L0 516.14 Z" class="st19"></path>		<path d="M0 516.14 L19.73 516.14 L19.73 438.71 L322.71 438.71" class="st14"></path>	</g>	<g id="shape43-139" v:mid="43" v:groupcontext="shape" transform="translate(541.767,-307.348)">		<title>Sheet.43</title>		<path d="M0 516.14 L5.18 513.14 L0 510.15 L0 516.14 Z" class="st15"></path>	</g>	<g id="shape45-141" v:mid="45" v:groupcontext="shape" transform="translate(219.931,-225.412)">		<title>Sheet.45</title>		<path d="M0 516.14 L37.95 516.14 L37.95 490.33 L322.71 490.33 L0 516.14 Z" class="st19"></path>		<path d="M0 516.14 L37.95 516.14 L37.95 490.33 L322.71 490.33" class="st14"></path>	</g>	<g id="shape46-144" v:mid="46" v:groupcontext="shape" transform="translate(541.767,-248.229)">		<title>Sheet.46</title>		<path d="M0 516.14 L5.18 513.14 L0 510.15 L0 516.14 Z" class="st15"></path>	</g>	<g id="shape48-146" v:mid="48" v:groupcontext="shape" transform="translate(219.931,-192.103)">		<title>Sheet.48</title>		<path d="M0 490.33 L37.95 490.33 L37.95 516.14 L322.71 516.14 L0 490.33 Z" class="st19"></path>		<path d="M0 490.33 L37.95 490.33 L37.95 516.14 L322.71 516.14" class="st14"></path>	</g>	<g id="shape49-149" v:mid="49" v:groupcontext="shape" transform="translate(541.767,-189.111)">		<title>Sheet.49</title>		<path d="M0 516.14 L5.18 513.14 L0 510.15 L0 516.14 Z" class="st15"></path>	</g>	<g id="shape51-151" v:mid="51" v:groupcontext="shape" transform="translate(219.75,-132.984)">		<title>Sheet.51</title>		<path d="M0 438.71 L19.83 438.71 L20.01 516.14 L322.89 516.14 L0 438.71 Z" class="st19"></path>		<path d="M0 438.71 L19.83 438.71 L20.01 516.14 L322.89 516.14" class="st14"></path>	</g>	<g id="shape52-154" v:mid="52" v:groupcontext="shape" transform="translate(541.767,-129.993)">		<title>Sheet.52</title>		<path d="M0 516.14 L5.18 513.14 L0 510.15 L0 516.14 Z" class="st15"></path>	</g>	<g id="shape53-156" v:mid="53" v:groupcontext="shape" transform="translate(546.948,-291.589)">		<title>Sheet.53</title>		<desc>接收端插件 0</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="497.385" width="112.5" height="37.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L109.5 516.14 A3.00007 3.00007 -180 0 0 112.5 513.14 L112.5 481.64					 A3.00007 3.00007 -180 0 0 109.5 478.64 L3 478.64 A3.00007 3.00007 -180 0 0 0 481.64 L0 513.14 Z" class="st6"></path>		<text x="21.4" y="501.38" class="st20" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st4"> </tspan><tspan class="st4">0</tspan></text>		</g>	<g id="shape55-161" v:mid="55" v:groupcontext="shape" transform="translate(546.948,-232.471)">		<title>Sheet.55</title>		<desc>接收端插件 1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="497.385" width="112.5" height="37.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L109.5 516.14 A3.00007 3.00007 -180 0 0 112.5 513.14 L112.5 481.64					 A3.00007 3.00007 -180 0 0 109.5 478.64 L3 478.64 A3.00007 3.00007 -180 0 0 0 481.64 L0 513.14 Z" class="st6"></path>		<text x="21.4" y="501.38" class="st20" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st4"> </tspan><tspan class="st4">1</tspan></text>		</g>	<g id="shape57-166" v:mid="57" v:groupcontext="shape" transform="translate(546.948,-173.353)">		<title>Sheet.57</title>		<desc>接收端插件 N-1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="497.385" width="112.5" height="37.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L109.5 516.14 A3.00007 3.00007 -180 0 0 112.5 513.14 L112.5 481.64					 A3.00007 3.00007 -180 0 0 109.5 478.64 L3 478.64 A3.00007 3.00007 -180 0 0 0 481.64 L0 513.14 Z" class="st6"></path>		<text x="15.46" y="501.38" class="st20" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st4"> </tspan><tspan class="st4">N</tspan><tspan class="st4">-</tspan><tspan class="st4">1</tspan></text>		</g>	<g id="shape59-173" v:mid="59" v:groupcontext="shape" transform="translate(546.948,-114.234)">		<title>Sheet.59</title>		<desc>接收端插件 N</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="56.25" cy="497.385" width="112.5" height="37.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L109.5 516.14 A3.00007 3.00007 -180 0 0 112.5 513.14 L112.5 481.64					 A3.00007 3.00007 -180 0 0 109.5 478.64 L3 478.64 A3.00007 3.00007 -180 0 0 0 481.64 L0 513.14 Z" class="st6"></path>		<text x="20.49" y="501.38" class="st20" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>接收端插件<tspan class="st4"> </tspan><tspan class="st4">N</tspan></text>		</g>	<g id="shape61-178" v:mid="61" v:groupcontext="shape" transform="translate(15,-202.912)">		<title>Sheet.61</title>		<desc>视频源</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="497.385" width="90" height="37.5"></v:textrect>		<path d="M0 513.14 A3.00007 3.00007 -180 0 0 3 516.14 L87 516.14 A3.00007 3.00007 -180 0 0 90 513.14 L90 481.64 A3.00007					 3.00007 -180 0 0 87 478.64 L3 478.64 A3.00007 3.00007 -180 0 0 -0 481.64 L0 513.14 Z" class="st6"></path>		<text x="27" y="501.38" class="st20" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>视频源</text>		</g>	<g id="group70-181" transform="translate(549.324,-14.7814)" v:mid="70" v:groupcontext="group">		<title>Sheet.70</title>		<g id="shape65-182" v:mid="65" v:groupcontext="shape" transform="translate(15.1882,0)">			<title>Sheet.65</title>			<desc>Qualcomm</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="27.8691" cy="509.835" width="55.74" height="12.6"></v:textrect>			<rect x="0" y="503.535" width="55.7382" height="12.6" class="st8"></rect>			<text x="0" y="512.99" class="st21" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>Qualcomm  </text>			</g>		<g id="shape66-185" v:mid="66" v:groupcontext="shape" transform="translate(6.29496E-14,-0.218607)">			<title>Sheet.66</title>			<path d="M0 514.64 A1.50003 1.50003 -180 0 0 1.5 516.14 L10.5 516.14 A1.50003 1.50003 -180 0 0 12 514.64 L12 505.64						 A1.50003 1.50003 -180 0 0 10.5 504.14 L1.5 504.14 A1.50003 1.50003 -180 0 0 0 505.64 L0 514.64 Z" class="st17"></path>		</g>		<g id="shape68-187" v:mid="68" v:groupcontext="shape" transform="translate(89.1246,0)">			<title>Sheet.68</title>			<desc>开源</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="10.5" cy="509.835" width="21.01" height="12.6"></v:textrect>			<rect x="0" y="503.535" width="21" height="12.6" class="st8"></rect>			<text x="0" y="513.33" class="st22" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>开源</text>			</g>		<g id="shape69-190" v:mid="69" v:groupcontext="shape" transform="translate(73.9363,-0.218607)">			<title>Sheet.69</title>			<path d="M0 514.64 A1.50003 1.50003 -180 0 0 1.5 516.14 L10.5 516.14 A1.50003 1.50003 -180 0 0 12 514.64 L12 505.64						 A1.50003 1.50003 -180 0 0 10.5 504.14 L1.5 504.14 A1.50003 1.50003 -180 0 0 0 505.64 L0 514.64 Z" class="st6"></path>		</g>	</g></g>
</svg>

GstImageBufferPool 自定义缓存池类根据 GstImageBufferPool 和下游插件之间的协商处理能力分配 GBM 或 ION 输出缓存。

- 通过 Qualcomm libgbm 完成 GBM 分配。
- 通过发到内核的 IOCTL 命令完成 ION 分配。

## 继承链

[GObject](https://docs.gtk.org/gobject/) → [GstObject](https://gstreamer.freedesktop.org/documentation/gstreamer/gstobject.html?gi-language=c) → [GstElement](https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c) → GstVideoSplit

下表提供了有关 qtivsplit 的端口模板和元素属性的信息。有关用例信息，请参阅以下内容：

- 有关将视频分割为多个流的用例，请参见[视频分割用例](https://docs.qualcomm.com/doc/80-70022-50SC/topic/video-split-use-cases.html)。
- 有关动态裁剪的用例，请参见[菊花链检测与分类](https://docs.qualcomm.com/doc/80-70022-50SC/topic/daisy-chain-detection-and-classification.html)。

## 端口配置

| 端口名称 | 功能 | 功能 | 功能 |
| --- | --- | --- | --- |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw | format： | { (string)NV12, (string)NV21, (string)UYVY, (string)YUY2, (string)RGBA, (string)BGRA, (string)ARGB, (string)ABGR, (string)RGBx, (string)BGRx, (string)xRGB, (string)xBGR, (string)RGB, (string)BGR, (string)GRAY8 } |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw | width: | [ 1, 32767 ] |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw | height: | [ 1, 32767 ] |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw | framerate： | [ 0/1, 255/1 ] |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw (memory:GBM) | format： | { (string)NV12, (string)NV21, (string)UYVY, (string)YUY2, (string)RGBA, (string)BGRA, (string)ARGB, (string)ABGR, (string)RGBx, (string)BGRx, (string)xRGB, (string)xBGR, (string)RGB, (string)BGR, (string)GRAY8 } |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw (memory:GBM) | width: | [ 1, 32767 ] |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw (memory:GBM) | height: | [ 1, 32767 ] |
| SINK 模板：'sink'<br><ul class="ul" id="qtivsplit__ul_a54_2w4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 始终可用</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 接收</li><br><br>                                </ul> | video/x-raw (memory:GBM) | framerate： | [ 0/1, 255/1 ] |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw | format： | { (string)NV12, (string)NV21, (string)UYVY, (string)YUY2, (string)RGBA, (string)BGRA, (string)ARGB, (string)ABGR, (string)RGBx, (string)BGRx, (string)xRGB, (string)xBGR, (string)RGB, (string)BGR, (string)GRAY8 } |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw | width: | [ 1, 32767 ] |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw | height: | [ 1, 32767 ] |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw | framerate： | [ 0/1, 255/1 ] |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw (memory:GBM) | format： | { (string)NV12, (string)NV21, (string)UYVY, (string)YUY2, (string)RGBA, (string)BGRA, (string)ARGB, (string)ABGR, (string)RGBx, (string)BGRx, (string)xRGB, (string)xBGR, (string)RGB, (string)BGR, (string)GRAY8 } |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw (memory:GBM) | width: | [ 1, 32767 ] |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw (memory:GBM) | height: | [ 1, 32767 ] |
| SRC 模板：'src\_%u'<br><ul class="ul" id="qtivsplit__ul_g3q_fw4_y1c"><br>                                    <li class="li"><em class="ph i">可用性：</em> 按需</li><br><br>                                    <li class="li"><em class="ph i">方向：</em> 发送</li><br><br>                                </ul> | video/x-raw (memory:GBM) | framerate： | [ 0/1, 255/1 ] |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |

Table : qtivsplit 的端口属性

| 端口 | 属性 | 说明 |
| --- | --- | --- |
| 'src\_%u' | mode | 操作模式<br><ul class="ul" id="qtivsplit__ul_hsg_fmt_5zb"><br>                                    <li class="li">标志：可读、可写、仅在 NULL 或 READY 状态下可更改</li><br><br>                                    <li class="li"><br>                                        <p class="p">枚举“GstVideoSplitMode”默认：0，“none”</p><ul class="ul" id="qtivsplit__ul_qdt_gmt_5zb"><br>                                            <li class="li"> (0)：none - 重新调整传入缓存并转换颜色以匹配协商的端口上限。如果输入与输出 caps 相匹配，则输入缓存将移动到输出，并且其引用计数会增加。</li><br><br>                                            <li class="li"> (1)：force-transform - 对传入缓存重新调整大小并转换颜色以匹配协商的端口上限。即使协商的输入和输出上限匹配，也会创建新的缓存。</li><br><br>                                            <li class="li"> (2)：single-roi-meta - 检查传入缓存的 ROI 元数据。如果存在与此端口相对应的元条目，则对输入缓存执行裁剪、重新调整和颜色转换操作。转换后的缓存将发送到下一个插件。没有相应 ROI 元的 端口会创建一个 GAP 缓存。</li><br><br>                                            <li class="li"> (3)：batch-roi-meta - 检查传入缓存的 ROI 元数据。关于每个元条目，裁剪、重新缩放和颜色转换均在输入缓存上完成。对于每个 ROI 元条目，都会生成一个缓存并将其发送到下游的下一个插件。如果 ROI 元不存在，端口会创建一个 GAP 缓存。</li><br><br>                                        </ul><br><br>                                    </li><br><br>                                </ul> |

## 元素配置

Table : qtivsplit 的元素属性

| 属性 | 说明 |
| --- | --- |
| name | 对象名称<ul class="ul" id="qtivsplit__ul_pg3_znn_myb"><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">字符串。默认：“videosplit0”</li><br><br>                                </ul> |
| parent | 对象的父级<ul class="ul" id="qtivsplit__ul_qg3_znn_myb"><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">"GstObject" 类型的对象</li><br><br>                                </ul> |
| engine | 用于转换操作的引擎后端<ul class="ul" id="qtivsplit__ul_tcr_lw4_y1c"><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">枚举“GstVideoConverterBackend”默认： 1，“gles”<ul class="ul" id="qtivsplit__ul_vzc_mw4_y1c"><br>                                            <li class="li">(1)：gles - 使用基于 OpenGLES 的视频转换器 </li><br><br>                                            <li class="li">(2)：fcv - 使用基于 Qualcomm Computer Vision SDK<br>                                                  的视频转换器<div class="note note" id="qtivsplit__note_etr_pyg_vdc"><span class="notetitle">Note:</span> 目前不支持 Qualcomm Computer Vision SDK（fcv）引擎。</div><br></li><br><br>                                        </ul><br></li><br><br>                                </ul> |

**Parent Topic:** [配置显示器、摄像头、编码和解码插件](https://docs.qualcomm.com/doc/80-70022-50SC/topic/display-plugins.html)

Last Published: Nov 05, 2025

[Previous Topic
Waylandsink](https://docs.qualcomm.com/bundle/publicresource/80-70022-50SC/topics/waylandsink.md) [Next Topic
qtivtransform](https://docs.qualcomm.com/bundle/publicresource/80-70022-50SC/topics/qtivtransform.md)