1<!DOCTYPE HTML> 2<!-- NewPage --> 3<html lang="en"> 4<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet --> 5<title>DefaultAudioSink.Builder (ExoPlayer library)</title> 6<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 7<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> 8<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style"> 9<script type="text/javascript" src="../../../../../script.js"></script> 10<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script> 11<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> 12<!--[if IE]> 13<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> 14<![endif]--> 15<script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script> 16<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script> 17</head> 18<body> 19<script type="text/javascript"><!-- 20 try { 21 if (location.href.indexOf('is-external=true') == -1) { 22 parent.document.title="DefaultAudioSink.Builder (ExoPlayer library)"; 23 } 24 } 25 catch(err) { 26 } 27//--> 28var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10}; 29var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; 30var altColor = "altColor"; 31var rowColor = "rowColor"; 32var tableTab = "tableTab"; 33var activeTableTab = "activeTableTab"; 34var pathtoroot = "../../../../../"; 35var useModuleDirectories = false; 36loadScripts(document, 'script');</script> 37<noscript> 38<div>JavaScript is disabled on your browser.</div> 39</noscript> 40<header role="banner"> 41<nav role="navigation"> 42<div class="fixedNav"> 43<!-- ========= START OF TOP NAVBAR ======= --> 44<div class="topNav"><a id="navbar.top"> 45<!-- --> 46</a> 47<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> 48<a id="navbar.top.firstrow"> 49<!-- --> 50</a> 51<ul class="navList" title="Navigation"> 52<li><a href="../../../../../index.html">Overview</a></li> 53<li><a href="package-summary.html">Package</a></li> 54<li class="navBarCell1Rev">Class</li> 55<li><a href="package-tree.html">Tree</a></li> 56<li><a href="../../../../../deprecated-list.html">Deprecated</a></li> 57<li><a href="../../../../../index-all.html">Index</a></li> 58<li><a href="../../../../../help-doc.html">Help</a></li> 59</ul> 60</div> 61<div class="subNav"> 62<ul class="navList" id="allclasses_navbar_top"> 63<li><a href="../../../../../allclasses.html">All Classes</a></li> 64</ul> 65<ul class="navListSearch"> 66<li><label for="search">SEARCH:</label> 67<input type="text" id="search" value="search" disabled="disabled"> 68<input type="reset" id="reset" value="reset" disabled="disabled"> 69</li> 70</ul> 71<div> 72<script type="text/javascript"><!-- 73 allClassesLink = document.getElementById("allclasses_navbar_top"); 74 if(window==top) { 75 allClassesLink.style.display = "block"; 76 } 77 else { 78 allClassesLink.style.display = "none"; 79 } 80 //--> 81</script> 82<noscript> 83<div>JavaScript is disabled on your browser.</div> 84</noscript> 85</div> 86<div> 87<ul class="subNavList"> 88<li>Summary: </li> 89<li>Nested | </li> 90<li>Field | </li> 91<li><a href="#constructor.summary">Constr</a> | </li> 92<li><a href="#method.summary">Method</a></li> 93</ul> 94<ul class="subNavList"> 95<li>Detail: </li> 96<li>Field | </li> 97<li><a href="#constructor.detail">Constr</a> | </li> 98<li><a href="#method.detail">Method</a></li> 99</ul> 100</div> 101<a id="skip.navbar.top"> 102<!-- --> 103</a></div> 104<!-- ========= END OF TOP NAVBAR ========= --> 105</div> 106<div class="navPadding"> </div> 107<script type="text/javascript"><!-- 108$('.navPadding').css('padding-top', $('.fixedNav').css("height")); 109//--> 110</script> 111</nav> 112</header> 113<!-- ======== START OF CLASS DATA ======== --> 114<main role="main"> 115<div class="header"> 116<div class="subTitle"><span class="packageLabelInType">Package</span> <a href="package-summary.html">com.google.android.exoplayer2.audio</a></div> 117<h2 title="Class DefaultAudioSink.Builder" class="title">Class DefaultAudioSink.Builder</h2> 118</div> 119<div class="contentContainer"> 120<ul class="inheritance"> 121<li><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">java.lang.Object</a></li> 122<li> 123<ul class="inheritance"> 124<li>com.google.android.exoplayer2.audio.DefaultAudioSink.Builder</li> 125</ul> 126</li> 127</ul> 128<div class="description"> 129<ul class="blockList"> 130<li class="blockList"> 131<dl> 132<dt>Enclosing class:</dt> 133<dd><a href="DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink</a></dd> 134</dl> 135<hr> 136<pre>public static final class <span class="typeNameLabel">DefaultAudioSink.Builder</span> 137extends <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></pre> 138<div class="block">A builder to create <a href="DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio"><code>DefaultAudioSink</code></a> instances.</div> 139</li> 140</ul> 141</div> 142<div class="summary"> 143<ul class="blockList"> 144<li class="blockList"> 145<!-- ======== CONSTRUCTOR SUMMARY ======== --> 146<section role="region"> 147<ul class="blockList"> 148<li class="blockList"><a id="constructor.summary"> 149<!-- --> 150</a> 151<h3>Constructor Summary</h3> 152<table class="memberSummary"> 153<caption><span>Constructors</span><span class="tabEnd"> </span></caption> 154<tr> 155<th class="colFirst" scope="col">Constructor</th> 156<th class="colLast" scope="col">Description</th> 157</tr> 158<tr class="altColor"> 159<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">Builder</a></span>()</code></th> 160<td class="colLast"> 161<div class="block">Creates a new builder.</div> 162</td> 163</tr> 164</table> 165</li> 166</ul> 167</section> 168<!-- ========== METHOD SUMMARY =========== --> 169<section role="region"> 170<ul class="blockList"> 171<li class="blockList"><a id="method.summary"> 172<!-- --> 173</a> 174<h3>Method Summary</h3> 175<table class="memberSummary"> 176<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> 177<tr> 178<th class="colFirst" scope="col">Modifier and Type</th> 179<th class="colSecond" scope="col">Method</th> 180<th class="colLast" scope="col">Description</th> 181</tr> 182<tr id="i0" class="altColor"> 183<td class="colFirst"><code><a href="DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink</a></code></td> 184<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#build()">build</a></span>()</code></th> 185<td class="colLast"> 186<div class="block">Builds the <a href="DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio"><code>DefaultAudioSink</code></a>.</div> 187</td> 188</tr> 189<tr id="i1" class="rowColor"> 190<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 191<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAudioCapabilities(com.google.android.exoplayer2.audio.AudioCapabilities)">setAudioCapabilities</a></span>​(<a href="AudioCapabilities.html" title="class in com.google.android.exoplayer2.audio">AudioCapabilities</a> audioCapabilities)</code></th> 192<td class="colLast"> 193<div class="block">Sets audio capabilities for playback on this device.</div> 194</td> 195</tr> 196<tr id="i2" class="altColor"> 197<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 198<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAudioProcessorChain(com.google.android.exoplayer2.audio.DefaultAudioSink.AudioProcessorChain)">setAudioProcessorChain</a></span>​(<a href="DefaultAudioSink.AudioProcessorChain.html" title="interface in com.google.android.exoplayer2.audio">DefaultAudioSink.AudioProcessorChain</a> audioProcessorChain)</code></th> 199<td class="colLast"> 200<div class="block">Sets the <a href="DefaultAudioSink.AudioProcessorChain.html" title="interface in com.google.android.exoplayer2.audio"><code>DefaultAudioSink.AudioProcessorChain</code></a> to process audio before playback.</div> 201</td> 202</tr> 203<tr id="i3" class="rowColor"> 204<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 205<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAudioProcessors(com.google.android.exoplayer2.audio.AudioProcessor%5B%5D)">setAudioProcessors</a></span>​(<a href="AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio">AudioProcessor</a>[] audioProcessors)</code></th> 206<td class="colLast"> 207<div class="block">Sets an array of <a href="AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioProcessors</code></a>s that will process PCM audio before 208 output.</div> 209</td> 210</tr> 211<tr id="i4" class="altColor"> 212<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 213<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAudioTrackBufferSizeProvider(com.google.android.exoplayer2.audio.DefaultAudioSink.AudioTrackBufferSizeProvider)">setAudioTrackBufferSizeProvider</a></span>​(com.google.android.exoplayer2.audio.DefaultAudioSink.AudioTrackBufferSizeProvider audioTrackBufferSizeProvider)</code></th> 214<td class="colLast"> 215<div class="block">Sets an <code>DefaultAudioSink.AudioTrackBufferSizeProvider</code> to compute the buffer size when <a href="DefaultAudioSink.html#configure(com.google.android.exoplayer2.Format,int,int%5B%5D)"><code>DefaultAudioSink.configure(com.google.android.exoplayer2.Format, int, int[])</code></a> is called with <code>specifiedBufferSize == 0</code>.</div> 216</td> 217</tr> 218<tr id="i5" class="rowColor"> 219<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 220<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEnableAudioTrackPlaybackParams(boolean)">setEnableAudioTrackPlaybackParams</a></span>​(boolean enableAudioTrackPlaybackParams)</code></th> 221<td class="colLast"> 222<div class="block">Sets whether to control the playback speed using the platform implementation (see <a href="https://developer.android.com/reference/android/media/AudioTrack.html#setPlaybackParams(android.media.PlaybackParams)" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack.setPlaybackParams(PlaybackParams)</code></a>), if supported.</div> 223</td> 224</tr> 225<tr id="i6" class="altColor"> 226<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 227<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEnableFloatOutput(boolean)">setEnableFloatOutput</a></span>​(boolean enableFloatOutput)</code></th> 228<td class="colLast"> 229<div class="block">Sets whether to enable 32-bit float output or integer output.</div> 230</td> 231</tr> 232<tr id="i7" class="rowColor"> 233<td class="colFirst"><code><a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></code></td> 234<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setOffloadMode(@com.google.android.exoplayer2.audio.DefaultAudioSink.OffloadModeint)">setOffloadMode</a></span>​(@com.google.android.exoplayer2.audio.DefaultAudioSink.OffloadMode int offloadMode)</code></th> 235<td class="colLast"> 236<div class="block">Sets the offload mode.</div> 237</td> 238</tr> 239</table> 240<ul class="blockList"> 241<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object"> 242<!-- --> 243</a> 244<h3>Methods inherited from class java.lang.<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></h3> 245<code><a href="https://developer.android.com/reference/java/lang/Object.html#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink" target="_top">wait</a></code></li> 246</ul> 247</li> 248</ul> 249</section> 250</li> 251</ul> 252</div> 253<div class="details"> 254<ul class="blockList"> 255<li class="blockList"> 256<!-- ========= CONSTRUCTOR DETAIL ======== --> 257<section role="region"> 258<ul class="blockList"> 259<li class="blockList"><a id="constructor.detail"> 260<!-- --> 261</a> 262<h3>Constructor Detail</h3> 263<a id="<init>()"> 264<!-- --> 265</a> 266<ul class="blockListLast"> 267<li class="blockList"> 268<h4>Builder</h4> 269<pre>public Builder()</pre> 270<div class="block">Creates a new builder.</div> 271</li> 272</ul> 273</li> 274</ul> 275</section> 276<!-- ============ METHOD DETAIL ========== --> 277<section role="region"> 278<ul class="blockList"> 279<li class="blockList"><a id="method.detail"> 280<!-- --> 281</a> 282<h3>Method Detail</h3> 283<a id="setAudioCapabilities(com.google.android.exoplayer2.audio.AudioCapabilities)"> 284<!-- --> 285</a> 286<ul class="blockList"> 287<li class="blockList"> 288<h4>setAudioCapabilities</h4> 289<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setAudioCapabilities​(<a href="AudioCapabilities.html" title="class in com.google.android.exoplayer2.audio">AudioCapabilities</a> audioCapabilities)</pre> 290<div class="block">Sets audio capabilities for playback on this device. May be <code>null</code> if the default 291 capabilities (no encoded audio passthrough support) should be assumed. 292 293 <p>Default is <a href="AudioCapabilities.html#DEFAULT_AUDIO_CAPABILITIES"><code>AudioCapabilities.DEFAULT_AUDIO_CAPABILITIES</code></a>.</div> 294</li> 295</ul> 296<a id="setAudioProcessors(com.google.android.exoplayer2.audio.AudioProcessor[])"> 297<!-- --> 298</a> 299<ul class="blockList"> 300<li class="blockList"> 301<h4>setAudioProcessors</h4> 302<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setAudioProcessors​(<a href="AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio">AudioProcessor</a>[] audioProcessors)</pre> 303<div class="block">Sets an array of <a href="AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioProcessors</code></a>s that will process PCM audio before 304 output. May be empty. Equivalent of <code>setAudioProcessorChain(new 305 DefaultAudioProcessorChain(audioProcessors)</code>. 306 307 <p>The default value is an empty array.</div> 308</li> 309</ul> 310<a id="setAudioProcessorChain(com.google.android.exoplayer2.audio.DefaultAudioSink.AudioProcessorChain)"> 311<!-- --> 312</a> 313<ul class="blockList"> 314<li class="blockList"> 315<h4>setAudioProcessorChain</h4> 316<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setAudioProcessorChain​(<a href="DefaultAudioSink.AudioProcessorChain.html" title="interface in com.google.android.exoplayer2.audio">DefaultAudioSink.AudioProcessorChain</a> audioProcessorChain)</pre> 317<div class="block">Sets the <a href="DefaultAudioSink.AudioProcessorChain.html" title="interface in com.google.android.exoplayer2.audio"><code>DefaultAudioSink.AudioProcessorChain</code></a> to process audio before playback. The instance passed in 318 must not be reused in other sinks. Processing chains are only supported for PCM playback (not 319 passthrough or offload). 320 321 <p>By default, no processing will be applied.</div> 322</li> 323</ul> 324<a id="setEnableFloatOutput(boolean)"> 325<!-- --> 326</a> 327<ul class="blockList"> 328<li class="blockList"> 329<h4>setEnableFloatOutput</h4> 330<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setEnableFloatOutput​(boolean enableFloatOutput)</pre> 331<div class="block">Sets whether to enable 32-bit float output or integer output. Where possible, 32-bit float 332 output will be used if the input is 32-bit float, and also if the input is high resolution 333 (24-bit or 32-bit) integer PCM. Float output is supported from API level 21. Audio processing 334 (for example, speed adjustment) will not be available when float output is in use. 335 336 <p>The default value is <code>false</code>.</div> 337</li> 338</ul> 339<a id="setEnableAudioTrackPlaybackParams(boolean)"> 340<!-- --> 341</a> 342<ul class="blockList"> 343<li class="blockList"> 344<h4>setEnableAudioTrackPlaybackParams</h4> 345<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setEnableAudioTrackPlaybackParams​(boolean enableAudioTrackPlaybackParams)</pre> 346<div class="block">Sets whether to control the playback speed using the platform implementation (see <a href="https://developer.android.com/reference/android/media/AudioTrack.html#setPlaybackParams(android.media.PlaybackParams)" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack.setPlaybackParams(PlaybackParams)</code></a>), if supported. If set to <code>false</code>, speed 347 up/down of the audio will be done by ExoPlayer (see <a href="SonicAudioProcessor.html" title="class in com.google.android.exoplayer2.audio"><code>SonicAudioProcessor</code></a>). Platform 348 speed adjustment is lower latency, but less reliable. 349 350 <p>The default value is <code>false</code>.</div> 351</li> 352</ul> 353<a id="setOffloadMode(@com.google.android.exoplayer2.audio.DefaultAudioSink.OffloadModeint)"> 354<!-- --> 355</a> 356<ul class="blockList"> 357<li class="blockList"> 358<h4>setOffloadMode</h4> 359<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setOffloadMode​(@com.google.android.exoplayer2.audio.DefaultAudioSink.OffloadMode int offloadMode)</pre> 360<div class="block">Sets the offload mode. If an audio format can be both played with offload and encoded audio 361 passthrough, it will be played in offload. Audio offload is supported from API level 29. Most 362 Android devices can only support one offload <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack</code></a> at a time and can invalidate 363 it at any time. Thus an app can never be guaranteed that it will be able to play in offload. 364 Audio processing (for example, speed adjustment) will not be available when offload is in 365 use. 366 367 <p>The default value is <a href="DefaultAudioSink.html#OFFLOAD_MODE_DISABLED"><code>DefaultAudioSink.OFFLOAD_MODE_DISABLED</code></a>.</div> 368</li> 369</ul> 370<a id="setAudioTrackBufferSizeProvider(com.google.android.exoplayer2.audio.DefaultAudioSink.AudioTrackBufferSizeProvider)"> 371<!-- --> 372</a> 373<ul class="blockList"> 374<li class="blockList"> 375<h4>setAudioTrackBufferSizeProvider</h4> 376<pre class="methodSignature">public <a href="DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a> setAudioTrackBufferSizeProvider​(com.google.android.exoplayer2.audio.DefaultAudioSink.AudioTrackBufferSizeProvider audioTrackBufferSizeProvider)</pre> 377<div class="block">Sets an <code>DefaultAudioSink.AudioTrackBufferSizeProvider</code> to compute the buffer size when <a href="DefaultAudioSink.html#configure(com.google.android.exoplayer2.Format,int,int%5B%5D)"><code>DefaultAudioSink.configure(com.google.android.exoplayer2.Format, int, int[])</code></a> is called with <code>specifiedBufferSize == 0</code>. 378 379 <p>The default value is <code>DefaultAudioSink.AudioTrackBufferSizeProvider.DEFAULT</code>.</div> 380</li> 381</ul> 382<a id="build()"> 383<!-- --> 384</a> 385<ul class="blockListLast"> 386<li class="blockList"> 387<h4>build</h4> 388<pre class="methodSignature">public <a href="DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink</a> build()</pre> 389<div class="block">Builds the <a href="DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio"><code>DefaultAudioSink</code></a>. Must only be called once per Builder instance.</div> 390</li> 391</ul> 392</li> 393</ul> 394</section> 395</li> 396</ul> 397</div> 398</div> 399</main> 400<!-- ========= END OF CLASS DATA ========= --> 401<footer role="contentinfo"> 402<nav role="navigation"> 403<!-- ======= START OF BOTTOM NAVBAR ====== --> 404<div class="bottomNav"><a id="navbar.bottom"> 405<!-- --> 406</a> 407<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> 408<a id="navbar.bottom.firstrow"> 409<!-- --> 410</a> 411<ul class="navList" title="Navigation"> 412<li><a href="../../../../../index.html">Overview</a></li> 413<li><a href="package-summary.html">Package</a></li> 414<li class="navBarCell1Rev">Class</li> 415<li><a href="package-tree.html">Tree</a></li> 416<li><a href="../../../../../deprecated-list.html">Deprecated</a></li> 417<li><a href="../../../../../index-all.html">Index</a></li> 418<li><a href="../../../../../help-doc.html">Help</a></li> 419</ul> 420</div> 421<div class="subNav"> 422<ul class="navList" id="allclasses_navbar_bottom"> 423<li><a href="../../../../../allclasses.html">All Classes</a></li> 424</ul> 425<div> 426<script type="text/javascript"><!-- 427 allClassesLink = document.getElementById("allclasses_navbar_bottom"); 428 if(window==top) { 429 allClassesLink.style.display = "block"; 430 } 431 else { 432 allClassesLink.style.display = "none"; 433 } 434 //--> 435</script> 436<noscript> 437<div>JavaScript is disabled on your browser.</div> 438</noscript> 439</div> 440<div> 441<ul class="subNavList"> 442<li>Summary: </li> 443<li>Nested | </li> 444<li>Field | </li> 445<li><a href="#constructor.summary">Constr</a> | </li> 446<li><a href="#method.summary">Method</a></li> 447</ul> 448<ul class="subNavList"> 449<li>Detail: </li> 450<li>Field | </li> 451<li><a href="#constructor.detail">Constr</a> | </li> 452<li><a href="#method.detail">Method</a></li> 453</ul> 454</div> 455<a id="skip.navbar.bottom"> 456<!-- --> 457</a></div> 458<!-- ======== END OF BOTTOM NAVBAR ======= --> 459</nav> 460</footer> 461</body> 462</html> 463