# 单路摄像头流传输

Source: [https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-camera-single-stream-example.html](https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-camera-single-stream-example.html)

**gst-camera-single-stream-example** 应用程序可以使用单个摄像头来生成各种输出，包括预览、编码、YUV dump 和 RTSP 流传输。

例如，您可以在安全系统中使用该应用程序，用于从一个摄像头采集视频并通过网络进行流传输。您可以选择实时查看该视频，也可以将其存档以供后续查看。

下图展示了各种单路摄像头流用例的 pipeline 流。关于更多详细信息，请参阅 [Pipeline 流](https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-camera-single-stream-example.html#gst-camera-single-stream-example__section_dq4_h2s_nbc)。

Figure : gst-camera-single-stream-example pipeline
            
            <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by Microsoft Visio, SVG Export gst_camera_single_stream_example_pipeline.svg Layer_2 -->
<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="11.25in" height="4.3063in" viewbox="0 0 810 310.054" xml:space="preserve" color-interpolation-filters="sRGB" class="st16"><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: #007884; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st4 { fill: #ffffff; font-family: Roboto; font-size: 1.00001em }
.svg-1 .st5 { fill: #2a2aea; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st6 { stroke: #000000; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st7 { fill: #000000; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st8 { fill: none; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st9 { fill: #000000; font-family: SimHei; font-size: 1.00001em }
.svg-1 .st10 { font-family: Roboto; font-size: 1em }
.svg-1 .st11 { fill: #000000; font-family: Roboto; font-size: 1.00001em }
.svg-1 .st12 { font-family: SimHei; font-size: 1em }
.svg-1 .st13 { fill: none; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5 }
.svg-1 .st14 { fill: #000000; font-family: Roboto; font-size: 0.874992em }
.svg-1 .st15 { fill: #000000; font-family: SimHei; font-size: 0.874992em }
.svg-1 .st16 { 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_2</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.375,-0.374863)">		<title>Sheet.2</title>		<path d="M0 304.43 A5.62513 5.62513 -180 0 0 5.62 310.05 L803.62 310.05 A5.62513 5.62513 -180 0 0 809.25 304.43 L809.25					 6.37 A5.62513 5.62513 -180 0 0 803.62 0.75 L5.62 0.75 A5.62513 5.62513 -180 0 0 0 6.37 L0 304.43 Z" class="st1"></path>	</g>	<g id="shape3-3" v:mid="3" v:groupcontext="shape">		<title>Sheet.3</title>		<path d="M804 0.75 C806.89 0.75 809.25 3.11 809.25 6 L809.25 304.05 C809.25 306.95 806.89 309.3 804 309.3 L6 309.3 C3.11					 309.3 0.75 306.95 0.75 304.05 L0.75 6 C0.75 3.11 3.11 0.75 6 0.75 L804 0.75 ZM804 0 L6 0 C2.69 0 0 2.69					 0 6 L0 304.05 C0 307.37 2.69 310.05 6 310.05 L804 310.05 C807.31 310.05 810 307.37 810 304.05 L810 6 C810					 2.69 807.31 0 804 0 Z" class="st2"></path>	</g>	<g id="shape5-5" v:mid="5" v:groupcontext="shape" transform="translate(192.722,-177.585)">		<title>Sheet.5</title>		<desc>capsfilter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="27.47" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>capsfilter</text>		</g>	<g id="shape6-8" v:mid="6" v:groupcontext="shape" transform="translate(316.939,-177.585)">		<title>Sheet.6</title>		<desc>v4l2h264enc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M-0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 0 278.05 L0 307.05 Z" class="st3"></path>		<text x="18.36" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>v4l2h264enc</text>		</g>	<g id="shape7-11" v:mid="7" v:groupcontext="shape" transform="translate(688.558,-177.585)">		<title>Sheet.7</title>		<desc>filesink</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105" height="35"></v:textrect>		<path d="M-0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 0 278.05 L0 307.05 Z" class="st3"></path>		<text x="33.42" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>filesink</text>		</g>	<g id="shape8-14" v:mid="8" v:groupcontext="shape" transform="translate(69.0679,-177.585)">		<title>Sheet.8</title>		<desc>qtiqmmfsrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st5"></path>		<text x="21.4" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtiqmmfsrc</text>		</g>	<g id="shape12-17" v:mid="12" v:groupcontext="shape" transform="translate(440.837,-177.585)">		<title>Sheet.12</title>		<desc>h264parse</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="24.15" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>h264parse</text>		</g>	<g id="shape14-20" v:mid="14" v:groupcontext="shape" transform="translate(564.668,-177.585)">		<title>Sheet.14</title>		<desc>mp4mux</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="28.97" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>mp4mux</text>		</g>	<g id="group17-23" transform="translate(174.519,-192.467)" v:mid="17" v:groupcontext="group">		<title>Sheet.17</title>		<g id="shape18-24" v:mid="18" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.18</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape19-27" v:mid="19" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.19</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group20-29" transform="translate(298.425,-192.467)" v:mid="20" v:groupcontext="group">		<title>Sheet.20</title>		<g id="shape21-30" v:mid="21" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.21</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape22-33" v:mid="22" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.22</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group23-35" transform="translate(422.646,-192.467)" v:mid="23" v:groupcontext="group">		<title>Sheet.23</title>		<g id="shape24-36" v:mid="24" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.24</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape25-39" v:mid="25" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.25</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group26-41" transform="translate(546.472,-192.467)" v:mid="26" v:groupcontext="group">		<title>Sheet.26</title>		<g id="shape27-42" v:mid="27" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.27</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape28-45" v:mid="28" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.28</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group29-47" transform="translate(670.385,-192.467)" v:mid="29" v:groupcontext="group">		<title>Sheet.29</title>		<g id="shape30-48" v:mid="30" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.30</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape31-51" v:mid="31" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.31</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="shape32-53" v:mid="32" v:groupcontext="shape" transform="translate(72,-214.616)">		<title>Sheet.32</title>		<desc>视频编码</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45.3718" cy="302.854" width="90.75" height="14.4"></v:textrect>		<rect x="0" y="295.654" width="90.7436" height="14.4" class="st8"></rect>		<text x="0" y="306.45" class="st9" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>视频编码</text>		</g>	<g id="shape33-56" v:mid="33" v:groupcontext="shape" transform="translate(69.0679,-243.219)">		<title>Sheet.33</title>		<desc>qtiqmmfsrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 0 278.05 L0 307.05 Z" class="st5"></path>		<text x="21.4" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtiqmmfsrc</text>		</g>	<g id="shape35-59" v:mid="35" v:groupcontext="shape" transform="translate(72,-280.25)">		<title>Sheet.35</title>		<desc>摄像头预览</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="48.4714" cy="302.854" width="96.95" height="14.4"></v:textrect>		<rect x="0" y="295.654" width="96.9428" height="14.4" class="st8"></rect>		<text x="0" y="306.45" class="st9" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>摄像头预览</text>		</g>	<g id="shape36-62" v:mid="36" v:groupcontext="shape" transform="translate(192.722,-244.073)">		<title>Sheet.36</title>		<desc>capsfilter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 0 278.05 L0 307.05 Z" class="st3"></path>		<text x="27.47" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>capsfilter</text>		</g>	<g id="shape37-65" v:mid="37" v:groupcontext="shape" transform="translate(316.939,-244.073)">		<title>Sheet.37</title>		<desc>Waylandsink</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M-0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="18.76" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Waylandsink</text>		</g>	<g id="group40-68" transform="translate(174.519,-258.955)" v:mid="40" v:groupcontext="group">		<title>Sheet.40</title>		<g id="shape41-69" v:mid="41" v:groupcontext="shape" transform="translate(0,-2.61784)">			<title>Sheet.41</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape42-72" v:mid="42" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.42</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="shape43-74" v:mid="43" v:groupcontext="shape" transform="translate(51.232,-260.719)">		<title>Sheet.43</title>		<path d="M0 310.05 L17.5 310.05" class="st6"></path>	</g>	<g id="group44-77" transform="translate(298.425,-258.955)" v:mid="44" v:groupcontext="group">		<title>Sheet.44</title>		<g id="shape45-78" v:mid="45" v:groupcontext="shape" transform="translate(0,-2.61784)">			<title>Sheet.45</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape46-81" v:mid="46" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.46</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="shape47-83" v:mid="47" v:groupcontext="shape" transform="translate(192.722,-112.451)">		<title>Sheet.47</title>		<desc>capsfilter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="27.47" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>capsfilter</text>		</g>	<g id="shape48-86" v:mid="48" v:groupcontext="shape" transform="translate(316.939,-112.451)">		<title>Sheet.48</title>		<desc>filesink</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 0 278.05 L0 307.05 Z" class="st3"></path>		<text x="33.42" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>filesink</text>		</g>	<g id="group51-89" transform="translate(174.519,-127.333)" v:mid="51" v:groupcontext="group">		<title>Sheet.51</title>		<g id="shape52-90" v:mid="52" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.52</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape53-93" v:mid="53" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.53</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group54-95" transform="translate(298.425,-127.333)" v:mid="54" v:groupcontext="group">		<title>Sheet.54</title>		<g id="shape55-96" v:mid="55" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.55</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape56-99" v:mid="56" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.56</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="shape57-101" v:mid="57" v:groupcontext="shape" transform="translate(69.0679,-111.952)">		<title>Sheet.57</title>		<desc>qtiqmmfsrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st5"></path>		<text x="21.4" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtiqmmfsrc</text>		</g>	<g id="shape59-104" v:mid="59" v:groupcontext="shape" transform="translate(72,-148.983)">		<title>Sheet.59</title>		<desc>摄像头 YUV dump</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="49.9655" cy="302.854" width="99.94" height="14.4"></v:textrect>		<rect x="0" y="295.654" width="99.9311" height="14.4" class="st8"></rect>		<text x="0" y="306.85" class="st9" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>摄像头<tspan class="st10"> </tspan><tspan class="st10">YUV dump</tspan></text>		</g>	<g id="shape60-109" v:mid="60" v:groupcontext="shape" transform="translate(192.722,-46.3184)">		<title>Sheet.60</title>		<desc>capsfilter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="27.47" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>capsfilter</text>		</g>	<g id="shape61-112" v:mid="61" v:groupcontext="shape" transform="translate(316.939,-46.3184)">		<title>Sheet.61</title>		<desc>v4l2h264enc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 0 278.05 L0 307.05 Z" class="st3"></path>		<text x="18.36" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>v4l2h264enc</text>		</g>	<g id="shape62-115" v:mid="62" v:groupcontext="shape" transform="translate(688.558,-46.3184)">		<title>Sheet.62</title>		<desc>udpsink</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105" height="35"></v:textrect>		<path d="M-0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="31.54" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>udpsink</text>		</g>	<g id="shape63-118" v:mid="63" v:groupcontext="shape" transform="translate(69.0679,-46.3184)">		<title>Sheet.63</title>		<desc>qtiqmmfsrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st5"></path>		<text x="21.4" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtiqmmfsrc</text>		</g>	<g id="shape67-121" v:mid="67" v:groupcontext="shape" transform="translate(440.837,-46.3184)">		<title>Sheet.67</title>		<desc>h264parse</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="24.15" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>h264parse</text>		</g>	<g id="shape69-124" v:mid="69" v:groupcontext="shape" transform="translate(564.668,-46.3184)">		<title>Sheet.69</title>		<desc>rtph264pay</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="52.5" cy="292.554" width="105.01" height="35"></v:textrect>		<path d="M0 307.05 A3.00007 3.00007 -180 0 0 3 310.05 L102 310.05 A3.00007 3.00007 -180 0 0 105 307.05 L105 278.05 A3.00007					 3.00007 -180 0 0 102 275.05 L3 275.05 A3.00007 3.00007 -180 0 0 -0 278.05 L0 307.05 Z" class="st3"></path>		<text x="22.26" y="296.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>rtph264pay</text>		</g>	<g id="group72-127" transform="translate(174.519,-61.2006)" v:mid="72" v:groupcontext="group">		<title>Sheet.72</title>		<g id="shape73-128" v:mid="73" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.73</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape74-131" v:mid="74" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.74</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group75-133" transform="translate(298.425,-61.2006)" v:mid="75" v:groupcontext="group">		<title>Sheet.75</title>		<g id="shape76-134" v:mid="76" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.76</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape77-137" v:mid="77" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.77</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group78-139" transform="translate(422.646,-61.2006)" v:mid="78" v:groupcontext="group">		<title>Sheet.78</title>		<g id="shape79-140" v:mid="79" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.79</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape80-143" v:mid="80" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.80</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group81-145" transform="translate(546.472,-61.2006)" v:mid="81" v:groupcontext="group">		<title>Sheet.81</title>		<g id="shape82-146" v:mid="82" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.82</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape83-149" v:mid="83" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.83</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="group84-151" transform="translate(670.385,-61.2006)" v:mid="84" v:groupcontext="group">		<title>Sheet.84</title>		<g id="shape85-152" v:mid="85" v:groupcontext="shape" transform="translate(0,-2.61781)">			<title>Sheet.85</title>			<path d="M0 310.05 L13.73 310.05" class="st6"></path>		</g>		<g id="shape86-155" v:mid="86" v:groupcontext="shape" transform="translate(12.9665,0)">			<title>Sheet.86</title>			<path d="M0 310.05 L4.53 307.44 L0 304.82 L0 310.05 Z" class="st7"></path>		</g>	</g>	<g id="shape87-157" v:mid="87" v:groupcontext="shape" transform="translate(72,-83.35)">		<title>Sheet.87</title>		<desc>RTSP 流传输</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="48" cy="302.854" width="96" height="14.4"></v:textrect>		<rect x="0" y="295.654" width="96" height="14.4" class="st8"></rect>		<text x="0" y="306.85" class="st11" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>RTSP <tspan class="st12">流传输</tspan></text>		</g>	<g id="shape88-161" v:mid="88" v:groupcontext="shape" transform="translate(16.4423,-251.341)">		<title>Sheet.88</title>		<path d="M21.09 283.05 L12.66 283.05 L8.44 288.12 L3.38 288.12 C1.51 288.12 0 289.63 0 291.49 L0 306.68 C0 308.54 1.51					 310.05 3.38 310.05 L30.38 310.05 C32.24 310.05 33.75 308.54 33.75 306.68 L33.75 291.49 C33.75 289.63 32.24					 288.12 30.38 288.12 L25.31 288.12 L21.09 283.05 Z" class="st13"></path>	</g>	<g id="shape89-163" v:mid="89" v:groupcontext="shape" transform="translate(28.2548,-259.778)">		<title>Sheet.89</title>		<ellipse cx="5.0625" cy="304.991" rx="5.0625" ry="5.0625" class="st13"></ellipse>	</g>	<g id="shape90-165" v:mid="90" v:groupcontext="shape" transform="translate(51.232,-195.085)">		<title>Sheet.90</title>		<path d="M0 310.05 L17.5 310.05" class="st6"></path>	</g>	<g id="shape91-168" v:mid="91" v:groupcontext="shape" transform="translate(16.4423,-181.585)">		<title>Sheet.91</title>		<path d="M21.09 283.05 L12.66 283.05 L8.44 288.12 L3.38 288.12 C1.51 288.12 0 289.63 0 291.49 L0 306.68 C0 308.54 1.51					 310.05 3.38 310.05 L30.38 310.05 C32.24 310.05 33.75 308.54 33.75 306.68 L33.75 291.49 C33.75 289.63 32.24					 288.12 30.38 288.12 L25.31 288.12 L21.09 283.05 Z" class="st13"></path>	</g>	<g id="shape92-170" v:mid="92" v:groupcontext="shape" transform="translate(28.2548,-190.023)">		<title>Sheet.92</title>		<ellipse cx="5.0625" cy="304.991" rx="5.0625" ry="5.0625" class="st13"></ellipse>	</g>	<g id="shape93-172" v:mid="93" v:groupcontext="shape" transform="translate(51.232,-129.452)">		<title>Sheet.93</title>		<path d="M0 310.05 L17.5 310.05" class="st6"></path>	</g>	<g id="shape94-175" v:mid="94" v:groupcontext="shape" transform="translate(16.4423,-115.952)">		<title>Sheet.94</title>		<path d="M21.09 283.05 L12.66 283.05 L8.44 288.12 L3.38 288.12 C1.51 288.12 0 289.63 0 291.49 L0 306.68 C0 308.54 1.51					 310.05 3.38 310.05 L30.38 310.05 C32.24 310.05 33.75 308.54 33.75 306.68 L33.75 291.49 C33.75 289.63 32.24					 288.12 30.38 288.12 L25.31 288.12 L21.09 283.05 Z" class="st13"></path>	</g>	<g id="shape95-177" v:mid="95" v:groupcontext="shape" transform="translate(28.2548,-124.389)">		<title>Sheet.95</title>		<ellipse cx="5.0625" cy="304.991" rx="5.0625" ry="5.0625" class="st13"></ellipse>	</g>	<g id="shape96-179" v:mid="96" v:groupcontext="shape" transform="translate(51.232,-63.8184)">		<title>Sheet.96</title>		<path d="M0 310.05 L17.5 310.05" class="st6"></path>	</g>	<g id="shape97-182" v:mid="97" v:groupcontext="shape" transform="translate(16.4423,-50.3184)">		<title>Sheet.97</title>		<path d="M21.09 283.05 L12.66 283.05 L8.44 288.12 L3.38 288.12 C1.51 288.12 0 289.63 0 291.49 L0 306.68 C0 308.54 1.51					 310.05 3.38 310.05 L30.38 310.05 C32.24 310.05 33.75 308.54 33.75 306.68 L33.75 291.49 C33.75 289.63 32.24					 288.12 30.38 288.12 L25.31 288.12 L21.09 283.05 Z" class="st13"></path>	</g>	<g id="shape98-184" v:mid="98" v:groupcontext="shape" transform="translate(28.2548,-58.7559)">		<title>Sheet.98</title>		<ellipse cx="5.0625" cy="304.991" rx="5.0625" ry="5.0625" class="st13"></ellipse>	</g>	<g id="group106-186" transform="translate(683.433,-14.4487)" v:mid="106" v:groupcontext="group">		<title>Sheet.106</title>		<g id="shape101-187" v:mid="101" v:groupcontext="shape" transform="translate(15.1883,0)">			<title>Sheet.101</title>			<desc>Qualcomm</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="26.8106" cy="303.754" width="53.63" height="12.6"></v:textrect>			<rect x="0" y="297.454" width="53.6213" height="12.6" class="st8"></rect>			<text x="0" y="306.9" class="st14" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>Qualcomm  </text>			</g>		<g id="shape102-190" v:mid="102" v:groupcontext="shape" transform="translate(6.29496E-14,-0.218619)">			<title>Sheet.102</title>			<path d="M0 308.55 A1.50003 1.50003 -180 0 0 1.5 310.05 L10.5 310.05 A1.50003 1.50003 -180 0 0 12 308.55 L12 299.55						 A1.50003 1.50003 -180 0 0 10.5 298.05 L1.5 298.05 A1.50003 1.50003 -180 0 0 -0 299.55 L0 308.55 Z" class="st5"></path>		</g>		<g id="shape104-192" v:mid="104" v:groupcontext="shape" transform="translate(89.1246,0)">			<title>Sheet.104</title>			<desc>开源</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="10.5" cy="303.754" width="21" height="12.6"></v:textrect>			<rect x="0" y="297.454" width="21" height="12.6" class="st8"></rect>			<text x="0" y="306.9" class="st15" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>开源</text>			</g>		<g id="shape105-195" v:mid="105" v:groupcontext="shape" transform="translate(73.9363,-0.218619)">			<title>Sheet.105</title>			<path d="M0 308.55 A1.50003 1.50003 -180 0 0 1.5 310.05 L10.5 310.05 A1.50003 1.50003 -180 0 0 12 308.55 L12 299.55						 A1.50003 1.50003 -180 0 0 10.5 298.05 L1.5 298.05 A1.50003 1.50003 -180 0 0 -0 299.55 L0 308.55 Z" class="st3"></path>		</g>	</g></g>
</svg>

## 运行应用程序

1. 确保您已完成[前提条件](https://docs.qualcomm.com/doc/80-70022-50SC/topic/mm_sample_apps_prerequisites.html)。
2. 在目标设备的终端中，选择以下任一用例并运行相应的命令：
    - **实时摄像头用例**：在 Waylandsink 上查看实时摄像头：

            gst-camera-single-stream-example -o 0 -w 1920 -h 1080Copy to clipboard
    - **MP4 用例**：将 MP4 dump 到 /etc/media/ 文件夹：

            gst-camera-single-stream-example -o 1 -w 1920 -h 1080Copy to clipboard
    - **YUV 用例**：将 YUV 数据 dump 到 `/etc/media/` 文件夹：

            gst-camera-single-stream-example -o 2 -w 1920 -h 1080Copy to clipboard
    - **RTSP 用例**：在 Linux 主机上查看 RTSP 流（运行 RTSP 服务器）：
        1. 使用 `udpsrc` 在目标设备上的单独控制台中运行 RTSP 服务器（可以在后台作为服务运行）：

                gst-rtsp-server -a <ip_address> -p 8900 -m /live "( udpsrc name=pay0 port=<port_num> caps=\"application/x-rtp,media=video,clock-rate=90000,encoding-name=H264,payload=96\" )"Copy to clipboard

            例如：

                gst-rtsp-server -p 8900 -a 10.92.182.47 -m /live "( udpsrc name=pay0 port=8554 caps=\"application/x-rtp,media=video,clock-rate=90000,encoding-name=H264,payload=96\" )"Copy to clipboard
        2. 运行以下命令：

                gst-camera-single-stream-example -o 3 -w 1280 -h 720 -i <ip_address> -p <port_num>Copy to clipboard
3. 在主机的终端中，运行以下命令分别在 VLC 播放器或 FFplay 上查看流：

**对于 VLC：**

        vlc -vvv rtsp://<ip_address>:8900/liveCopy to clipboard

**对于 FFplay：**

        ffplay rtsp://<ip_address>:8900/liveCopy to clipboard
4. 要停止用例，请使用 CTRL + C。
5. 在目标设备的终端中，在 SSH shell 中运行以下命令以显示可用的帮助选项：

        gst-camera-single-stream-example --helpCopy to clipboard
6. 在主机的终端中，运行以下命令从目标设备中拉取文件：

        scp root@<IP address of target device>:/etc/media/<filename to pull> <destination directory>Copy to clipboard

## 预期输出

下表列出了基于所选输出类型的预期输出。

Table : gst-camera-single-stream-example 的预期输出

| 输出 | 说明 |
| :--- | :--- |
| 显示器 | 预览流 |
| Dump MP4 和 YUV 数据 | 将输出保存到 /etc/media/处的文件中。 |
| RTSP | 在远程显示器上查看输出。 |

Figure : gst-camera-single-stream-example 应用程序的预期输出
                
                ![](data:image/png;base64,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)

## Pipeline 流

下表列出了单个摄像头流传输 pipeline 中使用的插件：| Pipeline | 说明 |
| --- | --- |
| 实时摄像头预览显示 | <ol class="ol" id="gst-camera-single-stream-example__ol_njk_nls_nbc"><br>                                        <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtiqmmfsrc.html">qtiqmmfsrc</a> 采集摄像头实时流。</li><br><br>                                        <li class="li">Capsfilter 用于对原始视频数据实施约束。</li><br><br>                                        <li class="li">数据将发送到 Wayland 显示器接收端（<a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/waylandsink.html">Waylandsink</a>）进行实时预览。</li><br><br>                                    </ol> |
| 视频编码 | <ol class="ol" id="gst-camera-single-stream-example__ol_fhg_wls_nbc"><br>                                        <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtiqmmfsrc.html">qtiqmmfsrc</a> 采集摄像头实时流。</li><br><br>                                        <li class="li">Capsfilter 用于对原始视频数据实施约束。</li><br><br>                                        <li class="li">数据将发送到 Wayland 显示接收器（<a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/waylandsink.html">Waylandsink</a>）进行实时预览。</li><br><br>                                        <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/v4l2h264enc.html">v4l2h264enc</a> 使用 H.264 格式对视频进行编码。</li><br><br>                                        <li class="li">H264parse 用于渲染视频。</li><br><br>                                        <li class="li">Mp4mux 用于将视频复用到 MP4 容器中。</li><br><br>                                        <li class="li">Filesink 用于将视频写入文件。</li><br><br>                                    </ol> |
| 将摄像头 YUV 数据 dump 到 filesink | <ol class="ol"><br>                                        <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtiqmmfsrc.html">qtiqmmfsrc</a> 采集摄像头实时流。</li><br><br>                                        <li class="li">Capsfilter 用于对原始视频数据实施约束。</li><br><br>                                        <li class="li">Filesink 用于将 YUV 数据 dump 到文件中。</li><br><br>                                    </ol> |
| RTSP 流 | <ol class="ol"><br>                                        <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtiqmmfsrc.html">qtiqmmfsrc</a> 采集摄像头实时流。</li><br><br>                                        <li class="li">Capsfilter 用于对原始视频数据实施约束。</li><br><br>                                        <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/v4l2h264enc.html">v4l2h264enc</a> 使用 H.264 格式对视频进行编码。</li><br><br>                                        <li class="li">H264parse 用于渲染视频，rtph264pay 用于将流加载到 RTSP，然后将流发送到 UDP sink 进行 RTSP 流传输。</li><br><br>                                    </ol> |

## 相关信息

[使用 OpenCV 进行摄像头流传输](https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-camera-opencv-resize-py.html)

**Parent Topic:** [运行摄像头的示例应用程序](https://docs.qualcomm.com/doc/80-70022-50SC/topic/camera-sample-applications.html)

Last Published: Nov 05, 2025

[Previous Topic
运行摄像头的示例应用程序](https://docs.qualcomm.com/bundle/publicresource/80-70022-50SC/topics/camera-sample-applications.md) [Next Topic
USB 摄像头](https://docs.qualcomm.com/bundle/publicresource/80-70022-50SC/topics/usb-camera.md)