Thumbnail

Audiotoolbox Plugin

Avatarptp

Allows ARC to use UWP speech voices, change default audio devices, capture sound and route to an EZB.

Requires ARC v15 (Updated 11/3/2020)

How to add the Audiotoolbox Plugin robot skill

  1. Load the most recent release of ARC (Get ARC).
  2. Press the Project tab from the top menu bar in ARC.
  3. Press Add Robot Skill from the button ribbon bar in ARC.
  4. Choose the Audio category tab.
  5. Press the Audiotoolbox Plugin icon to add the robot skill to your project.

Don't have a robot yet?

Follow the Getting Started Guide to build a robot and use the Audiotoolbox Plugin robot skill.


How to use the Audiotoolbox Plugin robot skill

Allows ARC to use UWP speech voices, change default audio devices, capture sound and route to an EZB.

*** Version 14 ***

Minor bug fix (memory release)

*** Version 13 ***

Fix for ARC 2020.02.28.00 release

*** Version 12 ***

Fix for ARC 2020.02.19.00 release

*** Version 11 ***

Fix for new ARC version

*** Version 10 ***

ImportUWPVoices command restored

*** Version 9 ***

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

*** 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 (ARC 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 
Sleep(100) 

#at least 1 will be printed 
print($NumberOfActiveAudioSessions)
#wait for #active audio sessions is zero (render/output device is idle) 
WaitFor($NumberOfActiveAudioSessions=0)

Say("Jived fox nymph grabs quick waltz.")
Sleep(100)
print($NumberOfActiveAudioSessions)
WaitFor($NumberOfActiveAudioSessions=0)

print($NumberOfActiveAudioSessions)

*** Version 5

Cortana Voice Added

*** Version 4 : New Features


ControlCommand("AudioToolbox Plugin", "ImportUWPVoices")

The above script command allows ARC 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

script:


#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)
  1. 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)
  1. Stop EZB #0 to listen

ControlCommand("AudioToolbox Plugin", "StopEzbListen", 0)
  1. Stop Capture on device #1

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

Note:

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

User-inserted image


ARC Pro

Upgrade to ARC Pro

ARC Pro is more than a tool; it's a creative playground for robot enthusiasts, where you can turn your wildest ideas into reality.

PRO
USA
#33   — Edited

Hi, I just got back, Thanks ptp, whatever you did, it seems to work again.

Ever want to start a beginners coding class?

all the best

EZang

PRO
USA
#34  

hello ptp,, what is your price for another update?  Audio toolBox Plugin

thanks,

EZang

PRO
USA
#35  

Fixed & Released.

PRO
USA
#36  

100,000,000  thanks to you  my friend :-)

If you want to teach me, I am always ready to learn

I am taking java classes online now

thanks again

EzAng

#37   — Edited

@EzAng... Teach you what? How to write a plugin? If it is a plugin you want to develop you are taking the wrong course... I believe you need to learn C# instead.... Javascript in terms of ARC is used for coding or scripting as an alternative to ezscript....

Here's the link for making a plugin for ARC... ARC skill plugin

PRO
USA
#38   — Edited

Dunning-Kruger, how are you?

Today, I accomplished AIML Bot (added my code) Pandora bot, maybe tomorrow I will conquer C # or whatever which way the wind will blow me.

I love learning, I have been using "processing" and java (object-oriented programming) to use the Kinect I have- cool stuff.

all the best to you

EzAng

PRO
USA
#39  

Fixed a minor bug and I've updated the build environment for VC142. Let's hope nothing is broken:)

PRO
USA
#40  

can't get it to work