#include <vct.h>
BOOL VCT_ReceiveAudio( void* audio_data, u32 length, u32 *aidBitmap );| audio_data | バッファへのポインタ |
| length | バッファのサイズ |
| aidBitmap | このストリームを送信したクライアントのaidのビットマップ。NULLを指定することも出来ます。 |
TRUE |
音声データをバッファに書き込んだ |
FALSE |
音声データがない、またはストリーミングが開始されていない、ライブラリが初期化されていない |
受信用バッファから音声データを取り出します。受信した音声のデコードはVCT_HandleData内ですでに処理されています。また、カンファレンスモードなど、再生音声が複数チャンネルある場合、この関数の内部にて音声がミキシング処理されます。
audio_dataに書き込まれる音声データのフォーマットは16bit/8KHzです。このバッファは4バイト境界にアライメントされている必要があります。なお、lengthは現在1088(16bit/8KHzで68ms分のデータ)以外の値は受け付けていません。
この関数は、現在音声ストリーミングが開始されている・いないにかかわらず呼び出すことが可能です。音声ストリーミングが開始されていなければ、この関数はaudio_dataをゼロクリアします。
この関数の呼び出し間隔にばらつきがあると、音声再生に途切れが発生しやすくなるため、可能な限り正確に68ms単位で呼び出すようにしてください(音声ストリーミング再生の割り込みコールバック内で利用してください)。
aidBitmapを指定することで、このストリームを送信したリモートaidのビットマップを取得できます。トランシーバーモードにおいて、発言する人に応じてパンを切り替えるような場合に、利用してください。
この関数の戻り値を利用することで、現在再生すべき音声があるかどうかを判定することができます。これを利用して、音声再生時に BGM をミュート、または音量を抑えるといった処理をすることが可能になります。
VCT_Init,
VCT_StartStreaming,
VCT_SendAudio
2006/08/31 ソフトウェアミックスに関する記述を追加
2006/04/25 VCT_ReceiveMixedAudioに関する記述を追加
2006/04/13 送信間隔を64msから68msへ変更。audio_dataに注意事項を修正。
2006/04/06 送信間隔の調整に関する記述を修正
2006/01/25 初版