摘:PC客戶端 XP兼容性調查
-
現象1:XP SP2下,客戶端安裝失敗(或者啟動失敗)
解決方案:需要安裝以下3個補丁(已經集成到安裝包中)
==系統Hotfix(僅僅XP SP2需要安裝):
http://support.microsoft.com/?kbid=893803
https://www.microsoft.com/en-us/download/details.aspx?id=32
==.Net Framework Hotfix(建議所有系統都安裝,使用64位補丁包):
https://www.microsoft.com/en-us/download/details.aspx?id=3556
-
現象2:XP SP3下,設置透明屬性的窗口,真的變成"透明"了
調查結果:通過調整系統的顯卡加速模式,可以改變窗口的渲染模式,讓窗口變得不透明
解決方案:在XP系統中,使用CPU模式渲染窗口
RenderOptions.ProcessRenderMode = System.Windows.Interop.RenderMode.SoftwareOnly
思考:由於WPF的渲染對DirectX依賴較強,顯卡性能較弱的時候,可能會影響窗口的渲染
-
現象3:XP系統下,新建視頻資源的時候,視頻轉換失敗
調查結果:現在使用的ffmpeg版本不能再XP下運行
解決方案:使用兼容XP版本的ffmpeg
思考:由於ffmpeg會使用CPU的SSE2指令,如果CPU不支持SSE2指令,還有可能導致轉換失敗
-
現象4:XP系統下,互動課堂創建失敗
調查結果:XP系統下,必須先綁定端口,才能設置多播屬性
解決方案:修改多播的創建邏輯
-
現象5:XP系統下,不能播放音頻/視頻
調查結果:XP下默認的播放器是Media Player9,不支持MP4和MP3播放
解決思路:1,找到兼容的解碼器 2,使用其他播放方案(ffmediaelement,wpf-mediakit,vlc,cef)
2018/01/25:
最後決定使用vlc進行播放,下面把這幾個方案的優缺點說明一下
====Vlc
優點:
1,支持的操作系統比較全 (XP~WIN10)
2,支持的媒體格式比較多
缺點:
沒有原生WPF控件,只能使用Host方式嵌入Vlc Player,增加了UI控制難度,並且在XP系統上運行的時候出現畫面閃動的現象
思考:
把客戶端的播放方案整體替換為Vlc,統一體驗
====ffmediaelement
優點:
1,在應用層進行解碼,定制度高
2,提供原生WPF控件,UI定制度高
3,支持的操作系統比較全 (XP~WIN10)
缺點:
播放不流暢,難以忍受(哈哈,最基本的播放沒做好,雖然其他做的很好)
====wpf-mediakit
優點:
提供原生WPF控件,UI定制度高
缺點:
XP下,需要自己寫vmr7解碼器
====Cef
由於升級過程中,出現了跨線程調用的問題,終止調查
摘:PC客戶端 XP兼容性調查