Skip to content
  • Seungha Yang's avatar
    wasapideviceprovider: Add support for dynamic device add/remove · 589ff8ca
    Seungha Yang authored
    Adding IMMDeviceEnumerator::RegisterEndpointNotificationCallback
    in order to support device monitoring.
    On OnDeviceAdded(), OnDeviceRemoved(), and OnDefaultDeviceChanged()
    callback, wasapi device provider implementation will enumerate
    devices again and will notify newly added and removed device
    via GstDeviceProvider API.
    
    As a bonus point, this IMMDeviceEnumerator abstraction object
    will spawn a dedicated internal COM thread, so various COM thread
    related issues of WASAPI plugin can be resolved by this commit.
    
    Fixes: #1649
    Fixes: #1110
    Part-of: <!2484>
    589ff8ca