Função SetSocketMediaStreamingMode (socketapi.h)

A função SetSocketMediaStreamingMode indica se a rede deve ser usada para transferir mídia de streaming que requer qualidade de serviço.

Sintaxe

HRESULT SetSocketMediaStreamingMode(
  BOOL value
);

Parâmetros

value

Indica se a rede deve ser usada para transferir mídia de streaming que requer qualidade de serviço. Isso garante que os soquetes abertos como baixa latência obtenham a qualidade certa de serviço em redes sem fio 802.11.

Retornar valor

Se nenhum erro ocorrer, SetSocketMediaStreamingMode retornará S_OK. Caso contrário, um código de erro será retornado como UM HRESULT.

Comentários

A função SetSocketMediaStreamingMode é usada para indicar se a rede deve ser usada para transferir mídia de streaming que requer qualidade de serviço. Normalmente, essa função é usada pelo VoIP (Voz por IP) ou aplicativos semelhantes que exigem uma qualidade de serviço consistente. A função SetSocketMediaStreamingMode pode ser usada por aplicativos da Windows Store ou aplicativos da área de trabalho.

Pode haver problemas de qualidade de serviço para streaming de mídia quando usado em uma rede sem fio 802.11. O driver de rede 802.11 verificará periodicamente outras redes de infraestrutura (ESS) próximas ou redes ad hoc (IBSS). Isso permite que o adaptador de rede sem fio encontre outras redes e possivelmente se conecte a uma rede com um sinal mais forte. A maioria dos drivers de rede 802.11 atuais verifica todos os canais disponíveis como uma série ao mesmo tempo. Quando o driver de rede 802.11 está verificando outras redes e escutando em outros canais, ele não pode receber pacotes para o aplicativo. O tempo gasto na verificação de outras redes pode introduzir uma lacuna perceptível (100 milissegundos ou mais) quando um aplicativo VoIP não poderia receber o fluxo de áudio. Esse processo de verificação é mais longo para adaptadores de rede 802.11 que são de banda dupla (2,4GHz e 5GHz), pois ainda mais canais são verificados. Isso pode fazer com que o áudio seja percebido como gaguejando.

Quando a função SetSocketMediaStreamingMode é chamada com o parâmetro de valor definido como TRUE e o soquete será transferido por um adaptador de rede sem fio 802.11, o sistema notificará o driver de rede sem fio para interromper a verificação de outras redes. Isso elimina gaguejar por VoIP e aplicativos de áudio semelhantes quando usados mais de 802.11 redes sem fio, mas também afeta todos os aplicativos em execução no computador ou dispositivo local.

Há casos em que desativar verificações pode causar problemas. Quando as verificações são desabilitadas, o computador local permanece conectado à mesma rede, mesmo que o sinal se torne mais fraco e mais fraco à medida que o usuário se afasta da rede.

Um aplicativo VoIP ou semelhante deve fechar todos os soquetes de baixa latência para restaurar o modo de streaming de mídia do driver de rede sem fio 802.11. Isso habilitará novamente a verificação de outras redes sem fio.

A função SetSocketMediaStreamingMode não terá efeito se o soquete não enviar ou receber pacotes em um adaptador sem fio 802.11.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho socketapi.h
Biblioteca Windows.Networking.lib
DLL Windows.Networking.dll

Confira também

Adicionando suporte para rede

Windows.Networking.BackgroundTransfer

Windows.Networking.Sockets