SetSocketMediaStreamingMode 関数 (socketapi.h)

SetSocketMediaStreamingMode 関数は、サービスの品質を必要とするストリーミング メディアの転送にネットワークを使用するかどうかを示します。

構文

HRESULT SetSocketMediaStreamingMode(
  BOOL value
);

パラメーター

value

サービスの品質を必要とするストリーミング メディアの転送にネットワークを使用するかどうかを示します。 これにより、低待機時間として開かれたソケットは、802.11 ワイヤレス ネットワークを介して適切なサービス品質を得ることができます。

戻り値

エラーが発生しない場合、 SetSocketMediaStreamingMode はS_OKを返します。 それ以外の場合は、エラー コードが HRESULT として返されます。

注釈

SetSocketMediaStreamingMode 関数は、サービスの品質を必要とするストリーミング メディアの転送にネットワークを使用するかどうかを示すために使用されます。 この関数は、通常、一貫したサービス品質を必要とする Voice over IP (VoIP) または同様のアプリで使用されます。 SetSocketMediaStreamingMode 関数は、Windows ストア アプリまたはデスクトップ アプリで使用できます。

802.11 ワイヤレス ネットワーク経由で使用すると、メディア ストリーミングのサービス品質の問題が発生する可能性があります。 802.11 ネットワーク ドライバーは、他の近くのインフラストラクチャ ネットワーク (ESS) またはアドホック ネットワーク (IBSS) を定期的にスキャンします。 これにより、ワイヤレス ネットワーク アダプターは他のネットワークを検索し、場合によってはより強力な信号を使用してネットワークに接続できます。 最新の 802.11 ネットワーク ドライバーは、使用可能なすべてのチャネルを一度にシリーズとしてスキャンします。 802.11 ネットワーク ドライバーが他のネットワークをスキャンし、他のチャネルでリッスンしている場合、アプリのパケットを受信できません。 他のネットワークのスキャンに費やされた時間は、VoIP アプリがオーディオ ストリームを受信できない場合に、顕著なギャップ (100 ミリ秒以上) が発生する可能性があります。 このスキャン プロセスは、さらに多くのチャネルがスキャンされるため、デュアル バンド (2.4 GHz および 5GHz) である 802.11 ネットワーク アダプターでは長くなります。 これにより、オーディオが吃音として認識される可能性があります。

SetSocketMediaStreamingMode 関数が value パラメーターを TRUE に設定して呼び出され、ソケットが 802.11 ワイヤレス ネットワーク アダプター経由で転送されると、システムはワイヤレス ネットワーク ドライバーに他のネットワークのスキャンを停止するように通知します。 これにより、802.11 を超えるワイヤレス ネットワークを使用する場合、VoIP や同様のオーディオ アプリによる吃音がなくなりますが、ローカル コンピューターまたはデバイスで実行されているアプリにも影響します。

スキャンをオフにすると問題が発生する場合があります。 スキャンが無効になっている場合、ユーザーがネットワークから離れるにつれて信号が弱くなり弱くなった場合でも、ローカル コンピューターは同じネットワークに接続された状態を維持します。

VoIP または同様のアプリでは、802.11 ワイヤレス ネットワーク ドライバーのメディア ストリーミング モードを復元するために、待機時間の短いソケットをすべて閉じる必要があります。 これにより、他のワイヤレス ネットワークのスキャンが再び有効になります。

SetSocketMediaStreamingMode 関数は、ソケットが 802.11 ワイヤレス アダプター経由でパケットを送受信しない場合、影響を与えるものではありません。

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー socketapi.h
Library Windows.Networking.lib
[DLL] Windows.Networking.dll

こちらもご覧ください

ネットワークのサポートの追加

Windows.Networking.BackgroundTransfer

Windows.Networking.Sockets