This release fixes a major performance issue that caused excessive CPU usage. I have also attempted to work around a crash that may occur with the message "GetVolumeControlValue called on a control that's not a volume control".
Using the Speex preprocessor library, a second pass of noise removal is performed after microphone gain is applied. This will eliminate audible noise that's present when a high mic boost value is used.
The plugin also now checks for an existing audio source with the same name, in case you have two copies of the dll in your plugins folder by mistake.
Previously the voice capture DMO would perform the same microphone volume and gain auto-tuning that Skype does. This behavior has been disabled, so the Windows microphone settings will not be affected while OBS is active. Please note that when using any software that performs auto-gain control, it is desirable to set the input level (the Windows mic settings) to as loud as possible without distortion, so that AGC is free to calibrate to a good volume level while maintaining SNR.
The DMO seems to fail to look up the correct default audio devices in some situations, so the default endpoints are now looked up explicitly and passed to the DMO. This fixes some cases that would prevent AEC from working properly.
The plugin now reads OBS configuration to select the audio devices to use for the voice capture DMO. The microphone device is obviously used for voice capture, and the desktop audio device is used as the speaker feedback input for echo cancellation. In addition, the OBS microphone gain value will be applied to the audio data. Note: if your microphone gain setting is greater than 1, I strongly recommend setting it back to 1, seeing how it sounds, and going from there. Because the audio from the DMO is already auto-gained, applying a large fixed gain will easily cause it to clip.