Missing Documentation: enableEchoCancellation, enableHighFidelityMusicMode, or enableStereoAudio Fail Unless Mic Original Input is Enabled

Zoom VideoSDK 1.50

Description

Calls to enableEchoCancellation or enableHighFidelityMusicMode Fail Unless Mic Original Input is Enabled. The documentation says nothing about this relationship and should be updated to avoid developer confusion.

I hope documenting this here helps someone save some time.

Error

Both enableEchoCancellation and enableHighFidelityMusicMode return ZMVideoSDKErrors_Wrong_Usage unless those calls are proceeded by the call

[[[ZMVideoSDK sharedVideoSDK] getAudioSettingHelper] enableMicOriginalInput:YES]

How To Reproduce

Call

[[[ZMVideoSDK sharedVideoSDK] getAudioSettingHelper] enableEchoCancellation:NO]

or

[[[ZMVideoSDK sharedVideoSDK] getAudioSettingHelper] enableHighFidelityMusicMode:YES]

or

[[[ZMVideoSDK sharedVideoSDK] getAudioSettingHelper] enableStereoAudio:YES]

and check the error return code. It will be ZMVideoSDKErrors_Wrong_Usage

Solution

Now try the making the three calls above after calling

[[[ZMVideoSDK sharedVideoSDK] getAudioSettingHelper] enableMicOriginalInput:Yes];

The error code for the three calls listed above is now ZMVideoSDKErrors_Success.