summaryrefslogtreecommitdiff
path: root/build/doc/html/stream_8h_source.html
diff options
context:
space:
mode:
Diffstat (limited to 'build/doc/html/stream_8h_source.html')
-rw-r--r--build/doc/html/stream_8h_source.html161
1 files changed, 161 insertions, 0 deletions
diff --git a/build/doc/html/stream_8h_source.html b/build/doc/html/stream_8h_source.html
new file mode 100644
index 00000000..0d01f82a
--- /dev/null
+++ b/build/doc/html/stream_8h_source.html
@@ -0,0 +1,161 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.15"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>PipeWire: stream.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+ $(document).ready(initResizable);
+/* @license-end */</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">PipeWire
+ &#160;<span id="projectnumber">0.2.9</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.15 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(document).ready(function(){initNavTree('stream_8h_source.html','');});
+/* @license-end */
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">stream.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="stream_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/* PipeWire</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright © 2018 Wim Taymans</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining a</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * copy of this software and associated documentation files (the &quot;Software&quot;),</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * to deal in the Software without restriction, including without limitation</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the rights to use, copy, modify, merge, publish, distribute, sublicense,</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * and/or sell copies of the Software, and to permit persons to whom the</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * Software is furnished to do so, subject to the following conditions:</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * The above copyright notice and this permission notice (including the next</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * paragraph) shall be included in all copies or substantial portions of the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Software.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * DEALINGS IN THE SOFTWARE.</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#ifndef PIPEWIRE_STREAM_H</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#define PIPEWIRE_STREAM_H</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="keyword">struct </span><a class="code" href="classpw__stream.html">pw_stream</a>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor">#include &lt;spa/buffer/buffer.h&gt;</span></div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="preprocessor">#include &lt;spa/param/param.h&gt;</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="remote_8h.html">pipewire/remote.h</a>&gt;</span></div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82"> 160</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82">pw_stream_state</a> {</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82aae3c1d061da27957fd3a9389b29ff89e"> 161</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82aae3c1d061da27957fd3a9389b29ff89e">PW_STREAM_STATE_ERROR</a> = -1, </div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82aae02f4af09cb65c931e95e1aa3bdd5f3"> 162</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82aae02f4af09cb65c931e95e1aa3bdd5f3">PW_STREAM_STATE_UNCONNECTED</a> = 0, </div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a775f5777259aa54f7ad6d4c7cfa1779f"> 163</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a775f5777259aa54f7ad6d4c7cfa1779f">PW_STREAM_STATE_CONNECTING</a> = 1, </div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a6d38d0ac9310b1822fcc98add8e4a8d2"> 164</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a6d38d0ac9310b1822fcc98add8e4a8d2">PW_STREAM_STATE_CONFIGURE</a> = 2, </div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82acaf3c66b2d1446a3a5933498f52e5efc"> 165</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82acaf3c66b2d1446a3a5933498f52e5efc">PW_STREAM_STATE_READY</a> = 3, </div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a0537b5f9f722fb2faf7822cd09370825"> 166</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a0537b5f9f722fb2faf7822cd09370825">PW_STREAM_STATE_PAUSED</a> = 4, </div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82af3c3b39039810d40a7c9e1ae3c6c905d"> 168</a></span>&#160; <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82af3c3b39039810d40a7c9e1ae3c6c905d">PW_STREAM_STATE_STREAMING</a> = 5 </div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;};</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="structpw__buffer.html"> 171</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpw__buffer.html">pw_buffer</a> {</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="structpw__buffer.html#ad0716b5bc3f7e1cb3009c524c0192090"> 172</a></span>&#160; <span class="keyword">struct </span>spa_buffer *<a class="code" href="structpw__buffer.html#ad0716b5bc3f7e1cb3009c524c0192090">buffer</a>; </div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="structpw__buffer.html#ad85549808ad885c57f85e1aee60b8c96"> 173</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structpw__buffer.html#ad85549808ad885c57f85e1aee60b8c96">user_data</a>; </div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="structpw__buffer.html#a925734b861209896789573f3b94a61c1"> 174</a></span>&#160; uint64_t <a class="code" href="structpw__buffer.html#a925734b861209896789573f3b94a61c1">size</a>; </div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;};</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="structpw__stream__control.html"> 181</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpw__stream__control.html">pw_stream_control</a> {</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="structpw__stream__control.html#aea19861b98b0e07f867496d3f4188674"> 182</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structpw__stream__control.html#aea19861b98b0e07f867496d3f4188674">name</a>;</div><div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="structpw__stream__control.html#a4167f3df47a2d2deff793d3f1f6d31d2"> 183</a></span>&#160; uint32_t <a class="code" href="structpw__stream__control.html#a4167f3df47a2d2deff793d3f1f6d31d2">flags</a>;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="structpw__stream__control.html#ad4a5eb55a812010d9aa2e3ec9409fc9a"> 184</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="structpw__stream__control.html#ad4a5eb55a812010d9aa2e3ec9409fc9a">value</a>;</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="structpw__stream__control.html#a4541b454ba4caaf23f4e772f431294c1"> 185</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="structpw__stream__control.html#a4541b454ba4caaf23f4e772f431294c1">def</a>;</div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="structpw__stream__control.html#a61f6208ade53511ac42e01185f270f62"> 186</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="structpw__stream__control.html#a61f6208ade53511ac42e01185f270f62">min</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="structpw__stream__control.html#a40b47654929367a6a4f1b83b0b68bfb1"> 187</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="structpw__stream__control.html#a40b47654929367a6a4f1b83b0b68bfb1">max</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;};</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="structpw__stream__events.html"> 192</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpw__stream__events.html">pw_stream_events</a> {</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="stream_8h.html#af21c1b002f78067d2eca97c455970822"> 193</a></span>&#160;<span class="preprocessor">#define PW_VERSION_STREAM_EVENTS 0</span></div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#a74aaca4c31e44dad69aba50607055419"> 194</a></span>&#160; uint32_t <a class="code" href="structpw__stream__events.html#a74aaca4c31e44dad69aba50607055419">version</a>;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#abbe98bb0d78e6411d08244495f349b0b"> 196</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#abbe98bb0d78e6411d08244495f349b0b">destroy</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>);</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#a89192aed5fcd89314bf7cc7ef6b21085"> 198</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#a89192aed5fcd89314bf7cc7ef6b21085">state_changed</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>, <span class="keyword">enum</span> <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82">pw_stream_state</a> old,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keyword">enum</span> <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82">pw_stream_state</a> state, <span class="keyword">const</span> <span class="keywordtype">char</span> *error);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#a3efe9a6dc601da668b39650d4c446031"> 202</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#a3efe9a6dc601da668b39650d4c446031">control_changed</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>, uint32_t id, <span class="keywordtype">float</span> value);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#a8136ecfe4e1fe26467da10915f08bd2a"> 207</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#a8136ecfe4e1fe26467da10915f08bd2a">format_changed</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>, <span class="keyword">const</span> <span class="keyword">struct </span>spa_pod *format);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#abd09d7c76b0e14a201a438f09e609b29"> 210</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#abd09d7c76b0e14a201a438f09e609b29">add_buffer</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>, <span class="keyword">struct </span><a class="code" href="structpw__buffer.html">pw_buffer</a> *<a class="code" href="structpw__buffer.html#ad0716b5bc3f7e1cb3009c524c0192090">buffer</a>);</div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#a0cdc45fef5f2458a0fd11a6e9ef1f6fb"> 212</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#a0cdc45fef5f2458a0fd11a6e9ef1f6fb">remove_buffer</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>, <span class="keyword">struct </span><a class="code" href="structpw__buffer.html">pw_buffer</a> *<a class="code" href="structpw__buffer.html#ad0716b5bc3f7e1cb3009c524c0192090">buffer</a>);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#a512bd219ce44ba1a688d600773efe84b"> 218</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#a512bd219ce44ba1a688d600773efe84b">process</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="structpw__stream__events.html#aab4b9831ef563920b401b1f9daf93042"> 221</a></span>&#160; void (*<a class="code" href="structpw__stream__events.html#aab4b9831ef563920b401b1f9daf93042">drained</a>) (<span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;};</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="classpw__stream.html#a8b023e0bc564e4e8f70cec17e7c608f4">pw_stream_state_as_string</a>(<span class="keyword">enum</span> <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82">pw_stream_state</a> state);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106"> 229</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106">pw_stream_flags</a> {</div><div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106aefcc7a31a05fa55c8cff7e686dd484ca"> 230</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106aefcc7a31a05fa55c8cff7e686dd484ca">PW_STREAM_FLAG_NONE</a> = 0, </div><div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab648fa0c0c7adf6aa3139eddc3a9cd7c"> 231</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab648fa0c0c7adf6aa3139eddc3a9cd7c">PW_STREAM_FLAG_AUTOCONNECT</a> = (1 &lt;&lt; 0), </div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a2912e7520b8eb0aa5e4a5ca275f10d3b"> 233</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a2912e7520b8eb0aa5e4a5ca275f10d3b">PW_STREAM_FLAG_INACTIVE</a> = (1 &lt;&lt; 1), </div><div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a615348212b647ad5d30313536ed6e125"> 236</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a615348212b647ad5d30313536ed6e125">PW_STREAM_FLAG_MAP_BUFFERS</a> = (1 &lt;&lt; 2), </div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a73692ffb4a18142df04772cf3783410c"> 237</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a73692ffb4a18142df04772cf3783410c">PW_STREAM_FLAG_DRIVER</a> = (1 &lt;&lt; 3), </div><div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ad569b3a7085e21df1236651fd3388a22"> 238</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ad569b3a7085e21df1236651fd3388a22">PW_STREAM_FLAG_RT_PROCESS</a> = (1 &lt;&lt; 4), </div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a87c6bfacd40d4f797505fbc22bd2b9da"> 240</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a87c6bfacd40d4f797505fbc22bd2b9da">PW_STREAM_FLAG_NO_CONVERT</a> = (1 &lt;&lt; 5), </div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a79f1bdb249e79c7e71cf46759936768f"> 241</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a79f1bdb249e79c7e71cf46759936768f">PW_STREAM_FLAG_EXCLUSIVE</a> = (1 &lt;&lt; 6), </div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab111b3fc3e1d3c1c439a65dc85a3ce20"> 243</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab111b3fc3e1d3c1c439a65dc85a3ce20">PW_STREAM_FLAG_DONT_RECONNECT</a> = (1 &lt;&lt; 7), </div><div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab95a612ea82e3d928b5d2971bcd96465"> 245</a></span>&#160; <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab95a612ea82e3d928b5d2971bcd96465">PW_STREAM_FLAG_ALLOC_BUFFERS</a> = (1 &lt;&lt; 8), </div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;};</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="keyword">struct </span><a class="code" href="classpw__stream.html">pw_stream</a> *</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<a class="code" href="classpw__stream.html#a6f1606e27cc3bd9c522b92c9469a6f2f">pw_stream_new</a>(<span class="keyword">struct</span> <a class="code" href="classpw__remote.html">pw_remote</a> *remote, </div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name, </div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keyword">struct</span> <a class="code" href="structpw__properties.html">pw_properties</a> *<a class="code" href="structprops.html">props</a> );</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="keyword">struct </span><a class="code" href="classpw__stream.html">pw_stream</a> *</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<a class="code" href="stream_8h.html#a7a8eafa174549733293f11ec2c646827">pw_stream_new_simple</a>(<span class="keyword">struct</span> <a class="code" href="structpw__loop.html">pw_loop</a> *loop, </div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name, </div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keyword">struct</span> <a class="code" href="structpw__properties.html">pw_properties</a> *<a class="code" href="structprops.html">props</a>,</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structpw__stream__events.html">pw_stream_events</a> *events, </div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a> );</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="keywordtype">void</span> <a class="code" href="classpw__stream.html#af48f79b09798488557cd6c2f896e0891">pw_stream_destroy</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream_8h.html#adfa74620109228a9cfce24b628aa130f">pw_stream_add_listener</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>,</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keyword">struct</span> spa_hook *listener,</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structpw__stream__events.html">pw_stream_events</a> *events,</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structdata.html">data</a>);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="keyword">enum</span> <a class="code" href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82">pw_stream_state</a> <a class="code" href="stream_8h.html#a087a686c66c04e54742cc94c7a5e4e68">pw_stream_get_state</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> **error);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="stream_8h.html#a751f41a0a5ce1ece31ec126b3cab4fd4">pw_stream_get_name</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="keyword">struct </span><a class="code" href="classpw__remote.html">pw_remote</a> *<a class="code" href="stream_8h.html#a8ed38eb5f4180eec0fcb96b5c249b30a">pw_stream_get_remote</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="keyword">const</span> <span class="keyword">struct </span><a class="code" href="structpw__properties.html">pw_properties</a> *<a class="code" href="stream_8h.html#afc74d20ae2305d82aba860fde41b9e31">pw_stream_get_properties</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="keywordtype">int</span> <a class="code" href="stream_8h.html#a065b067d55def0d2c2cedf814a5c55d0">pw_stream_update_properties</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, <span class="keyword">const</span> <span class="keyword">struct</span> spa_dict *<a class="code" href="structpw__properties.html#a70aa5816bde60f5511f2308971794881">dict</a>);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<a class="code" href="classpw__stream.html#a0e12176f13e654e64e7f5689e7a6dd54">pw_stream_connect</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, </div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keyword">enum</span> <a class="code" href="introspect_8h.html#a6e9e847059d68cbdb608abc8eb6b631d">pw_direction</a> direction, </div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; uint32_t target_id, </div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">enum</span> <a class="code" href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106">pw_stream_flags</a> <a class="code" href="structpw__properties.html#a8003e978689f764bb7bd2a3ab2d46a87">flags</a>, </div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keyword">const</span> <span class="keyword">struct</span> spa_pod **params, </div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; uint32_t n_params );</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;uint32_t</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<a class="code" href="classpw__stream.html#a1744b8f160ac0f8d377db9bfdab57053">pw_stream_get_node_id</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="keywordtype">int</span> <a class="code" href="classpw__stream.html#aa727d7a41acb9d0ec574f93f01328d30">pw_stream_disconnect</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<a class="code" href="classpw__stream.html#abcd423c15a39666ea50abef5ff7a75bd">pw_stream_finish_format</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, </div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordtype">int</span> res, </div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keyword">const</span> <span class="keyword">struct</span> spa_pod **params, </div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; uint32_t n_params );</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="keywordtype">int</span> <a class="code" href="stream_8h.html#ae10b900ec27572916b772ada125d0fed">pw_stream_set_control</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, uint32_t <span class="keywordtype">id</span>, <span class="keywordtype">float</span> value, ...);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="keyword">const</span> <span class="keyword">struct </span><a class="code" href="structpw__stream__control.html">pw_stream_control</a> * <a class="code" href="stream_8h.html#a52d3a718a1171132c69f2a4f2ca6efdc">pw_stream_get_control</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, uint32_t <span class="keywordtype">id</span>);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"><a class="line" href="structpw__time.html"> 329</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpw__time.html">pw_time</a> {</div><div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="structpw__time.html#ad817da21bea1591d70f837c251a73468"> 330</a></span>&#160; int64_t <a class="code" href="structpw__time.html#ad817da21bea1591d70f837c251a73468">now</a>; </div><div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="structpw__time.html#a41d793c390eefc6aee165e16e0d7c898"> 331</a></span>&#160; <span class="keyword">struct </span>spa_fraction <a class="code" href="structpw__time.html#a41d793c390eefc6aee165e16e0d7c898">rate</a>; </div><div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="structpw__time.html#a99e3d7963e24fbf410afa03c73465328"> 332</a></span>&#160; uint64_t <a class="code" href="structpw__time.html#a99e3d7963e24fbf410afa03c73465328">ticks</a>; </div><div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="structpw__time.html#a1ea3fa77ce4221df0d5ac3ad8fd1f6c7"> 334</a></span>&#160; int64_t <a class="code" href="structpw__time.html#a1ea3fa77ce4221df0d5ac3ad8fd1f6c7">delay</a>; </div><div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="structpw__time.html#a91dafbb38397328f8705e2bb20b7625a"> 337</a></span>&#160; uint64_t <a class="code" href="structpw__time.html#a91dafbb38397328f8705e2bb20b7625a">queued</a>; </div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;};</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="keywordtype">int</span> <a class="code" href="classpw__stream.html#a721dc4d5ec4c406ecb0469bfefea468f">pw_stream_get_time</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, <span class="keyword">struct</span> <a class="code" href="structpw__time.html">pw_time</a> *time);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="keyword">struct </span><a class="code" href="structpw__buffer.html">pw_buffer</a> *<a class="code" href="stream_8h.html#ab2ef0e28a1e91816f8015ef9814d18f7">pw_stream_dequeue_buffer</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="keywordtype">int</span> <a class="code" href="stream_8h.html#abe1c593f34080ea9c8c6231abe4e7386">pw_stream_queue_buffer</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, <span class="keyword">struct</span> <a class="code" href="structpw__buffer.html">pw_buffer</a> *<a class="code" href="structbuffer.html">buffer</a>);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="keywordtype">int</span> <a class="code" href="classpw__stream.html#aafa1055c167dd99ba94bb49ec30603ba">pw_stream_set_active</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, <span class="keywordtype">bool</span> active);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="keywordtype">int</span> <a class="code" href="stream_8h.html#a5ef987fd1903baa7eba9b10a8cbf5e97">pw_stream_flush</a>(<span class="keyword">struct</span> <a class="code" href="classpw__stream.html">pw_stream</a> *<a class="code" href="structstream.html">stream</a>, <span class="keywordtype">bool</span> drain);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;}</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* PIPEWIRE_STREAM_H */</span><span class="preprocessor"></span></div><div class="ttc" id="stream_8h_html_abe1c593f34080ea9c8c6231abe4e7386"><div class="ttname"><a href="stream_8h.html#abe1c593f34080ea9c8c6231abe4e7386">pw_stream_queue_buffer</a></div><div class="ttdeci">int pw_stream_queue_buffer(struct pw_stream *stream, struct pw_buffer *buffer)</div><div class="ttdoc">Submit a buffer for playback or recycle a buffer for capture.</div><div class="ttdef"><b>Definition:</b> stream.c:1604</div></div>
+<div class="ttc" id="structpw__time_html_a99e3d7963e24fbf410afa03c73465328"><div class="ttname"><a href="structpw__time.html#a99e3d7963e24fbf410afa03c73465328">pw_time::ticks</a></div><div class="ttdeci">uint64_t ticks</div><div class="ttdoc">the ticks at now.</div><div class="ttdef"><b>Definition:</b> stream.h:332</div></div>
+<div class="ttc" id="structpw__properties_html"><div class="ttname"><a href="structpw__properties.html">pw_properties</a></div><div class="ttdoc">A collection of key/value pairs.</div><div class="ttdef"><b>Definition:</b> properties.h:43</div></div>
+<div class="ttc" id="structprops_html"><div class="ttname"><a href="structprops.html">props</a></div><div class="ttdef"><b>Definition:</b> stream.c:95</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106a79f1bdb249e79c7e71cf46759936768f"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a79f1bdb249e79c7e71cf46759936768f">PW_STREAM_FLAG_EXCLUSIVE</a></div><div class="ttdoc">require exclusive access to the device</div><div class="ttdef"><b>Definition:</b> stream.h:241</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82a0537b5f9f722fb2faf7822cd09370825"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a0537b5f9f722fb2faf7822cd09370825">PW_STREAM_STATE_PAUSED</a></div><div class="ttdoc">paused, fully configured but not processing data yet</div><div class="ttdef"><b>Definition:</b> stream.h:166</div></div>
+<div class="ttc" id="structpw__stream__events_html_a8136ecfe4e1fe26467da10915f08bd2a"><div class="ttname"><a href="structpw__stream__events.html#a8136ecfe4e1fe26467da10915f08bd2a">pw_stream_events::format_changed</a></div><div class="ttdeci">void(* format_changed)(void *data, const struct spa_pod *format)</div><div class="ttdoc">when the format changed.</div><div class="ttdef"><b>Definition:</b> stream.h:207</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106ab648fa0c0c7adf6aa3139eddc3a9cd7c"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab648fa0c0c7adf6aa3139eddc3a9cd7c">PW_STREAM_FLAG_AUTOCONNECT</a></div><div class="ttdoc">try to automatically connect this stream</div><div class="ttdef"><b>Definition:</b> stream.h:231</div></div>
+<div class="ttc" id="classpw__stream_html_a8b023e0bc564e4e8f70cec17e7c608f4"><div class="ttname"><a href="classpw__stream.html#a8b023e0bc564e4e8f70cec17e7c608f4">pw_stream::pw_stream_state_as_string</a></div><div class="ttdeci">const char * pw_stream_state_as_string(enum pw_stream_state state)</div><div class="ttdoc">Convert a stream state to a readable string.</div><div class="ttdef"><b>Definition:</b> stream.c:1200</div></div>
+<div class="ttc" id="structpw__stream__control_html_aea19861b98b0e07f867496d3f4188674"><div class="ttname"><a href="structpw__stream__control.html#aea19861b98b0e07f867496d3f4188674">pw_stream_control::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> stream.h:182</div></div>
+<div class="ttc" id="structpw__time_html_ad817da21bea1591d70f837c251a73468"><div class="ttname"><a href="structpw__time.html#ad817da21bea1591d70f837c251a73468">pw_time::now</a></div><div class="ttdeci">int64_t now</div><div class="ttdoc">the monotonic time</div><div class="ttdef"><b>Definition:</b> stream.h:330</div></div>
+<div class="ttc" id="structpw__stream__control_html"><div class="ttname"><a href="structpw__stream__control.html">pw_stream_control</a></div><div class="ttdef"><b>Definition:</b> stream.h:181</div></div>
+<div class="ttc" id="structpw__loop_html"><div class="ttname"><a href="structpw__loop.html">pw_loop</a></div><div class="ttdoc">PipeWire loop object provides an implementation of the spa loop interfaces.</div><div class="ttdef"><b>Definition:</b> loop.h:42</div></div>
+<div class="ttc" id="structpw__time_html"><div class="ttname"><a href="structpw__time.html">pw_time</a></div><div class="ttdoc">A time structure.</div><div class="ttdef"><b>Definition:</b> stream.h:329</div></div>
+<div class="ttc" id="structpw__properties_html_a70aa5816bde60f5511f2308971794881"><div class="ttname"><a href="structpw__properties.html#a70aa5816bde60f5511f2308971794881">pw_properties::dict</a></div><div class="ttdeci">struct spa_dict dict</div><div class="ttdoc">dictionary of key/values</div><div class="ttdef"><b>Definition:</b> properties.h:44</div></div>
+<div class="ttc" id="structpw__stream__events_html_abd09d7c76b0e14a201a438f09e609b29"><div class="ttname"><a href="structpw__stream__events.html#abd09d7c76b0e14a201a438f09e609b29">pw_stream_events::add_buffer</a></div><div class="ttdeci">void(* add_buffer)(void *data, struct pw_buffer *buffer)</div><div class="ttdoc">when a new buffer was created for this stream</div><div class="ttdef"><b>Definition:</b> stream.h:210</div></div>
+<div class="ttc" id="structpw__stream__events_html"><div class="ttname"><a href="structpw__stream__events.html">pw_stream_events</a></div><div class="ttdoc">Events for a stream.</div><div class="ttdef"><b>Definition:</b> stream.h:192</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82">pw_stream_state</a></div><div class="ttdeci">pw_stream_state</div><div class="ttdoc">The state of a stream.</div><div class="ttdef"><b>Definition:</b> stream.h:160</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106a615348212b647ad5d30313536ed6e125"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a615348212b647ad5d30313536ed6e125">PW_STREAM_FLAG_MAP_BUFFERS</a></div><div class="ttdoc">mmap the buffers</div><div class="ttdef"><b>Definition:</b> stream.h:236</div></div>
+<div class="ttc" id="structpw__time_html_a41d793c390eefc6aee165e16e0d7c898"><div class="ttname"><a href="structpw__time.html#a41d793c390eefc6aee165e16e0d7c898">pw_time::rate</a></div><div class="ttdeci">struct spa_fraction rate</div><div class="ttdoc">the rate of ticks and delay</div><div class="ttdef"><b>Definition:</b> stream.h:331</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82acaf3c66b2d1446a3a5933498f52e5efc"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82acaf3c66b2d1446a3a5933498f52e5efc">PW_STREAM_STATE_READY</a></div><div class="ttdoc">stream is ready</div><div class="ttdef"><b>Definition:</b> stream.h:165</div></div>
+<div class="ttc" id="structpw__time_html_a91dafbb38397328f8705e2bb20b7625a"><div class="ttname"><a href="structpw__time.html#a91dafbb38397328f8705e2bb20b7625a">pw_time::queued</a></div><div class="ttdeci">uint64_t queued</div><div class="ttdoc">data queued in the stream, this is the sum of the size fields in the pw_buffer that are currently que...</div><div class="ttdef"><b>Definition:</b> stream.h:337</div></div>
+<div class="ttc" id="classpw__stream_html_a6f1606e27cc3bd9c522b92c9469a6f2f"><div class="ttname"><a href="classpw__stream.html#a6f1606e27cc3bd9c522b92c9469a6f2f">pw_stream::pw_stream_new</a></div><div class="ttdeci">struct pw_stream * pw_stream_new(struct pw_remote *remote, const char *name, struct pw_properties *props)</div><div class="ttdoc">Create a new unconneced pw_stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1086</div></div>
+<div class="ttc" id="classpw__stream_html_aa727d7a41acb9d0ec574f93f01328d30"><div class="ttname"><a href="classpw__stream.html#aa727d7a41acb9d0ec574f93f01328d30">pw_stream::pw_stream_disconnect</a></div><div class="ttdeci">int pw_stream_disconnect(struct pw_stream *stream)</div><div class="ttdoc">Disconnect stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1431</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82af3c3b39039810d40a7c9e1ae3c6c905d"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82af3c3b39039810d40a7c9e1ae3c6c905d">PW_STREAM_STATE_STREAMING</a></div><div class="ttdoc">streaming</div><div class="ttdef"><b>Definition:</b> stream.h:168</div></div>
+<div class="ttc" id="stream_8h_html_a52d3a718a1171132c69f2a4f2ca6efdc"><div class="ttname"><a href="stream_8h.html#a52d3a718a1171132c69f2a4f2ca6efdc">pw_stream_get_control</a></div><div class="ttdeci">const struct pw_stream_control * pw_stream_get_control(struct pw_stream *stream, uint32_t id)</div><div class="ttdoc">Get control information.</div><div class="ttdef"><b>Definition:</b> stream.c:1515</div></div>
+<div class="ttc" id="classpw__stream_html"><div class="ttname"><a href="classpw__stream.html">pw_stream</a></div><div class="ttdoc">PipeWire stream object class.</div></div>
+<div class="ttc" id="classpw__stream_html_a0e12176f13e654e64e7f5689e7a6dd54"><div class="ttname"><a href="classpw__stream.html#a0e12176f13e654e64e7f5689e7a6dd54">pw_stream::pw_stream_connect</a></div><div class="ttdeci">int pw_stream_connect(struct pw_stream *stream, enum pw_direction direction, uint32_t target_id, enum pw_stream_flags flags, const struct spa_pod **params, uint32_t n_params)</div><div class="ttdoc">Connect a stream for input or output on port_path.</div><div class="ttdef"><b>Definition:</b> stream.c:1351</div></div>
+<div class="ttc" id="classpw__stream_html_af48f79b09798488557cd6c2f896e0891"><div class="ttname"><a href="classpw__stream.html#af48f79b09798488557cd6c2f896e0891">pw_stream::pw_stream_destroy</a></div><div class="ttdeci">void pw_stream_destroy(struct pw_stream *stream)</div><div class="ttdoc">Destroy a stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1222</div></div>
+<div class="ttc" id="stream_8h_html_a087a686c66c04e54742cc94c7a5e4e68"><div class="ttname"><a href="stream_8h.html#a087a686c66c04e54742cc94c7a5e4e68">pw_stream_get_state</a></div><div class="ttdeci">enum pw_stream_state pw_stream_get_state(struct pw_stream *stream, const char **error)</div><div class="ttdef"><b>Definition:</b> stream.c:1266</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106a87c6bfacd40d4f797505fbc22bd2b9da"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a87c6bfacd40d4f797505fbc22bd2b9da">PW_STREAM_FLAG_NO_CONVERT</a></div><div class="ttdoc">don't convert format</div><div class="ttdef"><b>Definition:</b> stream.h:240</div></div>
+<div class="ttc" id="classpw__stream_html_a1744b8f160ac0f8d377db9bfdab57053"><div class="ttname"><a href="classpw__stream.html#a1744b8f160ac0f8d377db9bfdab57053">pw_stream::pw_stream_get_node_id</a></div><div class="ttdeci">uint32_t pw_stream_get_node_id(struct pw_stream *stream)</div><div class="ttdoc">Get the node ID of the stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1425</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106ab111b3fc3e1d3c1c439a65dc85a3ce20"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab111b3fc3e1d3c1c439a65dc85a3ce20">PW_STREAM_FLAG_DONT_RECONNECT</a></div><div class="ttdoc">don't try to reconnect this stream when the sink/source is removed</div><div class="ttdef"><b>Definition:</b> stream.h:243</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106a73692ffb4a18142df04772cf3783410c"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a73692ffb4a18142df04772cf3783410c">PW_STREAM_FLAG_DRIVER</a></div><div class="ttdoc">be a driver</div><div class="ttdef"><b>Definition:</b> stream.h:237</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82aae3c1d061da27957fd3a9389b29ff89e"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82aae3c1d061da27957fd3a9389b29ff89e">PW_STREAM_STATE_ERROR</a></div><div class="ttdoc">the strean is in error</div><div class="ttdef"><b>Definition:</b> stream.h:161</div></div>
+<div class="ttc" id="structpw__stream__control_html_a4541b454ba4caaf23f4e772f431294c1"><div class="ttname"><a href="structpw__stream__control.html#a4541b454ba4caaf23f4e772f431294c1">pw_stream_control::def</a></div><div class="ttdeci">float def</div><div class="ttdef"><b>Definition:</b> stream.h:185</div></div>
+<div class="ttc" id="classpw__remote_html"><div class="ttname"><a href="classpw__remote.html">pw_remote</a></div><div class="ttdoc">Represents a connection with a remote PipeWire instance.</div></div>
+<div class="ttc" id="stream_8h_html_a7a8eafa174549733293f11ec2c646827"><div class="ttname"><a href="stream_8h.html#a7a8eafa174549733293f11ec2c646827">pw_stream_new_simple</a></div><div class="ttdeci">struct pw_stream * pw_stream_new_simple(struct pw_loop *loop, const char *name, struct pw_properties *props, const struct pw_stream_events *events, void *data)</div><div class="ttdef"><b>Definition:</b> stream.c:1162</div></div>
+<div class="ttc" id="structpw__stream__events_html_abbe98bb0d78e6411d08244495f349b0b"><div class="ttname"><a href="structpw__stream__events.html#abbe98bb0d78e6411d08244495f349b0b">pw_stream_events::destroy</a></div><div class="ttdeci">void(* destroy)(void *data)</div><div class="ttdef"><b>Definition:</b> stream.h:196</div></div>
+<div class="ttc" id="classpw__stream_html_a721dc4d5ec4c406ecb0469bfefea468f"><div class="ttname"><a href="classpw__stream.html#a721dc4d5ec4c406ecb0469bfefea468f">pw_stream::pw_stream_get_time</a></div><div class="ttdeci">int pw_stream_get_time(struct pw_stream *stream, struct pw_time *time)</div><div class="ttdoc">Query the time on the stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1539</div></div>
+<div class="ttc" id="stream_8h_html_ab2ef0e28a1e91816f8015ef9814d18f7"><div class="ttname"><a href="stream_8h.html#ab2ef0e28a1e91816f8015ef9814d18f7">pw_stream_dequeue_buffer</a></div><div class="ttdeci">struct pw_buffer * pw_stream_dequeue_buffer(struct pw_stream *stream)</div><div class="ttdoc">Get a buffer that can be filled for playback streams or consumed for capture streams.</div><div class="ttdef"><b>Definition:</b> stream.c:1585</div></div>
+<div class="ttc" id="structpw__buffer_html_a925734b861209896789573f3b94a61c1"><div class="ttname"><a href="structpw__buffer.html#a925734b861209896789573f3b94a61c1">pw_buffer::size</a></div><div class="ttdeci">uint64_t size</div><div class="ttdoc">For input streams, this field is set by pw_stream with the duration of the buffer in ticks.</div><div class="ttdef"><b>Definition:</b> stream.h:174</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106a2912e7520b8eb0aa5e4a5ca275f10d3b"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106a2912e7520b8eb0aa5e4a5ca275f10d3b">PW_STREAM_FLAG_INACTIVE</a></div><div class="ttdoc">start the stream inactive, pw_stream_set_active() needs to be called explicitly</div><div class="ttdef"><b>Definition:</b> stream.h:233</div></div>
+<div class="ttc" id="stream_8h_html_a751f41a0a5ce1ece31ec126b3cab4fd4"><div class="ttname"><a href="stream_8h.html#a751f41a0a5ce1ece31ec126b3cab4fd4">pw_stream_get_name</a></div><div class="ttdeci">const char * pw_stream_get_name(struct pw_stream *stream)</div><div class="ttdef"><b>Definition:</b> stream.c:1274</div></div>
+<div class="ttc" id="stream_8h_html_afc74d20ae2305d82aba860fde41b9e31"><div class="ttname"><a href="stream_8h.html#afc74d20ae2305d82aba860fde41b9e31">pw_stream_get_properties</a></div><div class="ttdeci">const struct pw_properties * pw_stream_get_properties(struct pw_stream *stream)</div><div class="ttdef"><b>Definition:</b> stream.c:1280</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106">pw_stream_flags</a></div><div class="ttdeci">pw_stream_flags</div><div class="ttdoc">Extra flags that can be used in pw_stream_connect()</div><div class="ttdef"><b>Definition:</b> stream.h:229</div></div>
+<div class="ttc" id="stream_8h_html_a5ef987fd1903baa7eba9b10a8cbf5e97"><div class="ttname"><a href="stream_8h.html#a5ef987fd1903baa7eba9b10a8cbf5e97">pw_stream_flush</a></div><div class="ttdeci">int pw_stream_flush(struct pw_stream *stream, bool drain)</div><div class="ttdoc">Flush a stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1639</div></div>
+<div class="ttc" id="stream_8h_html_adfa74620109228a9cfce24b628aa130f"><div class="ttname"><a href="stream_8h.html#adfa74620109228a9cfce24b628aa130f">pw_stream_add_listener</a></div><div class="ttdeci">void pw_stream_add_listener(struct pw_stream *stream, struct spa_hook *listener, const struct pw_stream_events *events, void *data)</div><div class="ttdef"><b>Definition:</b> stream.c:1257</div></div>
+<div class="ttc" id="structstream_html"><div class="ttname"><a href="structstream.html">stream</a></div><div class="ttdef"><b>Definition:</b> stream.c:105</div></div>
+<div class="ttc" id="structpw__stream__events_html_a89192aed5fcd89314bf7cc7ef6b21085"><div class="ttname"><a href="structpw__stream__events.html#a89192aed5fcd89314bf7cc7ef6b21085">pw_stream_events::state_changed</a></div><div class="ttdeci">void(* state_changed)(void *data, enum pw_stream_state old, enum pw_stream_state state, const char *error)</div><div class="ttdoc">when the stream state changes</div><div class="ttdef"><b>Definition:</b> stream.h:198</div></div>
+<div class="ttc" id="structpw__stream__events_html_a0cdc45fef5f2458a0fd11a6e9ef1f6fb"><div class="ttname"><a href="structpw__stream__events.html#a0cdc45fef5f2458a0fd11a6e9ef1f6fb">pw_stream_events::remove_buffer</a></div><div class="ttdeci">void(* remove_buffer)(void *data, struct pw_buffer *buffer)</div><div class="ttdoc">when a buffer was destroyed for this stream</div><div class="ttdef"><b>Definition:</b> stream.h:212</div></div>
+<div class="ttc" id="stream_8h_html_a065b067d55def0d2c2cedf814a5c55d0"><div class="ttname"><a href="stream_8h.html#a065b067d55def0d2c2cedf814a5c55d0">pw_stream_update_properties</a></div><div class="ttdeci">int pw_stream_update_properties(struct pw_stream *stream, const struct spa_dict *dict)</div><div class="ttdef"><b>Definition:</b> stream.c:1286</div></div>
+<div class="ttc" id="structpw__stream__control_html_a40b47654929367a6a4f1b83b0b68bfb1"><div class="ttname"><a href="structpw__stream__control.html#a40b47654929367a6a4f1b83b0b68bfb1">pw_stream_control::max</a></div><div class="ttdeci">float max</div><div class="ttdef"><b>Definition:</b> stream.h:187</div></div>
+<div class="ttc" id="structpw__stream__events_html_aab4b9831ef563920b401b1f9daf93042"><div class="ttname"><a href="structpw__stream__events.html#aab4b9831ef563920b401b1f9daf93042">pw_stream_events::drained</a></div><div class="ttdeci">void(* drained)(void *data)</div><div class="ttdoc">The stream is drained.</div><div class="ttdef"><b>Definition:</b> stream.h:221</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106ad569b3a7085e21df1236651fd3388a22"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ad569b3a7085e21df1236651fd3388a22">PW_STREAM_FLAG_RT_PROCESS</a></div><div class="ttdoc">call process from the realtime thread</div><div class="ttdef"><b>Definition:</b> stream.h:238</div></div>
+<div class="ttc" id="structpw__time_html_a1ea3fa77ce4221df0d5ac3ad8fd1f6c7"><div class="ttname"><a href="structpw__time.html#a1ea3fa77ce4221df0d5ac3ad8fd1f6c7">pw_time::delay</a></div><div class="ttdeci">int64_t delay</div><div class="ttdoc">delay to device, add to ticks to get the time of the device.</div><div class="ttdef"><b>Definition:</b> stream.h:334</div></div>
+<div class="ttc" id="stream_8h_html_ae10b900ec27572916b772ada125d0fed"><div class="ttname"><a href="stream_8h.html#ae10b900ec27572916b772ada125d0fed">pw_stream_set_control</a></div><div class="ttdeci">int pw_stream_set_control(struct pw_stream *stream, uint32_t id, float value,...)</div><div class="ttdoc">Set control values.</div><div class="ttdef"><b>Definition:</b> stream.c:1473</div></div>
+<div class="ttc" id="structpw__buffer_html_ad0716b5bc3f7e1cb3009c524c0192090"><div class="ttname"><a href="structpw__buffer.html#ad0716b5bc3f7e1cb3009c524c0192090">pw_buffer::buffer</a></div><div class="ttdeci">struct spa_buffer * buffer</div><div class="ttdoc">the spa buffer</div><div class="ttdef"><b>Definition:</b> stream.h:172</div></div>
+<div class="ttc" id="classpw__stream_html_abcd423c15a39666ea50abef5ff7a75bd"><div class="ttname"><a href="classpw__stream.html#abcd423c15a39666ea50abef5ff7a75bd">pw_stream::pw_stream_finish_format</a></div><div class="ttdeci">void pw_stream_finish_format(struct pw_stream *stream, int res, const struct spa_pod **params, uint32_t n_params)</div><div class="ttdoc">Complete the negotiation process with result code res.</div><div class="ttdef"><b>Definition:</b> stream.c:1449</div></div>
+<div class="ttc" id="classpw__stream_html_aafa1055c167dd99ba94bb49ec30603ba"><div class="ttname"><a href="classpw__stream.html#aafa1055c167dd99ba94bb49ec30603ba">pw_stream::pw_stream_set_active</a></div><div class="ttdeci">int pw_stream_set_active(struct pw_stream *stream, bool active)</div><div class="ttdoc">Activate or deactivate the stream.</div><div class="ttdef"><b>Definition:</b> stream.c:1529</div></div>
+<div class="ttc" id="structbuffer_html"><div class="ttname"><a href="structbuffer.html">buffer</a></div><div class="ttdef"><b>Definition:</b> stream.c:54</div></div>
+<div class="ttc" id="remote_8h_html"><div class="ttname"><a href="remote_8h.html">remote.h</a></div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82a775f5777259aa54f7ad6d4c7cfa1779f"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a775f5777259aa54f7ad6d4c7cfa1779f">PW_STREAM_STATE_CONNECTING</a></div><div class="ttdoc">connection is in progress</div><div class="ttdef"><b>Definition:</b> stream.h:163</div></div>
+<div class="ttc" id="structpw__buffer_html"><div class="ttname"><a href="structpw__buffer.html">pw_buffer</a></div><div class="ttdef"><b>Definition:</b> stream.h:171</div></div>
+<div class="ttc" id="stream_8h_html_a8ed38eb5f4180eec0fcb96b5c249b30a"><div class="ttname"><a href="stream_8h.html#a8ed38eb5f4180eec0fcb96b5c249b30a">pw_stream_get_remote</a></div><div class="ttdeci">struct pw_remote * pw_stream_get_remote(struct pw_stream *stream)</div><div class="ttdef"><b>Definition:</b> stream.c:1303</div></div>
+<div class="ttc" id="structpw__stream__events_html_a512bd219ce44ba1a688d600773efe84b"><div class="ttname"><a href="structpw__stream__events.html#a512bd219ce44ba1a688d600773efe84b">pw_stream_events::process</a></div><div class="ttdeci">void(* process)(void *data)</div><div class="ttdoc">when a buffer can be queued (for playback streams) or dequeued (for capture streams).</div><div class="ttdef"><b>Definition:</b> stream.h:218</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106ab95a612ea82e3d928b5d2971bcd96465"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106ab95a612ea82e3d928b5d2971bcd96465">PW_STREAM_FLAG_ALLOC_BUFFERS</a></div><div class="ttdoc">the application will allocate buffer memory.</div><div class="ttdef"><b>Definition:</b> stream.h:245</div></div>
+<div class="ttc" id="structpw__stream__control_html_a4167f3df47a2d2deff793d3f1f6d31d2"><div class="ttname"><a href="structpw__stream__control.html#a4167f3df47a2d2deff793d3f1f6d31d2">pw_stream_control::flags</a></div><div class="ttdeci">uint32_t flags</div><div class="ttdef"><b>Definition:</b> stream.h:183</div></div>
+<div class="ttc" id="structpw__properties_html_a8003e978689f764bb7bd2a3ab2d46a87"><div class="ttname"><a href="structpw__properties.html#a8003e978689f764bb7bd2a3ab2d46a87">pw_properties::flags</a></div><div class="ttdeci">uint32_t flags</div><div class="ttdoc">extra flags</div><div class="ttdef"><b>Definition:</b> properties.h:45</div></div>
+<div class="ttc" id="structpw__stream__events_html_a74aaca4c31e44dad69aba50607055419"><div class="ttname"><a href="structpw__stream__events.html#a74aaca4c31e44dad69aba50607055419">pw_stream_events::version</a></div><div class="ttdeci">uint32_t version</div><div class="ttdef"><b>Definition:</b> stream.h:194</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82aae02f4af09cb65c931e95e1aa3bdd5f3"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82aae02f4af09cb65c931e95e1aa3bdd5f3">PW_STREAM_STATE_UNCONNECTED</a></div><div class="ttdoc">unconnected</div><div class="ttdef"><b>Definition:</b> stream.h:162</div></div>
+<div class="ttc" id="structpw__stream__events_html_a3efe9a6dc601da668b39650d4c446031"><div class="ttname"><a href="structpw__stream__events.html#a3efe9a6dc601da668b39650d4c446031">pw_stream_events::control_changed</a></div><div class="ttdeci">void(* control_changed)(void *data, uint32_t id, float value)</div><div class="ttdoc">Notify information about a control.</div><div class="ttdef"><b>Definition:</b> stream.h:202</div></div>
+<div class="ttc" id="structpw__stream__control_html_a61f6208ade53511ac42e01185f270f62"><div class="ttname"><a href="structpw__stream__control.html#a61f6208ade53511ac42e01185f270f62">pw_stream_control::min</a></div><div class="ttdeci">float min</div><div class="ttdef"><b>Definition:</b> stream.h:186</div></div>
+<div class="ttc" id="stream_8h_html_a9ceaca6fc9acd9a1af080258d763fb82a6d38d0ac9310b1822fcc98add8e4a8d2"><div class="ttname"><a href="stream_8h.html#a9ceaca6fc9acd9a1af080258d763fb82a6d38d0ac9310b1822fcc98add8e4a8d2">PW_STREAM_STATE_CONFIGURE</a></div><div class="ttdoc">stream is being configured</div><div class="ttdef"><b>Definition:</b> stream.h:164</div></div>
+<div class="ttc" id="structpw__buffer_html_ad85549808ad885c57f85e1aee60b8c96"><div class="ttname"><a href="structpw__buffer.html#ad85549808ad885c57f85e1aee60b8c96">pw_buffer::user_data</a></div><div class="ttdeci">void * user_data</div><div class="ttdoc">user data attached to the buffer</div><div class="ttdef"><b>Definition:</b> stream.h:173</div></div>
+<div class="ttc" id="stream_8h_html_a058907c2dffbb8fb5ede8a53d7604106aefcc7a31a05fa55c8cff7e686dd484ca"><div class="ttname"><a href="stream_8h.html#a058907c2dffbb8fb5ede8a53d7604106aefcc7a31a05fa55c8cff7e686dd484ca">PW_STREAM_FLAG_NONE</a></div><div class="ttdoc">no flags</div><div class="ttdef"><b>Definition:</b> stream.h:230</div></div>
+<div class="ttc" id="introspect_8h_html_a6e9e847059d68cbdb608abc8eb6b631d"><div class="ttname"><a href="introspect_8h.html#a6e9e847059d68cbdb608abc8eb6b631d">pw_direction</a></div><div class="ttdeci">pw_direction</div><div class="ttdoc">The direction of a port.</div><div class="ttdef"><b>Definition:</b> introspect.h:52</div></div>
+<div class="ttc" id="structdata_html"><div class="ttname"><a href="structdata.html">data</a></div><div class="ttdef"><b>Definition:</b> stream.c:69</div></div>
+<div class="ttc" id="structpw__stream__control_html_ad4a5eb55a812010d9aa2e3ec9409fc9a"><div class="ttname"><a href="structpw__stream__control.html#ad4a5eb55a812010d9aa2e3ec9409fc9a">pw_stream_control::value</a></div><div class="ttdeci">float value</div><div class="ttdef"><b>Definition:</b> stream.h:184</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_7129a66c92fe7beef816c2ac906ef0b3.html">pipewire</a></li><li class="navelem"><a class="el" href="stream_8h.html">stream.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
+ </ul>
+</div>
+</body>
+</html>