Windows App SDK 2.2.0
WinAppSDK 2.2.0 is the latest stable servicing release for 2.0, with a new Windows AI video upscaling API, a first-class ApplicationData entry point for unpackaged apps, additions to XamlBindingHelper, and a batch of WinUI and Windows ML reliability fixes.
What's new in WinAppSDK 2.2.0:
- Video Super Resolution AI API. The new
Microsoft.Windows.AI.Video.VideoScalerAPI delivers real-time video enhancement through advanced AI upscaling, optimized for streams featuring people in conversation. It enables developers to provide sharper, clearer visuals across conferencing, streaming, and editing platforms, even under poor network conditions. The API supports customization of output resolution, frame rate, and regions of interest, with compatibility for multiple video formats including BGR, RGB, and NV12.VideoScaleris disposable, and includes a capability check so apps can validate VSR support at runtime. Explicit Windows ML initialization is not required. - New
ApplicationDataAPI for unpackaged apps.Microsoft.Windows.Storage.ApplicationData.GetForUnpackaged()gives unpackaged apps a first-class WinRT entry point to per-user / per-machine application data, matching the surface previously available only to packaged apps. This simplifies future packaged ↔ unpackaged migration and removes the need for Registry-API workarounds. - New
XamlBindingHelperAPIs. Added boxing-free value setter overloads toXamlBindingHelper(SetPropertyFromThickness,SetPropertyFromCornerRadius,SetPropertyFromColor) and exposed theSetter.ValuePropertydependency property.
Bug fixes:
| Bug fix | Runtime Compatibility Change |
|---|---|
Fixed a crash in RenderTargetBitmap when the target element leaves the visual tree (for example, a popup closes) before PreCommit completes. RenderAsync now returns E_ABORT instead of crashing. |
RenderTargetBitmap_PreCommitCrashOnTreeLeave |
Fixed a use-after-free crash in ScrollView when the control is destroyed while its hide-indicators timer tick is still pending. See microsoft/microsoft-ui-xaml#10514. |
ScrollView_HideIndicatorsTimerUseAfterFree |
Fixed a potential crash in Microsoft.UI.Xaml.dll!DirectUI::DXamlCore::GetPeerPrivate caused by attempting to access an object scheduled to be freed. |
GetPeerPrivate_UseAfterFree |
Fixed an issue where Microsoft.UI.System.ThemeSettings could crash an app if it was destroyed on a background thread (for example, when destroyed by the .NET garbage collector). |
ThemeSettings_OffThreadDestructorFix |
| Fixed a crash that could occur on certain devices when active touch contacts were canceled by input hardware, such as when pen input overrides them. | InputPointerSource_PointerCancelCrashFix |
| Fixed an issue where sparse-packaged apps were unable to discover module-specific PRI files. See microsoft/WindowsAppSDK#6375. | MRTCore_SparsePackagedPriFallback |
| Fixed a string ownership bug when using the Flat-C Windows ML Catalog API. | WindowsMLFlatCCatalog_CallbackStringOwnership |
| Fixed a potential issue in Windows ML during process shutdown. | WindowsML_ComRundownFix |
| Fixed potential COM initialization and teardown issues in Windows ML. | WindowsML_ComInitializationFix |
New or updated APIs (since 2.1.3):
Microsoft.UI.Xaml
Setter
ValueProperty
Microsoft.UI.Xaml.Markup
XamlBindingHelper
SetPropertyFromColor
SetPropertyFromCornerRadius
SetPropertyFromThickness
Microsoft.Windows.AI.Video
VideoScaler
VideoScalerOptions
VideoScalerResult
VideoScalerStatus
Microsoft.Windows.Storage
ApplicationData
GetForUnpackaged
Try it out
- Download the 2.2.0 NuGet package to use WinAppSDK 2.0 in your app.
- Download and update the WinUI Gallery to see the WinUI 3 updates firsthand.
Getting started
To get started using Windows App SDK to develop Windows apps, check out the following documentation: