10-ENTRY LIMIT OF NT WAVE DEVICE

 

 

Q: Got a "Can not allocate channel" error from running CallURL line detector. (I know that this problem is related to the number of audio devices on the PC and all I have to do is to change the order or enumeration of something in the registry).

 

A: The issue you have met concerning all Windows versions of NT, 2000 and XP up to the latest XP SP2. Since NT, in Windows Installable NT driver architecture, keeps an internal list of wave drivers. This list can ONLY carry up to 10 entries for each type of device. (This limit is not in WDM driver architecture, though)

 Wave driver for CallURL Talk Voice card is a NT wave Driver and it is subjected to the same limitation mentioned above.

 CallURL Inc. has resolved this issue in its newly released EASYTAPI 3.0.0 CD. (However, the new driver only supports voice board 2/4LV+ Rev.B and 8LV Rev.C)

 For customer with old version and faced the Error Message, Please fix it by doing:

 'Start à Run', type 'regedit'. --- “registry editor” will be executed. All relevant entries are in the path 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Drivers32'

As shown in the following screen capture:

As in the picture above, all 10 entries for audio (lower end of the list, wave to wave9) have already been created. (The CallURL driver TPLUSDLL.DLL has been pushed to wave10)

Windows creates an additional entry whenever a device driver is installedgain is beingLL.DLL has been pushed to wave10). end us the " look. un iggers the recording.

ng.. For example, an USB device is used with a different USB port than before, it will add one more entry. Not only for real hardware, certain program can also create an entry during execution. For example, a virtual wave device for Skype recording will create an entry too.

Also, there maybe a bug in some version of windows 2000 SP4. When this OS is installed, 10 entries of “wdmaud.drv” has been created already. (The “wdmaud is a Microsoft's WDM audio mapper, it only needs one copy for WDM (blaster) hardware. (but, it shows up 10 times in the PC!)

In this case, CallURL’s voice card driver installation program will add an entry to the last entry, namely wave10. But Windows only processes ‘wave’ to ‘wave9’, totally 10 entries, the wave10 will be ignored.

 

Therefore, when executing Dial32 (Line Detector program), the massage “Can not allocate channel” will be shown, meaning -- cannot find the wave device or the device has been occupied by other application already.

To fix this problem,

(1) Delete all duplicated entries and only leave one

(2) move/add the entry of the voice card’s wave driver to the registry within ‘wave’ to ‘wave9’.

In the example case, the easiest way is to modify the value of entry ‘wave1’ from wdmaud.drv to TPLUSDLL.DLL.