TwlIPL_commit-99/add-ins/TwlSystem/man/ja_JP/snd/NNS_SndArcStrmStart.html

108 lines
4.5 KiB
HTML
Executable File

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>NNS_SndArcStrmStart</title>
<link rel="stylesheet" href="../css/nitro.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
</head>
<body>
<div class="refentry" lang="ja"><a name="IDAKKWT"></a><div class="titlepage">
<div></div>
<div></div>
</div>
<h1>NNS_SndArcStrmStart</h1>
<h2>構文</h2>
<dl>
<dd><pre class="funcsynopsisinfo"><code>#include &lt;nnsys/snd.h&gt;</code></pre></dd>
<dd><pre class="funcprototype"><code class="funcprototype">BOOL NNS_SndArcStrmStart(
NNSSndStrmHandle* <var>handle</var>,
int <var>strmNo</var>,
u32 <var>offset</var> );</code><br></pre></dd>
</dl>
<div class="refsection" lang="ja"><a name="IDAQMWT"></a>
<h2>引数</h2>
<div class="variablelist">
<table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><em><strong><code>handle</code></strong></em></td>
<td>ストリームハンドルのポインタです。</td>
</tr>
<tr>
<td><em><strong><code>strmNo</code></strong></em></td>
<td>ストリーム番号です。</td>
</tr>
<tr>
<td><em><strong><code>offset</code></strong></em></td>
<td>開始オフセット位置です。msec単位です。</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="refsection" lang="ja"><a name="IDANNWT"></a>
<h2>返り値</h2>
<p>
再生に成功した場合は、TRUEを返します。失敗すると、FALSEが返ります。
</p>
</div>
<div class="refsection" lang="ja"><a name="IDAUNWT"></a>
<h2>説明</h2>
<p>
ストリームを再生します。
プレイヤー番号などをプログラムから指定する場合は、
<tt class="function"><a href="NNS_SndArcStrmStartEx.html">NNS_SndArcStrmStartEx</a></tt>関数または、
<tt class="function"><a href="NNS_SndArcStrmStartEx2.html">NNS_SndArcStrmStartEx2</a></tt>関数を使います。
</p>
<p>
あらかじめ、
<tt class="function"><a href="NNS_SndArcStrmInit.html">NNS_SndArcStrmInit</a></tt>関数で、
サウンドアーカイブストリームライブラリが初期化されている必要があります。
</p>
<p>
ストリームハンドル<em><strong><code>handle</code></strong></em>は、あらかじめ、<tt class="function"><a href="NNS_SndStrmHandleInit.html">NNS_SndStrmHandleInit</a></tt>関数で、1度だけ初期化しておかなければなりません。
この関数を呼びだすと、ストリームハンドルに既に結びつけられていたストリームは切り離されます(停止するわけではありません)。
再生に成功すると、ストリームハンドルにストリームが結びつけられます。
</p>
<p>
開始オフセット位置<em><strong><code>offset</code></strong></em>に、0以外の値を入れると、ストリームデータの途中から再生することができます。
</p>
<p>
ストリーム再生の前に、まずストリームバッファに始めのデータをロードする必要があるため、
実際に音が鳴り始めるのは、数フレーム遅れます。
即座に再生を開始したい場合には、前もってストリームバッファへのデータのロードを済ませておく必要があります。
そのためには、<tt class="function"><a href="NNS_SndArcStrmPrepare.html">NNS_SndArcStrmPrepare</a></tt>関数を使います。
</p>
<p>
ストリーム再生に使用するチャンネルは、この関数内で確保されます。確保するチャンネルがシーケンス再生で使用中だった場合、
発音中の音は強制的に止められます。
チャンネル確保のタイミングを制御したい場合は、前もって
<tt class="function"><a href="NNS_SndArcStrmAllocChannel.html">NNS_SndArcStrmAllocChannel</a></tt>関数を呼びだします。
</p>
<p>
ストリームデータがステレオだった場合、チャンネル0は左から、チャンネル1は右から出力されます。
この設定は、<tt class="function"><a href="NNS_SndArcStrmSetChannelPan.html">NNS_SndArcStrmSetChannelPan</a></tt>関数で変更することができます。
</p>
<p>
再生の失敗には、以下の原因が考えられます。
</p>
<div class="itemizedlist">
<ul type="disc">
<li>ストリーム番号が無効</li>
<li>既に再生中のストリームよりも優先度が低い</li>
<li>ストリームプレイヤーが使用するチャンネルが別用途で使用中</li>
</ul>
</div>
</div>
<h2>参照</h2>
<p><a href="NNS_SndArcStrmStartEx.html">NNS_SndArcStrmStartEx</a>, <a href="NNS_SndArcStrmStartEx2.html">NNS_SndArcStrmStartEx2</a>, <a href="NNS_SndArcStrmInit.html">NNS_SndArcStrmInit</a>, <a href="NNS_SndStrmHandleInit.html">NNS_SndStrmHandleInit</a>, <a href="NNS_SndArcStrmPrepare.html">NNS_SndArcStrmPrepare</a>, <a href="NNS_SndArcStrmAllocChannel.html">NNS_SndArcStrmAllocChannel</a>, <a href="NNS_SndArcStrmSetChannelPan.html">NNS_SndArcStrmSetChannelPan</a></p>
<h2>履歴</h2>
<p>2004/11/26 NNS_SndArcStrmStartEx関数の説明を分離<br>2004/10/05 NNS_SndArcStrmStartEx関数追加<br>2004/08/10 初版<br></p>
</div>
</body>
</html>