News:

HOT TIP! Exploring the commands packaged in VC's standard configurations is a great way to learn how to build your own. You can also clone a command as a starting point: just right-click and select "Clone" (or type Alt-C).

Main Menu

More control in handling alternates

Started by Telorast, March 31, 2014, 06:06:55 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Telorast

In the options you have some options for alternative interpretations. One of them is "Don't execute if there are alternate commands". I think it would be a lot more useful if you could set a limit for how many alternates there can be before preventing execution. Often correct guesses can have a few alternatives but rarely 5 or 6, at least in my configuration. At the same time there are sometimes false positives with high confidence despite 8 alternates...

Kalle

Hi Telorast, maybe this command will help you.

http://voxcommando.com/forum/index.php?topic=1225.msg10418#msg10418

You can modify it if don't like that VC read the alternates aloud.
***********  get excited and make things  **********

Telorast

Ok so how do I execute a command I know the name of?

I assume you want me to use the Don't execute if there are alternates and generate an alternate event and execute the commands in there instead?

jitterjames

You can't execute a command by name.

I'm not opposed to adding this option in a future release although I'm not convinced it will be that useful to most users.  I thought I had responded to your request but my response seems to have gone missing.  Maybe I replied to an email instead of posting...

Anyway this might work for you for now.  Based on Kalle's suggestion.

In options:
- set vc to not execute if there are alternates
- set vc to generate alternates events

Add this command to your tree.  It will be triggered if there are 2 or 3 alternates, and will then select the most likely (option 1)
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 1.9.1.9-->
<command id="169" name="do option 1 if less than 4 alternates" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
  <action>
    <cmdType>VC.TellVox</cmdType>
    <params>
      <param>option 1</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <event>VC.Alternates.2</event>
  <event>VC.Alternates.3</event>
</command>

Telorast

That seems to work well. Now I just have to figure out if it's worth using and how many alternates to break at.

jitterjames

In my experience, the number of alternates has more to do with your command structure and which command you are using than it does with the accuracy or quality of the recognition.  If you say "play artist john" you will often get 8 alternates (depending on your library) and most of them will be equally correct because of subset matching.  If you use dictation you are also likely to get 8 alternates most of the time.  Does that mean that you should not execute the most likely one?  It is really up to you.  Unfortunately the relative confidence values seem to be somewhat arbitrary and part of the "black box" that is the MS speech api.