Forum Discussion
Teams Optimization Crashes Windows App on macOS (AVD)
Summary:
When using the Windows App for macOS (from App Store) to connect to Azure Virtual Desktop, enabling Teams Media Optimization causes the app to crash when joining or receiving a Teams call. Started about 3 weeks ago.
Environment:
- App: Windows App for macOS
- App Version: 11.1.4 (Build 2557) - (I have also experienced this on 11.0.4 on another MBP M1 Max laptop I have.)
- macOS: 15.3.2 (Seqouia)
- Mac: MacBookPro18,1 (Apple Silicon)
- AVD Host: Windows 11, Teams (new client), Media Optimization enabled
Crash Log:
*** -[__NSArrayM objectAtIndexedSubscript:]: index 0 beyond bounds for empty array
- Type: NSRangeException
- Signal: SIGABRT
- Stack trace points to redirection plugin initialization
- Happens onlywhen Teams optimization is enabled
Console Errors (macOS):
BASIX_DCT(WARN): Not firing OnClosed on an object already closed. Stateful object was destructed while in state Opened(19) VirtualChannelEntryEx failed MSCOMVC plugin failed to load
Repro Steps:
- Use a Mac with Continuity Camera or External webcam (in my case, Logitech Brio)
- Launch Windows App for macOS
- Connect to AVD session with Teams optimization enabled
- Initiate or receive a Teams call
- App crashes with SIGABRT
Workarounds:
- β Disabling UDP and device redirection has no effect.
- β οΈ Disabling Teams Optimization prevents the crash. Far from ideal because now my audio and video quality are degraded when using teams on AVD (and my organization requires "camera on" for meetings
π Relevant Log Snippets from macOS Console & Windows App (Teams Optimization Crash)
β Camera Enumeration Warning
system_profiler SPCameraDataType Model ID: UVC Camera VendorID_1086 ProductID_39501 Model ID: FaceTime HD Camera Model ID: iPhone14,2
Continuity Camera detected alongside External Webcam and internal FaceTime camera.
β οΈ macOS Console Log
BASIX_DCT(WARN): Not firing OnClosed on an object 0x11798e400 which is already closed.
Happens right before crash β indicates plugin channel was torn down unexpectedly.
π₯ Objective-C Crash Report
exceptionReason : { "name":"NSRangeException", "type":"objc-exception", "composed_message":"*** -[__NSArrayM objectAtIndexedSubscript:]: index 0 beyond bounds for empty array", "class":"NSException" }
Plugin crashes when accessing a camera/mic array that was unexpectedly empty.
π Windows App RDC Log (DynVC Activity + Plugin Crash)
DynVC.cpp(686): InvokeCallback() ...Sending up 6650 bytes VirtualChannelEntryEx failed Failed to load MSCOMVC plugin, maybe not enabled Stateful object 0x1218b4018 was destructed while in state Opened(19)
AV redirection plugin begins initializing, then fails midstream. Memory cleanup errors confirm improper plugin teardown.
π Diagnostic Upload Failures
FlushTracesInternal() is called before BeginUpload(). we don't have a claims token yet and thus can't generate sass token. cancelling flush
Shows why Microsoft likely isnβt receiving telemetry unless the user manually reports.
These logs help pinpoint the crash to Teams AV plugin failure in the Windows App on macOS, triggered by improper handling of macOS camera/mic devices (especially Continuity Camera or UVC) when Teams Optimization is enabled.