網頁

2018年8月4日 星期六

解決Mixed Reality Capture的延遲問題

這個問題頗為重要又相當棘手,但實際上早在一兩年前,
有些程式高手已經解決,並且將解法免費分享在GitHub上。

想要看到戴HoloLens眼鏡的人看到些什麼,一般可以用電腦開啟網路瀏覽器,
並且以網路連線HoloLens,就可以開啟Device Portal,
觀看Hologram與環境疊合後的混合實境結果。

可是,這項功能所看到的畫面向來會延遲個4-5秒鐘,
這對於APP展示或Oral Presentation非常不便。

後來,找到了一個已經早早被分享出來的解法。
在GitHub上有人分享一套稱為MixedRealityCompanionKit的套件,
裏頭有許多好用的小東西,其中的MixedRemoteViewCompositor就可以解決延遲的問題。


安裝時遇到些小問題需要解決,到處找了些資料與論壇才把它解決的,在這裡做個紀錄。

1. 下載完整的MixedRealityCompanionKit套件[連結]

2. 在使用MixedRemoteViewCompositor之前,需在您的電腦上生成一些檔案(ex. dll file)
    如何生成檔案,可以直接參考Plugin Source files[連結]
 
    這是相當重要的步驟,如果無法生成.dll檔案,需要再確認幾件事情。
     (1)  Visual Studio 版本
     (2)  SDK version
     (3)  API version
   
     如果電腦灌的SDK版本不對,可以先去Visual Studio Installer重新更新與安裝
     我安裝了Visual Studio 2017,SDK是10586 & 10240,API 1.0.0.0和 2.0.0.0
   
     網路上有人提供他灌的東西,可以參考一下 [連結]
 

     更新完畢後,開啟MixedRemoteViewCompositor.sln檔案,他會要求你升級,重定方案目標,基本上同意更新,因為我使用的是Visual Studio 2017,所以必須升級他才能執行。

再來是重定方案目標,可以對方案總管的MixedRemoteCompositor點擊右鍵,選擇重定方案目標。


   
在這裡選擇10.0.10586.0,三個選項都記得選10.0.10586.0,然後按確認。



再來,建置→ 重建方案,就會自動生成所需的.dll檔案了。

這是我參考兩篇重要文章才解決掉的
【第一篇】 Unable to build MixedRemoteViewCompositor: 'MFSampleExtension_PinholeCameraIntrinsics': redefinition; multiple initialization  [連結]

【第二篇】
Error on MixedRemoteViewCompositor [連結]

3. 接著就是依著網站上的說明繼續完成[連結]
    MixedRemoteViewCompositor裏頭有兩個套件,
    解決延遲問題的套件是 Low Latency mixed reality capture (MRC)

   (1) 它的使用邏輯是先在你所要撰寫的Unity專案內勘進一些Add on,
         做些設定後,發佈到HoloLens眼鏡上。

         這個步驟會用到此Sample檔案

   ....\MixedRealityCompanionKit-master\MixedRemoteViewCompositor\Samples\LowLatencyMRC\Unity

   (2)  使用UWP的Sample檔案,build Viewer.exe

         這個步驟用到的Sample檔案是

....\MixedRealityCompanionKit-master\MixedRemoteViewCompositor\Samples\LowLatencyMRC\UWP\Viewer.sln

         我們看到的較為即時的影片資料,就會即時的呈現在UWP build出來的介面上了。
 
    (3) 在HoloLens上開啟剛剛發布上眼鏡的APP(已做好設定)
          開啟UWP的Viewer執行檔
          做好網路連線,點擊Start MRC Playback,就可以使用了。
       
這主要是參考這篇文件完成的[連結] 。




沒有留言:

張貼留言