共用方式為


影片防震登錄設定

VideoStabilization 登錄機碼中的 OEM 集 MaxPixelsPerSecond 值可讓 OEM 在裝置上設定影片防震設定,並在擷取時間將視訊防震套用至視訊。 設定會考慮裝置的錄製解析度,以及其硬體和軟體功能。

概觀

在最佳情況下,VideoStabilization 登錄機碼 MaxPixelsPerSecond 值可用來指定裝置上視訊防震的最大功能。 所有應用程式都可以讀取登錄機碼,並避免嘗試使用不合理的影片防震。

在 MaxPixelsPerSecond 值中輸入的值會設定 MFT 不會嘗試開啟視訊防震的限制,即使應用程式啟用它也一樣。 登錄機碼必須指出裝置可以執行視訊防震的最大解析度和幀速率。 如果未設定 MaxPixelsPerSecond 值,影片防震 MFT 會使用後援值。 最後,如果失敗,視訊穩定也會使用其內部邏輯來關閉,以防止次佳的用戶體驗。

影片防震需求

當下列所有情況都可能發生時,裝置會被視為能夠執行視訊防震:

  • 視訊穩定已開啟,且未處於傳遞模式

  • 錄製已開啟

  • 預覽為使用中

  • 預覽中不會看到雜訊或已卸除的畫面格

  • 錄製的視訊中不會看到雜訊或捨棄的畫面格

設定影片防震登錄機碼

VideoStabilization 登錄機碼格式:

  • OEM 應該設定 MaxPixelsPerSecond QWORD 值,以定義每秒像素數的截止值,除此之外,即使應用程式啟用視訊防震也會強制以傳遞模式執行。

  • MaxPixelsPerSecond 的定義如下:

    MaxPixelsPerSecond = width * height * frame-rate

    例如,針對 30 fps 的 1080p 解析度, MaxPixelsPerSecond 會定義為 1920 * 1080 * 30 = 62208000。

VideoStabilization 登錄機碼位置:

  • OEM 應該建立並設定 VideoStabilization 登錄機碼,以在下列位置進行影片穩定:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation\Platform\VideoStabilization

    若要在 32 位電腦上設定 VideoStabilization 登錄機碼 MaxPixelsPerSecond 值,請在提升許可權的命令提示字元中使用下列命令:

    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Media Foundation\Platform\VideoStabilization" /v "MaxPixelsPerSecond" /t REG_QWORD /d 62208000 /f 
    
  • 在 64 位電腦上,OEM 也應該在 Wow6432Node 路徑上建立並設定相同的密鑰:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows Media Foundation\Platform\VideoStabilization

    若要在 64 位電腦上設定 VideoStabilization 登錄機碼 MaxPixelsPerSecond 值,請在提升許可權的命令提示字元中使用下列命令:

    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Windows Media Foundation\Platform\VideoStabilization" /v "MaxPixelsPerSecond" /t REG_QWORD /d 62208000 /f 
    

設定時, 影片防震 MFT 和第一方和第三方應用程式會顯示 VideoStabilization 登錄機碼。

如果已設定 MaxPixelsPerSecond 值,影片防震 MFT 永遠不會嘗試穩定超出限制的幀速率或解析度。 相反地,即使應用程式要求影片穩定,它也會進入傳遞模式。 視訊防震 MFT 有一個機制,可針對指定的裝置,建議應用程式使用幀速率和解析度。 應用程式可以選擇建議,以避免在已填入登錄機碼的裝置上進行這類傳遞。

如果未設定 MaxPixelsPerSecond 值,則影片防震 MFT 會嘗試穩定到預設值,但沒有更高的值。

默認值為每秒 62208000 像素,也就是 1920 像素 x 1080 像素 x 30 fps。 當視訊防震嘗試穩定但無法維持視訊畫面的即時穩定時,內部邏輯會將視訊防震切換為傳遞模式(關閉視訊防震),而不會卸除任何畫面。

如果在上一個會話中關閉視訊穩定,MFT 會嘗試在每個新會話的一般模式中啟動視訊穩定,然後再決定切換至傳遞模式。 這是因為它不能依賴上一個模式來做出未來的決策,因為裝置在上次操作時可能處於壓力之下。

影片防震測試需求

OEM 需要確認其裝置的端對端功能,並讓影片防震運作。 他們需要以每秒最大圖元解析度驗證可接受的體驗。

OEM 必須確認下列各項:

  • 視訊穩定內部邏輯會在Microsoft提供的登錄機碼位置停用。 停用內部邏輯可確保在測試期間,如果視訊穩定遇到緊張的情況,將無法進入通過模式。

  • 視訊穩定可以單獨執行,而不需要背景工作或其他功能

  • 已啟用視訊穩定且內部邏輯停用的平滑預覽轉譯

  • 已啟用視訊穩定且內部邏輯已停用的平滑視訊錄製

  • 穩定錄製中達到的每秒所需圖元計數

  • 無過熱

注意 零售系統不應該有登錄機碼來停用本節所述的影片穩定內部邏輯。 不過,零售系統應該具有 VideoStabilization 登錄機碼,且 MaxPixelsPerSecond 值是透過此測試程序決定的。

注意 只有當屬性MF_LOW_LATENCY在效果上設定時,VideoStabilization 登錄機碼 MaxPixelsPerSecond 值才會運作。 當提供的影片防震效果新增至 MediaCapture 管線時,會自動設定 屬性。 不過,如果影片防震效果插入自定義管線或未設定 MF_LOW_LATENCY 屬性的管線中,登錄機碼就不會有任何作用。