Warning: The following API is deprecated as of vMix 24 and may be removed in a future update.

vMix supports the use of custom WPF User Controls compiled into an assembly.

Custom User Controls can implement the vMixWPFUserControl interface from the vMixInterop.dll in the vMix installation directory.

This interface allows vMix to communicate with the User Control and gather duration and position information.

Implementation Guidelines

  • All controls must be compatible with .NET Framework 3.5 SP1 (4.0 is not supported at this time)
  • ShowProperties should display a WinForms window without blocking (Form.Show instead of Form.ShowDialog)
  • Displaying WPF windows through ShowProperties is untested and unsupported.
  • Any code within ShowProperties will not run in the context of the WPF UI thread so the use of Dispatcher is required to modify UI elements.
  • All other methods run within the WPF UI thread so cpu intensive procedures should be avoided to prevent frame drops.
  • Any media related controls such as MediaElement and WebBrowser are not supported and will display a blank window.

How to add a Custom WPF User Control to vMix

1. First make sure the user control has been compiled as a DLL and follows the implementation guidelines above.

2. Click Add Input in vMix and then select the Title / XAML tab

3. Click Browse and browse for the DLL file and click OK

4. Click OK and the control will now be available in vMix.

5. If you have built custom properties through the ShowProperties function, this can be displayed through a right click menu: