SetSocketMediaStreamingMode 函式 (socketapi.h)

SetSocketMediaStreamingMode 函式指出是否要使用網路來傳輸需要服務品質的串流媒體。

語法

HRESULT SetSocketMediaStreamingMode(
  BOOL value
);

參數

value

指出網路是否要用於傳輸需要服務品質的串流媒體。 這可確保以低延遲方式開啟的套接字會透過802.11無線網路取得正確的服務品質。

傳回值

如果沒有發生錯誤, SetSocketMediaStreamingMode 會傳回S_OK。 否則,錯誤碼會以 HRESULT 的形式傳回。

備註

SetSocketMediaStreamingMode 函式可用來指出網路是否要用於傳輸需要服務品質的串流媒體。 此函式通常由需要一致服務質量的語音 over IP (VoIP) 或類似的應用程式使用。 Windows 市集應用程式或傳統型應用程式可以使用 SetSocketMediaStreamingMode 函式。

透過 802.11 無線網路使用媒體串流時,可能會有服務質量問題。 802.11 網路驅動程式會定期掃描其他鄰近基礎結構網路, (ESS) 或臨機操作網路, (IBSS) 。 這可讓無線網路適配卡尋找其他網路,而且可能連線到具有更強訊號的網路。 最新的 802.11 網路驅動程式會一次掃描所有可用的通道作為一系列。 當 802.11 網路驅動程式掃描其他網路並接聽其他通道時,它無法接收應用程式的封包。 掃描其他網路所花費的時間可能會造成明顯差距, (100 毫秒以上) 當 VoIP 應用程式無法接收音訊串流時。 此掃描程式對於雙頻 (2.4GHz 和 5GHz) 的 802.11 網路適配器而言較長,因為會掃描更多通道。 這可能會導致音訊被視為雜亂。

呼叫 SetSocketMediaStreamingMode 函式時, 參數設定為 TRUE ,套接字將會透過 802.11 無線網路適配卡傳輸,系統會通知無線網路驅動程式停止掃描其他網路。 這可在超過 802.11 無線網路使用時,排除 VoIP 和類似的音訊應用程式雜亂,但也會影響在本機電腦或裝置上執行的任何應用程式。

在某些情況下,關閉掃描可能會導致問題。 停用掃描時,即使使用者離開網路,本機計算機仍會保持連線到相同的網路。

VoIP 或類似的應用程式應該關閉所有低延遲套接字,以還原 802.11 無線網路驅動程式的媒體串流模式。 這會重新啟用其他無線網路的掃描。

如果套接字不會透過 802.11 無線適配卡傳送或接收封包, SetSocketMediaStreamingMode 函式就不會有任何作用。

規格需求

需求
最低支援的用戶端 Windows 8 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2012 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 socketapi.h
程式庫 Windows.Networking.lib
Dll Windows.Networking.dll

另請參閱

新增網路支援

Windows.Networking.BackgroundTransfer

Windows.Networking.Sockets