This control is developed by:

Audiotoolbox Plugin

Control Thumbnail

How To Download and Use This Control

  1. Make sure you have the latest version of EZ-Builder installed.
  2. Select the Install button below to download the file.
  3. Double click the downloaded file to open installer.
  4. The installer will add this control to EZ-Builder.

*** Version 10 ***

ImportUWPVoices command restored

*** Version 9 ***

Bug Fix (UI sync monitor object waits indefinitely, solution pulse the monitor when leaving ez-builder) 

*** Version 8 ***

Build Fix 

*** Version 7 ***

Bug Fixes

*** Version 6 ***

Added Audio Session Tracking 

Audio Session Tracking mode can be configured to:
1) None
No tracking (default)

2) All
Tracks all audio sessions from all processes 

3) CurrentProcess
Tracks only the current process (EZ-Builder instance) audio sessions

User-inserted image

When the Audio Session Tracking is active (All / CurrentProcess) an EZ-Script variable $NumberOfActiveAudioSessions counts the number audio sessions are active (playing) on the default render (output) device.

User-inserted image

a value of zero means the render device is idle.

sample script:


#Say and do not wait
Say("How vexingly quick daft zebras jump!")

#wait 100 ms to allow the session counter variable to update

#at least 1 will be printed
#wait for #active audio sessions is zero (render/output device is idle)

Say("Jived fox nymph grabs quick waltz.")


*** Version 5

Cortana Voice Added

*** Version 4 : New Features


ControlCommand("AudioToolbox Plugin", "ImportUWPVoices")

The above script command allows EZ-Builder to access the UWP Voices.

How to use quick video:

*** Version 2 : New Features

Set Default Devices:

User-inserted image

Select the desired devices and press "Set Default" button

Set Default Devices via EZ-Script:

First configure the devices:

User-inserted image



#SetDefault takes in consideration the device type (input or output)

#Set device 0 as default
ControlCommand("AudioToolbox Plugin", "SetDefault", 0)
SayWait("Hello Device 0")

#Set device 1 as default
ControlCommand("AudioToolbox Plugin", "SetDefault", 1)
SayWait("Hello Device 1")

*** Version 1

1) Start Capturing sound on device #1:


ControlCommand("AudioToolbox Plugin", "StartCapture", 1)

2) Set EZB #0 to listen to device #1:


#0 = EZB Controller Index (0..4)
#1 = Device Index (0..2)
#75 = Volume
ControlCommand("AudioToolbox Plugin", "StartEZBListen", 0, 1, 75)

2.1) Add EZB #1 to listen to device #1:


ControlCommand("AudioToolbox Plugin", "StartEZBListen", 1, 1, 100)

3) Stop EZB #0 to listen


ControlCommand("AudioToolbox Plugin", "StopEzbListen", 0)

4) Stop Capture on device #1


ControlCommand("AudioToolbox Plugin", "StopCapture", 1)


You have the option to configure the 3 devices (device num: 0 .. 2):

User-inserted image

Hi @ptp,

The AudioToolbox works fine on one computer but on another one, the following error comes up when adding the control:


Version: 2019.05.08.00

System.IO.FileNotFoundException: Could not load file or assembly 'AudioToolbox.Managed, Version=, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The specified module could not be found.
File name: 'AudioToolbox.Managed, Version=, Culture=neutral, PublicKeyToken=null' ---> System.IO.FileNotFoundException: Could not load file or assembly 'AudioToolbox.Managed.dll' or one of its dependencies. The specified module could not be found.
File name: 'AudioToolbox.Managed.dll'
at EZ_Builder.FormMain.jV8wBR46w4(Object , ResolveEventArgs )
at EZBuilder.Plugin.Common.Global.CurrentDomain_AssemblyResolve(Object sender, ResolveEventArgs args) in C:\dev\tests\ezr\EZBuilder.Plugin.Common\EZBuilder.Plugin.Common\Global.cs:line 68
at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName)

at AudioToolbox.EZPlugin.MainForm.MainForm_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at EZ_Builder.UCForms.FormPluginMaster.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
The plugin is installed and the control can be added to the project. The cog button throws a null pointer exception too but I assume that's because it couldn't load the assembly as above. It seems this other computer is missing a dependency but I'm not sure what that could be.
Maybe some file failed during the install ?

I took a peek in the audiotoolbox plugin's folder:
User-inserted image

A few ideas:
1) Check if there are missing files (maybe the install failed)
2) Confirm EZ-Builder is not running and run the plugin install
3) Recheck the folder content.
I'm having the exact same problem. It installs fine on my laptop, but on the other computer I need to run it on, I get the same error as the original poster.
I checked the install directory, no files are missing.
I closed EZ-Builder and re-installed the plugin.  Problem remains the same.

I had EZ-Builder running during the first install, could that have caused an issue?

User-inserted image
I found the issue the AudioToolbox.managed.dll is a c++ project and includes debug information and requires external debug dlls present in some environments e.g. development machines visual studio or data management tools. 

I released a new version #8, please confirm if the issue is solved.
Version 8 doesn't raise any complaints about finding or loading the plugin which is great. However, it seems to leave behind a background process even after EZ-Builder is closed. Opening and closing the project multiple times leaves behind just as many processes which I close through Task Manager.
To clarify, I was seeing this problem when using version 7 as well but didn't know what was causing it. I'm not sure which version may have introduced this bug.
It's fixed. 

The bug was introduced in version #7 when solving the random crash/hang.

Thanks for feedback.
I'm having trouble updating to the new version, but I think it's because I still have the background processes running.. I'll reboot and try again.
OK! Got it updated and running.  
But, still having an issue.  I've installed the UK English Windows voices.  After running the plugin, Hazel is the only additional voice to show up in EZ Builder.
I also tried running the "ImportUMPVoices" script as shown on this page, but it returns an error.   I've attached snapshots below:

User-inserted image

User-inserted image
Thanks @ptp.
The background process bug is fixed.
I've restored the ImportUMPVoices feature