IDirectPlayVoiceClient::SetTransmitTargets メソッド
IDirectPlayVoiceClient::SetTransmitTargets メソッド
ローカル クライアントからオーディオ送信を受け取るプレーヤまたはグループ、あるいはその両方を指定する。
構文
HRESULT SetTransmitTargets(
PDVID pdvIDTargets,
DWORD dwNumTargets,
DWORD dwFlags
);
パラメータ
- pdvIDTargets
[in] ターゲットを指定する DVID の配列へのポインタ。セッションのすべてのプレーヤをターゲットとするには、1 つの要素配列を使い、その要素の値を DVID_ALLPLAYERS に設定する。プレーヤをターゲットとしない場合、パラメータを NULL に設定する。 - dwNumTargets
[in] 配列内の DVID の数。この値は 64 を超えてはならない。pdvIDTargets が NULL の場合、このパラメータは 0 に設定する。 - dwFlags
[in] 予約済み。0 でなければならない。
戻り値
成功した場合は DV_OK を返す。または、次のいずれかのエラー値を返す。
DVERR_INVALIDFLAGS | このメソッドに渡されたフラグは無効である。 |
DVERR_INVALIDPARAM | メソッドに渡された 1 つ以上のパラメータが無効である。 |
DVERR_INVALIDPOINTER | 指定されたポインタが無効である。 |
DVERR_INVALIDTARGET | 指定されたターゲットは、このボイス セッションの有効なプレーヤ ID またはグループ ID ではない。 |
DVERR_NOTINITIALIZED | このメソッドを呼び出す前に、IDirectPlayVoiceClient::Initialize メソッドまたは IDirectPlayVoiceServer::Initialize メソッドを呼び出す必要がある。 |
注意
転送できる個々のターゲットの数は、64 までに制限される。この値を超えると、メソッドは失敗し、DVERR_NOTALLOWED を返す。ただし、65 人以上のプレーヤに転送することもできる。それには、プレーヤをグループにまとめ、グループをターゲットとして使う。
pdvIDTargets パラメータはプレーヤまたはグループの DVID の配列を指定する。このパラメータには重複ターゲットを指定してはならない。また、エントリはすべて有効な DVID である必要がある。ターゲットが個々の DVID を持つプレーヤおよびターゲットが所属するグループ内のプレーヤを含む場合、Microsoft® DirectPlay® Voice はプレーヤに重複音声パケットが送信されないようにする。
DVSESSION_SERVERCONTROLTARGET フラグを使ってセッションが作成された場合、このローカル クライアントにはサーバーしかターゲットを設定できない。このメソッドを呼び出すと、DVERR_NOTALLOWED が返される。