SetSocketMediaStreamingMode, fonction (socketapi.h)

La fonction SetSocketMediaStreamingMode indique si le réseau doit être utilisé pour transférer des médias de streaming qui nécessitent une qualité de service.

Syntaxe

HRESULT SetSocketMediaStreamingMode(
  BOOL value
);

Paramètres

value

Indique si le réseau doit être utilisé pour transférer des médias de streaming qui nécessitent une qualité de service. Cela garantit que les sockets ouverts à faible latence bénéficieront de la bonne qualité de service sur les réseaux sans fil 802.11.

Valeur retournée

Si aucune erreur ne se produit, SetSocketMediaStreamingMode retourne S_OK. Sinon, un code d’erreur est retourné en tant que HRESULT.

Remarques

La fonction SetSocketMediaStreamingMode permet d’indiquer si le réseau doit être utilisé pour transférer des médias de diffusion en continu nécessitant une qualité de service. Cette fonction est normalement utilisée par la voix sur IP (VoIP) ou des applications similaires qui nécessitent une qualité de service cohérente. La fonction SetSocketMediaStreamingMode peut être utilisée par les applications du Windows Store ou les applications de bureau.

Il peut y avoir des problèmes de qualité de service pour le streaming multimédia lorsqu’il est utilisé sur un réseau sans fil 802.11. Le pilote réseau 802.11 recherche régulièrement d’autres réseaux d’infrastructure proches (ESS) ou des réseaux ad hoc (IBSS). Cela permet à la carte réseau sans fil de trouver d’autres réseaux et éventuellement connectée à un réseau avec un signal plus fort. La plupart des pilotes réseau 802.11 actuels analysent tous les canaux disponibles en une série à la fois. Lorsque le pilote réseau 802.11 recherche d’autres réseaux et écoute d’autres canaux, il ne peut pas recevoir de paquets pour l’application. Le temps passé à analyser d’autres réseaux peut introduire un écart notable (100 millisecondes ou plus) lorsqu’une application VoIP ne peut pas recevoir le flux audio. Ce processus d’analyse est plus long pour les cartes réseau 802,11 qui sont double bande (2,4 GHz et 5 GHz), car encore plus de canaux sont analysés. Cela peut entraîner la perception de l’audio comme un bégaiement.

Lorsque la fonction SetSocketMediaStreamingMode est appelée avec le paramètre de valeur défini sur TRUE et que le socket est transféré sur une carte réseau sans fil 802.11, le système avertit le pilote de réseau sans fil d’arrêter l’analyse des autres réseaux. Cela élimine le bégaiement par la VoIP et les applications audio similaires lorsqu’elles sont utilisées sur des réseaux sans fil 802.11, mais affecte également toutes les applications en cours d’exécution sur l’ordinateur ou l’appareil local.

Dans certains cas, la désactivation des analyses peut entraîner des problèmes. Lorsque les analyses sont désactivées, l’ordinateur local reste connecté au même réseau même si le signal devient de plus en plus faible à mesure que l’utilisateur s’éloigne du réseau.

Une application VoIP ou similaire doit fermer tous les sockets à faible latence pour restaurer le mode de streaming multimédia du pilote réseau sans fil 802.11. Cela réactivera l’analyse pour d’autres réseaux sans fil.

La fonction SetSocketMediaStreamingMode n’a aucun effet si le socket n’envoie pas ou ne reçoit pas de paquets sur une carte sans fil 802.11.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête socketapi.h
Bibliothèque Windows.Networking.lib
DLL Windows.Networking.dll

Voir aussi

Ajout de la prise en charge de la mise en réseau

Windows.Networking.BackgroundTransfer

Windows.Networking.Sockets