alSynStartVoice.htm
2.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<HTML>
<HEAD>
<TITLE>HTML 文書</TITLE>
<META NAME="GENERATOR" CONTENT="Internet Assistant for Microsoft Word 2.03j">
</HEAD>
<BODY>
<P>
<B><FONT FACE="Arial">alSynStartVoice <BR>
</FONT></B>
<P>
<B>関数名<BR>
</B>
<P>
alSynStartVoice
<P>
→ 指定されたボイスの波形合成を開始します。<BR>
<P>
<B>構文<BR>
</B>
<P>
#include < libaudio.h > <BR>
<P>
void alSynStartVoice(ALSynth *drvr, ALVoice *voice,
ALWaveTable *tbl);<BR>
<P>
<B>パラメータ<BR>
</B>
<P>
<B>drvr</B> 波形合成ドライバへのポインタ
<P>
<B>voice</B> ボイスへのポインタ
<P>
<B>tbl</B> サウンドwavetableへのポインタ
<BR>
</FONT>
<P>
<B>説明<BR>
</B>
<P>
<A HREF="alAudioFrame.htm" >alAudioFrame</A>により作られたコマンドリストの中に、表によって指定されたwavetabableを用いてサンプリングデータから指定したボイスのためのサンプリング音を合成するためにコマンドリストの生成を開始します。<B>alSynStartVoice</B>を呼び出す前に、ボイスは<A HREF="alSynAllocVoice.htm" >alSynAllocVoice</A>を呼び出してドライバから割り当てられなくてはなりません。
<P>
<A HREF="alSynAllocVoice.htm" >alSynAllocVoice</A>による割り当てが常に成功するとは限らないので、<B>alSynStartVoice</B>を呼び出す前に結果をチェックすることを確認して下さい。ボイス演奏を始める前に、ピッチ、パン、fxmixとボリュームはセットされるべきです。このライブラリ関数の変わりに、<A HREF="alSynStartVoiceParam.htm" >alSynStartVoiceParam</A>を使うことも出来るでしょう。
<P>
ボイスがもう鳴っていないとき、<A HREF="alSynStopVoice.htm" >alSynStopVoice</A>が呼び出されて、そして次に<A HREF="alSynFreeVoice.htm" >alSynFreeVoice</A>が呼び出されるかもしれません。
<BR>
<P>
<B>警告<BR>
</B>
<P>
独自にPlayerを書いた時は、<B>alSynStartVoice</B>はALVoiceHandlerの中でのみ、呼び出されるべきです。また、もし、そのボイスが停止状態で、同じオーディオフレームでスタートされてなければ、いずれのボイスパラメータもセットしてはいけません。言い換えれば、あるコールがボイスパラメータを停止状態にさせたとすると、そのボイスはもっと後の1つ、または複数フレームまでスタートされません。それで、思いもよらない結果となるでしょう。
<BR>
<P>
<B>参照<BR>
</B>
<P>
<A HREF="alSynAllocVoice.htm" >alSynAllocVoice(3P)</A>、<A HREF="alSynStopVoice.htm" >alSynStopVoice(3P)</A>、<A HREF="alSynFreeVoice.htm" >alSynFreeVoice(3P)</A>、<A HREF="alSynSetPitch.htm" >alSynSetPitch(3P)</A>、<A HREF="alSynSetPan.htm" >alSynSetPan(3P)</A>、<A HREF="alSynSetVol.htm" >alSynSetVol(3P)</A>、
<P>
<A HREF="alSynSetFXMix.htm" >alSynSetFXMix(3P)</A>、<A HREF="alSynStartVoiceParam.htm" >alSynStartVoiceParam(3P)</A>、<A HREF="alAudioFrame.htm" >alAudioFrame(3P)</A>
<BR>
<P>
</BODY>
</HTML>