mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-07-06 00:32:44 +08:00
420 lines
23 KiB
HTML
420 lines
23 KiB
HTML
<div class="header">
|
||
<div class="subTitle">
|
||
javax.sound.sampled
|
||
</div>
|
||
<h2 class="title" title="Interface Clip">Interface Clip</h2>
|
||
</div><div class="contentContainer">
|
||
<div class="description">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<dl>
|
||
<dt>
|
||
All Superinterfaces:
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../../java/lang/AutoCloseable.html" title="java.lang中的接口">AutoCloseable</a> , <a href="../../../javax/sound/sampled/DataLine.html" title="javax.sound.sampled中的接口">DataLine</a> , <a href="../../../javax/sound/sampled/Line.html" title="javax.sound.sampled中的接口">Line</a></span>
|
||
</dd>
|
||
</dl>
|
||
<hr/> <br/> <pre>public interface <span class="typeNameLabel">Clip</span>
|
||
extends <a href="../../../javax/sound/sampled/DataLine.html" title="interface in javax.sound.sampled">DataLine</a></pre>
|
||
<div class="block">
|
||
<span><code>Clip</code>接口表示一种特殊类型的数据线,其音频数据可以在播放之前加载,而不是实时流式传输。</span>
|
||
<p> <span>因为数据是预加载的,并且具有已知的长度,所以您可以设置一个剪辑,以便在其音频数据中的任何位置开始播放。</span> <span>您也可以创建一个循环,这样当剪辑被播放时,它将重复循环。</span> <span>循环用起始和结束采样帧指定,循环应该播放的次数。</span> </p>
|
||
<p> <span>剪辑可以从支持这种类型的行的<code><a href="../../../javax/sound/sampled/Mixer.html" title="interface in javax.sound.sampled"><code>Mixer</code></a></code>获得。</span> <span>数据在打开时被加载到剪辑中。</span> </p>
|
||
<p> <span>音频剪辑的播放可以使用<code>start</code>和<code>stop</code>方法启动和停止。</span> <span>这些方法不会重置媒体位置;</span> <span><code>start</code>使播放从最后停止播放的位置继续播放。</span> <span>要重新从剪辑的音频数据的开始播放时,只需按照的调用<code><a href="../../../javax/sound/sampled/DataLine.html#stop--"><code>stop</code></a></code>与setFramePosition(0),其中倒带媒体剪辑的开始。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="simpleTagLabel">从以下版本开始:</span>
|
||
</dt>
|
||
<dd>
|
||
1.3
|
||
</dd>
|
||
</dl> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="summary">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- ======== NESTED CLASS SUMMARY ======== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="nested.class.summary">
|
||
<!-- --> </a> <h3>Nested Class Summary</h3>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="nested.classes.inherited.from.class.javax.sound.sampled.DataLine">
|
||
<!-- --> </a> <h3>Nested classes/interfaces inherited from interface javax.sound.sampled.<a href="../../../javax/sound/sampled/DataLine.html" title="interface in javax.sound.sampled">DataLine</a></h3> <code><a href="../../../javax/sound/sampled/DataLine.Info.html" title="class in javax.sound.sampled">DataLine.Info</a></code></li>
|
||
</ul> </li>
|
||
</ul>
|
||
<!-- =========== FIELD SUMMARY =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="field.summary">
|
||
<!-- --> </a> <h3>Field Summary</h3>
|
||
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Field Summary table, listing fields, and an explanation">
|
||
<caption>
|
||
<span>Fields</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Modifier and Type</th>
|
||
<th class="colLast" scope="col">Field and Description</th>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><code>static int</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#LOOP_CONTINUOUSLY">LOOP_CONTINUOUSLY</a></span></code>
|
||
<div class="block">
|
||
一个值,指示循环应该在无限期之后继续,而不是在特定循环数之后完成。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
</ul>
|
||
<!-- ========== METHOD SUMMARY =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.summary">
|
||
<!-- --> </a> <h3>方法摘要</h3>
|
||
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
|
||
<caption>
|
||
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t3"><span><a href="javascript:show(4);">抽象方法</a></span><span class="tabEnd"> </span></span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Modifier and Type</th>
|
||
<th class="colLast" scope="col">Method and Description</th>
|
||
</tr>
|
||
<tr class="altColor" id="i0">
|
||
<td class="colFirst"><code>int</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#getFrameLength--">getFrameLength</a></span>()</code>
|
||
<div class="block">
|
||
获取样品帧中的介质长度。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i1">
|
||
<td class="colFirst"><code>long</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#getMicrosecondLength--">getMicrosecondLength</a></span>()</code>
|
||
<div class="block">
|
||
获取媒体持续时间(以微秒为单位)
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor" id="i2">
|
||
<td class="colFirst"><code>void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#loop-int-">loop</a></span>(int count)</code>
|
||
<div class="block">
|
||
从当前位置开始循环播放。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i3">
|
||
<td class="colFirst"><code>void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#open-javax.sound.sampled.AudioFormat-byte:A-int-int-">open</a></span>(<a href="../../../javax/sound/sampled/AudioFormat.html" title="class in javax.sound.sampled">AudioFormat</a> format, byte[] data, int offset, int bufferSize)</code>
|
||
<div class="block">
|
||
打开剪辑,这意味着它应该获取任何所需的系统资源并可以运行。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor" id="i4">
|
||
<td class="colFirst"><code>void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#open-javax.sound.sampled.AudioInputStream-">open</a></span>(<a href="../../../javax/sound/sampled/AudioInputStream.html" title="class in javax.sound.sampled">AudioInputStream</a> stream)</code>
|
||
<div class="block">
|
||
以提供的音频输入流中存在的格式和音频数据打开剪辑。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i5">
|
||
<td class="colFirst"><code>void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#setFramePosition-int-">setFramePosition</a></span>(int frames)</code>
|
||
<div class="block">
|
||
设置采样帧中的介质位置。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="altColor" id="i6">
|
||
<td class="colFirst"><code>void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#setLoopPoints-int-int-">setLoopPoints</a></span>(int start, int end)</code>
|
||
<div class="block">
|
||
设置将在循环中播放的第一个和最后一个采样帧。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i7">
|
||
<td class="colFirst"><code>void</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/sound/sampled/Clip.html#setMicrosecondPosition-long-">setMicrosecondPosition</a></span>(long microseconds)</code>
|
||
<div class="block">
|
||
以微秒设置媒体位置。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.javax.sound.sampled.DataLine">
|
||
<!-- --> </a> <h3>Methods inherited from interface javax.sound.sampled.<a href="../../../javax/sound/sampled/DataLine.html" title="interface in javax.sound.sampled">DataLine</a></h3> <code><a href="../../../javax/sound/sampled/DataLine.html#available--">available</a>, <a href="../../../javax/sound/sampled/DataLine.html#drain--">drain</a>, <a href="../../../javax/sound/sampled/DataLine.html#flush--">flush</a>, <a href="../../../javax/sound/sampled/DataLine.html#getBufferSize--">getBufferSize</a>, <a href="../../../javax/sound/sampled/DataLine.html#getFormat--">getFormat</a>, <a href="../../../javax/sound/sampled/DataLine.html#getFramePosition--">getFramePosition</a>, <a href="../../../javax/sound/sampled/DataLine.html#getLevel--">getLevel</a>, <a href="../../../javax/sound/sampled/DataLine.html#getLongFramePosition--">getLongFramePosition</a>, <a href="../../../javax/sound/sampled/DataLine.html#getMicrosecondPosition--">getMicrosecondPosition</a>, <a href="../../../javax/sound/sampled/DataLine.html#isActive--">isActive</a>, <a href="../../../javax/sound/sampled/DataLine.html#isRunning--">isRunning</a>, <a href="../../../javax/sound/sampled/DataLine.html#start--">start</a>, <a href="../../../javax/sound/sampled/DataLine.html#stop--">stop</a></code></li>
|
||
</ul>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.javax.sound.sampled.Line">
|
||
<!-- --> </a> <h3>Methods inherited from interface javax.sound.sampled.<a href="../../../javax/sound/sampled/Line.html" title="interface in javax.sound.sampled">Line</a></h3> <code><a href="../../../javax/sound/sampled/Line.html#addLineListener-javax.sound.sampled.LineListener-">addLineListener</a>, <a href="../../../javax/sound/sampled/Line.html#close--">close</a>, <a href="../../../javax/sound/sampled/Line.html#getControl-javax.sound.sampled.Control.Type-">getControl</a>, <a href="../../../javax/sound/sampled/Line.html#getControls--">getControls</a>, <a href="../../../javax/sound/sampled/Line.html#getLineInfo--">getLineInfo</a>, <a href="../../../javax/sound/sampled/Line.html#isControlSupported-javax.sound.sampled.Control.Type-">isControlSupported</a>, <a href="../../../javax/sound/sampled/Line.html#isOpen--">isOpen</a>, <a href="../../../javax/sound/sampled/Line.html#open--">open</a>, <a href="../../../javax/sound/sampled/Line.html#removeLineListener-javax.sound.sampled.LineListener-">removeLineListener</a></code></li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="details">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- ============ FIELD DETAIL =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="field.detail">
|
||
<!-- --> </a> <h3>字段详细信息</h3> <a name="LOOP_CONTINUOUSLY">
|
||
<!-- --> </a>
|
||
<ul class="blockListLast">
|
||
<li class="blockList"> <h4>LOOP_CONTINUOUSLY</h4> <pre>static final int LOOP_CONTINUOUSLY</pre>
|
||
<div class="block">
|
||
一个值,指示循环应该在无限期之后继续,而不是在特定循环数之后完成。
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<a href="../../../javax/sound/sampled/Clip.html#loop-int-"><code>loop(int)</code></a> ,
|
||
<a href="../../../constant-values.html#javax.sound.sampled.Clip.LOOP_CONTINUOUSLY">Constant Field Values</a>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
<!-- ============ METHOD DETAIL ========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.detail">
|
||
<!-- --> </a> <h3>方法详细信息</h3> <a name="open-javax.sound.sampled.AudioFormat-byte:A-int-int-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>open</h4> <pre>void open(<a href="../../../javax/sound/sampled/AudioFormat.html" title="class in javax.sound.sampled">AudioFormat</a> format,
|
||
byte[] data,
|
||
int offset,
|
||
int bufferSize)
|
||
throws <a href="../../../javax/sound/sampled/LineUnavailableException.html" title="class in javax.sound.sampled">LineUnavailableException</a></pre>
|
||
<div class="block">
|
||
<span>打开剪辑,这意味着它应该获取任何所需的系统资源并可以运行。</span>
|
||
<span>剪辑被打开,并显示格式和音频数据。</span>
|
||
<span>如果此操作成功,该行将被标记为打开,并且<code><a href="../../../javax/sound/sampled/LineEvent.Type.html#OPEN"><code>OPEN</code></a></code>事件将发送到该行的监听器。</span>
|
||
<p> <span>在已经打开的行上调用此方法是非法的,可能会导致IllegalStateException异常。</span> </p>
|
||
<p> <span>请注意,一旦关闭,一些行不能重新打开。</span> <span>尝试重新打开此行将始终导致<code><a href="../../../javax/sound/sampled/LineUnavailableException.html" title="class in javax.sound.sampled"><code>LineUnavailableException</code></a></code> 。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<code>format</code> - 提供的音频数据的格式
|
||
</dd>
|
||
<dd>
|
||
<code>data</code> - 一个包含加载到剪辑中的音频数据的字节数组
|
||
</dd>
|
||
<dd>
|
||
<code>offset</code> - 开始复制的点,以数组开头的
|
||
<em>字节表示</em>
|
||
</dd>
|
||
<dd>
|
||
<code>bufferSize</code> - 从数组加载到剪辑中的数据的
|
||
<em>字节数</em> 。
|
||
</dd>
|
||
<dt>
|
||
<span class="throwsLabel">异常</span>
|
||
</dt>
|
||
<dd>
|
||
<code><a href="../../../javax/sound/sampled/LineUnavailableException.html" title="class in javax.sound.sampled">LineUnavailableException</a></code> - 如果由于资源限制,该行无法打开
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果缓冲区大小不表示采样帧的整数,或者
|
||
<code>format</code>未完全指定或无效
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果该行已经打开
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/lang/SecurityException.html" title="class in java.lang">SecurityException</a></code> - 如果由于安全限制,该行无法打开
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../../javax/sound/sampled/Line.html#close--"><code>Line.close()</code></a> , <a href="../../../javax/sound/sampled/Line.html#isOpen--"><code>Line.isOpen()</code></a> , <a href="../../../javax/sound/sampled/LineListener.html" title="javax.sound.sampled中的接口"><code>LineListener</code></a></span>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="open-javax.sound.sampled.AudioInputStream-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>open</h4> <pre>void open(<a href="../../../javax/sound/sampled/AudioInputStream.html" title="class in javax.sound.sampled">AudioInputStream</a> stream)
|
||
throws <a href="../../../javax/sound/sampled/LineUnavailableException.html" title="class in javax.sound.sampled">LineUnavailableException</a>,
|
||
<a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
|
||
<div class="block">
|
||
<span>以提供的音频输入流中存在的格式和音频数据打开剪辑。</span>
|
||
<span>打开一个剪辑意味着它应该获取任何所需的系统资源,并可以运行。</span>
|
||
<span>如果这个操作输入流。</span>
|
||
<span>如果此操作成功,该行将被标记为打开,并且<code><a href="../../../javax/sound/sampled/LineEvent.Type.html#OPEN"><code>OPEN</code></a></code>事件将调度到该行的监听器。</span>
|
||
<p> <span>在已经打开的行上调用此方法是非法的,可能会导致IllegalStateException异常。</span> </p>
|
||
<p> <span>请注意,一旦关闭,一些行不能重新打开。</span> <span>尝试重新打开此行将始终导致<code><a href="../../../javax/sound/sampled/LineUnavailableException.html" title="class in javax.sound.sampled"><code>LineUnavailableException</code></a></code> 。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<code>stream</code> - 将音频数据读入剪辑的音频输入流
|
||
</dd>
|
||
<dt>
|
||
<span class="throwsLabel">异常</span>
|
||
</dt>
|
||
<dd>
|
||
<code><a href="../../../javax/sound/sampled/LineUnavailableException.html" title="class in javax.sound.sampled">LineUnavailableException</a></code> - 如果由于资源限制,该行无法打开
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果在读取数据流期间发生I / O异常
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果流的音频格式未完全指定或无效
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果该行已经打开
|
||
</dd>
|
||
<dd>
|
||
<code><a href="../../../java/lang/SecurityException.html" title="class in java.lang">SecurityException</a></code> - 如果由于安全限制,该行无法打开
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<span><a href="../../../javax/sound/sampled/Line.html#close--"><code>Line.close()</code></a> , <a href="../../../javax/sound/sampled/Line.html#isOpen--"><code>Line.isOpen()</code></a> , <a href="../../../javax/sound/sampled/LineListener.html" title="javax.sound.sampled中的接口"><code>LineListener</code></a></span>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="getFrameLength--">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>getFrameLength</h4> <pre>int getFrameLength()</pre>
|
||
<div class="block">
|
||
获取样品帧中的介质长度。
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
媒体长度,以采样帧表示,如果行不开,
|
||
<code>AudioSystem.NOT_SPECIFIED</code> 。
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<a href="../../../javax/sound/sampled/AudioSystem.html#NOT_SPECIFIED"><code>AudioSystem.NOT_SPECIFIED</code></a>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="getMicrosecondLength--">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>getMicrosecondLength</h4> <pre>long getMicrosecondLength()</pre>
|
||
<div class="block">
|
||
获取媒体持续时间(以微秒为单位)
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
媒体持续时间,以微秒为单位,如果线路不开放,
|
||
<code>AudioSystem.NOT_SPECIFIED</code> 。
|
||
</dd>
|
||
<dt>
|
||
<span class="seeLabel">另请参见:</span>
|
||
</dt>
|
||
<dd>
|
||
<a href="../../../javax/sound/sampled/AudioSystem.html#NOT_SPECIFIED"><code>AudioSystem.NOT_SPECIFIED</code></a>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="setFramePosition-int-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>setFramePosition</h4> <pre>void setFramePosition(int frames)</pre>
|
||
<div class="block">
|
||
<span>设置采样帧中的介质位置。</span>
|
||
<span>位置为零;</span>
|
||
<span>第一帧是帧号零。</span>
|
||
<span>当剪辑在下一次开始播放时,将从此位置播放帧开始。</span>
|
||
<p> <span>为了获得以示例帧的当前位置,使用<code><a href="../../../javax/sound/sampled/DataLine.html#getFramePosition--"><code>getFramePosition</code></a></code>的方法<code>DataLine</code> 。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<code>frames</code> - 所需的新媒体位置,以示例框架表示
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="setMicrosecondPosition-long-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>setMicrosecondPosition</h4> <pre>void setMicrosecondPosition(long microseconds)</pre>
|
||
<div class="block">
|
||
<span>以微秒设置媒体位置。</span>
|
||
<span>当剪辑在下一次开始播放时,它将从此位置开始。</span>
|
||
<span>精度水平不能保证。</span>
|
||
<span>例如,实现可以从当前帧位置和音频采样帧速率计算微秒位置。</span>
|
||
<span>然后,微秒的精度将被限制为每个采样帧的微秒数。</span>
|
||
<p> <span>为了获得在微秒的当前位置,使用<code><a href="../../../javax/sound/sampled/DataLine.html#getMicrosecondPosition--"><code>getMicrosecondPosition</code></a></code>的方法<code>DataLine</code> 。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<code>microseconds</code> - 所需的新媒体位置,以微秒表示
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="setLoopPoints-int-int-">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>setLoopPoints</h4> <pre>void setLoopPoints(int start,
|
||
int end)</pre>
|
||
<div class="block">
|
||
<span>设置将在循环中播放的第一个和最后一个采样帧。</span>
|
||
<span>结束点必须大于或等于起始点,并且两者必须在加载的介质的大小之内。</span>
|
||
<span>起始点的值为0表示加载的媒体的开头。</span>
|
||
<span>类似地,结束点的值为-1表示媒体的最后一帧。</span>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<code>start</code> - 循环的起始位置,在采样帧(从零开始)
|
||
</dd>
|
||
<dd>
|
||
<code>end</code> - 循环的结束位置,以采样帧(从零为基础)或-1表示最终帧
|
||
</dd>
|
||
<dt>
|
||
<span class="throwsLabel">异常</span>
|
||
</dt>
|
||
<dd>
|
||
<code><a href="../../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果所请求的循环点不能被设置,通常是因为一个或两个都位于媒体的持续时间之外,或者因为终点在起始点之前
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="loop-int-">
|
||
<!-- --> </a>
|
||
<ul class="blockListLast">
|
||
<li class="blockList"> <h4>loop</h4> <pre>void loop(int count)</pre>
|
||
<div class="block">
|
||
<span>从当前位置开始循环播放。</span>
|
||
<span>播放将继续循环的终点,然后循环回循环起始点<code>count</code>次,最后继续播放到剪辑的末尾。</span>
|
||
<p> <span>如果调用此方法时的当前位置大于循环结束点,则回放将简单地继续到剪辑的结尾而不进行循环。</span> </p>
|
||
<p> <span><code>count</code>值为0表示任何当前循环都应该停止,播放应该继续到剪辑的末尾。</span> <span>当在循环操作期间使用任何其他值调用此方法时,行为是未定义的。</span> </p>
|
||
<p> <span>如果在循环过程中播放停止,则当前循环状态被清除;</span> <span>后续循环和启动请求的行为不受中断循环操作的影响。</span> </p>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<code>count</code> - 播放应该从循环的结束位置循环回循环的起始位置的次数,或
|
||
<code><a href="../../../javax/sound/sampled/Clip.html#LOOP_CONTINUOUSLY"><code>LOOP_CONTINUOUSLY</code></a></code> ,以指示循环应该继续直到中断
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
</div> |